Source code for libqtile.widget.currentscreen

from libqtile import bar, hook
from libqtile.widget import base


[docs] class CurrentScreen(base._TextBox): """Indicates whether the screen this widget is on is currently active or not""" defaults = [ ("active_text", "A", "Text displayed when the screen is active"), ("inactive_text", "I", "Text displayed when the screen is inactive"), ("active_color", "00ff00", "Color when screen is active"), ("inactive_color", "ff0000", "Color when screen is inactive"), ] def __init__(self, width=bar.CALCULATED, **config): base._TextBox.__init__(self, "", width, **config) self.add_defaults(CurrentScreen.defaults) def _configure(self, qtile, bar): base._TextBox._configure(self, qtile, bar) hook.subscribe.current_screen_change(self.update_text) self.update_text() def update_text(self): if self.qtile.current_screen == self.bar.screen: self.layout.colour = self.active_color self.update(self.active_text) else: self.layout.colour = self.inactive_color self.update(self.inactive_text)