瀏覽代碼

Disable lazy visibility completely on mobile

Tienson Qin 3 年之前
父節點
當前提交
3cbd92a213
共有 2 個文件被更改,包括 17 次插入17 次删除
  1. 2 5
      src/main/frontend/components/journal.cljs
  2. 15 12
      src/main/frontend/ui.cljs

+ 2 - 5
src/main/frontend/components/journal.cljs

@@ -13,8 +13,7 @@
             [frontend.util :as util]
             [goog.object :as gobj]
             [reitit.frontend.easy :as rfe]
-            [rum.core :as rum]
-            [frontend.mobile.util :refer [is-native-platform?]]))
+            [rum.core :as rum]))
 
 (rum/defc blocks-cp < rum/reactive db-mixins/query
   {}
@@ -66,9 +65,7 @@
 
 (rum/defc journal-cp
   [journal]
-  (if (or (util/mobile?) (is-native-platform?))
-    (journal-cp-inner journal)
-    (ui/lazy-visible (fn [] (journal-cp-inner journal)) nil true)))
+  (ui/lazy-visible (fn [] (journal-cp-inner journal)) nil true))
 
 (rum/defc journals < rum/reactive
   [latest-journals]

+ 15 - 12
src/main/frontend/ui.cljs

@@ -29,7 +29,8 @@
             [rum.core :as rum]
             [frontend.db-mixins :as db-mixins]
             [frontend.mobile.util :as mobile-util]
-            [goog.functions :refer [debounce]]))
+            [goog.functions :refer [debounce]]
+            [frontend.mobile.util :refer [is-native-platform?]]))
 
 (defonce transition-group (r/adapt-class TransitionGroup))
 (defonce css-transition (r/adapt-class CSSTransition))
@@ -946,14 +947,16 @@
 (rum/defcs lazy-visible <
   (rum/local false ::visible?)
   [state content-fn sensor-opts reset-height?]
-  (let [*visible? (::visible? state)]
-    (visibility-sensor
-     (merge
-      {:on-change #(reset! *visible? %)
-       :partialVisibility true
-       :offset {:top -300
-                :bottom -300}
-       :scrollCheck true
-       :scrollThrottle 1}
-      sensor-opts)
-     (lazy-visible-inner @*visible? content-fn reset-height?))))
+  (if (or (util/mobile?) (is-native-platform?))
+    (content-fn)
+    (let [*visible? (::visible? state)]
+      (visibility-sensor
+       (merge
+        {:on-change #(reset! *visible? %)
+         :partialVisibility true
+         :offset {:top -300
+                  :bottom -300}
+         :scrollCheck true
+         :scrollThrottle 1}
+        sensor-opts)
+       (lazy-visible-inner @*visible? content-fn reset-height?)))))