summaryrefslogtreecommitdiff
path: root/Servers/WindowServer/WSMessage.h
diff options
context:
space:
mode:
authorAndreas Kling <awesomekling@gmail.com>2019-04-04 14:38:53 +0200
committerAndreas Kling <awesomekling@gmail.com>2019-04-04 14:38:53 +0200
commitce7341be876b59ae2bd9a0c47542b496d8e8bee5 (patch)
treeb53bc7b96830da30c09a5bb351884a96831b4802 /Servers/WindowServer/WSMessage.h
parent8a50218190753891e29354fdca5896d7aadd5d16 (diff)
downloadserenity-ce7341be876b59ae2bd9a0c47542b496d8e8bee5.zip
WindowServer: Add WM_SetActiveWindow client request and use it in Taskbar.
This makes it possible for Taskbar to switch windows. :^)
Diffstat (limited to 'Servers/WindowServer/WSMessage.h')
-rw-r--r--Servers/WindowServer/WSMessage.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/Servers/WindowServer/WSMessage.h b/Servers/WindowServer/WSMessage.h
index 3911a48d6f..32bf2135ec 100644
--- a/Servers/WindowServer/WSMessage.h
+++ b/Servers/WindowServer/WSMessage.h
@@ -56,6 +56,7 @@ public:
APISetWallpaperRequest,
APIGetWallpaperRequest,
APISetWindowOverrideCursorRequest,
+ WMAPISetActiveWindowRequest,
__End_API_Client_Requests,
};
@@ -101,6 +102,23 @@ private:
int m_client_id { 0 };
};
+class WSWMAPISetActiveWindowRequest : public WSAPIClientRequest {
+public:
+ WSWMAPISetActiveWindowRequest(int client_id, int target_client_id, int target_window_id)
+ : WSAPIClientRequest(WSMessage::WMAPISetActiveWindowRequest, client_id)
+ , m_target_client_id(target_client_id)
+ , m_target_window_id(target_window_id)
+ {
+ }
+
+ int target_client_id() const { return m_target_client_id; }
+ int target_window_id() const { return m_target_window_id; }
+
+private:
+ int m_target_client_id;
+ int m_target_window_id;
+};
+
class WSAPISetGlobalCursorTrackingRequest : public WSAPIClientRequest {
public:
WSAPISetGlobalCursorTrackingRequest(int client_id, int window_id, bool value)