Warning, /multimedia/audiotube/src/contents/ui/SearchHistoryPage.qml is written in an unsupported language. File is not indexed.
0001 // SPDX-FileCopyrightText: Mathis BrĂ¼chert <mbb@kaidan.im> 0002 // 0003 // SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0004 0005 import org.kde.kirigami 2.12 as Kirigami 0006 import QtQuick.Controls 2.15 as Controls 0007 0008 import QtQuick 2.15 0009 import QtQuick.Layouts 1.15 0010 0011 import org.kde.ytmusic 1.0 0012 0013 Kirigami.ScrollablePage { 0014 objectName: "searchPage" 0015 0016 topPadding: 0 0017 bottomPadding: 0 0018 leftPadding: 0 0019 rightPadding: 0 0020 0021 Kirigami.Theme.colorSet: Kirigami.Theme.View 0022 0023 ColumnLayout { 0024 Controls.ScrollView { 0025 Layout.fillWidth: true 0026 0027 id: recents 0028 visible: searchLoader.text && recentsRepeater.count > 0 0029 leftPadding: 10 0030 topPadding: 10 0031 Controls.ScrollBar.horizontal.policy: Controls.ScrollBar.AlwaysOff 0032 0033 RowLayout { 0034 id: recentsLayout 0035 spacing: 10 0036 Layout.fillWidth: true 0037 0038 Repeater { 0039 id: recentsRepeater 0040 Layout.fillWidth: true 0041 model: LocalSearchModel { 0042 searchQuery: searchLoader.text 0043 } 0044 0045 delegate: searchAlbum 0046 } 0047 } 0048 } 0049 0050 Kirigami.Separator { 0051 Layout.fillWidth: true 0052 visible: recents.visible 0053 } 0054 0055 id: completionList 0056 0057 Repeater { 0058 Layout.fillHeight: true 0059 Layout.fillWidth: true 0060 model: Library.searches 0061 0062 delegate: Controls.ItemDelegate { 0063 implicitHeight: Kirigami.Units.gridUnit * 2 0064 Layout.fillWidth: true 0065 0066 required property string searchQuery 0067 0068 contentItem: RowLayout { 0069 Kirigami.Icon { 0070 source: "search" 0071 implicitHeight: Kirigami.Units.gridUnit 0072 implicitWidth: Kirigami.Units.gridUnit 0073 color: Kirigami.Theme.disabledTextColor 0074 } 0075 Controls.Label { 0076 text: searchQuery 0077 Layout.fillWidth: true 0078 elide: Text.ElideRight 0079 } 0080 Controls.ToolButton { 0081 icon.name: "list-remove" 0082 text: i18n("remove from search history") 0083 display: Controls.AbstractButton.IconOnly 0084 onClicked: { 0085 Library.removeSearch(model.display) 0086 } 0087 } 0088 0089 } 0090 onClicked: { 0091 searchLoader.text = searchQuery 0092 searchLoader.accepted() 0093 } 0094 } 0095 } 0096 } 0097 }