diff --git a/src/data/contents/ui/MainPage.qml b/src/data/contents/ui/MainPage.qml --- a/src/data/contents/ui/MainPage.qml +++ b/src/data/contents/ui/MainPage.qml @@ -35,6 +35,10 @@ //flickable: mainListView actions { + main: Kirigami.Action { + iconName: "go-home" + onTriggered: root.pageStack.pop(-1) + } contextualActions: [ Kirigami.Action { text:"Action 1" @@ -192,28 +196,38 @@ ColumnLayout { Kirigami.CardsLayout { Repeater { - activeFocusOnTab: true focus: true model: KSortFilterProxyModel { sourceModel: galleryModel filterRole: "title" filterRegularExpression: { - if (!searchAction.checked || searchField.text === "") return new RegExp() + if (searchField.text === "") return new RegExp() return new RegExp("%1".arg(searchField.text), "i") } } delegate: Kirigami.Card { id: listItem banner { - source: img + source: root.pageStack.lastVisibleItem == pageRoot ? img : "" title: title titleAlignment: Qt.AlignBottom | Qt.AlignLeft } + Rectangle { + anchors.fill: parent + color: "transparent" + border { + width: listItem.activeFocus ? 2 : 0 + color: Kirigami.Theme.activeTextColor + } + } + activeFocusOnTab: true showClickFeedback: true onClicked: action.trigger() + Keys.onReturnPressed: action.trigger() + Keys.onEnterPressed: action.trigger() highlighted: action.checked implicitWidth: Kirigami.Units.gridUnit*30 - implicitHeight: Kirigami.Units.gridUnit*10 + implicitHeight: root.pageStack.lastVisibleItem == pageRoot ? Kirigami.Units.gridUnit*10 : Kirigami.Units.gridUnit*2 Layout.maximumWidth: Kirigami.Units.gridUnit*30 Kirigami.PagePoolAction { id: action