Pārlūkot izejas kodu

refactor(js): remove `isTouchSupported()` static function

Julien Voisin 7 mēneši atpakaļ
vecāks
revīzija
645800ce3c
2 mainītis faili ar 8 papildinājumiem un 14 dzēšanām
  1. 4 2
      internal/ui/static/js/app.js
  2. 4 12
      internal/ui/static/js/touch_handler.js

+ 4 - 2
internal/ui/static/js/app.js

@@ -1230,8 +1230,10 @@ function initializeKeyboardShortcuts() {
  * Initialize touch handler for mobile devices.
  */
 function initializeTouchHandler() {
-    const touchHandler = new TouchHandler();
-    touchHandler.listen();
+    if ( "ontouchstart" in window || navigator.maxTouchPoints > 0) {
+        const touchHandler = new TouchHandler();
+        touchHandler.listen();
+    }
 }
 
 /**

+ 4 - 12
internal/ui/static/js/touch_handler.js

@@ -151,35 +151,27 @@ class TouchHandler {
         }
     }
 
-    static isTouchSupported() {
-        return "ontouchstart" in window || navigator.maxTouchPoints > 0;
-    }
-
     listen() {
-        if (!TouchHandler.isTouchSupported()) {
-            return;
-        }
-
         const eventListenerOptions = { passive: true };
 
         document.querySelectorAll(".entry-swipe").forEach((element) => {
             element.addEventListener("touchstart", (e) => this.onItemTouchStart(e), eventListenerOptions);
             element.addEventListener("touchmove", (e) => this.onItemTouchMove(e));
             element.addEventListener("touchend", (e) => this.onItemTouchEnd(e), eventListenerOptions);
-            element.addEventListener("touchcancel", () => this.reset(), eventListenerOptions);
+            element.addEventListener("touchcancel", this.reset, eventListenerOptions);
         });
 
         const element = document.querySelector(".entry-content");
         if (element) {
             if (element.classList.contains("gesture-nav-tap")) {
                 element.addEventListener("touchend", (e) => this.onTapEnd(e), eventListenerOptions);
-                element.addEventListener("touchmove", () => this.reset(), eventListenerOptions);
-                element.addEventListener("touchcancel", () => this.reset(), eventListenerOptions);
+                element.addEventListener("touchmove", this.reset, eventListenerOptions);
+                element.addEventListener("touchcancel", this.reset, eventListenerOptions);
             } else if (element.classList.contains("gesture-nav-swipe")) {
                 element.addEventListener("touchstart", (e) => this.onContentTouchStart(e), eventListenerOptions);
                 element.addEventListener("touchmove", (e) => this.onContentTouchMove(e), eventListenerOptions);
                 element.addEventListener("touchend", (e) => this.onContentTouchEnd(e), eventListenerOptions);
-                element.addEventListener("touchcancel", () => this.reset(), eventListenerOptions);
+                element.addEventListener("touchcancel", this.reset, eventListenerOptions);
             }
         }
     }