aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--res/client.js40
-rw-r--r--src/client/Main.hx22
-rw-r--r--src/client/Player.hx10
3 files changed, 45 insertions, 27 deletions
diff --git a/res/client.js b/res/client.js
index 24ec1c5..6d00cff 100644
--- a/res/client.js
+++ b/res/client.js
@@ -1568,7 +1568,6 @@ client_Main.prototype = {
window.document.querySelector("#messagebuffer").textContent = "";
}
,addMessage: function(name,text,time) {
- var _gthis = this;
var msgBuf = window.document.querySelector("#messagebuffer");
var userDiv = window.document.createElement("div");
userDiv.className = "chat-msg-" + name;
@@ -1617,16 +1616,8 @@ client_Main.prototype = {
if(name == this.personal.name) {
msgBuf.scrollTop = msgBuf.scrollHeight;
}
- if(window.document.hidden && this.onBlinkTab == null) {
- this.onBlinkTab = new haxe_Timer(1000);
- this.onBlinkTab.run = function() {
- if(StringTools.startsWith(window.document.title,_gthis.pageTitle)) {
- return window.document.title = "*Chat*";
- } else {
- return window.document.title = _gthis.getPageTitle();
- }
- };
- this.onBlinkTab.run();
+ if(this.onBlinkTab == null) {
+ this.blinkTabWithTitle("*Chat*");
}
}
,onChatImageLoaded: function(e) {
@@ -1659,6 +1650,24 @@ client_Main.prototype = {
this.send({ type : "Rewind", rewind : { time : Std.parseInt(text)}});
}
}
+ ,blinkTabWithTitle: function(title) {
+ var _gthis = this;
+ if(!window.document.hidden) {
+ return;
+ }
+ if(this.onBlinkTab != null) {
+ this.onBlinkTab.stop();
+ }
+ this.onBlinkTab = new haxe_Timer(1000);
+ this.onBlinkTab.run = function() {
+ if(StringTools.startsWith(window.document.title,_gthis.pageTitle)) {
+ return window.document.title = title;
+ } else {
+ return window.document.title = _gthis.getPageTitle();
+ }
+ };
+ this.onBlinkTab.run();
+ }
,setLeaderButton: function(flag) {
var leaderBtn = window.document.querySelector("#leader_btn");
if(flag) {
@@ -1773,9 +1782,12 @@ client_Player.prototype = {
this.setItemElementType(this.videoItemsEl.children[pos],this.items[pos].isTemp);
}
,setPlayer: function(newPlayer) {
- if(this.player != null && this.player != newPlayer) {
- client_JsApi.fireVideoRemoveEvents(this.items[this.itemPos]);
- this.player.removeVideo();
+ if(this.player != newPlayer) {
+ if(this.player != null) {
+ client_JsApi.fireVideoRemoveEvents(this.items[this.itemPos]);
+ this.player.removeVideo();
+ }
+ this.main.blinkTabWithTitle("*Video*");
}
this.player = newPlayer;
}
diff --git a/src/client/Main.hx b/src/client/Main.hx
index 62fffcc..9ecae82 100644
--- a/src/client/Main.hx
+++ b/src/client/Main.hx
@@ -701,15 +701,7 @@ class Main {
if (name == personal.name) {
msgBuf.scrollTop = msgBuf.scrollHeight;
}
- if (document.hidden && onBlinkTab == null) {
- onBlinkTab = new Timer(1000);
- onBlinkTab.run = () -> {
- if (document.title.startsWith(pageTitle))
- document.title = "*Chat*";
- else document.title = getPageTitle();
- }
- onBlinkTab.run();
- }
+ if (onBlinkTab == null) blinkTabWithTitle("*Chat*");
}
function onChatImageLoaded(e:Event):Void {
@@ -753,6 +745,18 @@ class Main {
}
}
+ public function blinkTabWithTitle(title:String):Void {
+ if (!document.hidden) return;
+ if (onBlinkTab != null) onBlinkTab.stop();
+ onBlinkTab = new Timer(1000);
+ onBlinkTab.run = () -> {
+ if (document.title.startsWith(pageTitle))
+ document.title = title;
+ else document.title = getPageTitle();
+ }
+ onBlinkTab.run();
+ }
+
function setLeaderButton(flag:Bool):Void {
final leaderBtn = ge("#leader_btn");
if (flag) leaderBtn.classList.add("label-success");
diff --git a/src/client/Player.hx b/src/client/Player.hx
index 5c283f7..b0b52a7 100644
--- a/src/client/Player.hx
+++ b/src/client/Player.hx
@@ -87,10 +87,12 @@ class Player {
}
function setPlayer(newPlayer:IPlayer):Void {
- if (player != null && player != newPlayer) {
- JsApi.fireVideoRemoveEvents(items[itemPos]);
- player.removeVideo();
- // playerEl.textContent = "";
+ if (player != newPlayer) {
+ if (player != null) {
+ JsApi.fireVideoRemoveEvents(items[itemPos]);
+ player.removeVideo();
+ }
+ main.blinkTabWithTitle("*Video*");
}
player = newPlayer;
}
send patches to the email below
yukais@pinapelz.com
include the subject [PATCH repo_name]
pinapelz.com
homepage