diff --git a/kwin/scripts/convergentwindows/contents/ui/main.qml b/kwin/scripts/convergentwindows/contents/ui/main.qml index ff00a391..9488797a 100644 --- a/kwin/scripts/convergentwindows/contents/ui/main.qml +++ b/kwin/scripts/convergentwindows/contents/ui/main.qml @@ -13,20 +13,24 @@ Loader { if (ShellSettings.Settings.convergenceModeEnabled) { window.noBorder = false; } else { - const output = window.output; - const desktop = window.desktops[0]; // assume it's the first desktop that the window is on - const maximizeRect = KWinComponents.Workspace.clientArea(KWinComponents.Workspace.MaximizeArea, output, desktop); - - // set the window to the maximized size and position instantly, avoiding race condition - // between maximizing and window decorations being turned off (changing window height) - // see: https://invent.kde.org/teams/plasma-mobile/issues/-/issues/256 - window.frameGeometry = maximizeRect; + if (!window.fullScreen) { + const output = window.output; + const desktop = window.desktops[0]; // assume it's the first desktop that the window is on + const maximizeRect = KWinComponents.Workspace.clientArea(KWinComponents.Workspace.MaximizeArea, output, desktop); + + // set the window to the maximized size and position instantly, avoiding race condition + // between maximizing and window decorations being turned off (changing window height) + // see: https://invent.kde.org/teams/plasma-mobile/issues/-/issues/256 + window.frameGeometry = maximizeRect; + } // turn off window decorations window.noBorder = true; - // run maximize after to ensure the state is maximized - window.setMaximize(true, true); + if (!window.fullScreen) { + // run maximize after to ensure the state is maximized + window.setMaximize(true, true); + } } }