Skip to content

Commit f772849

Browse files
authored
Don't use the new iPad modal presentation mode for the timeline item menu. (#3325)
1 parent c264e9e commit f772849

File tree

1 file changed

+12
-0
lines changed

1 file changed

+12
-0
lines changed

ElementX/Sources/Screens/Timeline/View/ItemMenu/TimelineItemMenu.swift

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ struct TimelineItemMenu: View {
5151
}
5252
}
5353
.accessibilityIdentifier(A11yIdentifiers.roomScreen.timelineItemActionMenu)
54+
.presentationPage()
5455
.presentationDetents([.medium, .large])
5556
.presentationBackground(Color.compound.bgCanvasDefault)
5657
.presentationDragIndicator(.visible)
@@ -233,6 +234,17 @@ private extension EncryptionAuthenticity {
233234
}
234235
}
235236

237+
private extension View {
238+
/// Uses the old page style modal so that on iPadOS 18 the presentation detents have no effect.
239+
@ViewBuilder func presentationPage() -> some View {
240+
if #available(iOS 18.0, *) {
241+
presentationSizing(.page)
242+
} else {
243+
self
244+
}
245+
}
246+
}
247+
236248
// MARK: - Previews
237249

238250
struct TimelineItemMenu_Previews: PreviewProvider, TestablePreview {

0 commit comments

Comments
 (0)