summaryrefslogtreecommitdiff
path: root/Userland/Services/WindowServer/Window.h
diff options
context:
space:
mode:
authorAndreas Kling <kling@serenityos.org>2021-06-27 17:07:31 +0200
committerAndreas Kling <kling@serenityos.org>2021-06-27 19:38:11 +0200
commit6a132d8672d9569543f40bb5a72d8457e7c01d10 (patch)
treef2d5684e301fa6f8eab40e948e8bc5587edfe8a4 /Userland/Services/WindowServer/Window.h
parent75f870a93f7bbed7b877fa5dd11466eff7c94928 (diff)
downloadserenity-6a132d8672d9569543f40bb5a72d8457e7c01d10.zip
WindowServer+LibGUI: Allow specifying a "launch origin" for new windows
The launch_origin_rect parameter to create_window() specifies where on screen the window was launched from. It's optional, but if you provide it, the new window will have a short wireframe animation from the origin to the initial window frame rect. GUI::Window looks for the "__libgui_launch_origin_rect" environment variable. Put your launch origin rect in there with the format "<x>,<y>,<width>,<height>" and the first GUI::Window shown by the app will use that as the launch origin rect. Also it looks pretty neat, although I'm sure we can improve it. :^)
Diffstat (limited to 'Userland/Services/WindowServer/Window.h')
-rw-r--r--Userland/Services/WindowServer/Window.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/Userland/Services/WindowServer/Window.h b/Userland/Services/WindowServer/Window.h
index 2eaa624985..2b94efa820 100644
--- a/Userland/Services/WindowServer/Window.h
+++ b/Userland/Services/WindowServer/Window.h
@@ -259,6 +259,8 @@ public:
bool has_taskbar_rect() const { return m_have_taskbar_rect; };
void start_minimize_animation();
+ void start_launch_animation(Gfx::IntRect const&);
+
Gfx::IntRect tiled_rect(Screen*, WindowTileType) const;
void recalculate_rect();