diff options
| author | vaxerski <vaxry@vaxry.net> | 2022-12-31 16:23:56 +0100 |
|---|---|---|
| committer | vaxerski <vaxry@vaxry.net> | 2022-12-31 16:23:56 +0100 |
| commit | 7f595ed0cac2ffa154132e992c7e4902ca819a14 (patch) | |
| tree | 192ea812d81aa8d2568d8dff70a5c697c1a2797b /src/layout/IHyprLayout.hpp | |
| parent | a91d0a374a6e0637da8844d5c2f905c4d661adf1 (diff) | |
support gradients in dwindle group colors
Diffstat (limited to 'src/layout/IHyprLayout.hpp')
| -rw-r--r-- | src/layout/IHyprLayout.hpp | 54 |
1 files changed, 27 insertions, 27 deletions
diff --git a/src/layout/IHyprLayout.hpp b/src/layout/IHyprLayout.hpp index 1be26d2b..214a4927 100644 --- a/src/layout/IHyprLayout.hpp +++ b/src/layout/IHyprLayout.hpp @@ -5,8 +5,8 @@ #include <any> struct SWindowRenderLayoutHints { - bool isBorderColor = false; - CColor borderColor; + bool isBorderGradient = false; + CGradientValueData* borderGradient; }; struct SLayoutMessageHeader { @@ -17,89 +17,89 @@ enum eFullscreenMode : uint8_t; interface IHyprLayout { public: - virtual ~IHyprLayout() = 0; - virtual void onEnable() = 0; - virtual void onDisable() = 0; + virtual ~IHyprLayout() = 0; + virtual void onEnable() = 0; + virtual void onDisable() = 0; /* Called when a window is created (mapped) The layout HAS TO set the goal pos and size (anim mgr will use it) If !animationinprogress, then the anim mgr will not apply an anim. */ - virtual void onWindowCreated(CWindow*); - virtual void onWindowCreatedTiling(CWindow*) = 0; - virtual void onWindowCreatedFloating(CWindow*); + virtual void onWindowCreated(CWindow*); + virtual void onWindowCreatedTiling(CWindow*) = 0; + virtual void onWindowCreatedFloating(CWindow*); /* Return tiled status */ - virtual bool isWindowTiled(CWindow*) = 0; + virtual bool isWindowTiled(CWindow*) = 0; /* Called when a window is removed (unmapped) */ - virtual void onWindowRemoved(CWindow*); - virtual void onWindowRemovedTiling(CWindow*) = 0; - virtual void onWindowRemovedFloating(CWindow*); + virtual void onWindowRemoved(CWindow*); + virtual void onWindowRemovedTiling(CWindow*) = 0; + virtual void onWindowRemovedFloating(CWindow*); /* Called when the monitor requires a layout recalculation this usually means reserved area changes */ - virtual void recalculateMonitor(const int&) = 0; + virtual void recalculateMonitor(const int&) = 0; /* Called when the compositor requests a window to be recalculated, e.g. when pseudo is toggled. */ - virtual void recalculateWindow(CWindow*) = 0; + virtual void recalculateWindow(CWindow*) = 0; /* Called when a window is requested to be floated */ - virtual void changeWindowFloatingMode(CWindow*); + virtual void changeWindowFloatingMode(CWindow*); /* Called when a window is clicked on, beginning a drag this might be a resize, move, whatever the layout defines it as. */ - virtual void onBeginDragWindow(); + virtual void onBeginDragWindow(); /* Called when a user requests a resize of the current window by a vec Vector2D holds pixel values Optional pWindow for a specific window */ - virtual void resizeActiveWindow(const Vector2D&, CWindow* pWindow = nullptr) = 0; + virtual void resizeActiveWindow(const Vector2D&, CWindow* pWindow = nullptr) = 0; /* Called when a user requests a move of the current window by a vec Vector2D holds pixel values Optional pWindow for a specific window */ - virtual void moveActiveWindow(const Vector2D&, CWindow* pWindow = nullptr); + virtual void moveActiveWindow(const Vector2D&, CWindow* pWindow = nullptr); /* Called when a window is ended being dragged (mouse up) */ - virtual void onEndDragWindow(); + virtual void onEndDragWindow(); /* Called whenever the mouse moves, should the layout want to do anything with it. Useful for dragging. */ - virtual void onMouseMove(const Vector2D&); + virtual void onMouseMove(const Vector2D&); /* Called when a window / the user requests to toggle the fullscreen state of a window The layout sets all the fullscreen flags. It can either accept or ignore. */ - virtual void fullscreenRequestForWindow(CWindow*, eFullscreenMode, bool) = 0; + virtual void fullscreenRequestForWindow(CWindow*, eFullscreenMode, bool) = 0; /* Called when a dispatcher requests a custom message The layout is free to ignore. std::any is the reply. Can be empty. */ - virtual std::any layoutMessage(SLayoutMessageHeader, std::string) = 0; + virtual std::any layoutMessage(SLayoutMessageHeader, std::string) = 0; /* Required to be handled, but may return just SWindowRenderLayoutHints() @@ -112,28 +112,28 @@ interface IHyprLayout { Called when the user requests two windows to be swapped places. The layout is free to ignore. */ - virtual void switchWindows(CWindow*, CWindow*) = 0; + virtual void switchWindows(CWindow*, CWindow*) = 0; /* Called when the user requests to change the splitratio by or to X on a window */ - virtual void alterSplitRatio(CWindow*, float, bool exact = false) = 0; + virtual void alterSplitRatio(CWindow*, float, bool exact = false) = 0; /* Called when something wants the current layout's name */ - virtual std::string getLayoutName() = 0; + virtual std::string getLayoutName() = 0; /* Called for getting the next candidate for a focus */ - virtual CWindow* getNextWindowCandidate(CWindow*); + virtual CWindow* getNextWindowCandidate(CWindow*); /* Internal: called when window focus changes */ - virtual void onWindowFocusChange(CWindow*); + virtual void onWindowFocusChange(CWindow*); private: Vector2D m_vBeginDragXY; |
