pull/35545/head
Shane Smiskol 1 week ago
parent ed6060e2cd
commit 5f7a4cdc2c
  1. 1
      selfdrive/ui/layouts/home.py
  2. 12
      system/ui/lib/widget.py

@ -84,6 +84,7 @@ class HomeLayout(Widget):
self._render_alerts_view()
def _update_layout_rects(self):
print('hi2')
self.header_rect = rl.Rectangle(
self._rect.x + CONTENT_MARGIN, self._rect.y + CONTENT_MARGIN, self._rect.width - 2 * CONTENT_MARGIN, HEADER_HEIGHT
)

@ -12,7 +12,6 @@ class DialogResult(IntEnum):
class Widget(abc.ABC):
def __init__(self):
self._prev_rect = rl.Rectangle(0, 0, 0, 0)
self._rect: rl.Rectangle = rl.Rectangle(0, 0, 0, 0)
self._is_pressed = False
self._is_visible: bool | Callable[[], bool] = True
@ -25,7 +24,10 @@ class Widget(abc.ABC):
self._is_visible = visible
def set_rect(self, rect: rl.Rectangle) -> None:
prev_rect = self._rect
self._rect = rect
if (rect.x != prev_rect.x or rect.y != prev_rect.y or
rect.width != prev_rect.width or rect.height != prev_rect.height):
self._update_layout_rects()
def render(self, rect: rl.Rectangle = None) -> bool | int | None:
@ -54,9 +56,9 @@ class Widget(abc.ABC):
def _render(self, rect: rl.Rectangle) -> bool | int | None:
"""Render the widget within the given rectangle."""
def _update_layout_rects(self) -> None:
"""Optionally update any layout rects on Widget rect change."""
def _handle_mouse_release(self, mouse_pos: rl.Vector2) -> bool:
"""Handle mouse release events, if applicable."""
"""Optionally handle mouse release events."""
return False
def _update_layout_rects(self) -> None:
"""Update the layout rectangles on change."""

Loading…
Cancel
Save