Skip to content

Conversation

@itsmeichigo
Copy link
Contributor

@itsmeichigo itsmeichigo commented Mar 28, 2025

Part of #15310

Description

This PR updates the split shipment detail screen to support removing and merging shipments:

  • Added a new ellipsis button on the right side of the top tab bar.
  • Added a gradient to partially hide the bar title labels when scrolling.
  • Added a menu show options to remove shipments or merge all.
  • Added a sheet to confirm merging all shipments.
  • Added implementation to merge all shipments.

Steps to reproduce

  1. Log in to a test store with Woo Shipping plugin set up.
  2. Open a completed order with more than one physical product with different quantities.
  3. Select Create shipping label > Split shipments.
  4. Move items to different shipments.
  5. Confirm that there's an ellipsis button on the right of the tab bar.
  6. Confirm that there's a gradient next to the ellipsis button if there are 3 or more shipments.
  7. Tap the ellipsis button and confirm that a menu is displayed with options to remove or merge shipments.
  8. Select Merge all unfulfilled and confirm that a sheet is displayed to confirm the decision.
  9. Select Merge all shipments and confirm that all items are merged into one single shipment.

Implementation for removing shipments will be handled in a subsequent PR.

Testing information

Tested the above test cases in simulator iPhone 16 Pro iOS 18.2 with different font sizes.

Screenshots

Simulator.Screen.Recording.-.iPhone.16.Pro.-.2025-03-31.at.11.05.44.mp4

  • I have considered if this change warrants user-facing release notes and have added them to RELEASE-NOTES.txt if necessary.

Reviewer (or Author, in the case of optional code reviews):

Please make sure these conditions are met before approving the PR, or request changes if the PR needs improvement:

  • The PR is small and has a clear, single focus, or a valid explanation is provided in the description. If needed, please request to split it into smaller PRs.
  • Ensure Adequate Unit Test Coverage: The changes are reasonably covered by unit tests or an explanation is provided in the PR description.
  • Manual Testing: The author listed all the tests they ran, including smoke tests when needed (e.g., for refactorings). The reviewer confirmed that the PR works as expected on all devices (phone/tablet) and no regressions are added.

@itsmeichigo itsmeichigo added type: task An internally driven task. feature: shipping labels Related to creating, ordering, or printing shipping labels. labels Mar 28, 2025
@itsmeichigo itsmeichigo added this to the 22.1 milestone Mar 28, 2025
@wpmobilebot
Copy link
Collaborator

wpmobilebot commented Mar 28, 2025

App Icon📲 You can test the changes from this Pull Request in WooCommerce iOS Prototype by scanning the QR code below to install the corresponding build.

App NameWooCommerce iOS Prototype
Build Number29065
VersionPR #15448
Bundle IDcom.automattic.alpha.woocommerce
Commitb3ba7c9
Installation URL1vel3arcb67t8
Automatticians: You can use our internal self-serve MC tool to give yourself access to those builds if needed.

@itsmeichigo itsmeichigo changed the title Shipping Labels: Handle removing shipments Shipping Labels: Handle merging shipments Mar 31, 2025
@itsmeichigo itsmeichigo marked this pull request as ready for review March 31, 2025 04:21
Base automatically changed from task/15303-tab-view-updates to trunk March 31, 2025 07:48
@selanthiraiyan selanthiraiyan self-assigned this Apr 1, 2025
Copy link
Contributor

@selanthiraiyan selanthiraiyan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great. :shipit:

Comment on lines +85 to +89
.overlay(alignment: .trailing) {
LinearGradient(gradient: Gradient(colors: [.clear, Color(.basicBackground)]), startPoint: .leading, endPoint: .center)
.frame(width: Layout.gradientViewWidth)
.renderedIf(viewModel.selectedShipmentIndex < viewModel.topTabItems.count - 1)
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice detail, adding the gradient. 👏

@itsmeichigo itsmeichigo merged commit 1cfffc4 into trunk Apr 1, 2025
14 checks passed
@itsmeichigo itsmeichigo deleted the task/15310-remove-shipment branch April 1, 2025 02:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature: shipping labels Related to creating, ordering, or printing shipping labels. type: task An internally driven task.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants