aboutsummaryrefslogtreecommitdiff
path: root/src/server/websocket.ts
diff options
context:
space:
mode:
authorbobzel <zzzman@gmail.com>2020-10-15 15:20:51 -0400
committerbobzel <zzzman@gmail.com>2020-10-15 15:20:51 -0400
commitf1ee3a6baffb22093d81e123d70f6ec9631c2075 (patch)
treef0cc215e8e58672e4de970542487429094399cc5 /src/server/websocket.ts
parent79221b73d0526ce31349cf4a5b75f0047c60b829 (diff)
got rid of isDragging in favor of a field on the PresElement. fixed moving items in presBox by fixing websocket to maintain ordering on sequential operations on a list. fixed list splicing to not call addToSet unless splicing is at end of list. fixed setting return scale when following link into portal
Diffstat (limited to 'src/server/websocket.ts')
-rw-r--r--src/server/websocket.ts3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/server/websocket.ts b/src/server/websocket.ts
index 1e02b9e58..e5692a7dd 100644
--- a/src/server/websocket.ts
+++ b/src/server/websocket.ts
@@ -313,6 +313,9 @@ export namespace WebSocket {
function UpdateField(socket: Socket, diff: Diff) {
if (diff.diff.$addToSet) return GetRefField([diff.id, (result?: Transferable) => addToListField(socket, diff, result)]); // would prefer to have Mongo handle list additions direclty, but for now handle it on our own
if (diff.diff.$remFromSet) return GetRefField([diff.id, (result?: Transferable) => remFromListField(socket, diff, result)]); // would prefer to have Mongo handle list additions direclty, but for now handle it on our own
+ return GetRefField([diff.id, (result?: Transferable) => SetField(socket, diff, result)]);
+ }
+ function SetField(socket: Socket, diff: Diff, curListItems?: Transferable) {
Database.Instance.update(diff.id, diff.diff,
() => socket.broadcast.emit(MessageStore.UpdateField.Message, diff), false);
const docfield = diff.diff.$set || diff.diff.$unset;