Commit graph

297 commits

Author SHA1 Message Date
Paweł 30f3035dc2
Removed unnecessary declaration (#2483) 2021-02-28 22:06:15 +01:00
Leon Richardt 1b75dc1e2c
fix: properly handle CLI arguments (#2368)
Fix CLI arguments not being respected. This happened due to the addition of category-based logging (--help, --version) and changes to the window loading ( --channels), respectively.

When handling --channels, I took the liberty to refactor the previous version of window description (which relied on generating JSON) to directly building the WindowLayout.
2021-01-23 16:26:42 +01:00
Leon Richardt 0542b81a03
feat: add a finally callback to NetworkRequests (#2350)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2021-01-16 18:25:56 +01:00
Paweł fca62f7c1d
Added automatic streamer mode detection to Linux (#2316) 2021-01-09 22:14:25 +01:00
Paweł 22d6aa8dc3
Fixed compilation warning on tests (#2317)
QByteArray append deprecation fix
2020-12-27 14:29:43 +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
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
fanway bf4c9cebb1
Use display/localized names in tab and split titles (#2189) 2020-12-06 14:07:33 +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
fourtf 6499b7c126 2.2.3-beta2 2020-11-17 10:43:16 +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
pajlada 1ee1e8837f
Use Qt's dialog where applicable (#1843) 2020-10-31 16:42:48 +01:00
fourtf 3c6e6446c6
2.2.3-beta 2020-10-20 11:13:01 +02:00
Daniel 444810d3dc
Add parent-window option (#2089) 2020-10-19 07:08:02 +02:00
Rasmus Karlsson acec41685e Do error-handling ourselves in argument parsing.
This means we only print a warning on unhandled options instead of
exiting the application.
2020-10-18 22:56:54 +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
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
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
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
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 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 07fc0c3ad7 2.2.2 2020-08-29 10:54:37 +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 a569ee915f bump version 2020-08-22 17:00:15 +02:00
fourtf 83b6fad8e6 fixed some concurrency issues 2020-08-22 11:45:18 +02:00
fourtf adbe92bd60 NetworkRequests now executes error callback on gui thread 2020-08-13 18:15:40 +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ł 682caf6b69
Add support for more image uploader services (#1741)
The list of links that have been uploaded is now also stored in the json format instead of csv
2020-07-05 14:32:10 +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
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
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
Paweł 50d669a1af
Added possibility to change image uploader's form body with Enviroment Variables (#1709) 2020-05-30 12:30:30 +02:00
Mm2PL 3d1950b32e Merge remote-tracking branch 'main_repo/master' into git_is_pepega 2020-04-18 13:39:01 +02:00
mmb L 82354327e5
Add option for username tab completion only with an @ prefix (#1573)
* add an additional check for username completion without an @ prefix

* Changed setting name

* default userCompletionOnlyWithAt to false
2020-02-29 11:52:49 +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 e2c493f369 removed compat aliases for SignalVector 2020-02-23 19:37:02 +01:00
fourtf 843e2ad994 refactored HighlightController 2020-02-23 19:31:43 +01:00
fourtf 4a5dc80bc6 some more refactoring 2020-02-23 17:45:59 +01:00
fourtf e1838154ff refactored SignalVector 2020-02-23 17:11:15 +01:00
fourtf 4a69095d5f fix 2020-02-20 23:43:54 +01:00
fourtf d6c3c99605 list settings can be reordered now 2020-02-20 23:16:46 +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
Mm2PL d7a7df7427
Merge branch 'master' into git_is_pepega 2020-02-08 16:42:47 +01:00
Mm2PL 916fbb2551
Fix a couple things Pajlada pointed out :)
Change `CHATTERINO2_IMAGE_PASTE_SITE_URL` to `CHATTERINO2_IMAGE_UPLOADER_URL`
Remove newline at the end of `docs/ENV.md`
2020-02-08 15:44:03 +01:00
hemirt 1fd64be7f5
Makes it possible to hide one man spam (#1496) 2020-02-02 08:31:37 -05:00
Marcin Moskal 809b63bb5e Change CHATTERINO2_TWITCH_SERVER_PORT env default to 443 (#1513) 2020-01-24 21:30:35 +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 86318590bf
Fix formatting. 2020-01-01 21:27:13 +01:00
Mm2PL 20d8da8f2d
Merge branch 'master' into git_is_pepega 2020-01-01 21:06:29 +01:00
fourtf 845c8fa638 2.1.7 2019-12-29 17:35:58 +01:00
Rasmus Karlsson db860b5907 fix semi-deterministic bug with link parser 2019-12-29 16:42:20 +01:00
fourtf 17ff0b9d83 fixed case sensitivity in link matching 2019-12-29 15:45:19 +01:00
fourtf e12f76387a replaced link regex with object oriented assembly 2019-12-29 14:15:45 +01:00
fourtf 4911c62764 2.1.6 2019-12-26 22:18:46 +01:00
fourtf 6111985b77 replaced link regex 2019-12-26 22:00:31 +01:00
pajlada d5001b97f4
allow customizing twitch server parameters through environment variables (#1449) 2019-12-21 10:11:23 +01:00
Rasmus Karlsson d4474c4ed4 Fixes a bug where the insecure credential store could not save credentials.
Part of the fix for #1377
2019-11-02 14:05:59 +01:00
fourtf 6f710823ed renamed getInstance() -> instance() for singletons 2019-10-07 22:42:34 +02:00
fourtf aeab038bc8 removed get function prefix in Version 2019-10-07 22:32:11 +02:00
fourtf ec2a2f30b7 fixed windows compilation 2019-10-07 22:29:35 +02:00
fourtf 594c0fb255 print version on --version switch 2019-10-07 18:57:33 +02:00
fourtf b1cbf09427 removed appbase directory 2019-10-07 15:46:41 +02:00
fourtf 96a6d94699 Revert "Test #6"
This reverts commit 533516a9ed.
2019-10-05 16:13:11 +02:00
fourtf 533516a9ed Test #6 2019-10-05 14:40:42 +02:00
fourtf 9874bd779a formatted all files with clang 9 2019-09-26 00:51:05 +02:00
Mm2PL 298c013fa0
Rename Env::imagePasteSiteUrl to Env::imageUploaderUrl. 2019-09-25 12:51:17 +02:00
Mm2PL 65fab779c5
Redo all changes done before breaking the branch. 2019-09-23 19:36:52 +02:00
fourtf 2c25c8a5f5 2.1.5 2019-09-22 16:59:51 +02:00
fourtf 7e555843ca added class containing program arguments 2019-09-22 15:30:04 +02:00
fourtf da4714944d small fixes in Image 2019-09-22 10:54:32 +02:00
Leon Richardt 19b2102fed Fix Version::dateOfBuild_ on Windows
The `CHATTERINO_NIGHTLY_VERSION_STRING` defines differ on Windows and
MacOS/Linux. (See `appveyor.yml` and `travis.yml`, respectively.)
Therefore, the Windows version string looked really messed up but it
should be fixed now.
2019-09-21 20:44:49 +02:00
pajlada 452b65b4dd
Merge pull request #1315 from leon-richardt/commit-hash-settings
Add Version Information to "About" Page
2019-09-21 10:10:04 +02:00
Leon Richardt 9c59efb985 Provide singleton class for version information 2019-09-19 23:30:18 +02:00
fourtf 758a6bb41c NetworkRequest onError now uses NetworkResult 2019-09-19 19:03:50 +02:00
fourtf 986694e4bc added multipart support to NetworkRequest 2019-09-19 18:26:38 +02:00
fourtf 277bd5b179 maybe?? 2019-09-18 16:01:41 +02:00
fourtf 4d99d2dade maybe? 2019-09-18 15:30:17 +02:00
fourtf 4bb0b79348 fix compilation on macos maybe 2019-09-18 15:12:23 +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 b06918eb47 2.1.4 2019-09-15 19:32:31 +02:00
fourtf b1bf60f286 added a critical detail 2019-09-15 16:56:44 +02:00
fourtf 7cbbd72e7f disable updates on windows nightlies 2019-09-15 15:45:04 +02:00
fourtf 22ca20ad2a renamed TwitchServer -> TwitchIrcServer 2019-09-15 13:02:02 +02:00
fourtf d451b31cee fixed loading cached files twice 2019-09-14 23:23:09 +02:00
fourtf 9bbc4f8a5e queue for erase/set credentials 2019-09-14 22:58:53 +02:00
fourtf 13d1fab303 credentials are now loaded when needed 2019-09-14 20:45:01 +02:00
fourtf d33a8b1b3a now loads passwords for irc 2019-09-14 18:38:09 +02:00
fourtf b45a6eea22 fixed missing include 2019-09-14 15:50:05 +02:00
fourtf 7c6f744e73 added insecure credential store 2019-09-13 19:26:52 +02:00
fourtf 2f39f4246c fixed warning + added more checks to SignalVectorModel 2019-09-11 13:12:08 +02:00