Procházet zdrojové kódy

fix: clear editing block when esc or click outside

Tienson Qin před 2 roky
rodič
revize
0cb748898f
1 změnil soubory, kde provedl 6 přidání a 3 odebrání
  1. 6 3
      src/main/frontend/handler/editor/keyboards.cljs

+ 6 - 3
src/main/frontend/handler/editor/keyboards.cljs

@@ -2,7 +2,8 @@
   (:require [frontend.handler.editor :as editor-handler]
             [frontend.mixins :as mixins]
             [frontend.state :as state]
-            [goog.dom :as gdom]))
+            [goog.dom :as gdom]
+            [frontend.util :as util]))
 
 ;; TODO: don't depend on handler.editor
 
@@ -32,7 +33,9 @@
          :else
          (let [{:keys [on-hide value]} (editor-handler/get-state)]
            (when on-hide
-             (on-hide value event)))))
+             (on-hide value event)
+             (when (contains? #{:esc :visibilitychange :click} event)
+               (util/schedule state/clear-edit!))))))
      :node (gdom/getElement id)
     ;; :visibilitychange? true
-)))
+     )))