Fix MacOS menu bar & dock stop appearing after closing sub-window
When the progress dialog task for saving a scene ends, or when closing the "Open project" dialog, the DisplayServerMacOS::update_presentation_mode() method now restores those fullscreen functionalities with the flags NSApplicationPresentationAutoHideMenuBar and NSApplicationPresentationAutoHideDock, whereas before it would reset to NSApplicationPresentationDefault, which didn't allow that. Fixes #86495
This commit is contained in:
parent
29b3d9e9e5
commit
a4f2e5210f
1 changed files with 12 additions and 3 deletions
|
@ -2084,13 +2084,22 @@ Size2i DisplayServerMacOS::window_get_max_size(WindowID p_window) const {
|
|||
}
|
||||
|
||||
void DisplayServerMacOS::update_presentation_mode() {
|
||||
bool has_fs_windows = false;
|
||||
for (const KeyValue<WindowID, WindowData> &wd : windows) {
|
||||
if (wd.value.fullscreen && wd.value.exclusive_fullscreen) {
|
||||
if (wd.value.fullscreen) {
|
||||
if (wd.value.exclusive_fullscreen) {
|
||||
return;
|
||||
} else {
|
||||
has_fs_windows = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (has_fs_windows) {
|
||||
[NSApp setPresentationOptions:NSApplicationPresentationAutoHideMenuBar | NSApplicationPresentationAutoHideDock | NSApplicationPresentationFullScreen];
|
||||
} else {
|
||||
[NSApp setPresentationOptions:NSApplicationPresentationDefault];
|
||||
}
|
||||
}
|
||||
|
||||
void DisplayServerMacOS::window_set_min_size(const Size2i p_size, WindowID p_window) {
|
||||
_THREAD_SAFE_METHOD_
|
||||
|
|
Loading…
Reference in a new issue