Commit graph

845 commits

Author SHA1 Message Date
nerix c65ebd26bd
fix: non-native drag on Windows (#5051) 2023-12-29 15:10:56 +01:00
nerix d84779f127
fix: some buttons triggering when releasing mouse outside (#5052)
Examples of buttons fixed with this: Usercard profile picture & split header mod mode button
2023-12-29 14:20:07 +01:00
nerix d0d240136e
fix: Add check for tall messages (#5045) 2023-12-27 16:50:04 +01:00
nerix 9612eac966
perf: Only update regions with animated elements (#5043) 2023-12-27 01:12:14 +01:00
iProdigy eb12cfa50b
feat: add sound and flash alert for automod caught messages (#5026)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2023-12-25 23:17:44 +00:00
nerix 1006bf955a
perf: skip update from GIF timer if no animated elements are shown (#5042) 2023-12-25 19:04:46 +00:00
nerix 485fc5cdb4
fix: Tooltip parenting on Windows (#5040)
Fixes #5019
2023-12-25 17:17:25 +00:00
nerix 25add89b14
feat: Add crash recovery on Windows (#5012) 2023-12-24 15:38:58 +01:00
nerix d105a68dba
Allow ChannelViews without a Split (#4747) 2023-12-17 21:49:37 +01:00
pajlada 269e7a07b4
chore: Unify .clang-format file (#5037)
* chore: Unify all .clang-format files in the root dir

* Update `scripts/check-format.sh` to include all source dirs

* Add changelog entry
2023-12-17 13:50:42 +00:00
pajlada 0395b692e4
fix: ReplyThreadPopup now requires a split as its parent (#5036)
Co-authored-by: Nerixyz <nerixdev@outlook.de>
2023-12-17 13:16:40 +00:00
pajlada 5dd8c1c88a
dev: Rename tools directory to scripts (#5035) 2023-12-17 13:37:30 +01:00
pajlada aa11a24163
fix: UserInfoPopup now requires a split as its parent (#5034)
Co-authored-by: Nerixyz <nerixdev@outlook.de>
2023-12-17 11:53:06 +00:00
Wissididom d016a16269
Migrate tests on macOS to the same way tests are run on windows (#5032) 2023-12-17 11:32:40 +01:00
Herman Stornes b78b57b454
Fixes to ctrl+backspace behavior (#5013) 2023-12-16 13:40:05 +00:00
iProdigy e75ce5db54
fix: request more historical messages on wake (#5018) 2023-12-16 12:38:35 +00:00
Mm2PL 5f8c4c6b66
BREAKING: Replace custom import() with normal Lua require(). (#5014)
* Use require() instead of a custom import()

* Also search relative to the current file

* Update documentation
2023-12-16 12:16:54 +00:00
iProdigy bbf75516ed
fix: show user message on watch streak notice (#5029) 2023-12-16 11:48:32 +00:00
nerix 66f4480371
fix: Fixed some compiler warnings (#5028)
* fix(C4101): unreferenced local variable

* fix(C4189): variable initialized but not referenced

* fix(C4305): narrowing from double to float

* fix(C4457): declaration hiding function parameter

* fix(C4456): shadowing declaration

* fix(C4996): remove deprecations

* chore: add changelog entry

* fix: Remove more unused variables

* fix: removed unused lambda captures

* Update changelog entry

---------

Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2023-12-16 11:24:28 +00:00
Mm2PL fd4cac2c2c
Add a new completion API for experimental plugins feature. (#5000)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2023-12-10 13:41:05 +00:00
pajlada e4258160cd
Fixed "Yes, don't ask again" image uploader prompt not working on macOS (#5011) 2023-12-10 13:28:31 +01:00
iProdigy 13dc306506
perf: query fewer historical messages on reconnects (#5001)
Co-authored-by: Ruben Anders <ruben.anders@robotty.de>
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2023-12-09 19:46:30 +01:00
Mm2PL 401e097d62
Hide the Usercard button in the User Info Popup in special channels (#4972) 2023-12-09 12:21:00 +00:00
smc fec8f8c49f
Fix missing parent of tooltips for Wayland (#4998)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2023-12-09 11:28:33 +00:00
Ilya Zlobintsev 3ad2e4b30a
Update flatpak nightly build link (#5008)
The `nightly` branch of Chatterino on Flathub will no longer be updated due to changes in Flathub rules. Nightly builds will instead be published in the `flathub-beta` repository. The `.flatpakref` file has been updated to point to the new location.

See also: https://github.com/flathub/flathub/issues/4767
2023-12-09 09:47:26 +01:00
pajlada 036c4f33df
conan: Update Boost to 1.83 & OpenSSL to 3.2.0 (#5007) 2023-12-09 00:23:35 +01:00
Mm2PL c3d3903b6f
feat: add --safe-mode command line option (#4985)
This ensures the settings button isn't hidden, and disables plugins from being loaded to make sure the user can always recover from messing things up
2023-12-05 17:37:42 +00:00
iProdigy 44abe6b487
feat: add channel for messages caught by AutoMod (#4986)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2023-12-03 22:07:30 +00:00
nerix 812186dc4c
Return correct hit-test values for title bar buttons on Windows (#4994)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2023-12-03 13:41:33 +00:00
pajlada 584a7c86fc
Move clang-tidy to its own CI job (#4996)
* Only run the `post-clang-tidy-review` if the `clang-tidy` build succeeded
2023-12-02 13:04:43 +00:00
nerix c4c94473ae
Do bounds-checking on more windows (#4797)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2023-12-02 12:56:03 +01:00
pajlada e327ed4166
Update magic_enum from v0.9.3 to v0.9.5 (#4992)
* Fix include path for magic enum
* Update .clang-format to ensure magic enum is caught as a third party library
2023-12-01 15:03:04 +01:00
Mm2PL 6d02bb7304
Make emote completion a lot smarter (#4987) 2023-11-28 10:06:35 +00:00
pajlada a240797b68
Add support for sound backends & some miniaudio changes (#4978)
Miniaudio now runs everything in a separate audio thread - this uses boost::asio's io_context.
Our miniaudio implementation is now also much simplified - it does not use its own resource manager or device. This might end up being stupid if sounds don't work after changing output device or locking or w/e
I've made the sound controller into an interface, meaning we can support multiple sound backends in Chatterino. I've added a Null sound backend that disables all sound. A QMediaPlayer or QSoundEffect or Qt backend could be added.
Miniaudio might idle & disable the device now too, not sure

I've added some unrelated changes in the form of a new setting type, and a new setting page helper function for it, which will hopefully make adding new enum settings easier in the future.
This setting stores its value as a string instead of an int, and uses magic_enum to convert between that string value and its enum value.
2023-11-26 22:06:12 +01:00
pajlada 1f09035bfb
refactor: common/Credentials (#4979)
Use full path in includes
Sort includes
Move anon namespace out of chatterino namespace
Use auto * where possible
Disable convert-member-function-to-static check for all member functions
Don't use else after return
Removed empty constructor
Replace use of `boost::variant` with `std::variant`

Co-authored-by: nerix <nerixdev@outlook.de>
2023-11-26 18:38:31 +00:00
pajlada 5b741a8eb6
refactor: Remove Emoji's EmojiMap with a vector (#4980) 2023-11-26 18:17:58 +00:00
nerix e8673fc52a
fix: deadlock and use-after-free in tests (#4981)
* fix: use-after-free in settings

* refactor: put seventv api into a singleton

* chore: add changelog entry

* Add warning for when the 7TV load fails
2023-11-26 15:54:19 +00:00
nerix 854032fce9
fix: Only display spaces between words in reply context (#4977) 2023-11-26 11:15:35 +01:00
Mm2PL fbc8aacabe
Refactored the Image Uploader feature. (#4971)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2023-11-19 11:05:30 +00:00
Wissididom 7898b97fc2
feat: Run tests on Windows & macOS in CI (#4970) 2023-11-18 15:13:27 +01:00
kornes 0bdcaae5d1
Fix: dont select mod buttons at triple click (#4961) 2023-11-18 11:39:10 +00:00
nerix 3d9db1d528
refactor: Ignores and Replacements (#4965)
Fixes a freeze from a bad regex in _Ignores_
Fixes some emotes not appearing when using _Ignores_
Fixes lookahead/-behind not working in _Ignores_
2023-11-17 17:39:45 +01:00
nerix 6faf63c5c4
refactor: Remove Outcome from network requests (#4959) 2023-11-12 14:51:51 +01:00
pajlada 95620e6e10
fix: Split input sometimes not accepting focus (#4958) 2023-11-11 10:58:20 +00:00
pajlada 244efaa0a9
fix: /banid and /ban id: performing duplicate bans (#4957) 2023-11-10 18:46:28 +00:00
pajlada 423829be43
feat: /unban and /untimeout by id (#4956) 2023-11-10 19:18:20 +01:00
kornes c8e03b4ad7
Dont invalidate paint buffer when selecting (#4911) 2023-11-08 21:19:18 +00:00
pajlada fcc5f4b3df
feat: Allow id: prefix in /ban and /timeout (#4945)
ban example: `/ban id:70948394`, equivalent to `/banid 70948394`
timeout example: `/timeout id:70948394 10 xd`
2023-11-08 21:42:06 +01:00
iProdigy d40b0a6c1d
fix: avoid reward redemption crash via buffer refactor (#4949)
Co-authored-by: nerix <nero.9@hotmail.de>
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2023-11-08 18:14:48 +01:00
Mm2PL f943f70634
Add support for opening usercards by ID (#4934)
Co-authored-by: nerix <nerixdev@outlook.de>
2023-11-06 20:42:24 +01:00