Commit graph

2263 commits

Author SHA1 Message Date
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
pajlada 812cbdf4f9
Scroll in selected split with PageUp and PageDown (#2081) 2020-10-18 13:15:47 +02:00
pajlada 39a0e69a3b
Reset the timer & refresh thumbnail when changing split channel (#2080) 2020-10-18 12:19:30 +02:00
yodax 55b98f93db
Added emote completion with : to the whispers channel (#2076) 2020-10-17 15:59:15 +02:00
yodax 2352c31dd6
Viewer list usability improvements (#2059)
* Updated to use accent color and added spaces between categories

* Switched order of Moderators and VIPs
2020-10-17 15:00:10 +02:00
Leon Richardt 6e7f8d9d9c
Fix: ColorButtons in settings don't respect search (#2073)
Prior to this commit, adding a ColorButton to a SettingsLayout via
`SettingsLayout::addColorButton` lead to the button not respecting
search queries. This is because they are not added to the layout in a
Group. This commit fixes the behavior, causing color buttons to behave
like every other settings widget.
2020-10-16 09:06:54 +02:00
Rasmus Karlsson 3be62c9294 actually add accent color 2020-10-11 14:42:55 +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
Dave 98762fdfa0
Add viewer list button to twitch channel header (#2042) 2020-10-10 17:24:53 +02:00
Daniel b37605569f
Make moderation mode persist (#2035)
Fixes a small bug introduced in #1964. "Moderation mode" would be written to the settings file but wouldn't be loaded.

Closes #2032
2020-10-10 10:04:55 +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
fanway df97d609a2
Fix tooltip not showing in EmotePopup (#2046)
* Fix tooltip not showing in `EmotePopup`

* Update CHANGELOG.md
2020-10-09 17:21:04 +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
apa420 35816c5d8a
Add settings for last message line style (#2019) 2020-10-04 18:26:46 +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
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
apa420 a2e12a56e3
Changed some default settings (#2024)
Colorized nicknames now enabled by default
Show channels live now enabled by default
Bold usernames enabled by default
2020-10-04 12:59:31 +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
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
fourst4r 2f3accf3cb
fix a crash using middle click scroll on chat window (#1870)
* fix middle click scroll crash

* Update CHANGELOG.md

* get the float dpi, not int
2020-09-26 15:47:20 +02:00
fourtf 06cb88f6c2 downscale images in button 2020-09-26 15:40:43 +02:00
fourtf d13b7d9768 fixed formatting in Settings.hpp 2020-09-26 15:18:48 +02:00
fourtf f4a6b769e5 fixed some potential crashes down the line 2020-09-26 15:17:26 +02:00
tuckerrrrrrrrrr 9d885d951c
Allow reordering elements in list settings (#1595)
* Add move up, down buttons to list settings

Channel notifications, moderation buttons etc. have a move up and move
down button now for reordering.

* Selection follows moved rows, refactor

Also fixed rows past the 2nd one not moving

* Update selection property with more than 1 column

* Fix crash when moving without a row selected

* Move rows with drag and drop

Right now it's a little iffy registering the row to be moved, but I
wanna go to bed :)

* Remove EditableTableView, move to SignalVectorModel

Replace my ghetto drag and drop solution in EditableTableView with small
patches to the stuff already written in SignalVectorModel::dropMimeData
2020-09-26 15:11:45 +02:00
fourtf f6caee6a66 removed accidentally added code 2020-09-26 14:59:04 +02:00
fourtf affef2c5a2 Merge remote-tracking branch 'refs/remotes/origin/master' 2020-09-26 14:56:56 +02:00
fourtf db3402a18e Merge branch 'Ch2Usercard' 2020-09-26 14:54:44 +02:00
pajlada 20e4d6b3d2
Update emote parsing (#1714)
Fixes #1707
2020-09-26 14:21:46 +02:00
fourtf d5855ba7d6 removed latest messages 2020-09-26 14:02:18 +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
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
Rasmus Karlsson 64d2fc6344 Clean up the "Chatterino command" concept 2020-09-26 10:01:00 +02:00
Rasmus Karlsson 4f35842473 Only attempt to read thumbnails when we get a 200 response code.
We would have been able to keep doing this if the Network Request code
followed redirects - however, it doesn't, so this is the best we can do.
We also don't have header support in Network Result, so we can't
validate that the response we got is actually an image.

Fixes #1972
2020-09-26 09:30:50 +02:00
fourtf 8123a47898 Closes #1725 2020-09-26 01:52:39 +02:00
fourtf 828fb2c3f5 Fixes #1767 2020-09-26 01:19:47 +02:00
fourtf b905e0afd1 Fixes #1676 2020-09-26 00:59:16 +02:00
fourtf 3375e58a4f added spacing to the split header title 2020-09-25 23:41:18 +02:00
fourtf 5fc495a073 Fixes #1404 2020-09-25 22:59:20 +02:00
fourtf 45a1034edf fixed tooltip flickering for SplitHeader 2020-09-25 22:21:30 +02:00
fourtf ed87d6e2fa fixed recent messages being parsed concurrently 2020-09-25 22:20:15 +02:00
fourtf 1ec109748f fixed crash when removing item in settings list 2020-09-25 20:43:45 +02:00
pajlada 913193f8b5
Split up Window Layout loading into a loading and application stage (#1964)
* Split up Window Layout loading into a loading and application stage

Previously, we were creating UI elements at while we were reading the window-layout.json file.
We now read the window-layout.json file fully first, which results in a
WindowLayout struct which is built up of a list of windows with a list
of tabs with a root node which contains containers and splits.
This WindowLayout can then be applied.

This will enable PRs like #1940 to start Chatterino with Window Layouts
that aren't defined in a json file.

This commit has deprecated loading of v1 window layouts (we're now on v2). If a v1 window layout is there, it will just be ignored and Chatterino will boot up as if it did not have a window layout at all, and on save that old window layout will be gone.

* Fix compile error for mac
2020-09-19 17:14:10 +02:00
Rasmus Karlsson 7eabba959b Split up a few single-liners to help debug crash issue 2020-09-13 11:08:43 +02:00
fourtf 1baa2b266d add a settings for the duplicate message sending 2020-09-11 17:07:58 +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
Daniel b024b47afd
Changelog crash fix (macOS) (#1935)
On macOS, trying to display a dialog before showing the main window
(like when starting minimized) leads to a crash. The dialog will now
show before the main window is opened, preventing this issue.
2020-09-06 12:02:15 +02:00
Daniel 0814fca7d4
Usercard command fix (#1918)
* Add myself to contributors list
2020-08-30 11:57:46 +02:00
fourtf 07fc0c3ad7 2.2.2 2020-08-29 10:54:37 +02:00
fourtf 279a80b66f fixed a potentional bug 2020-08-27 16:17:03 +02:00
fourtf 63c167f1db 2.2.1 2020-08-24 20:24:00 +02:00
Nico Sonack 930351779c
(#1874) Disable updates on non-Windows, Linux or macOS platforms (#1914)
* (#1874) Disable update checking for unsupported platforms

As described #1874, only Windows, macOS and GNU/Linux are officially
supplied with builds. Thus checking for updates is unnecessary if we
are e.g. on FreeBSD, OpenBSD, illumos distros and possibly other
Operating Systems.

This fixes #1874 by ifdef-ing the 3 officially supported platforms
when checking for updates. Otherwise a debug warning will be emitted
and in the settings the checkbox for beta-updates is hidden and
replaced by a message, explaining the reason for why there are no beta
updates.

* Update CHANGELOG

In accordance with #1874

* (#1874) Move platform check into checkForUpdates

As discussed in #1914

* (#1874) Move check for supported OS to a seperate function.

As requested in #1914
2020-08-24 12:02:56 +02:00
fourtf 1501da7e72 reverted update code to old state 2020-08-24 09:52:24 +02:00
fourtf df2cfa73f0 maybe fixed updates on macos 2020-08-24 09:42:59 +02:00
fourtf b7e86a8de6 reduced COMPACT_EMOTES_OFFSET to fix a graphical glich in timed out
messages
2020-08-23 17:24:35 +02:00
fourtf 5d0cb3ada8 Closes #1903 2020-08-23 17:11:41 +02:00
fourtf 28a0e4c63c Closes #1909 2020-08-23 17:04:17 +02:00
fourtf 50da694fff
Stable (#1905)
* fixed SearchWindow memory leak

* Update CHANGELOG.md

* added DebugCount for BaseWindow

* [Bug Fix] Color of second user highlight cannot be set (#1898)

* Highlighting: Fix bug preventing user highlight from being set

Before this commit, only the row of a clicked cell was checked, but not
the tab it was clicked in.

Since the "Whispers" row is the second row in the "Messages" tab on the
highlighting page, the color picker was not opened for the second entry
in the "Users" tab either. This commit fixes the bug by also checking
tab the cell was clicked in.

* Update CHANGELOG.md

* Emote Popup Improvements (#1895)

* Put exact matching emotes first

* Close GenericListView on Escape press

* smol fix

* fixed emote input when not in the first char

* fixes #1902

* closes #1904

Co-authored-by: Leon Richardt <leon.richardt@gmail.com>
Co-authored-by: Daniel <24928223+dnsge@users.noreply.github.com>
2020-08-23 11:28:22 +02:00
fourtf 391ba5476f fixed emote input when not in the first char 2020-08-23 09:17:19 +02:00
fourtf ea54b10f1d smol fix 2020-08-22 23:22:00 +02:00
Daniel 184aba1be7
Emote Popup Improvements (#1895)
* Put exact matching emotes first

* Close GenericListView on Escape press
2020-08-22 23:17:56 +02:00
Leon Richardt 505581ca65
[Bug Fix] Color of second user highlight cannot be set (#1898)
* Highlighting: Fix bug preventing user highlight from being set

Before this commit, only the row of a clicked cell was checked, but not
the tab it was clicked in.

Since the "Whispers" row is the second row in the "Messages" tab on the
highlighting page, the color picker was not opened for the second entry
in the "Users" tab either. This commit fixes the bug by also checking
tab the cell was clicked in.

* Update CHANGELOG.md
2020-08-22 23:10:10 +02:00
fourtf 6e6413da02 added DebugCount for BaseWindow 2020-08-22 22:54:03 +02:00
fourtf ebb4ffe36d
fixed SearchWindow memory leak (#1899) 2020-08-22 22:35:07 +02:00
fourtf a8c61980ac removed default image uploader 2020-08-22 18:33:37 +02:00
fourtf a569ee915f bump version 2020-08-22 17:00:15 +02:00
fourtf 47afca2c71 miscelaneous changes 2020-08-22 16:49:23 +02:00
fourtf f3225275ea changed channel point messages color 2020-08-22 16:48:40 +02:00
fourtf eeb632d4ab Merge branch 'master' of https://github.com/chatterino/Chatterino2 2020-08-22 16:03:20 +02:00
fourtf 2cc23eaae6 make highlighted messages and redeemed thingies look the same 2020-08-22 16:02:38 +02:00
pajlada 0cbddf7e9b
Fix/be respectful of special characters like exclamation marks in highlight phrases since they are also word boundaries (#1890)
* Add missing includes

We would normally have these included in another file already, or even
the precompiled headers, but having the files included here too makes
testing single parts easier.

* Modify the regex building of highlight phrases for non-regex phrases

For phrases like !test, the word boundary checking we did before was not
enough, so we now check for either a word boundary, a whitespace
character, or the line start/end.

* Add tests for ensuring I haven't fully broken the highlight system

* Add changelog entry
2020-08-22 15:37:03 +02:00
fourtf 17b26ef59c Merge branch 'master' of https://github.com/chatterino/Chatterino2 2020-08-22 15:29:06 +02:00
fourtf 459e483c62 hide link preview image if in streamer mode 2020-08-22 15:27:42 +02:00
pajlada b98c0c2a44
Clarify "Custom stream player" functionality (#1889)
* Clarify "Custom stream player" functionality

* Remove idiotic idiot proofing
2020-08-22 15:01:16 +02:00
fourtf 5a18a0f040 updated links to go to chatterino.com redirect pages 2020-08-22 14:46:17 +02:00
fourtf f584503673 some fixes for SplitInput 2020-08-22 12:34:19 +02:00
fourtf 758fdc28ee added margin to emote input items 2020-08-22 12:19:20 +02:00
fourtf 95f975996d added tip for search shortcut to settings 2020-08-22 12:17:20 +02:00
fourtf 048a6f661d enable word wrap in tooltip 2020-08-22 11:54:06 +02:00
fourtf 83b6fad8e6 fixed some concurrency issues 2020-08-22 11:45:18 +02:00
alazymeme 0b0f1c9c5c
Add microsoft edge support for incognito (#1875)
* Fix incognito button missing

* Update CHANGELOG.md
2020-08-21 15:33:56 +02:00
fourtf 88f45a2842 animte emotes in colon emote input 2020-08-15 21:34:57 +02:00
fourtf f0b9f8ca59 raised emote limit in colon input to 200 2020-08-15 21:20:23 +02:00
fourtf a23b1c7988 added twitch emotes to colon emote menu 2020-08-15 21:14:07 +02:00
fourtf 235b67f9da smooth pixmap transform in emote input item 2020-08-15 20:25:58 +02:00
fourtf 8818f3df18 added emojis to colon popup 2020-08-15 20:22:46 +02:00
fourtf 4d4056ad51 fix compilation on gcc 2020-08-15 19:46:18 +02:00
fourtf 2ad4236f10 fixed compilation 2020-08-15 19:13:50 +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
alazymeme fba049dbfb
Fix open in browser button for whisper split (#1860)
* Fix open in browser button for whisper split

* Update CHANGELOG.md
2020-08-15 10:15:57 +02:00