OnzeMenuKDE icon indicating copy to clipboard operation
OnzeMenuKDE copied to clipboard

Make Popup menus for Shutdown Button in Footer.qml

Open viggen66 opened this issue 1 year ago • 0 comments

Replace

    PlasmaComponents3.ToolButton {
    icon.name:  "system-shutdown"
    onClicked: pmEngine.performOperation("requestShutDown")
    //Layout.rightMargin: 10
    ToolTip.delay: 1000
    ToolTip.timeout: 1000
    ToolTip.visible: hovered
    ToolTip.text: i18n("Leave ...")
} 

With Pop-Up menu (Sleep, Reboot, Shutdown)

  Menu {
    id: shutdownMenu
    MenuItem {
        text: i18n("Sleep")
        onTriggered: {
            pmEngine.performOperation("requestSleep")
        }
    }
    MenuItem {
        text: i18n("Restart")
        onTriggered: {
            pmEngine.performOperation("requestReboot")
        }
    }
    MenuItem {
        text: i18n("Shutdown")
        onTriggered: pmEngine.performOperation("requestShutDown")
    }
}

Button {
    id: shutdownButton
    icon.name: "system-shutdown"
    onClicked: {
        shutdownMenu.popup(shutdownButton.x, shutdownButton.y + shutdownButton.height)
    }
    ToolTip.delay: 1000
    ToolTip.timeout: 1000
    ToolTip.visible: hovered
    ToolTip.text: i18n("System Actions")
}

This code needs reviewing because events 'requestSleep' & 'requestReboot' are not supported with pmEngine.performOperation, only shutdown, probably needs new object imports from QML which I'm not familiar with.

viggen66 avatar Nov 18 '23 15:11 viggen66