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/IHyprLayout.hpp | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'src/layout/IHyprLayout.hpp') diff --git a/src/layout/IHyprLayout.hpp b/src/layout/IHyprLayout.hpp index 3e85cc24..16414895 100644 --- a/src/layout/IHyprLayout.hpp +++ b/src/layout/IHyprLayout.hpp @@ -3,6 +3,11 @@ #include "../defines.hpp" #include "../Window.hpp" +struct SWindowRenderLayoutHints { + bool isBorderColor = false; + CColor borderColor; +}; + interface IHyprLayout { public: @@ -61,4 +66,22 @@ public: */ virtual void fullscreenRequestForWindow(CWindow*) = 0; + /* + Called when the user requests a window to be made into a group, + or when they want the group to be released. + Everything else is free to interpret by the layout. + */ + virtual void toggleWindowGroup(CWindow*) = 0; + + /* + Called when the user requests a group window switch + */ + virtual void switchGroupWindow(CWindow*) = 0; + + /* + Required to be handled, but may return just SWindowRenderLayoutHints() + Called when the renderer requests any special draw flags for + a specific window, e.g. border color for groups. + */ + virtual SWindowRenderLayoutHints requestRenderHints(CWindow*) = 0; }; \ No newline at end of file -- cgit v1.2.3