[plasma/plasma-desktop] /: Stop forcing things to be bigger in Tablet Mode
Nate Graham
null at kde.org
Mon Mar 30 22:59:19 BST 2026
Git commit 16016c8b992f74630182956cac285465eee7baf9 by Nate Graham.
Committed on 30/03/2026 at 21:26.
Pushed by ngraham into branch 'master'.
Stop forcing things to be bigger in Tablet Mode
Part of #252
This was a failed experiment that didn't really work out.
BUG: 511439
FIXED-IN: 6.7.0
M +1 -9 applets/kickoff/ConfigGeneral.qml
M +1 -1 applets/kickoff/KickoffListDelegate.qml
M +4 -17 applets/taskmanager/qml/ConfigAppearance.qml
M +2 -2 applets/taskmanager/qml/code/LayoutMetrics.js
M +8 -9 doc/kcontrol/workspaceoptions/index.docbook
M +6 -6 kcms/workspaceoptions/ui/main.qml
https://invent.kde.org/plasma/plasma-desktop/-/commit/16016c8b992f74630182956cac285465eee7baf9
diff --git a/applets/kickoff/ConfigGeneral.qml b/applets/kickoff/ConfigGeneral.qml
index 9ac92d2c81..8881223cb5 100644
--- a/applets/kickoff/ConfigGeneral.qml
+++ b/applets/kickoff/ConfigGeneral.qml
@@ -179,15 +179,7 @@ KCM.SimpleKCM {
QQC2.CheckBox {
id: compactModeCheckbox
text: i18nc("@option:check", "Use compact list item style") // qmllint disable unqualified
- checked: Kirigami.Settings.tabletMode ? true : Plasmoid.configuration.compactMode
- enabled: !Kirigami.Settings.tabletMode
- }
- QQC2.Label {
- visible: Kirigami.Settings.tabletMode
- text: i18nc("@info:usagetip under a checkbox when Touch Mode is on", "Automatically disabled when in Touch Mode") // qmllint disable unqualified
- Layout.fillWidth: true
- wrapMode: Text.Wrap
- font: Kirigami.Theme.smallFont
+ checked: Plasmoid.configuration.compactMode
}
QQC2.CheckBox {
diff --git a/applets/kickoff/KickoffListDelegate.qml b/applets/kickoff/KickoffListDelegate.qml
index fcdc20271e..8413aff4da 100644
--- a/applets/kickoff/KickoffListDelegate.qml
+++ b/applets/kickoff/KickoffListDelegate.qml
@@ -22,7 +22,7 @@ import org.kde.plasma.plasmoid
AbstractKickoffItemDelegate {
id: root
- property bool compact: Kirigami.Settings.tabletMode ? false : Plasmoid.configuration.compactMode
+ property bool compact: Plasmoid.configuration.compactMode
leftPadding: KickoffSingleton.listItemMetrics.margins.left
+ (mirrored ? KickoffSingleton.fontMetrics.descent : 0)
diff --git a/applets/taskmanager/qml/ConfigAppearance.qml b/applets/taskmanager/qml/ConfigAppearance.qml
index 7eaac11f64..6f19a68e96 100644
--- a/applets/taskmanager/qml/ConfigAppearance.qml
+++ b/applets/taskmanager/qml/ConfigAppearance.qml
@@ -174,28 +174,15 @@ KCMUtils.SimpleKCM {
]
textRole: "label"
- enabled: !Kirigami.Settings.tabletMode
- currentIndex: {
- if (Kirigami.Settings.tabletMode) {
- return 2; // Large
- }
-
- switch (root.cfg_iconSpacing) {
- case 0: return 0; // Small
- case 1: return 1; // Normal
- case 3: return 2; // Large
- }
+ currentIndex: switch (root.cfg_iconSpacing) {
+ case 0: return 0; // Small
+ case 1: return 1; // Normal
+ case 3: return 2; // Large
}
onActivated: index => {
root.cfg_iconSpacing = model[currentIndex]["spacing"];
}
}
-
- QQC2.Label {
- visible: Kirigami.Settings.tabletMode
- text: i18nc("@info:usagetip under a set of radio buttons when Touch Mode is on", "Automatically set to Large when in Touch mode")
- font: Kirigami.Theme.smallFont
- }
}
}
diff --git a/applets/taskmanager/qml/code/LayoutMetrics.js b/applets/taskmanager/qml/code/LayoutMetrics.js
index 895cc725d2..ffac060bcb 100644
--- a/applets/taskmanager/qml/code/LayoutMetrics.js
+++ b/applets/taskmanager/qml/code/LayoutMetrics.js
@@ -10,12 +10,12 @@ const iconMargin = Math.round(Kirigami.Units.smallSpacing / 4);
const labelMargin = Kirigami.Units.smallSpacing;
function horizontalMargins() {
- const spacingAdjustment = (tasks.plasmoid.pluginName === "org.kde.plasma.icontasks") ? (Kirigami.Settings.tabletMode ? 3 : tasks.plasmoid.configuration.iconSpacing) : 1
+ const spacingAdjustment = (tasks.plasmoid.pluginName === "org.kde.plasma.icontasks") ? tasks.plasmoid.configuration.iconSpacing : 1
return (taskFrame.margins.left + taskFrame.margins.right) * (tasks.vertical ? 1 : spacingAdjustment);
}
function verticalMargins() {
- const spacingAdjustment = (tasks.plasmoid.pluginName === "org.kde.plasma.icontasks") ? (Kirigami.Settings.tabletMode ? 3 : tasks.plasmoid.configuration.iconSpacing) : 1
+ const spacingAdjustment = (tasks.plasmoid.pluginName === "org.kde.plasma.icontasks") ? tasks.plasmoid.configuration.iconSpacing : 1
return (taskFrame.margins.top + taskFrame.margins.bottom) * (tasks.vertical ? spacingAdjustment : 1);
}
diff --git a/doc/kcontrol/workspaceoptions/index.docbook b/doc/kcontrol/workspaceoptions/index.docbook
index 600ca58ccd..54005105c2 100644
--- a/doc/kcontrol/workspaceoptions/index.docbook
+++ b/doc/kcontrol/workspaceoptions/index.docbook
@@ -89,33 +89,32 @@
</varlistentry>
<varlistentry>
-<term><guimenuitem>Touch Mode</guimenuitem></term>
+<term><guimenuitem>Tablet Mode</guimenuitem></term>
<listitem>
-<para>In Touch Mode, many elements of the user interface will become larger to
-more easily accommodate touch interaction.</para>
+<para>In Tablet Mode, the virtual keyboard will appear when needed.</para>
</listitem>
</varlistentry>
<varlistentry>
-<term><menuchoice><guimenu>Touch Mode</guimenu><guimenuitem>Automatically enable as needed</guimenuitem></menuchoice></term>
+<term><menuchoice><guimenu>Tablet Mode</guimenu><guimenuitem>Automatically enable as needed</guimenuitem></menuchoice></term>
<listitem>
-<para>If this option is selected, Touch Mode will be automatically activated whenever the system detects a
+<para>If this option is selected, Tablet Mode will be automatically activated whenever the system detects a
touchscreen but no mouse or touchpad. For example: when a transformable
laptop's keyboard is flipped around or detached.</para>
</listitem>
</varlistentry>
<varlistentry>
-<term><menuchoice><guimenu>Touch Mode</guimenu><guimenuitem>Always enabled</guimenuitem></menuchoice></term>
+<term><menuchoice><guimenu>Tablet Mode</guimenu><guimenuitem>Always enabled</guimenuitem></menuchoice></term>
<listitem>
-<para>If this option is selected, Touch Mode will always be enabled. Use this option if you use &plasma; primarily with a touchscreen, or prefer larger click targets for other reasons.</para>
+<para>If this option is selected, Tablet Mode will always be enabled. Use this option if you use &plasma; primarily with a touchscreen.</para>
</listitem>
</varlistentry>
<varlistentry>
-<term><menuchoice><guimenu>Touch Mode</guimenu><guimenuitem>Never enabled</guimenuitem></menuchoice></term>
+<term><menuchoice><guimenu>Tablet Mode</guimenu><guimenuitem>Never enabled</guimenuitem></menuchoice></term>
<listitem>
-<para>If this option is selected, Touch Mode will always be disabled. Use this option if you don't need Touch Mode on your device.</para>
+<para>If this option is selected, Tablet Mode will always be disabled. Use this option if you don't need Tablet Mode on your device.</para>
</listitem>
</varlistentry>
diff --git a/kcms/workspaceoptions/ui/main.qml b/kcms/workspaceoptions/ui/main.qml
index e54aac9e38..c47f0cd0a9 100644
--- a/kcms/workspaceoptions/ui/main.qml
+++ b/kcms/workspaceoptions/ui/main.qml
@@ -413,9 +413,9 @@ KCM.SimpleKCM {
QQC2.ButtonGroup { id: tabletModeBehaviorGroup }
RowLayout {
- Kirigami.FormData.label: i18nc("@title:group prefix radiobutton group", "Enable Touch Mode:")
+ Kirigami.FormData.label: i18nc("@title:group prefix radiobutton group", "Enable Tablet Mode:")
QQC2.RadioButton {
- text: KWindowSystem.isPlatformWayland ? i18nc("@option:radio As in: 'Touch Mode is automatically enabled as needed'", "Automatically enable as needed") : i18nc("option:radio As in: 'Touch Mode is never enabled'", "Never enabled")
+ text: KWindowSystem.isPlatformWayland ? i18nc("@option:radio As in: 'Tablet Mode is automatically enabled as needed'", "Automatically enable as needed") : i18nc("option:radio As in: 'Tablet Mode is never enabled'", "Never enabled")
Accessible.description: touchModeAlwaysOffRadioButtonHelperText.text
checked: kcm.kwinSettings.tabletMode === "auto"
onToggled: {
@@ -432,12 +432,12 @@ KCM.SimpleKCM {
}
Kirigami.ContextualHelpButton {
visible: KWindowSystem.isPlatformWayland
- toolTipText: i18nc("@info:whatsthis contextualhelpbutton tooltip", "Touch Mode will be automatically activated whenever the system detects a touchscreen but no mouse or touchpad. For example: when a transformable laptop's keyboard is flipped around or detached.")
+ toolTipText: i18nc("@info:whatsthis contextualhelpbutton tooltip", "Tablet Mode will be automatically activated whenever the system detects a touchscreen but no mouse or touchpad. For example: when a transformable laptop's keyboard is flipped around or detached.")
}
}
QQC2.RadioButton {
- text: i18nc("As in: 'Touch Mode is always enabled'", "Always active")
+ text: i18nc("As in: 'Tablet Mode is always enabled'", "Always active")
Accessible.description: touchModeAlwaysOffRadioButtonHelperText.text
checked: kcm.kwinSettings.tabletMode === "on"
onToggled: {
@@ -460,7 +460,7 @@ KCM.SimpleKCM {
QQC2.RadioButton {
id: touchModeAlwaysOffRadioButton
visible: KWindowSystem.isPlatformWayland
- text: i18nc("As in: 'Touch Mode is never enabled'", "Disabled")
+ text: i18nc("As in: 'Tablet Mode is never enabled'", "Disabled")
Accessible.description: touchModeAlwaysOffRadioButtonHelperText.text
checked: kcm.kwinSettings.tabletMode === "off"
onToggled: {
@@ -483,7 +483,7 @@ KCM.SimpleKCM {
touchModeAlwaysOffRadioButton.indicator.width + touchModeAlwaysOffRadioButton.spacing : touchModeAlwaysOffRadioButton.padding
rightPadding: Application.layoutDirection === Qt.RightToLeft ?
touchModeAlwaysOffRadioButton.indicator.width + touchModeAlwaysOffRadioButton.spacing : touchModeAlwaysOffRadioButtonHelperText.padding
- text: i18nc("@info:usagetip", "In Touch Mode, many elements of the user interface will become larger to more easily accommodate touch interaction.")
+ text: i18nc("@info:usagetip", "In Tablet Mode, the virtual keyboard will appear when needed.")
textFormat: Text.PlainText
elide: Text.ElideRight
font: Kirigami.Theme.smallFont
More information about the kde-doc-english
mailing list