diff --git a/Riot/Managers/Widgets/WidgetManager.h b/Riot/Managers/Widgets/WidgetManager.h index c808de9d6..99d3737ef 100644 --- a/Riot/Managers/Widgets/WidgetManager.h +++ b/Riot/Managers/Widgets/WidgetManager.h @@ -37,7 +37,8 @@ FOUNDATION_EXPORT NSString *const kWidgetModularEventTypeString; /** Known types widgets. */ -FOUNDATION_EXPORT NSString *const kWidgetTypeJitsi; +FOUNDATION_EXPORT NSString *const kWidgetTypeJitsiV1; +FOUNDATION_EXPORT NSString *const kWidgetTypeJitsiV2; FOUNDATION_EXPORT NSString *const kWidgetTypeStickerPicker; /** diff --git a/Riot/Managers/Widgets/WidgetManager.m b/Riot/Managers/Widgets/WidgetManager.m index 843dec06a..67a0590ea 100644 --- a/Riot/Managers/Widgets/WidgetManager.m +++ b/Riot/Managers/Widgets/WidgetManager.m @@ -25,7 +25,8 @@ NSString *const kWidgetMatrixEventTypeString = @"m.widget"; NSString *const kWidgetModularEventTypeString = @"im.vector.modular.widgets"; -NSString *const kWidgetTypeJitsi = @"jitsi"; +NSString *const kWidgetTypeJitsiV1 = @"jitsi"; +NSString *const kWidgetTypeJitsiV2 = @"m.jitsi"; NSString *const kWidgetTypeStickerPicker = @"m.stickerpicker"; NSString *const kWidgetManagerDidUpdateWidgetNotification = @"kWidgetManagerDidUpdateWidgetNotification"; @@ -278,7 +279,8 @@ NSString *const WidgetManagerErrorDomain = @"WidgetManagerErrorDomain"; } // Build data for a jitsi widget - NSString *widgetId = [NSString stringWithFormat:@"%@_%@_%@", kWidgetTypeJitsi, room.mxSession.myUser.userId, @((uint64_t)([[NSDate date] timeIntervalSince1970] * 1000))]; + // Riot-Web still uses V1 type + NSString *widgetId = [NSString stringWithFormat:@"%@_%@_%@", kWidgetTypeJitsiV1, room.mxSession.myUser.userId, @((uint64_t)([[NSDate date] timeIntervalSince1970] * 1000))]; // Create a random enough jitsi conference id // Note: the jitsi server automatically creates conference when the conference @@ -295,7 +297,7 @@ NSString *const WidgetManagerErrorDomain = @"WidgetManagerErrorDomain"; return [self createWidget:widgetId withContent:@{ @"url": url, - @"type": kWidgetTypeJitsi, + @"type": kWidgetTypeJitsiV1, @"data": @{ @"widgetSessionId": widgetSessionId } diff --git a/Riot/Modules/Integrations/WidgetPicker/WidgetPickerViewController.m b/Riot/Modules/Integrations/WidgetPicker/WidgetPickerViewController.m index 164fcbbd3..60346da15 100644 --- a/Riot/Modules/Integrations/WidgetPicker/WidgetPickerViewController.m +++ b/Riot/Modules/Integrations/WidgetPicker/WidgetPickerViewController.m @@ -60,7 +60,7 @@ UIAlertAction *alertAction; - NSArray *widgets = [[WidgetManager sharedManager] widgetsNotOfTypes:@[kWidgetTypeJitsi] + NSArray *widgets = [[WidgetManager sharedManager] widgetsNotOfTypes:@[kWidgetTypeJitsiV1, kWidgetTypeJitsiV2] inRoom:roomDataSource.room withRoomState:roomDataSource.roomState]; diff --git a/Riot/Modules/Room/DataSources/RoomDataSource.m b/Riot/Modules/Room/DataSources/RoomDataSource.m index e1122a84e..72d78deff 100644 --- a/Riot/Modules/Room/DataSources/RoomDataSource.m +++ b/Riot/Modules/Room/DataSources/RoomDataSource.m @@ -802,7 +802,7 @@ Widget *jitsiWidget; // Note: Manage only one jitsi widget at a time for the moment - jitsiWidget = [[WidgetManager sharedManager] widgetsOfTypes:@[kWidgetTypeJitsi] inRoom:self.room withRoomState:self.roomState].firstObject; + jitsiWidget = [[WidgetManager sharedManager] widgetsOfTypes:@[kWidgetTypeJitsiV1, kWidgetTypeJitsiV2] inRoom:self.room withRoomState:self.roomState].firstObject; return jitsiWidget; } diff --git a/Riot/Modules/Room/RoomViewController.m b/Riot/Modules/Room/RoomViewController.m index 52e1069c3..8bbdead4b 100644 --- a/Riot/Modules/Room/RoomViewController.m +++ b/Riot/Modules/Room/RoomViewController.m @@ -4351,7 +4351,7 @@ - (NSUInteger)widgetsCount:(BOOL)includeUserWidgets { - NSUInteger widgetsCount = [[WidgetManager sharedManager] widgetsNotOfTypes:@[kWidgetTypeJitsi] + NSUInteger widgetsCount = [[WidgetManager sharedManager] widgetsNotOfTypes:@[kWidgetTypeJitsiV1, kWidgetTypeJitsiV2] inRoom:self.roomDataSource.room withRoomState:self.roomDataSource.roomState].count; if (includeUserWidgets) diff --git a/Riot/Utils/EventFormatter.m b/Riot/Utils/EventFormatter.m index f9227d391..e064deace 100644 --- a/Riot/Utils/EventFormatter.m +++ b/Riot/Utils/EventFormatter.m @@ -69,7 +69,8 @@ static NSString *const kEventFormatterTimeFormat = @"HH:mm"; if (widget.isActive) { - if ([widget.type isEqualToString:kWidgetTypeJitsi]) + if ([widget.type isEqualToString:kWidgetTypeJitsiV1] + || [widget.type isEqualToString:kWidgetTypeJitsiV2]) { // This is an alive jitsi widget displayText = [NSString stringWithFormat:NSLocalizedStringFromTable(@"event_formatter_jitsi_widget_added", @"Vector", nil), senderDisplayName]; @@ -97,7 +98,8 @@ static NSString *const kEventFormatterTimeFormat = @"HH:mm"; Widget *activeWidget = [[Widget alloc] initWithWidgetEvent:widgetStateEvent inMatrixSession:mxSession]; if (activeWidget.isActive) { - if ([activeWidget.type isEqualToString:kWidgetTypeJitsi]) + if ([activeWidget.type isEqualToString:kWidgetTypeJitsiV1] + || [activeWidget.type isEqualToString:kWidgetTypeJitsiV2]) { // This was a jitsi widget displayText = [NSString stringWithFormat:NSLocalizedStringFromTable(@"event_formatter_jitsi_widget_removed", @"Vector", nil), senderDisplayName];