Commit Graph

201 Commits

Author SHA1 Message Date
pajlada e7668212bd cmake: use FetchContent for some dependencies (#6560)
this transition is _not_ complete, but we use FetchContent for
RapidJSON, PajladaSerialize, PajladaSettings, and PajladaSignals.

In the future, we can move towards providing as many of our dependencies
as possible through conan & vcpkg so submodule-less builds are possible.
2025-11-02 21:45:27 +01:00
teknsl 1537d4dd97 refactor: consolidate font picking into one dialog (#6531)
Instead of three separate dropdowns in the setting dialog, we now expose a single label + button combo for modifying the font.
When the button is pressed, we open a custom font dialog allowing the user to customize the font family, font size, and font weight.

Reviewed-by: nerix <nerixdev@outlook.de>
Reviewed-by: pajlada <rasmus.karlsson@pajlada.com>
2025-11-01 15:05:18 +00:00
nerix f7bb4c79f2 fix: set windows.h definitions on WIN32 instead of MSVC (#6534) 2025-11-01 11:40:45 +00:00
nerix 7214c49e79 fix: Get rid of warnings on clang-cl (#6528) 2025-10-25 14:14:20 +00:00
nerix 787a8c99a5 fix: set Qt definitions PUBLIC in chatterino-lib/-version (#6520) 2025-10-05 10:48:47 +00:00
nerix c5b0669812 refactor: turn Emotes into EmoteController (#6516)
* refactor: turn `Emotes` into `EmoteController`

* changelog

* why does clang-format do this???

* nit: remove unused include from EmoteController.hpp

---------

Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2025-10-04 10:05:27 +00:00
pajlada 6e0533e1da chore: make sanitizers opt in (#6493)
Make code sanitizers opt in with the `CHATTERINO_SANITIZER_SUPPORT` CMake option. After that's enabled, use the `SANITIZE_*` flag to enable individual sanitizers.

Building tests is not required - sanitizers can be enabled in the app by itself.
2025-09-25 23:43:54 +02:00
nerix bc85df04b1 feat: show live indicator in usercard (#6383) 2025-08-17 10:05:52 +00:00
pajlada 283be8710c chore: use DrawnButton instead of NotebookButton (#6371) 2025-08-03 11:13:42 +00:00
pajlada 4a14064425 refactor: make chatter list its own widget (#6365) 2025-08-02 10:19:05 +00:00
nerix a4478748f7 feat(plugins): add basic message construction (#5754) 2025-07-31 15:36:39 +02:00
pajlada 7e7c4112d7 refactor(SettingWidget): use custom setting widgets (#6361) 2025-07-27 12:00:39 +00:00
pajlada aa8f8f2e3e fix: split header "add split" button inconsistency (#6349) 2025-07-26 12:23:29 +00:00
nerix 971c380681 feat: add optional improved text wrapping (#6265)
See the cmake flag `CHATTERINO_ALLOW_PRIVATE_QT_API` for details on how to test this.
2025-07-20 15:01:06 +00:00
Jacob 6712e8cb1e feat: add image uploader settings import/export functionality (#6284)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2025-07-12 16:37:39 +00:00
pajlada 7f2168a9d4 fix: correctly override user color in sub gifts (#6322) 2025-07-06 15:05:28 +02:00
nerix b6623cff88 feat: add REPL for plugins (#6120)
This can be enabled by setting the `.plugins.repl.enabled` setting to true


Close Chatterino and make a backup of your settings.json before attempting any modifications.
```json5
{
  "plugins": {
    "repl": {
      "enabled": true,
    },
  },
}
```
2025-06-28 14:04:08 +00:00
pajlada 42fb5ad077 feat: add SettingWidget::dropdown support for int style enums (#6303) 2025-06-28 12:31:11 +00:00
pajlada 847814324f refactor: use SettingWidget::dropdown for emoji style (#6300) 2025-06-28 12:21:47 +02:00
nerix 84c0b39fde refactor: buttons and friends (#6102) 2025-05-25 11:17:06 +02:00
pajlada 0d4a45161e refactor: move TimeoutStackStyle to its own file (#6216)
Co-authored-by: Mm2PL <miau@mail.kotmisia.pl>
2025-05-18 11:41:43 +00:00
nerix 01e7050ffc chore: bump deprecated cutoff to Qt 6.4.3 (#6169) 2025-04-26 13:36:09 +02:00
nerix 9d557146b4 refactor: trim down PubSub implementation (#6158) 2025-04-19 12:31:22 +00:00
fourtf 37061dd3bd feat: user notes (#6122)
Fixes #2413
2025-04-13 11:38:56 +00:00
nerix ab66be21b3 feat(plugins): add c2.WebSocket (#6076) 2025-04-07 17:38:10 +00:00
nerix df079e572c fix(cmake): use --force-openssl on Qt 6.8+ (#6129) 2025-04-04 20:39:30 +02:00
pajlada 41acd4e971 fix: disable precompiled headers for macOS (#6104) 2025-03-21 23:27:49 +01:00
nerix 55031c5108 chore: check if WEBP is supported (#6073) 2025-03-13 19:15:59 +01:00
pajlada 6b80321083 feat: gracefully shut down on SIGINT/SIGTERM on Linux/mac (#6053) 2025-03-09 15:38:05 +00:00
nerix f78f22e439 fix: set application policy on macOS for extension (#6043) 2025-03-08 18:03:33 +01:00
nerix 72369b1611 feat: add "Open in custom player" to toast options (#5880) 2025-03-05 15:29:28 +00:00
nerix 5fca241188 feat(eventsub): implement clearchat (#5981) 2025-02-23 20:28:26 +00:00
pajlada 8a639c2dc3 chore(tests): try to generate coverage better (#5972) 2025-02-22 13:18:15 +01:00
pajlada 5ae6ffccc5 chore(ci): try to include twitch-eventsub-ws in coverage (#5969) 2025-02-22 08:55:38 +00:00
cmp 2656fd0d6b feat: add Linux support for Live Notifications toasts w/ libnotify (#5881) 2025-02-08 19:06:48 +00:00
pajlada 5e3412c3bb chore(pubsub): remove unused whisper code 👷🏻‍♀️ (#5898) 2025-02-03 19:18:08 +01:00
pajlada 0f8a29fdb9 feat: add initial experimental Twitch Eventsub support (#5837)
Co-authored-by: nerix <nerixdev@outlook.de>
2025-02-02 16:03:24 +00:00
cmp 65e97846aa Disable QT keywords to avoid clashes with other libraries. (#5882) 2025-02-02 10:08:11 +00:00
pajlada 92c921c2a1 feat: add "tags" or "keyword" support for settings (#5585)
this allows us to search for both "ffz" and "frankerfacez" when searching for FrankerFaceZ settings, without trying to force add both into the setting name
2024-11-30 12:41:49 +00:00
nerix c8bafbd03e feat: backup window-layout (#5647) 2024-11-24 22:39:20 +00:00
nerix 1c827f6288 chore: use condition variable to shutdown websocket pools (#5721) 2024-11-20 22:29:47 +01:00
nerix eeb797c03f chore: keep GDI fontengine on Windows for now (#5710) 2024-11-12 22:20:40 +00:00
nerix 101a45fd3a refactor: deduplicate IRC parsing (#5678) 2024-11-02 12:54:31 +00:00
nerix bbcd8c5eb2 fix: get rid of some more warnings (#5672) 2024-10-27 12:42:23 +00:00
Mm2PL 352a4ec132 Move plugins to Sol (#5622)
Co-authored-by: Nerixyz <nerixdev@outlook.de>
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2024-10-20 11:57:05 +02:00
nerix 800f6df2cf refactor(message-builder): move static helper methods to functions (#5652) 2024-10-18 13:03:36 +02:00
nerix d9453313b3 test: add snapshot tests for MessageBuilder (#5598) 2024-10-13 10:38:10 +00:00
nerix afa8067a20 Add transparent overlay window (#4746) 2024-10-06 12:54:24 +02:00
nerix 3d06f8612f chore: ensure statics are only present once in the final app (#5588) 2024-09-14 12:13:12 +00:00
Timo Zuccarello 9375bce555 feat: add setting for showing pronouns in user info popup (#5442)
This uses https://pr.alejo.io/

Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2024-09-08 11:19:43 +02:00