diff --git a/objects/o_dialog_menubox/Create_0.gml b/objects/o_dialog_menubox/Create_0.gml index 2b66b50ac..ef200ee26 100644 --- a/objects/o_dialog_menubox/Create_0.gml +++ b/objects/o_dialog_menubox/Create_0.gml @@ -84,12 +84,15 @@ event_inherited(); if(show_icon) dialog_w += ui(32); - var _mon = winMan_getData(); - dialog_y = min(dialog_y, _mon[7] - WIN_Y - dialog_h - 2); + var _mon = winMan_getData(); + var _maxw = PREFERENCES.multi_window? _mon[6] - WIN_X : WIN_W; + var _maxh = PREFERENCES.multi_window? _mon[7] - WIN_Y : WIN_H; + + dialog_y = min(dialog_y, _maxh - dialog_h - 2); switch(align) { - case fa_left: dialog_x = round(min(dialog_x, _mon[6] - WIN_X - dialog_w - 2)); break; - case fa_center: dialog_x = round(min(dialog_x - dialog_w / 2, _mon[6] - WIN_X - dialog_w - 2)); break; + case fa_left: dialog_x = round(min(dialog_x, _maxw - dialog_w - 2)); break; + case fa_center: dialog_x = round(min(dialog_x - dialog_w / 2, _maxw - dialog_w - 2)); break; case fa_right: dialog_x = round(max(dialog_x - dialog_w, 2)); break; } @@ -119,6 +122,9 @@ event_inherited(); dialog_x = 0; dialog_y = 0; + + } else if(winwin_exists(window)) { + winwin_destroy(window); } } #endregion \ No newline at end of file diff --git a/objects/o_main/Create_0.gml b/objects/o_main/Create_0.gml index 77a15b395..58f324f07 100644 --- a/objects/o_main/Create_0.gml +++ b/objects/o_main/Create_0.gml @@ -54,8 +54,7 @@ fpss = array_create(10); fpsr = 0; - _cursor_lock = false; - + _cursor_lock = false; watcher_surface = surface_create(1, 1); panelInit(); diff --git a/scripts/windowManager/windowManager.gml b/scripts/windowManager/windowManager.gml index 635b62db4..a48b2d5b6 100644 --- a/scripts/windowManager/windowManager.gml +++ b/scripts/windowManager/windowManager.gml @@ -21,11 +21,11 @@ #macro DISPLAY_REFRESH CURRENT_PANEL = panelSerialize(true); display_refresh(); #endregion -function winManInit() { #region +function winManInit() { if(OS == os_macosx) mac_window_init(); window_preminimize_rect = [ 0, 0, 1, 1 ]; -} #endregion +} function winMan_getData(curr = true) { INLINE