From dbd076849b4978f5e4a0457b0188ae1d23ab306d Mon Sep 17 00:00:00 2001 From: Henry Oswald Date: Thu, 16 Apr 2015 21:01:03 +0100 Subject: [PATCH] updated online user management to only send cursor position when people are collaborate if someone is in the project with them cursor info is sent every 500ms, if they are by themself it is sent every 5mins so they are still marked as online. --- .../ide/online-users/OnlineUsersManager.coffee | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/services/web/public/coffee/ide/online-users/OnlineUsersManager.coffee b/services/web/public/coffee/ide/online-users/OnlineUsersManager.coffee index dd833913ce..fe9c46d64b 100644 --- a/services/web/public/coffee/ide/online-users/OnlineUsersManager.coffee +++ b/services/web/public/coffee/ide/online-users/OnlineUsersManager.coffee @@ -3,6 +3,9 @@ define [ "ide/online-users/controllers/OnlineUsersController" ], () -> class OnlineUsersManager + + cursorUpdateInterval:500 + constructor: (@ide, @$scope) -> @$scope.onlineUsers = {} @$scope.onlineUserCursorHighlights = {} @@ -70,7 +73,14 @@ define [ hue: @getHueForUserId(client.user_id) } - UPDATE_INTERVAL: 500 + if @$scope.onlineUsersArray.length > 0 + delete @cursorUpdateTimeout + @cursorUpdateInterval = 500 + else + delete @cursorUpdateTimeout + @cursorUpdateInterval = 60 * 1000 * 5 + + sendCursorPositionUpdate: (position) -> if !@cursorUpdateTimeout? @cursorUpdateTimeout = setTimeout ()=> @@ -83,7 +93,7 @@ define [ } delete @cursorUpdateTimeout - , @UPDATE_INTERVAL + , @cursorUpdateInterval OWN_HUE: 200 # We will always appear as this color to ourselves ANONYMOUS_HUE: 100