mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-05-01 16:58:52 +00:00
Port LibGUI to use CIPCClientSideConnection
As a consequence, move to use an explicit handshake() method rather than calling virtuals from the constructor. This seemed to not bother AClientConnection, but LibGUI crashes (rightfully) because of it.
This commit is contained in:
parent
41bece0682
commit
2177594c96
Notes:
sideshowbarker
2024-07-19 13:12:24 +09:00
Author: https://github.com/rburchell
Commit: 2177594c96
Pull-request: https://github.com/SerenityOS/serenity/pull/327
Reviewed-by: https://github.com/awesomekling
18 changed files with 195 additions and 280 deletions
|
@ -52,7 +52,7 @@ void GMenu::popup(const Point& screen_position)
|
|||
request.type = WSAPI_ClientMessage::Type::PopupMenu;
|
||||
request.menu.menu_id = m_menu_id;
|
||||
request.menu.position = screen_position;
|
||||
GEventLoop::post_message_to_server(request);
|
||||
GEventLoop::current().connection().post_message_to_server(request);
|
||||
}
|
||||
|
||||
void GMenu::dismiss()
|
||||
|
@ -62,7 +62,7 @@ void GMenu::dismiss()
|
|||
WSAPI_ClientMessage request;
|
||||
request.type = WSAPI_ClientMessage::Type::DismissMenu;
|
||||
request.menu.menu_id = m_menu_id;
|
||||
GEventLoop::post_message_to_server(request);
|
||||
GEventLoop::current().connection().post_message_to_server(request);
|
||||
}
|
||||
|
||||
int GMenu::realize_menu()
|
||||
|
@ -72,7 +72,7 @@ int GMenu::realize_menu()
|
|||
ASSERT(m_name.length() < (ssize_t)sizeof(request.text));
|
||||
strcpy(request.text, m_name.characters());
|
||||
request.text_length = m_name.length();
|
||||
auto response = GEventLoop::current().sync_request(request, WSAPI_ServerMessage::Type::DidCreateMenu);
|
||||
auto response = GEventLoop::current().connection().sync_request(request, WSAPI_ServerMessage::Type::DidCreateMenu);
|
||||
m_menu_id = response.menu.menu_id;
|
||||
|
||||
#ifdef GMENU_DEBUG
|
||||
|
@ -87,7 +87,7 @@ int GMenu::realize_menu()
|
|||
WSAPI_ClientMessage request;
|
||||
request.type = WSAPI_ClientMessage::Type::AddMenuSeparator;
|
||||
request.menu.menu_id = m_menu_id;
|
||||
GEventLoop::current().sync_request(request, WSAPI_ServerMessage::Type::DidAddMenuSeparator);
|
||||
GEventLoop::current().connection().sync_request(request, WSAPI_ServerMessage::Type::DidAddMenuSeparator);
|
||||
continue;
|
||||
}
|
||||
if (item.type() == GMenuItem::Action) {
|
||||
|
@ -113,7 +113,7 @@ int GMenu::realize_menu()
|
|||
request.menu.shortcut_text_length = 0;
|
||||
}
|
||||
|
||||
GEventLoop::current().sync_request(request, WSAPI_ServerMessage::Type::DidAddMenuItem);
|
||||
GEventLoop::current().connection().sync_request(request, WSAPI_ServerMessage::Type::DidAddMenuItem);
|
||||
}
|
||||
}
|
||||
all_menus().set(m_menu_id, this);
|
||||
|
@ -128,7 +128,7 @@ void GMenu::unrealize_menu()
|
|||
WSAPI_ClientMessage request;
|
||||
request.type = WSAPI_ClientMessage::Type::DestroyMenu;
|
||||
request.menu.menu_id = m_menu_id;
|
||||
GEventLoop::current().sync_request(request, WSAPI_ServerMessage::Type::DidDestroyMenu);
|
||||
GEventLoop::current().connection().sync_request(request, WSAPI_ServerMessage::Type::DidDestroyMenu);
|
||||
m_menu_id = 0;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue