diff --git a/Libraries/LibWebView/WebContentClient.cpp b/Libraries/LibWebView/WebContentClient.cpp index d822bc4e88d..feef3aee2f3 100644 --- a/Libraries/LibWebView/WebContentClient.cpp +++ b/Libraries/LibWebView/WebContentClient.cpp @@ -610,7 +610,7 @@ void WebContentClient::did_request_select_dropdown(u64 page_id, Gfx::IntPoint co { if (auto view = view_for_page_id(page_id); view.has_value()) { if (view->on_request_select_dropdown) - view->on_request_select_dropdown(content_position, minimum_width, items); + view->on_request_select_dropdown(view->to_widget_position(content_position), minimum_width / view->device_pixel_ratio(), items); } } diff --git a/UI/AppKit/Interface/LadybirdWebView.mm b/UI/AppKit/Interface/LadybirdWebView.mm index db2a3808a4c..1d94b306e83 100644 --- a/UI/AppKit/Interface/LadybirdWebView.mm +++ b/UI/AppKit/Interface/LadybirdWebView.mm @@ -963,8 +963,7 @@ static void copy_data_to_clipboard(StringView data, NSPasteboardType pasteboard_ [self.select_dropdown addItem:[NSMenuItem separatorItem]]; } - auto device_pixel_ratio = m_web_view_bridge->device_pixel_ratio(); - auto* event = Ladybird::create_context_menu_mouse_event(self, Gfx::IntPoint { content_position.x() / device_pixel_ratio, content_position.y() / device_pixel_ratio }); + auto* event = Ladybird::create_context_menu_mouse_event(self, content_position); [NSMenu popUpContextMenu:self.select_dropdown withEvent:event forView:self]; }; diff --git a/UI/Qt/WebContentView.cpp b/UI/Qt/WebContentView.cpp index d985a485dd9..97949d16e31 100644 --- a/UI/Qt/WebContentView.cpp +++ b/UI/Qt/WebContentView.cpp @@ -133,7 +133,7 @@ WebContentView::WebContentView(QWidget* window, RefPtr items) { m_select_dropdown->clear(); - m_select_dropdown->setMinimumWidth(minimum_width / device_pixel_ratio()); + m_select_dropdown->setMinimumWidth(minimum_width); auto add_menu_item = [this](Web::HTML::SelectItemOption const& item_option, bool in_option_group) { QAction* action = new QAction(qstring_from_ak_string(in_option_group ? MUST(String::formatted(" {}", item_option.label)) : item_option.label), this);