mirror of
https://github.com/overleaf/overleaf.git
synced 2025-02-23 13:51:11 +00:00
Delay flushes performed after getting an op acknowledgement as well
This commit is contained in:
parent
8a32ca1b64
commit
87d625b5e0
1 changed files with 5 additions and 4 deletions
|
@ -200,7 +200,7 @@ class Doc
|
|||
callback null, oldInflightOp for callback in @inflightCallbacks
|
||||
|
||||
# Send the next op.
|
||||
@flush()
|
||||
@delayedFlush()
|
||||
|
||||
else if msg.op
|
||||
# We got a new op from the server.
|
||||
|
@ -247,7 +247,7 @@ class Doc
|
|||
# Only one op can be in-flight at a time, so if an op is already on its way then
|
||||
# this method does nothing.
|
||||
flush: =>
|
||||
delete @flushTimeout
|
||||
@flushTimeout = null
|
||||
#console.log "CALLED FLUSH"
|
||||
|
||||
return unless @connection.state == 'ok' and @inflightOp == null and @pendingOp != null
|
||||
|
@ -279,8 +279,9 @@ class Doc
|
|||
|
||||
@emit 'change', op
|
||||
|
||||
# A timeout is used so if the user sends multiple ops at the same time, they'll be composed
|
||||
# & sent together.
|
||||
@delayedFlush()
|
||||
|
||||
delayedFlush: () ->
|
||||
if !@flushTimeout?
|
||||
@flushTimeout = setTimeout @flush, @_flushDelay || 0
|
||||
|
||||
|
|
Loading…
Reference in a new issue