mirror of
https://github.com/penpot/penpot.git
synced 2025-02-03 12:59:12 -05:00
Merge pull request #3555 from penpot/superalex-navigate-up-in-layer-hierarchy-with-shift-enter-shortcut
✨ Navigate up in layer hierarchy with Shift+Enter shortcut
This commit is contained in:
commit
ff14208a95
7 changed files with 37 additions and 3 deletions
|
@ -1,5 +1,11 @@
|
|||
# CHANGELOG
|
||||
|
||||
## 1.19.2
|
||||
|
||||
### :sparkles: New features
|
||||
|
||||
- Navigate up in layer hierarchy with Shift+Enter shortcut [Taiga #5734](https://tree.taiga.io/project/penpot/us/5734)
|
||||
|
||||
## 1.19.1
|
||||
|
||||
### :bug: Bugs fixed
|
||||
|
|
|
@ -988,6 +988,23 @@
|
|||
(rx/of (dwe/start-edition-mode id)
|
||||
(dwdp/start-path-edit id)))))))))
|
||||
|
||||
(defn select-parent-layer
|
||||
[]
|
||||
(ptk/reify ::select-parent-layer
|
||||
ptk/WatchEvent
|
||||
(watch [_ state _]
|
||||
(let [selected (wsh/lookup-selected state)
|
||||
objects (wsh/lookup-page-objects state)
|
||||
shapes-to-select
|
||||
(->> selected
|
||||
(reduce
|
||||
(fn [result shape-id]
|
||||
(let [parent-id (dm/get-in objects [shape-id :parent-id])]
|
||||
(if (and (some? parent-id) (not= parent-id uuid/zero))
|
||||
(conj result parent-id)
|
||||
(conj result shape-id))))
|
||||
(d/ordered-set)))]
|
||||
(rx/of (dws/select-shapes shapes-to-select))))))
|
||||
|
||||
;; --- Change Page Order (D&D Ordering)
|
||||
|
||||
|
|
|
@ -509,6 +509,10 @@
|
|||
:subsections [:navigation-workspace]
|
||||
:fn #(st/emit! (dw/select-next-shape))}
|
||||
|
||||
:select-parent-layer {:tooltip (ds/shift ds/enter)
|
||||
:command "shift+enter"
|
||||
:subsections [:navigation-workspace]
|
||||
:fn #(emit-when-no-readonly (dw/select-parent-layer))}
|
||||
;; SHAPE
|
||||
|
||||
|
||||
|
|
|
@ -175,6 +175,7 @@
|
|||
;; seek for an alternate solution. Maybe use-context?
|
||||
scroll-node (dom/get-parent-with-data node "scrollContainer")
|
||||
parent-node (dom/get-parent-at node 2)
|
||||
first-child-node (dom/get-first-child parent-node)
|
||||
|
||||
subid
|
||||
(when (and single? selected?)
|
||||
|
@ -184,9 +185,9 @@
|
|||
#(let [scroll-distance-ratio (dom/get-scroll-distance-ratio node scroll-node)
|
||||
scroll-behavior (if (> scroll-distance-ratio 1) "instant" "smooth")]
|
||||
(if scroll-to
|
||||
(dom/scroll-into-view! parent-node #js {:block "center" :behavior scroll-behavior :inline "start"})
|
||||
(dom/scroll-into-view! first-child-node #js {:block "center" :behavior scroll-behavior :inline "start"})
|
||||
(do
|
||||
(dom/scroll-into-view-if-needed! parent-node #js {:block "center" :behavior scroll-behavior :inline "start"})
|
||||
(dom/scroll-into-view-if-needed! first-child-node #js {:block "center" :behavior scroll-behavior :inline "start"})
|
||||
(reset! scroll-to-middle? true)))))))]
|
||||
|
||||
#(when (some? subid)
|
||||
|
|
|
@ -2704,6 +2704,9 @@ msgstr "Snap to pixel grid"
|
|||
msgid "shortcuts.start-editing"
|
||||
msgstr "Start editing"
|
||||
|
||||
msgid "shortcuts.select-parent-layer"
|
||||
msgstr "Select parent layer"
|
||||
|
||||
msgid "shortcuts.start-measure"
|
||||
msgstr "Start measurement"
|
||||
|
||||
|
|
|
@ -2778,6 +2778,9 @@ msgstr "Activar alineación a rejilla de pixel"
|
|||
msgid "shortcuts.start-editing"
|
||||
msgstr "Comenzar edición"
|
||||
|
||||
msgid "shortcuts.select-parent-layer"
|
||||
msgstr "Seleccionar capa padre"
|
||||
|
||||
msgid "shortcuts.start-measure"
|
||||
msgstr "Comenzar medida"
|
||||
|
||||
|
|
|
@ -1 +1 @@
|
|||
1.19.1
|
||||
1.19.2
|
||||
|
|
Loading…
Add table
Reference in a new issue