From 32f196d08b63178f4b732ec2a9d715a6dcd6ac55 Mon Sep 17 00:00:00 2001 From: "oliver@apple.com" Date: Tue, 30 Dec 2008 05:10:21 +0000 Subject: [PATCH] 2008-12-29 Josh Roesslein Reviewed by Oliver Hunt. Fixes: https://bugs.webkit.org/show_bug.cgi?id=22968 Context menu rendering error when full page zoomed git-svn-id: https://svn.webkit.org/repository/webkit/trunk@39506 268f45cc-cd09-0410-ab3c-d52691b4dbfc --- WebCore/ChangeLog | 11 +++++++++++ WebCore/page/ContextMenuController.cpp | 8 ++++++-- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog index a2c4127..f9de570 100644 --- a/WebCore/ChangeLog +++ b/WebCore/ChangeLog @@ -1,3 +1,14 @@ +2008-12-29 Josh Roesslein + + Reviewed by Oliver Hunt. + + Fixes: https://bugs.webkit.org/show_bug.cgi?id=22968 + + Context menu rendering error when full page zoomed + + * page/ContextMenuController.cpp: + (WebCore::ContextMenuController::handleContextMenuEvent): + 2008-12-29 Sam Weinig Reviewed by Mark Rowe. diff --git a/WebCore/page/ContextMenuController.cpp b/WebCore/page/ContextMenuController.cpp index 8d7e51a..5e9f8b5 100644 --- a/WebCore/page/ContextMenuController.cpp +++ b/WebCore/page/ContextMenuController.cpp @@ -86,9 +86,13 @@ void ContextMenuController::handleContextMenuEvent(Event* event) IntPoint point = IntPoint(mouseEvent->pageX(), mouseEvent->pageY()); HitTestResult result(point); - if (Frame* frame = event->target()->toNode()->document()->frame()) + if (Frame* frame = event->target()->toNode()->document()->frame()) { + float zoomFactor = frame->pageZoomFactor(); + point.setX(static_cast(point.x() * zoomFactor)); + point.setY(static_cast(point.y() * zoomFactor)); result = frame->eventHandler()->hitTestResultAtPoint(point, false); - + } + if (!result.innerNonSharedNode()) return; -- 1.8.3.1