Commit Graph

68 Commits

Author SHA1 Message Date
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
Daniel Sage 20c974fdab Added support for Twitch's Chat Replies (#3722)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2022-07-31 10:45:25 +00:00
Kasia f3f340335f Make generic version of batcher function (#3822) 2022-06-17 20:52:20 +02:00
Kasia 74ec310228 Fixed channels not being set as offline (#3767) 2022-05-28 18:10:10 +00:00
Sidd 21934b6aaf perf: use constant time live channel lookup (#3762) 2022-05-22 19:21:02 +02:00
xel86 dc34c16dbe Batch checking live status for all channels after startup. (#3757) 2022-05-22 15:51:23 +00:00
nerix f97780d84e Improve Twitch PubSub connection reliability (#3643)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2022-05-07 15:22:39 +00:00
pajlada 28dcdb238b Remove JOINs from write connection (#3112)
Co-authored-by: zneix <zneix@zneix.eu>
2021-08-03 15:55:04 +00:00
Paweł 7e13564c24 Fixed newly uploaded subscriber emotes not being available (#2992)
Co-authored-by: Felanbird <41973452+Felanbird@users.noreply.github.com>
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2021-07-17 15:18:17 +00:00
Paweł 91ab8b90a0 Cleaned up IrcMessageHandler (#3021) 2021-07-17 13:09:21 +00:00
Paweł c8c28d7f55 Remove global third party emotes from TwitchChannel class (#3000)
Those are still accessible under getApp()->twitch2 instance.
2021-07-13 13:23:50 +02:00
apa420 dcd65b5978 /live split for channels going live (#1998)
Co-authored-by: 23rd <23rd@vivaldi.net>
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2021-05-09 14:17:04 +00:00
pajlada 2f49b23875 Add ability to disable precompiled headers with CMake (#2727) 2021-05-08 15:57:00 +02:00
Daniel f6d9fb2aac Add ability to highlight messages based on user badges (#1704)
Co-authored-by: Paweł <zneix@zneix.eu>
Co-authored-by: 23rd <23rd@vivaldi.net>
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2021-05-02 22:08:08 +00:00
pajlada b3e01a40d7 Try to improve Twitch IRC network stability (#2347) 2021-01-09 18:05:02 +01:00
Steve Wills df722a72c1 Switch to QT Category logging (#2206)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2020-11-21 16:20:10 +01:00
Leon Richardt 0eed45ae67 Chore: Proper Lambda Formatting (#2167)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2020-11-08 12:02:19 +01:00
Auro cc5eb7000f Fixed the english of a system message (#1878)
* Update TwitchIrcServer.cpp

* made english better

changed "sending messages too fast" to "You are sending messages too fast"

* changed english

* Changed English

Changed the English in 2 system messages

* Update CHANGELOG.md

* Changed too fast to too quickly

Co-authored-by: fourtf <tf.four@gmail.com>
2020-09-26 13:06:37 +02:00