* Remove unused include util/Helpers.hpp * SplitContainer::setTag fix parameter naming * autofy/constify where possible * More const auto ptr magicifying * Make SplitNode::Type an enum class * Move QuickSwitcherPopup includes from header to source file * Remove unused DropRegion code * use empty() instead of size() == 0 * Add curly braces everywhere * Remove useless reinterpret_cast It was casting Node* to Node* * Clarify that the connect is QObject::connect * SplitContainer::setSelected fix parameter naming * Rename function variables to remove unneccesary underscore Also move addSpacing parameter out of the layout function * emplace_back where possible * Name parameters * Remove ineffective const from return type * Make node getters const * Flatten Node::releaseSplit * Rename in-function variable to match code style * [ACTUAL CODE CHANGE/MOVE] Move clamp logic to its own function * name params * applyFromDescriptorRecursively: rename node param to baseNode * [ACTUAL CODE CHANGE/MOVE] Remove the many overloads for append/insertSplit This utilizes the C++20 designed initializers aggregate initialization feature * Remove unused includes * [ACTUAL CODE CHANGE] Clean up dragging logic There's no need to keep a pointer around to which split is being dragged, it's already stored in the QDropEvent source() * UNRELATED .clang-tidy: Only suggest UPPER_CASE for constant global variables * Remove unused SplitContainer::getSplitCount function * Use std::max in Node's clamp function * Remove test code * DraggedSplit.hpp: remove unused include * Split `setDraggingSplit` into two functions, `startDraggingSplit` and `stopDraggingSplit`
Chatterino 2

Chatterino 2 is a chat client for Twitch.tv. The Chatterino 2 wiki can be found here. Contribution guidelines can be found here.
Download
Current releases are available at https://chatterino.com. Windows users can also install Chatterino from Chocolatey.
Nightly build
You can download the latest Chatterino 2 build over here
You might also need to install the VC++ Redistributables from Microsoft if you do not have it installed already.
If you still receive an error about MSVCR120.dll missing, then you should install the VC++ 2013 Restributable.
Building
To get source code with required submodules run:
git clone --recurse-submodules https://github.com/Chatterino/chatterino2.git
or
git clone https://github.com/Chatterino/chatterino2.git
cd chatterino2
git submodule update --init --recursive
Building on Windows with vcpkg
Code style
The code is formatted using clang format in Qt Creator. .clang-format contains the style file for clang format.
Get it automated with QT Creator + Beautifier + Clang Format
- Download LLVM: https://github.com/llvm/llvm-project/releases/download/llvmorg-15.0.5/LLVM-15.0.5-win64.exe
- During the installation, make sure to add it to your path
- In QT Creator, select
Help>About Plugins>C++>Beautifierto enable the plugin - Restart QT Creator
- Select
Tools>Options>Beautifier - Under
GeneralselectTool: ClangFormatand enableAutomatic Formatting on File Save - Under
Clang FormatselectUse predefined style: FileandFallback style: None
Qt creator should now format the documents when saving it.
Doxygen
Doxygen is used to generate project information daily and is available here.