diff --git a/Riot/Modules/Room/RoomCoordinatorBridgePresenter.swift b/Riot/Modules/Room/RoomCoordinatorBridgePresenter.swift index 9616969fa..6184026a2 100644 --- a/Riot/Modules/Room/RoomCoordinatorBridgePresenter.swift +++ b/Riot/Modules/Room/RoomCoordinatorBridgePresenter.swift @@ -86,6 +86,22 @@ final class RoomCoordinatorBridgePresenter: NSObject { func present(from viewController: UIViewController, animated: Bool) { + if bridgeParameters.threadId != nil { + let coordinator = self.createRoomCoordinator() + coordinator.delegate = self + coordinator.start() + let presentable = coordinator.toPresentable() + + let presentationController = CustomSizedPresentationController(presentedViewController: presentable, + presenting: viewController) + presentationController.dismissOnBackgroundTap = false + presentationController.cornerRadius = 12 + presentable.transitioningDelegate = presentationController + viewController.present(presentable, animated: animated, completion: nil) + + self.coordinator = coordinator + return + } let coordinator = self.createRoomCoordinator() coordinator.delegate = self let presentable = coordinator.toPresentable() diff --git a/Riot/Modules/Room/RoomViewController.m b/Riot/Modules/Room/RoomViewController.m index d92628e2f..41a178659 100644 --- a/Riot/Modules/Room/RoomViewController.m +++ b/Riot/Modules/Room/RoomViewController.m @@ -6344,9 +6344,8 @@ const NSTimeInterval kResizeComposerAnimationDuration = .05; threadId:threadId displayConfiguration:configuration previewData:nil]; - RoomCoordinatorBridgePresenter *presenter = [[RoomCoordinatorBridgePresenter alloc] initWithParameters:parameters]; - self.threadBridgePresenter = presenter; - [presenter presentFrom:self animated:YES]; + self.threadBridgePresenter = [[RoomCoordinatorBridgePresenter alloc] initWithParameters:parameters]; + [self.threadBridgePresenter presentFrom:self animated:YES]; } #pragma mark - RoomContextualMenuViewControllerDelegate