- Added ScrollView to expanded content for viewing all Pokemon data
* Wrapped content in scrollable container with proper padding
* Updated expand/collapse animations to work with ScrollView
* All Pokemon Home data now accessible through scrolling
- Prevented drawer from fully disappearing on swipe down
* Modified touch handling to only collapse when expanded
* Drawer now stays in minimal collapsed state instead of hiding
* Only the dismiss button can fully hide the drawer
* Improved user experience with persistent results access
- Enhanced gesture behavior:
* Swipe up: expands drawer to show full scrollable content
* Swipe down when expanded: collapses to minimal state
* Tap: toggles between expanded and collapsed states
* Only dismiss button fully hides drawer
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Changed DetectionResult to use full PokemonInfo instead of limited PokemonDetectionInfo
- Removed unnecessary conversion layer that was discarding Pokemon Home data
- Updated storage filters and sorting to use Pokemon Home concepts:
* Replaced CP filters with level filters
* Replaced IV filters with extraction confidence
* Added proper shiny/alpha/game source filters
- Fixed bottom drawer to display actual collected Pokemon Home data:
* Species, nickname, gender, level, nature
* Primary/secondary types, tera type
* Base stats (HP, ATK, DEF, SP.ATK, SP.DEF, SPEED)
* Proper shiny/alpha checkboxes using actual boolean values
* Game origin, trainer info, abilities, moves
* Stamps, labels, marks when available
- Increased drawer expanded height to 400dp to show all data
- Now displays actual Pokemon Home data instead of fake Pokemon GO data
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Major improvements to the bottom drawer user experience:
🎯 **Compact Minimized Display**
- Shows all available data points in a single line with bullet separators
- Includes: Pokemon name, dex number, CP, level, HP, IV percentage, gender, processing time
- Fits in 80dp collapsed height for minimal screen real estate usage
- Clean status icon and dismiss button always visible
🔧 **Expandable Details View**
- Pull up or tap to expand to 240dp height showing full details
- Organized detail rows with labels and values
- Individual stats breakdown (Attack, Defense, Stamina)
- Technical info (processing time, timestamp, detection count)
- Smooth fade animations for expand/collapse transitions
🎮 **Enhanced Gesture Handling**
- **Tap**: Toggle between collapsed and expanded states
- **Swipe Up**: Expand drawer to show full details
- **Swipe Down**: Collapse expanded drawer or dismiss entirely
- **Smart thresholds**: Different swipe distances for expand vs dismiss
- No auto-dismiss - stays until manually dismissed
🎨 **Improved Visual Design**
- Compact data row with ellipsis for long content
- Structured detail rows with consistent spacing
- Better use of space with proper text sizing
- Maintains Material Design principles
Technical improvements:
- Dynamic window height adjustment based on state
- Proper cleanup of expanded/collapsed state
- Thread-safe state management
- Optimized layout updates and animations
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Added comprehensive bottom drawer system that displays detection results immediately:
UI Components:
- ResultsBottomDrawer: Sliding drawer with smooth animations and gesture handling
- Auto-dismiss after 5 seconds or manual swipe/tap dismiss
- Success/failure status indicators with appropriate colors
- Pokemon details display (name, CP, level, IV, HP) when available
- Processing time and timestamp metadata
- Drag handle and intuitive swipe-to-dismiss gesture
Integration Layer:
- DetectionResultHandler: Bridges old PokemonInfo format with new DetectionResult system
- Automatic storage saving for all detection attempts (success/failure)
- Real-time bottom drawer display after each detection
- Proper error handling and cleanup
Pipeline Integration:
- Modified ScreenCaptureService to use DetectionResultHandler
- ServiceLocator initialization for dependency injection
- Success, failure, and no-results detection scenarios handled
- Proper cleanup when service stops
Technical Features:
- Thread-safe coroutine-based result handling
- Format conversion between old and new data models
- WindowManager-based overlay system for system-wide display
- Material Design styling with proper theming
- Haptic feedback and smooth animation curves
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>