diff options
| author | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2022-04-12 16:44:18 +0200 |
|---|---|---|
| committer | vaxerski <43317083+vaxerski@users.noreply.github.com> | 2022-04-12 16:44:18 +0200 |
| commit | b6a93b2f0383fc8f084c7757f0f67b8c0ebeccc7 (patch) | |
| tree | 9da15dc91a16ddbbb9c32161eda96c2be4073131 /src/layout/DwindleLayout.hpp | |
| parent | 8197fded02f34e76527c0bc17cc69e4fea3cdda4 (diff) | |
Added window grouping for dwindle
furthermore, added LayoutRenderHints.
Diffstat (limited to 'src/layout/DwindleLayout.hpp')
| -rw-r--r-- | src/layout/DwindleLayout.hpp | 10 |
1 files changed, 10 insertions, 0 deletions
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 <list> +#include <deque> class CHyprDwindleLayout; @@ -13,6 +14,11 @@ struct SDwindleNodeData { std::array<SDwindleNodeData*, 2> children = { nullptr, nullptr }; + bool isGroup = false; + int groupMemberActive = 0; + std::deque<SDwindleNodeData*> groupMembers; + SDwindleNodeData* pGroupParent = nullptr; + Vector2D position; Vector2D size; @@ -26,6 +32,7 @@ struct SDwindleNodeData { } void recalcSizePosRecursive(); + void getAllChildrenRecursive(std::deque<SDwindleNodeData*>*); 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: |
