Commit graph

53 commits

Author SHA1 Message Date
nerix 86e71c8bd9
Migrate to C++ 20 & switch to websocketpp develop branch (#4252)
* feat: c++ 20

* fix: c++ 20 deprecations

* fix(msvc): warnings

* chore: add changelog entry

* fix: formatting

* Update websocketpp to the `develop` branch

* Specify other template type in FlagsEnum != operator

* Remove the user of simple template ids in our websocketpp template class

Also standardizes the file a bit by using nested namespaces, using
pragma once

* fix: turn `MAGIC_MESSAGE_SUFFIX` into a `QString`

* hacky unhacky hacky const char hack

Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2022-12-24 11:56:11 +00: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
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
pajlada 51ece94f58
Update Settings and Signals version (#3398)
Co-authored-by: zneix <zneix@zneix.eu>
2021-12-19 14:57:56 +00:00
mmb L ec966a1791 Remove local variables that are not referenced 2021-11-28 13:02:07 +01:00
Mm2PL 1ca3dfde7f
Fixed splits losing filters when closing and reopening them (#3351)
Co-authored-by: pajlada <rasmus.karlsson@pajlada.com>
2021-11-13 12:07:29 +00:00
Mikulex 3f12d5bb3b
Fix "Change channel" popup title (#3273)
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2021-10-23 11:22:54 +00:00
Tal Neoran ad4a0c28d1
Add opening tab in popup (#3082)
Co-authored-by: zneix <zneix@zneix.eu>
Co-authored-by: Rasmus Karlsson <rasmus.karlsson@pajlada.com>
2021-08-21 12:16:00 +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
fourtf 58017a7546
fix size of splits not loading properly (#2554) 2021-04-17 13:16:14 +00:00
pajlada 277ef4b2e3
Fix crash when moving splits across windows and closing parent tab (#2259) 2020-12-06 15:34:40 +01:00
fanway bf4c9cebb1
Use display/localized names in tab and split titles (#2189) 2020-12-06 14:07:33 +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
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 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
fourtf 28a0e4c63c Closes #1909 2020-08-23 17:04:17 +02:00
fourtf 46361ea859 some more stuff 2020-08-13 20:20:24 +02:00
fourtf 2c74e98023 edited split dropdown 2020-08-13 18:02:23 +02:00
fourtf 6052846bc3 added checks to mitigate floating point crashes 2020-04-19 21:05:40 +02:00
fourtf 9874bd779a formatted all files with clang 9 2019-09-26 00:51:05 +02:00
23rd 53640a9097 Fixed display of text message in empty tabs for Retina screen. 2019-04-27 14:19:03 +03:00
ckath 9ca4befd9b Save chat moderation state in splits 2019-03-24 15:38:09 +01:00
fourtf cf26f10b80 initial appbase integration 2018-11-21 21:37:41 +01:00
fourtf e259b9e39f added brace wrapping after if and for 2018-10-21 13:43:02 +02:00
hemirt 54c1efe531 correct getSplitCount 2018-10-20 11:07:15 +02:00
fourtf d14a4df9e3 opening links in private browsing mode (windows)
tested on firefox, chrome and internet explorer
2018-10-16 16:07:59 +02:00
Rasmus Karlsson 49449379da Added a Live status indicator to tabs 2018-10-13 14:20:06 +02:00
Rasmus Karlsson a947bf74c8 Occasionally save window/split/tab layout
The window layout is only saved if something has been changed.
When something relevant to the window layout is changed, a save is
queued to run after 10 seconds.
If within those 10 seconds, another thing is changed, that timer is
reset and will run after 10 seconds again.

Events that cause the save to be queued up:
 - Tab created
 - Tab removed
 - Tab moved
 - Tab name changed
 - Split created
 - Split removed
 - Split moved
 - Split channel changed
 - Split resized
 - Window moved
 - Window resized

What currently does not trigger the save to be queued up:
 - Active tab changed
2018-10-07 16:27:40 +00:00
Rasmus Karlsson a2fb4ca104 reformat 2018-09-30 16:55:41 +00:00
23rd 9a6650b56c Added button in menu to join to channel. (#724) 2018-09-21 20:35:14 +02:00
fourtf 1d16c0cf77 fixed crasherino 2018-09-04 22:05:27 +02:00
fourtf 1d682c4a93 added add split button 2018-09-04 21:39:54 +02:00
fourtf 44f5a15da3 turning a lot of includes into forward declares 2018-08-11 22:23:06 +02:00
fourtf 878daf6eee added link to license 2018-08-09 16:44:04 +02:00
fourtf cb235ef532 fixed ocd inducing 1 pixel offsets 2018-08-09 16:20:09 +02:00
fourtf bdfe24035b fixed rectangle being off by 1 pixel in split container 2018-08-08 19:42:14 +02:00
fourtf 7a9af4ae84 moved menu code to ripple effect button 2018-08-07 23:46:00 +02:00
fourtf e1b8faacc9 added increased size of drag and drop regions 2018-08-07 09:45:10 +02:00
fourtf f71ff08e68 changed to 80 max column 2018-08-06 21:17:03 +02:00
fourtf c2e2dfb577 this commit is too big 2018-08-02 14:23:27 +02:00
fourtf 280bb4cf8e Renamed private members 2018-07-06 19:24:35 +02:00
fourtf b639604a47 refactored BaseWidget 2018-07-06 17:11:37 +02:00
fourtf 3303de18cd added double click to resize handle 2018-07-04 19:52:11 +02:00
Rasmus Karlsson e757a6504b Run clang-format-all.sh 2018-07-03 15:20:00 +00:00
fourtf 86347dc63e renamed Themes to Theme 2018-06-28 20:03:04 +02:00
fourtf 2df142bd50 renamed *Manager files 2018-06-28 19:46:45 +02:00
fourtf 5604ae6a67 removed functions from SettingsManager that shouldn't be there 2018-06-28 19:38:57 +02:00
fourtf 08e552f5f6 ran clang-format on all files 2018-06-26 17:20:03 +02:00
fourtf 54eb07e116 removed namespaces 2018-06-26 17:06:17 +02:00
fourtf 2df0566492 removed namespaces 2018-06-26 16:37:59 +02:00