 		for item in queue
 			@data.send_queue.push item
 		@_save_queue()
-		@_send_changes false
+		@data.send_queue_timer = setTimeout @_send_changes, 100
 
 	_save_entity: (id) =>
 		if not @s.supports_html5_storage()

	# Runs on a timeout to send any pending changes.
	# Queues each change to rerun in case of failure.
	# For each failure, the timeout delay increases.
	_send_changes: ( increase_backoff = true ) =>
		if @data.send_queue.length is 0
			console.log "#{@name}: send_queue empty, done"
			@data.send_queue_timer = null
			return
		if not @s.connected
			console.log "#{@name}: _send_changes: not connected"
		else
			for change in @data.send_queue
				console.log "#{@name}: sending change: #{JSON.stringify(change)}"
				@send("c:#{JSON.stringify(change)}")

		if increase_backoff
			@_send_backoff = @_send_backoff * 2
			if @_send_backoff > @_backoff_max
				@_send_backoff = @_backoff_max

		@data.send_queue_timer = setTimeout @_send_changes, @_send_backoff


	on_changes: (response) =>
		check_updates = []
		reload_needed = false
		# @todo reset @_send_backoff to @_backoff_min when we receive any data, not just changes
		@_send_backoff = @_backoff_min
		console.log "#{@name}: on_changes(): response="
		console.log response
