* Moved implementation of the methods to the `cpp` file.
* Added `DebugCount::Flag(s)` and `DebugCount::configure(name, flags)`.
* Moved from `QMap` to `std::map` (order is important here).
* Used `QStringBuilder` for concatenations.
* Used `QLocale` for formatting (adds separators).
* Added `DebugCount::Flag::DataSize` for data sizes in bytes (and fixed language to English).
* Used `DataSize` for image sizes (maybe this should be moved somewhere else?).
* Added copy button to popup.
* Fixed Image usage reporting being eight times too large (could be another PR, but honestly it's four characters).
* feat: more hype chat
* Add `std::chrono::seconds` overload to formatTime
* Move & rename it to HypeChat + some other mini things
* Add changelog entry
* fix formattime test
---------
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
* refactor: move ipc queue into its own class
* refactor: move windows.h related functions to AW
* refactor: make NM-Client methods static
* refactor: json access
* refactor: use struct initializer
* refactor: move `handleMessage` to anon-namespace
* refactor: clean-up includes
* refactor: move action handler to functions
* refactor: cleanup `handleSelect`
* fix: cleanup clang-tidy warnings
* chore: simplify json
* revert: keep handlers as methods
This is more readable and extensible.
* fix: typo
* fix: namespace
* fix: rename define
* refactor: `IpcQueue` to be simpler
* fix: rename cmake option
* fix: use variant when constructing
* fix: make it a ref
* fix: its a pair now
`/debug-force-image-gc` will force garbage collection on all unused images
`/debug-force-image-unload` will force unload all images
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
* Pass link as argument instead of in command string when opening incognito links
* Update CHANGELOG.md
* Make changelog message more user facing
* Remove now unused argument for getCommand
* Add `<functional>` include to QStringHash.hpp
This ensures the base `std::hash` template is declared before this
specialization
* Add missing includes to `src/providers/twitch/TwitchAccountManager.hpp`
* Move explicit HelixChatters constructor to the source file
* Remove unused includes & add used includes to NicknamesModel.hpp
* NicknamesModel.hpp: Remove `virtual` when `override` is used
* Add missing QStringHash include to TwitchEmotes.cpp
* Add missing includes to various files
* Print Qt version in cmake step
Technically unrelated, but I'm sneaking it in
* Add changelog entry
* Flatten static functions in anonymous namespace
* SplitHeader ctor: Rename param
* Header: Remove unnecessary `virtual`s
* auto ptr where possible
* Add curly braces
* Comment twitch room modes
* Treat roomModes->slowMode as an integer
* Remove unused `this` from lambdas
* Add `unsigned int` overload for localizeNumbers
* Move thumbnail max age to a constexpr static & set explicit types
* Explicitly use `QObject::connect`
* Use `empty()` instead of `size()`
* Name unused parameters
* Move moderation action refreshing logic from SplitHeader to Split
* fix: remove unused includes
* fix: bad includes
* fix: top include
* fix: streamer mode includes
* fix: missing include
* fix: remove `#else`
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
This change enforces strict include grouping using IncludeCategories
In addition to adding this to the .clang-format file and applying it in the tests/src and src directories, I also did the following small changes:
In ChatterSet.hpp, I changed lrucache to a <>include
In Irc2.hpp, I change common/SignalVector.hpp to a "project-include"
In AttachedWindow.cpp, NativeMessaging.cpp, WindowsHelper.hpp, BaseWindow.cpp, and StreamerMode.cpp, I disabled clang-format for the windows-includes
In WindowDescriptors.hpp, I added the missing vector include. It was previously not needed because the include was handled by another file that was previously included first.
clang-format minimum version has been bumped, so Ubuntu version used in the check-formatting job has been bumped to 22.04 (which is the latest LTS)