mirror of
https://github.com/penpot/penpot.git
synced 2025-03-12 07:41:43 -05:00
WIP refactor rerender render-v2
This commit is contained in:
parent
5f8d56b366
commit
dd9185e058
22 changed files with 50 additions and 45 deletions
|
@ -74,7 +74,6 @@
|
|||
[app.main.repo :as rp]
|
||||
[app.main.streams :as ms]
|
||||
[app.main.worker :as uw]
|
||||
[app.renderer :as renderer]
|
||||
[app.util.dom :as dom]
|
||||
[app.util.globals :as ug]
|
||||
[app.util.http :as http]
|
||||
|
|
|
@ -48,7 +48,7 @@
|
|||
[app.main.ui.workspace.viewport.utils :as utils]
|
||||
[app.main.ui.workspace.viewport.viewport-ref :refer [create-viewport-ref]]
|
||||
[app.main.ui.workspace.viewport.widgets :as widgets]
|
||||
[app.renderer :as renderer]
|
||||
[app.render-v2 :as render-v2]
|
||||
[app.util.debug :as dbg]
|
||||
[beicon.v2.core :as rx]
|
||||
[promesa.core :as p]
|
||||
|
@ -270,12 +270,12 @@
|
|||
rule-area-size (/ rulers/ruler-area-size zoom)]
|
||||
|
||||
|
||||
(when (renderer/is-enabled?)
|
||||
(when (render-v2/is-enabled?)
|
||||
(mf/with-effect
|
||||
[canvas-ref]
|
||||
(let [canvas (mf/ref-val canvas-ref)]
|
||||
(p/then (renderer/init)
|
||||
#(renderer/set-canvas canvas vbox base-objects)))))
|
||||
(p/then (render-v2/init)
|
||||
#(render-v2/set-canvas canvas vbox base-objects)))))
|
||||
|
||||
(hooks/setup-dom-events zoom disable-paste in-viewport? workspace-read-only? drawing-tool drawing-path?)
|
||||
(hooks/setup-viewport-size vport viewport-ref)
|
||||
|
@ -318,8 +318,8 @@
|
|||
:layout layout
|
||||
:viewport-ref viewport-ref}])]
|
||||
|
||||
(if (or (contains? cf/flags :renderer-v2-cpp)
|
||||
(contains? cf/flags :renderer-v2-rs))
|
||||
(if (or (contains? cf/flags :render-v2-v2-cpp)
|
||||
(contains? cf/flags :render-v2-v2-rs))
|
||||
[:canvas {:id "render"
|
||||
:ref canvas-ref
|
||||
:class (stl/css :render-shapes)
|
||||
|
|
38
frontend/src/app/render-v2.cljs
Normal file
38
frontend/src/app/render-v2.cljs
Normal file
|
@ -0,0 +1,38 @@
|
|||
;; This Source Code Form is subject to the terms of the Mozilla Public
|
||||
;; License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
;; file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
;;
|
||||
;; Copyright (c) KALEIDOS INC
|
||||
|
||||
(ns app.render-v2
|
||||
(:require
|
||||
[app.config :as cf]
|
||||
[app.render-v2.cpp :as render-v2-cpp]
|
||||
[app.render-v2.rs :as render-v2-rs]))
|
||||
|
||||
(defn is-enabled?
|
||||
[]
|
||||
(or (contains? cf/flags :render-v2-cpp)
|
||||
(contains? cf/flags :render-v2-rs)))
|
||||
|
||||
(defn init
|
||||
[]
|
||||
(cond
|
||||
;; CPP
|
||||
(contains? cf/flags :render-v2-cpp)
|
||||
(render-v2-cpp/init)
|
||||
|
||||
;; Rust
|
||||
(contains? cf/flags :render-v2-rs)
|
||||
(render-v2-rs/init)))
|
||||
|
||||
(defn set-canvas
|
||||
[canvas vbox base-objects]
|
||||
(cond
|
||||
;; CPP
|
||||
(contains? cf/flags :render-v2-cpp)
|
||||
(render-v2-cpp/set-canvas canvas)
|
||||
|
||||
;; Rust
|
||||
(contains? cf/flags :render-v2-rs)
|
||||
(render-v2-rs/set-canvas canvas vbox base-objects)))
|
|
@ -4,9 +4,9 @@
|
|||
;;
|
||||
;; Copyright (c) KALEIDOS INC
|
||||
|
||||
(ns app.renderer.cpp
|
||||
(ns app.render-v2.cpp
|
||||
(:require
|
||||
["./cpp.js" :as renderer]
|
||||
["./cpp.js" :as render-v2]
|
||||
[beicon.v2.core :as rx]
|
||||
[potok.v2.core :as ptk]
|
||||
[promesa.core :as p]))
|
||||
|
@ -26,4 +26,4 @@
|
|||
|
||||
(defn init
|
||||
[]
|
||||
(p/then (renderer) #(on-init %)))
|
||||
(p/then (render-v2) #(on-init %)))
|
|
@ -4,9 +4,9 @@
|
|||
;;
|
||||
;; Copyright (c) KALEIDOS INC
|
||||
|
||||
(ns app.renderer.rs
|
||||
(ns app.render-v2.rs
|
||||
(:require
|
||||
["./rs.js" :as renderer]
|
||||
["./rs.js" :as render-v2]
|
||||
[app.config :as cf]
|
||||
[beicon.v2.core :as rx]
|
||||
[goog.object :as gobj]
|
||||
|
@ -52,4 +52,4 @@
|
|||
|
||||
(defn init
|
||||
[]
|
||||
(p/then (renderer) #(on-init %)))
|
||||
(p/then (render-v2) #(on-init %)))
|
|
@ -1,32 +0,0 @@
|
|||
(ns app.renderer
|
||||
(:require
|
||||
[app.config :as cf]
|
||||
[app.renderer.cpp :as renderer-cpp]
|
||||
[app.renderer.rs :as renderer-rs]))
|
||||
|
||||
(defn is-enabled?
|
||||
[]
|
||||
(or (contains? cf/flags :renderer-v2-cpp)
|
||||
(contains? cf/flags :renderer-v2-rs)))
|
||||
|
||||
(defn init
|
||||
[]
|
||||
(cond
|
||||
;; CPP
|
||||
(contains? cf/flags :renderer-v2-cpp)
|
||||
(renderer-cpp/init)
|
||||
|
||||
;; Rust
|
||||
(contains? cf/flags :renderer-v2-rs)
|
||||
(renderer-rs/init)))
|
||||
|
||||
(defn set-canvas
|
||||
[canvas vbox base-objects]
|
||||
(cond
|
||||
;; CPP
|
||||
(contains? cf/flags :renderer-v2-cpp)
|
||||
(renderer-cpp/set-canvas canvas)
|
||||
|
||||
;; Rust
|
||||
(contains? cf/flags :renderer-v2-rs)
|
||||
(renderer-rs/set-canvas canvas vbox base-objects)))
|
Loading…
Add table
Reference in a new issue