def __init__(self, core: Core, wlr_output: wlrOutput): self.core = core self.renderer = core.renderer self.wlr_output = wlr_output wlr_output.data = self self.output_layout = self.core.output_layout self._damage: OutputDamage = OutputDamage(wlr_output) self.wallpaper = None self.transform_matrix = wlr_output.transform_matrix self.x, self.y = self.output_layout.output_coords(wlr_output) self.add_listener(wlr_output.destroy_event, self._on_destroy) self.add_listener(self._damage.frame_event, self._on_frame) # The layers enum indexes into this list to get a list of surfaces self.layers: List[List[Static]] = [ [] for _ in range(len(LayerShellV1Layer)) ] # This is run during tests, when we want to fix the output's geometry if wlr_output.is_headless and "PYTEST_CURRENT_TEST" in os.environ: assert len(core.outputs) < 2, "This should not be reached" if not core.outputs: # First test output wlr_output.set_custom_mode(800, 600, 0) else: # Secound test output wlr_output.set_custom_mode(640, 480, 0) wlr_output.commit()
def __init__(self, core: Core, wlr_output: wlrOutput): self.core = core self.renderer = core.renderer self.wlr_output = wlr_output wlr_output.data = self self.output_layout = self.core.output_layout self.damage: OutputDamage = OutputDamage(wlr_output) self.wallpaper = None self.transform_matrix = wlr_output.transform_matrix self.x, self.y = self.output_layout.output_coords(wlr_output) self.add_listener(wlr_output.destroy_event, self._on_destroy) self.add_listener(self.damage.frame_event, self._on_frame) # The layers enum indexes into this list to get a list of surfaces self.layers: List[List[Static]] = [[]] * len(LayerShellV1Layer)