From b6a93b2f0383fc8f084c7757f0f67b8c0ebeccc7 Mon Sep 17 00:00:00 2001 From: vaxerski <43317083+vaxerski@users.noreply.github.com> Date: Tue, 12 Apr 2022 16:44:18 +0200 Subject: Added window grouping for dwindle furthermore, added LayoutRenderHints. --- src/layout/DwindleLayout.hpp | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src/layout/DwindleLayout.hpp') diff --git a/src/layout/DwindleLayout.hpp b/src/layout/DwindleLayout.hpp index 8d849bcf..47da6cd3 100644 --- a/src/layout/DwindleLayout.hpp +++ b/src/layout/DwindleLayout.hpp @@ -2,6 +2,7 @@ #include "IHyprLayout.hpp" #include +#include class CHyprDwindleLayout; @@ -13,6 +14,11 @@ struct SDwindleNodeData { std::array children = { nullptr, nullptr }; + bool isGroup = false; + int groupMemberActive = 0; + std::deque groupMembers; + SDwindleNodeData* pGroupParent = nullptr; + Vector2D position; Vector2D size; @@ -26,6 +32,7 @@ struct SDwindleNodeData { } void recalcSizePosRecursive(); + void getAllChildrenRecursive(std::deque*); CHyprDwindleLayout* layout = nullptr; }; @@ -41,6 +48,9 @@ public: virtual void onMouseMove(const Vector2D&); virtual void onWindowCreatedFloating(CWindow*); virtual void fullscreenRequestForWindow(CWindow*); + virtual void toggleWindowGroup(CWindow*); + virtual void switchGroupWindow(CWindow*); + virtual SWindowRenderLayoutHints requestRenderHints(CWindow*); private: -- cgit v1.2.3