Commit Graph

85 Commits

Author SHA1 Message Date
nerix a86df7087d feat: add snapshot tests for eventsub messages (#5965) 2025-02-21 21:33:29 +01:00
nerix dd6f204adc feat: delete messages from context menu (#5956) 2025-02-15 19:29:25 +01:00
pajlada 8554bd4d65 fix: properly stack/merge PubSub & IRC timeouts again (#5855) 2025-01-25 11:13:33 +00:00
pajlada 3214e0a80b fix: more force relayout on timeout/clear/delete (#5854) 2025-01-25 11:42:55 +01:00
nerix 35b15c4088 feat: prefer visible/selected channels when joining (#5850) 2025-01-24 11:43:30 +00:00
nerix c1959259ce fix: use serverReceivedTime over parseTime for stacking (#5824) 2025-01-19 12:37:58 +00:00
nerix 7dbb27e22e feat: stack /clear messages (#5806) 2025-01-12 11:54:14 +00:00
pajlada 8b7d7f9d71 fix: stop blocked terms from showing up more than once (#5789) 2025-01-04 11:57:09 +00:00
pajlada e1aded057d feat: improve automod blocked term messaging (#5699) 2024-11-30 12:32:33 +01:00
nerix 280f9e4047 revert: use helix as the default chat send protocol (#5736) 2024-11-25 20:48:03 +01:00
pajlada 46c1f18ae7 feat: add setting to hide blocked term automod messages (#5690) 2024-11-05 21:04:45 +01:00
nerix 101a45fd3a refactor: deduplicate IRC parsing (#5678) 2024-11-02 12:54:31 +00:00
iProdigy 2d7f515e5a fix: disable correct message upon automod approve or deny (#5611) 2024-10-05 11:35:33 +00:00
nerix ef4be6cdac feat: send messages over Helix by default (#5607) 2024-09-29 11:52:37 +02:00
nerix 820aa12af6 refactor: load Twitch emotes from Helix (#5239) 2024-09-01 11:22:54 +02:00
iProdigy 956186d1a1 feat: indicate which mods start and cancel raids (#5563) 2024-08-31 10:12:25 +00:00
pajlada 627c735524 refactor: some Application & style things (#5561) 2024-08-25 15:33:07 +02:00
pajlada 3e510fd9e9 refactor: some more Application refactors (#5551) 2024-08-25 11:04:48 +00:00
pajlada 998920d244 Remove experimental IRC support (#5547) 2024-08-18 12:04:26 +00:00
pajlada f0802af055 refactor: move seventv/bttv event apis to application (#5532) 2024-08-08 15:08:31 +02:00
pajlada 5deec1f02f chore: remove Singleton & replace getIApp with getApp (#5514) 2024-07-21 13:09:59 +00:00
pajlada 354079c74c refactor: add Channel::addSystemMessage function (#5500) 2024-07-07 22:03:05 +02:00
pajlada 248cd46eb7 fix: global emotes not loading (#5435)
* fix: manually initialize twitchircserver after rest of singletons are initialized

this fixes global emotes not being loaded on startup, since initialize
was never called (since it was no longer added to the singleton list)

* unrelated nit: remove copy/move ctors/operators of twitchircserver
2024-06-03 10:31:30 +02:00
pajlada b6dc5d9e03 chore: refactor TwitchIrcServer (#5421) 2024-06-01 12:56:40 +00:00
nerix 9583a10b88 fix(helix-chat): show better error messages (#5276) 2024-03-30 11:24:09 +01:00
nerix 0cfd25ce8e feat: Send messages using Helix API (#5200) 2024-02-25 14:45:55 +01:00
pajlada 32d269dffc feat: add the ability to unit test some aspects of SplitInput (#5179) 2024-02-17 12:26:54 +00:00
pajlada 5628605de4 refactor: Move Emotes to Application (#5120) 2024-01-21 13:20:21 +00:00
pajlada 4380ef8c5f refactor: Remove most raw accesses into Application (#5104) 2024-01-19 17:59:55 +01:00
pajlada 718696db53 refactor: Un-singletonize Paths & Updates (#5092) 2024-01-16 20:56:43 +00:00
pajlada 5b6675abb4 refactor: fix clang-tidy auto*, const&, and curly braces (#5083) 2024-01-14 17:54:52 +01:00
pajlada 416806bb0a refactor: Twitch PubSub client (#5059)
* Remove unused `setAccountData` function

* Move PubSub out of TwitchIrcServer and into Application

* Add changelog entry

* fix: assert feedback

* Add PubSub::unlistenPrefix as per review suggestion

* Fix tests

* quit pubsub on exit

might conflict with exit removal, so can be reverted but this shows it's possible

* Don't manually call stop on clients, it's called when the connection is closed

* nit: rename `mainThread` to `thread`

* Join in a thread!!!!!!!!
2024-01-06 13:18:37 +01:00
iProdigy 036a5f3f21 feat: show restricted chats and suspicious treatment updates (#5056)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2023-12-31 10:44:55 +00:00
iProdigy e75ce5db54 fix: request more historical messages on wake (#5018) 2023-12-16 12:38:35 +00:00
iProdigy 44abe6b487 feat: add channel for messages caught by AutoMod (#4986)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2023-12-03 22:07:30 +00:00
pajlada 9f23c8562a Test filters context map & message builder (#4886) 2023-10-13 15:41:23 +00:00
pajlada 8fe3af3522 Fix signal connection nodiscard warnings (#4818) 2023-09-16 11:52:51 +00:00
pajlada 76527073cf Ensure live status requests are always batched (#4713) 2023-07-02 13:52:15 +00:00
pajlada 5ca7d387e4 Expand upon test channels (#4655)
Available test channels:

- `$$$` - Fill up scrollback (1000 messages), then add a new message every 500ms
- `$$$:e` - Add a new message every 500ms
- `$$$$` - Fill up scrollback (1000 messages), then add a new message every 250ms
- `$$$$:e` - Add a new message every 250ms
- `$$$$$` - Fill up scrollback (1000 messages), then add a new message every 100ms
- `$$$$$:e` - Add a new message every 100ms
- `$$$$$$` - Fill up scrollback (1000 messages), then add a new message every 50ms
- `$$$$$$:e` - Add a new message every 50ms
- `$$$$$$$` - Fill up scrollback (1000 messages), then add a new message every 25ms
- `$$$$$$$:e` - Add a new message every 25ms
2023-05-27 13:33:01 +02:00
pajlada c95a65c153 Fix Qt6 building (#4393) 2023-02-19 20:19:18 +01:00
nerix 0c74ab17ed Refactor 7TV EventAPI (#4342)
* refactor: remove file prefix

* refactor: put eventapi into a namespace

* refactor: support multiple conditions

* fix: handle ack

* docs: add changelog entry

* fix: unsubscribe in destructor

* fix: naming of parameter

* fix: namespaces

* chore: casing

* fix: missing namespace

---------

Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2023-02-04 13:42:52 +01:00
nerix 904749cf62 feat: Add Live Emote Updates for BTTV (#4147)
This feature is enabled by default and can be disabled in settings with the "Enable BTTV live emotes updates" setting.

Co-authored-by: Felanbird <41973452+Felanbird@users.noreply.github.com>
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2023-01-21 14:06:55 +00:00
pajlada c0f0a7e555 Fix link to the "connecting to the Twitch IRC server" guide (#4293) 2023-01-08 12:45:24 +01:00
nerix 1043f9f803 Remove Unnecessary Includes in Headers (#4275)
* refactor: remove unnecessary includes in headers

* fix: formatting

* chore: changelog

* fix: scrollbar

* fix: suggestions and old appbase remains

* fix: suggestion

* fix: missing Qt forward declarations

* fix: another qt include

* fix: includes for precompiled-headers=off

* Add missing `<memory>` includes

* Add missing `#pragma once`

* Fix tests

Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2022-12-31 14:41:01 +00:00
nerix 86e71c8bd9 Migrate to C++ 20 & switch to websocketpp develop branch (#4252)
* feat: c++ 20

* fix: c++ 20 deprecations

* fix(msvc): warnings

* chore: add changelog entry

* fix: formatting

* Update websocketpp to the `develop` branch

* Specify other template type in FlagsEnum != operator

* Remove the user of simple template ids in our websocketpp template class

Also standardizes the file a bit by using nested namespaces, using
pragma once

* fix: turn `MAGIC_MESSAGE_SUFFIX` into a `QString`

* hacky unhacky hacky const char hack

Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2022-12-24 11:56:11 +00:00
pajlada 032f290767 Sort and force grouping of includes (#4172)
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)
2022-11-27 19:32:53 +01:00
nerix 39f7d8ac4c feat: Live Emote Updates for 7TV (#4090)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2022-11-13 12:07:41 +01:00
nerix 3e41b84ed7 feat: Add 7TV Emotes and Badges (#4002)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2022-10-16 11:22:17 +00:00
pajlada 46efa5df3d Treat reorder warnings as errors (#3944) 2022-09-03 18:12:44 +02:00
nerix c1af2c3faa feat: add settings to toggle BTTV/FFZ global/channel emotes (#3935)
* feat: add settings to disable BTTV/FFZ global/channel emotes

* docs: add changelog entry

* fix: capitalize `BTTV` and `FFZ`

* fix: rename and move settings
2022-08-28 12:20:47 +02:00