shows room but not really

This commit is contained in:
Henry Hiles 2026-01-27 19:09:43 +00:00
commit 5f96c8e57f
No known key found for this signature in database
23 changed files with 885 additions and 805 deletions

View file

@ -11,6 +11,8 @@ import "package:nexus/controllers/top_level_spaces_controller.dart";
import "package:nexus/helpers/extensions/gomuks_buffer.dart";
import "package:nexus/models/client_state.dart";
import "package:nexus/models/login.dart";
import "package:nexus/models/report.dart";
import "package:nexus/models/room.dart";
import "package:nexus/models/sync_data.dart";
import "package:nexus/models/sync_status.dart";
import "package:nexus/src/third_party/gomuks.g.dart";
@ -118,6 +120,23 @@ class ClientController extends AsyncNotifier<int> {
}
}
Future<void> leaveRoom(Room room) async {
if (room.metadata == null) return;
await sendCommand("leave_room", {"room_id": room.metadata!.id});
}
Future<void> reportEvent(Report report) =>
sendCommand("report_event", report.toJson());
Future<void> markRead(Room room) async {
if (room.events.isEmpty || room.metadata == null) return;
await sendCommand("mark_read", {
"room_id": room.metadata?.id,
"receipt_type": "m.read",
"event_id": room.events.last.eventId,
});
}
Future<bool> login(Login login) async {
try {
await sendCommand("login", login.toJson());