Commit graph

609 commits

Author SHA1 Message Date
Mm2PL
08f2773f30
Remove ban reasons because they are not a thing in IRC anymore (#2650) 2021-04-25 13:44:12 +00:00
Paweł
c3d61ad77b
Add ability to hide Twitch Prediction badges (#2668)
We now properly categorize the Twitch `predictions` badges since they take up their own slot in Twitch web chat
2021-04-25 14:37:19 +02:00
Paweł
ed7d1a88d0
Added custom FrankerFaceZ VIP badges (#2628)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2021-04-17 14:42:30 +02:00
James Upjohn
06ec230759
Fix bold/coloured usernames also formatting trailing punctuation (#2597) 2021-04-11 13:09:21 +00:00
Paweł
e741744254
Handle bits badge tier notification messages (#2611) 2021-04-11 12:17:21 +00:00
Yoitsu
a448af5f57
Implement Helix Search Categories end-point & update /setgame (#2609)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2021-04-10 23:34:27 +00:00
Yoitsu
00ccdbc781
clang-tidy: use std::move where applicable (#2605)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2021-04-10 12:34:40 +00:00
Mm2PL
f9246a9e3a
Add /setgame and /settitle (#2534)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2021-04-04 17:31:08 +02:00
Paweł
1f5b62e6e5
Implemented bit emotes (#2550)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2021-03-21 15:42:45 +01:00
Paweł
af4e3f5062
Refactored loading emotes and emotesets (#2539)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2021-03-21 15:19:49 +01:00
Paweł
a893cdaebe
Ensure twitch emote names are escaped (#2543) 2021-03-20 23:49:42 +01:00
Paweł
ce947a89d7
Fixed deprecated method QTime::elapsed (#2504)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2021-03-13 17:54:34 +01:00
James Upjohn
d94d9e74dd
Implement missing cheer emote tooltip (#2503) 2021-03-13 14:16:32 +01:00
Paweł
efde73e684
Fixed remaining timeout message (#2502) 2021-03-07 18:03:53 +01:00
Paweł
b2aa370015
Fixed emote pasting bug with multiple spaces (#2490) 2021-03-04 01:13:36 +01:00
pajlada
e015013773
Add lint github action (#2473) 2021-02-21 14:45:42 +01:00
Paweł
7d9f4c2b0c
Migrated block, unblock and get user block list methods to Helix (#2370)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2021-02-14 14:01:13 +01:00
M4tthewDE
c2782666a6
Added formatting for remaining timeout duration (#2398) 2021-01-31 13:55:44 +01:00
Paweł
278a00a700
Implement /marker command (#2360)
This command works the same as it does on Twitch web chat - it creates a streamer marker at the current timestamp with an optional description
2021-01-30 15:39:01 +01:00
Paweł
857705668e
Migrated getChannel to Helix (#2381)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2021-01-21 13:48:48 +01:00
Paweł
766700adc8
Removed empty liveStatusChanged connect signal (#2374) 2021-01-18 13:09:14 +01:00
Paweł
e48937e0aa
Fixed some spelling mistakes across files (#2367)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2021-01-17 20:19:10 +01:00
Paweł
cfcac99ae6
Added clip creation support 🎬 (#2271)
You can create clips with `/clip` command, `Alt+X` keybind or `Create a clip` option in split header's context menu. This requires a new authentication scope so re-authentication will be required to use it.

Co-authored-by: Leon Richardt <leon.richardt@gmail.com>
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2021-01-17 14:47:34 +01:00
Paweł
b587173e18
Added /chatters command (#2344) 2021-01-16 13:58:11 +01:00
pajlada
b3e01a40d7
Try to improve Twitch IRC network stability (#2347) 2021-01-09 18:05:02 +01:00
pajlada
0e66b17ff0
Add Network tests (#2304)
Also changes the way timeouts happen, since right now if a timeout was met (which it mostly wasn't), it would run the error callback twice causing potentially undefined behaviour
2020-12-26 12:42:39 +01:00
Paweł
2f5df3db4a
Migrated follow and unfollow methods to Helix API (#2306) 2020-12-22 09:55:58 +01:00
Rasmus Karlsson
a539b821e2 Fix another "use twitch-channel when it's null" error 2020-12-20 17:28:04 +01:00
fanway
38966e2b19
Add option for truecase username autocompletion (#1883)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2020-12-20 16:43:35 +01:00
Wolf Clément
b8104863a5
Fix crash when receiving whisper (#2298)
PR #2284 introduced this bug: whispers aren't linked to a twitch channel
but we're storing user colors in a twitch channel. So, dereferencing
a nullptr. Not good.
2020-12-20 09:38:34 +01:00
Wolf Clément
fea52faa66
Color mentions to match the mentioned users color (#2284)
You can disable this by unchecking "Color @usernames" under `Settings -> General -> Advanced (misc.)`

Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2020-12-19 14:42:20 +01:00
Paweł
155b40985b
Made emote tooltips use author's displayName consistently (#2267) 2020-12-12 16:15:49 +01:00
Mm2PL
eb8eecdfed
Improve the "You are banned" message (#2266)
Added reconnect link to the "You are banned" message
2020-12-12 14:19:51 +01:00
Paweł
cfa9e5903e
Migrated Kraken's getUser to Helix (#2260) 2020-12-06 19:41:52 +01:00
fanway
bf4c9cebb1
Use display/localized names in tab and split titles (#2189) 2020-12-06 14:07:33 +01:00
pajlada
4436109a2f
Add setting to limit number of historical messages to load on connect (#2252) 2020-12-06 13:04:49 +01:00
pajlada
1a4d4dca79
Fix freeze in Ignore & Replace if replacement followed by emote (#2231)
shiftIndicesAfter now also shifts the item end position along with the item start position
2020-11-28 15:03:36 +01:00
Paweł
05aab86845
Added links to twitchemotes.com to Twitch emotes' context menus (#2214) 2020-11-22 15:54:58 +01:00
Paweł
b79d5fa6f0
Fixed "raw mentions" not being clickable with special characters appended to them (#2212) 2020-11-22 14:02:55 +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
Paweł
fbd5df53d8
Ensure Twitch username in UserCard uses display name from API (#2160) 2020-11-08 11:39:10 +01:00
fanway
f36c0fee97
Fix runIgnoreReplaces fall into infinity loop (#2151)
* Fix `runIgnoreReplaces` fall into infinity loop

The regex pattern was not checked for emptiness, which led to an endless
loop

* Update CHANGELOG.md

Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2020-11-04 23:11:17 +01:00
Mm2PL
3ee08b9ffd
Add support FrankerFaceZ badges. (#2101)
On startup, we poll https://api.frankerfacez.com/v1/badges/ids and store the mappings of user IDs to badges for the remainder of the applications lifetime.
2020-10-25 10:36:00 +01:00
Leon Richardt
ec94869480
Allow highlights to be excluded from /mentions (#2036) 2020-10-24 14:33:15 +02:00
pajlada
f191de2514
Add CI workflow to check line endings of all source files (#2082)
In addition, all found errors (formatting & line ending) have been fixed in this PR.
2020-10-18 15:54:48 +02:00
dnsge
4199a01b96 Advanced channel filters (#1748)
Adds custom channel filters complete with their own mini-language. Filters can be created in settings, and applied by clicking the three dots to open the Split menu and selecting "Set filters".
2020-10-18 15:18:20 +02:00
Dave
84613187e1
Fixed missing timestamps on point redemption messages (#2043)
* Added timestamps to point redemption messages

* updated change log

Co-authored-by: fourtf <tf.four@gmail.com>
2020-10-09 17:26:45 +02:00
Paweł
776ce8bdbc
Added subage and followage to usercard (#2023)
* Added subage and followage information to usercard

We are using Leppunen's API here to determine user's subage to the current channel and since that API call also returns followage information I decided to utilize that and save ourselves an extra Helix API call.
I also added new files specifying new class and methods for Ivr API, which can be very easily expanded with new methods in the future if we ever have to do that.
When I was coding I also saw couple unnecessary nitpicks which I fixed :)

* Added changelog entry

* remove empty lambda

* Update UserInfoPopup.cpp

* xd

Co-authored-by: fourtf <tf.four@gmail.com>
2020-10-04 18:32:52 +02:00
Leon Richardt
aff59495df
Improve "Login expired!" message (#2029)
* feat: improve "Login expired!" message

Since this message occurs when the OAuth token becomes invalid, users
have to re-add their account in order to continue using the application.
The previous message did not make this clear enough, often leading to
confusion and questions by users.

This commit changes the system message to more clear about what the user
has to do, and adds a link that opens the "Accounts" page in the
preferences.

* Update changelog

* Update ChannelView.cpp

Co-authored-by: fourtf <tf.four@gmail.com>
2020-10-04 17:36:38 +02:00
Vilgot Fredenberg
de04ff82a7
Clean up compiler warnings (#2027)
Fix the following compiler warning
../src/common/NetworkResult.hpp: In constructor ‘chatterino::NetworkResult::NetworkResult(const QByteArray&, int)’:
../src/common/NetworkResult.hpp:28:16: warning: ‘chatterino::NetworkResult::data_’ will be initialized after [-Wreorder]
   28 |     QByteArray data_;
      |                ^~~~~
../src/common/NetworkResult.hpp:27:9: warning:   ‘int chatterino::NetworkResult::status_’ [-Wreorder]
   27 |     int status_;
      |         ^~~~~~~
../src/common/NetworkResult.cpp:9:1: warning:   when initialized here [-Wreorder]
    9 | NetworkResult::NetworkResult(const QByteArray &data, int status)

* Clang compiler warnings

Fixes every instance of the following error:

In file included from ../src/widgets/settingspages/CommandPage.cpp:12:
In file included from ../src/controllers/commands/CommandModel.hpp:5:
../src/common/SignalVectorModel.hpp:242:10: warning: 'moveRows' overrides a member function but is not marked 'override' [-Winconsistent-missing-override]
    bool moveRows(const QModelIndex &sourceParent, int sourceRow, int count,
         ^
../src/controllers/commands/CommandModel.hpp:12:29: note: in instantiation of template class 'chatterino::SignalVectorModel<chatterino::Command>' requested here
class CommandModel : public SignalVectorModel<Command>
2020-10-04 12:47:23 +02:00
Daniel
58a6983796
Fix timestamps on some messages loaded from the recent-messages service on startup (#2020) 2020-10-03 13:37:07 +02:00
pajlada
20e4d6b3d2
Update emote parsing (#1714)
Fixes #1707
2020-09-26 14:21:46 +02: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
fourtf
ed87d6e2fa fixed recent messages being parsed concurrently 2020-09-25 22:20:15 +02:00
fourtf
83b6fad8e6 fixed some concurrency issues 2020-08-22 11:45:18 +02:00
Jonas Schmitt
58725efbd5
Fix styling of channel point reward message text. (#1845)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2020-08-09 11:50:53 +02:00
Jonas Schmitt
11b8948290
Add support for non-highlight channel point rewards (#1809) 2020-08-08 15:37:22 +02:00
Daniel
ba06b10135
Open usercard on mention click (#1674) 2020-07-18 16:03:51 +02:00
pajlada
ffdf5a144c
Handle conversion of historical CLEARCHAT messages to NOTICE messages in Chatterino instead of relying on the Recent Messages API to handle it for us (#1804)
This has historically been done in the Recent Messages API, but this functionality is being moved to Chatterino instead

* Remove `clearchatToNotice=true` query parameter to the Recent Messages API
2020-07-18 14:12:11 +02:00
Paweł
b66c2478a0
Added higher tier information to sub badge tooltip (#1759) 2020-07-05 14:08:28 +02:00
pajlada
e4af009fda
[irc] Partially fix IRC colors (#1594)
Doesn't fix #1379 but it is a big step forward.

Needs some "real life" testing, but should be good.
2020-07-04 15:15:59 +02:00
Daniel
de2108b8c5
Fix highlighted whisper crash (#1756) (#1757) 2020-06-27 13:20:21 +02:00
Roger Chavez
1eeb09a78e
Display authors name on hover for supported emotes (FFZ only for now) (#1721)
Co-authored-by: Paweł <44851575+zneix@users.noreply.github.com>
2020-06-13 14:15:22 +02:00
alazymeme
f3f8b2d024
Fix popout player url (#1730)
* Update TwitchChannel.cpp

* Reformatting forsenY

* fixed other things

* xd

* Update TwitchChannel.cpp
2020-06-12 19:44:05 +02:00
thekalio
56d09ac198
Show visual feedback when BTTV and FFZ emotes are loaded (#1671)
Upon joining a channel or pressing F5, BTTV and FFZ emotes are
(re)loaded. This change adds visual feedback of the network requests and
their outcome, in the form of a system message in the associated
channel's chat window. 

Non-error messages are suppressed when joining a
channel (which automatically loads emotes).
2020-05-16 12:43:44 +02:00
pajlada
a08754b409
Remove more debug output (#1677) 2020-05-09 13:13:30 +02:00
pajlada
ef9c631c65
Only listen to new pubsub "moderator added" syntax (#1659) 2020-05-03 12:21:00 +02:00
fourtf
6052846bc3 added checks to mitigate floating point crashes 2020-04-19 21:05:40 +02:00
fourtf
097f4ccb3a refined highlight and added bits highlights 2020-04-15 23:15:45 +02:00
pajlada
6f926e7d77
Get better timeout messages for self (#1629)
* Don't require mod rights to listen to moderation actions topic

* Format timeout messages directed at you differently

e.g. "You were banned" or "You were timed out for 4h20m", also including
reason if specified.
2020-04-13 12:31:06 +02:00
Mm2PL
d1d17d4e4b
Add new zero-width emotes from BTTV (#1613)
New zero-width emotes are cvMask and cvHazmat

Fixes #1612
2020-03-27 21:23:32 +01:00
pajlada
15cf8bfcfa
Don't set game to game id, always wait for the game name to be resolved (#1609)
Fixes #1606
2020-03-22 11:22:36 +01:00
Leon Richardt
17aa3f71cd
Remove Debug Output In Many Different Places (#1607)
* Application.cpp: Remove whisper debug output

* TwitchAccount.cpp: Remove AutoMod debug output

* BaseWindow.cpp: Remove mouse tracking debug output

* RunGui.cpp: Remove debug output for cleared cache items

* Notebook.cpp: Remove debug output for selected widgets

* LimitedQueue.hpp: Remove commented debug output

* IrcMessageHandler.cpp: Remove debug output when receiving whispers

* UserInfoPopup.cpp: Remove user name debug output

* ChannelView.cpp: Remove debug output when clicking a message

* Image.cpp: Remove commented debug output

* AttachedWindow.cpp: Remove commented debug output

* SplitOverlay.cpp: Remove commented debug output

* TwitchMessageBuilder.cpp: Remove debug output for highlights

* TwitchMessageBuilder.cpp: Remove debug output for blocked messages

* PubsubClient.cpp: Remove debug output on PubSub::listen

* PubsubClient.cpp: Remove debug output on PubSub::tryListen

* IncognitoBrowser.cpp: Remove debug output of browser command

* NativeMessaging.cpp: Remove debug output of message
2020-03-19 18:06:21 +01:00
pajlada
9a8b85e338
Twitch API: v5 to Helix migration (#1560)
There's a document in src/providers/twitch/api which describes how we interact with the Twitch API.
Keeping this up to date might be a healthy way for us to ensure we keep using the right APIs for the right job.
2020-03-14 12:13:57 +01:00
pajlada
20612a1381
Fix repeated signal connects on reconnect in irc server (#1576) 2020-03-01 06:05:08 -05:00
fourtf
ba5d842767 removed MutedChannelController 2020-02-28 19:04:25 +01:00
fourtf
e537277fa8 did some more things and stuff 2020-02-23 23:07:28 +01:00
fourtf
5ad427bd61 moved some Settings from Application to Settings 2020-02-23 22:15:13 +01:00
fourtf
f8a9850151 absorbed HighlightController into Application 2020-02-23 21:18:40 +01:00
fourtf
d0a81f3fe7 refactored TaggedUsers and Ping 2020-02-23 20:34:00 +01:00
fourtf
89389608e9 removed compat class for SignalVector 2020-02-23 19:52:10 +01:00
fourtf
2ebe07bace removed compat functions in SignalVector 2020-02-23 19:44:13 +01:00
fourtf
843e2ad994 refactored HighlightController 2020-02-23 19:31:43 +01:00
fourtf
e1838154ff refactored SignalVector 2020-02-23 17:11:15 +01:00
pajlada
2b5c6ffe33
Remove chatroom code (#1561)
People who had chatrooms still open should notice no difference at all, since it will just try to join a channel with the chatroom name.

Documentation for the closing/deprecation of twitch chat rooms:
    https://discuss.dev.twitch.tv/t/rooms-are-closing-how-it-affects-the-api-and-irc/22996
    https://dev.twitch.tv/docs/change-log (see 2020-01-10 entry)
2020-02-22 06:05:36 -05:00
Rasmus Karlsson
b5764c6a1f Remove stupid assert in PubSubClient
Fixes #1550
2020-02-15 14:49:22 +01:00
Leon Richardt
b8953157cc
Better Highlights: Rework highlight parsing order (#1524)
This commit is in response to #1523.

Whispers are now only added to the `/mentions` tab if they also match a
user name or phrase highlight. On a related note, the `highlightVisual_`
member has been removed as it is no longer necessary.
2020-02-02 08:33:25 -05:00
hemirt
1fd64be7f5
Makes it possible to hide one man spam (#1496) 2020-02-02 08:31:37 -05:00
apa420
4b1202437b Sort emotes alphabetically in emote picker (#1499) 2020-01-25 13:05:59 +01:00
Mm2PL
410de82261 Make a command that shows the Chatterino user card (/usercard) (#1375)
* Make UserInfoPopup be able to show that fetching the information failed.
2020-01-25 12:59:31 +01:00
Leon Richardt
5957551d06 Better Highlights (#1320)
* Support for user-defined sounds and colors

* Make color & sound columns selectable

* Add custom row for subscription highlights

* Add subscriptions to custom highlights and centrally manage highlight colors

* Dynamically update message highlight colors
2020-01-25 11:03:10 +01:00
Rasmus Karlsson
81b79e14b5 Fix a crash in TwitchChannel::refreshCheerEmotes
If you closed down the split right after the refreshCheerEmotes call was
made, then refreshCheerEmotes used this after it was free'd
2020-01-12 10:06:01 +01:00
pajlada
3c8992cac1
Remove FMT dependency (#1472)
All occurrences of log() have been replaced with qDebug()

bonus meme: remove a bunch of std::string usages in the pubsub client

Fixes #1467
2020-01-03 20:51:37 +01:00
apa420
be898e88dd Add setting to stack bits (#1452) 2019-12-21 10:36:46 +01:00
pajlada
d5001b97f4
allow customizing twitch server parameters through environment variables (#1449) 2019-12-21 10:11:23 +01:00
apa420
0d227ab2f5 Various bits fixes (#1443)
We now make sure we don't render any fake bits
Bits now show their real value properly
2019-12-19 21:36:02 +01:00
Rasmus Karlsson
11442bba20 move titleRefreshPeriod out of the TwitchChannel class
this fixes a "use of uninitialized variable" error
2019-12-16 08:55:38 +01:00
Rasmus Karlsson
bb9eb582ec replace the QStringList with a QSet<QString> as suggested by RAnders00
2d3fb8950e (r36317456)
2019-12-14 12:13:19 +01:00
Rasmus Karlsson
2d3fb8950e hardcoded list of BTTV's christmas emotes 2019-12-05 20:10:56 -08:00
Rasmus Karlsson
bcc53c9aa7 Clean up Twitch badge appending code 2019-12-01 13:32:41 +01:00
apa420
c00f97ac53 Show exact months subscribed in Subscriber and Founder badge tooltip (#1424) 2019-12-01 02:20:56 -08:00
W Gomes
ce90253aac Removed unused variables (#1394)
* Removed unused variables

Fixes compiler warning C4189: Local variable is initialized but not
referenced

* fixed typo
2019-10-29 21:15:06 +01:00
Felanbird
6f5c4cacf8 moved hardcoded global-badges to be more inline with browser chat (#1392) 2019-10-27 13:18:07 -07:00
Felanbird
0a8d50223d switch badge tooltips from description to title (#1384) 2019-10-27 07:46:08 -07:00
apa420
a12bd3df18 Now show joined setting doesn't also show parted and parted shows parted (#1376) 2019-10-20 20:11:12 +02:00
CommName
dc1e4d2544 Show the title when offline (#1347)
* Channel text for offline chats

* Title refresh timer

* Fixed typo

* Refresh title when room id is loaded

* removed timer

* Typo

* Loaded on demand when hovered over

* removed the extra api request

* Moved refreshTitle function call

* Added thottling for 10s

* Fixed formating style

* reformat

* make status fetcher safer

* Requested changes from fourtf
2019-10-12 15:09:12 +02:00
fourtf
6f710823ed renamed getInstance() -> instance() for singletons 2019-10-07 22:42:34 +02:00
fourtf
a894753596 renamed isVIP -> isVip 2019-10-07 20:31:34 +02:00
fourtf
c6e1a1de2e Revert "changed default port from 443 to 6697"
It doens't appear to be the issue that builds aren't working

This reverts commit 56b7a3616f.
2019-10-05 19:42:46 +02:00
fourtf
56b7a3616f changed default port from 443 to 6697 2019-10-05 19:29:19 +02:00
Rasmus Karlsson
3a8f91d6f6 Change default port from 6697 to 443 2019-10-04 13:06:15 +02:00
fourtf
9874bd779a formatted all files with clang 9 2019-09-26 00:51:05 +02:00
fourtf
fc049d8f45 disabled irc and fixed notice messages in write conn not showing 2019-09-22 16:16:08 +02:00
fourtf
456065f508 moved resources out of Application 2019-09-22 10:54:32 +02:00
Rasmus Karlsson
5871414e6b Possibly fixed PubSub over 50 listens
Keep an eye out on #1189
2019-09-21 12:46:10 +02:00
Rasmus Karlsson
137d7910c0 move more handlers from write to read 2019-09-21 11:57:09 +02:00
Rasmus Karlsson
d94be74007 handle clearchat in read connection 2019-09-21 11:54:30 +02:00
Rasmus Karlsson
88da9501f7 handle ROOMSTATE in read connection too
this fixes the "recent messages not loading" issue
2019-09-21 11:45:55 +02:00
Rasmus Karlsson
8312d4b112 Fix USERSTATE not being handled unless you write in a channel.
This commit might re-enable some duplicate messages like host requests
and what-not.
2019-09-21 11:38:08 +02:00
fourtf
758a6bb41c NetworkRequest onError now uses NetworkResult 2019-09-19 19:03:50 +02:00
fourtf
88d8bf7cec renamed members in Helpers.cpp 2019-09-18 16:32:07 +02:00
fourtf
3ab7362304 Merge branch 'master' into irc-support 2019-09-18 13:03:16 +02:00
fourtf
27d6cf2bfd reconnect for irc + show errors + nickRequired 2019-09-18 08:05:51 +02:00
fourtf
96dac0fd3d moved chatters to ChannelChatters 2019-09-17 12:11:11 +02:00
fourtf
13c9aabf29 show all irc messages for debugging 2019-09-16 18:01:32 +02:00
fourtf
84b1efcd24 fixes #1304 emote.name eating the .name 2019-09-15 19:05:04 +02:00
fourtf
a390649d0f added sasl auth 2019-09-15 13:15:29 +02:00
fourtf
22ca20ad2a renamed TwitchServer -> TwitchIrcServer 2019-09-15 13:02:02 +02:00
fourtf
13d1fab303 credentials are now loaded when needed 2019-09-14 20:45:01 +02:00
Leon Richardt
720e5aa25f Improvements to Message Search (#1237)
* Ran clang-format

* Implement user-specific search in message history

This functionality was originally requested in #1236.

This commit changes the SearchPopup::performSearch method so that only
messages from specific users can be shown.

In order to filter for a specific user, enter their username with a
leading '@' in the search popup. You can also add an additional search
phrase which will also be considered in the search.

* Naive implementation for "from:" tags

Rebase later?

* Cleverer (?) version using Predicates

Commit adds two POC predicates: one for the author of messages, and one
for substring search in messages.

Problems/TODOs:
* Best way to register new predicates?
* Clean up tags (e.g. "from:") or not?
* Test combinations of different predicates

* Add a predicate to check for links in messages

* Remove a dumb TODO

* Rewrite SearchPopup::performSearch to be cleaner

* Ran clang-format on all files

* Remove TODO I missed earlier

* Forgot to run clang-format

peepoSadDank

* Re-use {}-initialization

Was accidentally removed when fixing earlier merge conflict.

* Does this fix line endings?

No diffs are shown locally, hopefully Git doesn't lie to me.

* Rename "predicates" directory to "search"

Resolving one conversation in the review of #1237.

* Use LinkParser in LinkPredicate

Resolving a conversation in the review of #1237.

* Predicates: Use unique_ptr instead of shared_ptr

Resolves a conversation in the review of #1237.

* Refactor of SearchPopup and AuthorPredicate

Resolving some points from the review in #1237.

* Moved parsing of comma-seperated values into AuthorPredicate
  constructor.
* Rewrite SearchPopup::parsePredicates as suggested.
* Deleted now redundant methods in SearchPopup.

* MessagePredicate::appliesTo now takes a Message&

... instead of a MessagePtr.

This resolves a conversation in the review of #1237.

* Run clang-format on two files I missed

* AuthorPredicate: Check for displayName & loginName

Resolving conversation on #1237.
2019-09-09 15:21:49 +02:00
Leon Richardt
b6f632701f Fix merge conflicts 2019-09-08 22:58:17 +02:00
Leon Richardt
b06eb9df83 Normalize line endings in already existing files 2019-09-08 22:27:57 +02:00
fourtf
e1a9a437f1 fixed pingsound not playing sometimes 2019-09-08 21:57:14 +02:00
fourtf
9f1eb654fd
Merge branch 'master' into apa-bits 2019-09-08 18:02:58 +02:00
apa420
5c602fea94 Resolved review 2019-09-08 16:01:38 +00:00
Rasmus Karlsson
862164bc2b make ffz custom mod badge atomic 2019-09-08 14:08:18 +02:00
Rasmus Karlsson
dbce128cc3 Remove "custom on success" logic from Image.
Create a new message element and message layout element type for mod badges.
2019-09-08 14:08:18 +02:00
Rasmus Karlsson
256a65a12e Load mod badge information from the FFZ API instead of assuming the URL.
This lets us load all sizes of the emote if they are available.

Channel with all versions of the mod badge: https://api.frankerfacez.com/v1/room/pajlada
Channel with only one version of the mod badge: https://api.frankerfacez.com/v1/room/apa420
Channel with no mod badge: https://api.frankerfacez.com/v1/room/forsen
2019-09-08 14:08:18 +02:00
apa420
c08eaa4640 Higher cheer tiers now show and added tests 2019-09-08 13:40:11 +02:00
apa420
48fcc1a1a1 Fixed cheers not showing up in chat Fixes #1031 2019-09-08 12:45:25 +02:00
Leon Richardt
a62b7ac094 Add setting for case-sensitivity in highlights 2019-09-07 19:01:52 +02:00
Rasmus Karlsson
f94b44188d Use BTTV V3 API
Fixes #1275
2019-09-03 15:09:49 +02:00
Rasmus Karlsson
a878ca8062 Remove unused lambda capture to fix warnings 2019-08-31 17:45:13 +02:00
Rasmus Karlsson
7ff567d584 rename "messageReceived" to "readConnectionMessageReceived" to match the "readConnected/writeConnected" and "writeConnectionMessageReceived" functions 2019-08-31 17:44:41 +02:00
Rasmus Karlsson
829c63be51 Change in which "message received" handler IRC commands are handled after the change in CAP REQs.
Fixes #1252
2019-08-31 17:41:49 +02:00
fourtf
671c9ed654 fixed commands like /mods not working 2019-08-27 20:45:42 +02:00
apa420
a624d14a4f Fetch FFZ channel emotes with channel id instead of name 2019-08-27 20:08:17 +02:00
apa420
677017a8bd Now shows connect and reconnect messages 2019-08-27 19:54:37 +02:00
Mm2PL
1a25c5afe8 Add a switch for follower only mode (#1241)
* Add a switch follower only mode

* Format the code
2019-08-25 19:08:04 +02:00