Release 2025-06-22
Changes
This commit introduces a new interaction model to the application, enabling users to delete an emoji by long-pressing its corresponding card. To prevent accidental actions, this operation triggers a confirmation dialog for user verification.
To support this functionality and refine the user experience, several UI components have been refactored and enhanced. Notably, for large-screen layouts, the existing side sheet has been replaced by a custom SurfaceSideSheet component to allow for more precise control over its animation and behavior. A new visual feedback mechanism has also been added to the editing panels (both the bottom sheet and side sheet); their backgrounds become semi-transparent when the user drags the size or angle sliders. This indicates an active editing state and improves the visibility of the underlying image.
Additionally, this update includes improvements to the codebase structure. The ResultImg component has been decoupled to have a more specific responsibility. State management in the EmojiViewModel was simplified by removing a previous debounce-based live-rendering mechanism. Finally, to support smoother list animations, a unique id field has been added to the EmojiDetection data model.