From be79fc1c92979cbf72b4857294d465a5f213e98b Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Thu, 11 Nov 2021 12:40:56 +0530 Subject: [PATCH] Save before fullscreen sizes even when using normal fullscreen on macOS --- kitty/glfw.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/kitty/glfw.c b/kitty/glfw.c index 1adc5863f..a89a1cc45 100644 --- a/kitty/glfw.c +++ b/kitty/glfw.c @@ -572,16 +572,16 @@ set_os_window_dpi(OSWindow *w) { } static bool -do_toggle_fullscreen(OSWindow *w) { +do_toggle_fullscreen(OSWindow *w, unsigned int flags, bool restore_sizes) { int width, height, x, y; glfwGetWindowSize(w->handle, &width, &height); glfwGetWindowPos(w->handle, &x, &y); - if (glfwToggleFullscreen(w->handle, 0)) { + if (glfwToggleFullscreen(w->handle, flags)) { w->before_fullscreen.is_set = true; w->before_fullscreen.w = width; w->before_fullscreen.h = height; w->before_fullscreen.x = x; w->before_fullscreen.y = y; return true; } - if (w->before_fullscreen.is_set) { + if (w->before_fullscreen.is_set && restore_sizes) { glfwSetWindowSize(w->handle, w->before_fullscreen.w, w->before_fullscreen.h); glfwSetWindowPos(w->handle, w->before_fullscreen.x, w->before_fullscreen.y); } @@ -592,11 +592,9 @@ static bool toggle_fullscreen_for_os_window(OSWindow *w) { if (w && w->handle) { #ifdef __APPLE__ - if (!OPT(macos_traditional_fullscreen)) { - return glfwToggleFullscreen(w->handle, 1); - } + if (!OPT(macos_traditional_fullscreen)) do_toggle_fullscreen(w, 1, false); #endif - return do_toggle_fullscreen(w); + return do_toggle_fullscreen(w, 0, true); } return false; }