aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2013-09-09 14:23:55 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2013-09-09 14:23:55 -0400
commitb1b3a280a49813c0c1008c4cf410c12b520c02f6 (patch)
tree622efe6034eee754dfaca6475971d6a5d111f322
parenta0fea896fddcacaeaaca112d4f6f3b1c582c1436 (diff)
improve web socket close
-rw-r--r--MediaBrowser.WebDashboard/ApiClient.js28
-rw-r--r--MediaBrowser.WebDashboard/packages.config2
2 files changed, 13 insertions, 17 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 = {
};
diff --git a/MediaBrowser.WebDashboard/packages.config b/MediaBrowser.WebDashboard/packages.config
index 21812f626..b3add5674 100644
--- a/MediaBrowser.WebDashboard/packages.config
+++ b/MediaBrowser.WebDashboard/packages.config
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
- <package id="MediaBrowser.ApiClient.Javascript" version="3.0.172" targetFramework="net45" />
+ <package id="MediaBrowser.ApiClient.Javascript" version="3.0.174" targetFramework="net45" />
<package id="ServiceStack.Common" version="3.9.58" targetFramework="net45" />
<package id="ServiceStack.Text" version="3.9.58" targetFramework="net45" />
</packages> \ No newline at end of file