ShutdownUI: add single instance

pull/9/head
reionwong 4 years ago
parent 0616f89957
commit 5e16a0b416

@ -24,6 +24,7 @@
#include <QFile>
#include <QLocale>
#include <QTranslator>
#include <QDBusConnection>
#include "actions.h"
@ -33,6 +34,14 @@ int main(int argc, char *argv[])
QGuiApplication app(argc, argv);
if (!QDBusConnection::sessionBus().registerService("org.cutefish.ShutdownUI")) {
return -1;
}
if (!QDBusConnection::sessionBus().registerObject("/ShutdownUI", &app)) {
return -1;
}
// Translations
QLocale locale;
QString qmFilePath = QString("%1/%2.qm").arg("/usr/share/cutefish-shutdown/translations/").arg(locale.name());

@ -28,7 +28,7 @@ ApplicationWindow {
height: Screen.height
visible: true
visibility: Window.FullScreen
flags: Qt.FramelessWindowHint | Qt.Popup
flags: Qt.FramelessWindowHint | Qt.X11BypassWindowManagerHint
id: root
color: "transparent"
@ -59,57 +59,68 @@ ApplicationWindow {
onClicked: exit()
}
RowLayout {
id: layout
Item {
id: rootItem
anchors.fill: parent
spacing: root.width * 0.05
focus: true
Item {
Layout.fillWidth: true
Keys.enabled: true
Keys.onEscapePressed: {
Qt.quit()
}
IconButton {
id: shutdownButton
Layout.alignment: Qt.AlignVCenter
text: qsTr("Shutdown")
icon: "qrc:///icons/system-shutdown.svg"
onClicked: actions.shutdown()
}
IconButton {
id: rebootButton
Layout.alignment: Qt.AlignVCenter
text: qsTr("Reboot")
icon: "qrc:///icons/system-reboot.svg"
onClicked: actions.reboot()
}
IconButton {
id: logoutButton
Layout.alignment: Qt.AlignVCenter
text: qsTr("Logout")
icon: "qrc:///icons/system-log-out.svg"
onClicked: actions.logout()
}
IconButton {
id: lockscreenButton
Layout.alignment: Qt.AlignVCenter
text: qsTr("Lock screen")
icon: "qrc:/icons/system-lock-screen.svg"
onClicked: actions.lockScreen()
}
IconButton {
id: suspendButton
Layout.alignment: Qt.AlignVCenter
text: qsTr("Suspend")
icon: "qrc:///icons/system-suspend.svg"
onClicked: actions.suspend()
}
Item {
Layout.fillWidth: true
RowLayout {
id: layout
anchors.fill: parent
spacing: root.width * 0.05
Item {
Layout.fillWidth: true
}
IconButton {
id: shutdownButton
Layout.alignment: Qt.AlignVCenter
text: qsTr("Shutdown")
icon: "qrc:///icons/system-shutdown.svg"
onClicked: actions.shutdown()
}
IconButton {
id: rebootButton
Layout.alignment: Qt.AlignVCenter
text: qsTr("Reboot")
icon: "qrc:///icons/system-reboot.svg"
onClicked: actions.reboot()
}
IconButton {
id: logoutButton
Layout.alignment: Qt.AlignVCenter
text: qsTr("Logout")
icon: "qrc:///icons/system-log-out.svg"
onClicked: actions.logout()
}
IconButton {
id: lockscreenButton
Layout.alignment: Qt.AlignVCenter
text: qsTr("Lock screen")
icon: "qrc:/icons/system-lock-screen.svg"
onClicked: actions.lockScreen()
}
IconButton {
id: suspendButton
Layout.alignment: Qt.AlignVCenter
text: qsTr("Suspend")
icon: "qrc:///icons/system-suspend.svg"
onClicked: actions.suspend()
}
Item {
Layout.fillWidth: true
}
}
}
}

Loading…
Cancel
Save