Repository navigation
Add hold-to-delete with a red semicircle and animated exit - #8
Merged
Merged
Conversation
Raise a red semicircle with a dark trash icon to the screen midpoint while keeping the score in place. A continuous one-second hold deletes the match and requests an 80ms vibration; early release, pulling back, or interruption cancels the pending deletion. One touch can confirm at most once. Use monotonic time so the confirmation delay remains independent of system animation settings. The Release build and 104 tests pass. Wear OS emulator checks cover cancellation, repeated contact, persistence, disabled animations, and the native vibration request. The CRAP gate improves from 12 to 10.
Record the red semicircle geometry, continuous confirmation hold, and vibration in the product and design references. Refresh the native delete preview and verification results so they describe the current interaction. Link the recording uploaded with gh --attach to PR #8. Keep video files outside Git while preserving the screenshot and reproducible behavior notes.
Keep the old match visible through confirmation, then move it downward and fade it into the raised red semicircle. Reveal the remaining match only after the deleted score disappears, while the semicircle returns below the screen. Restore the selected match, position, and opacity if the app interrupts either animation phase. Share Android's animation duration setting between fades and movement; the one-second hold and vibration still confirm the action. The Release APK builds and 104 tests pass. Wear OS emulator checks cover the normal transition, early cancellation, interruptions in each phase, scoring controls, navigation, persistence, and disabled animations. Resting captures match after completed and interrupted transitions.
Link the native Wear OS recording uploaded through gh --attach and document the transition checks. Completed and interrupted animations restore the same resting match pixels, including with large text and disabled animations. Keep the video outside Git and preserve the existing static score captures.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Swiping up raises a red semicircle with a dark trash icon over the score, stopping at the screen midpoint. A continuous one-second hold confirms deletion with an 80ms vibration.
The deleted match then sinks and fades into the trash over 180ms. The remaining match fades in while the semicircle recedes over 220ms. This downward exit makes the old match's removal visible before its replacement appears.
Releasing early, pulling back, adding another finger, or backgrounding the app before confirmation cancels the hold. Continued contact cannot delete another match. Interrupting the exit restores the selected remaining match at full opacity. Left/right navigation stays the same. Disabled system animations show the result immediately after the full one-second hold.
Validation: the signed Release APK builds and all 104 tests pass. The complexity gate improves from 12 to 10 against main. Wear OS 5 emulator checks cover hold cancellation, confirmation before release, continued contact, interruption during both exit and reveal, scoring controls, navigation, persistence, and disabled animations. Interrupted and completed transitions were compared with the resting match capture to check opacity and position. Android's vibrator service recorded the confirmation request; physical Galaxy Watch 5 Pro testing remains outstanding.
The recording shows early release canceling, a confirmed downward exit, and navigation afterward. Video is uploaded with GitHub CLI's
--attachand stays outside Git.delete-motion.mp4