diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-09-09 14:23:55 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-09-09 14:23:55 -0400 |
| commit | b1b3a280a49813c0c1008c4cf410c12b520c02f6 (patch) | |
| tree | 622efe6034eee754dfaca6475971d6a5d111f322 /MediaBrowser.WebDashboard/ApiClient.js | |
| parent | a0fea896fddcacaeaaca112d4f6f3b1c582c1436 (diff) | |
improve web socket close
Diffstat (limited to 'MediaBrowser.WebDashboard/ApiClient.js')
| -rw-r--r-- | MediaBrowser.WebDashboard/ApiClient.js | 28 |
1 files changed, 12 insertions, 16 deletions
diff --git a/MediaBrowser.WebDashboard/ApiClient.js b/MediaBrowser.WebDashboard/ApiClient.js index 66bf34248..7db97e660 100644 --- a/MediaBrowser.WebDashboard/ApiClient.js +++ b/MediaBrowser.WebDashboard/ApiClient.js @@ -27,14 +27,6 @@ MediaBrowser.ApiClient = function ($, navigator, JSON, WebSocket, setTimeout, wi var currentUserId; var webSocket; - $(window).on("beforeunload", function () { - - // Close the connection gracefully when possible - if (webSocket && webSocket.readyState === WebSocket.OPEN) { - webSocket.close(); - } - }); - /** * Gets the server host name. */ @@ -195,6 +187,12 @@ MediaBrowser.ApiClient = function ($, navigator, JSON, WebSocket, setTimeout, wi }; }; + self.closeWebSocket = function () { + if (webSocket && webSocket.readyState === WebSocket.OPEN) { + webSocket.close(); + } + }; + self.sendWebSocketMessage = function (name, data) { var msg = { MessageType: name }; @@ -3427,17 +3425,15 @@ MediaBrowser.ApiClient = function ($, navigator, JSON, WebSocket, setTimeout, wi throw new Error("null itemId"); } - // Always use the http api in case playback is stopped by closing the browser - // See window beforeunload event at the top of this file - //if (self.isWebSocketOpen()) { + if (self.isWebSocketOpen()) { - // var deferred = $.Deferred(); + var deferred = $.Deferred(); - // self.sendWebSocketMessage("PlaybackStopped", itemId + "|" + (positionTicks == null ? "" : positionTicks)); + self.sendWebSocketMessage("PlaybackStopped", itemId + "|" + (positionTicks == null ? "" : positionTicks)); - // deferred.resolveWith(null, []); - // return deferred.promise(); - //} + deferred.resolveWith(null, []); + return deferred.promise(); + } var params = { }; |
