| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| sha256-checksums.txt | 2024-04-21 | 649 Bytes | |
| Chatterino.Portable.zip | 2024-04-21 | 19.4 MB | |
| Chatterino.Installer.exe | 2024-04-21 | 39.0 MB | |
| Chatterino-Windows-debug-symbols.pdb.7z | 2024-04-21 | 12.9 MB | |
| Chatterino-Ubuntu-22.04.deb | 2024-04-21 | 12.0 MB | |
| Chatterino-Ubuntu-20.04.deb | 2024-04-21 | 11.1 MB | |
| Chatterino-x86_64.AppImage | 2024-04-21 | 34.9 MB | |
| Chatterino.dmg | 2024-04-21 | 32.7 MB | |
| README.md | 2024-04-21 | 55.6 kB | |
| v2.5.0 source code.tar.gz | 2024-04-21 | 2.1 MB | |
| v2.5.0 source code.zip | 2024-04-21 | 2.5 MB | |
| Totals: 11 Items | 166.7 MB | 0 | |
What's Changed
- Major: Twitch follower emotes can now be correctly tabbed in other channels when you are subscribed to the channel the emote is from. (#4922)
- Major: Added
/automodsplit to track automod caught messages across all open channels the user moderates. (#4986, [#5026]) - Major: Moderators can now see restricted chat messages and suspicious treatment updates. (#5056, [#5060])
- Minor: Migrated to the new Get Channel Followers Helix endpoint, fixing follower count not showing up in usercards. (#4809)
- Minor: Moderation commands such as
/ban,/timeout,/unban, and/untimeoutcan now be used via User IDs by using theid:123syntax (e.g./timeout id:22484632 1m stop winning). (#4945, [#4956], [#4957]) - Minor: The
/usercardcommand now accepts user ids. (/usercard id:22484632) (#4934) - Minor: Added menu actions to reply directly to a message or the original thread root. (#4923)
- Minor: The
/replycommand now replies to the latest message from the user. Due to this change, the message you intended to reply to is now shown in the reply context, instead of the first message in a thread. (#4919)
More Changes
- Minor: The chatter list button is now hidden if you don't have moderator privileges. (#5245, [#5336]) - Minor: Live streams that are marked as reruns now mark a tab as yellow instead of red. (#5176, [#5237]) - Minor: Allowed theming of tab live and rerun indicators. (#5188) - Minor: The _Restart on crash_ setting works again on Windows. (#5012) - Minor: Added an option to use new experimental smarter emote completion. (#4987) - Minor: Added support for FrankerFaceZ channel badges. These can be configured at https://www.frankerfacez.com/channel/mine - currently only supports bot badges for your chat bots. (#5119) - Minor: Added support to send /announce[color] commands. Colored announcements only appear with the chosen color in Twitch chat. (#5250) - Minor: The whisper highlight color can now be configured through the settings. (#5053) - Minor: Added an option to always include the broadcaster in user completions. This is enabled by default. (#5193, [#5244]) - Minor: Added a warning message if you have multiple commands with the same trigger. (#4322) - Minor: Chatters from message history are now added to autocompletion. (#5116) - Minor: Added support for the `{input.text}` placeholder in the **Split** -> **Run a command** hotkey. (#5130) - Minor: Added `--activate <channel>` (or `-a`) command line option to focus or add a certain Twitch channel on startup. (#5111) - Minor: Added the `--incognito/--no-incognito` options to the `/openurl` command, allowing you to override the "Open links in incognito/private mode" setting. (#5149, [#5197]) - Minor: Added the ability to change the top-most status of a window regardless of the _Always on top_ setting (right click the notebook). (#5135) - Minor: Added the ability to show AutoMod caught messages in mentions. (#5215) - Minor: Added the ability to configure the color of highlighted AutoMod caught messages. (#5215) - Minor: Updated to Emoji v15.1. Google emojis are now used as the fallback instead of Twitter emojis. (#5182) - Minor: Added icons for newer versions of macOS. (#5148) - Minor: Added more menu items in macOS menu bar. (#5266) - Minor: Improved color selection and display. (#5057) - Minor: Added a _System_ theme setting that updates according to the system's color scheme (requires Qt 6.5). (#5118) - Minor: Normalized the input padding between light & dark themes. (#5095) - Minor: The account switcher is now styled to match your theme. (#4817) - Minor: Added a fallback theme field to custom themes that will be used in case the custom theme does not contain a color Chatterino needs. If no fallback theme is specified, we'll pull the color from the included Dark or Light theme. (#5198) - Minor: Added a new completion API for experimental plugins feature. (#5000, [#5047]) - Minor: Added a new Channel API for experimental plugins feature. (#5141, [#5184], [#5187]) - Minor: Introduce `c2.later()` function to Lua API. (#5154) - Minor: Added `--safe-mode` command line option that can be used for troubleshooting when Chatterino is misbehaving or is misconfigured. It disables hiding the settings button & prevents plugins from loading. (#4985) - Minor: Added wrappers for Lua `io` library for experimental plugins feature. (#5231) - Minor: Added permissions to experimental plugins feature. (#5231) - Minor: Added missing periods at various moderator messages and commands. (#5061) - Minor: Improved Streamlink documentation in the settings dialog. (#5076) - Minor: The installer now checks for the VC Runtime version and shows more info when it's outdated. (#4847) - Minor: All sound capabilities can now be disabled by setting your "Sound backend" setting to "Null" and restarting Chatterino. (#4978) - Minor: Added an invisible resize handle to the bottom of frameless user info popups and reply thread popups. (#4795) - Minor: Updated the flatpakref link included with nightly builds to point to up-to-date flathub-beta builds. (#5008) - Minor: Image links now reflect the scale of their image instead of an internal label. (#5201) - Minor: IPC files are now stored in the Chatterino directory instead of system directories on Windows. (#5226) - Minor: 7TV emotes now have a 4x image rather than a 3x image. (#5209) - Minor: Add `reward.cost` `reward.id`, `reward.title` filter variables. (#5275) - Minor: Change Lua `CompletionRequested` handler to use an event table. (#5280) - Minor: Changed the layout of the about page. (#5287) - Minor: Add duration to multi-month anon sub gift messages. (#5293) - Minor: Added context menu action to toggle visibility of offline tabs. (#5318) - Minor: Report sub duration for more multi-month gift cases. (#5319) - Minor: Improved error reporting for the automatic streamer mode detection on Linux and macOS. (#5321) - Bugfix: Fixed a crash that could occur on Wayland when using the image uploader. (#5314) - Bugfix: Fixed split tooltip getting stuck in some cases. (#5309) - Bugfix: Fixed the version string not showing up as expected in Finder on macOS. (#5311) - Bugfix: Fixed links having `http://` added to the beginning in certain cases. (#5323) - Bugfix: Fixed topmost windows from losing their status after opening dialogs on Windows. (#5330) - Bugfix: Fixed a gap appearing when using filters on `/watching`. (#5329) - Bugfix: Fixed an issue where certain emojis did not send to Twitch chat correctly. (#4840) - Bugfix: Fixed the `/shoutout` command not working with usernames starting with @'s (e.g. `/shoutout @forsen`). (#4800) - Bugfix: Fixed capitalized channel names in log inclusion list not being logged. (#4848) - Bugfix: Trimmed custom streamlink paths on all platforms making sure you don't accidentally add spaces at the beginning or end of its path. (#4834) - Bugfix: Fixed a performance issue when displaying replies to certain messages. (#4807) - Bugfix: Fixed an issue where certain parts of the split input wouldn't focus the split when clicked. (#4958) - Bugfix: Fixed an issue in the `/live` split that caused some channels to not get grayed-out when they went offline. (#5172)\ - Bugfix: User text input within watch streak notices now correctly shows up. (#5029) - Bugfix: Fixed selection of tabs after closing a tab when using "Live Tabs Only". (#4770) - Bugfix: Fixed input in the reply thread popup losing focus when dragging said window. (#4815) - Bugfix: Fixed the Quick Switcher (CTRL+K) sometimes showing up on the wrong window. (#4819) - Bugfix: Fixed the font switcher not remembering what font you had previously selected. (#5224) - Bugfix: Fixed too much text being copied when copying chat messages. (#4812, [#4830], [#4839]) - Bugfix: Fixed issue on Windows preventing the title bar from being dragged in the top left corner. (#4873) - Bugfix: Fixed an issue where Streamer Mode did not detect that OBS was running on MacOS. (#5260) - Bugfix: Remove ":" from the message the user is replying to if it's a /me message. (#5263) - Bugfix: Fixed the "Cancel" button in the settings dialog only working after opening the settings dialog twice. (#5229) - Bugfix: Fixed an issue where the setting `Only search for emote autocompletion at the start of emote names` wouldn't disable if it was enabled when the client started. (#4855) - Bugfix: Fixed an empty page being added when showing the out of bounds dialog. (#4849) - Bugfix: Fixed an issue preventing searching a redemption by it's title when the redemption contained user text input. (#5117) - Bugfix: Fixed an issue where reply context didn't render correctly if an emoji was touching text. (#4875, [#4977], [#5174]) - Bugfix: Fixed the input completion popup sometimes disappearing when clicking on it on Windows and macOS. (#4876) - Bugfix: Fixed Twitch badges not loading correctly in the badge highlighting setting page. (#5223) - Bugfix: Fixed double-click text selection moving its position with each new message. (#4898) - Bugfix: Fixed an issue where notifications on Windows would contain no or an old avatar. (#4899) - Bugfix: Fixed headers of tables in the settings switching to bold text when selected. (#4913) - Bugfix: Fixed tooltips appearing too large and/or away from the cursor. (#4920) - Bugfix: Fixed thread popup window missing messages for nested threads. (#4923) - Bugfix: Fixed an occasional crash for channel point redemptions with text input. (#4949) - Bugfix: Fixed triple-click on message also selecting moderation buttons. (#4961) - Bugfix: Fixed badge highlight changes not immediately being reflected. (#5110) - Bugfix: Fixed emotes being reloaded when pressing "Cancel" in the settings dialog, causing a slowdown. (#5240) - Bugfix: Fixed double-click selection not correctly selecting words that were split onto multiple lines. (#5243) - Bugfix: Fixed some emotes not appearing when using _Ignores_. (#4965, [#5126]) - Bugfix: Fixed a freeze from a bad regex in _Ignores_. (#4965, [#5126]) - Bugfix: Fixed lookahead/-behind not working in _Ignores_. (#4965, [#5126]) - Bugfix: Fixed Image Uploader accidentally deleting images with some hosts when link resolver was enabled. (#4971) - Bugfix: Fixed a rare crash with the Image Uploader when closing a split right after starting an upload. (#4971) - Bugfix: Fixed an issue on macOS where the Image Uploader would keep prompting the user even after they clicked "Yes, don't ask again". (#5011) - Bugfix: The usercard button is now hidden in the User Info Popup when in special channels. (#4972) - Bugfix: Fixed support for Windows 11 Snap layouts. (#4994, [#5175]) - Bugfix: Fixed some windows appearing between screens. (#4797) - Bugfix: Fixed a crash that could occur when clicking `More messages below` button in a usercard and closing it quickly. (#4933) - Bugfix: Fixed a crash that could occur when using certain features in a Usercard after closing the split from which it was created. (#5034, [#5051]) - Bugfix: Fixed a crash that could occur when using certain features in a Reply popup after closing the split from which it was created. (#5036, [#5051]) - Bugfix: Fixed a bug on Wayland where tooltips would spawn as separate windows instead of behaving like tooltips. (#4998, [#5040]) - Bugfix: Fixes to section deletion in text input fields. (#5013) - Bugfix: Fixed avatar in usercard and moderation button triggering when releasing the mouse outside their area. (#5052) - Bugfix: Fixed a bug where buttons would remain in a hovered state after leaving them. (#5077) - Bugfix: Fixed an issue where you had to click the `reply` button twice if you already had that users @ in your input box. (#5173) - Bugfix: Fixed popup windows not persisting between restarts. (#5081) - Bugfix: Fixed splits not retaining their focus after minimizing. (#5080) - Bugfix: Fixed _Copy message_ copying the channel name in global search. (#5106) - Bugfix: Fixed some Twitch emotes sizes being wrong at certain zoom levels. (#5279, [#5291]) - Bugfix: Fixed a missing space when the image uploader provided a delete link. (#5269) - Bugfix: Reply contexts now use the color of the replied-to message. (#5145) - Bugfix: Fixed top-level window getting stuck after opening settings. (#5161, [#5166]) - Bugfix: Fixed link info not updating without moving the cursor. (#5178) - Bugfix: Fixed an upload sometimes failing when copying an image from a browser if it contained extra properties. (#5156) - Bugfix: Fixed tooltips getting out of bounds when loading images. (#5186) - Bugfix: Fixed split header tooltips showing in the wrong position on Windows. (#5230) - Bugfix: Fixed split header tooltips appearing too tall. (#5232) - Bugfix: Fixed past messages not showing in the search popup after adding a channel. (#5248) - Bugfix: Fixed pause indicator not disappearing in some cases. (#5265) - Bugfix: Fixed the usercard popup not floating on tiling WMs on Linux when "Automatically close user popup when it loses focus" setting is enabled. (#3511) - Bugfix: Fixed moderator-only topics being subscribed to for non-moderators. (#5056) - Bugfix: Truncated IRC messages to be at most 512 bytes. (#5246) - Bugfix: Fixed a data race when disconnecting from Twitch PubSub. (#4771) - Bugfix: Fixed messages not immediately disappearing when clearing the chat. (#5282) - Bugfix: Fixed highlights triggering for ignored users in announcements. (#5295)Commit List
* Encode `modes` file in UTF8 by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4791 * Set `QT_ENABLE_HIGHDPI_SCALING` to `0` on Qt 6 on Windows by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4767 * Fix input completion tests on Qt6 & run tests on 22.04 by @pajlada in https://github.com/Chatterino/chatterino2/pull/4774 * Fix memory leaks & data races in tests by @pajlada in https://github.com/Chatterino/chatterino2/pull/4772 * Bump lib/signals from `6561aa5` to `ca452a8` by @dependabot in https://github.com/Chatterino/chatterino2/pull/4789 * Bump lib/settings from `f168c09` to `f92bc7b` by @dependabot in https://github.com/Chatterino/chatterino2/pull/4788 * Bump ncipollo/release-action from 1.12.0 to 1.13.0 by @dependabot in https://github.com/Chatterino/chatterino2/pull/4786 * Fix data race in PubSub by @pajlada in https://github.com/Chatterino/chatterino2/pull/4771 * Remove BaseSettings & merge ConcurrentSettings by @pajlada in https://github.com/Chatterino/chatterino2/pull/4775 * Remove offset logic from `BaseWindow::moveTo` by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4798 * Fixed `/shoutout` command not working with usernames starting with @'s (e.g. `/shoutout @forsen`) by @pajlada in https://github.com/Chatterino/chatterino2/pull/4800 * Remove boost::noncopyable use & boost::random dependency by @pajlada in https://github.com/Chatterino/chatterino2/pull/4776 * Fix all warnings from the cppcoreguidelines-pro-type-member-init clang-tidy check by @pajlada in https://github.com/Chatterino/chatterino2/pull/4426 * Use `QFontMetrics::elidedText` over manual implementation by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4807 * Migrate to the new Get Channel Followers Helix endpoint, fixing follower count not showing up in usercards by @pajlada in https://github.com/Chatterino/chatterino2/pull/4809 * Bump actions/checkout from 3 to 4 by @dependabot in https://github.com/Chatterino/chatterino2/pull/4806 * Bump lib/lua/src from `ea39042` to `9b4f39a` by @dependabot in https://github.com/Chatterino/chatterino2/pull/4782 * Select correct notebook tab after closing while filtered by @dnsge in https://github.com/Chatterino/chatterino2/pull/4770 * Only layout visible `ChannelView`s by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4811 * Bump ZedThree/clang-tidy-review from 0.13.3 to 0.13.4 by @dependabot in https://github.com/Chatterino/chatterino2/pull/4814 * Bump lib/lua/src from `9b4f39a` to `6baee9e` by @dependabot in https://github.com/Chatterino/chatterino2/pull/4813 * Refactor `Image` & Image's `Frames` by @pajlada in https://github.com/Chatterino/chatterino2/pull/4773 * Fix input in reply thread popup losing focus when dragging by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4815 * Style account switcher to match the current theme by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4817 * Fix signal connection nodiscard warnings by @pajlada in https://github.com/Chatterino/chatterino2/pull/4818 * Add the Changelog Category Check workflow by @pajlada in https://github.com/Chatterino/chatterino2/pull/4821 * Fixed Usercard Popup not floating on tiling WMs on Linux by @qooq69 in https://github.com/Chatterino/chatterino2/pull/3511 * Add `WindowManager::getLastSelectedWindow()` to replace `getMainWindow()` by @Mm2PL in https://github.com/Chatterino/chatterino2/pull/4816 * Cleanup Windows helpers by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4820 * Add (invisible) resize handle to frameless usercards and reply threads by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4795 * Fixed too much text being copied when copying chat messages by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4812 * fix: QuickSwitcherPopup now pops up in the selected window by @pajlada in https://github.com/Chatterino/chatterino2/pull/4819 * Mention filters in the note for features that nicknames don't work with by @Felanbird in https://github.com/Chatterino/chatterino2/pull/4826 * fix fedora build dependencies by @pajlada in https://github.com/Chatterino/chatterino2/pull/4828 * streamlink: trim custom paths by @brian6932 in https://github.com/Chatterino/chatterino2/pull/4834 * Fix selection rendering by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4830 * fix: double margin by @pajlada in https://github.com/Chatterino/chatterino2/pull/4839 * Consolidate input completion code in preparation for advanced completion strategies by @dnsge in https://github.com/Chatterino/chatterino2/pull/4639 * Allow any window to be bounds-checked by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4802 * Check VCRT and show installed/shipped version by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4847 * fix: Commands now completable when not starting with / by @dnsge in https://github.com/Chatterino/chatterino2/pull/4846 * Fix flickering when running with Direct2D by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4851 * Fix to interpret logger channel names as lowercase by @GongBingWong in https://github.com/Chatterino/chatterino2/pull/4848 * Fix empty page added when showing OOB dialog by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4849 * Update Nightly to 2.4.6 and get qt6-related-changes from 2.4.6 by @pajlada in https://github.com/Chatterino/chatterino2/pull/4856 * fix: Fix username tab completion without @ by @dnsge in https://github.com/Chatterino/chatterino2/pull/4853 * Don't download non-existant qt 5.15 debug symbols for Windows by @pajlada in https://github.com/Chatterino/chatterino2/pull/4857 * Implement compile-time flag to disable automatic update checks. by @libklein in https://github.com/Chatterino/chatterino2/pull/4854 * Update changelog entry for 4854 by @Felanbird in https://github.com/Chatterino/chatterino2/pull/4860 * Fix qtkeychain include for Qt6 users by @pajlada in https://github.com/Chatterino/chatterino2/pull/4863 * Fix Chatterino logo in readme by @Felanbird in https://github.com/Chatterino/chatterino2/pull/4865 * Bump pajlads/changelog-checker from 1.0.0 to 1.0.1 by @dependabot in https://github.com/Chatterino/chatterino2/pull/4866 * Add cmake flag to use system-provided miniaudio by @h3o66 in https://github.com/Chatterino/chatterino2/pull/4867 * Fix websocketpp depending on boost::random by @kornes in https://github.com/Chatterino/chatterino2/pull/4869 * Ignore invisible widgets when hit testing by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4873 * Update vcpkg to Qt6 by @kornes in https://github.com/Chatterino/chatterino2/pull/4872 * Fix emoji unified/non-qualified version for sending & parsing by @pajlada in https://github.com/Chatterino/chatterino2/pull/4840 * Adjust `DontFocus` window flags on Windows and macOS by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4876 * Display all parsed elements when parsing emojis in replies by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4875 * Replace boost::optional with std::optional by @pajlada in https://github.com/Chatterino/chatterino2/pull/4877 * Update Windows build instructions & contributing docs by @GongBingWong in https://github.com/Chatterino/chatterino2/pull/4858 * Fix LTO support by @pajlada in https://github.com/Chatterino/chatterino2/pull/4884 * fix: Don't use QCompleter prefix filter by @dnsge in https://github.com/Chatterino/chatterino2/pull/4855 * fix: Remove tab completion caching of source by @dnsge in https://github.com/Chatterino/chatterino2/pull/4893 * Test filters context map & message builder by @pajlada in https://github.com/Chatterino/chatterino2/pull/4886 * Bump ZedThree/clang-tidy-review from 0.13.4 to 0.14.0 by @dependabot in https://github.com/Chatterino/chatterino2/pull/4890 * Bump lib/WinToast from `5e441fd` to `821c481` by @dependabot in https://github.com/Chatterino/chatterino2/pull/4894 * perf: reduce repaints amount caused by selection by @kornes in https://github.com/Chatterino/chatterino2/pull/4889 * Add some more filter tests by @pajlada in https://github.com/Chatterino/chatterino2/pull/4897 * Bump lib/crashpad from `432ff49` to `3182e3b` by @dependabot in https://github.com/Chatterino/chatterino2/pull/4902 * refactor: Toast by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4899 * refactor: simplify double click selection by @kornes in https://github.com/Chatterino/chatterino2/pull/4898 * Remove direct dependency on Qt 5 compatibility module by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4906 * Add selection tests by @kornes in https://github.com/Chatterino/chatterino2/pull/4904 * refactor: Use override instead of virtual where possible by @pajlada in https://github.com/Chatterino/chatterino2/pull/4917 * refactor: debug count and popup by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4921 * refactor: Change lifetime of context menus by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4924 * refactor: FilterParser by @pajlada in https://github.com/Chatterino/chatterino2/pull/4925 * refactor: ChannelView by @pajlada in https://github.com/Chatterino/chatterino2/pull/4926 * refactor: IrcMessageHandler by @pajlada in https://github.com/Chatterino/chatterino2/pull/4927 * ci: Use clang-format 16 by @pajlada in https://github.com/Chatterino/chatterino2/pull/4929 * Bugfix: Fixed a crash when clicking `More messages below` button in a usercard and closing it quickly. by @Mm2PL in https://github.com/Chatterino/chatterino2/pull/4933 * refactor: Message by @pajlada in https://github.com/Chatterino/chatterino2/pull/4915 * Bump cmake/sanitizers-cmake from `c3dc841` to `3f0542e` by @dependabot in https://github.com/Chatterino/chatterino2/pull/4936 * feat: Add VERSIONINFO resource for windows by @kornes in https://github.com/Chatterino/chatterino2/pull/4912 * refactor: KeyboardSettingsPage by @pajlada in https://github.com/Chatterino/chatterino2/pull/4937 * chore: Add a 10m timeout to the clang-tidy CI job by @pajlada in https://github.com/Chatterino/chatterino2/pull/4939 * refactor: move ban/banid/timeout to their own file by @pajlada in https://github.com/Chatterino/chatterino2/pull/4938 * Handle follower emotes differently if subscribed by @baines in https://github.com/Chatterino/chatterino2/pull/4922 * Fix tooltips appearing too large and/or away from the cursor by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4920 * Disable clickable sections in tables by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4913 * feat: forward logging from miniaudio by @pajlada in https://github.com/Chatterino/chatterino2/pull/4836 * feat: `/reply` command now replies to the latest message of the user by @iProdigy in https://github.com/Chatterino/chatterino2/pull/4919 * Improve reply popup after thread update by @iProdigy in https://github.com/Chatterino/chatterino2/pull/4923 * Add support for opening usercards by ID by @Mm2PL in https://github.com/Chatterino/chatterino2/pull/4934 * fix: avoid reward redemption crash via buffer refactor by @iProdigy in https://github.com/Chatterino/chatterino2/pull/4949 * refactor: Move all commands to their own files by @pajlada in https://github.com/Chatterino/chatterino2/pull/4946 * chore(deps): bump lib/miniaudio from `3898fff` to `b19cc09` by @dependabot in https://github.com/Chatterino/chatterino2/pull/4948 * feat: Allow id: prefix in /ban and /timeout by @pajlada in https://github.com/Chatterino/chatterino2/pull/4945 * Dont invalidate paint buffer when selecting by @kornes in https://github.com/Chatterino/chatterino2/pull/4911 * chore(deps): bump lib/miniaudio from `b19cc09` to `3b50a85` by @dependabot in https://github.com/Chatterino/chatterino2/pull/4955 * feat: `/unban` and `/untimeout` by id by @pajlada in https://github.com/Chatterino/chatterino2/pull/4956 * fix: /banid and /ban id: performing duplicate bans by @pajlada in https://github.com/Chatterino/chatterino2/pull/4957 * fix: Split input sometimes not accepting focus by @pajlada in https://github.com/Chatterino/chatterino2/pull/4958 * refactor: Remove `Outcome` from network requests by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4959 * chore(deps): bump actions/github-script from 6 to 7 by @dependabot in https://github.com/Chatterino/chatterino2/pull/4964 * chore(deps): bump lib/miniaudio from `3b50a85` to `4a5b74b` by @dependabot in https://github.com/Chatterino/chatterino2/pull/4967 * Remove unused parseMessage function by @Mm2PL in https://github.com/Chatterino/chatterino2/pull/4968 * refactor: Ignores and Replacements by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4965 * Fix: dont select mod buttons at triple click by @kornes in https://github.com/Chatterino/chatterino2/pull/4961 * feat: Run tests on Windows & macOS in CI by @Wissididom in https://github.com/Chatterino/chatterino2/pull/4970 * Refactored the Image Uploader feature. by @Mm2PL in https://github.com/Chatterino/chatterino2/pull/4971 * Finish renaming Viewer list to Chatter list by @Mm2PL in https://github.com/Chatterino/chatterino2/pull/4974 * fix: Only display spaces between words in reply context by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4977 * fix: deadlock and use-after-free in tests by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4981 * ci: Build benchmarks on Ubuntu 22.04 runner by @pajlada in https://github.com/Chatterino/chatterino2/pull/4982 * refactor: Remove Emoji's EmojiMap with a vector by @pajlada in https://github.com/Chatterino/chatterino2/pull/4980 * refactor: common/Credentials by @pajlada in https://github.com/Chatterino/chatterino2/pull/4979 * Add support for sound backends & some miniaudio changes by @pajlada in https://github.com/Chatterino/chatterino2/pull/4978 * Make emote completion a lot smarter by @Mm2PL in https://github.com/Chatterino/chatterino2/pull/4987 * Update magic_enum from v0.9.3 to v0.9.5 by @pajlada in https://github.com/Chatterino/chatterino2/pull/4992 * Do bounds-checking on more windows by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4797 * fix: typo in debug log for hotkeys by @pajlada in https://github.com/Chatterino/chatterino2/pull/4997 * Move clang-tidy to its own CI job by @pajlada in https://github.com/Chatterino/chatterino2/pull/4996 * Return correct hit-test values for title bar buttons on Windows by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4994 * feat: add channel for messages caught by AutoMod by @iProdigy in https://github.com/Chatterino/chatterino2/pull/4986 * feat: add `--safe-mode` command line option by @Mm2PL in https://github.com/Chatterino/chatterino2/pull/4985 * conan: Update Boost to 1.83 & OpenSSL to 3.2.0 by @pajlada in https://github.com/Chatterino/chatterino2/pull/5007 * Update flatpak nightly build link by @ilya-zlobintsev in https://github.com/Chatterino/chatterino2/pull/5008 * Fix missing parent of tooltips for Wayland by @crazysmc in https://github.com/Chatterino/chatterino2/pull/4998 * chore(deps): bump lib/crashpad from `3182e3b` to `89991e9` by @dependabot in https://github.com/Chatterino/chatterino2/pull/5005 * Hide the Usercard button in the User Info Popup in special channels by @Mm2PL in https://github.com/Chatterino/chatterino2/pull/4972 * perf: query fewer historical messages on reconnects by @iProdigy in https://github.com/Chatterino/chatterino2/pull/5001 * Fixed "Yes, don't ask again" image uploader prompt not working on macOS by @pajlada in https://github.com/Chatterino/chatterino2/pull/5011 * Add a new completion API for experimental plugins feature. by @Mm2PL in https://github.com/Chatterino/chatterino2/pull/5000 * Add crazysmc to the contributors list by @crazysmc in https://github.com/Chatterino/chatterino2/pull/5020 * chore(deps): bump actions/upload-artifact from 3 to 4 by @dependabot in https://github.com/Chatterino/chatterino2/pull/5025 * chore(deps): bump actions/download-artifact from 3 to 4 by @dependabot in https://github.com/Chatterino/chatterino2/pull/5024 * fix: Fixed some compiler warnings by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5028 * fix: show user message on watch streak notice by @iProdigy in https://github.com/Chatterino/chatterino2/pull/5029 * BREAKING: Replace custom `import()` with normal Lua `require()`. by @Mm2PL in https://github.com/Chatterino/chatterino2/pull/5014 * fix: request more historical messages on wake by @iProdigy in https://github.com/Chatterino/chatterino2/pull/5018 * chore(deps): bump dawidd6/action-download-artifact from 2 to 3 by @dependabot in https://github.com/Chatterino/chatterino2/pull/5021 * Fixes to ctrl+backspace behavior by @gremble0 in https://github.com/Chatterino/chatterino2/pull/5013 * Migrate tests on macOS to the same way tests are run on windows by @Wissididom in https://github.com/Chatterino/chatterino2/pull/5032 * fix: UserInfoPopup now requires a split as its parent by @pajlada in https://github.com/Chatterino/chatterino2/pull/5034 * dev: Rename `tools` directory to `scripts` by @pajlada in https://github.com/Chatterino/chatterino2/pull/5035 * fix: ReplyThreadPopup now requires a split as its parent by @pajlada in https://github.com/Chatterino/chatterino2/pull/5036 * chore: Unify `.clang-format` file by @pajlada in https://github.com/Chatterino/chatterino2/pull/5037 * Allow `ChannelView`s without a `Split` by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/4747 * docs: cleanup/polish Markdown files by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5038 * feat: Add crash recovery on Windows by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5012 * fix: Tooltip parenting on Windows by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5040 * perf: skip update from GIF timer if no animated elements are shown by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5042 * feat: add sound and flash alert for automod caught messages by @iProdigy in https://github.com/Chatterino/chatterino2/pull/5026 * perf: Only update regions with animated elements by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5043 * fix: Add check for tall messages by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5045 * chore: add SputNikPlop to the contributors list by @SputNikPlop in https://github.com/Chatterino/chatterino2/pull/5046 * fix: some buttons triggering when releasing mouse outside by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5052 * fix: non-native drag on Windows by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5051 * refactor: Make `Args` less of a singleton by @pajlada in https://github.com/Chatterino/chatterino2/pull/5041 * Improve docs/supplemental files for plugins by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5047 * Allow customization of whisper colors in settings by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5053 * Autogenerate docs/plugin-meta.lua by @Mm2PL in https://github.com/Chatterino/chatterino2/pull/5055 * feat: show restricted chats and suspicious treatment updates by @iProdigy in https://github.com/Chatterino/chatterino2/pull/5056 * refactor: Logging (chat logger) by @pajlada in https://github.com/Chatterino/chatterino2/pull/5058 * chore(deps): bump ilammy/msvc-dev-cmd from 1.12.1 to 1.13.0 by @dependabot in https://github.com/Chatterino/chatterino2/pull/5062 * Added missing periods at mod-related messages and some system messages by @fraxxio in https://github.com/Chatterino/chatterino2/pull/5061 * Add Fraxx list of contributors by @fraxxio in https://github.com/Chatterino/chatterino2/pull/5064 * Add some tests for NotebookTab by @pajlada in https://github.com/Chatterino/chatterino2/pull/5070 * fix: Avoid unnecessary `NotebookTab` updates by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5068 * fix: Avoid duplicate scale in settings dialog by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5069 * refactor: Twitch PubSub client by @pajlada in https://github.com/Chatterino/chatterino2/pull/5059 * feat: add badges, emotes, and filters for suspicious messages by @iProdigy in https://github.com/Chatterino/chatterino2/pull/5060 * Improve color selection and display by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5057 * dev: Add RecentMessages benchmark by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5071 * refactor: NetworkPrivate by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5063 * fix: button hover state-change not visible in some cases by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5077 * Improve Streamlink documentation by @fraxxio in https://github.com/Chatterino/chatterino2/pull/5076 * chore(deps): bump ZedThree/clang-tidy-review from 0.14.0 to 0.15.0 by @dependabot in https://github.com/Chatterino/chatterino2/pull/5078 * fix: restore focus of last split when restoring by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5080 * refactor: SplitOverlay by @pajlada in https://github.com/Chatterino/chatterino2/pull/5082 * fix: ignore save requests after closing all windows by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5081 * refactor: fix clang-tidy auto*, const&, and curly braces by @pajlada in https://github.com/Chatterino/chatterino2/pull/5083 * chore(deps): bump lib/settings from `f92bc7b` to `7a0e373` by @dependabot in https://github.com/Chatterino/chatterino2/pull/5085 * chore(deps): bump ZedThree/clang-tidy-review from 0.15.0 to 0.15.1 by @dependabot in https://github.com/Chatterino/chatterino2/pull/5087 * chore(deps): bump lib/serialize from `bbf0a34` to `17946d6` by @dependabot in https://github.com/Chatterino/chatterino2/pull/5086 * chore(deps): bump lib/signals from `ca452a8` to `d067706` by @dependabot in https://github.com/Chatterino/chatterino2/pull/5084 * refactor: move Network files from src/common/ to src/common/network/ by @pajlada in https://github.com/Chatterino/chatterino2/pull/5089 * clang-tidy: Make protected & private suffix underscore optional by @pajlada in https://github.com/Chatterino/chatterino2/pull/5090 * refactor: Remove the `NullablePtr` class by @pajlada in https://github.com/Chatterino/chatterino2/pull/5091 * refactor: Un-singletonize Paths & Updates by @pajlada in https://github.com/Chatterino/chatterino2/pull/5092 * refactor: Fix a bunch of minor things by @pajlada in https://github.com/Chatterino/chatterino2/pull/5094 * Use the same input padding between light & dark themes by @pajlada in https://github.com/Chatterino/chatterino2/pull/5095 * refactor: Move TwitchBadges to Application by @pajlada in https://github.com/Chatterino/chatterino2/pull/5096 * chore(deps): bump ZedThree/clang-tidy-review from 0.15.1 to 0.16.0 by @dependabot in https://github.com/Chatterino/chatterino2/pull/5097 * chore(deps): bump actions/cache from 3 to 4 by @dependabot in https://github.com/Chatterino/chatterino2/pull/5098 * chore(deps): bump lib/lua/src from `6baee9e` to `7923dbb` by @dependabot in https://github.com/Chatterino/chatterino2/pull/4983 * chore(deps): bump lib/settings from `87ed4d9` to `7e99623` by @dependabot in https://github.com/Chatterino/chatterino2/pull/5099 * fix: assert for GUI thread in getters instead of `get(I)App` by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5102 * fix: ignore channel name when copying message by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5106 * refactor: Make ChatterinoBadges less of a singleton by @pajlada in https://github.com/Chatterino/chatterino2/pull/5103 * refactor: Remove most raw accesses into Application by @pajlada in https://github.com/Chatterino/chatterino2/pull/5104 * chore(deps): bump ZedThree/clang-tidy-review from 0.16.0 to 0.17.0 by @dependabot in https://github.com/Chatterino/chatterino2/pull/5105 * deps(conan): use `boost` in header-only mode by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5107 * Remove reference to lua import() by @Mm2PL in https://github.com/Chatterino/chatterino2/pull/5108 * refactor: make Application::emotes private by @pajlada in https://github.com/Chatterino/chatterino2/pull/5109 * fix: badge highlights not immediately updating color by @pajlada in https://github.com/Chatterino/chatterino2/pull/5110 * feat: add command line argument to select/add tab with a channel by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5111 * refactor: remove ColorProvider::setColor by @pajlada in https://github.com/Chatterino/chatterino2/pull/5112 * Chatters from recent-messages are now tab-completable by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5116 * refactor: mini reorganization of FfzEmotes.cpp by @pajlada in https://github.com/Chatterino/chatterino2/pull/5117 * refactor: Move Emotes to Application by @pajlada in https://github.com/Chatterino/chatterino2/pull/5120 * perf: add signal to invalidate buffers without doing layout by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5123 * chore(deps): bump lib/settings from `7e99623` to `ad12188` by @dependabot in https://github.com/Chatterino/chatterino2/pull/5124 * chore: specialize `Atomic<std::shared_ptr<T>>` by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5133 * Add support for `input.text` in commands run with hotkeys by @Mm2PL in https://github.com/Chatterino/chatterino2/pull/5130 * feat: add system theme on Qt 6.5 and up by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5118 * fix: support captures in ignores by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5126 * chore(deps): bump ZedThree/clang-tidy-review from 0.17.0 to 0.17.1 by @dependabot in https://github.com/Chatterino/chatterino2/pull/5136 * fix: more MSVC warnings by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5137 * chore(deps): bump lib/lua/src from `7923dbb` to `e288c5a` by @dependabot in https://github.com/Chatterino/chatterino2/pull/5129 * Add developer_name appdata field by @ilya-zlobintsev in https://github.com/Chatterino/chatterino2/pull/5138 * chore(deps): bump lib/settings from `53be078` to `e5346c3` by @dependabot in https://github.com/Chatterino/chatterino2/pull/5140 * fix: Twitch global emotes not loading by @pajlada in https://github.com/Chatterino/chatterino2/pull/5144 * fix: Benchmarks segfaulting/asserting on missing emotes by @pajlada in https://github.com/Chatterino/chatterino2/pull/5146 * fix: use neutral or username color for reply messages by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5145 * chore: Include all requires sizes in macOS icon file. by @Manfred in https://github.com/Chatterino/chatterino2/pull/5148 * feat: Allow /openurl to force use private/non-private mode by @pajlada in https://github.com/Chatterino/chatterino2/pull/5149 * feat: Add "Copy message as JSON" option when shift-right-clicking a message by @pajlada in https://github.com/Chatterino/chatterino2/pull/5150 * Add a new Channel API for experimental plugins feature by @Mm2PL in https://github.com/Chatterino/chatterino2/pull/5141 * feat: add option to change the top-most status of a window by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5135 * chore(deps): bump lib/settings from `e5346c3` to `b791880` by @dependabot in https://github.com/Chatterino/chatterino2/pull/5153 * chore: Build with Qt6 by default on Windows by @pajlada in https://github.com/Chatterino/chatterino2/pull/5155 * chore(deps): bump ncipollo/release-action from 1.13.0 to 1.14.0 by @dependabot in https://github.com/Chatterino/chatterino2/pull/5160 * chore: Use OpenSSL 3 by default in conan by @pajlada in https://github.com/Chatterino/chatterino2/pull/5159 * fix: avoid promoting child widgets to child windows by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5161 * feat: build Ubuntu images in Docker by @pajlada in https://github.com/Chatterino/chatterino2/pull/5151 * revert: uncomment NCCALCSIZE adjustment by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5166 * chore: Add a full-build shell script for use in CI/docker by @pajlada in https://github.com/Chatterino/chatterino2/pull/5167 * chore: update the ci full build script by @pajlada in https://github.com/Chatterino/chatterino2/pull/5168 * chore: Run Ubuntu tests in Docker by @pajlada in https://github.com/Chatterino/chatterino2/pull/5170 * fix: minimize button remaining hovered on Windows by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5175 * fix: resolve /live channel liveness using their channel ID by @KleberPF in https://github.com/Chatterino/chatterino2/pull/5172 * fix: searching redemptions that require user input by @KleberPF in https://github.com/Chatterino/chatterino2/pull/5177 * feat: add the ability to unit test some aspects of SplitInput by @pajlada in https://github.com/Chatterino/chatterino2/pull/5179 * fix: "reply to message" now takes usernames with @'s & commas into consideration by @KleberPF in https://github.com/Chatterino/chatterino2/pull/5173 * refactor: Turn link-info into its own element and class by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5178 * Update emoji-data to v15.1.1 by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5182 * Live streams that are marked as reruns now mark a tab as yellow instead of red by @Mm2PL in https://github.com/Chatterino/chatterino2/pull/5176 * fix: double ellipsis in reply by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5174 * Make Lua CommandContext use a ChannelRef by @Mm2PL in https://github.com/Chatterino/chatterino2/pull/5184 * Update plugin documentation document by @Mm2PL in https://github.com/Chatterino/chatterino2/pull/5185 * Update chatterino.d.ts for the ChannelRef change by @Mm2PL in https://github.com/Chatterino/chatterino2/pull/5187 * fix: /openurl can now open urls with spaces, assuming the url allows it by @pajlada in https://github.com/Chatterino/chatterino2/pull/5197 * fix: tooltips showing out-of-bounds after loading images by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5186 * Allow theming of tab live and rerun indicators by @Mm2PL in https://github.com/Chatterino/chatterino2/pull/5188 * Fix incomplete traversal of clipboard data when an image is present resulting in Not an Image error by @hemirt in https://github.com/Chatterino/chatterino2/pull/5156 * Add option always include broadcaster in user completions by @KleberPF in https://github.com/Chatterino/chatterino2/pull/5193 * feat: Add a fallback theme to custom themes by @pajlada in https://github.com/Chatterino/chatterino2/pull/5198 * feat: Show FrankerFaceZ channel badges by @pajlada in https://github.com/Chatterino/chatterino2/pull/5119 * Introduce `c2.later()` function to Lua API. by @Mm2PL in https://github.com/Chatterino/chatterino2/pull/5154 * perf: prevent unnecessary layouts at leaveEvent by @kornes in https://github.com/Chatterino/chatterino2/pull/4879 * feat: Send messages using Helix API by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5200 * Estimate size of images to avoid layout shifts by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5192 * chore(deps): bump lib/settings from `b791880` to `56a1597` by @dependabot in https://github.com/Chatterino/chatterino2/pull/5202 * fix: show correct scale factor of images by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5201 * feat: use 4x images on 7TV instead of 3x by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5209 * Add launchable attribute to the Linux appdata file by @ilya-zlobintsev in https://github.com/Chatterino/chatterino2/pull/5210 * Disable tests & benchmarks on ubuntu 20.04 docker builds by @pajlada in https://github.com/Chatterino/chatterino2/pull/5213 * chore(deps): bump lib/settings from `56a1597` to `41ef789` by @dependabot in https://github.com/Chatterino/chatterino2/pull/5214 * refactor: turn `StreamerMode` into a singleton(-like thing) by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5216 * fix: correctly load twitch badges in highlights page by @pajlada in https://github.com/Chatterino/chatterino2/pull/5223 * chore: clean up and optimize resources by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5222 * chore: remove dead message element code by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5225 * fix: store IPC file in application directory by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5226 * fix: the font switcher now remembers your previous font by @pajlada in https://github.com/Chatterino/chatterino2/pull/5224 * chore(deps): update ccache-action back to upstream repo by @Felanbird in https://github.com/Chatterino/chatterino2/pull/5233 * chore(deps): update sccache version comments by @Felanbird in https://github.com/Chatterino/chatterino2/pull/5234 * fix(streamer-mode): check setting on startup by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5236 * Fix rerun flag not being unset after stream finishes by @Mm2PL in https://github.com/Chatterino/chatterino2/pull/5237 * fix(tooltips): hide image label by default by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5232 * fix(windows): show split tooltip before move by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5230 * Add highlight color and show in mentions to automod messages by @KleberPF in https://github.com/Chatterino/chatterino2/pull/5215 * fix: settings "Cancel" button doesn't work first time by @pajlada in https://github.com/Chatterino/chatterino2/pull/5229 * fix: compare settings before updating them by @pajlada in https://github.com/Chatterino/chatterino2/pull/5240 * Add plugin permissions and IO API by @Mm2PL in https://github.com/Chatterino/chatterino2/pull/5231 * Disable homebrew auto updating by @pajlada in https://github.com/Chatterino/chatterino2/pull/5242 * Add myself to contributors.txt by @KleberPF in https://github.com/Chatterino/chatterino2/pull/5241 * fix: Don't attempt to put the broadcaster username at the top by @pajlada in https://github.com/Chatterino/chatterino2/pull/5244 * Hide chatter list button for non-moderators by @pajlada in https://github.com/Chatterino/chatterino2/pull/5245 * fix: truncate outgoing IRC messages to ensure we don't send more than 512 bytes by @pajlada in https://github.com/Chatterino/chatterino2/pull/5246 * refactor: Fonts by @pajlada in https://github.com/Chatterino/chatterino2/pull/5228 * feat: add /announce[color] commands by @4rneee in https://github.com/Chatterino/chatterino2/pull/5250 * fix(channel-view): use `underlyingChannel_` over `channel_` by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5248 * fix: Compile Lua as a C library by @pajlada in https://github.com/Chatterino/chatterino2/pull/5251 * Show line indicator instead of rectangle while dragging in tables by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5252 * feat: Warn for commands with duplicate triggers by @askepticaldreamer in https://github.com/Chatterino/chatterino2/pull/4322 * Fix double click to select full words by @KleberPF in https://github.com/Chatterino/chatterino2/pull/5243 * fix: output less qt debug stuff in tests by @pajlada in https://github.com/Chatterino/chatterino2/pull/5253 * Revert "Show line indicator instead of rectangle while dragging in tables" by @Felanbird in https://github.com/Chatterino/chatterino2/pull/5255 * chore(deps): bump ZedThree/clang-tidy-review from 0.17.1 to 0.17.2 by @dependabot in https://github.com/Chatterino/chatterino2/pull/5257 * fix: create NetworkManager statics in `init()` by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5254 * refactor: adapt magic_enum to Qt by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5258 * fix: check broadcast binaries without case sensitivity by @iProdigy in https://github.com/Chatterino/chatterino2/pull/5260 * fix: Update Linux build instructions by @pajlada in https://github.com/Chatterino/chatterino2/pull/5262 * fix: remove ":" from the message the user is replying to if it's a /me message by @Heryin in https://github.com/Chatterino/chatterino2/pull/5263 * fix: add trailing space if deletion link included in image upload response by @DatGuy1 in https://github.com/Chatterino/chatterino2/pull/5269 * chore(deps): bump ZedThree/clang-tidy-review from 0.17.2 to 0.17.3 by @dependabot in https://github.com/Chatterino/chatterino2/pull/5271 * Prepare changelog for v2.5.0 release by @Felanbird in https://github.com/Chatterino/chatterino2/pull/5264 * feat: add more items in macOS menu bar by @mavjs in https://github.com/Chatterino/chatterino2/pull/5266 * fix(helix-chat): show better error messages by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5276 * ci: run clang-tidy with Qt 6 and update action by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5273 * fix: rerender when unpausing by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5265 * Add `reward.cost` `reward.id`, `reward.title` filter variables by @Mm2PL in https://github.com/Chatterino/chatterino2/pull/5275 * fix: override broken base sizes & scales for some Twitch emotes by @pajlada in https://github.com/Chatterino/chatterino2/pull/5279 * chore: require newline at EOF by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5278 * lua: Change CompletionRequested handler to use an event table. by @Mm2PL in https://github.com/Chatterino/chatterino2/pull/5280 * refactor: improve LuaLS generator by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5283 * fix: missing rerender on clear by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5282 * Fix some documentations & comments by @pajlada in https://github.com/Chatterino/chatterino2/pull/5286 * refactor: About page by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5287 * fix: use 3x scale factor for base size multiplier by @pajlada in https://github.com/Chatterino/chatterino2/pull/5291 * feat: report duration for multi-month anon sub gifts by @iProdigy in https://github.com/Chatterino/chatterino2/pull/5293 * fix: use login name when parsing highlights by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5295 * fix: use `deleteLater` for network objects and order them by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5297 * Release v2.5.0-beta.1 by @pajlada in https://github.com/Chatterino/chatterino2/pull/5303 * fix: hide tooltip on window leave event by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5309 * fix: the version string not showing up as expected in Finder on macOS by @nealxm in https://github.com/Chatterino/chatterino2/pull/5311 * add nealxm to contributors list by @nealxm in https://github.com/Chatterino/chatterino2/pull/5312 * chore(deps): bump DoozyX/clang-format-lint-action from 0.16.2 to 0.17 by @dependabot in https://github.com/Chatterino/chatterino2/pull/5320 * feat: include duration in more multi month gifts by @iProdigy in https://github.com/Chatterino/chatterino2/pull/5319 * Add context menu entry to toggle offline tabs by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5318 * Fix Wayland image upload crash if confirmation dialog is enabled by @pajlada in https://github.com/Chatterino/chatterino2/pull/5314 * fix: improve error messaging when pgrep fails streamer mode detection by @pajlada in https://github.com/Chatterino/chatterino2/pull/5321 * Fixed links having `http://` added to the beginning in certain cases. by @Mm2PL in https://github.com/Chatterino/chatterino2/pull/5323 * chore(deps): bump lib/settings from `ceac9c7` to `70fbc72` by @dependabot in https://github.com/Chatterino/chatterino2/pull/5325 * fix: set maximum of scrollbar after filtering by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5329 * fix: don't change the topmost value of child windows by @Nerixyz in https://github.com/Chatterino/chatterino2/pull/5330 * Change order of query parameters of Twitch Player URLs. by @mavjs in https://github.com/Chatterino/chatterino2/pull/5326 * fix: Remove "Show chatter list" entry from split header menu for non-mods by @pajlada in https://github.com/Chatterino/chatterino2/pull/5336 * chore(deps): bump lib/lua/src from `e288c5a` to `0897c0a` by @dependabot in https://github.com/Chatterino/chatterino2/pull/5316 * Release v2.5.0 by @pajlada in https://github.com/Chatterino/chatterino2/pull/5337New Contributors
- @GongBingWong made their first contribution in https://github.com/Chatterino/chatterino2/pull/4848
- @libklein made their first contribution in https://github.com/Chatterino/chatterino2/pull/4854
- @h3o66 made their first contribution in https://github.com/Chatterino/chatterino2/pull/4867
- @baines made their first contribution in https://github.com/Chatterino/chatterino2/pull/4922
- @crazysmc made their first contribution in https://github.com/Chatterino/chatterino2/pull/4998
- @gremble0 made their first contribution in https://github.com/Chatterino/chatterino2/pull/5013
- @fraxxio made their first contribution in https://github.com/Chatterino/chatterino2/pull/5061
- @Manfred made their first contribution in https://github.com/Chatterino/chatterino2/pull/5148
- @KleberPF made their first contribution in https://github.com/Chatterino/chatterino2/pull/5172
- @Heryin made their first contribution in https://github.com/Chatterino/chatterino2/pull/5263
- @nealxm made their first contribution in https://github.com/Chatterino/chatterino2/pull/5311
Full Changelog: https://github.com/Chatterino/chatterino2/compare/v2.4.5...v2.5.0