Merge pull request #140 from tootsuite/feature/status-coordinate
Add status coordinator support
This commit is contained in:
commit
55b2823de5
|
@ -129,7 +129,17 @@ extension StatusProviderFacade {
|
||||||
coordinateToStatusMentionProfileScene(for: .primary, provider: provider, cell: cell, mention: text)
|
coordinateToStatusMentionProfileScene(for: .primary, provider: provider, cell: cell, mention: text)
|
||||||
case .url(_, _, let url, _):
|
case .url(_, _, let url, _):
|
||||||
guard let url = URL(string: url) else { return }
|
guard let url = URL(string: url) else { return }
|
||||||
provider.coordinator.present(scene: .safari(url: url), from: nil, transition: .safariPresent(animated: true, completion: nil))
|
if let domain = provider.context.authenticationService.activeMastodonAuthenticationBox.value?.domain, url.host == domain,
|
||||||
|
url.pathComponents.count >= 4,
|
||||||
|
url.pathComponents[0] == "/",
|
||||||
|
url.pathComponents[1] == "web",
|
||||||
|
url.pathComponents[2] == "statuses" {
|
||||||
|
let statusID = url.pathComponents[3]
|
||||||
|
let threadViewModel = RemoteThreadViewModel(context: provider.context, statusID: statusID)
|
||||||
|
provider.coordinator.present(scene: .thread(viewModel: threadViewModel), from: nil, transition: .show)
|
||||||
|
} else {
|
||||||
|
provider.coordinator.present(scene: .safari(url: url), from: nil, transition: .safariPresent(animated: true, completion: nil))
|
||||||
|
}
|
||||||
default:
|
default:
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue