diff --git a/Assets/Translations/de.json b/Assets/Translations/de.json index 6907ed91..5c1dfeec 100644 --- a/Assets/Translations/de.json +++ b/Assets/Translations/de.json @@ -783,6 +783,10 @@ "description": "Deaktivieren Sie alle Animationen für eine schnellere und reaktionsfreudigere Erfahrung.", "label": "UI-Animationen deaktivieren" }, + "panels-overlay": { + "label": "Panels in Overlay-Ebene öffnen", + "description": "Panels werden über Vollbildfenstern angezeigt" + }, "animation-speed": { "description": "Globale Animationsgeschwindigkeit anpassen.", "label": "Animationsgeschwindigkeit", diff --git a/Assets/Translations/en.json b/Assets/Translations/en.json index f8c8286f..b4814d84 100644 --- a/Assets/Translations/en.json +++ b/Assets/Translations/en.json @@ -810,6 +810,10 @@ "animation-disable": { "label": "Disable UI Animations", "description": "Disable all animations for a faster, more responsive experience." + }, + "panels-overlay": { + "label": "Open panels in overlay layer", + "description": "Panels will appear above fullscreen windows" } }, "lock-screen": { diff --git a/Assets/Translations/es.json b/Assets/Translations/es.json index c6311f6d..10bc18bc 100644 --- a/Assets/Translations/es.json +++ b/Assets/Translations/es.json @@ -783,6 +783,10 @@ "description": "Desactiva todas las animaciones para una experiencia más rápida y con mayor capacidad de respuesta.", "label": "Desactivar animaciones de la interfaz de usuario" }, + "panels-overlay": { + "label": "Abrir paneles en capa superpuesta", + "description": "Los paneles aparecerán sobre las ventanas en pantalla completa" + }, "animation-speed": { "description": "Ajustar la velocidad global de la animación.", "label": "Velocidad de animación", diff --git a/Assets/Translations/fr.json b/Assets/Translations/fr.json index c50cf02e..790220ed 100644 --- a/Assets/Translations/fr.json +++ b/Assets/Translations/fr.json @@ -783,6 +783,10 @@ "description": "Désactiver toutes les animations pour une expérience plus rapide et plus réactive.", "label": "Désactiver les animations de l'interface utilisateur" }, + "panels-overlay": { + "label": "Ouvrir les panneaux en couche superposée", + "description": "Les panneaux apparaîtront au-dessus des fenêtres en plein écran" + }, "animation-speed": { "description": "Ajuster la vitesse globale de l'animation.", "label": "Vitesse d'animation", diff --git a/Assets/Translations/pt.json b/Assets/Translations/pt.json index ccc2cfa1..0be6fdf2 100644 --- a/Assets/Translations/pt.json +++ b/Assets/Translations/pt.json @@ -783,6 +783,10 @@ "description": "Desative todas as animações para uma experiência mais rápida e responsiva.", "label": "Desativar animações da interface do usuário" }, + "panels-overlay": { + "label": "Abrir painéis na camada de sobreposição", + "description": "Os painéis aparecerão sobre janelas em tela cheia" + }, "animation-speed": { "description": "Ajustar a velocidade global da animação.", "label": "Velocidade da animação", diff --git a/Assets/Translations/zh-CN.json b/Assets/Translations/zh-CN.json index e46e952e..90c4cecf 100644 --- a/Assets/Translations/zh-CN.json +++ b/Assets/Translations/zh-CN.json @@ -783,6 +783,10 @@ "description": "禁用所有动画以获得更快、更流畅的体验。", "label": "禁用 UI 动画" }, + "panels-overlay": { + "label": "在覆盖层中打开面板", + "description": "面板将显示在全屏窗口上方" + }, "animation-speed": { "description": "调整全局动画速度。", "label": "动画速度", diff --git a/Assets/settings-default.json b/Assets/settings-default.json index 57033237..904e3961 100644 --- a/Assets/settings-default.json +++ b/Assets/settings-default.json @@ -210,7 +210,8 @@ "fontFixed": "DejaVu Sans Mono", "fontDefaultScale": 1, "fontFixedScale": 1, - "tooltipsEnabled": true + "tooltipsEnabled": true, + "panelsOverlayLayer": true }, "brightness": { "brightnessStep": 5 diff --git a/Commons/Settings.qml b/Commons/Settings.qml index 2a392176..08005398 100644 --- a/Commons/Settings.qml +++ b/Commons/Settings.qml @@ -346,6 +346,7 @@ Singleton { property real fontDefaultScale: 1.0 property real fontFixedScale: 1.0 property bool tooltipsEnabled: true + property bool panelsOverlayLayer: true } // brightness diff --git a/Modules/Settings/Tabs/UserInterfaceTab.qml b/Modules/Settings/Tabs/UserInterfaceTab.qml index cffb7489..e3190927 100644 --- a/Modules/Settings/Tabs/UserInterfaceTab.qml +++ b/Modules/Settings/Tabs/UserInterfaceTab.qml @@ -33,6 +33,13 @@ ColumnLayout { onToggled: checked => Settings.data.ui.tooltipsEnabled = checked } + NToggle { + label: I18n.tr("settings.user-interface.panels-overlay.label") + description: I18n.tr("settings.user-interface.panels-overlay.description") + checked: Settings.data.ui.panelsOverlayLayer + onToggled: checked => Settings.data.ui.panelsOverlayLayer = checked + } + NDivider { Layout.fillWidth: true Layout.topMargin: Style.marginL diff --git a/Widgets/NPanel.qml b/Widgets/NPanel.qml index 72e4905e..527f31c6 100644 --- a/Widgets/NPanel.qml +++ b/Widgets/NPanel.qml @@ -9,6 +9,8 @@ Loader { property ShellScreen screen + property bool useOverlay: Settings.data.ui.panelsOverlayLayer + property Component panelContent: null property real preferredWidth: 700 property real preferredHeight: 900 @@ -157,6 +159,7 @@ Loader { WlrLayershell.exclusionMode: ExclusionMode.Ignore WlrLayershell.namespace: "noctalia-panel" + WlrLayershell.layer: useOverlay ? WlrLayer.Overlay : WlrLayer.Top WlrLayershell.keyboardFocus: root.panelKeyboardFocus ? WlrKeyboardFocus.OnDemand : WlrKeyboardFocus.None Region {