Added window grouping for dwindle

furthermore, added LayoutRenderHints.
This commit is contained in:
vaxerski
2022-04-12 16:44:18 +02:00
parent 8197fded02
commit b6a93b2f03
10 changed files with 221 additions and 18 deletions

View File

@@ -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;
};