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) { pub async fn clean_awareness_state(&self, object_id: &str) {
self let test_collab = self.collabs.get(object_id).unwrap();
.collabs let mut lock = test_collab.collab.write().await;
.get(object_id) lock.clean_awareness_state();
.unwrap()
.collab
.write()
.await
.clean_awareness_state();
} }
pub async fn emit_awareness_state(&self, object_id: &str) { pub async fn emit_awareness_state(&self, object_id: &str) {
self let test_collab = self.collabs.get(object_id).unwrap();
.collabs let mut lock = test_collab.collab.write().await;
.get(object_id) lock.emit_awareness_state();
.unwrap()
.collab
.write()
.await
.emit_awareness_state();
} }
pub async fn user_with_new_device(registered_user: User) -> Self { 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. // Observer the awareness's update and broadcast it to all subscribers.
let awareness_sub = collab let awareness_sub = collab
.get_awareness() .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()) { if let Ok(awareness_update) = awareness.update_with_clients(event.all_changes()) {
let payload = Message::Awareness(awareness_update).encode_v1(); let payload = Message::Awareness(awareness_update).encode_v1();
let msg = AwarenessSync::new(cloned_oid.clone(), payload, CollabOrigin::Empty); let msg = AwarenessSync::new(cloned_oid.clone(), payload, CollabOrigin::Empty);