diff --git a/containments/desktop/package/contents/config/main.xml b/containments/desktop/package/contents/config/main.xml --- a/containments/desktop/package/contents/config/main.xml +++ b/containments/desktop/package/contents/config/main.xml @@ -102,6 +102,10 @@ 4 + + + 1 + 2 diff --git a/containments/desktop/package/contents/ui/ConfigIcons.qml b/containments/desktop/package/contents/ui/ConfigIcons.qml --- a/containments/desktop/package/contents/ui/ConfigIcons.qml +++ b/containments/desktop/package/contents/ui/ConfigIcons.qml @@ -56,6 +56,7 @@ property alias cfg_previewPlugins: previewPluginsDialog.previewPlugins property alias cfg_viewMode: viewMode.currentIndex property alias cfg_iconSize: iconSize.value + property alias cfg_labelWidth: labelWidth.currentIndex property alias cfg_textLines: textLines.value readonly property bool lockedByKiosk: !KAuthorized.authorize("editable_desktop_icons") @@ -228,7 +229,7 @@ id: iconSize visible: !isPopup || viewMode.currentIndex === 1 - Kirigami.FormData.label: i18n("Size:") + Kirigami.FormData.label: i18n("Icon size:") minimumValue: 0 maximumValue: 5 @@ -256,6 +257,19 @@ } } + ComboBox { + id: labelWidth + visible: !isPopup || viewMode.currentIndex === 1 + + Kirigami.FormData.label: i18n("Label width:") + + model: [ + i18n("Narrow"), + i18n("Medium"), + i18n("Wide") + ] + } + SpinBox { id: textLines visible: !isPopup || viewMode.currentIndex === 1 diff --git a/containments/desktop/package/contents/ui/FolderView.qml b/containments/desktop/package/contents/ui/FolderView.qml --- a/containments/desktop/package/contents/ui/FolderView.qml +++ b/containments/desktop/package/contents/ui/FolderView.qml @@ -607,7 +607,7 @@ } else { var iconWidth = iconSize + (2 * units.largeSpacing) + (2 * units.smallSpacing); if (root.isContainment && isRootView && scrollArea.viewportWidth > 0) { - var minIconWidth = Math.max(iconWidth, units.iconSizes.small * 6); + var minIconWidth = Math.max(iconWidth, units.iconSizes.small * ((plasmoid.configuration.labelWidth * 2) + 4)); var extraWidth = calcExtraSpacing(minIconWidth, scrollArea.viewportWidth); return minIconWidth + extraWidth; } else {