mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-02 21:33:26 +00:00
Top level deeplink handling (#1660)
* Handle link opening on the top most levels and prepare for percolating them throughout the app * Add support for a custom app scheme * Add specific AppRoute parsers. * Integrate custom scheme in the AppRouteURLParser * Switch to `element://call` and cleanup route parsing
This commit is contained in:
@@ -31,6 +31,9 @@ struct InfoPlistReader {
|
||||
static let otlpTracingURL = "otlpTracingURL"
|
||||
static let otlpTracingUsername = "otlpTracingUsername"
|
||||
static let otlpTracingPassword = "otlpTracingPassword"
|
||||
|
||||
static let bundleURLTypes = "CFBundleURLTypes"
|
||||
static let bundleURLSchemes = "CFBundleURLSchemes"
|
||||
}
|
||||
|
||||
private enum Values {
|
||||
@@ -111,6 +114,19 @@ struct InfoPlistReader {
|
||||
infoPlistValue(forKey: Keys.otlpTracingPassword)
|
||||
}
|
||||
|
||||
// MARK: - Custom App Scheme
|
||||
|
||||
var appScheme: String {
|
||||
let urlTypes: [[String: Any]] = infoPlistValue(forKey: Keys.bundleURLTypes)
|
||||
|
||||
guard let urlSchemes = urlTypes.first?[Keys.bundleURLSchemes] as? [String],
|
||||
let scheme = urlSchemes.first else {
|
||||
fatalError("Invalid custon application scheme configuration")
|
||||
}
|
||||
|
||||
return scheme
|
||||
}
|
||||
|
||||
// MARK: - Mention Pills
|
||||
|
||||
/// Mention Pills UTType
|
||||
|
||||
Reference in New Issue
Block a user