mirror of
https://gitlab.opencode.de/bwi/bundesmessenger/clients/bundesmessenger-ios.git
synced 2026-04-22 01:22:46 +02:00
Delight edit layout experiment (#6384)
* Delight: Edit layout experiment #6079 * Feature flag new App Layout #6406 * Update All chats screen with latest design #6407
This commit is contained in:
@@ -16,11 +16,17 @@
|
||||
|
||||
import Foundation
|
||||
|
||||
@objc
|
||||
protocol RecentCellContextMenuProviderDelegate: AnyObject {
|
||||
func recentCellContextMenuProviderDidStartShowingPreview(_ menuProvider: RecentCellContextMenuProvider)
|
||||
}
|
||||
|
||||
/// Helper class `RecentCellContextMenuProvider` that provides an instace of `UIContextMenuConfiguration` from an instance of `MXKRecentCellDataStoring`
|
||||
@objcMembers
|
||||
class RecentCellContextMenuProvider: NSObject {
|
||||
|
||||
weak var serviceDelegate: RoomContextActionServiceDelegate?
|
||||
weak var menuProviderDelegate: RecentCellContextMenuProviderDelegate?
|
||||
private var currentService: RoomContextActionServiceProtocol?
|
||||
|
||||
@available(iOS 13.0, *)
|
||||
@@ -39,7 +45,11 @@ class RecentCellContextMenuProvider: NSObject {
|
||||
let service = RoomContextActionService(room: room, delegate: serviceDelegate)
|
||||
self.currentService = service
|
||||
let actionProvider = RoomActionProvider(service: service)
|
||||
return UIContextMenuConfiguration(identifier: cellData.roomIdentifier as NSString) {
|
||||
return UIContextMenuConfiguration(identifier: cellData.roomIdentifier as NSString) { [weak self] in
|
||||
if let self = self {
|
||||
self.menuProviderDelegate?.recentCellContextMenuProviderDidStartShowingPreview(self)
|
||||
}
|
||||
|
||||
if room.summary?.isJoined == true {
|
||||
let storyboard = UIStoryboard(name: "Main", bundle: Bundle.main)
|
||||
guard let roomViewController = storyboard.instantiateViewController(withIdentifier: "RoomViewControllerStoryboardId") as? RoomViewController else {
|
||||
|
||||
Reference in New Issue
Block a user