1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 17:27:35 +00:00

WindowServer: Windows tile when moved onto the edge of the screen

This commit is contained in:
Chyza 2020-01-01 17:24:14 +00:00 committed by Andreas Kling
parent 275bc0d587
commit 93ce1bb4a1
3 changed files with 58 additions and 4 deletions

View file

@ -21,6 +21,12 @@ enum WSWMEventMask {
WindowRemovals = 1 << 3,
};
enum class WindowTileType {
None = 0,
Left,
Right,
};
class WSWindow final : public CObject
, public InlineLinkedListNode<WSWindow> {
C_OBJECT(WSWindow)
@ -44,6 +50,9 @@ public:
bool is_fullscreen() const { return m_fullscreen; }
void set_fullscreen(bool);
WindowTileType tiled() const { return m_tiled; }
void set_tiled(WindowTileType);
bool is_occluded() const { return m_occluded; }
void set_occluded(bool);
@ -194,6 +203,8 @@ private:
bool m_minimized { false };
bool m_maximized { false };
bool m_fullscreen { false };
WindowTileType m_tiled { WindowTileType::None };
Rect m_untiled_rect;
bool m_occluded { false };
bool m_show_titlebar { true };
RefPtr<GraphicsBitmap> m_backing_store;