[Spaces] M10.6.1 Handle space link #4498

- Fixed universal links
- Added support for space links
This commit is contained in:
Gil Eluard
2021-09-22 14:58:19 +02:00
parent 5864f2a55f
commit 1403d464ee
21 changed files with 428 additions and 66 deletions
+38 -2
View File
@@ -137,7 +137,7 @@ const NSTimeInterval kResizeComposerAnimationDuration = .05;
@interface RoomViewController () <UISearchBarDelegate, UIGestureRecognizerDelegate, UIScrollViewAccessibilityDelegate, RoomTitleViewTapGestureDelegate, RoomParticipantsViewControllerDelegate, MXKRoomMemberDetailsViewControllerDelegate, ContactsTableViewControllerDelegate, MXServerNoticesDelegate, RoomContextualMenuViewControllerDelegate,
ReactionsMenuViewModelCoordinatorDelegate, EditHistoryCoordinatorBridgePresenterDelegate, MXKDocumentPickerPresenterDelegate, EmojiPickerCoordinatorBridgePresenterDelegate,
ReactionHistoryCoordinatorBridgePresenterDelegate, CameraPresenterDelegate, MediaPickerCoordinatorBridgePresenterDelegate,
RoomDataSourceDelegate, RoomCreationModalCoordinatorBridgePresenterDelegate, RoomInfoCoordinatorBridgePresenterDelegate, DialpadViewControllerDelegate, RemoveJitsiWidgetViewDelegate, VoiceMessageControllerDelegate>
RoomDataSourceDelegate, RoomCreationModalCoordinatorBridgePresenterDelegate, RoomInfoCoordinatorBridgePresenterDelegate, DialpadViewControllerDelegate, RemoveJitsiWidgetViewDelegate, VoiceMessageControllerDelegate, SpaceDetailPresenterDelegate>
{
// The preview header
@@ -247,6 +247,7 @@ const NSTimeInterval kResizeComposerAnimationDuration = .05;
@property (nonatomic, getter=isMissedDiscussionsBadgeHidden) BOOL missedDiscussionsBadgeHidden;
@property (nonatomic, strong) VoiceMessageController *voiceMessageController;
@property (nonatomic, strong) SpaceDetailPresenter *spaceDetailPresenter;
@end
@@ -2191,7 +2192,9 @@ const NSTimeInterval kResizeComposerAnimationDuration = .05;
}
else
{
return [[AppDelegate theDelegate] handleUniversalLinkURL:universalLinkURL];
[self handleSpaceUniversalLinkWith:universalLinkURL];
return YES;
// return [[AppDelegate theDelegate] handleUniversalLinkURL:universalLinkURL];
}
}
@@ -6444,4 +6447,37 @@ const NSTimeInterval kResizeComposerAnimationDuration = .05;
}];
}
- (void)showSpaceDetailWithPublicRoom:(MXPublicRoom *)publicRoom
{
self.spaceDetailPresenter = [SpaceDetailPresenter new];
self.spaceDetailPresenter.delegate = self;
[self.spaceDetailPresenter presentForSpaceWithSummary:publicRoom from:self sourceView:nil session:self.mainSession animated:YES];
}
- (void)showSpaceDetailWithId:(NSString *)spaceId
{
self.spaceDetailPresenter = [SpaceDetailPresenter new];
self.spaceDetailPresenter.delegate = self;
[self.spaceDetailPresenter presentForSpaceWithId:spaceId from:self sourceView:nil session:self.mainSession animated:YES];
}
#pragma mark - SpaceDetailPresenterDelegate
- (void)spaceDetailPresenterDidComplete:(SpaceDetailPresenter *)presenter
{
self.spaceDetailPresenter = nil;
}
- (void)spaceDetailPresenter:(SpaceDetailPresenter *)presenter didOpenSpaceWithId:(NSString *)spaceId
{
self.spaceDetailPresenter = nil;
[[LegacyAppDelegate theDelegate] openSpaceWithId:spaceId];
}
- (void)spaceDetailPresenter:(SpaceDetailPresenter *)presenter didJoinSpaceWithId:(NSString *)spaceId
{
self.spaceDetailPresenter = nil;
[[LegacyAppDelegate theDelegate] openSpaceWithId:spaceId];
}
@end