Commit graph

290 commits

Author SHA1 Message Date
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
Daniel
d206ed4bcc
Fixes the dropdown order in channel filter dialog (#2168) 2020-11-21 13:47:09 +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
Paweł
86feef6be8
Fixed settings dialog size (#2145) 2020-11-01 14:11:45 +01:00
pajlada
1ee1e8837f
Use Qt's dialog where applicable (#1843) 2020-10-31 16:42:48 +01:00
Paweł
523874dc21
Added tab navigation shortcut to SelectChannelDialog (#2142)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2020-10-31 16:17:09 +01:00
Paweł
3c1abbd297
Added missing window titles to all popups (#2120) 2020-10-31 15:12:42 +01:00
Leon Richardt
0049a5ebb2
Fix tabbing in Quick Switcher (#2065)
It was broken in f7237dc due to the migration to the GenericListView approach
2020-10-24 10:50:14 +02:00
fourtf
8bc3025a77 Merge branch 'master' of https://github.com/Chatterino/chatterino2 into master 2020-10-22 20:00:14 +02:00
fourtf
aa4326f051 renamed filter dropdown items 2020-10-21 17:11:44 +02:00
Paweł
406e00df43
Fixed some stuff regarding usercard (#2100)
- split everything into 2 separate labels, so we won't have any issues with dank dpi (like pajlada had) and no resizing to minimum size is required (which was apparently broken on Windows xd)
- decided to remove line, which is rather not visible / very small and can't be seen anyway
- added nice unicode characters for follow and sub label
- removed unnecessary QLabel include (which I believe was also introduced by me by an accident)
2020-10-21 17:02:24 +02:00
pajlada
72f44ccdc3
Fix "variables" documentation help in the Filter creation dialog (#2083) 2020-10-18 16:14:59 +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
Rasmus Karlsson
dfe1af248c define accent color in theme 2020-10-11 14:36:28 +02:00
Paweł
2232c6d925
Changed Streamer Mode settings (#2001)
There's now a new (yet another, sigh) section in Settings -> General, which lets you set streamer mode to 'enable/disable/detect obs' and there are also separate settings for each of the things that streamer mode covers. I just have to add ping sounds and PR is ready to be merged :)

* Show "Streamer Mode" image as link thumbnails if applicable

* Moved hideViewerCountAndDuration to streamerMode settings

Set it to false by default (just how it used to be under /misc settings, also reworked live tooltip to be a bit prettier and say "<Streamer Mode>" in gray instead of "Live with <hidden> for <hidden> viewers"
2020-10-11 13:52:14 +02:00
Dave
56828f2d81
Made the current channels emotes appear at the top of the emote picker (#2057) 2020-10-11 12:31:00 +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
gempir
80e84b1d8a
Commands are now saved upon pressing Ok in the settings window (#2016)
Commands are now saved upon pressing the Ok Button in the settings window, similar to the rest of the settings.
2020-10-04 13:02:29 +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
b67e20d962
Only show VIP buttons if broadcaster (#1999) 2020-09-27 10:34:20 +02:00
apa420
3450b1cc9d
Added image to streamermode user popup (#1995)
* Added image to streamermode user popup

* Update CHANGELOG.md

* swapparoo

Co-authored-by: fourtf <tf.four@gmail.com>
2020-09-27 00:22:06 +02:00
apa420
b4ef4fe54d
Added vip and unvip buttons (#1996)
Co-authored-by: fourtf <tf.four@gmail.com>
2020-09-27 00:20:15 +02:00
fourtf
53b18d03c6 fixed a memory leak 2020-09-26 18:07:13 +02:00
Daniel
f7f858a4fc
Auto-refresh UserInfoPopup recent messages (#1982)
* Auto-refresh UserInfoPopup recent messages

* Update CHANGELOG.md

* Clean up code

* changed something about the connection

Co-authored-by: fourtf <tf.four@gmail.com>
2020-09-26 16:59:40 +02:00
Paweł
d314566ab6
Argument parsing rework (#1940)
* Experimental argument handling

* Restored browser extension launch functionality

Also moved check from BrowerExtension.cpp to Args.cpp as it is more relevant there and doesn't require passing arguments to a function in another file

* Fixed formatting

* Simplified Args.cpp code, added changelog entry

* Hid crash-recovery from help

* Dont save settings if launched with --channels

* Changed parsing method to t:channel

* Code cleanup

* Changed plaform delimeter to :, platform defaults to Twitch

Co-authored-by: fourtf <tf.four@gmail.com>
2020-09-26 16:03:51 +02:00
fourtf
db3402a18e Merge branch 'Ch2Usercard' 2020-09-26 14:54:44 +02:00
fourtf
d5855ba7d6 removed latest messages 2020-09-26 14:02:18 +02:00
Rasmus Karlsson
470fe5a58a Add label that shows up if the log in link didn't open properly
This basically takes the official advice from https://github.com/Chatterino/chatterino2/issues/1779#issuecomment-699235396 and tells the user what they can do as a workaround.

Relevant issue: #1779
2020-09-26 10:24:29 +02:00
pajlada
c7a2f4cc92
Don't make follow requests based on the check follow response (#1906)
This is done by deliberately setting and reading the enabled state of
the widget whenever the stateChanged event happens.

If the stateChanged event happens while the widget is not enabled, we
know the event must have been triggered by our "check user follow state"
event, and then we don't act upon that event
2020-09-06 12:46:35 +02:00
fourtf
63c167f1db 2.2.1 2020-08-24 20:24:00 +02:00
fourtf
95f975996d added tip for search shortcut to settings 2020-08-22 12:17:20 +02:00
fourtf
f7237dccdd added colon emote popup for ffz and bttv 2020-08-15 18:59:17 +02:00
Leon Richardt
6781482485
Quick Switch: Add support for light themes (#1858) 2020-08-15 10:17:15 +02:00
fourtf
46361ea859 some more stuff 2020-08-13 20:20:24 +02:00
fourtf
a566a74ef0 removed some more pointers 2020-08-13 20:10:52 +02:00
fourtf
c83fc043e0 replaced raw pointers with unique_ptr 2020-08-13 20:05:54 +02:00
Leon Richardt
a9080ceb3c
Discord-like Quick Switcher (#1588)
* Proof of Concept for Quick Switcher

* Fix crash when suggestions are empty

* QuickSwitcher: Use tab name instead of a single channel

* Rebase later

* Add missing include for <functional>

* Move QuickSwitcher related classes into own subfolder

* Refactor switcher list items

Now, items are responsible for taking the right action when selected in
the switcher list. This should allow for more focused code and
responsibilities.

* Add note about memory management

* Add option to open channel in a new tab

* Add support for using the mouse

* Spawn switcher popup in the middle of the window

Works reliably on i3 at least. Might need some additional testing on
other WMs (and especially on Windows!).

* Add some icons for switcher items

Note that the final design of the list is not final but I do plan to
incorporate these in the future.

* Set Qt::Dialog window flag on switcher popup

Prevents tiling window managers like i3 from trying to tile the window.

* Rename "SwitcherItem" to "AbstractSwitcherItem"

* Add comments about what items are inserted

* Use custom model and view

Still missing: Currently selected item is not highlighted yet. You can
move between selected items with tab and arrow keys though.

* Add helper function to convert QVariant to AbstractSwitcherItem *

* Remove useless constant

* Highlight currently selected switcher item

* Use a different method for centering QuickSwitcherPopup window

* QuickSwitcherModel: Add documentation

* Add default parameter to QuickSwitcherModel::rowCount

* QuickSwitcherPopup: Add comments

* Remove outdated TODO

* QuickSwitcherModel: Init vector with default capacity

* Remove outdated comment

* Add comment about 0 ms timeout interval

* NewTabItem: Simplify interface

* Only fetch opened splits once

This is better than the prior approach since opened splits cannot change
anyways while the switcher is open.

* Use SplitContainer to pass information instead of custom type

* Allow searching for tab titles as well

Before this commit, only channel names could be searched.

* Refactor switcher item interface to be more flexible

Also show tab name and channel name in the switcher list.

* Add documentation for AbstractSwitcherItem

* Add documentation for NewTabItem

* Add comments about {begin,end}{Insert,Remove}Rows

* Remove unused method

* Replace magic size with named constant

* Add change log entry

Co-authored-by: fourtf <tf.four@gmail.com>
2020-08-13 19:25:51 +02:00
fourtf
8661c83312 updated descriptions in notification settings 2020-08-13 17:36:45 +02:00
fourtf
6f4f66b9d0 use different window frame for user popup based on the setting 2020-08-13 17:17:53 +02:00
pajlada
276f3e1d98
[SettingDialog] CTRL+F now selects the Find input (#1811)
* Sneakily make SettingsDialog constructor private at the same time 🕵
2020-07-18 15:56:33 +02:00
fourtf
9739d8d9c3 hide user profile avatar if obs is running 2020-07-12 22:44:33 +02:00
mmb L
0b0fdb4ba2
Fix emote popup remember last position by moving setStayInScreenRect into EmotePopup constructor (#1752) 2020-07-05 14:07:03 +02:00
Paweł
205d658f80
Fixed /usercard on linux (#1755)
- /usercard command doesn't close imidiatelly
- removed "Dialog" window flag. It seems to be unnecessary and causes issues (on left-clicking user name it sometimes didnt render unless you clicked 2-3 times.
2020-06-27 12:58:44 +02:00
0xRainy
0e564065ba
Added recent messages to UserInfoPopup (#1729)
There's a Refresh button added to the popup to refresh the users messages in the popup. Not automatic now while we figure out how fast/slow it would be.

Co-authored-by: dnsge <sagedanielr@gmail.com>
2020-06-21 14:15:14 +02:00
Rasmus Karlsson
666b577bd5 Close UserInfoPopup when Escape is pressed 2020-06-14 12:26:50 +02:00
pajlada
b4eb56f362
Remove "Online Logs" functionality (#1649)
The /logs command will direct users to the /user command instead

Changelog has been updated to reflect this change
2020-05-02 12:18:35 +02:00
fourtf
6052846bc3 added checks to mitigate floating point crashes 2020-04-19 21:05:40 +02:00
mmb L
2076715e23
prevent moveTo from changing popup position on every launch (#1630) 2020-04-18 10:59:27 +02:00
mmb L
ebfcb49e8c
Make emote popup remember last position (#1580)
* Use existing moveTo to ensure window stay within desktop geometry
2020-04-13 13:15:51 +02:00
Rasmus Karlsson
5afb2800c9 Make the "user info popup" crash less likely (hack v2) 2020-04-05 13:00:16 +02: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
fourtf
d83b597c75 removed unused function in SettingsDialog 2020-02-28 19:12:22 +01:00
fourtf
b887f1c90e fix crash 2020-02-28 19:05:50 +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
2ebe07bace removed compat functions in SignalVector 2020-02-23 19:44:13 +01:00
fourtf
4a5dc80bc6 some more refactoring 2020-02-23 17:45:59 +01:00
fourtf
03cf6e81ff fixed spaces and margins in general settings 2020-02-21 03:01:48 +01:00
fourtf
5a2633ef5c fixed bug 2020-02-21 02:16:35 +01:00
fourtf
927ee09221 reordered resize call 2020-02-21 02:07:34 +01:00
fourtf
70e5bd1bfd lazily initialize settings pages 2020-02-21 01:59:58 +01:00
fourtf
78ca0cb84f moved settings tab icons to SettingsDialog 2020-02-21 01:22:50 +01:00
fourtf
39d40d6db6 some settings refactorings 2020-02-21 01:17:22 +01:00
fourtf
fbbf34878f getSettingsPage -> page 2020-02-21 00:46:19 +01:00
fourtf
0bb112a3c2 improved performance of opening the settings dialog 2020-02-20 23:47:25 +01:00
Rasmus Karlsson
64c58e724a Use same sorting method in emote popup as in the completion model
Fixes #1549
2020-02-15 15:52:42 +01: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
Rasmus Karlsson
71337c4dbe Add missing include in ColorPickerDialog.hpp for MSVC2017 2020-01-25 11:28:10 +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
pajlada
265bab1ce6
Add the ability to tab through the emote menu (#1483)
Fixes #1478
2020-01-05 09:45:10 +01:00
DatGuy1
a6c91afde4 Remove support for CBenni's Logviewer (#1458) 2020-01-03 21:11:00 +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
Mm2PL
62cf7cbea2 Remove unmod button for moderators (#1439)
Fixes #1419
2019-12-14 13:22:49 +01:00
Rasmus Karlsson
58e909067e the EmotePopup now inherits from the BasePopup instead of BaseWindow
Fixes #1437
2019-12-14 12:58:15 +01:00
Rasmus Karlsson
0e1f1196d6 reformat 2019-11-02 12:36:42 +01:00
fourtf
6f710823ed renamed getInstance() -> instance() for singletons 2019-10-07 22:42:34 +02:00
fourtf
0ada53a3c1 tell user they might downgrade in update popup 2019-10-07 19:53:46 +02:00
fourtf
05bcf22af4 clear search field when reopening settings 2019-10-07 17:30:47 +02:00
fourtf
16b2b2458c Fixes #1331 emote picker out of bounds 2019-10-05 18:17:29 +02:00
fourtf
e31371fdf5 Fixes #1344 Copying user id adds "ID: " 2019-10-01 22:38:21 +02:00
TranRed
1d306c1dd9 Revert "broke everything (revert if needed)"
This reverts commit f9d50954d9.
2019-09-27 14:05:03 +02:00
TranRed
f9d50954d9 broke everything (revert if needed) 2019-09-27 13:51:12 +02:00
fourtf
9874bd779a formatted all files with clang 9 2019-09-26 00:51:05 +02:00
fourtf
ca0db97d09 ammend 2.1.5 added setting for experimental irc support 2019-09-22 17:12:09 +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
fourtf
758a6bb41c NetworkRequest onError now uses NetworkResult 2019-09-19 19:03:50 +02:00
fourtf
99f99f0cff smol fixes 2019-09-18 14:20:21 +02:00
fourtf
3ab7362304 Merge branch 'master' into irc-support 2019-09-18 13:03:16 +02:00
fourtf
997a0598cd changed tab title to "Irc (beta)" 2019-09-18 11:16:07 +02:00
fourtf
765a75f158 added irc commands 2019-09-18 10:59:28 +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
c3b65b4db0 select the right server in the dialog 2019-09-15 11:42:22 +02:00
fourtf
2a56cef848 added irc authentificate type 2019-09-15 11:35:17 +02:00
fourtf
9bbc4f8a5e queue for erase/set credentials 2019-09-14 22:58:53 +02:00