Skip to content

fix(android): stop clipping the account row menu press circle OK-63780 - #122

Open
weatherstar wants to merge 2 commits into
mainfrom
fix/native-list-account-menu-press-clip-ok-63780
Open

weatherstar wants to merge 2 commits into
mainfrom
fix/native-list-account-menu-press-clip-ok-63780

Conversation

@weatherstar

@weatherstar weatherstar commented Sep 20, 2026

Copy link
Copy Markdown
Contributor

Fixes OK-63780.

On Android, pressing the account selector row's ... menu draws the pressed state as a 24dp-wide pill instead of the full 38dp circle. iOS and desktop draw the full circle.

The accountSelector DotHorOutline accessory keeps its 38dp press target by giving the icon a 38dp frame with -7dp start/end margins inside a 24dp layout slot (showTrailingIcon in NativeListRowView.kt). The trailing column is a LinearLayout with the default clipChildren = true, and resetViews() puts the row back to clipToPadding = true, so the pressed roundedFill(..., 19f) is cut on both sides.

Turn off trailingColumn.clipChildren and the row's clipToPadding in that accountSelector branch, and restore trailingColumn.clipChildren = true in resetViews() so recycled rows of other presentations keep their clipping. Row padding is 12dp, so the 7dp overhang still lies inside the row bounds.

Validation:

  • Reproduced on the Android emulator (Medium Phone API 36, 1080x2400) in the OneKey app account manager: holding ... on a watch-only account row showed the clipped pill.
  • Rebuilt the OneKey Android app with this Kotlin change through a local native DevSession (dev-shell --shell local). Holding ... now draws the full circle extending into the row's trailing padding, and releasing opens the account menu as before.
  • git diff --check passes. The native-list Android unit tests cover pure Kotlin policy helpers only; this view-clipping change has no JVM test.

Second commit bumps all 41 publishable packages to 3.0.152 with a CHANGELOG entry. The example/react-native apps were not rebuilt in this repository. After release, app-monorepo needs a dependency upgrade to consume the fix.

Refs OK-63780.

The accountSelector DotHorOutline accessory keeps its 38dp press target by
overhanging its 24dp layout slot with -7dp margins. The trailing column
clips children and the row clips to padding by default, so the pressed
circle rendered as a 24dp-wide pill on Android while iOS and desktop drew
the full circle.
@weatherstar
weatherstar force-pushed the fix/native-list-account-menu-press-clip-ok-63780 branch from 07b1e27 to 3c8839c Compare September 20, 2026 13:54
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