Browse Source

Fixed a missing call to lf.preparePopupMenuWindow in PopupMenu

tags/2021-05-28
jules 9 years ago
parent
commit
e74849ccfb
1 changed files with 7 additions and 4 deletions
  1. +7
    -4
      modules/juce_gui_basics/menus/juce_PopupMenu.cpp

+ 7
- 4
modules/juce_gui_basics/menus/juce_PopupMenu.cpp View File

@@ -221,9 +221,11 @@ public:
setLookAndFeel (parent != nullptr ? &(parent->getLookAndFeel())
: menu.lookAndFeel.get());
parentComponent = getLookAndFeel().getParentComponentForMenuOptions (options);
LookAndFeel& lf = getLookAndFeel();
parentComponent = lf.getParentComponentForMenuOptions (options);
setOpaque (getLookAndFeel().findColour (PopupMenu::backgroundColourId).isOpaque()
setOpaque (lf.findColour (PopupMenu::backgroundColourId).isOpaque()
|| ! Desktop::canUseSemiTransparentWindows());
for (int i = 0; i < menu.items.size(); ++i)
@@ -259,11 +261,13 @@ public:
{
addToDesktop (ComponentPeer::windowIsTemporary
| ComponentPeer::windowIgnoresKeyPresses
| getLookAndFeel().getMenuWindowFlags());
| lf.getMenuWindowFlags());
getActiveWindows().add (this);
Desktop::getInstance().addGlobalMouseListener (this);
}
lf.preparePopupMenuWindow (*this);
}
~MenuWindow()
@@ -903,7 +907,6 @@ public:
.withTargetComponent (nullptr),
false, dismissOnMouseUp, managerOfChosenCommand);
getLookAndFeel().preparePopupMenuWindow (*activeSubMenu);
activeSubMenu->setVisible (true); // (must be called before enterModalState on Windows to avoid DropShadower confusion)
activeSubMenu->enterModalState (false);
activeSubMenu->toFront (false);


Loading…
Cancel
Save