chore: change awareness emit to trigger on update instead of on change

This commit is contained in:
Bartosz Sypytkowski 2024-08-05 05:52:18 +02:00
parent ef860c2d5a
commit 320d62f46c
2 changed files with 7 additions and 17 deletions

View File

@ -131,25 +131,15 @@ impl TestClient {
}
pub async fn clean_awareness_state(&self, object_id: &str) {
self
.collabs
.get(object_id)
.unwrap()
.collab
.write()
.await
.clean_awareness_state();
let test_collab = self.collabs.get(object_id).unwrap();
let mut lock = test_collab.collab.write().await;
lock.clean_awareness_state();
}
pub async fn emit_awareness_state(&self, object_id: &str) {
self
.collabs
.get(object_id)
.unwrap()
.collab
.write()
.await
.emit_awareness_state();
let test_collab = self.collabs.get(object_id).unwrap();
let mut lock = test_collab.collab.write().await;
lock.emit_awareness_state();
}
pub async fn user_with_new_device(registered_user: User) -> Self {

View File

@ -134,7 +134,7 @@ impl CollabBroadcast {
// Observer the awareness's update and broadcast it to all subscribers.
let awareness_sub = collab
.get_awareness()
.on_change(move |awareness, event, _origin| {
.on_update(move |awareness, event, _origin| {
if let Ok(awareness_update) = awareness.update_with_clients(event.all_changes()) {
let payload = Message::Awareness(awareness_update).encode_v1();
let msg = AwarenessSync::new(cloned_oid.clone(), payload, CollabOrigin::Empty);