diff options
| author | RblSb <msrblsb@gmail.com> | 2022-11-24 22:56:30 +0300 |
|---|---|---|
| committer | RblSb <msrblsb@gmail.com> | 2022-11-24 22:56:30 +0300 |
| commit | 3dcdba0f4b47641bdb8a47c14a8cff3f86cc1d07 (patch) | |
| tree | 520171997e71af56d0547e20007a26d3e220e5cd /src | |
| parent | d3f6d4e6434527569d13f211a0eb074c5a11992e (diff) | |
Right click on leader btn for pause
Or long tap on touch devices
Diffstat (limited to 'src')
| -rw-r--r-- | src/client/Buttons.hx | 8 | ||||
| -rw-r--r-- | src/client/Main.hx | 18 |
2 files changed, 18 insertions, 8 deletions
diff --git a/src/client/Buttons.hx b/src/client/Buttons.hx index aa7e1cc..b023ab7 100644 --- a/src/client/Buttons.hx +++ b/src/client/Buttons.hx @@ -311,13 +311,7 @@ class Buttons { case L: main.toggleLeader(); case P: - if (!main.isLeader()) { - JsApi.once(SetLeader, event -> { - final name = event.setLeader.clientName; - if (name == main.getName()) player.pause(); - }); - } - main.toggleLeader(); + main.toggleLeaderAndPause(); default: return; } diff --git a/src/client/Main.hx b/src/client/Main.hx index ec3d89c..ed63568 100644 --- a/src/client/Main.hx +++ b/src/client/Main.hx @@ -136,7 +136,13 @@ class Main { function initListeners():Void { Buttons.init(this); - ge("#leader_btn").onclick = toggleLeader; + final leaderBtn = ge("#leader_btn"); + leaderBtn.onclick = toggleLeader; + leaderBtn.oncontextmenu = (e:MouseEvent) -> { + toggleLeaderAndPause(); + e.preventDefault(); + } + final voteSkip = ge("#voteskip"); voteSkip.onclick = e -> { if (Utils.isTouch() && !window.confirm(Lang.get("skipItemConfirm"))) return; @@ -1011,6 +1017,16 @@ class Main { }); } + public function toggleLeaderAndPause():Void { + if (!isLeader()) { + JsApi.once(SetLeader, event -> { + final name = event.setLeader.clientName; + if (name == getName()) player.pause(); + }); + } + toggleLeader(); + } + public function hasLeader():Bool { return clients.hasLeader(); } |
