From 51cdfbd18173863c933bbe957055888968685b16 Mon Sep 17 00:00:00 2001 From: Simon Chan <1330321+yume-chan@users.noreply.github.com> Date: Wed, 25 Jun 2025 13:08:11 +0800 Subject: [PATCH] fix(scrcpy): fix scroll controller v1.15 changed in previous commit --- .../scrcpy/src/1_15/impl/scroll-controller.ts | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/libraries/scrcpy/src/1_15/impl/scroll-controller.ts b/libraries/scrcpy/src/1_15/impl/scroll-controller.ts index 919c651b..465f2750 100644 --- a/libraries/scrcpy/src/1_15/impl/scroll-controller.ts +++ b/libraries/scrcpy/src/1_15/impl/scroll-controller.ts @@ -36,16 +36,20 @@ export class ScrollController implements ScrcpyScrollController { ): ScrcpyInjectScrollControlMessage | undefined { // Ref https://github.com/libsdl-org/SDL/blob/878ea48b607f23e4ec8c12d1395b86ab529e30d0/src/events/SDL_mouse.c#L897-L914 - if (Math.sign(message.scrollX) !== Math.sign(this.#accumulatedX)) { - this.#accumulatedX = message.scrollX; - } else { - this.#accumulatedX += message.scrollX; + if (message.scrollX) { + if (Math.sign(message.scrollX) !== Math.sign(this.#accumulatedX)) { + this.#accumulatedX = message.scrollX; + } else { + this.#accumulatedX += message.scrollX; + } } - if (Math.sign(message.scrollY) !== Math.sign(this.#accumulatedY)) { - this.#accumulatedY = message.scrollY; - } else { - this.#accumulatedY += message.scrollY; + if (message.scrollY) { + if (Math.sign(message.scrollY) !== Math.sign(this.#accumulatedY)) { + this.#accumulatedY = message.scrollY; + } else { + this.#accumulatedY += message.scrollY; + } } const integerX = this.#accumulatedX | 0;