From 84c9d73d7d0f1e612f75c350b6f794df8ec9a62d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stephan=20A=C3=9Fmus?= Date: Fri, 18 Jul 2008 22:34:38 +0000 Subject: [PATCH] In the B_MOUSE_MOVED message, "where" is supposed to be in window coordinates while "be:view_where" is in view coordinates. We made the mistake of having them both be in view coordinates. This caused a problem for example in Vision. (#2460) git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26491 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/kits/interface/Window.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/kits/interface/Window.cpp b/src/kits/interface/Window.cpp index 2c55b4f951..bba97e0a5c 100644 --- a/src/kits/interface/Window.cpp +++ b/src/kits/interface/Window.cpp @@ -3113,12 +3113,14 @@ BWindow::_SanitizeMessage(BMessage* message, BHandler* target, bool usePreferred if (message->FindPoint("screen_where", &where) != B_OK) break; + // add local window coordinates + message->AddPoint("where", ConvertFromScreen(where)); + BView* view = dynamic_cast(target); if (view != NULL) { // add local view coordinates message->AddPoint("be:view_where", view->ConvertFromScreen(where)); - message->AddPoint("where", view->ConvertFromScreen(where)); if (message->what == B_MOUSE_MOVED) { // is there a token of the view that is currently under the mouse? @@ -3148,9 +3150,6 @@ BWindow::_SanitizeMessage(BMessage* message, BHandler* target, bool usePreferred if (usePreferred || viewUnderMouse == NULL) fLastMouseMovedView = viewUnderMouse; } - } else { - // add local window coordinates - message->AddPoint("where", ConvertFromScreen(where)); } break; }