mirror of
https://github.com/penpot/penpot.git
synced 2025-05-14 00:46:37 +02:00
Merge remote-tracking branch 'origin/staging' into develop
This commit is contained in:
commit
c1a67c0097
12 changed files with 39 additions and 24 deletions
|
@ -42,6 +42,7 @@
|
||||||
|
|
||||||
### :bug: Bugs fixed
|
### :bug: Bugs fixed
|
||||||
|
|
||||||
|
- On dashboard enter on empty search refresh the page [Taiga #2597](https://tree.taiga.io/project/penpot/issue/2597)
|
||||||
- Pencil cursor changes when activated [Taiga #2276](https://tree.taiga.io/project/penpot/issue/2276)
|
- Pencil cursor changes when activated [Taiga #2276](https://tree.taiga.io/project/penpot/issue/2276)
|
||||||
- Fix icon placement in Mixed message [Taiga #3037](https://tree.taiga.io/project/penpot/issue/3037)
|
- Fix icon placement in Mixed message [Taiga #3037](https://tree.taiga.io/project/penpot/issue/3037)
|
||||||
- Fix scroll in comment section [Taiga #3068](https://tree.taiga.io/project/penpot/issue/3068)
|
- Fix scroll in comment section [Taiga #3068](https://tree.taiga.io/project/penpot/issue/3068)
|
||||||
|
|
|
@ -1420,7 +1420,7 @@
|
||||||
|
|
||||||
.body {
|
.body {
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
margin: 0.5rem 0.5rem 0.5rem 0;
|
margin: 0 0.5rem 0rem 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.field {
|
.field {
|
||||||
|
@ -1438,6 +1438,7 @@
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
height: 32px;
|
height: 32px;
|
||||||
|
margin: 0 8px;
|
||||||
width: 32px;
|
width: 32px;
|
||||||
|
|
||||||
svg {
|
svg {
|
||||||
|
|
|
@ -28,7 +28,7 @@
|
||||||
[:a {:href cf/terms-of-service-uri :target "_blank"} (tr "auth.terms-of-service")])
|
[:a {:href cf/terms-of-service-uri :target "_blank"} (tr "auth.terms-of-service")])
|
||||||
|
|
||||||
(when show-all?
|
(when show-all?
|
||||||
[:span (tr "auth.and")])
|
[:span (tr "labels.and")])
|
||||||
|
|
||||||
(when show-privacy?
|
(when show-privacy?
|
||||||
[:a {:href cf/privacy-policy-uri :target "_blank"} (tr "auth.privacy-policy")])])))
|
[:a {:href cf/privacy-policy-uri :target "_blank"} (tr "auth.privacy-policy")])])))
|
||||||
|
|
|
@ -26,6 +26,7 @@
|
||||||
[app.util.dom :as dom]
|
[app.util.dom :as dom]
|
||||||
[app.util.dom.dnd :as dnd]
|
[app.util.dom.dnd :as dnd]
|
||||||
[app.util.i18n :as i18n :refer [tr]]
|
[app.util.i18n :as i18n :refer [tr]]
|
||||||
|
[app.util.keyboard :as kbd]
|
||||||
[app.util.object :as obj]
|
[app.util.object :as obj]
|
||||||
[app.util.router :as rt]
|
[app.util.router :as rt]
|
||||||
[beicon.core :as rx]
|
[beicon.core :as rx]
|
||||||
|
@ -169,7 +170,14 @@
|
||||||
(let [search-input (dom/get-element "search-input")]
|
(let [search-input (dom/get-element "search-input")]
|
||||||
(dom/clean-value! search-input)
|
(dom/clean-value! search-input)
|
||||||
(dom/focus! search-input)
|
(dom/focus! search-input)
|
||||||
(emit! (dd/go-to-search)))))]
|
(emit! (dd/go-to-search)))))
|
||||||
|
|
||||||
|
on-key-press
|
||||||
|
(mf/use-callback
|
||||||
|
(fn [e]
|
||||||
|
(when (kbd/enter? e)
|
||||||
|
(dom/prevent-default e)
|
||||||
|
(dom/stop-propagation e))))]
|
||||||
|
|
||||||
[:form.sidebar-search
|
[:form.sidebar-search
|
||||||
[:input.input-text
|
[:input.input-text
|
||||||
|
@ -182,6 +190,7 @@
|
||||||
:on-focus on-search-focus
|
:on-focus on-search-focus
|
||||||
:on-blur on-search-blur
|
:on-blur on-search-blur
|
||||||
:on-change on-search-change
|
:on-change on-search-change
|
||||||
|
:on-key-press on-key-press
|
||||||
:ref #(when % (set! (.-value %) search-term))}]
|
:ref #(when % (set! (.-value %) search-term))}]
|
||||||
|
|
||||||
(if (or @focused? (seq search-term))
|
(if (or @focused? (seq search-term))
|
||||||
|
|
|
@ -74,8 +74,8 @@
|
||||||
[:div.header
|
[:div.header
|
||||||
[:div.field.check {:on-click change-all}
|
[:div.field.check {:on-click change-all}
|
||||||
(cond
|
(cond
|
||||||
all-checked? [:span i/checkbox-checked]
|
all-checked? [:span.checked i/checkbox-checked]
|
||||||
all-unchecked? [:span i/checkbox-unchecked]
|
all-unchecked? [:span.unchecked i/checkbox-unchecked]
|
||||||
:else [:span i/checkbox-intermediate])]
|
:else [:span i/checkbox-intermediate])]
|
||||||
[:div.field.title (tr "dashboard.export-multiple.selected"
|
[:div.field.title (tr "dashboard.export-multiple.selected"
|
||||||
(c (count enabled-exports))
|
(c (count enabled-exports))
|
||||||
|
|
|
@ -374,7 +374,10 @@
|
||||||
|
|
||||||
(cond-> (obj/merge! props fill-props)
|
(cond-> (obj/merge! props fill-props)
|
||||||
(some? style)
|
(some? style)
|
||||||
(obj/set! "style" style))))))
|
(obj/set! "style" style)))
|
||||||
|
|
||||||
|
:else
|
||||||
|
props)))
|
||||||
|
|
||||||
(defn build-stroke-props [position child value render-id]
|
(defn build-stroke-props [position child value render-id]
|
||||||
(let [props (-> (obj/get child "props")
|
(let [props (-> (obj/get child "props")
|
||||||
|
|
|
@ -41,7 +41,8 @@
|
||||||
|
|
||||||
(mf/defc root-shape
|
(mf/defc root-shape
|
||||||
"Draws the root shape of the viewport and recursively all the shapes"
|
"Draws the root shape of the viewport and recursively all the shapes"
|
||||||
{::mf/wrap-props false}
|
{::mf/wrap [mf/memo]
|
||||||
|
::mf/wrap-props false}
|
||||||
[props]
|
[props]
|
||||||
(let [objects (obj/get props "objects")
|
(let [objects (obj/get props "objects")
|
||||||
active-frames (obj/get props "active-frames")
|
active-frames (obj/get props "active-frames")
|
||||||
|
|
|
@ -114,11 +114,10 @@
|
||||||
(mf/deps all-children)
|
(mf/deps all-children)
|
||||||
(fn []
|
(fn []
|
||||||
(->> all-children
|
(->> all-children
|
||||||
(filter #(= :text (:type %)))
|
(filter #(and (= :text (:type %)) (not (:hidden %))))
|
||||||
(every? #(some? (:position-data %))))))
|
(every? #(some? (:position-data %))))))
|
||||||
|
|
||||||
show-thumbnail?
|
show-thumbnail? (and thumbnail? (some? (:thumbnail shape)) all-svg-text?)]
|
||||||
(and thumbnail? (some? (:thumbnail shape)) all-svg-text?)]
|
|
||||||
|
|
||||||
[:g.frame-wrapper {:display (when (:hidden shape) "none")}
|
[:g.frame-wrapper {:display (when (:hidden shape) "none")}
|
||||||
[:> shape-container {:shape shape}
|
[:> shape-container {:shape shape}
|
||||||
|
|
|
@ -7,11 +7,11 @@
|
||||||
(ns app.main.ui.workspace.viewport.utils
|
(ns app.main.ui.workspace.viewport.utils
|
||||||
(:require
|
(:require
|
||||||
[app.common.data :as d]
|
[app.common.data :as d]
|
||||||
|
[app.common.data.macros :as dm]
|
||||||
[app.common.geom.matrix :as gmt]
|
[app.common.geom.matrix :as gmt]
|
||||||
[app.common.geom.point :as gpt]
|
[app.common.geom.point :as gpt]
|
||||||
[app.main.ui.cursors :as cur]
|
[app.main.ui.cursors :as cur]
|
||||||
[app.util.dom :as dom]
|
[app.util.dom :as dom]))
|
||||||
[cuerdas.core :as str]))
|
|
||||||
|
|
||||||
(defn- text-corrected-transform
|
(defn- text-corrected-transform
|
||||||
"If we apply a scale directly to the texts it will show deformed so we need to create this
|
"If we apply a scale directly to the texts it will show deformed so we need to create this
|
||||||
|
@ -158,10 +158,10 @@
|
||||||
(dom/remove-attribute node "transform")))))))
|
(dom/remove-attribute node "transform")))))))
|
||||||
|
|
||||||
(defn format-viewbox [vbox]
|
(defn format-viewbox [vbox]
|
||||||
(str/join " " [(:x vbox 0)
|
(dm/str (:x vbox 0) " "
|
||||||
(:y vbox 0)
|
(:y vbox 0) " "
|
||||||
(:width vbox 0)
|
(:width vbox 0) " "
|
||||||
(:height vbox 0)]))
|
(:height vbox 0)))
|
||||||
|
|
||||||
(defn translate-point-to-viewport [viewport zoom pt]
|
(defn translate-point-to-viewport [viewport zoom pt]
|
||||||
(let [vbox (.. ^js viewport -viewBox -baseVal)
|
(let [vbox (.. ^js viewport -viewBox -baseVal)
|
||||||
|
|
|
@ -412,6 +412,7 @@
|
||||||
"image/webp" "webp"
|
"image/webp" "webp"
|
||||||
"application/zip" "zip"
|
"application/zip" "zip"
|
||||||
"application/penpot" "penpot"
|
"application/penpot" "penpot"
|
||||||
|
"application/pdf" "pdf"
|
||||||
nil))
|
nil))
|
||||||
|
|
||||||
(defn set-attribute [^js node ^string attr value]
|
(defn set-attribute [^js node ^string attr value]
|
||||||
|
|
|
@ -117,9 +117,6 @@ msgstr "Password"
|
||||||
msgid "auth.password-length-hint"
|
msgid "auth.password-length-hint"
|
||||||
msgstr "At least 8 characters"
|
msgstr "At least 8 characters"
|
||||||
|
|
||||||
msgid "auth.and"
|
|
||||||
msgstr "and"
|
|
||||||
|
|
||||||
msgid "auth.privacy-policy"
|
msgid "auth.privacy-policy"
|
||||||
msgstr "Privacy policy"
|
msgstr "Privacy policy"
|
||||||
|
|
||||||
|
@ -275,7 +272,7 @@ msgstr "%s de %s elements selected"
|
||||||
|
|
||||||
#: src/app/main/ui/workspace/header.cljs
|
#: src/app/main/ui/workspace/header.cljs
|
||||||
msgid "dashboard.export-shapes"
|
msgid "dashboard.export-shapes"
|
||||||
msgstr "Exportar"
|
msgstr "Export"
|
||||||
|
|
||||||
#: src/app/main/ui/export.cljs
|
#: src/app/main/ui/export.cljs
|
||||||
msgid "dashboard.export-shapes.how-to"
|
msgid "dashboard.export-shapes.how-to"
|
||||||
|
@ -1022,6 +1019,9 @@ msgstr "Admin"
|
||||||
msgid "labels.all"
|
msgid "labels.all"
|
||||||
msgstr "All"
|
msgstr "All"
|
||||||
|
|
||||||
|
msgid "labels.and"
|
||||||
|
msgstr "and"
|
||||||
|
|
||||||
#: src/app/main/ui/static.cljs
|
#: src/app/main/ui/static.cljs
|
||||||
msgid "labels.bad-gateway.desc-message"
|
msgid "labels.bad-gateway.desc-message"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
|
@ -121,9 +121,6 @@ msgstr "Contraseña"
|
||||||
msgid "auth.password-length-hint"
|
msgid "auth.password-length-hint"
|
||||||
msgstr "8 caracteres como mínimo"
|
msgstr "8 caracteres como mínimo"
|
||||||
|
|
||||||
msgid "auth.and"
|
|
||||||
msgstr "y"
|
|
||||||
|
|
||||||
msgid "auth.privacy-policy"
|
msgid "auth.privacy-policy"
|
||||||
msgstr "Política de privacidad"
|
msgstr "Política de privacidad"
|
||||||
|
|
||||||
|
@ -1023,6 +1020,9 @@ msgstr "Administración"
|
||||||
msgid "labels.all"
|
msgid "labels.all"
|
||||||
msgstr "Todo"
|
msgstr "Todo"
|
||||||
|
|
||||||
|
msgid "labels.and"
|
||||||
|
msgstr "y"
|
||||||
|
|
||||||
#: src/app/main/ui/static.cljs
|
#: src/app/main/ui/static.cljs
|
||||||
msgid "labels.bad-gateway.desc-message"
|
msgid "labels.bad-gateway.desc-message"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue