def clean_screens(self): """ Clean unplugged screens If instance_per_screen, clean all screens without a geometry, otherwise stop iterating in screens when nb_randr_screens is reached """ if self.instance_per_screen: for s in self._screens: if s.geometry: yield s else: nb_randr_screens = len(get_randr_screens()) for screen, i in zip(self._screens, range(nb_randr_screens)): yield screen
def test_bar_per_screen(disable_sigcatch): """ Test an empty bar """ p = Panel() w = TextWidget(text="test") w1 = TextWidget(text="test1") for screen_name in get_randr_screens().keys(): s = Screen(screen_name) s.fg = "#FFFFFFFF" s.bg = "#FF000000" s.add_widget("c", w, w1) p.add_screen(s) try: p.start() except KeyboardInterrupt: p.stop()