[modules/twmn] Update to latest API

This commit is contained in:
tobi-wan-kenobi 2020-04-13 13:30:35 +02:00
parent 7edaadffdf
commit 95d046d5e8

View file

@ -2,38 +2,37 @@
"""Toggle twmn notifications."""
import bumblebee.input
import bumblebee.output
import bumblebee.engine
import core.module
import core.widget
import core.input
import core.decorators
import util.cli
class Module(bumblebee.engine.Module):
def __init__(self, engine, config):
super(Module, self).__init__(engine, config,
bumblebee.output.Widget(full_text="")
)
self._paused = False
class Module(core.module.Module):
@core.decorators.every(minutes=60)
def __init__(self, config):
super().__init__(config, core.widget.Widget(''))
self.__paused = False
# Make sure that twmn is currently not paused
try:
bumblebee.util.execute("killall -SIGUSR2 twmnd")
except:
pass
engine.input.register_callback(self, button=bumblebee.input.LEFT_MOUSE,
cmd=self.toggle_status
)
util.cli.execute('killall -SIGUSR2 twmnd', ignore_errors=True)
core.input.register(self, button=core.input.LEFT_MOUSE, cmd=self.toggle_status)
def toggle_status(self, event):
self._paused = not self._paused
self.__paused = not self.__paused
try:
if self._paused:
bumblebee.util.execute("systemctl --user start twmnd")
if self.__paused:
util.cli.execute('systemctl --user start twmnd')
else:
bumblebee.util.execute("systemctl --user stop twmnd")
util.cli.execute('systemctl --user stop twmnd')
except:
self._paused = not self._paused # toggling failed
self.__paused = not self.__paused # toggling failed
def state(self, widget):
if self._paused:
return ["muted"]
return ["unmuted"]
if self.__paused:
return ['muted']
return ['unmuted']
# vim: tabstop=8 expandtab shiftwidth=4 softtabstop=4