[PR #24645] feat(mobile): change bottom bar buttons #17947

Open
opened 2026-02-05 16:30:07 +03:00 by OVERLORD · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/immich-app/immich/pull/24645
Author: @idubnori
Created: 12/17/2025
Status: 🔄 Open

Base: mainHead: feature/bottom-buttons-order


📝 Commits (10+)

  • 7d4de5f feat(mobile): move activity button to action button menu
  • 76fd689 feat(mobile): improve action button order
  • c38ecab refactor: action button visibility logic and kebab menu handling
  • 939c222 feat(mobile): add ButtonPosition enum and update action button context
  • e49239e refactor: clean up
  • 6b4cc4e fix: adjust action button layout for better alignment
  • a9bee49 fix: add copyWith method to ActionButtonContext for improved context management
  • 75734b4 fix: pass iconOnly and menuItem parameters to EditImageActionButton for enhanced customization
  • 8ceb68e test: verify kebab menu does not contain bottom bar buttons in action button types
  • de36f9a refactor: update bottom bar button type assertions for consistency and clarity

📊 Changes

7 files changed (+279 additions, -43 deletions)

View changed files

📝 mobile/lib/constants/enums.dart (+2 -0)
📝 mobile/lib/presentation/widgets/action_buttons/edit_image_action_button.widget.dart (+6 -1)
mobile/lib/presentation/widgets/action_buttons/open_activity_action_button.widget.dart (+24 -0)
📝 mobile/lib/presentation/widgets/asset_viewer/bottom_bar.widget.dart (+31 -21)
📝 mobile/lib/presentation/widgets/asset_viewer/top_app_bar.widget.dart (+0 -9)
📝 mobile/lib/utils/action_button.utils.dart (+91 -12)
📝 mobile/test/utils/action_button_utils_test.dart (+125 -0)

📄 Description

Description

This PR consolidates the outcome of the discussion so far and applies the agreed changes to the bottom action buttons.

  • Reflect the current consensus on which actions should be visible per context
  • Keep the scope limited to button composition

Button changes by context

Context Current buttom buttons After this change Unit tests
Asset (local only) share, upload, edit share, upload, edit, delete
Shared album share, edit, addto, delete share, addto, open activity, like
Locked folder (none) share, unlock, delete
  • Minor adjustments
    • No visual or behavioral change other than text wrapping support

How has this been tested?

  • Unit tests added for the updated button lists and regressions
  • Visual regression checks across the affected contexts

Screenshots (if appropriate)

https://github.com/user-attachments/assets/b3428fc1-c641-4ff8-8897-7d45c09f2429

Checklist:

  • I have performed a self-review of my own code
  • I have made corresponding changes to the documentation if applicable
  • I have no unrelated changes in the PR.
  • I have confirmed that any new dependencies are strictly necessary.
  • I have written tests for new code (if applicable)
  • I have followed naming conventions/patterns in the surrounding code
  • All code in src/services/ uses repositories implementations for database calls, filesystem operations, etc.
  • All code in src/repositories/ is pretty basic/simple and does not have any immich specific logic (that belongs in src/services/)

Please describe to which degree, if any, an LLM was used in creating this pull request.

  • initial impl / refactoring / test code

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/immich-app/immich/pull/24645 **Author:** [@idubnori](https://github.com/idubnori) **Created:** 12/17/2025 **Status:** 🔄 Open **Base:** `main` ← **Head:** `feature/bottom-buttons-order` --- ### 📝 Commits (10+) - [`7d4de5f`](https://github.com/immich-app/immich/commit/7d4de5f2e2fd5635a0a16aece984c8d92ea6e6be) feat(mobile): move activity button to action button menu - [`76fd689`](https://github.com/immich-app/immich/commit/76fd68957c7a91eeccc3b29a966b0498976a9e2f) feat(mobile): improve action button order - [`c38ecab`](https://github.com/immich-app/immich/commit/c38ecab1a640597cbff018c37b15292b8438faf7) refactor: action button visibility logic and kebab menu handling - [`939c222`](https://github.com/immich-app/immich/commit/939c222728bc14d46665b60fac01abf01a788373) feat(mobile): add ButtonPosition enum and update action button context - [`e49239e`](https://github.com/immich-app/immich/commit/e49239e7e98aabec795a225c6f139e0dbc281cca) refactor: clean up - [`6b4cc4e`](https://github.com/immich-app/immich/commit/6b4cc4e65e9be7bab8c883a77c8c4019ab9ed551) fix: adjust action button layout for better alignment - [`a9bee49`](https://github.com/immich-app/immich/commit/a9bee498c4e3466a550a8e28375b8fa69467089f) fix: add copyWith method to ActionButtonContext for improved context management - [`75734b4`](https://github.com/immich-app/immich/commit/75734b45a0280d0e907e095dfb92f002b3194e33) fix: pass iconOnly and menuItem parameters to EditImageActionButton for enhanced customization - [`8ceb68e`](https://github.com/immich-app/immich/commit/8ceb68e240a4b07ee9edcaa1d83bf3c035ce7baa) test: verify kebab menu does not contain bottom bar buttons in action button types - [`de36f9a`](https://github.com/immich-app/immich/commit/de36f9a215845a0e469e6c38193f21f8dd60e8ea) refactor: update bottom bar button type assertions for consistency and clarity ### 📊 Changes **7 files changed** (+279 additions, -43 deletions) <details> <summary>View changed files</summary> 📝 `mobile/lib/constants/enums.dart` (+2 -0) 📝 `mobile/lib/presentation/widgets/action_buttons/edit_image_action_button.widget.dart` (+6 -1) ➕ `mobile/lib/presentation/widgets/action_buttons/open_activity_action_button.widget.dart` (+24 -0) 📝 `mobile/lib/presentation/widgets/asset_viewer/bottom_bar.widget.dart` (+31 -21) 📝 `mobile/lib/presentation/widgets/asset_viewer/top_app_bar.widget.dart` (+0 -9) 📝 `mobile/lib/utils/action_button.utils.dart` (+91 -12) 📝 `mobile/test/utils/action_button_utils_test.dart` (+125 -0) </details> ### 📄 Description ## Description This PR consolidates the outcome of the discussion so far and applies the agreed changes to the bottom action buttons. - Reflect the current consensus on which actions should be visible per context - Keep the scope limited to button composition ### Button changes by context | Context | Current buttom buttons | After this change | Unit tests | |--------|-----------------|------------------|------------| | Asset (local only) | share, upload, edit | share, upload, edit, **delete** | ✓ | | Shared album | share, edit, addto, delete | share, **addto, open activity, like** | ✓ | | Locked folder | (none) | **share, unlock, delete** | ✓ | - Minor adjustments - No visual or behavioral change other than text wrapping support ## How has this been tested? - [x] Unit tests added for the updated button lists and regressions - [x] Visual regression checks across the affected contexts <details><summary><h2>Screenshots (if appropriate)</h2></summary> https://github.com/user-attachments/assets/b3428fc1-c641-4ff8-8897-7d45c09f2429 <!-- Images go below this line. --> </details> <!-- API endpoint changes (if relevant) ## API Changes The `/api/something` endpoint is now `/api/something-else` --> ## Checklist: - [x] I have performed a self-review of my own code - [ ] I have made corresponding changes to the documentation if applicable - [x] I have no unrelated changes in the PR. - [x] I have confirmed that any new dependencies are strictly necessary. - [x] I have written tests for new code (if applicable) - [x] I have followed naming conventions/patterns in the surrounding code - [ ] ~All code in `src/services/` uses repositories implementations for database calls, filesystem operations, etc.~ - [ ] ~All code in `src/repositories/` is pretty basic/simple and does not have any immich specific logic (that belongs in `src/services/`)~ ## Please describe to which degree, if any, an LLM was used in creating this pull request. - initial impl / refactoring / test code --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
OVERLORD added the pull-request label 2026-02-05 16:30:07 +03:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: immich-app/immich#17947