Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Navigation: Create RoomCoordinator #4734

Open
23 tasks
SBiOSoftWhare opened this issue Aug 20, 2021 · 0 comments
Open
23 tasks

Navigation: Create RoomCoordinator #4734

SBiOSoftWhare opened this issue Aug 20, 2021 · 0 comments

Comments

@SBiOSoftWhare
Copy link
Contributor

To make screen reusable and take back control on navigation we need to manage all the things listed below outside of RoomViewController:

Priority:

  • Show a room: [[AppDelegate theDelegate] showRoom:room.roomId andEventId:nil withMatrixSession:self.mainSession];
  • Handle universal link: [[AppDelegate theDelegate] handleUniversalLinkURL:url]; & [[AppDelegate theDelegate] handleUniversalLinkFragment:fragment fromURL:url];
  • Start a direct chat [[AppDelegate theDelegate] createDirectChatWithUserId:matrixId completion:completion];
  • Leave the room [[AppDelegate theDelegate] restoreInitialDisplay:^{}];

Todo next:

  • Present complete security: [[AppDelegate theDelegate] presentCompleteSecurityForSession: self.mainSession];
  • Show room infos: - (void)showRoomInfoWithInitialSection:(RoomInfoSection)roomInfoSection
  • Show room creation: - (void)showRoomCreationModalWithBubbleData:(id<MXKRoomBubbleCellDataStoring>) bubbleData
  • Show member details: - (void)showMemberDetails:(MXRoomMember *)member
  • Show emoji picker: - (void)reactionsMenuViewModelDidTapMoreReactions:(ReactionsMenuViewModel *)viewModel forEventId:(NSString *)eventId
  • Show edit history: - (void)showEditHistoryForEventId:(NSString*)eventId animated:(BOOL)animated
  • Show media picker: - (void)showMediaPickerAnimated:(BOOL)animated
  • Show sticker picker: - (void)roomInputToolbarViewPresentStickerPicker
  • Show room search: if ([[segue identifier] isEqualToString:@"showRoomSearch"])
  • Show contact details: [[segue identifier] isEqualToString:@"showContactDetails"])
  • Show unknown devices: ([[segue identifier] isEqualToString:@"showUnknownDevices"])

Nice to have:

  • Jitsi call management: [[AppDelegate theDelegate].callPresenter displayJitsiCallWithWidget:jitsiWidget]; & [[AppDelegate theDelegate].callPresenter endActiveJitsiCall];
  • Missed discussion counts
    • Missed discussion count [[AppDelegate theDelegate].masterTabBarController missedDiscussionsCount];
    • Missed highlighted discussion count : missedHighlightDiscussionsCount
  • Show error as alert: [[AppDelegate theDelegate] showErrorAsAlert:error];
  • Show alert with title: [[AppDelegate theDelegate] showAlertWithTitle:title]
  • Visible room id: [AppDelegate theDelegate].visibleRoomId = self.roomDataSource.roomId;
  • Last navigated room id from push: lastNavigatedRoomIdFromPush
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant