) # pylint: disable=protected-access
# save image to buffer (or probably refresh buffer so we can compare)
self._buffer.paste(buffer)
+ else:
+ # show nothing
+ print("show nothing")
+ buffer = Image.new("RGBA", (self._core._width, self._core._height))
+ self._buffer.paste(buffer)
self._subrectangles = self._core.get_refresh_areas()
def bus(self) -> _DisplayBus:
"""Current Display Bus"""
return self._core.get_bus()
+
+ @property
+ def root_group(self) -> Group:
+ return self._current_group
+
+ @root_group.setter
+ def root_group(self, new_group):
+ self._current_group = new_group
\ No newline at end of file
self._current_group = root_group
self._full_refresh = True
+ print(f"end of show: {root_group}")
+ return True
+
+ def set_root_group(self, root_group: Group) -> bool:
+ # pylint: disable=protected-access
+
+ """
+ Switches to displaying the given group of layers. When group is `None`, the
+ default CircuitPython terminal will be shown.
+
+ :param Optional[displayio.Group] root_group: The group to show.
+ """
+
+ """
+ # TODO: Implement Supervisor
+ if root_group is None:
+ circuitpython_splash = _Supervisor().circuitpython_splash
+ if not circuitpython_splash._in_group:
+ root_group = circuitpython_splash
+ elif self._current_group == circuitpython_splash:
+ return True
+ """
+
+ if root_group == self._current_group:
+ return True
+
+ if root_group is not None and root_group._in_group:
+ return False
+
+ if self._current_group is not None:
+ self._current_group._in_group = False
+
+ if root_group is not None:
+ root_group._update_transform(self._transform)
+ root_group._in_group = True
+
+ self._current_group = root_group
+ self._full_refresh = True
+
return True
def start_refresh(self) -> bool: