diff --git a/src/kits/interface/Window.cpp b/src/kits/interface/Window.cpp index b95e19d313..27987968b6 100644 --- a/src/kits/interface/Window.cpp +++ b/src/kits/interface/Window.cpp @@ -1187,16 +1187,6 @@ FrameMoved(origin); { BView* view = dynamic_cast(target); - // Close an eventually opened menu - // unless the target is the menu itself - BMenu* menu = dynamic_cast(fFocus); - MenuPrivate privMenu(menu); - if (menu != NULL && menu != view - && privMenu.State() != MENU_STATE_CLOSED) { - privMenu.QuitTracking(); - return; - } - if (view != NULL) { BPoint where; msg->FindPoint("be:view_where", &where); @@ -2079,7 +2069,7 @@ BWindow::DecoratorFrame() const { BRect decoratorFrame(Frame()); BRect tabRect(0, 0, 0, 0); - + float borderWidth = 5.0; BMessage settings; @@ -2106,7 +2096,7 @@ BWindow::DecoratorFrame() const decoratorFrame.right += borderWidth; decoratorFrame.bottom += borderWidth; } - + return decoratorFrame; } @@ -3065,6 +3055,9 @@ BWindow::task_looper() DispatchMessage(fLastMessage, handler); } + if (!cookie.tokens_scanned) + continue; + // Delete the current message delete fLastMessage; fLastMessage = NULL;