diff --git a/sidebar/package/contents/ui/introPage.qml b/sidebar/package/contents/ui/introPage.qml --- a/sidebar/package/contents/ui/introPage.qml +++ b/sidebar/package/contents/ui/introPage.qml @@ -25,6 +25,7 @@ Rectangle { id: root color: Kirigami.Theme.backgroundColor + property int verticalMargin: 50 signal focusNextRequest() signal focusPreviousRequest() @@ -37,64 +38,87 @@ iconsRow.children[iconsRow.children.length-1].focus = true; } - ColumnLayout { + RowLayout { anchors { - bottom: separator.top - bottomMargin: Kirigami.Units.largeSpacing + bottom: parent.verticalCenter + bottomMargin: verticalMargin horizontalCenter: parent.horizontalCenter } + Layout.alignment: Qt.AlignHCenter Kirigami.Icon { Layout.alignment: Qt.AlignHCenter source: "preferences-system" width: Kirigami.Units.iconSizes.enormous height: width - opacity: 0.3 } - QQC2.Label { - Layout.alignment: Qt.AlignHCenter - text: i18n("System Settings") + Item { + // spacer item + width: 10 + } + ColumnLayout { + Kirigami.Heading { + text: "KDE Plasma" + font.pointSize: 24 // largest level is too small, so we use pointSize + } + Kirigami.Heading { + text: i18n("System Settings") + font.pointSize: 16 + } } } - Kirigami.Separator { - id: separator - anchors.centerIn: parent - width: Math.round(parent.width * 0.8) - } - ColumnLayout { + Kirigami.Heading { + id: frequentlyUsed anchors { - top: separator.bottom - topMargin: Kirigami.Units.largeSpacing + top: parent.verticalCenter + topMargin: verticalMargin horizontalCenter: parent.horizontalCenter } - width: Math.round(parent.width * 0.8) - Kirigami.Heading { - Layout.alignment: Qt.AlignHCenter - level: 3 - wrapMode: Text.NoWrap - text: i18n("Frequently used:") + Layout.alignment: Qt.AlignHCenter + level: 4 + wrapMode: Text.NoWrap + text: i18n("Frequently used:") + } + Rectangle { + anchors { + top: frequentlyUsed.bottom + topMargin: 20 + horizontalCenter: parent.horizontalCenter } - RowLayout { - id: iconsRow - Layout.fillWidth: true - Layout.alignment: Qt.AlignHCenter - spacing: Kirigami.Units.largeSpacing - property int spaceForIcon: Math.max((iconsRow.parent.width - iconsRow.spacing * 4) / 5, Kirigami.Units.iconSizes.medium) - property int iconSize: iconsRow.spaceForIcon >= Kirigami.Units.iconSizes.huge - ? Kirigami.Units.iconSizes.huge - : (iconsRow.spaceForIcon >= Kirigami.Units.iconSizes.large ? Kirigami.Units.iconSizes.large : Kirigami.Units.iconSizes.medium) + width: parent.width * 0.8 + height: 150 + color: Qt.lighter(Kirigami.Theme.backgroundColor, 1.5) // brighter background using some heuristic + radius: 30 + ColumnLayout { + anchors { + top: parent.top + topMargin: 20 + horizontalCenter: parent.horizontalCenter + } + width: Math.round(parent.width * 0.9) + RowLayout { + id: iconsRow + Layout.fillWidth: true + Layout.alignment: Qt.AlignHCenter + spacing: Kirigami.Units.largeSpacing + property int spaceForIcon: Math.max((iconsRow.parent.width - iconsRow.spacing * 4) / 5, Kirigami.Units.iconSizes.medium) + property int iconSize: iconsRow.spaceForIcon >= Kirigami.Units.iconSizes.huge + ? Kirigami.Units.iconSizes.huge + : (iconsRow.spaceForIcon >= Kirigami.Units.iconSizes.large ? Kirigami.Units.iconSizes.large : Kirigami.Units.iconSizes.medium) - Repeater { - id: mostUsedRepeater - model: systemsettings.mostUsedModel - delegate: IntroIcon { - icon: model.decoration - text: model.display - iconSize: iconsRow.iconSize - Layout.minimumWidth: iconsRow.spaceForIcon - Layout.maximumWidth: Layout.minimumWidth - visible: (index + 1) * iconSize + index * iconsRow.spacing < iconsRow.parent.width + Repeater { + id: mostUsedRepeater + model: systemsettings.mostUsedModel + delegate: IntroIcon { + icon: model.decoration + text: model.display + iconSize: iconsRow.iconSize + Layout.minimumWidth: iconsRow.spaceForIcon + Layout.maximumWidth: Layout.minimumWidth + visible: (index + 1) * iconSize + index * iconsRow.spacing < iconsRow.parent.width + } } } } } + }