Commit Graph

140 Commits

Author SHA1 Message Date
nerix d0bcf35fdc refactor: move zero width replacement to a function (#5594) 2024-09-28 12:49:26 +00:00
nerix 820aa12af6 refactor: load Twitch emotes from Helix (#5239) 2024-09-01 11:22:54 +02:00
pajlada ac88730563 fix: remove deprecated Application::getTwitchAbstract (#5560) 2024-08-25 11:38:57 +00:00
pajlada 175afa8b16 refactor: make a single MessageBuilder (#5548) 2024-08-24 10:18:27 +00:00
pajlada 998920d244 Remove experimental IRC support (#5547) 2024-08-18 12:04:26 +00:00
pajlada 5deec1f02f chore: remove Singleton & replace getIApp with getApp (#5514) 2024-07-21 13:09:59 +00:00
pajlada 973b7a3bdd Add extra context to messages that are added to channels, allowing the logging controller to take more responsibility in what messages to log (#5499)
Co-auhtored-by: James Upjohn <jupjohn@jammeh.co.nz>
2024-07-13 11:15:11 +00:00
pajlada 354079c74c refactor: add Channel::addSystemMessage function (#5500) 2024-07-07 22:03:05 +02:00
iProdigy 2ef3306d1d feat: notate power-up automatic reward redemptions (#5471) 2024-06-22 11:03:49 +00:00
pajlada b6dc5d9e03 chore: refactor TwitchIrcServer (#5421) 2024-06-01 12:56:40 +00:00
nerix 491b6db72f chore: remove unused timegates (#5361) 2024-05-25 11:12:04 +00:00
iProdigy e6bf503594 feat: include duration in more multi month gifts (#5319)
* feat: include duration in more multi month gifts

* chore: update sample data

* chore: update changelog

* push more sample data events to my channel

* feat: use nicer display name for anon gifters

---------

Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2024-04-12 21:30:33 +02:00
iProdigy 92e75784fc feat: report duration for multi-month anon sub gifts (#5293) 2024-04-02 12:50:53 +02:00
pajlada a958619860 Hide chatter list button for non-moderators (#5245) 2024-03-10 11:46:26 +00:00
nerix c1fa51242f refactor: turn StreamerMode into a singleton(-like thing) (#5216) 2024-03-01 21:12:02 +01:00
pajlada 4380ef8c5f refactor: Remove most raw accesses into Application (#5104) 2024-01-19 17:59:55 +01:00
nerix f42ae07408 dev: Add RecentMessages benchmark (#5071)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2024-01-07 12:15:36 +00:00
iProdigy bbf75516ed fix: show user message on watch streak notice (#5029) 2023-12-16 11:48:32 +00:00
iProdigy 13dc306506 perf: query fewer historical messages on reconnects (#5001)
Co-authored-by: Ruben Anders <ruben.anders@robotty.de>
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2023-12-09 19:46:30 +01:00
Mm2PL d9cdc88061 Remove unused parseMessage function (#4968) 2023-11-17 14:46:35 +01:00
iProdigy d40b0a6c1d fix: avoid reward redemption crash via buffer refactor (#4949)
Co-authored-by: nerix <nero.9@hotmail.de>
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2023-11-08 18:14:48 +01:00
iProdigy 5209e47df1 Improve reply popup after thread update (#4923)
Co-authored-by: nerix <nero.9@hotmail.de>
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2023-11-05 16:25:26 +00:00
pajlada f4726ed7a8 refactor: IrcMessageHandler (#4927) 2023-10-31 17:47:56 +01:00
pajlada fec45889a8 Replace boost::optional with std::optional (#4877) 2023-10-08 16:50:48 +00:00
nerix e7281b033e Show historic timeouts and bans in usercard (#4760)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2023-08-13 10:00:52 +00:00
Mm2PL 5727db2029 Fixed subscriptions and announcements not being blockable (#4748)
* Check blocks for usernotices

* changelog

* cstd = {.name="C++20"}

* Update CHANGELOG.md

Co-authored-by: Felanbird <41973452+Felanbird@users.noreply.github.com>

---------

Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
Co-authored-by: Felanbird <41973452+Felanbird@users.noreply.github.com>
2023-08-05 12:45:43 +00:00
nerix 703847c9ba Add subtitle to Hype Chats (#4715)
* 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>
2023-07-30 16:54:42 +00:00
nerix aff9342647 Add option to subscribe to and pin reply threads (#4680)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2023-06-17 15:41:52 +00:00
Mm2PL 82dff89f3b Add 'joined channel' system message. (#4616) 2023-05-19 10:30:30 +00:00
pajlada 2629e3baa7 Stop whispers from showing up in /mentions unless they match another highlight (#4389) 2023-02-18 12:02:12 +00:00
Mm2PL d38187f794 Remove sending part of the multipart emoji workaround (#4361) 2023-02-09 16:45:53 +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 a715b1ffff Clean up TwitchAccount emote stuff (#4243)
* Remove unused TwitchAccount FollowResult enum

* Remove unused TwitchEmoteSetResolverResponse struct

* Remove unused and unimplemented `getEmoteSetBatches` function definition

* Remove unused `loadEmoteSetData` and `staticEmoteSets` from
TwitchAccount

* Remove forward declaration of TwitchAccount in TwitchAccountManager

* Clean up IgnorePhrase includes

* add missing newline in pubsubmanager.cpp
2022-12-18 14:36:39 +00:00
nerix ff54b4c8d2 feat: Add Setting to Hide Reply Context (#4224) 2022-12-07 21:02:54 +00:00
pajlada c714f15ce9 Add debug output to channel point reward callbacks (#4142) 2022-11-11 23:49:44 +00:00
Felanbird b27d6334f3 Update IRC whisper error (#4086) 2022-10-28 23:01:21 +00:00
8thony 570746a8bd Hide inline whispers in streamer mode (#4076)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2022-10-22 10:04:51 +00:00
pajlada 3e020b4891 Fix rare reply mention crash (#4055)
* Fix potential out-of-range access of at when stripping reply mention if
the message contained nothing other than the username

* Update changelog entry
2022-10-12 11:59:52 +02:00
nerix 4e2da540d2 refactor: Remove Leading Mention in Replies and Highlight Participated Threads (#4047) 2022-10-08 16:25:32 +02:00
nerix 974a8f11b7 Migrate /w to Helix API (#4052) 2022-10-08 13:11:55 +02:00
Daniel Sage 46f43f3ce8 Automatically load recent messages on reconnect (#3878)
* Add working reconnect recent messages

* Rename method to messagesUpdated

* Use audo declarations

* Add docs to new LimitedQueue methods

* Add more documentation, try atomic loading flag

* Update CHANGELOG.md

* Remove unused include

* Rename 'reconnected' signal to 'connected'

* Reserve before filtering on arbitrary update

* Extract recent messages fetching to own class

* Use std::atomic_flag instead of std::atomic_bool

* Add PostToThread include

* Add chatterino.recentmessages logging

* Remove unneeded parameters, lambda move capture

* Remove TwitchChannel::buildRecentMessages

* Add documentation, use more clear method name

* Reword changelog entry

I think it sounds better like this :)

* Rework how filling in missing messages is handled

This should hopefully prevent issues with filtered channels with old messages
that no longer exist in the underlying channel

* Check existing messages when looking for reply

* Clean up string distribution in file

* Try to improve documentation

* Use std::function for RecentMessagesApi

* Only trigger filledInMessages if we inserted

* Remove old unused lines

* Use make_shared<MessageLayout> instead of new MessageLayout

* Alphabetize QLogging categories

* Reorder CHANGELOG.md
2022-08-06 18:18:34 +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
pajlada 7ccf60111d Overhaul highlight system (#3399)
Checks have been moved into a Controller allowing for easier tests.
2022-06-05 15:40:57 +00:00
pajlada 3119a9bab3 Store serverReceivedTime in messages (#3735)
Co-authored-by: James Upjohn <jammehcow@jammehcow.co.nz>
2022-05-15 06:08:28 +00:00
badoge 846ffbb422 Sorted usernames in /vips message to be case-insensitive (#3696) 2022-04-30 12:02:40 +00:00
Mm2PL 832e34186b Fix announcement rendering (#3639)
* Fix announcement rendering

* Changelog

* Add test message to Window.cpp
2022-03-31 22:24:19 +00:00
James Upjohn 67c10fafc7 chore: replace usages of obsolete twitch struct with backing field (#3614)
Co-authored-by: Felanbird <41973452+Felanbird@users.noreply.github.com>
2022-03-19 11:02:29 +00:00
Paweł df70ca59e3 Purged kraken (#3578)
* Purged kraken code

* Remove kraken documentation

* Update Helix documentation

* Ran prettier

* Removed kraken files from qmake build file

* Remove now unnecessary .finally() callback
2022-02-28 14:59:10 +00:00
Mm2PL 820099821a Implement workaround for combined emoji (#3469) 2022-01-11 00:18:02 +00:00