From 11a22dbf0c3a44963ae95ab3aba876dd8db54e6b Mon Sep 17 00:00:00 2001 From: Samuel Mannehed Date: Sun, 10 May 2020 02:05:38 +0200 Subject: Stop send mouse clicks while dragging in view only --- core/rfb.js | 2 ++ tests/test.rfb.js | 7 +++++++ 2 files changed, 9 insertions(+) diff --git a/core/rfb.js b/core/rfb.js index e93be0f..351e4b3 100644 --- a/core/rfb.js +++ b/core/rfb.js @@ -836,6 +836,8 @@ export default class RFB extends EventTargetMixin { return; } + if (this._viewOnly) { return; } + // Otherwise we treat this as a mouse click event. // Send the button down event here, as the button up // event is sent at the end of this function. diff --git a/tests/test.rfb.js b/tests/test.rfb.js index 695e4a3..7c6128e 100644 --- a/tests/test.rfb.js +++ b/tests/test.rfb.js @@ -514,6 +514,13 @@ describe('Remote Frame Buffer Protocol Client', function () { expect(RFB.messages.pointerEvent).to.have.been.calledTwice; }); + it('should not send button messages when in view only', function () { + client._viewOnly = true; + client._handleMouseButton(13, 9, 0x001); + client._handleMouseButton(13, 9, 0x000); + expect(RFB.messages.pointerEvent).to.not.have.been.called; + }); + it('should send button message directly when drag is disabled', function () { client.dragViewport = false; client._handleMouseButton(13, 9, 0x001); -- cgit v1.2.1