## Description
### Collection Sharing Feature Implementation
This PR implements a collection sharing functionality for locker,
allowing users to share collections with others and manage shared access
through various methods.
## Key Features
1. **Collection Sharing Mechanisms**
- Share collections via links
- Manage shared access with specific users
- Configure link expiry and device limits
2. **User Management** in shared collections
- Added participant (viewer/ collaborator)
- Implemented leave collection functionality
- Added user permissions and access controls
3. **UI Enhancements**
- New collection view types (main, outgoing, incoming)
- Grid view for collections
- Enhanced menu sections and descriptions
- Improved sharing dialogs and UI components
Replace sqflite with sqlite_async as the primary database package since the project has migrated to using sqlite_async.
Co-Authored-By: Claude <noreply@anthropic.com>
These test commands are not confirmed to be working correctly and have been removed from the documentation.
Co-Authored-By: Claude <noreply@anthropic.com>
## Description
- Use `load` instead of `view`, since latter is read-only
- When loading fails in rust, delete index file in dart side and try
again
- Atomically save index file by first writing to temp file
## Tests
Tested in debug mode on my pixel phone.
Add three mandatory development practices:
1. Run flutter analyze after every change - zero issues required
2. Always reuse existing components - search before creating
3. Use Ente design system - no hardcoded colors or text styles
Co-Authored-By: Claude <noreply@anthropic.com>
Create comprehensive development guide from /init command including:
- Project philosophy and privacy focus
- Monorepo context and structure
- Development commands (melos and flutter)
- Architecture overview with service patterns
- Security architecture details
- Development setup requirements
Co-Authored-By: Claude <noreply@anthropic.com>
Updated cLTitle2 from "Manual video stream generation" to "Video streaming enhancements" across all supported locales to match the updated English copy.
Co-Authored-By: Claude <noreply@anthropic.com>
- Replace withOpacity() with withValues(alpha:)
- Replace onPopInvoked with onPopInvokedWithResult
- Update MaterialState references to WidgetState
Co-Authored-By: Claude <noreply@anthropic.com>
- Replace old changelog entries with new ones across all supported languages
- Add Similar Images, Manual video stream generation, and Performance Improvements features
- Remove outdated entries for Advanced Image Editor, Smart Albums, Improved Gallery, and Faster Scroll
Co-Authored-By: Claude <noreply@anthropic.com>