mirror of
https://github.com/immich-app/immich
synced 2025-10-17 18:19:27 +00:00
* feat(mobile): Add Kid (Readonly) Mode toggle This commit introduces a "Kid (Readonly) Mode" feature. - Adds a `KidModeProvider` to manage the state of Kid Mode. - Implements a `KidModeCheckbox` widget in the app bar dialog to toggle Kid Mode. - When Kid Mode is enabled, - Disables selecting the multigrid & the bottom bar - Removes the top bar from view Signed-off-by: Sudheer Puthana <Sud-Puth@users.noreply.github.com> Reverts the changes to devtools_options.yaml file Signed-off-by: Sudheer Puthana <Sud-Puth@users.noreply.github.com> refactor: replace Kid Mode with Readonly Mode This commit replaces the "Kid Mode" feature with a more generic "Readonly Mode". - Renamed `KidModeProvider` to `ReadonlyModeProvider`. - Readonly Mode state is now persisted in app settings. - Added a new app setting `allowUserAvatarOverride` to toggle read-only mode. - Updated translations. - Added a message in the app bar dialog indicating when read-only mode is active. Signed-off-by: Sudheer Puthana <Sud-Puth@users.noreply.github.com> Address comments - - Removes the `allowUserAvatarOverride` setting. - Hides the bottom gallery bar when read-only mode is enabled. - Adds an icon on the main app bar when read-only mode is enabled with a snackbar. Signed-off-by: Sudheer Puthana <Sud-Puth@users.noreply.github.com> Update to snackbar - When toggling readonly mode from either the settings or the app bar, a snackbar notification will now appear. - The readonly mode message in the profile drawer has been restyled. - The upload button in the app bar is now hidden when readonly mode is enabled. Signed-off-by: Sudheer Puthana <Sud-Puth@users.noreply.github.com> Removes clearing of snackbar Signed-off-by: Sudheer Puthana <Sud-Puth@users.noreply.github.com> Address Comments - Consolidated snackbar messages for enabling/disabling readonly mode. - Ensured the "Select All" icon in asset group titles is hidden in readonly mode. Signed-off-by: Sudheer Puthana <Sud-Puth@users.noreply.github.com> Adds in the missing translation keys for readonly_mode Signed-off-by: Sudheer Puthana <Sud-Puth@users.noreply.github.com> Fix translation Signed-off-by: Sudheer Puthana <Sud-Puth@users.noreply.github.com> Fix check failure for BorderRadius Signed-off-by: Sudheer Puthana <Sud-Puth@users.noreply.github.com> Changes: - Adjusted AppBar background color in readonly mode. - Removes cross-out pencil icon button in favor of above. - Hides the "Edit" icon next to date/time, disable description and onTap for people and location when readonly mode is enabled. Signed-off-by: Sudheer Puthana <Sud-Puth@users.noreply.github.com> Address comments from Alex - Moved readonly mode check to `GalleryAppBar` to hide the entire `TopControlAppBar` when readonly mode is enabled. - Changed `toggleReadonlyMode` in `ImmichAppBar` to directly toggle the state. Signed-off-by: Sudheer Puthana <Sud-Puth@users.noreply.github.com> migrate readonly mode to new beta timeline remove readonly mode from legacy UI only show readonly functionality when on beta timeline simplify selection icon update generated provider chore: more formatting * fix: bad merge * chore: use Notifier for readonlyModeProvider * fix: drag select now honors readonly mode * fix: disable asset bottom sheet in readonly * fix: disable editing user icon when in readonly * chore: remove generated file * fix: disable tabs instead entire tab bar This solves the issues with the scrubber * chore: remove unneeded import * chore: lint * remove unused condition in bottomsheet --------- Co-authored-by: Brandon Wees <brandonwees@gmail.com> Co-authored-by: Alex <alex.tran1502@gmail.com> |
||
|---|---|---|
| .. | ||
| album | ||
| asset_viewer | ||
| backup | ||
| image | ||
| infrastructure | ||
| map | ||
| search | ||
| timeline | ||
| activity.provider.dart | ||
| activity.provider.g.dart | ||
| activity_service.provider.dart | ||
| activity_service.provider.g.dart | ||
| activity_statistics.provider.dart | ||
| activity_statistics.provider.g.dart | ||
| api.provider.dart | ||
| api.provider.g.dart | ||
| app_life_cycle.provider.dart | ||
| app_settings.provider.dart | ||
| app_settings.provider.g.dart | ||
| asset.provider.dart | ||
| auth.provider.dart | ||
| background_sync.provider.dart | ||
| cast.provider.dart | ||
| db.provider.dart | ||
| folder.provider.dart | ||
| gallery_permission.provider.dart | ||
| haptic_feedback.provider.dart | ||
| immich_logo_provider.dart | ||
| immich_logo_provider.g.dart | ||
| local_auth.provider.dart | ||
| locale_provider.dart | ||
| memory.provider.dart | ||
| multiselect.provider.dart | ||
| network.provider.dart | ||
| notification_permission.provider.dart | ||
| oauth.provider.dart | ||
| partner.provider.dart | ||
| routes.provider.dart | ||
| secure_storage.provider.dart | ||
| server_info.provider.dart | ||
| shared_link.provider.dart | ||
| sync_status.provider.dart | ||
| tab.provider.dart | ||
| theme.provider.dart | ||
| timeline.provider.dart | ||
| trash.provider.dart | ||
| upload_profile_image.provider.dart | ||
| user.provider.dart | ||
| websocket.provider.dart | ||