Comments (2)
I've tried a few approaches but tellingly when I put an update directly to the input element itself it still felt laggy.
Some other discoveries:
- For more complicated projects the building of the execution scope ends up being quite costly for each change as the require function changes with each change to the project contents.
- The mutation/resize observers in the DOM walker run when there's any slack which means they end up running when there's any slight pause in the scrubbing which could be exacerbating any perceived lag.
from utopia.
okay so this is where I got so far:
- indeed horrible performance is making things bad, but
- weirdly React for some reason yields re-rendering of the slider control, even though in theory it doesn't use Deferred or any other low priority fiber setting, or anything like that. The slider component has a local state! which should update "real time" with the drag and the canvas, but for some reason the re-render is not queued. I need to look into more to understand why. I want to work a bit more on this because I feel like this reveals something about React I don't understand
from utopia.
Related Issues (20)
- Grid gap canvas controls
- disappearing grid row context menu ellipses
- Hide flex section when not supporting children
- grey out grid dimension control on unset
- converting empty element to grid breaks template
- Switching editor mode to select should clear the interaction session.
- Use the keyword/number control for grid placement
- feed node_modules to remix.config.js, handle errors properly
- if an error is thrown by a loader(), we only log it to the console, but silently let the canvas run forward, which may lead to other runtime errors that are misleading
- If an error is thrown inside a Remix project, we should show the canvas runtime error screen
- we have trouble importing `import splideStyle from '@splidejs/react-splide/css/core';`
- cols/rows size labels for grid placement
- Label scrubbing should use pointerLock and wrap around the screen
- pleasant empty state for grid placement
- freeze grid template during cell move
- fix flicker when moving a cell inside a grid
- icons for autoflow grid values
- Persist locked state of elements
- Correct the order of the split padding input to be Top, Right, Bottom, Left
- Clean up the various mouseup / mousedown behaviours in the editor
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from utopia.