LibGUI: Add query keymap request
This commit is contained in:
@@ -214,6 +214,8 @@ namespace LibGUI
|
||||
|
||||
QueryPointer,
|
||||
QueryPointerEvent,
|
||||
QueryKeymap,
|
||||
QueryKeymapEvent,
|
||||
};
|
||||
|
||||
struct PacketHeader
|
||||
@@ -310,6 +312,10 @@ namespace LibGUI
|
||||
QueryPointer
|
||||
);
|
||||
|
||||
DEFINE_PACKET(
|
||||
QueryKeymap
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
namespace EventPacket
|
||||
@@ -406,6 +412,15 @@ namespace LibGUI
|
||||
event_t, event
|
||||
);
|
||||
|
||||
DEFINE_PACKET_EXTRA(
|
||||
QueryKeymapEvent,
|
||||
struct event_t {
|
||||
uint16_t modifiers[4];
|
||||
uint32_t keymap[4][0x100];
|
||||
},
|
||||
event_t, event
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -64,6 +64,7 @@ namespace LibGUI
|
||||
void request_resize(uint32_t width, uint32_t height);
|
||||
|
||||
void query_cursor_position();
|
||||
void query_keymap();
|
||||
|
||||
uint32_t width() const { return m_width; }
|
||||
uint32_t height() const { return m_height; }
|
||||
@@ -83,6 +84,7 @@ namespace LibGUI
|
||||
void set_window_fullscreen_event_callback(BAN::Function<void(EventPacket::WindowFullscreenEvent::event_t)> callback) { m_window_fullscreen_event_callback = callback; }
|
||||
void set_window_move_event_callback(BAN::Function<void(EventPacket::WindowMoveEvent::event_t)> callback) { m_window_move_event_callback = callback; }
|
||||
void set_query_pointer_event_callback(BAN::Function<void(EventPacket::QueryPointerEvent::event_t)> callback) { m_query_pointer_event_callback = callback; }
|
||||
void set_query_keymap_event_callback(BAN::Function<void(EventPacket::QueryKeymapEvent::event_t)> callback) { m_query_keymap_event_callback = callback; }
|
||||
|
||||
int server_fd() const { return m_server_fd; }
|
||||
|
||||
@@ -132,6 +134,7 @@ namespace LibGUI
|
||||
BAN::Function<void(EventPacket::MouseMoveEvent::event_t)> m_mouse_move_event_callback;
|
||||
BAN::Function<void(EventPacket::MouseScrollEvent::event_t)> m_mouse_scroll_event_callback;
|
||||
BAN::Function<void(EventPacket::QueryPointerEvent::event_t)> m_query_pointer_event_callback;
|
||||
BAN::Function<void(EventPacket::QueryKeymapEvent::event_t)> m_query_keymap_event_callback;
|
||||
|
||||
size_t m_in_buffer_size { 0 };
|
||||
BAN::Array<uint8_t, 64 * 1024> m_in_buffer;
|
||||
|
||||
Reference in New Issue
Block a user