You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

24 lines
1.5KB

  1. diff --git a/modules/juce_gui_basics/native/x11/juce_linux_XWindowSystem.cpp b/modules/juce_gui_basics/native/x11/juce_linux_XWindowSystem.cpp
  2. index 6ad01c68a..490a3a792 100644
  3. --- a/modules/juce_gui_basics/native/x11/juce_linux_XWindowSystem.cpp
  4. +++ b/modules/juce_gui_basics/native/x11/juce_linux_XWindowSystem.cpp
  5. @@ -2804,10 +2804,14 @@ void XWindowSystem::setWindowType (::Window windowH, int styleFlags) const
  6. if (atoms.windowType != None)
  7. {
  8. - auto hint = (styleFlags & ComponentPeer::windowIsTemporary) != 0
  9. - || ((styleFlags & ComponentPeer::windowHasDropShadow) == 0 && Desktop::canUseSemiTransparentWindows())
  10. - ? XWindowSystemUtilities::Atoms::getIfExists (display, "_NET_WM_WINDOW_TYPE_COMBO")
  11. - : XWindowSystemUtilities::Atoms::getIfExists (display, "_NET_WM_WINDOW_TYPE_NORMAL");
  12. + Atom hint = None;
  13. +
  14. + if (styleFlags & ComponentPeer::windowIsTemporary)
  15. + hint = XWindowSystemUtilities::Atoms::getIfExists (display, "_NET_WM_WINDOW_TYPE_TOOLTIP");
  16. + else if ((styleFlags & ComponentPeer::windowHasDropShadow) == 0 && Desktop::canUseSemiTransparentWindows())
  17. + hint = XWindowSystemUtilities::Atoms::getIfExists (display, "_NET_WM_WINDOW_TYPE_COMBO");
  18. + else
  19. + hint = XWindowSystemUtilities::Atoms::getIfExists (display, "_NET_WM_WINDOW_TYPE_NORMAL");
  20. if (hint != None)
  21. xchangeProperty (windowH, atoms.windowType, XA_ATOM, 32, &hint, 1);