Compare commits

..

6 commits

Author SHA1 Message Date
Lukas Brübach
bbbb2c484b [Build] Add PCH-aware ccache sloppiness config; format cmake/pch headers 2026-09-02 15:09:53 +02:00
Lukas Brübach
e21dc07cc8 [Build] Format qtwidgets precompiled header
clang-format include regrouping and a missing trailing newline.
2026-09-01 16:47:22 +02:00
Lukas Brübach
c6a5cf14b2 [Build] Add precompiled headers for Qt-backed executables
Reparsing QtCore/QtGui/QtWidgets/QtNetwork in ~460 client translation
units is the dominant compilation cost. Precompile the two common layers:
- qtcore_pch.h (Qt Core only; safe even for headless Servatrice)
- qtwidgets_pch.h (adds Gui/Widgets/Network; used by Cockatrice and Oracle)

target_precompile_headers() requires CMake 3.16, now the project minimum.
Estimated 30-50% faster client rebuilds.
2026-09-01 16:15:29 +02:00
Lukas Brübach
3fffda54a3 [Protocol] Remove duplicate event_game_state_changed.proto entry
The .proto file appeared twice in the PROTO_FILES list, causing protoc to
process it twice on every build. Keep a single entry.
2026-09-01 16:13:10 +02:00
Lukas Brübach
0a3df8dcd9 [Build] Use pipes for GCC/Clang compilation
Pass -pipe so GCC/Clang transfer intermediate representation between
compiler stages over pipes instead of temporary files, reducing build I/O.
2026-09-01 16:13:02 +02:00
Lukas Brübach
8359065a84 [Build] Bump cmake_minimum_required from 3.10 to 3.16
3.16 is already required by Qt6 (and enforced at find_package time).
This unlocks native target_precompile_headers(), better AUTOMOC/AUTORCC
handling, and qt6_finalize_project() without a version guard.
2026-09-01 15:48:06 +02:00

View file

@ -116,10 +116,9 @@ void CloseButton::paintEvent(QPaintEvent * /*event*/)
}
TabSupervisor::TabSupervisor(AbstractClient *_client, QMenu *tabsMenu, QWidget *parent)
: QTabWidget(parent), userInfo(nullptr), client(_client), tabsMenu(tabsMenu), tabHome(nullptr),
tabVisualDeckStorage(nullptr), tabServer(nullptr), tabAccount(nullptr), tabDeckStorage(nullptr),
tabReplays(nullptr), tabAdmin(nullptr), tabCardArtRules(nullptr), tabLog(nullptr), tabReport(nullptr),
tabModeration(nullptr), isLocalGame(false)
: QTabWidget(parent), userInfo(nullptr), client(_client), tabsMenu(tabsMenu), tabVisualDeckStorage(nullptr),
tabServer(nullptr), tabAccount(nullptr), tabDeckStorage(nullptr), tabReplays(nullptr), tabAdmin(nullptr),
tabLog(nullptr), tabReport(nullptr), tabModeration(nullptr), isLocalGame(false)
{
setElideMode(Qt::ElideRight);
setMovable(true);