MediaTimelinePreviewDetails can now be opened by long pressing in the media timeline (#4474)

* presenting media actions from the media timeline

* implemented view in timeline and fixed an issue that made dark mode being when trying to delete the file

* pr suggestions
This commit is contained in:
Mauro
2025-09-05 15:30:36 +02:00
committed by GitHub
parent 5be7967f94
commit eee11ed67c
12 changed files with 148 additions and 48 deletions
@@ -0,0 +1,34 @@
//
// Copyright 2025 New Vector Ltd.
//
// SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
// Please see LICENSE files in the repository root for full details.
//
import SwiftUI
extension View {
func accessibleLongPress(named name: String, action: @escaping () -> Void) -> some View {
modifier(AccessibleLongPress(name: name, action: action))
}
}
struct AccessibleLongPress: ViewModifier {
@Environment(\.accessibilityVoiceOverEnabled) private var isVoiceOverEnabled
let name: String
let action: () -> Void
func body(content: Content) -> some View {
if isVoiceOverEnabled {
content
.accessibilityAction(named: name) {
action()
}
} else {
content
.longPressWithFeedback {
action()
}
}
}
}