1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 01:27:34 +00:00

WindowServer: Rename GUI_Foo to WSAPI_Foo.

This commit is contained in:
Andreas Kling 2019-02-15 09:17:18 +01:00
parent a54cd84c59
commit 29c49356e3
16 changed files with 204 additions and 204 deletions

View file

@ -112,7 +112,7 @@ void GEventLoop::post_event(GObject* receiver, OwnPtr<GEvent>&& event)
m_queued_events.append({ receiver, move(event) });
}
void GEventLoop::handle_paint_event(const GUI_ServerMessage& event, GWindow& window)
void GEventLoop::handle_paint_event(const WSAPI_ServerMessage& event, GWindow& window)
{
#ifdef GEVENTLOOP_DEBUG
dbgprintf("WID=%x Paint [%d,%d %dx%d]\n", event.window_id, event.paint.rect.location.x, event.paint.rect.location.y, event.paint.rect.size.width, event.paint.rect.size.height);
@ -120,25 +120,25 @@ void GEventLoop::handle_paint_event(const GUI_ServerMessage& event, GWindow& win
post_event(&window, make<GPaintEvent>(event.paint.rect));
}
void GEventLoop::handle_window_activation_event(const GUI_ServerMessage& event, GWindow& window)
void GEventLoop::handle_window_activation_event(const WSAPI_ServerMessage& event, GWindow& window)
{
#ifdef GEVENTLOOP_DEBUG
dbgprintf("WID=%x WindowActivation\n", event.window_id);
#endif
post_event(&window, make<GEvent>(event.type == GUI_ServerMessage::Type::WindowActivated ? GEvent::WindowBecameActive : GEvent::WindowBecameInactive));
post_event(&window, make<GEvent>(event.type == WSAPI_ServerMessage::Type::WindowActivated ? GEvent::WindowBecameActive : GEvent::WindowBecameInactive));
}
void GEventLoop::handle_window_close_request_event(const GUI_ServerMessage&, GWindow& window)
void GEventLoop::handle_window_close_request_event(const WSAPI_ServerMessage&, GWindow& window)
{
post_event(&window, make<GEvent>(GEvent::WindowCloseRequest));
}
void GEventLoop::handle_key_event(const GUI_ServerMessage& event, GWindow& window)
void GEventLoop::handle_key_event(const WSAPI_ServerMessage& event, GWindow& window)
{
#ifdef GEVENTLOOP_DEBUG
dbgprintf("WID=%x KeyEvent character=0x%b\n", event.window_id, event.key.character);
#endif
auto key_event = make<GKeyEvent>(event.type == GUI_ServerMessage::Type::KeyDown ? GEvent::KeyDown : GEvent::KeyUp, event.key.key);
auto key_event = make<GKeyEvent>(event.type == WSAPI_ServerMessage::Type::KeyDown ? GEvent::KeyDown : GEvent::KeyUp, event.key.key);
key_event->m_alt = event.key.alt;
key_event->m_ctrl = event.key.ctrl;
key_event->m_shift = event.key.shift;
@ -147,32 +147,32 @@ void GEventLoop::handle_key_event(const GUI_ServerMessage& event, GWindow& windo
post_event(&window, move(key_event));
}
void GEventLoop::handle_mouse_event(const GUI_ServerMessage& event, GWindow& window)
void GEventLoop::handle_mouse_event(const WSAPI_ServerMessage& event, GWindow& window)
{
#ifdef GEVENTLOOP_DEBUG
dbgprintf("WID=%x MouseEvent %d,%d\n", event.window_id, event.mouse.position.x, event.mouse.position.y);
#endif
GMouseEvent::Type type;
switch (event.type) {
case GUI_ServerMessage::Type::MouseMove: type = GEvent::MouseMove; break;
case GUI_ServerMessage::Type::MouseUp: type = GEvent::MouseUp; break;
case GUI_ServerMessage::Type::MouseDown: type = GEvent::MouseDown; break;
case WSAPI_ServerMessage::Type::MouseMove: type = GEvent::MouseMove; break;
case WSAPI_ServerMessage::Type::MouseUp: type = GEvent::MouseUp; break;
case WSAPI_ServerMessage::Type::MouseDown: type = GEvent::MouseDown; break;
default: ASSERT_NOT_REACHED(); break;
}
GMouseButton button { GMouseButton::None };
switch (event.mouse.button) {
case GUI_MouseButton::NoButton: button = GMouseButton::None; break;
case GUI_MouseButton::Left: button = GMouseButton::Left; break;
case GUI_MouseButton::Right: button = GMouseButton::Right; break;
case GUI_MouseButton::Middle: button = GMouseButton::Middle; break;
case WSAPI_MouseButton::NoButton: button = GMouseButton::None; break;
case WSAPI_MouseButton::Left: button = GMouseButton::Left; break;
case WSAPI_MouseButton::Right: button = GMouseButton::Right; break;
case WSAPI_MouseButton::Middle: button = GMouseButton::Middle; break;
default: ASSERT_NOT_REACHED(); break;
}
post_event(&window, make<GMouseEvent>(type, event.mouse.position, event.mouse.buttons, button));
}
void GEventLoop::handle_menu_event(const GUI_ServerMessage& event)
void GEventLoop::handle_menu_event(const WSAPI_ServerMessage& event)
{
if (event.type == GUI_ServerMessage::Type::MenuItemActivated) {
if (event.type == WSAPI_ServerMessage::Type::MenuItemActivated) {
auto* menu = GMenu::from_menu_id(event.menu.menu_id);
if (!menu) {
dbgprintf("GEventLoop received event for invalid window ID %d\n", event.window_id);
@ -253,7 +253,7 @@ void GEventLoop::wait_for_event()
auto unprocessed_events = move(m_unprocessed_messages);
for (auto& event : unprocessed_events) {
if (event.type == GUI_ServerMessage::Error) {
if (event.type == WSAPI_ServerMessage::Error) {
dbgprintf("GEventLoop got error message from server\n");
dbgprintf(" - error message: %s\n", String(event.text, event.text_length).characters());
exit(1);
@ -261,7 +261,7 @@ void GEventLoop::wait_for_event()
}
switch (event.type) {
case GUI_ServerMessage::MenuItemActivated:
case WSAPI_ServerMessage::MenuItemActivated:
handle_menu_event(event);
continue;
default:
@ -274,23 +274,23 @@ void GEventLoop::wait_for_event()
continue;
}
switch (event.type) {
case GUI_ServerMessage::Type::Paint:
case WSAPI_ServerMessage::Type::Paint:
handle_paint_event(event, *window);
break;
case GUI_ServerMessage::Type::MouseDown:
case GUI_ServerMessage::Type::MouseUp:
case GUI_ServerMessage::Type::MouseMove:
case WSAPI_ServerMessage::Type::MouseDown:
case WSAPI_ServerMessage::Type::MouseUp:
case WSAPI_ServerMessage::Type::MouseMove:
handle_mouse_event(event, *window);
break;
case GUI_ServerMessage::Type::WindowActivated:
case GUI_ServerMessage::Type::WindowDeactivated:
case WSAPI_ServerMessage::Type::WindowActivated:
case WSAPI_ServerMessage::Type::WindowDeactivated:
handle_window_activation_event(event, *window);
break;
case GUI_ServerMessage::Type::WindowCloseRequest:
case WSAPI_ServerMessage::Type::WindowCloseRequest:
handle_window_close_request_event(event, *window);
break;
case GUI_ServerMessage::Type::KeyDown:
case GUI_ServerMessage::Type::KeyUp:
case WSAPI_ServerMessage::Type::KeyDown:
case WSAPI_ServerMessage::Type::KeyUp:
handle_key_event(event, *window);
break;
default:
@ -302,8 +302,8 @@ void GEventLoop::wait_for_event()
bool GEventLoop::drain_messages_from_server()
{
for (;;) {
GUI_ServerMessage message;
ssize_t nread = read(m_event_fd, &message, sizeof(GUI_ServerMessage));
WSAPI_ServerMessage message;
ssize_t nread = read(m_event_fd, &message, sizeof(WSAPI_ServerMessage));
if (nread < 0) {
perror("read");
exit(1);
@ -376,13 +376,13 @@ void GEventLoop::unregister_notifier(Badge<GNotifier>, GNotifier& notifier)
m_notifiers.remove(&notifier);
}
bool GEventLoop::post_message_to_server(const GUI_ClientMessage& message)
bool GEventLoop::post_message_to_server(const WSAPI_ClientMessage& message)
{
int nwritten = write(m_event_fd, &message, sizeof(GUI_ClientMessage));
return nwritten == sizeof(GUI_ClientMessage);
int nwritten = write(m_event_fd, &message, sizeof(WSAPI_ClientMessage));
return nwritten == sizeof(WSAPI_ClientMessage);
}
bool GEventLoop::wait_for_specific_event(GUI_ServerMessage::Type type, GUI_ServerMessage& event)
bool GEventLoop::wait_for_specific_event(WSAPI_ServerMessage::Type type, WSAPI_ServerMessage& event)
{
for (;;) {
fd_set rfds;
@ -404,12 +404,12 @@ bool GEventLoop::wait_for_specific_event(GUI_ServerMessage::Type type, GUI_Serve
}
}
GUI_ServerMessage GEventLoop::sync_request(const GUI_ClientMessage& request, GUI_ServerMessage::Type response_type)
WSAPI_ServerMessage GEventLoop::sync_request(const WSAPI_ClientMessage& request, WSAPI_ServerMessage::Type response_type)
{
bool success = post_message_to_server(request);
ASSERT(success);
GUI_ServerMessage response;
WSAPI_ServerMessage response;
success = GEventLoop::main().wait_for_specific_event(response_type, response);
ASSERT(success);
return response;

View file

@ -34,20 +34,20 @@ public:
void exit(int);
bool post_message_to_server(const GUI_ClientMessage&);
bool wait_for_specific_event(GUI_ServerMessage::Type, GUI_ServerMessage&);
bool post_message_to_server(const WSAPI_ClientMessage&);
bool wait_for_specific_event(WSAPI_ServerMessage::Type, WSAPI_ServerMessage&);
GUI_ServerMessage sync_request(const GUI_ClientMessage& request, GUI_ServerMessage::Type response_type);
WSAPI_ServerMessage sync_request(const WSAPI_ClientMessage& request, WSAPI_ServerMessage::Type response_type);
private:
void wait_for_event();
bool drain_messages_from_server();
void handle_paint_event(const GUI_ServerMessage&, GWindow&);
void handle_mouse_event(const GUI_ServerMessage&, GWindow&);
void handle_key_event(const GUI_ServerMessage&, GWindow&);
void handle_window_activation_event(const GUI_ServerMessage&, GWindow&);
void handle_window_close_request_event(const GUI_ServerMessage&, GWindow&);
void handle_menu_event(const GUI_ServerMessage&);
void handle_paint_event(const WSAPI_ServerMessage&, GWindow&);
void handle_mouse_event(const WSAPI_ServerMessage&, GWindow&);
void handle_key_event(const WSAPI_ServerMessage&, GWindow&);
void handle_window_activation_event(const WSAPI_ServerMessage&, GWindow&);
void handle_window_close_request_event(const WSAPI_ServerMessage&, GWindow&);
void handle_menu_event(const WSAPI_ServerMessage&);
void get_next_timer_expiration(timeval&);
struct QueuedEvent {
@ -56,7 +56,7 @@ private:
};
Vector<QueuedEvent> m_queued_events;
Vector<GUI_ServerMessage> m_unprocessed_messages;
Vector<WSAPI_ServerMessage> m_unprocessed_messages;
int m_event_fd { -1 };
bool m_running { false };

View file

@ -41,34 +41,34 @@ void GMenu::add_separator()
int GMenu::realize_menu()
{
GUI_ClientMessage request;
request.type = GUI_ClientMessage::Type::CreateMenu;
WSAPI_ClientMessage request;
request.type = WSAPI_ClientMessage::Type::CreateMenu;
ASSERT(m_name.length() < sizeof(request.text));
strcpy(request.text, m_name.characters());
request.text_length = m_name.length();
auto response = GEventLoop::main().sync_request(request, GUI_ServerMessage::Type::DidCreateMenu);
auto response = GEventLoop::main().sync_request(request, WSAPI_ServerMessage::Type::DidCreateMenu);
m_menu_id = response.menu.menu_id;
ASSERT(m_menu_id > 0);
for (size_t i = 0; i < m_items.size(); ++i) {
auto& item = *m_items[i];
if (item.type() == GMenuItem::Separator) {
GUI_ClientMessage request;
request.type = GUI_ClientMessage::Type::AddMenuSeparator;
WSAPI_ClientMessage request;
request.type = WSAPI_ClientMessage::Type::AddMenuSeparator;
request.menu.menu_id = m_menu_id;
GEventLoop::main().sync_request(request, GUI_ServerMessage::Type::DidAddMenuSeparator);
GEventLoop::main().sync_request(request, WSAPI_ServerMessage::Type::DidAddMenuSeparator);
continue;
}
if (item.type() == GMenuItem::Action) {
auto& action = *item.action();
GUI_ClientMessage request;
request.type = GUI_ClientMessage::Type::AddMenuItem;
WSAPI_ClientMessage request;
request.type = WSAPI_ClientMessage::Type::AddMenuItem;
request.menu.menu_id = m_menu_id;
request.menu.identifier = i;
ASSERT(action.text().length() < sizeof(request.text));
strcpy(request.text, action.text().characters());
request.text_length = action.text().length();
GEventLoop::main().sync_request(request, GUI_ServerMessage::Type::DidAddMenuItem);
GEventLoop::main().sync_request(request, WSAPI_ServerMessage::Type::DidAddMenuItem);
}
}
all_menus().set(m_menu_id, this);
@ -80,10 +80,10 @@ void GMenu::unrealize_menu()
if (!m_menu_id)
return;
all_menus().remove(m_menu_id);
GUI_ClientMessage request;
request.type = GUI_ClientMessage::Type::DestroyMenu;
WSAPI_ClientMessage request;
request.type = WSAPI_ClientMessage::Type::DestroyMenu;
request.menu.menu_id = m_menu_id;
GEventLoop::main().sync_request(request, GUI_ServerMessage::Type::DidDestroyMenu);
GEventLoop::main().sync_request(request, WSAPI_ServerMessage::Type::DidDestroyMenu);
m_menu_id = 0;
}

View file

@ -17,9 +17,9 @@ void GMenuBar::add_menu(OwnPtr<GMenu>&& menu)
int GMenuBar::realize_menubar()
{
GUI_ClientMessage request;
request.type = GUI_ClientMessage::Type::CreateMenubar;
GUI_ServerMessage response = GEventLoop::main().sync_request(request, GUI_ServerMessage::Type::DidCreateMenubar);
WSAPI_ClientMessage request;
request.type = WSAPI_ClientMessage::Type::CreateMenubar;
WSAPI_ServerMessage response = GEventLoop::main().sync_request(request, WSAPI_ServerMessage::Type::DidCreateMenubar);
return response.menu.menubar_id;
}
@ -27,10 +27,10 @@ void GMenuBar::unrealize_menubar()
{
if (!m_menubar_id)
return;
GUI_ClientMessage request;
request.type = GUI_ClientMessage::Type::DestroyMenubar;
WSAPI_ClientMessage request;
request.type = WSAPI_ClientMessage::Type::DestroyMenubar;
request.menu.menubar_id = m_menubar_id;
GEventLoop::main().sync_request(request, GUI_ServerMessage::Type::DidDestroyMenubar);
GEventLoop::main().sync_request(request, WSAPI_ServerMessage::Type::DidDestroyMenubar);
m_menubar_id = 0;
}
@ -43,16 +43,16 @@ void GMenuBar::notify_added_to_application(Badge<GApplication>)
ASSERT(menu);
int menu_id = menu->realize_menu();
ASSERT(menu_id > 0);
GUI_ClientMessage request;
request.type = GUI_ClientMessage::Type::AddMenuToMenubar;
WSAPI_ClientMessage request;
request.type = WSAPI_ClientMessage::Type::AddMenuToMenubar;
request.menu.menubar_id = m_menubar_id;
request.menu.menu_id = menu_id;
GEventLoop::main().sync_request(request, GUI_ServerMessage::Type::DidAddMenuToMenubar);
GEventLoop::main().sync_request(request, WSAPI_ServerMessage::Type::DidAddMenuToMenubar);
}
GUI_ClientMessage request;
request.type = GUI_ClientMessage::Type::SetApplicationMenubar;
WSAPI_ClientMessage request;
request.type = WSAPI_ClientMessage::Type::SetApplicationMenubar;
request.menu.menubar_id = m_menubar_id;
GEventLoop::main().sync_request(request, GUI_ServerMessage::Type::DidSetApplicationMenubar);
GEventLoop::main().sync_request(request, WSAPI_ServerMessage::Type::DidSetApplicationMenubar);
}
void GMenuBar::notify_removed_from_application(Badge<GApplication>)

View file

@ -55,14 +55,14 @@ void GWindow::show()
if (m_window_id)
return;
GUI_ClientMessage request;
request.type = GUI_ClientMessage::Type::CreateWindow;
WSAPI_ClientMessage request;
request.type = WSAPI_ClientMessage::Type::CreateWindow;
request.window_id = m_window_id;
request.window.rect = m_rect_when_windowless;
ASSERT(m_title_when_windowless.length() < sizeof(request.text));
strcpy(request.text, m_title_when_windowless.characters());
request.text_length = m_title_when_windowless.length();
auto response = GEventLoop::main().sync_request(request, GUI_ServerMessage::Type::DidCreateWindow);
auto response = GEventLoop::main().sync_request(request, WSAPI_ServerMessage::Type::DidCreateWindow);
m_window_id = response.window_id;
windows().set(m_window_id, this);
@ -74,8 +74,8 @@ void GWindow::hide()
if (!m_window_id)
return;
windows().remove(m_window_id);
GUI_ClientMessage request;
request.type = GUI_ClientMessage::Type::DestroyWindow;
WSAPI_ClientMessage request;
request.type = WSAPI_ClientMessage::Type::DestroyWindow;
request.window_id = m_window_id;
ASSERT(m_title_when_windowless.length() < sizeof(request.text));
strcpy(request.text, m_title_when_windowless.characters());
@ -89,8 +89,8 @@ void GWindow::set_title(String&& title)
if (!m_window_id)
return;
GUI_ClientMessage request;
request.type = GUI_ClientMessage::Type::SetWindowTitle;
WSAPI_ClientMessage request;
request.type = WSAPI_ClientMessage::Type::SetWindowTitle;
request.window_id = m_window_id;
ASSERT(m_title_when_windowless.length() < sizeof(request.text));
strcpy(request.text, m_title_when_windowless.characters());
@ -103,13 +103,13 @@ String GWindow::title() const
if (!m_window_id)
return m_title_when_windowless;
GUI_ClientMessage request;
request.type = GUI_ClientMessage::Type::GetWindowTitle;
WSAPI_ClientMessage request;
request.type = WSAPI_ClientMessage::Type::GetWindowTitle;
request.window_id = m_window_id;
ASSERT(m_title_when_windowless.length() < sizeof(request.text));
strcpy(request.text, m_title_when_windowless.characters());
request.text_length = m_title_when_windowless.length();
auto response = GEventLoop::main().sync_request(request, GUI_ServerMessage::Type::DidGetWindowTitle);
auto response = GEventLoop::main().sync_request(request, WSAPI_ServerMessage::Type::DidGetWindowTitle);
return String(response.text, response.text_length);
}
@ -118,10 +118,10 @@ Rect GWindow::rect() const
if (!m_window_id)
return m_rect_when_windowless;
GUI_ClientMessage request;
request.type = GUI_ClientMessage::Type::GetWindowRect;
WSAPI_ClientMessage request;
request.type = WSAPI_ClientMessage::Type::GetWindowRect;
request.window_id = m_window_id;
auto response = GEventLoop::main().sync_request(request, GUI_ServerMessage::Type::DidGetWindowRect);
auto response = GEventLoop::main().sync_request(request, WSAPI_ServerMessage::Type::DidGetWindowRect);
ASSERT(response.window_id == m_window_id);
return response.window.rect;
}
@ -131,8 +131,8 @@ void GWindow::set_rect(const Rect& a_rect)
m_rect_when_windowless = a_rect;
if (!m_window_id)
return;
GUI_ClientMessage request;
request.type = GUI_ClientMessage::Type::SetWindowRect;
WSAPI_ClientMessage request;
request.type = WSAPI_ClientMessage::Type::SetWindowRect;
request.window_id = m_window_id;
request.window.rect = a_rect;
GEventLoop::main().post_message_to_server(request);
@ -170,8 +170,8 @@ void GWindow::event(GEvent& event)
rect = m_main_widget->rect();
m_main_widget->event(*make<GPaintEvent>(rect));
if (m_window_id) {
GUI_ClientMessage message;
message.type = GUI_ClientMessage::Type::DidFinishPainting;
WSAPI_ClientMessage message;
message.type = WSAPI_ClientMessage::Type::DidFinishPainting;
message.window_id = m_window_id;
message.window.rect = rect;
GEventLoop::main().post_message_to_server(message);
@ -223,8 +223,8 @@ void GWindow::update(const Rect& a_rect)
}
m_pending_paint_event_rects.append(a_rect);
GUI_ClientMessage request;
request.type = GUI_ClientMessage::Type::InvalidateRect;
WSAPI_ClientMessage request;
request.type = WSAPI_ClientMessage::Type::InvalidateRect;
request.window_id = m_window_id;
request.window.rect = a_rect;
GEventLoop::main().post_message_to_server(request);
@ -272,8 +272,8 @@ void GWindow::set_global_cursor_tracking_widget(GWidget* widget)
return;
m_global_cursor_tracking_widget = widget ? widget->make_weak_ptr() : nullptr;
GUI_ClientMessage request;
request.type = GUI_ClientMessage::Type::SetGlobalCursorTracking;
WSAPI_ClientMessage request;
request.type = WSAPI_ClientMessage::Type::SetGlobalCursorTracking;
request.window_id = m_window_id;
request.value = widget != nullptr;
// FIXME: What if the cursor moves out of our interest range before the server can handle this?