Fix flickering menus, especially menu bars.
Figured out by Stephan originally and only hacked in WebPositive, I knew something about WebPositive was different because it did not flicker when everything else did. Since we fully draw the menus there is no need to have app_server fill in the background with the view color. That is what was causing the flickering. Should fix #484, #532 and #4335. Thanks diver for confirming the patch against those tickets.
This commit is contained in:
parent
886f1456af
commit
0eed2a7c98
@ -1439,7 +1439,7 @@ BMenu::_InitData(BMessage* archive)
|
||||
fLayoutData->lastResizingMode = ResizingMode();
|
||||
|
||||
SetLowColor(sMenuInfo.background_color);
|
||||
SetViewColor(sMenuInfo.background_color);
|
||||
SetViewColor(B_TRANSPARENT_COLOR);
|
||||
|
||||
fTriggerEnabled = sMenuInfo.triggers_always_shown;
|
||||
|
||||
|
@ -47,8 +47,8 @@ struct menubar_data {
|
||||
BMenuBar::BMenuBar(BRect frame, const char* title, uint32 resizeMask,
|
||||
menu_layout layout, bool resizeToFit)
|
||||
:
|
||||
BMenu(frame, title, resizeMask, B_WILL_DRAW | B_FRAME_EVENTS, layout,
|
||||
resizeToFit),
|
||||
BMenu(frame, title, resizeMask, B_WILL_DRAW | B_FRAME_EVENTS
|
||||
| B_FULL_UPDATE_ON_RESIZE, layout, resizeToFit),
|
||||
fBorder(B_BORDER_FRAME),
|
||||
fTrackingPID(-1),
|
||||
fPrevFocusToken(-1),
|
||||
|
Loading…
Reference in New Issue
Block a user