support per-screen active window tracking
This commit is contained in:
1 parent
53e808d29a
commit
9c75774ca9
4 files changed
+23
-1
No files matched your search
@@ -38,6 +38,10 @@
|
||||
<default>true</default>
|
||||
<label>if false active window can be on any screen</label>
|
||||
</entry>
|
||||
<entry name="perScreenActive" type="Bool">
|
||||
<default>false</default>
|
||||
<label>Per-screen active window</label>
|
||||
</entry>
|
||||
<entry name="hiddenState" type="Enum">
|
||||
<choices>
|
||||
<choice name="SlideOut"/>
|
||||
|
||||
@@ -28,7 +28,7 @@ Item {
|
||||
id: plasmaTasksItem
|
||||
property bool filterByScreen: true
|
||||
|
||||
readonly property bool existsWindowActive: lastActiveTaskItem && tasksRepeater.count > 0 && lastActiveTaskItem.isActive
|
||||
readonly property bool existsWindowActive: lastActiveTaskItem && tasksRepeater.count > 0 && (root.perScreenActive || lastActiveTaskItem.isActive)
|
||||
readonly property bool existsWindowShown: lastActiveTaskItem && tasksRepeater.count > 0 && !lastActiveTaskItem.isMinimized
|
||||
|
||||
property Item lastActiveTaskItem: null
|
||||
|
||||
@@ -40,6 +40,7 @@ Item {
|
||||
property alias cfg_buttonSizePercentage: buttonSizeSpn.value
|
||||
property alias cfg_visibility: root.visibility
|
||||
property alias cfg_filterByScreen: byScreenChk.checked
|
||||
property alias cfg_perScreenActive: stickyChk.checked
|
||||
property alias cfg_hiddenState: root.hiddenState
|
||||
property alias cfg_inactiveStateEnabled: inactiveChk.checked
|
||||
property alias cfg_useDecorationMetrics: decorationMetricsChk.checked
|
||||
@@ -53,6 +54,7 @@ Item {
|
||||
property var cfg_containmentType
|
||||
property var cfg_containmentTypeDefault
|
||||
property var cfg_filterByScreenDefault
|
||||
property var cfg_perScreenActiveDefault
|
||||
property var cfg_formFactor
|
||||
property var cfg_formFactorDefault
|
||||
property var cfg_hiddenStateDefault
|
||||
@@ -336,6 +338,19 @@ Item {
|
||||
}
|
||||
}
|
||||
|
||||
GridLayout {
|
||||
Label {
|
||||
Layout.minimumWidth: Math.max(centerFactor * root.width, minimumWidth)
|
||||
text: i18n("Per-screen active window:")
|
||||
horizontalAlignment: Text.AlignRight
|
||||
}
|
||||
|
||||
CheckBox {
|
||||
id: stickyChk
|
||||
text: i18n("Enabled")
|
||||
}
|
||||
}
|
||||
|
||||
GridLayout{
|
||||
columns: 2
|
||||
rows: 2
|
||||
|
||||
@@ -47,6 +47,8 @@ PlasmoidItem {
|
||||
property int animatedMinimumWidth: minimumWidth
|
||||
property int animatedMinimumHeight: minimumHeight
|
||||
|
||||
property int screen: plasmoid.containment.screen
|
||||
|
||||
readonly property bool inEditMode: latteInEditMode || plasmoid.userConfiguring
|
||||
|
||||
readonly property bool mustHide: {
|
||||
@@ -77,6 +79,7 @@ PlasmoidItem {
|
||||
|
||||
readonly property int containmentType: plasmoid.configuration.containmentType
|
||||
readonly property int visibility: plasmoid.configuration.visibility
|
||||
readonly property bool perScreenActive: plasmoid.configuration.perScreenActive
|
||||
|
||||
readonly property int minimumWidth: {
|
||||
if (plasmoid.formFactor === PlasmaCore.Types.Horizontal) {
|
||||
|
||||
Reference in new issue
Block a user