Skip to content

fix(web): align the sidebar Search bubble with the chat overflow bubble - #7853

Open
omni-resolve-agent[bot] wants to merge 1 commit into
mainfrom
fix/35472714960
Open

omni-resolve-agent[bot] wants to merge 1 commit into
mainfrom
fix/35472714960

Conversation

@omni-resolve-agent

@omni-resolve-agent omni-resolve-agent Bot commented Sep 19, 2026 •

Copy link
Copy Markdown
Contributor

Related issue

Resolves OMNI-9122

Summary

On phones, the sidebar Search button sat above or below the chat menu button, depending on whether the app ran in a browser or a native shell.

The sidebar now uses the chat header's height and safe-area offset so the two buttons line up.

Test Plan

  • tests/e2e_ui/mobile/test_sidebar_bubble_alignment.py covers both narrow web and simulated iOS-shell layouts.
  • Narrow web: before the fix, Search was centered at y=24 and the chat menu at y=28. After the fix, their centers align within 1px.
  • Simulated iOS shell: before the fix, Search was centered at y=83 and the chat menu at y=79. After the fix, their centers align within 1px.

Manual check to perform: On a narrow browser window and an iPhone, open the sidebar and compare the vertical centers of its Search button and the chat menu button.

Original verification run

Resolve workflow

Demo

  • Visual demo attached below
  • Non-visual evidence provided below or in Test Plan
  • Not applicable — no behavioral change

Before/after recordings from the original resolve-agent update:

These recordings use the browser stand-in described in Coverage notes; they are not native iOS verification.

Type of change

  • Bug fix
  • Feature
  • UI / frontend change
  • Refactor / chore
  • Docs
  • Test / CI
  • Breaking change

Test coverage

  • Unit tests added / updated
  • Integration tests added / updated
  • E2E tests added / updated
  • Manual verification completed
  • Existing tests cover this change
  • Not applicable

Coverage notes

The iOS case used desktop Chromium at 390×844 with an injected native bridge and a 59px safe-area override. It was not verified on a real iOS device or WebKit.

Changelog

The sidebar Search button now lines up with the chat menu button on narrow screens.

With the phone-width drawer open, the sidebar's round Search button and
the chat header's round overflow button read as one row of paired
top-right controls, but their centers sat 4px apart on thin web (h-12
sidebar header row vs h-14 mobile chat header) and 4px apart in the
opposite direction on native shells (the drawer was padded by the full
safe-area top inset while the chat header sits at safe-top - 0.5rem).

Match the sidebar header row to the mobile chat header height below md,
and give the phone-width native drawer the chat header's safe-top -
0.5rem offset, so the bubbles share a centerline on both surfaces.

Resolves OMNI-9122 (Linear).
@github-actions github-actions Bot added the size/M Pull request size: M label Sep 19, 2026
@github-actions

github-actions Bot commented Sep 19, 2026 •

Copy link
Copy Markdown
Contributor

UI Preview for this PR has been removed.

@omnigent-ci

omnigent-ci Bot commented Sep 19, 2026

Copy link
Copy Markdown
Contributor

Polly AI Review

Missing visual demonstration

Please attach a screenshot or video showing the aligned bubbles at phone width. Include narrow web and, ideally, a notched iOS simulator or device. Test results alone do not demonstrate the visual outcome.

Blocking issues

None found in the changed code.

Security vulnerabilities

None found.

Non-blocking notes

  • The CSS also changes Android behavior, but the new tests cover only web and simulated iOS. Consider extending coverage using the existing iOS/Android parametrization in tests/e2e_ui/mobile/test_native_shell_plan_header_overlap.py:155.
  • The Chromium bridge stub and safe-area override check layout geometry, not actual WKWebView rendering. On a notched iOS device or simulator, open a conversation and its sidebar; confirm that Search and the exposed overflow bubble share a centerline and remain clear of the status bar.

Approach

The approach is sound. Matching the mobile header heights and native top offsets addresses both causes directly. The desktop height override and phone-only padding rule preserve the existing larger-screen layout; no materially simpler alternative is apparent.

Summary

The changes address the reported offsets consistently, with no concrete correctness or security blocker found. The supplied diff checksum was verified, but runtime tests were not executed because the required UI environment was unavailable. Add visual evidence and confirm the result on real iOS/WebKit before considering the native behavior fully validated.


Automated review by Polly · workflow run

@github-actions

Copy link
Copy Markdown
Contributor

@omni-resolve-agent[bot] This PR checks UI / frontend change, but the Demo section has no screenshot or recording.

UI / frontend changes require visual evidence so reviewers can see the new behaviour without checking out the branch. Please update the Demo section with:

  • A screenshot or screen recording of the change, or
  • A link to a hosted video or GIF showing the new behaviour.

If this PR has no visual surface, uncheck UI / frontend change and provide non-visual evidence in the Test Plan.

@github-actions github-actions Bot added the needs-demo PR needs a demo screenshot or recording label Sep 23, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs-demo PR needs a demo screenshot or recording size/M Pull request size: M ui-preview

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants