Skip to content
Snippets Groups Projects
Commit ca7b88c7 authored by RMidhunSuresh's avatar RMidhunSuresh
Browse files

Fix race in watchNotificationCount

parent 0be4e07e
No related branches found
No related tags found
No related merge requests found
......@@ -55,6 +55,7 @@ export class ChatterboxViewModel extends ViewModel {
const roomStatusObservable = await this._session.observeRoomStatus(roomBeingCreated.id);
await roomStatusObservable.waitFor(status => status === (RoomStatus.BeingCreated | RoomStatus.Replaced)).promise;
const roomId = roomBeingCreated.roomId;
await this.platform.settingsStorage.setString("created-room-id", roomId);
room = this._session.rooms.get(roomId);
return room;
}
......
import { ViewModel, Client, Navigation, createRouter, Platform } from "hydrogen-view-sdk";
import { ViewModel, Client, Navigation, createRouter, Platform, RoomStatus } from "hydrogen-view-sdk";
import { IChatterboxConfig } from "../types/IChatterboxConfig";
import { ChatterboxViewModel } from "./ChatterboxViewModel";
import "hydrogen-view-sdk/style.css";
......@@ -99,8 +99,11 @@ export class RootViewModel extends ViewModel {
return false;
}
private _watchNotificationCount() {
const [room] = this._client.session.rooms.values();
private async _watchNotificationCount() {
const roomId = await this.platform.settingsStorage.getString("created-room-id") ?? this._config.auto_join_room;
const observable = await this._client.session.observeRoomStatus(roomId);
await observable.waitFor((status) => status === RoomStatus.Joined) .promise;
const room = this._client.session.rooms.get(roomId);
let previousCount = room.notificationCount;
(window as any).sendNotificationCount(previousCount);
const subscription = {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment