LibGUI/WindowServer: Implement window showing/hiding
This commit is contained in:
@@ -172,6 +172,7 @@ namespace LibGUI
|
||||
DestroyWindowEvent,
|
||||
CloseWindowEvent,
|
||||
ResizeWindowEvent,
|
||||
WindowShownEvent,
|
||||
KeyEvent,
|
||||
MouseButtonEvent,
|
||||
MouseMoveEvent,
|
||||
@@ -189,6 +190,7 @@ namespace LibGUI
|
||||
bool rounded_corners;
|
||||
bool alpha_channel;
|
||||
bool resizable;
|
||||
bool shown;
|
||||
};
|
||||
|
||||
DEFINE_PACKET(
|
||||
@@ -271,6 +273,14 @@ namespace LibGUI
|
||||
long, smo_key
|
||||
);
|
||||
|
||||
DEFINE_PACKET_EXTRA(
|
||||
WindowShownEvent,
|
||||
struct event_t {
|
||||
bool shown;
|
||||
},
|
||||
event_t, event
|
||||
);
|
||||
|
||||
DEFINE_PACKET_EXTRA(
|
||||
KeyEvent,
|
||||
using event_t = LibInput::KeyEvent,
|
||||
|
||||
@@ -24,6 +24,7 @@ namespace LibGUI
|
||||
.rounded_corners = true,
|
||||
.alpha_channel = false,
|
||||
.resizable = false,
|
||||
.shown = true,
|
||||
};
|
||||
|
||||
public:
|
||||
@@ -66,6 +67,7 @@ namespace LibGUI
|
||||
void set_mouse_button_event_callback(BAN::Function<void(EventPacket::MouseButtonEvent::event_t)> callback) { m_mouse_button_event_callback = callback; }
|
||||
void set_mouse_move_event_callback(BAN::Function<void(EventPacket::MouseMoveEvent::event_t)> callback) { m_mouse_move_event_callback = callback; }
|
||||
void set_mouse_scroll_event_callback(BAN::Function<void(EventPacket::MouseScrollEvent::event_t)> callback) { m_mouse_scroll_event_callback = callback; }
|
||||
void set_window_shown_event_callback(BAN::Function<void(EventPacket::WindowShownEvent::event_t)> callback) { m_window_shown_event_callback = callback; }
|
||||
|
||||
int server_fd() const { return m_server_fd; }
|
||||
|
||||
@@ -96,6 +98,7 @@ namespace LibGUI
|
||||
BAN::Function<void()> m_socket_error_callback;
|
||||
BAN::Function<void()> m_close_window_event_callback;
|
||||
BAN::Function<void()> m_resize_window_event_callback;
|
||||
BAN::Function<void(EventPacket::WindowShownEvent::event_t)> m_window_shown_event_callback;
|
||||
BAN::Function<void(EventPacket::KeyEvent::event_t)> m_key_event_callback;
|
||||
BAN::Function<void(EventPacket::MouseButtonEvent::event_t)> m_mouse_button_event_callback;
|
||||
BAN::Function<void(EventPacket::MouseMoveEvent::event_t)> m_mouse_move_event_callback;
|
||||
|
||||
Reference in New Issue
Block a user