1
0
Fork 0
forked from Nexus/nexus

Compare commits

..

No commits in common. "148bc8f95c018d62a95a028269013e889e7110bc" and "b727d0342da7bfbe7998b763e4e77b2034671819" have entirely different histories.

5 changed files with 27 additions and 39 deletions

View file

@ -58,7 +58,6 @@
permissions = { permissions = {
share = [ "network" ]; share = [ "network" ];
sockets = [ sockets = [
"pulseaudio"
"fallback-x11" "fallback-x11"
"wayland" "wayland"
]; ];

View file

@ -54,10 +54,7 @@ class RoomChatController extends AsyncNotifier<IList<Event>?> {
return editedEvent == null return editedEvent == null
? foundEvent ? foundEvent
: foundEvent?.copyWith( : foundEvent?.copyWith(content: editedEvent.content);
content: editedEvent.content,
localContent: editedEvent.localContent,
);
}) })
.nonNulls .nonNulls
.toIList(); .toIList();

View file

@ -12,36 +12,33 @@ class UrlPreviewController extends AsyncNotifier<OpenGraphData?> {
@override @override
Future<OpenGraphData?> build() async { Future<OpenGraphData?> build() async {
try { final homeserver = ref.watch(
final homeserver = ref.watch( ClientStateController.provider.select((value) => value?.homeserverUrl),
ClientStateController.provider.select((value) => value?.homeserverUrl), );
);
if (homeserver != null && !link.contains("matrix.to")) { if (homeserver != null && !link.contains("matrix.to")) {
{ {
final response = await get( final response = await get(
.parse(homeserver) .parse(homeserver)
.resolve("/_matrix/client/v1/media/preview_url") .resolve("/_matrix/client/v1/media/preview_url")
.replace(queryParameters: {"url": link}), .replace(queryParameters: {"url": link}),
headers: await ref.watch(HeaderController.provider.future), headers: await ref.watch(HeaderController.provider.future),
); );
if (response.statusCode == 200) { if (response.statusCode == 200) {
final decodedValue = json.decode(response.body); final decodedValue = json.decode(response.body);
if (decodedValue is! Map<String, dynamic>) return null; if (decodedValue is! Map<String, dynamic>) return null;
final mxc = decodedValue["og:image"]; final mxc = decodedValue["og:image"];
final image = mxc == null final image = mxc == null
? null ? null
: Uri.tryParse(mxc)?.mxcToHttps(homeserver); : Uri.tryParse(mxc)?.mxcToHttps(homeserver);
return .fromJson(decodedValue).copyWith(imageUrl: image); return .fromJson(decodedValue).copyWith(imageUrl: image);
}
} }
} }
} catch (_) {
return null;
} }
return null; return null;
} }

View file

@ -5,7 +5,6 @@ import "package:flutter_hooks/flutter_hooks.dart";
import "package:fluttertagger/fluttertagger.dart"; import "package:fluttertagger/fluttertagger.dart";
import "package:hooks_riverpod/hooks_riverpod.dart"; import "package:hooks_riverpod/hooks_riverpod.dart";
import "package:nexus/controllers/power_level_controller.dart"; import "package:nexus/controllers/power_level_controller.dart";
import "package:nexus/models/content/message.dart";
import "package:nexus/models/event.dart"; import "package:nexus/models/event.dart";
import "package:nexus/models/relation_type.dart"; import "package:nexus/models/relation_type.dart";
import "package:nexus/widgets/composer/mention_overlay.dart"; import "package:nexus/widgets/composer/mention_overlay.dart";
@ -43,12 +42,7 @@ class Composer extends HookConsumerWidget {
final query = useState(""); final query = useState("");
if (relationType == .edit && controller.value.text.isEmpty) { if (relationType == .edit && controller.value.text.isEmpty) {
controller.value.text = controller.value.text = relatedEvent?.localContent?.editSource ?? "";
relatedEvent?.localContent?.editSource ??
switch (relatedEvent?.content) {
TextMessageContent(:final body) => body,
_ => "",
};
} }
void send() { void send() {

View file

@ -508,6 +508,7 @@ class RoomChat extends HookConsumerWidget {
MemberList(roomId), MemberList(roomId),
], ],
), ),
endDrawer: showMembersByDefault ? null : MemberList(roomId), endDrawer: showMembersByDefault ? null : MemberList(roomId),
); );
} }