From 873f6546a4dcc63a775abe661452af6500484380 Mon Sep 17 00:00:00 2001 From: redphx <96280+redphx@users.noreply.github.com> Date: Fri, 13 Dec 2024 05:41:25 +0700 Subject: [PATCH] Fix input slider not working with gamepad (#596) --- dist/better-xcloud.lite.user.js | 4 ++-- dist/better-xcloud.user.js | 4 ++-- src/utils/bx-event.ts | 2 +- src/web-components/bx-number-stepper.ts | 1 + 4 files changed, 6 insertions(+), 5 deletions(-) diff --git a/dist/better-xcloud.lite.user.js b/dist/better-xcloud.lite.user.js index 6fd0849..7f32c3d 100755 --- a/dist/better-xcloud.lite.user.js +++ b/dist/better-xcloud.lite.user.js @@ -151,7 +151,7 @@ var BxEvent; let event = new Event(eventName); if (data) for (let key in data) event[key] = data[key]; - target.dispatchEvent(event), AppInterface && AppInterface.onEvent(eventName), BX_FLAGS.Debug && BxLogger.warning("BxEvent", "dispatch", eventName, data); + target.dispatchEvent(event), AppInterface && AppInterface.onEvent(eventName), BX_FLAGS.Debug && BxLogger.warning("BxEvent", "dispatch", target, eventName, data); } BxEvent.dispatch = dispatch; })(BxEvent ||= {}); @@ -3734,7 +3734,7 @@ class BxNumberStepper extends HTMLInputElement { value: options.reverse ? -value : value, step: self.steps, tabindex: 0 - }), self.$range = $range, options.hideSlider && $range.classList.add("bx-gone"), self.addEventListener("input", self.onRangeInput), self.appendChild($range), options.ticks || options.exactTicks) { + }), self.$range = $range, options.hideSlider && $range.classList.add("bx-gone"), $range.addEventListener("input", self.onRangeInput), self.addEventListener("input", self.onRangeInput), self.appendChild($range), options.ticks || options.exactTicks) { let markersId = `markers-${key}`, $markers = CE("datalist", { id: markersId }); if ($range.setAttribute("list", markersId), options.exactTicks) { let start = Math.max(Math.floor(min / options.exactTicks), 1) * options.exactTicks; diff --git a/dist/better-xcloud.user.js b/dist/better-xcloud.user.js index 534e6b2..34c14ca 100755 --- a/dist/better-xcloud.user.js +++ b/dist/better-xcloud.user.js @@ -153,7 +153,7 @@ var BxEvent; let event = new Event(eventName); if (data) for (let key in data) event[key] = data[key]; - target.dispatchEvent(event), AppInterface && AppInterface.onEvent(eventName), BX_FLAGS.Debug && BxLogger.warning("BxEvent", "dispatch", eventName, data); + target.dispatchEvent(event), AppInterface && AppInterface.onEvent(eventName), BX_FLAGS.Debug && BxLogger.warning("BxEvent", "dispatch", target, eventName, data); } BxEvent.dispatch = dispatch; })(BxEvent ||= {}); @@ -4924,7 +4924,7 @@ class BxNumberStepper extends HTMLInputElement { value: options.reverse ? -value : value, step: self.steps, tabindex: 0 - }), self.$range = $range, options.hideSlider && $range.classList.add("bx-gone"), self.addEventListener("input", self.onRangeInput), self.appendChild($range), options.ticks || options.exactTicks) { + }), self.$range = $range, options.hideSlider && $range.classList.add("bx-gone"), $range.addEventListener("input", self.onRangeInput), self.addEventListener("input", self.onRangeInput), self.appendChild($range), options.ticks || options.exactTicks) { let markersId = `markers-${key}`, $markers = CE("datalist", { id: markersId }); if ($range.setAttribute("list", markersId), options.exactTicks) { let start = Math.max(Math.floor(min / options.exactTicks), 1) * options.exactTicks; diff --git a/src/utils/bx-event.ts b/src/utils/bx-event.ts index 00b6b80..789eaa1 100755 --- a/src/utils/bx-event.ts +++ b/src/utils/bx-event.ts @@ -54,7 +54,7 @@ export namespace BxEvent { target.dispatchEvent(event); AppInterface && AppInterface.onEvent(eventName); - BX_FLAGS.Debug && BxLogger.warning('BxEvent', 'dispatch', eventName, data); + BX_FLAGS.Debug && BxLogger.warning('BxEvent', 'dispatch', target, eventName, data); } } diff --git a/src/web-components/bx-number-stepper.ts b/src/web-components/bx-number-stepper.ts index 284c9b7..6244cf7 100755 --- a/src/web-components/bx-number-stepper.ts +++ b/src/web-components/bx-number-stepper.ts @@ -114,6 +114,7 @@ export class BxNumberStepper extends HTMLInputElement implements BxHtmlSettingEl self.$range = $range; options.hideSlider && $range.classList.add('bx-gone'); + $range.addEventListener('input', self.onRangeInput); self.addEventListener('input', self.onRangeInput); self.appendChild($range);