- Introduced background sync functionality for the Matrix client, allowing notifications to be received even when the app is backgrounded.
- Added new commands to start, stop, and get the state of background sync.
- Implemented a BackgroundSyncManager to manage sync state and credentials.
- Integrated matrix-sdk for handling Matrix interactions and notifications.
- Updated Cargo.toml to include necessary dependencies for background sync.
- Modified mobile capabilities to include opener permissions.
- Enhanced lib.rs to handle new commands and integrate background sync logic.
- Changed permission descriptions and constants in android-schema.json and mobile-schema.json to reflect new opener functionality.
- Updated capabilities.json to remove deprecated shell permissions and include new opener permissions.
- Refactored schema definitions to align with the new opener API, including changes to allowed and denied commands.
- Adjusted application references in schemas to clarify usage with URLs and paths.
- Changed permission identifiers from `shell` to `opener` for clarity.
- Updated descriptions to reflect new functionality for opening URLs and revealing items in directories.
- Removed deprecated permissions and added new autostart permissions in the schema.
- Adjusted the structure of allowed and denied entries for better organization.
feat: implement system tray functionality in lib.rs
- Added system tray support with show and quit options.
- Implemented event handling for tray icon clicks and menu interactions.
- Modified application run logic to minimize to tray on window close.
- Updated plugins to use `tauri_plugin_opener` instead of `tauri_plugin_shell`.
- Updated capabilities.json to allow opening shell commands.
- Implemented read_clipboard_image function for Linux using arboard to read images from the clipboard and encode them as base64 PNG.
- Added a stub for read_clipboard_image on non-Linux platforms.
- Registered the new command in the Tauri application.
- Introduced new permissions for deep link functionality including `allow-get-current`, `allow-is-registered`, `allow-register`, and `allow-unregister`.
- Added comprehensive notification permissions such as `allow-notify`, `allow-request-permission`, and others to enhance notification capabilities.
- Updated the mobile and android schemas to reflect these changes.
- Removed deprecated window state permissions from schemas.
- Updated the capabilities schema to include new default permissions for deep link and notification features.
- Refactored the Tauri application initialization to support new deep link plugin for mobile platforms.