0
Fork 0
mirror of https://github.com/penpot/penpot.git synced 2025-03-16 01:31:22 -05:00

♻️ Refactor keyboard events to replace a deprecated parameter

This commit is contained in:
Andrés Moya 2021-04-28 10:09:50 +02:00 committed by Alonso Torres
parent 547a472016
commit b0575e969f
7 changed files with 25 additions and 33 deletions

View file

@ -18,9 +18,6 @@
[app.util.path.subpaths :as ups]
[potok.core :as ptk]))
;; CONSTANTS
(defonce enter-keycode 13)
(defn end-path-event? [{:keys [type shift] :as event}]
(or (= (ptk/type event) ::common/finish-path)
(= (ptk/type event) :esc-pressed)

View file

@ -11,8 +11,8 @@
[app.main.store :as st]
[app.main.refs :as refs]
[app.common.geom.point :as gpt]
[app.util.globals :as globals])
(:import goog.events.KeyCodes))
[app.util.globals :as globals]
[app.util.keyboard :as kbd]))
;; --- User Events
@ -113,8 +113,7 @@
ob (->> (rx/merge
(->> st/stream
(rx/filter keyboard-event?)
(rx/filter #(let [key (:key %)]
(= key KeyCodes.ALT)))
(rx/filter kbd/altKey?)
(rx/map #(= :down (:type %))))
;; Fix a situation caused by using `ctrl+alt` kind of shortcuts,
;; that makes keyboard-alt stream registring the key pressed but
@ -130,10 +129,7 @@
ob (->> (rx/merge
(->> st/stream
(rx/filter keyboard-event?)
(rx/filter #(let [key (:key %)]
(or
(= key KeyCodes.CTRL)
(= key KeyCodes.META))))
(rx/filter kbd/ctrlKey?)
(rx/map #(= :down (:type %))))
;; Fix a situation caused by using `ctrl+alt` kind of shortcuts,
;; that makes keyboard-alt stream registring the key pressed but

View file

@ -3,10 +3,10 @@
[rumext.alpha :as mf]
[app.common.uuid :as uuid]
[app.util.dom :as dom]
[app.util.keyboard :as kbd]
[goog.events :as events]
[goog.object :as gobj])
(:import goog.events.EventType
goog.events.KeyCodes))
(:import goog.events.EventType))
(mf/defc dropdown'
{::mf/wrap-props false}
@ -27,7 +27,7 @@
on-keyup
(fn [event]
(when (= (.-keyCode event) 27) ; ESC
(when (kbd/esc? event)
(on-close)))
on-mount

View file

@ -24,8 +24,7 @@
[app.common.math :as mth]
[app.util.router :as rt]
[app.main.data.viewer :as vd])
(:import goog.events.EventType
goog.events.KeyCodes))
(:import goog.events.EventType))
(mf/defc thumbnails-content
[{:keys [children expanded? total] :as props}]

View file

@ -18,6 +18,7 @@
[app.main.ui.cursors :as cur]
[app.main.ui.shapes.text.styles :as sts]
[app.util.dom :as dom]
[app.util.keyboard :as kbd]
[app.util.object :as obj]
[app.util.text-editor :as ted]
[cuerdas.core :as str]
@ -25,8 +26,7 @@
[okulary.core :as l]
[rumext.alpha :as mf])
(:import
goog.events.EventType
goog.events.KeyCodes))
goog.events.EventType))
;; --- Text Editor Rendering
@ -84,7 +84,7 @@
on-key-up
(fn [event]
(dom/stop-propagation event)
(when (= (.-keyCode event) 27) ; ESC
(when (kbd/esc? event)
(do
(st/emit! :interrupt)
(st/emit! dw/clear-edition-mode))))

View file

@ -24,8 +24,7 @@
[beicon.core :as rx]
[cuerdas.core :as str]
[rumext.alpha :as mf])
(:import goog.events.WheelEvent
goog.events.KeyCodes))
(:import goog.events.WheelEvent))
(defn on-mouse-down
[{:keys [id blocked hidden type]} drawing-tool text-editing? edition edit-path selected]
@ -263,8 +262,7 @@
(mf/use-callback
(fn [event]
(let [bevent (.getBrowserEvent ^js event)
key (.-keyCode ^js event)
key (.normalizeKeyCode KeyCodes key)
key (.-key ^js event)
ctrl? (kbd/ctrl? event)
shift? (kbd/shift? event)
alt? (kbd/alt? event)
@ -284,8 +282,7 @@
(defn on-key-up []
(mf/use-callback
(fn [event]
(let [key (.-keyCode event)
key (.normalizeKeyCode KeyCodes key)
(let [key (.-key event)
ctrl? (kbd/ctrl? event)
shift? (kbd/shift? event)
alt? (kbd/alt? event)

View file

@ -6,10 +6,10 @@
(ns app.util.keyboard)
(defn is-keycode?
[keycode]
(defn is-key?
[key]
(fn [e]
(= (.-keyCode e) keycode)))
(= (.-key e) key)))
(defn ^boolean alt?
[event]
@ -27,8 +27,11 @@
[event]
(.-shiftKey event))
(def esc? (is-keycode? 27))
(def enter? (is-keycode? 13))
(def space? (is-keycode? 32))
(def up-arrow? (is-keycode? 38))
(def down-arrow? (is-keycode? 40))
(def esc? (is-key? "Escape"))
(def enter? (is-key? "Enter"))
(def space? (is-key? " "))
(def up-arrow? (is-key? "ArrowUp"))
(def down-arrow? (is-key? "ArrowDown"))
(def altKey? (is-key? "Alt"))
(def ctrlKey? (or (is-key? "Control")
(is-key? "Meta")))