Skip to content

fix(android): tune screenshot mode visual sizing#100895

Merged
steipete merged 3 commits into
openclaw:mainfrom
IWhatsskill:codex/android-screenshot-mode-box-size-cleanup
Jul 7, 2026
Merged

fix(android): tune screenshot mode visual sizing#100895
steipete merged 3 commits into
openclaw:mainfrom
IWhatsskill:codex/android-screenshot-mode-box-size-cleanup

Conversation

@IWhatsskill

Copy link
Copy Markdown
Contributor

What Problem This Solves

The Android screenshot-mode voice and screen tools scenes used repeated hard-coded dimensions and fixed containers. That made the visual proof screens less consistent across compact widths and harder to tune safely.

Why This Change Was Made

This centralizes the screenshot-mode sizing values, caps the voice orb against available width, aligns icon and tab boxes at 44dp, and lets the screen live-context card grow from a minimum height instead of forcing a fixed box.

User Impact

Screenshot-mode voice and screen tools previews render with cleaner, more consistent card, icon, orb, and context-panel sizing while keeping the existing dark OpenClaw visual style and navigation.

Evidence

  • CI=true pnpm android:assemble passed on refreshed origin/main.
  • Real Android lane-a proof used openclaw_api36_clean / emulator-5554 with the Gateway paired and Home showing Gateway Online, Nodes 1/1, Approvals 0.
  • Final host-recorded proof videos were verified with ffprobe: each is 6.000000 seconds, 60 frames, 10 fps.
  • Visual frames were checked for the correct target screen and no launcher, app-switch, or setup-code content.

Voice mode

Before voice screenshot After voice screenshot

Before voice video:

before-voice-hostrec.mp4

After voice video:

after-voice-hostrec.mp4

Screen tools

Before screen tools screenshot After screen tools screenshot

Before screen tools video:

before-screen-hostrec.mp4

After screen tools video:

after-screen-hostrec.mp4

@IWhatsskill
IWhatsskill force-pushed the codex/android-screenshot-mode-box-size-cleanup branch from 3969bd5 to d541bd6 Compare July 6, 2026 13:10
@IWhatsskill
IWhatsskill marked this pull request as ready for review July 6, 2026 13:10
@clawsweeper

clawsweeper Bot commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

Codex review: needs maintainer review before merge. Reviewed July 6, 2026, 8:31 PM ET / 00:31 UTC.

Summary
The PR updates Android screenshot-mode Compose sizing for voice and screen proof scenes, refreshes native i18n line metadata, and adds an Android changelog entry.

PR surface: Docs +2, Other +12. Total +14 across 3 files.

Reproducibility: not applicable. This PR is a visual sizing cleanup for an existing Android screenshot-mode proof screen, not a reported runtime bug. The PR body and inspected screenshots show the after-fix Voice and Screen scenes in a real Android capture.

Review metrics: none identified.

Merge readiness
Overall: 🐚 platinum hermit
Proof: 🦞 diamond lobster ✨ media proof bonus
Patch quality: 🐚 platinum hermit
Result: ready for maintainer review.

Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch.

Rank-up moves:

  • [P2] Let exact-head CI finish and resolve or waive the failed check-docs and android-test-third-party jobs before merge.

Risk before merge

  • [P1] Exact-head CI was still not merge-ready during this read-only review: check-docs and android-test-third-party had failed, and logs were unavailable until the workflow completes.

Maintainer options:

  1. Decide the mitigation before merge
    Land the narrow Android screenshot-mode sizing cleanup after maintainer review and exact-head CI resolution, keeping the sizing local to the screenshot proof screen and using existing ClawTheme tokens.
  2. Pause or close
    Do not merge this PR until maintainers decide whether the risk is worth taking.

Next step before merge

  • No ClawSweeper repair job is appropriate because the review found no actionable code defect; maintainer or CI follow-up should resolve the exact-head check failures after logs are available.

Security
Cleared: The diff only changes Android Compose screenshot-mode UI, native i18n line metadata, and Android changelog text, with no dependency, workflow, secret, permission, package, or code-execution surface changes.

Review details

Best possible solution:

Land the narrow Android screenshot-mode sizing cleanup after maintainer review and exact-head CI resolution, keeping the sizing local to the screenshot proof screen and using existing ClawTheme tokens.

Do we have a high-confidence way to reproduce the issue?

Not applicable; this PR is a visual sizing cleanup for an existing Android screenshot-mode proof screen, not a reported runtime bug. The PR body and inspected screenshots show the after-fix Voice and Screen scenes in a real Android capture.

Is this the best way to solve the issue?

Yes; keeping the change in AndroidScreenshotModeScreen and reusing ClawTheme sizing/radius tokens is the narrowest maintainable solution for proof-screen-only visual tuning. A broader shared design-system change would be unnecessary for this isolated screenshot surface.

AGENTS.md: found and applied where relevant.

Codex review notes: model internal, reasoning high; reviewed against c3c4d03f900b.

Label changes

Label justifications:

  • P3: This is low-risk Android screenshot-mode visual polish with no runtime app-state, config, auth, provider, migration, or compatibility surface.
  • rating: 🐚 platinum hermit: Overall readiness is 🐚 platinum hermit; proof is 🦞 diamond lobster and patch quality is 🐚 platinum hermit.
  • status: 👀 ready for maintainer look: ClawSweeper has no concrete contributor-facing blocker left for this PR. Sufficient (screenshot): The PR body includes before/after Android screenshots and videos, and the inspected after Voice and Screen PNGs directly show the changed real UI surfaces without visible layout breakage.
  • proof: sufficient: Contributor real behavior proof is sufficient. The PR body includes before/after Android screenshots and videos, and the inspected after Voice and Screen PNGs directly show the changed real UI surfaces without visible layout breakage.
  • proof: 📸 screenshot: Contributor real behavior proof includes screenshot evidence. The PR body includes before/after Android screenshots and videos, and the inspected after Voice and Screen PNGs directly show the changed real UI surfaces without visible layout breakage.
Evidence reviewed

PR surface:

Docs +2, Other +12. Total +14 across 3 files.

View PR surface stats
Area Files Added Removed Net
Source 0 0 0 0
Tests 0 0 0 0
Docs 1 2 0 +2
Config 0 0 0 0
Generated 0 0 0 0
Other 2 63 51 +12
Total 3 65 51 +14

What I checked:

Likely related people:

  • joshavant: GitHub commit history shows joshavant added the Android release screenshot mode, parser, tests, screenshot script, and later updated the screenshot-mode copy on current main. (role: introduced behavior; confidence: high; commits: f3ab59db5800, 1fc97cf05dfd; files: apps/android/app/src/main/java/ai/openclaw/app/ui/AndroidScreenshotModeScreen.kt, apps/android/app/src/main/java/ai/openclaw/app/AndroidScreenshotMode.kt, apps/android/app/src/test/java/ai/openclaw/app/AndroidScreenshotModeTest.kt)
  • steipete: Live PR metadata shows steipete is assigned, and the latest PR-head commit refactors the screenshot-mode sizing shape being reviewed. (role: assigned reviewer and recent branch contributor; confidence: medium; commits: a9479ccab604; files: apps/android/app/src/main/java/ai/openclaw/app/ui/AndroidScreenshotModeScreen.kt, apps/.i18n/native-source.json, apps/android/CHANGELOG.md)
What the crustacean ranks mean
  • 🦀 challenger crab: rare, exceptional readiness with strong proof, clean implementation, and convincing validation.
  • 🦞 diamond lobster: very strong readiness with only minor maintainer review expected.
  • 🐚 platinum hermit: good normal PR, likely mergeable with ordinary maintainer review.
  • 🦐 gold shrimp: useful signal, but proof or patch confidence is still limited.
  • 🦪 silver shellfish: thin signal; proof, validation, or implementation needs work.
  • 🧂 unranked krab: not merge-ready because proof is missing/unusable or there are serious correctness or safety concerns.
  • 🌊 off-meta tidepool: rating does not apply to this item.

Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics.

How this review workflow works
  • ClawSweeper keeps one durable marker-backed review comment per issue or PR.
  • Re-runs edit this comment so the latest verdict, findings, and automation markers stay together instead of adding duplicate bot comments.
  • A fresh review can be triggered by eligible @clawsweeper re-review comments, exact-item GitHub events, scheduled/background review runs, or manual workflow dispatch.
  • PR/issue authors and users with repository write access can comment @clawsweeper re-review or @clawsweeper re-run on an open PR or issue to request a fresh review only.
  • Maintainers can also comment @clawsweeper review to request a fresh review only.
  • Fresh-review commands do not start repair, autofix, rebase, CI repair, or automerge.
  • Maintainer-only repair and merge flows require explicit commands such as @clawsweeper autofix, @clawsweeper automerge, @clawsweeper fix ci, or @clawsweeper address review.
  • Maintainers can comment @clawsweeper explain to ask for more context, or @clawsweeper stop to stop active automation.
Review history (2 earlier review cycles)
  • reviewed 2026-07-06T13:41:08.195Z sha 450b276 :: needs maintainer review before merge. :: none
  • reviewed 2026-07-06T13:50:58.501Z sha 450b276 :: needs maintainer review before merge. :: none

@clawsweeper clawsweeper Bot added proof: sufficient ClawSweeper judged the real behavior proof convincing. proof: 📸 screenshot Contributor real behavior proof includes screenshot evidence. rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR. P3 Low-priority cleanup, docs, polish, ergonomics, or speculative work. labels Jul 6, 2026
@steipete steipete self-assigned this Jul 6, 2026
@steipete
steipete force-pushed the codex/android-screenshot-mode-box-size-cleanup branch from 450b276 to a9479cc Compare July 7, 2026 00:25
@steipete
steipete force-pushed the codex/android-screenshot-mode-box-size-cleanup branch from a9479cc to 6f1233b Compare July 7, 2026 00:48
@steipete

steipete commented Jul 7, 2026

Copy link
Copy Markdown
Contributor

Land-ready at 6f1233bd72fb82a55a593ec36da7e6c56f391d5b.

Maintainer improvement:

  • removed 16 one-use sizing constants and reused ClawTheme spacing/radius tokens
  • changed the voice orb to continuous width/aspect constraints with proportional mic scaling
  • retained one shared 44dp icon-box dimension and made the live-context panel content-safe
  • added Android changelog credit for @IWhatsskill

Proof:

  • fresh Codex autoreview: clean, no actionable findings
  • sanitized public-network AWS Crabbox run_d00586912bc7: passed pnpm native:i18n:check, pnpm android:i18n:check, pnpm android:lint, pnpm android:test, pnpm android:test:third-party, and pnpm android:assemble
  • exact-head hosted CI 28833508688: passed after rerunning one unrelated Android Play test flake; the same Play test lane passed in sanitized AWS proof
  • exact-head Workflow Sanity 28833508752: passed
  • author before/after emulator screenshots and videos reviewed for the voice and screen scenes
  • OPENCLAW_TESTBOX=1 OPENCLAW_PR_PUSH_MODE=git OPENCLAW_ALLOW_UNSIGNED_GIT_PUSH=1 scripts/pr prepare-run 100895: passed with exact-head hosted gates
  • scripts/pr review-validate-artifacts 100895: passed, READY, zero findings

No proof gaps. Contributor code was treated as untrusted; validation used sanitized AWS rather than a credential-hydrated Testbox.

@steipete
steipete merged commit 4b3941c into openclaw:main Jul 7, 2026
137 of 138 checks passed
@steipete

steipete commented Jul 7, 2026

Copy link
Copy Markdown
Contributor

Merged via squash.

github-actions Bot pushed a commit to Desicool/openclaw that referenced this pull request Jul 7, 2026
* fix(android): tune screenshot mode visual sizing

* chore(android): refresh screenshot i18n inventory

* refactor(android): simplify screenshot mode sizing

---------

Co-authored-by: IWhatsskill <284122573+IWhatsskill@users.noreply.github.com>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
giodl73-repo pushed a commit to giodl73-repo/openclaw that referenced this pull request Jul 8, 2026
* fix(android): tune screenshot mode visual sizing

* chore(android): refresh screenshot i18n inventory

* refactor(android): simplify screenshot mode sizing

---------

Co-authored-by: IWhatsskill <284122573+IWhatsskill@users.noreply.github.com>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

app: android App: android P3 Low-priority cleanup, docs, polish, ergonomics, or speculative work. proof: 📸 screenshot Contributor real behavior proof includes screenshot evidence. proof: sufficient ClawSweeper judged the real behavior proof convincing. rating: 🐚 platinum hermit Good normal PR readiness with ordinary maintainer review expected. size: S status: 👀 ready for maintainer look ClawSweeper has no concrete contributor-facing blocker left for this PR.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants