add matrix: URI deeplinking

Fixes #148

Needs cross-platform testing, currently only tested on Android.
This commit is contained in:
Henry Hiles 2026-11-01 11:52:13 -05:00
commit 51e3fe1007
Signed by: Henry-Hiles
SSH key fingerprint: SHA256:VKQUdS31Q90KvX7EkKMHMBpUspcmItAh86a+v7PGiIs

View file

@ -0,0 +1,21 @@
import "package:app_links/app_links.dart";
import "package:flutter_riverpod/flutter_riverpod.dart";
import "package:nexus/helpers/extensions/get_link_info.dart";
class LinkRequestController extends Notifier<LinkInfo?> {
@override
LinkInfo? build() {
final subscription = AppLinks().uriLinkStream.listen((uri) {
if (uri.toString().linkInfo case final linkInfo?) state = linkInfo;
});
ref.onDispose(subscription.cancel);
return null;
}
void consume() => state = null;
static final provider = NotifierProvider<LinkRequestController, LinkInfo?>(
LinkRequestController.new,
);
}