Diff
1diff --git a/src/Hy3Layout.cpp b/src/Hy3Layout.cpp
2index eb7cdb85db1227155185b7a9959b1f45ad8f6f6d..3e3b303870cdb5a5a61869d75ae2b985c85e16b2 100644
3--- a/src/Hy3Layout.cpp
4+++ b/src/Hy3Layout.cpp
5@@ -959,6 +959,26 @@ void Hy3Layout::fullscreenRequestForWindow(CWindow* window, eFullscreenMode full
6 }
7
8 std::any Hy3Layout::layoutMessage(SLayoutMessageHeader header, std::string content) {
9+ if (content == "togglesplit") {
10+ auto* node = this->getNodeFromWindow(header.pWindow);
11+ if (node != nullptr && node->parent != nullptr) {
12+ auto& layout = node->parent->data.as_group.layout;
13+
14+ switch (layout) {
15+ case Hy3GroupLayout::SplitH:
16+ layout = Hy3GroupLayout::SplitV;
17+ node->parent->recalcSizePosRecursive();
18+ break;
19+ case Hy3GroupLayout::SplitV:
20+ layout = Hy3GroupLayout::SplitH;
21+ node->parent->recalcSizePosRecursive();
22+ break;
23+ case Hy3GroupLayout::Tabbed:
24+ break;
25+ }
26+ }
27+ }
28+
29 return "";
30 }
31
32diff --git a/src/SelectionHook.cpp b/src/SelectionHook.cpp
33index 13592f9cc70e1384b6f73a90d99131c024b83c55..83ca2baa2aab392fededc4c23d983320d11fd41b 100644
34--- a/src/SelectionHook.cpp
35+++ b/src/SelectionHook.cpp
36@@ -35,7 +35,7 @@ void setup_selection_hook() {
37 return;
38 }
39
40- g_LastSelectionHook = HyprlandAPI::createFunctionHook(PHANDLE, decoUpdateCandidates[0].address, (void *)&hook_update_decos);
41+ g_LastSelectionHook = HyprlandAPI::createFunctionHook(PHANDLE, decoUpdateCandidates[0].address, (void*)&hook_update_decos);
42 }
43
44 g_LastSelectionHook->hook();