diff --git a/applets/pager/package/contents/config/main.xml b/applets/pager/package/contents/config/main.xml
--- a/applets/pager/package/contents/config/main.xml
+++ b/applets/pager/package/contents/config/main.xml
@@ -31,6 +31,15 @@
0
+
+
+
+
+
+
+
+ 0
+
diff --git a/applets/pager/package/contents/ui/configGeneral.qml b/applets/pager/package/contents/ui/configGeneral.qml
--- a/applets/pager/package/contents/ui/configGeneral.qml
+++ b/applets/pager/package/contents/ui/configGeneral.qml
@@ -38,6 +38,7 @@
property int cfg_displayedText
property alias cfg_showWindowIcons: showWindowIcons.checked
property int cfg_currentDesktopSelected
+ property alias cfg_pagerLayout: pagerLayout.currentIndex
property alias cfg_showOnlyCurrentScreen: showOnlyCurrentScreen.checked
onCfg_displayedTextChanged: {
@@ -131,6 +132,18 @@
}
QtControls.Label {
+ text: i18n("Layout:")
+ Layouts.Layout.alignment: Qt.AlignVCenter|Qt.AlignRight
+ visible: isActivityPager
+ }
+
+ QtControls.ComboBox {
+ id: pagerLayout
+ model: [i18nc("The pager layout", "Default"), i18n("Horizontal"), i18n("Vertical")]
+ visible: isActivityPager
+ }
+
+ QtControls.Label {
text: i18n("Selecting current desktop:")
Layouts.Layout.alignment: Qt.AlignVCenter|Qt.AlignRight
}
diff --git a/applets/pager/package/contents/ui/main.qml b/applets/pager/package/contents/ui/main.qml
--- a/applets/pager/package/contents/ui/main.qml
+++ b/applets/pager/package/contents/ui/main.qml
@@ -193,16 +193,26 @@
return 1;
}
- var columns = Math.floor(pagerModel.count / pagerModel.layoutRows);
+ var rows = 1;
- if (pagerModel.count % pagerModel.layoutRows > 0) {
- columns += 1;
- }
+ if (isActivityPager && plasmoid.configuration.pagerLayout !== 0 /*No Default*/) {
+ if (plasmoid.configuration.pagerLayout === 1 /*Horizontal*/) {
+ rows = 1;
+ } else if (plasmoid.configuration.pagerLayout === 2 /*Vertical*/) {
+ rows = pagerModel.count;
+ }
+ } else {
+ var columns = Math.floor(pagerModel.count / pagerModel.layoutRows);
- var rows = Math.floor(pagerModel.count / columns);
+ if (pagerModel.count % pagerModel.layoutRows > 0) {
+ columns += 1;
+ }
- if (pagerModel.count % columns > 0) {
- rows += 1;
+ rows = Math.floor(pagerModel.count / columns);
+
+ if (pagerModel.count % columns > 0) {
+ rows += 1;
+ }
}
return rows;