Skip to content

[1.4] Make vehicle setup more mobile friendly - #4441

Merged
joaoantoniocardoso merged 4 commits into
bluerobotics:1.4-devfrom
patrickelectric:improve-vehiclesetup-mobile-14
Sep 14, 2026
Merged

[1.4] Make vehicle setup more mobile friendly#4441
joaoantoniocardoso merged 4 commits into
bluerobotics:1.4-devfrom
patrickelectric:improve-vehiclesetup-mobile-14

Conversation

@patrickelectric

Copy link
Copy Markdown
Member

Helps #4391

Cherry-pick of #4424

VehicleSetupView already wraps the tabs in a fluid container, the
second one only adds another 12px gutter on each side, which is 24px
of a 412px phone screen.

Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
…screens

The parameter card has a 220px minimum width and floats over the
viewer, on a phone the viewer is only 256px wide, so the card covers
the model and the camera frames it too close.

Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
@github-actions

Copy link
Copy Markdown

Automated PR Review

0. Summary

  • Verdict: MINOR SUGGESTIONS ✏️

Cherry-picks #4424 into 1.4-dev to make the vehicle setup UI more usable on phone-sized viewports: drops the outer v-container in Configure.vue, adds a @media (max-width: 600px) block to OrientationPicker.vue that lets the overlay stack below the 3D viewer, converts each row in BatteryCard.vue to cols="12" sm="5/7" so labels/inputs stack on xs, and shrinks default data-table cell padding globally on phones via vuetify-global.css.

5. UI / UX

  • 5.1 [minor] core/frontend/src/style/css/vuetify-global.css:6-11 — this rule is global and unscoped, so every v-data-table in the app (LogManager, Processes, ParameterEditor, ethernet InterfaceCard, …) will lose ~50% of its horizontal cell padding on any viewport ≤600px, not just the vehicle setup tables the PR title targets. That may be desired, but the PR title and description only mention "vehicle setup". Consider either (a) scoping this to the vehicle setup views (e.g. via a class on the containing view) or (b) explicitly calling out in the PR body that all v-data-tables across BlueOS are affected so reviewers know to sanity-check the other tables at mobile width.
  • 5.2 [nit] core/frontend/src/components/vehiclesetup/OrientationPicker.vue:488 and core/frontend/src/style/css/vuetify-global.css:6 — Vuetify's sm breakpoint kicks in at exactly 600px, but @media (max-width: 600px) also matches at 600px, so at that one-pixel edge both the mobile CSS and the sm="" layouts apply simultaneously. Vuetify's own convention is max-width: 599.98px (see $display-breakpoints). Cosmetic — no user is going to be at exactly 600px — but worth aligning.
  • 5.3 [nit] core/frontend/src/components/vehiclesetup/Configure.vue:5 — removing the outer <v-container fluid> also removes its default 12px horizontal padding on desktop, so the tabs bar now sits flush against the parent's edge on every viewport, not just mobile. If the intent was mobile-only edge-to-edge, gating this on $vuetify.breakpoint.xsOnly (or wrapping with v-container fluid class="pa-0 pa-sm-3") would preserve the previous desktop spacing while still reclaiming the width on phones.

Generated by PR Review Bot. This is advisory, a human reviewer must still approve.

The label keeps 5 of the 12 columns on every screen, which leaves the
selects too narrow to show a value like "BlueBoat120 Power Module v2".

Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
…reens

Six columns of 16px gutters are 96px of a 412px screen. The barometer
table drops from 430px to 334px and the autopilot sensors one from
426px to 346px, both stop hiding their last column.

Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
@patrickelectric
patrickelectric force-pushed the improve-vehiclesetup-mobile-14 branch from 518a643 to 95787dd Compare September 14, 2026 16:17
@patrickelectric
patrickelectric requested a review from a team September 14, 2026 16:19
@joaoantoniocardoso
joaoantoniocardoso merged commit dc7ed34 into bluerobotics:1.4-dev Sep 14, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants