From b6323fa314d4f6bd7dbe256c4e0595c99126228b Mon Sep 17 00:00:00 2001 From: Neil Williams Date: Thu, 27 Feb 2014 11:18:34 -0800 Subject: [PATCH] WebSockets: allow the caller to choose when to start connecting. This allows the caller to fully set up event handlers etc. before the first 'connecting' message is fired. --- r2/r2/public/static/js/websocket.js | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/r2/r2/public/static/js/websocket.js b/r2/r2/public/static/js/websocket.js index 3c73ec5eb..f4cf3b1b2 100644 --- a/r2/r2/public/static/js/websocket.js +++ b/r2/r2/public/static/js/websocket.js @@ -1,17 +1,19 @@ r.WebSocket = function (url) { this._url = url this._connectionAttempts = 0 - - var websocketsAvailable = 'WebSocket' in window - if (websocketsAvailable) { - this._connect() - } } _.extend(r.WebSocket.prototype, Backbone.Events, { _backoffTime: 2000, _maximumRetries: 9, _retryJitterAmount: 3000, + start: function () { + var websocketsAvailable = 'WebSocket' in window + if (websocketsAvailable) { + this._connect() + } + }, + _connect: function () { r.debug('websocket: connecting') this.trigger('connecting')