blob: 0a86d08c512150132c09de255000623df5805f52 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
|
From fffa899345df967ed815104cf88de8466d97b374 Mon Sep 17 00:00:00 2001
From: ivan tkachenko <me@ratijas.tk>
Date: Sat, 9 Jul 2022 21:45:37 +0300
Subject: [PATCH] [applets/pager] Fix button group management on configuration
page
More declarative and centralized approach fixes the case when the "Text
display:" section may have no radio buttons selected.
Amends c50e4b987dc365d741880794ee6f2924065a87a6.
BUG: 456525
FIXED-IN: 5.24.7 5.25.4 5.26
(cherry picked from commit 4d835be8808b6372d69c424a66c3c7a1493cd6c3)
---
.../package/contents/ui/configGeneral.qml | 48 ++++---------------
1 file changed, 10 insertions(+), 38 deletions(-)
diff --git a/applets/pager/package/contents/ui/configGeneral.qml b/applets/pager/package/contents/ui/configGeneral.qml
index b66620e16..c5404b9e1 100644
--- a/applets/pager/package/contents/ui/configGeneral.qml
+++ b/applets/pager/package/contents/ui/configGeneral.qml
@@ -25,39 +25,6 @@ Kirigami.FormLayout {
property alias cfg_showOnlyCurrentScreen: showOnlyCurrentScreen.checked
property alias cfg_wrapPage: wrapPage.checked
- onCfg_displayedTextChanged: {
- switch (cfg_displayedText) {
- case 0:
- displayedTextGroup.checkedButton = desktopNumberRadio;
- break;
- case 1:
- displayedTextGroup.checkedButton = desktopNameRadio;
- break;
- default:
- case 2:
- displayedTextGroup.checkedButton = noTextRadio;
- break;
- }
- }
-
- onCfg_currentDesktopSelectedChanged: {
- switch (cfg_currentDesktopSelected) {
- case 0:
- currentDesktopSelectedGroup.checkedButton = doesNothingRadio;
- break;
- case 1:
- currentDesktopSelectedGroup.checkedButton = showsDesktopRadio;
- break;
- default:
- break;
- }
- }
-
- Component.onCompleted: {
- cfg_currentDesktopSelectedChanged();
- cfg_displayedTextChanged();
- }
-
QtControls.ButtonGroup {
id: displayedTextGroup
}
@@ -113,19 +80,22 @@ Kirigami.FormLayout {
QtControls.ButtonGroup.group: displayedTextGroup
text: i18n("No text")
- onCheckedChanged: if (checked) cfg_displayedText = 2;
+ checked: cfg_displayedText === 2
+ onToggled: if (checked) cfg_displayedText = 2;
}
QtControls.RadioButton {
id: desktopNumberRadio
QtControls.ButtonGroup.group: displayedTextGroup
text: isActivityPager ? i18n("Activity number") : i18n("Desktop number")
- onCheckedChanged: if (checked) cfg_displayedText = 0;
+ checked: cfg_displayedText === 0
+ onToggled: if (checked) cfg_displayedText = 0;
}
QtControls.RadioButton {
id: desktopNameRadio
QtControls.ButtonGroup.group: displayedTextGroup
text: isActivityPager ? i18n("Activity name") : i18n("Desktop name")
- onCheckedChanged: if (checked) cfg_displayedText = 1;
+ checked: cfg_displayedText === 1
+ onToggled: if (checked) cfg_displayedText = 1;
}
@@ -141,12 +111,14 @@ Kirigami.FormLayout {
QtControls.ButtonGroup.group: currentDesktopSelectedGroup
text: i18n("Does nothing")
- onCheckedChanged: if (checked) cfg_currentDesktopSelected = 0;
+ checked: cfg_currentDesktopSelected === 0
+ onToggled: if (checked) cfg_currentDesktopSelected = 0;
}
QtControls.RadioButton {
id: showsDesktopRadio
QtControls.ButtonGroup.group: currentDesktopSelectedGroup
text: i18n("Shows the desktop")
- onCheckedChanged: if (checked) cfg_currentDesktopSelected = 1;
+ checked: cfg_currentDesktopSelected === 1
+ onToggled: if (checked) cfg_currentDesktopSelected = 1;
}
}
--
GitLab
|