parent
b579e649cb
commit
4802ece39d
1 changed files with 46 additions and 0 deletions
@ -0,0 +1,46 @@ |
|||||||
|
#!/usr/bin/env python3 |
||||||
|
# (c) 2017 Taeyeon Mori |
||||||
|
|
||||||
|
import sys |
||||||
|
from PyQt5 import QtGui, QtWidgets |
||||||
|
import dbus |
||||||
|
|
||||||
|
|
||||||
|
def main(argv): |
||||||
|
# Initialize DBus |
||||||
|
bus = dbus.SessionBus() |
||||||
|
sso = bus.get_object('org.freedesktop.ScreenSaver', '/org/freedesktop/ScreenSaver') |
||||||
|
inhibit = sso.get_dbus_method("Inhibit", "org.freedesktop.ScreenSaver") |
||||||
|
uninhibit = sso.get_dbus_method("UnInhibit", "org.freedesktop.ScreenSaver") |
||||||
|
|
||||||
|
# Initialize Tray Icon |
||||||
|
app = QtWidgets.QApplication(argv) |
||||||
|
app.setApplicationName("ScreenSaver Inhibit") |
||||||
|
|
||||||
|
menu = QtWidgets.QMenu() |
||||||
|
ctext = menu.addAction("Cookie") |
||||||
|
ctext.setEnabled(False) |
||||||
|
exit = menu.addAction("Quit") |
||||||
|
exit.triggered.connect(app.exit) |
||||||
|
|
||||||
|
tray = QtWidgets.QSystemTrayIcon() |
||||||
|
tray.setIcon(QtGui.QIcon.fromTheme("screensaver")) |
||||||
|
tray.setContextMenu(menu) |
||||||
|
tray.show() |
||||||
|
|
||||||
|
# Run |
||||||
|
cookie = inhibit("ScreenSaver Inhibit Tray Application", "User Inhibit") |
||||||
|
print("Inhibited: ", cookie) |
||||||
|
ctext.setText("Cookie: %s" % cookie) |
||||||
|
|
||||||
|
try: |
||||||
|
app.exec() |
||||||
|
|
||||||
|
finally: |
||||||
|
uninhibit(cookie) |
||||||
|
print("UnInhibited") |
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__": |
||||||
|
main(sys.argv) |
||||||
|
|
Loading…
Reference in new issue