From 121b593b3fc02e2652605b1ad6ebd7635657d2c5 Mon Sep 17 00:00:00 2001
From: firestar5683 <168790843+firestar5683@users.noreply.github.com>
Date: Sun, 12 Apr 2026 16:58:41 -0500
Subject: [PATCH] c4
---
selfdrive/ui/layouts/settings/developer.py | 8 +-------
selfdrive/ui/layouts/settings/toggles.py | 7 +------
selfdrive/ui/mici/layouts/settings/developer.py | 7 +------
selfdrive/ui/mici/widgets/button.py | 3 ++-
4 files changed, 5 insertions(+), 20 deletions(-)
diff --git a/selfdrive/ui/layouts/settings/developer.py b/selfdrive/ui/layouts/settings/developer.py
index 7567357e3..6ea71bdce 100644
--- a/selfdrive/ui/layouts/settings/developer.py
+++ b/selfdrive/ui/layouts/settings/developer.py
@@ -36,7 +36,6 @@ class DeveloperLayout(Widget):
def __init__(self):
super().__init__()
self._params = Params()
- self._is_release = self._params.get_bool("IsReleaseBranch")
# Build items and keep references for callbacks/state updates
self._adb_toggle = toggle_item(
@@ -119,15 +118,10 @@ class DeveloperLayout(Widget):
def _update_toggles(self):
ui_state.update_params()
- # Hide non-release toggles on release builds
- # TODO: we can do an onroad cycle, but alpha long toggle requires a deinit function to re-enable radar and not fault
- for item in (self._joystick_toggle, self._long_maneuver_toggle, self._alpha_long_toggle):
- item.set_visible(not self._is_release)
-
# CP gating
if ui_state.CP is not None:
alpha_avail = ui_state.CP.alphaLongitudinalAvailable
- if not alpha_avail or self._is_release:
+ if not alpha_avail:
self._alpha_long_toggle.set_visible(False)
self._params.remove("AlphaLongitudinalEnabled")
else:
diff --git a/selfdrive/ui/layouts/settings/toggles.py b/selfdrive/ui/layouts/settings/toggles.py
index b007e7c09..a1fc85eb2 100644
--- a/selfdrive/ui/layouts/settings/toggles.py
+++ b/selfdrive/ui/layouts/settings/toggles.py
@@ -38,7 +38,6 @@ class TogglesLayout(Widget):
def __init__(self):
super().__init__()
self._params = Params()
- self._is_release = self._params.get_bool("IsReleaseBranch")
# param, title, desc, icon, needs_restart
self._toggle_defs = {
@@ -196,11 +195,7 @@ class TogglesLayout(Widget):
long_desc = unavailable + " " + tr("openpilot longitudinal control may come in a future update.")
if ui_state.CP.alphaLongitudinalAvailable:
- if self._is_release:
- long_desc = unavailable + " " + tr("An alpha version of openpilot longitudinal control can be tested, along with " +
- "Experimental mode, on non-release branches.")
- else:
- long_desc = tr("Enable the openpilot longitudinal control (alpha) toggle to allow Experimental mode.")
+ long_desc = tr("Enable the openpilot longitudinal control (alpha) toggle to allow Experimental mode.")
self._toggles["ExperimentalMode"].set_description("" + long_desc + "
" + e2e_description)
else:
diff --git a/selfdrive/ui/mici/layouts/settings/developer.py b/selfdrive/ui/mici/layouts/settings/developer.py
index 2ffc6c2bb..7b6208478 100644
--- a/selfdrive/ui/mici/layouts/settings/developer.py
+++ b/selfdrive/ui/mici/layouts/settings/developer.py
@@ -116,13 +116,8 @@ class DeveloperLayoutMici(NavScroller):
self._use_prebuilt_toggle,
self._joystick_toggle,
)
- release_blocked_toggles = (self._joystick_toggle, self._long_maneuver_toggle, self._lat_maneuver_toggle, self._alpha_long_toggle)
engaged_blocked_toggles = (self._long_maneuver_toggle, self._lat_maneuver_toggle, self._alpha_long_toggle)
- # Hide non-release toggles on release builds
- for item in release_blocked_toggles:
- item.set_visible(not ui_state.is_release)
-
# Disable toggles that require offroad
for item in onroad_blocked_toggles:
item.set_enabled(lambda: ui_state.is_offroad())
@@ -268,7 +263,7 @@ class DeveloperLayoutMici(NavScroller):
# CP gating
if ui_state.CP is not None:
alpha_avail = ui_state.CP.alphaLongitudinalAvailable
- if not alpha_avail or ui_state.is_release:
+ if not alpha_avail:
self._alpha_long_toggle.set_visible(False)
ui_state.params.remove("AlphaLongitudinalEnabled")
else:
diff --git a/selfdrive/ui/mici/widgets/button.py b/selfdrive/ui/mici/widgets/button.py
index 51e0f18a8..3ad6efde3 100644
--- a/selfdrive/ui/mici/widgets/button.py
+++ b/selfdrive/ui/mici/widgets/button.py
@@ -148,7 +148,8 @@ class BigButton(Widget):
super().set_touch_valid_callback(lambda: touch_callback() and self._grow_animation_until is None)
def _width_hint(self) -> int:
- icon_size = self._txt_icon.width + 10 if self._txt_icon else 0
+ # Reserve icon space when a top-aligned label shares the card with a value.
+ icon_size = self._txt_icon.width + 10 if self._txt_icon and self.value else 0
return int(self._rect.width - self.LABEL_HORIZONTAL_PADDING * 2 - icon_size)
def _get_label_font_size(self):