Skip to content

Commit a019f60

Browse files
committed
Make the whole content, including buttons, scrollable in card present payment alerts
1 parent 52ff271 commit a019f60

9 files changed

+9
-8
lines changed

WooCommerce/Classes/POS/Presentation/CardReaderConnection/UI States/Connection Alerts/PointOfSaleCardPresentPaymentBluetoothRequiredAlertView.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,13 +29,13 @@ struct PointOfSaleCardPresentPaymentBluetoothRequiredAlertView: View {
2929
.fixedSize(horizontal: false, vertical: true)
3030
}
3131
.frame(maxWidth: .infinity)
32-
.scrollVerticallyIfNeeded()
3332

3433
Button(viewModel.openSettingsButtonViewModel.title,
3534
action: viewModel.openSettingsButtonViewModel.actionHandler)
3635
.buttonStyle(POSFilledButtonStyle(size: .normal))
3736
.matchedGeometryEffect(id: animation.buttonsTransitionId, in: animation.namespace, properties: .position)
3837
}
38+
.scrollVerticallyIfNeeded()
3939
.posModalCloseButton(action: viewModel.dismissButtonViewModel.actionHandler,
4040
accessibilityLabel: viewModel.dismissButtonViewModel.title)
4141
.multilineTextAlignment(.center)

WooCommerce/Classes/POS/Presentation/CardReaderConnection/UI States/Connection Alerts/PointOfSaleCardPresentPaymentConnectingFailedChargeReaderView.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,13 @@ struct PointOfSaleCardPresentPaymentConnectingFailedChargeReaderView: View {
2424
}
2525
}
2626
.frame(maxWidth: .infinity)
27-
.scrollVerticallyIfNeeded()
2827

2928
Button(viewModel.retryButtonViewModel.title,
3029
action: viewModel.retryButtonViewModel.actionHandler)
3130
.buttonStyle(POSFilledButtonStyle(size: .normal))
3231
.matchedGeometryEffect(id: animation.buttonsTransitionId, in: animation.namespace, properties: .position)
3332
}
33+
.scrollVerticallyIfNeeded()
3434
.posModalCloseButton(action: viewModel.cancelButtonViewModel.actionHandler,
3535
accessibilityLabel: viewModel.cancelButtonViewModel.title)
3636
.multilineTextAlignment(.center)

WooCommerce/Classes/POS/Presentation/CardReaderConnection/UI States/Connection Alerts/PointOfSaleCardPresentPaymentConnectingFailedLocationRequiredAlertView.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,13 @@ struct PointOfSaleCardPresentPaymentConnectingFailedLocationRequiredAlertView: V
2424
}
2525
}
2626
.frame(maxWidth: .infinity)
27-
.scrollVerticallyIfNeeded()
2827

2928
Button(viewModel.primaryButtonViewModel.title,
3029
action: viewModel.primaryButtonViewModel.actionHandler)
3130
.buttonStyle(POSFilledButtonStyle(size: .normal))
3231
.matchedGeometryEffect(id: animation.buttonsTransitionId, in: animation.namespace, properties: .position)
3332
}
33+
.scrollVerticallyIfNeeded()
3434
.posModalCloseButton(action: viewModel.cancelButtonViewModel.actionHandler,
3535
accessibilityLabel: viewModel.cancelButtonViewModel.title)
3636
.multilineTextAlignment(.center)

WooCommerce/Classes/POS/Presentation/CardReaderConnection/UI States/Connection Alerts/PointOfSaleCardPresentPaymentConnectingFailedUpdatePostalCodeView.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,13 +24,13 @@ struct PointOfSaleCardPresentPaymentConnectingFailedUpdatePostalCodeView: View {
2424
}
2525
}
2626
.frame(maxWidth: .infinity)
27-
.scrollVerticallyIfNeeded()
2827

2928
Button(viewModel.retryButtonViewModel.title,
3029
action: viewModel.retryButtonViewModel.actionHandler)
3130
.buttonStyle(POSFilledButtonStyle(size: .normal))
3231
.matchedGeometryEffect(id: animation.buttonsTransitionId, in: animation.namespace, properties: .position)
3332
}
33+
.scrollVerticallyIfNeeded()
3434
.posModalCloseButton(action: viewModel.cancelButtonViewModel.actionHandler,
3535
accessibilityLabel: viewModel.cancelButtonViewModel.title)
3636
.multilineTextAlignment(.center)

WooCommerce/Classes/POS/Presentation/CardReaderConnection/UI States/Connection Alerts/PointOfSaleCardPresentPaymentConnectingFailedView.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,13 +31,13 @@ struct PointOfSaleCardPresentPaymentConnectingFailedView: View {
3131
.fixedSize(horizontal: false, vertical: true)
3232
}
3333
.frame(maxWidth: .infinity)
34-
.scrollVerticallyIfNeeded()
3534

3635
Button(viewModel.retryButtonViewModel.title,
3736
action: viewModel.retryButtonViewModel.actionHandler)
3837
.buttonStyle(POSFilledButtonStyle(size: .normal))
3938
.matchedGeometryEffect(id: animation.buttonsTransitionId, in: animation.namespace, properties: .position)
4039
}
40+
.scrollVerticallyIfNeeded()
4141
.posModalCloseButton(action: viewModel.cancelButtonViewModel.actionHandler,
4242
accessibilityLabel: viewModel.cancelButtonViewModel.title)
4343
.multilineTextAlignment(.center)

WooCommerce/Classes/POS/Presentation/CardReaderConnection/UI States/Connection Alerts/PointOfSaleCardPresentPaymentFoundReaderView.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ struct PointOfSaleCardPresentPaymentFoundReaderView: View {
2424
}
2525
}
2626
.frame(maxWidth: .infinity)
27-
.scrollVerticallyIfNeeded()
2827

2928
VStack(spacing: PointOfSaleReaderConnectionModalLayout.buttonSpacing) {
3029
Button(viewModel.connectButton.title,
@@ -37,6 +36,7 @@ struct PointOfSaleCardPresentPaymentFoundReaderView: View {
3736
}
3837
.matchedGeometryEffect(id: animation.buttonsTransitionId, in: animation.namespace, properties: .position)
3938
}
39+
.scrollVerticallyIfNeeded()
4040
.posModalCloseButton(action: viewModel.cancelSearchButton.actionHandler,
4141
accessibilityLabel: viewModel.cancelSearchButton.title)
4242
.multilineTextAlignment(.center)

WooCommerce/Classes/POS/Presentation/CardReaderConnection/UI States/Connection Alerts/PointOfSaleCardPresentPaymentReaderUpdateFailedView.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,13 +23,13 @@ struct PointOfSaleCardPresentPaymentReaderUpdateFailedView: View {
2323
.matchedGeometryEffect(id: animation.titleTransitionId, in: animation.namespace, properties: .position)
2424
}
2525
.frame(maxWidth: .infinity)
26-
.scrollVerticallyIfNeeded()
2726

2827
Button(viewModel.retryButtonViewModel.title,
2928
action: viewModel.retryButtonViewModel.actionHandler)
3029
.buttonStyle(POSFilledButtonStyle(size: .normal))
3130
.matchedGeometryEffect(id: animation.buttonsTransitionId, in: animation.namespace, properties: .position)
3231
}
32+
.scrollVerticallyIfNeeded()
3333
.posModalCloseButton(action: viewModel.cancelButtonViewModel.actionHandler,
3434
accessibilityLabel: viewModel.cancelButtonViewModel.title)
3535
.multilineTextAlignment(.center)

WooCommerce/Classes/POS/Presentation/Reusable Views/POSModalSizing.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ private extension POSModalSizing {
4747
}
4848

4949
var frameHeight: CGFloat {
50-
return min(preferredFrameHeight, parentSize.height)
50+
return min(preferredFrameHeight, maxAvailableFrameHeight)
5151
}
5252

5353
var preferredFrameHeight: CGFloat {

WooCommerce/Classes/POS/Presentation/Reusable Views/POSModalViewModifier.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ struct POSRootModalViewModifier: ViewModifier {
3535
.padding()
3636
}
3737
.zIndex(1)
38+
// Scale the modal container in and out, fading appropriately.
3839
// Unfortunately combined doesn't work on removal.
3940
// The extra ZStack prevents changing modalContent from scaling and fading, but the ZIndex needs to be
4041
// consistent even when animating out, which it wouldn't be if unspecified.

0 commit comments

Comments
 (0)