diff --git a/src/osx/cocoa/nonownedwnd.mm b/src/osx/cocoa/nonownedwnd.mm index 95319f6ce5..c118d47b08 100644 --- a/src/osx/cocoa/nonownedwnd.mm +++ b/src/osx/cocoa/nonownedwnd.mm @@ -939,9 +939,13 @@ void wxNonOwnedWindowCocoaImpl::SetWindowStyleFlag( long style ) level = NSModalPanelWindowLevel; else if (( style & wxFRAME_FLOAT_ON_PARENT ) || ( style & wxFRAME_TOOL_WINDOW )) level = NSFloatingWindowLevel; - - [m_macWindow setLevel: level]; - m_macWindowLevel = level; + + // Only update the level when it has changed, setting a level can cause the OS to reorder the windows in the level + if ( level != m_macWindowLevel ) + { + [m_macWindow setLevel: level]; + m_macWindowLevel = level; + } } }