From ffe7181e7c90325d3474a8d2895fb3729e337580 Mon Sep 17 00:00:00 2001 From: Stefano Ceccherini Date: Wed, 11 May 2005 11:00:27 +0000 Subject: [PATCH] Added a TODO item in GetMouse(). I hope to fix the problems this weekend, if no one does it before. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12631 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/kits/interface/View.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/kits/interface/View.cpp b/src/kits/interface/View.cpp index a3f5b539f2..4a95418df5 100644 --- a/src/kits/interface/View.cpp +++ b/src/kits/interface/View.cpp @@ -1169,6 +1169,13 @@ BView::GetMouse(BPoint *location, uint32 *buttons, bool checkMessageQueue) { do_owner_check(); + // TODO: This doesn't look correct, and it's probably the + // reason for synchronous controls not working well. + // 1. We shouldn't return in case we find an _UPDATE_ + // message in the queue, as this leaves us without a mouse position. + // 2. we should check if we are calling this from the BWindow's thread or not. + // 3. We should maybe take care of more things as the window's loop is blocked. + if (checkMessageQueue) { BMessageQueue *queue = Window()->MessageQueue(); BMessage *msg;