Repository navigation
Scanning list: RSSI for all cars, stable order, spinner, auto-stop - #100
Conversation
ScreenshotsCaptured from the demo build at ccdc0fe. |
|
Screenshots disagree. - Analyze them. |
Part 1 of #98. Unpaired cars show their advertised RSSI (the scan advert already carries it, no connection needed); the list sorts by name so RSSI jitter cannot shuffle rows; a spinner replaces the scanning text and the Stop button; a scan ends by itself 30 s after the last new car; and unpaired cars leave the list once they stop advertising (disconnected connections are no longer carried over). Name resolution and the unpaired connection lifecycle follow in part 2.
Take 02-scanning.png after the car flow, when the list shows the known car, so it matches 02-scanning-dark.png. The early capture showed raw pair addresses and a pull pill; the address wait stays as a gate.
ScreenshotsCaptured from the demo build at 9114d53. |
|
analyze screenshot, double spinners, Scanning... label on the spinner still shows up. New discovery - there is unnecessary pair button on Cars list car now. |
ScreenshotsCaptured from the demo build at e329c68. |
Owner review of the #100 sheet: the status-row spinner plus the pull pill showed two spinners, the pill kept its Scanning label, and the rows carried a Pair button. The pill now only appears while pulling and takes nullable labels (null on the list, kept on the car view); the list rows drop Pair entirely - pairing stays one tap away in the car view.
|
Analysis of the sheet at e329c68, item by item:
Fixed in 76ba99c: the pill now appears only while the finger is pulling and takes a null label on the list (spinner-only; the car view keeps its labels), the status row keeps the single spinner, and the list rows drop Pair entirely - pairing stays one tap away in the car view. New sheet coming from CI. |
ScreenshotsCaptured from the demo build at 76ba99c. |
The drag-fraction gate alone did not hold on the phone: the pill lingered after release, so a scan still showed two spinners. Gate it on no scan running as well; the pill now only appears mid-drag before a scan starts.
ScreenshotsCaptured from the demo build at 2384477. |
The spinner replaced the cars/connected string; keep the text as-is and show the spinner at the row's end while scanning or discovering.
ScreenshotsCaptured from the demo build at f0a46f3. |
In landscape the fixed 200dp log content left no room for the cars. The card now takes 30 percent of the available height (at least 96dp) with internal scrolling.
With auto-stop the deferred shot caught a static list. Pull once more before capturing so the spinner shows with the known car, matching the dark pass.
ScreenshotsCaptured from the demo build at 88d25bd. |
wait_for_text Demo Tesla also matches the car view and settings, so a missed BACK captured the wrong screen as 02-scanning.png. Require Cars too, which only the list shows; otherwise leave a scan-known debug dump.
The light-pass Settings step used a bare BACK, which can land on the car view and capture it as 05-settings.png. back_to_list now follows BACK with the car view's own All-cars button when needed, so the step starts from the list.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0129RzhbEE2cboMcYyZMuxqX
MainScreen left the composition while Settings was open, so its saved list/car selection was dropped and Back re-ran the restore-last-car step. A SaveableStateHolder keeps that state across the round trip. This is also why the light-pass scan shot failed: Back from Settings landed on the car view instead of the list. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0129RzhbEE2cboMcYyZMuxqX
ScreenshotsCaptured from the demo build at 9c2b951. |








Summary
Part 1 of #98, the scan-list behavior. Owner spec items:
Scanning: N Tesla(s)text, and the Stop button is gone. The pull pill now appears only while you're actually pulling.Also fixed here: Back from Settings now returns to the cars list instead of reopening the last car.
MainScreenleft the composition while Settings was open, so its saved list/car selection was lost and the restore-last-car step ran again. ASaveableStateHolderinMainActivitykeeps that state. This bug is also why the light-mode scan screenshot kept failing: the capture landed on the car view.Part 2 (connect once to read the GATT name, cache it and close; reopen on tap; close on back) comes in a follow-up PR.
Type
Testing
./gradlew :core:test(CI)./gradlew :app:testDebugUnitTest(CI)./gradlew :app:lintDebug(CI)Demo-car screenshots come from the PR screenshots workflow.
Checklist
expected.txtregenerated, not hand-editedSPDX-License-Identifier: AGPL-3.0-only🤖 Generated with Claude Code
https://claude.ai/code/session_0129RzhbEE2cboMcYyZMuxqX