Commit Graph

89 Commits

Author SHA1 Message Date
nerix a9e99b3e8c fix: self drawn add button alignment and color (#6385) 2025-08-24 10:26:16 +00:00
pajlada 283be8710c chore: use DrawnButton instead of NotebookButton (#6371) 2025-08-03 11:13:42 +00:00
pajlada f2b438ab24 fix: relayout notebook if any custom buttons change (#6328) 2025-07-12 13:52:41 +00:00
nerix 04ba83b90f fix: stop click when dragging over notebook buttons (#6266)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2025-06-15 11:00:57 +00:00
pajlada 6398570bcc refactor: Make Account & Settings buttons SVGs (#6267)
instead of rendering the icons directly in Chatterino, they're now SVGs

This has the following consequences:
1. The color does _not_ respect your custom theme. For most users, this
   will not be a problem/concern.
2. You can no longer drag a split onto those buttons to create a new tab
2025-06-14 22:28:17 +02:00
nerix 84c0b39fde refactor: buttons and friends (#6102) 2025-05-25 11:17:06 +02:00
nerix 67956ef2c6 refactor(notebook): merge top/bottom and left/right layout code (#6215) 2025-05-18 10:17:13 +00:00
nerix 01e7050ffc chore: bump deprecated cutoff to Qt 6.4.3 (#6169) 2025-04-26 13:36:09 +02:00
hemirt db8047ea7b highlight tabs only on unviewed messages (#5649) 2024-11-02 13:21:56 +00:00
nerix afa8067a20 Add transparent overlay window (#4746) 2024-10-06 12:54:24 +02:00
pajlada 5170085d7c fix: tristate toggle logic for tab visibilty (#5530)
Co-authored-by: Nerixyz <nerixdev@outlook.de>
2024-08-24 09:42:42 +00:00
pajlada 5deec1f02f chore: remove Singleton & replace getIApp with getApp (#5514) 2024-07-21 13:09:59 +00:00
KleberPF d161036b18 Add feature to duplicate tabs (#5277)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2024-05-25 12:39:19 +00:00
nerix 8689bdb481 fix: get rid of duplicate scale events (#5404) 2024-05-19 09:11:51 +00:00
nerix 1ca77a1e84 Add context menu entry to toggle offline tabs (#5318)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2024-04-12 23:05:47 +02:00
nerix c1fa51242f refactor: turn StreamerMode into a singleton(-like thing) (#5216) 2024-03-01 21:12:02 +01:00
nerix af8eba0323 feat: add option to change the top-most status of a window (#5135)
* feat: add option to pin a popup

* chore: add changelog entry

* chore: change changelog entry
2024-02-04 12:33:37 +00:00
pajlada 4380ef8c5f refactor: Remove most raw accesses into Application (#5104) 2024-01-19 17:59:55 +01:00
pajlada 5b6675abb4 refactor: fix clang-tidy auto*, const&, and curly braces (#5083) 2024-01-14 17:54:52 +01:00
nerix c4c62f2796 fix: restore focus of last split when restoring (#5080) 2024-01-14 12:06:52 +01:00
pajlada 99b537ffd9 Add some tests for NotebookTab (#5070)
* EmptyApplication: Add asserts to rest of getters (except for getSeventvAPI)

* Theme: make getTheme call getIApp()->getThemes() instead

this allows it to be used in tests
realistically this should be deprecated & users of it should just call
getIApp()->getThemes() directly

* Use getIApp() instead of getApp() in a few places
2024-01-06 11:42:45 +01:00
pajlada d085ab578f refactor: Make Args less of a singleton (#5041)
This means it's no longer a singleton, and its lifetime is bound to our application.
This felt like a good small experiment to see how its changes would look
if we did this.
As a shortcut, `getApp` that is already a mega singleton keeps a
reference to Args, this means places that are a bit more difficult to
inject into call `getApp()->getArgs()` just like other things are
accessed.
2023-12-29 15:40:31 +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 2fc7fdd91a Fix empty page added when showing OOB dialog (#4849) 2023-10-01 06:40:34 +00:00
nerix 916427a612 Fix flickering when running with Direct2D (#4851) 2023-10-01 07:13:37 +02:00
Daniel Sage 1b9ee939bb Select correct notebook tab after closing while filtered (#4770) 2023-09-10 10:38:59 +00:00
Daniel Sage 4361790fbd Add setting to only show tabs with live channels (#4358)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2023-06-11 11:34:28 +02:00
Mm2PL c6c884df70 Add an indicator in the title bar if Streamer Mode is active (#4410) 2023-05-27 10:38:25 +00:00
Guilherme Espada 7a286480d6 Fix build on latest Fedora (#4518)
gcc (GCC) 13.0.1 20230401 (Red Hat 13.0.1-0)

Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2023-04-08 08:58:04 +02:00
pajlada c95a65c153 Fix Qt6 building (#4393) 2023-02-19 20:19:18 +01:00
pajlada 90046f380f Fix crash that would occur when performing certain actions after removing all tabs (#4271)
* Ensure we can deselect notebooks

* Add changelog entry

* Use dynamic_cast instead of raw cast
2022-12-29 19:15:32 +01:00
pajlada 032f290767 Sort and force grouping of includes (#4172)
This change enforces strict include grouping using IncludeCategories

In addition to adding this to the .clang-format file and applying it in the tests/src and src directories, I also did the following small changes:

    In ChatterSet.hpp, I changed lrucache to a <>include
    In Irc2.hpp, I change common/SignalVector.hpp to a "project-include"
    In AttachedWindow.cpp, NativeMessaging.cpp, WindowsHelper.hpp, BaseWindow.cpp, and StreamerMode.cpp, I disabled clang-format for the windows-includes
    In WindowDescriptors.hpp, I added the missing vector include. It was previously not needed because the include was handled by another file that was previously included first.
    clang-format minimum version has been bumped, so Ubuntu version used in the check-formatting job has been bumped to 22.04 (which is the latest LTS)
2022-11-27 19:32:53 +01:00
kornes 330e0a99fa Fix crash happening when QuickSwitcher is used with popout window (#4187)
Co-authored-by: Felanbird <41973452+Felanbird@users.noreply.github.com>
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2022-11-25 09:34:01 +00:00
Daniel Sage 90121ed756 Fix tab wrapping with vertical tab layout (#4152) 2022-11-15 08:45:10 +01:00
Daniel Sage 1741ac7482 Improve look of tabs when using a layout other than top (#3925) 2022-11-08 22:46:43 +01:00
Mm2PL e604a36777 Make menus and placeholders display appropriate custom key combos. (#4045)
* Add initial support for finding hotkey display key sequences

* Make neededArguments work

* Implement displaying key combos in SplitHeader main menu

* Make Settings search text dynamic

* Make tab hide notice use a custom hotkeys key sequence

* Make Notebook menus use custom hotkeys key combo lookup for hiding tabs

* shut up changelog ci

* Make NotebookTab menus show custom hotkeys. SCUFFED:
this does not update dynamically!

* Scuffed: Make the show prefs button setting show the key bind

* Scuffed: Make the R9K description refer to hotkeys

* @pajlada, is something like this ok?

Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2022-10-09 17:20:44 +02:00
nerix be72d73c3d feat: add Go to message action in various places (#3953)
* feat: add `Go to message` action in search popup

* chore: add changelog entry

* fix: only scroll if the scrollbar is shown

* fix: go to message when view isn't focused

* feat: animate highlighted message

* fix: missing includes

* fix: order of initialization

* fix: add `ChannelView::mayContainMessage` to filter messages

* feat: add `Go to message` action in `/mentions`

* fix: ignore any mentions channel when searching for split

* feat: add `Go to message` action in reply-threads

* fix: remove redundant `source` parameter

* feat: add `Go to message` action in user-cards

* feat: add link to deleted message

* fix: set current time to 0 when starting animation

* chore: update changelog

* fix: add default case (unreachable)

* chore: removed unused variable

* fix: search in mentions

* fix: always attempt to focus split

* fix: rename `Link::MessageId` to `Link::JumpToMessage`

* fix: rename `selectAndScrollToMessage` to `scrollToMessage`

* fix: rename internal `scrollToMessage` to `scrollToMessageLayout`

* fix: deleted message link in search popup

* chore: reword explanation

* fix: use for-loop instead of `std::find_if`

* refactor: define highlight colors in `BaseTheme`

* core: replace `iff` with `if`

* fix: only return if the message found

* Reword/phrase/dot changelog entries

Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2022-09-11 16:37:13 +02:00
Daniel Sage c58552781d Add option to display tabs on the right and bottom (#3847)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2022-07-23 14:09:12 +00:00
pajlada 6599009e79 Fix split focusing being broken in certain circumstances when the "Show input when it's empty" setting was disabled (#3838)
Co-authored-by: Kasia <zneix@zneix.eu>
2022-06-26 16:53:09 +00:00
kornes 0de4a2160a Add missing parent pointer to few QMessageBox and QFontDialog (#3679)
Co-authored-by: Felanbird <41973452+Felanbird@users.noreply.github.com>
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2022-04-16 08:59:20 +00:00
Infinitay 554313d645 Add the ability to lock NotebookTab layout (#3627)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2022-03-26 14:16:45 +01:00
pajlada 2b9e2bd1b0 Notebook::select now takes the optional parameter "focusPage". (#3446) 2022-01-02 15:00:19 +01:00
pajlada 51ece94f58 Update Settings and Signals version (#3398)
Co-authored-by: zneix <zneix@zneix.eu>
2021-12-19 14:57:56 +00:00
Mm2PL 703f3717e2 Add custom hotkeys. (#2340)
Co-authored-by: LosFarmosCTL <80157503+LosFarmosCTL@users.noreply.github.com>
Co-authored-by: Paweł <zneix@zneix.eu>
Co-authored-by: Felanbird <41973452+Felanbird@users.noreply.github.com>
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2021-11-21 17:46:21 +00:00
Tal Neoran d8aa232df9 Add keybindings to tab context menu items (#3265)
Co-authored-by: Paweł <zneix@zneix.eu>
2021-10-09 16:09:11 +00:00
fourtf 97b9bfb2bd v2.3.3 2021-06-21 11:35:53 +02:00
Paweł 57354283ec Added ability to toggle visibility of tabs (#2600)
This can be done by right-clicking the tab area or pressing the keyboard shortcut (default: Ctrl+U).

Co-authored-by: Leon Richardt <leon.richardt@gmail.com>
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2021-05-30 11:39:34 +00:00
fourtf 2db140d5af Added x-attach-split-to-window command line arg (#2411)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2021-04-17 14:15:23 +00: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