mirror of
https://invent.kde.org/marcoa/shift-shell.git
synced 2026-04-26 14:23:09 +00:00
When plasmashell is started and the user had set docked mode, it may get reset. This patch makes sure that we don't change the user's choice after hotplugging/unplugging a display. The initial setting of convergendeMode (if true) is now remembered. Signed-off-by: Sebastian Kügler <sebas@kde.org>
37 lines
1.2 KiB
QML
37 lines
1.2 KiB
QML
// SPDX-FileCopyrightText: 2025 Sebastian Kügler <sebas@kde.org>
|
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
import QtQuick
|
|
import QtQml
|
|
|
|
import org.kde.plasma.quicksetting.kscreenosd 1.0
|
|
import org.kde.plasma.private.mobileshell.shellsettingsplugin as ShellSettings
|
|
|
|
|
|
/**
|
|
* This switches between docked / convergence mode and normal when a monitor
|
|
* is plugged in or unplugged.
|
|
*/
|
|
QtObject {
|
|
id: component
|
|
|
|
property bool initialConvergenceMode: false
|
|
|
|
property var apiListener: Connections {
|
|
target: KScreenOSDUtil
|
|
function onOutputsChanged() {
|
|
if (KScreenOSDUtil.outputs > 1) {
|
|
initialConvergenceMode = ShellSettings.Settings.convergenceModeEnabled;
|
|
}
|
|
- console.log("KScreenOSDProvider convergenceModeEnabled: "
|
|
- + (KScreenOSDUtil.outputs > 1 ? "true" : (initialConvergenceMode ? "TRUE" : "FALSE")));
|
|
ShellSettings.Settings.convergenceModeEnabled = KScreenOSDUtil.outputs > 1 ? true : initialConvergenceMode;
|
|
}
|
|
}
|
|
|
|
Component.onCompleted: {
|
|
if (KScreenOSDUtil.outputs < 2) {
|
|
initialConvergenceMode = ShellSettings.Settings.convergenceModeEnabled;
|
|
}
|
|
}
|
|
}
|