diff --git a/plasmoid/package/contents/ui/DetailView.qml b/plasmoid/package/contents/ui/DetailView.qml index 883fb30..dafca5a 100644 --- a/plasmoid/package/contents/ui/DetailView.qml +++ b/plasmoid/package/contents/ui/DetailView.qml @@ -1,5 +1,5 @@ import QtQuick 2.7 -import org.kde.plasma.components 2.0 as PlasmaComponents // for Menu and MenuItem +import QtQuick.Controls 2.15 as QQC2 ListView { id: detailView @@ -8,12 +8,12 @@ ListView { interactive: false height: contentHeight - PlasmaComponents.Menu { + QQC2.Menu { id: contextMenu - PlasmaComponents.MenuItem { + QQC2.MenuItem { text: qsTr('Copy value') - icon: "edit-copy" - onClicked: { + icon.name: "edit-copy" + onTriggered: { var item = detailView.contextMenuItem if (item) { plasmoid.nativeInterface.copyToClipboard(item.detailValue) @@ -24,6 +24,6 @@ ListView { function showContextMenu(item, x, y) { contextMenuItem = item - contextMenu.open(x, y) + contextMenu.popup() } } diff --git a/plasmoid/package/contents/ui/DevicesPage.qml b/plasmoid/package/contents/ui/DevicesPage.qml index 84f1e33..0b08e24 100644 --- a/plasmoid/package/contents/ui/DevicesPage.qml +++ b/plasmoid/package/contents/ui/DevicesPage.qml @@ -1,7 +1,7 @@ import QtQuick 2.3 import QtQuick.Layouts 1.1 import QtQml.Models 2.2 -import org.kde.plasma.components 2.0 as PlasmaComponents // for Menu and MenuItem +import QtQuick.Controls 2.15 as QQC2 import org.kde.plasma.components 3.0 as PlasmaComponents3 import org.kde.plasma.core 2.0 as PlasmaCore @@ -88,7 +88,7 @@ Item { } } - PlasmaComponents.Menu { + QQC2.Menu { id: contextMenu function init(item) { @@ -97,24 +97,23 @@ Item { resumePauseItem.icon = item.resumePauseButton.icon } - PlasmaComponents.MenuItem { + QQC2.MenuItem { text: qsTr("Copy name") - icon: "edit-copy" - onClicked: deviceView.copyCurrentItemData("devName") + icon.name: "edit-copy" + onTriggered: deviceView.copyCurrentItemData("devName") } - PlasmaComponents.MenuItem { + QQC2.MenuItem { text: qsTr("Copy ID") - icon: "edit-copy" - onClicked: deviceView.copyCurrentItemData("devID") + icon.name: "edit-copy" + onTriggered: deviceView.copyCurrentItemData("devID") } - PlasmaComponents.MenuItem { - separator: true + QQC2.MenuSeparator { } - PlasmaComponents.MenuItem { + QQC2.MenuItem { id: resumePauseItem text: qsTr("Pause") - icon: "media-playback-pause" - onClicked: deviceView.clickCurrentItemButton( + icon.name: "media-playback-pause" + onTriggered: deviceView.clickCurrentItemButton( "resumePauseButton") } } diff --git a/plasmoid/package/contents/ui/DirectoriesPage.qml b/plasmoid/package/contents/ui/DirectoriesPage.qml index 1c5aa56..d8cebf7 100644 --- a/plasmoid/package/contents/ui/DirectoriesPage.qml +++ b/plasmoid/package/contents/ui/DirectoriesPage.qml @@ -1,7 +1,7 @@ import QtQuick 2.3 import QtQuick.Layouts 1.1 import QtQml.Models 2.2 -import org.kde.plasma.components 2.0 as PlasmaComponents // for Menu and MenuItem +import QtQuick.Controls 2.15 as QQC2 import org.kde.plasma.components 3.0 as PlasmaComponents3 import org.kde.plasma.core 2.0 as PlasmaCore import martchus.syncthingplasmoid 0.6 as SyncthingPlasmoid @@ -133,48 +133,47 @@ ColumnLayout { } } - PlasmaComponents.Menu { + QQC2.Menu { id: contextMenu function init(item) { // use value for properties depending on paused state from buttons rescanItem.enabled = item.rescanButton.enabled resumePauseItem.text = item.resumePauseButton.tooltip - resumePauseItem.icon = item.resumePauseButton.icon + resumePauseItem.icon.name = item.resumePauseButton.icon } - PlasmaComponents.MenuItem { + QQC2.MenuItem { text: qsTr("Copy label/ID") - icon: "edit-copy" - onClicked: directoryView.copyCurrentItemData("dirName") + icon.name: "edit-copy" + onTriggered: directoryView.copyCurrentItemData("dirName") } - PlasmaComponents.MenuItem { + QQC2.MenuItem { text: qsTr("Copy path") - icon: "edit-copy" - onClicked: directoryView.copyCurrentItemData("dirPath") + icon.name: "edit-copy" + onTriggered: directoryView.copyCurrentItemData("dirPath") } - PlasmaComponents.MenuItem { - separator: true + QQC2.MenuSeparator { } - PlasmaComponents.MenuItem { + QQC2.MenuItem { id: rescanItem text: qsTr("Rescan") - icon: "view-refresh" - onClicked: directoryView.clickCurrentItemButton( + icon.name: "view-refresh" + onTriggered: directoryView.clickCurrentItemButton( "rescanButton") } - PlasmaComponents.MenuItem { + QQC2.MenuItem { id: resumePauseItem text: qsTr("Pause") - icon: "media-playback-pause" - onClicked: directoryView.clickCurrentItemButton( + icon.name: "media-playback-pause" + onTriggered: directoryView.clickCurrentItemButton( "resumePauseButton") } - PlasmaComponents.MenuItem { + QQC2.MenuItem { id: openItem text: qsTr("Open in file browser") - icon: "folder" - onClicked: directoryView.clickCurrentItemButton( + icon.name: "folder" + onTriggered: directoryView.clickCurrentItemButton( "openButton") } } diff --git a/plasmoid/package/contents/ui/DownloadsPage.qml b/plasmoid/package/contents/ui/DownloadsPage.qml index 64197ae..82f934f 100644 --- a/plasmoid/package/contents/ui/DownloadsPage.qml +++ b/plasmoid/package/contents/ui/DownloadsPage.qml @@ -1,7 +1,7 @@ import QtQuick 2.3 import QtQuick.Layouts 1.1 import QtQml.Models 2.2 -import org.kde.plasma.components 2.0 as PlasmaComponents // for Menu and MenuItem +import QtQuick.Controls 2.15 as QQC2 import org.kde.plasma.components 3.0 as PlasmaComponents3 import org.kde.plasma.core 2.0 as PlasmaCore @@ -131,22 +131,21 @@ Item { } } - PlasmaComponents.Menu { + QQC2.Menu { id: contextMenu - PlasmaComponents.MenuItem { + QQC2.MenuItem { text: qsTr("Copy label/ID") - icon: "edit-copy" - onClicked: downloadView.copyCurrentItemData("downloadName") + icon.name: "edit-copy" + onTriggered: downloadView.copyCurrentItemData("downloadName") } - PlasmaComponents.MenuItem { - separator: true + QQC2.MenuSeparator { } - PlasmaComponents.MenuItem { + QQC2.MenuItem { id: openItem text: qsTr("Open in file browser") - icon: "folder" - onClicked: downloadView.clickCurrentItemButton("openButton") + icon.name: "folder" + onTriggered: downloadView.clickCurrentItemButton("openButton") } } } diff --git a/plasmoid/package/contents/ui/RecentChangesPage.qml b/plasmoid/package/contents/ui/RecentChangesPage.qml index ad00114..891ead8 100644 --- a/plasmoid/package/contents/ui/RecentChangesPage.qml +++ b/plasmoid/package/contents/ui/RecentChangesPage.qml @@ -1,7 +1,7 @@ import QtQuick 2.3 import QtQuick.Layouts 1.1 import QtQml.Models 2.2 -import org.kde.plasma.components 2.0 as PlasmaComponents // for Menu and MenuItem +import QtQuick.Controls 2.15 as QQC2 import org.kde.plasma.components 3.0 as PlasmaComponents3 import org.kde.plasma.core 2.0 as PlasmaCore @@ -103,17 +103,17 @@ Item { } } - PlasmaComponents.Menu { + QQC2.Menu { id: contextMenu - PlasmaComponents.MenuItem { + QQC2.MenuItem { text: qsTr("Copy path") - icon: "edit-copy" - onClicked: recentChangesView.currentItem.copyPath() + icon.name: "edit-copy" + onTriggered: recentChangesView.currentItem.copyPath() } - PlasmaComponents.MenuItem { + QQC2.MenuItem { text: qsTr("Copy device ID") - icon: "network-server-symbolic" - onClicked: recentChangesView.currentItem.copyDeviceId() + icon.name: "network-server-symbolic" + onTriggered: recentChangesView.currentItem.copyDeviceId() } PlasmaComponents.MenuItem { text: qsTr("Copy directory ID") diff --git a/plasmoid/package/contents/ui/TopLevelView.qml b/plasmoid/package/contents/ui/TopLevelView.qml index d529bb9..f56553e 100644 --- a/plasmoid/package/contents/ui/TopLevelView.qml +++ b/plasmoid/package/contents/ui/TopLevelView.qml @@ -1,5 +1,5 @@ import QtQuick 2.7 -import org.kde.plasma.components 2.0 as PlasmaComponents // for Highlight and DialogStatus.Closed (used with Menu and MenuItem) +import org.kde.plasma.components 2.0 as PlasmaComponents // for Highlight ListView { boundsBehavior: Flickable.StopAtBounds @@ -14,11 +14,9 @@ ListView { } function activate(index) { - if (typeof contextMenu !== "undefined" - && contextMenu.status !== PlasmaComponents.DialogStatus.Closed) { - return + if (typeof contextMenu === "undefined") { + currentIndex = index } - currentIndex = index } function clickCurrentItemButton(buttonName) { @@ -48,6 +46,6 @@ ListView { if (typeof contextMenu.init !== "undefined") { contextMenu.init(item) } - contextMenu.open(x, y) + contextMenu.popup() } }