Override plus button action on Rooms list

This commit is contained in:
ismailgulek
2020-09-09 14:41:00 +03:00
parent b2966fc7ba
commit 44e6161b4e
+36 -1
View File
@@ -22,7 +22,7 @@
#import "Riot-Swift.h"
@interface RoomsViewController ()
@interface RoomsViewController ()<SearchableDirectoryViewControllerDelegate>
{
RecentsDataSource *recentsDataSource;
@@ -123,6 +123,15 @@
}
}
- (void)onPlusButtonPressed
{
SearchableDirectoryViewController *controller = [SearchableDirectoryViewController instantiateWithSession:self.mainSession];
[controller displayWithDataSource:[recentsDataSource.publicRoomsDirectoryDataSource copy]];
controller.delegate = self;
UINavigationController *navController = [[RiotNavigationController alloc] initWithRootViewController:controller];
[self presentViewController:navController animated:YES completion:nil];
}
#pragma mark -
- (void)scrollToNextRoomWithMissedNotifications
@@ -249,7 +258,12 @@
- (void)openPublicRoomAtIndexPath:(NSIndexPath *)indexPath
{
MXPublicRoom *publicRoom = [recentsDataSource.publicRoomsDirectoryDataSource roomAtIndexPath:indexPath];
[self openPublicRoom:publicRoom];
}
- (void)openPublicRoom:(MXPublicRoom *)publicRoom
{
// Check whether the user has already joined the selected public room
if ([recentsDataSource.publicRoomsDirectoryDataSource.mxSession roomWithRoomId:publicRoom.roomId])
{
@@ -336,4 +350,25 @@
}
}
#pragma mark - SearchableDirectoryViewControllerDelegate
- (void)searchableDirectoryViewControllerDidCancel:(SearchableDirectoryViewController *)viewController
{
[viewController dismissViewControllerAnimated:YES completion:nil];
}
- (void)searchableDirectoryViewControllerDidSelect:(SearchableDirectoryViewController *)viewController room:(MXPublicRoom *)room
{
[viewController dismissViewControllerAnimated:YES completion:^{
[self openPublicRoom:room];
}];
}
- (void)searchableDirectoryViewControllerDidTapCreateNewRoom:(SearchableDirectoryViewController *)viewController
{
[viewController dismissViewControllerAnimated:YES completion:^{
[self createAnEmptyRoom];
}];
}
@end