mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-04 01:20:12 +00:00
Log any failures when creating a call widget. (#3339)
This commit is contained in:
@@ -71,28 +71,36 @@ class ElementCallWidgetDriver: WidgetCapabilitiesProvider, ElementCallWidgetDriv
|
|||||||
|
|
||||||
let useEncryption = (try? room.isEncrypted()) ?? false
|
let useEncryption = (try? room.isEncrypted()) ?? false
|
||||||
|
|
||||||
guard let widgetSettings = try? newVirtualElementCallWidget(props: .init(elementCallUrl: baseURL.absoluteString,
|
let widgetSettings: WidgetSettings
|
||||||
widgetId: widgetID,
|
do {
|
||||||
parentUrl: nil,
|
widgetSettings = try newVirtualElementCallWidget(props: .init(elementCallUrl: baseURL.absoluteString,
|
||||||
hideHeader: nil,
|
widgetId: widgetID,
|
||||||
preload: nil,
|
parentUrl: nil,
|
||||||
fontScale: nil,
|
hideHeader: nil,
|
||||||
appPrompt: false,
|
preload: nil,
|
||||||
skipLobby: true,
|
fontScale: nil,
|
||||||
confineToRoom: true,
|
appPrompt: false,
|
||||||
font: nil,
|
skipLobby: true,
|
||||||
analyticsId: nil,
|
confineToRoom: true,
|
||||||
encryption: useEncryption ? .perParticipantKeys : .unencrypted)) else {
|
font: nil,
|
||||||
|
analyticsId: nil,
|
||||||
|
encryption: useEncryption ? .perParticipantKeys : .unencrypted))
|
||||||
|
} catch {
|
||||||
|
MXLog.error("Failed to build widget settings: \(error)")
|
||||||
return .failure(.failedBuildingWidgetSettings)
|
return .failure(.failedBuildingWidgetSettings)
|
||||||
}
|
}
|
||||||
|
|
||||||
let languageTag = "\(Locale.current.language.languageCode ?? "en")-\(Locale.current.language.region ?? "US")"
|
let languageTag = "\(Locale.current.language.languageCode ?? "en")-\(Locale.current.language.region ?? "US")"
|
||||||
let theme = colorScheme == .light ? "light" : "dark"
|
let theme = colorScheme == .light ? "light" : "dark"
|
||||||
|
|
||||||
guard let urlString = try? await generateWebviewUrl(widgetSettings: widgetSettings, room: room,
|
let urlString: String
|
||||||
props: .init(clientId: clientID,
|
do {
|
||||||
languageTag: languageTag,
|
urlString = try await generateWebviewUrl(widgetSettings: widgetSettings, room: room,
|
||||||
theme: theme)) else {
|
props: .init(clientId: clientID,
|
||||||
|
languageTag: languageTag,
|
||||||
|
theme: theme))
|
||||||
|
} catch {
|
||||||
|
MXLog.error("Failed to generate web view URL: \(error)")
|
||||||
return .failure(.failedBuildingCallURL)
|
return .failure(.failedBuildingCallURL)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -100,7 +108,11 @@ class ElementCallWidgetDriver: WidgetCapabilitiesProvider, ElementCallWidgetDriv
|
|||||||
return .failure(.failedParsingCallURL)
|
return .failure(.failedParsingCallURL)
|
||||||
}
|
}
|
||||||
|
|
||||||
guard let widgetDriver = try? makeWidgetDriver(settings: widgetSettings) else {
|
let widgetDriver: WidgetDriverAndHandle
|
||||||
|
do {
|
||||||
|
widgetDriver = try makeWidgetDriver(settings: widgetSettings)
|
||||||
|
} catch {
|
||||||
|
MXLog.error("Failed to build widget driver: \(error)")
|
||||||
return .failure(.failedBuildingWidgetDriver)
|
return .failure(.failedBuildingWidgetDriver)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user