mirror of
https://github.com/RGBCube/serenity
synced 2025-07-26 23:37:36 +00:00
LibGUI+WindowServer: Add a GResizeCorner widget.
This widget is automatically included in GStatusBar, but can be added in any other place, too. When clicked (with the left button), it initiates a window resize (using a WM request.) In this patch I also fixed up some issues with override cursors being cleared after the WindowServer finishes a drag or resize.
This commit is contained in:
parent
34c5db61aa
commit
ea9a39a9f2
19 changed files with 189 additions and 26 deletions
|
@ -62,6 +62,7 @@ public:
|
|||
APISetWindowOverrideCursorRequest,
|
||||
WMAPISetActiveWindowRequest,
|
||||
WMAPISetWindowMinimizedRequest,
|
||||
WMAPIStartWindowResizeRequest,
|
||||
APIPopupMenuRequest,
|
||||
APIDismissMenuRequest,
|
||||
__End_API_Client_Requests,
|
||||
|
@ -104,6 +105,23 @@ private:
|
|||
int m_client_id { 0 };
|
||||
};
|
||||
|
||||
class WSWMAPIStartWindowResizeRequest : public WSAPIClientRequest {
|
||||
public:
|
||||
WSWMAPIStartWindowResizeRequest(int client_id, int target_client_id, int target_window_id)
|
||||
: WSAPIClientRequest(WSEvent::WMAPIStartWindowResizeRequest, 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 WSWMAPISetActiveWindowRequest : public WSAPIClientRequest {
|
||||
public:
|
||||
WSWMAPISetActiveWindowRequest(int client_id, int target_client_id, int target_window_id)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue