Commit graph

779 commits

Author SHA1 Message Date
pajlada
4f1976b1be
Migrate /color command to Helix API (#3988) 2022-09-16 21:15:28 +00:00
nerix
be72d73c3d
feat: add Go to message action in various places (#3953)
* feat: add `Go to message` action in search popup

* chore: add changelog entry

* fix: only scroll if the scrollbar is shown

* fix: go to message when view isn't focused

* feat: animate highlighted message

* fix: missing includes

* fix: order of initialization

* fix: add `ChannelView::mayContainMessage` to filter messages

* feat: add `Go to message` action in `/mentions`

* fix: ignore any mentions channel when searching for split

* feat: add `Go to message` action in reply-threads

* fix: remove redundant `source` parameter

* feat: add `Go to message` action in user-cards

* feat: add link to deleted message

* fix: set current time to 0 when starting animation

* chore: update changelog

* fix: add default case (unreachable)

* chore: removed unused variable

* fix: search in mentions

* fix: always attempt to focus split

* fix: rename `Link::MessageId` to `Link::JumpToMessage`

* fix: rename `selectAndScrollToMessage` to `scrollToMessage`

* fix: rename internal `scrollToMessage` to `scrollToMessageLayout`

* fix: deleted message link in search popup

* chore: reword explanation

* fix: use for-loop instead of `std::find_if`

* refactor: define highlight colors in `BaseTheme`

* core: replace `iff` with `if`

* fix: only return if the message found

* Reword/phrase/dot changelog entries

Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2022-09-11 16:37:13 +02:00
Daniel Sage
8ec032fc84
Periodically free memory from unused images (#3915)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2022-09-04 11:23:14 +00:00
pajlada
46efa5df3d
Treat reorder warnings as errors (#3944) 2022-09-03 18:12:44 +02:00
pajlada
a9fc9f949f
Remove unused mutex from Emotes (#3943)
The mutex was initially used to limit access to the twitchEmotesCache_ member
but it's no longer necessary since it's been made a UniqueAccess type
2022-09-03 11:01:56 +00: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
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
Mm2PL
bbadbc4b33
Add logging to experimental IRC (#2996)
Co-authored-by: xHeaveny <69117321+xHeaveny@users.noreply.github.com>
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2022-07-02 09:42:28 +00:00
Jaxkey
f49e8b4bc8
Show all global FFZ badges of a user (#3818)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2022-06-27 18:36:58 +00:00
Kasia
f3f340335f
Make generic version of batcher function (#3822) 2022-06-17 20:52:20 +02:00
matt
d29243a2a5
Removed total views from the usercard (#3792) 2022-06-05 20:51:18 +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
Kasia
74ec310228
Fixed channels not being set as offline (#3767) 2022-05-28 18:10:10 +00:00
kornes
efcfb19187
Add safe checks around use of QImageReader (#3736)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2022-05-28 13:48:31 +02:00
Kasia
7d0023cf73
Corrected the way we parse comma-separated "list tags" in PRIVMSGs (#3771)
tl;dr: we now split by slash only its first occurrence instead of every occurrence.
2022-05-28 09:55:48 +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
badoge
bd3d2ed82a
Added /requests command. Usage: /requests [channel]. (#3746)
Opens the channel points requests queue for the provided channel or the current channel if no input is provided.

Co-authored-by: Mm2PL <mm2pl+gh@kotmisia.pl>
2022-05-22 11:53:45 +00:00
qooq69
1b3aa343a3
Fix links with no thumbnail having previous link's thumbnail (#3720)
Co-authored-by: zneix <zneix@zneix.eu>
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2022-05-22 11:16:16 +00:00
pajlada
6bb96f128b
Make Helix an interface (#3756) 2022-05-22 10:11:33 +00:00
LosFarmosCTL
0605dabf31
fix: compilation on macOS without precompiled headers (#3741)
Co-authored-by: zneix <zneix@zneix.eu>
2022-05-17 10:16:33 +00:00
Kasia
137269e91b
Fix QString::SkipEmptyParts for real this time (#3747)
Follow-up to #3726
2022-05-17 09:33:27 +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
Kasia
0c6358a2af
Add missing QDebug header (#3725)
* Fix apparent missing header

* I had format on save turned off
2022-05-13 10:45:42 +00:00
Sidd
94f067ce62
fix: unlisten to automod on user change (#3718)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2022-05-08 10:56:40 +00:00
Sidd
fd44f30c7d
fix: disable duplicate automod caught message handler (#3717) 2022-05-07 22:05:13 +02: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
badoge
846ffbb422
Sorted usernames in /vips message to be case-insensitive (#3696) 2022-04-30 12:02:40 +00:00
Sidd
c399d4dbe9
refactor(TwitchChannel): remove getGameById call (#3662)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2022-04-09 12:27:04 +00:00
Sidd
870aa74427
Use login name for NotificationController lookup (#3648)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2022-04-06 21:10:22 +00:00
James Upjohn
f76306c6fa
fix: re-add missing Twitch emote reload message (#3645)
Co-authored-by: Felanbird <41973452+Felanbird@users.noreply.github.com>
2022-04-05 10:01:18 +02:00
Mm2PL
28fa6b8f5c
Add tab-completion for the /announce Twitch command (#3642)
https://blog.twitch.tv/en/2022/03/31/raise-your-swords-for-mod-appreciation-day/
2022-04-01 22:14:42 +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
96e2d1f971
Fix empty game update not updating header (#3609)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2022-03-19 18:58: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
nerix
4c275cb183
Update Emoji Data to v14.0 (#3612) 2022-03-19 11:30:01 +01:00
LosFarmosCTL
414313726e
Update PubSub client to use TLS v1.2 (#3599) 2022-03-12 11:50:41 +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
Paweł
1682f0fb36
Refactor Tab completion for Twitch commands (#3144)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2021-12-26 14:21:52 +01:00
pajlada
aa1c16d90d
Make mods, vips, joined/parted messages searchable (#3426) 2021-12-25 17:35:55 +00:00
pajlada
1662ced2c7
Fix IRC mentions not showing up in the /mentions split (#3400) 2021-12-25 15:22:52 +00:00
pajlada
51ece94f58
Update Settings and Signals version (#3398)
Co-authored-by: zneix <zneix@zneix.eu>
2021-12-19 14:57:56 +00:00
pajlada
2c695a9ac5
Fix IRC colors not being applied correctly to NOTICE messages (#3383)
* Normalize NOTICE message parsing for IRC

Fixes #1782

* Add changelog entry

Co-authored-by: Felanbird <41973452+Felanbird@users.noreply.github.com>
2021-12-04 16:05:57 +00:00
pajlada
568f65213d
Fix crash on missing parameters with IRC /kick command (#3382) 2021-12-04 15:37:53 +00:00
mmb L
179527611e Rename local variable and remove unused local variable in IrcMessageBuild.cpp 2021-11-28 13:02:07 +01:00
mmb L
ec966a1791 Remove local variables that are not referenced 2021-11-28 13:02:07 +01:00
pajlada
bc847f1445
Fix IRC server messages not triggering sounds properly (#3368) 2021-11-27 14:35:13 +00:00
Mm2PL
b94e21a600
Make join and part messages have user links (#3358)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2021-11-20 13:53:05 +00:00
Mm2PL
b1e891b122
Fixed Chatterino attempting to send empty messages in IRC (#3355)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2021-11-20 12:21:42 +00:00
Mm2PL
56f2207d22
Show picked outcome in prediction badges. (#3357)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2021-11-20 11:52:27 +00:00
Mm2PL
6ac15adf45
Add support for Emoji in IRC. (#3354) 2021-11-20 12:18:40 +01:00
Mm2PL
a68980878e
Make /delete errors a bit more verbose (#3350)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2021-11-13 12:34:04 +00:00
Mm2PL
6b3a420e42
Fixed the first link being broken in /mods and /vips (#3349)
Co-authored-by: Felanbird <41973452+Felanbird@users.noreply.github.com>
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2021-11-13 11:11:18 +00:00
pajlada
bc0b7e4d99
Fix IRC actions not being colored properly (#3341) 2021-11-07 19:58:22 +00:00
pajlada
3c4331b8cb
Fix link parsing in IRC (#3334) 2021-11-07 13:55:43 +00:00
pajlada
4b903d7fcf
Fix the reconnection backoff accidentally resetting when thrown out of certain IRC servers (#3328) 2021-10-31 15:44:38 +01:00
Ryan
b4be7a4b1f
Fix underlying text from disabled emotes not being colorized after using /me (#3333) 2021-10-31 11:37:06 +01:00
Infinitay
b4b745024c
Clean up chat messages of special line characters prior to sending (#3312)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2021-10-30 12:49:41 +00:00
Mm2PL
5f7caebce0
Parse usernames out of /mods and /vips messages (#3187)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2021-10-24 13:28:43 +00:00
Felanbird
be3609a927
Capitalize mentions of Twitch, Chatterino, and IRC in comments and text/settings (#3274) 2021-10-17 15:06:58 +02:00
gempir
0ba7c0f3c5
Add highlights for first messages (#3267)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2021-10-02 12:17:24 +00:00
Paweł
5cd20bbb5a
Raise ratelimit cooldown for JOIN messages (#3219)
Was 10.5s (0.5s over the actual cooldown), changed to 12.5s (2.5s over the actual cooldown) to accomodate for any server-side lag spikes.
2021-09-04 12:45:40 +02:00
Mm2PL
cd2923c52a
Fix missing information in locally-generated IRC messages (#3203)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2021-08-29 12:05:45 +00:00
Mm2PL
25cdeb8d9f
Make Chatterino colorize usernames on IRC (#3206) 2021-08-29 13:35:19 +02:00
Paweł
c156094d70
Fixed away command in IRC (#3190) 2021-08-23 12:03:38 +00:00
apa420
e499486418
Added regex option to Nicknames (#3146)
Co-authored-by: Mm2PL <miau@mail.kotmisia.pl>
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2021-08-22 13:30:17 +02:00
pajlada
fe8aa33980
Update Usage messages to conform to new Usage message contributor guidelines (#3180) 2021-08-21 12:41:06 +00:00
James Upjohn
4b251c64b6
Allow resub messages to show in /mentions tab (#3148)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2021-08-15 10:39:58 +00:00
Paweł
9a1e405563
Fix /me not going through upon sending an identical message (#3166) 2021-08-15 11:52:32 +02:00
Marko
113a7795f4
Hide similar messages by any user (#2716)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2021-08-14 14:28:08 +02:00
fourtf
d5ecba3d30
Rewrite logic for when to show moderation buttons next to messages (#2800)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2021-08-14 11:06:58 +00:00
James Upjohn
6151cd5b05
Show system message when reloading subscriber emotes (#3135)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2021-08-08 10:59:28 +00:00
pajlada
54f6e4f9e9
Remove twitchemotes.com-related functionality (#3136)
Co-authored-by: Paweł <zneix@zneix.eu>
2021-08-07 11:13:05 +00:00
Paweł
cd7758a28e
Ensure we don't attempt to index an empty array (#3122) 2021-08-07 09:01:22 +00:00
Paweł
de4f6a9d51
Rate limit outgoing JOIN messages (#3115)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
Co-authored-by: Tal Neoran <talneoran@gmail.com>
2021-08-04 21:18:34 +00:00
Paweł
0c5abb8149
Deprecated /(un)follow commands and respective usercard action (#3078)
/(un)follow commands are marked as deprecated and link to the issue this PR is closing.
follow button on the usercard is removed completely

Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
Co-authored-by: Felanbird <41973452+Felanbird@users.noreply.github.com>
2021-08-04 20:41:27 +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
pajlada
784fdd28b2
Check for ignored phrases/users in channel point redemptions (#3102) 2021-08-01 13:44:04 +00:00
Mm2PL
77f683577f
Use double spaces instead of Chatterino character when possible (#3081) 2021-08-01 12:38:07 +00:00
apa420
3cb1e5158a
Added the ability to add nicknames for users (#2981)
Co-authored-by: Mm2PL <mm2pl+gh@kotmisia.pl>
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2021-07-31 16:15:43 +02:00
pajlada
770b9f263b
Fix PubSub client creation/pending topic resolving (#3037)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
Co-authored-by: Felanbird <41973452+Felanbird@users.noreply.github.com>
Co-authored-by: zneix <zneix@zneix.eu>
2021-07-25 15:13:04 +00:00
Paweł
ae9f92ded9
Make use of QUrlQuery in NetworkRequests where it was hardcoded into url (#3039)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2021-07-18 13:21:09 +00:00
Paweł
e5fe0999ee
Replace std::string with QString in rapidjson and PubSub Client (#3018) 2021-07-18 12:37:53 +00:00
Paweł
1f19d31a67
Added informative messages on issues related to recent-messages (#3029) 2021-07-18 14:15:38 +02:00
pajlada
8ceb100177
Add tests for getEmoteSetBatches (#3036) 2021-07-18 10:14:01 +00:00
Paweł
89b86b94e7
Cleanup debug logging (#3015) 2021-07-17 16:45:02 +00:00
Paweł
a84e62c6bb
Use server time in received IRC messages where available (#3026) 2021-07-17 18:22:25 +02: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ł
a509c7514c
Fixed degraded dirty emote code escaping (#3010) 2021-07-17 10:35:43 +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
Paweł
975b39fe10
Made username and color in AutoMod mod messages use correct values (#2967)
We use values given in pubsub messages and handle their edge-cases properly.
2021-07-11 11:33:35 +00:00
Paweł
94a99ac4f0
Fix custom built messages not showing up as search results (#2962) 2021-07-11 10:19:35 +00:00
nerix
b37c0cb177
Update Emoji Data to v13.1 (#2958)
Co-authored-by: zneix <zneix@zneix.eu>
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2021-07-11 09:51:04 +00:00
Paweł
d5add46730
Respect follower emotes context, making them only available in their owner channels (#2951)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2021-07-11 09:12:49 +00:00
Paweł
b6ee2280d2
Moved getRandomColor method to util/Helpers.cpp (#2974)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2021-07-08 17:09:31 +00:00
Mm2PL
24aee42171
Fix usercards showing all messages in IRC channels (#2979) 2021-07-08 17:26:34 +02:00
Tal Neoran
2af9284de5
Make usernames clickable in reward redemption messages (#2953)
Co-authored-by: Paweł <zneix@zneix.eu>
2021-07-04 16:21:18 +00:00