Skip to content

Keep settings and sidebar actions aligned in a shared footer - #5333

Merged
brsbl merged 5 commits into
mainfrom
bb/align-settings-gear
Oct 10, 2026
Merged

brsbl merged 5 commits into
mainfrom
bb/align-settings-gear

Conversation

@brsbl

@brsbl brsbl commented Oct 10, 2026 •

Copy link
Copy Markdown
Collaborator

Human comments

What was wrong

Settings and footer actions used separate vertical layouts, so their alignment could drift. The framed rail also placed Settings too low.

What changed

  • Keep Settings and footer actions vertically aligned in one shared row.
  • Keep disclosures above that row and Settings accessible when the sidebar collapses.
  • Preserve framed corners and mobile safe-area spacing.

How you verified

  • Post-merge CI passed on a501c98abb9d7aded4d9455ea8780fc17ec0d4bb.
  • Remote CI passed for 9af0e9ec440d021b5036e90af7b02fa909eaf0e7.
  • Chrome for Testing 155.0.8059.39: expanded/collapsed sidebar, footer customization, and mobile drawer.
  • User approved the layout. Rebase onto e9ad6b0e3473628f96fa98378cf8528aac8984d2 preserved all seven patches; fresh screenshots confirm the same geometry.
  • Cumulative Slop Cop at 1cde8e10619e33ddf23d2994336cfa1657d7a0e9 found no P0/P1 issues. P2 follow-up: extend sidebar resizing through the footer edge.
  • Native macOS traffic-light clearance and window dragging remain unverified; no connected Mac was available.

Layer 1 · Shared sidebar footer

Before: e9ad6b0e3473628f96fa98378cf8528aac8984d2 · After: 9af0e9ec440d021b5036e90af7b02fa909eaf0e7 · 2× PNGs.

Captured from the compared branch web apps using the same empty-workspace fixture, route, interaction state, and viewport. Framed captures use a macOS bridge fixture in Chrome. The fixture host is offline, so model selection is unavailable.

Screen / state Viewport Before After
Framed app · expanded 1440×900 Before Framed app · expanded After Framed app · expanded
Framed app · collapsed 1440×900 Before Framed app · collapsed After Framed app · collapsed
Framed app · customize footer 1440×900 Before Framed app · customize footer After Framed app · customize footer
Browser app · expanded 1440×900 Before Browser app · expanded After Browser app · expanded
Mobile drawer 390×844 Before Mobile drawer After Mobile drawer

BB-Thread-ID: thr_zneg2kj4yq

AGENT GENERATED

@brsbl brsbl changed the title Align settings gear with sidebar footer actions Keep settings and sidebar actions aligned in a shared footer Oct 10, 2026
@brsbl
brsbl added this pull request to stack #5339 October 10, 2026 17:50
@brsbl
brsbl force-pushed the bb/align-settings-gear branch from e0fa48e to 9af0e9e Compare October 10, 2026 18:51
@brsbl
brsbl marked this pull request as ready for review October 10, 2026 18:59
@brsbl
brsbl merged commit 0359c4e into main Oct 10, 2026
28 checks passed
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 10, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-10T19:02:52.173507Z 9af0e9e Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@brsbl
brsbl deleted the bb/align-settings-gear branch October 10, 2026 19:00

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 9af0e9ec44

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +288 to +290
<div
data-testid="sidebar-footer-row"
className="flex shrink-0 items-stretch"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Keep the footer edge draggable for sidebar resizing

On expanded desktop sidebars, placing the new footer row outside the upper SidebarCollapsibleBody leaves every SidebarResizeHandle confined to that upper row: the handle is absolutely positioned with h-full relative to the collapsible body, so the right edge alongside this footer no longer starts a resize. This affects the app, settings, plugins, and skills sidebars whenever a user tries to drag from the bottom section; extend or add the resize handle through the shared footer row.

Useful? React with 👍 / 👎.

"bg-surface-recessed -mb-[env(safe-area-inset-bottom)] pb-[calc(0.5rem_+_env(safe-area-inset-bottom))]",
)}
>
{railFooter}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Keep Settings inside a navigation landmark

For assistive-technology users navigating by landmarks, rendering railFooter in this plain footer container removes Settings from the Primary navigation landmark, since the <nav> in AppNavRail now closes before this button. Settings remains visually part of the navigation rail but is no longer discoverable with the other primary destinations; preserve equivalent navigation semantics around this control.

Useful? React with 👍 / 👎.

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.

1 participant