Remix.run Logo
ben-schaaf 13 hours ago

This is just plain false. Retained UIs like the DOM and what your OS uses only ever render when something changes, so the vast majority of the time they sit idle. There's extensive effort throughout the entire stack to do as little work as possible.

For instance, the mouse cursor is composited on the GPU during scanout. That means simply moving your cursor requires zero rendering.

Another example: When typing only the newly typed character and caret are rendered. The rest of your entire screen is reused.

Rohansi 2 hours ago | parent | next [-]

> Another example: When typing only the newly typed character and caret are rendered. The rest of your entire screen is reused.

You're right that they avoid unnecessary painting but it is not this granular anymore. It used to be but rendering is so much faster these days where it is cheaper to just render a bit more than tracking dirty regions. It's easily visible on Android where you can enable "Show view updates" and see the entire textbox view updates when the cursor flashes. The docs say the same thing.

https://developer.android.com/reference/android/view/View#in...

yesithinkso 2 hours ago | parent | prev [-]

That doesn't mean that the process stops, it runs indefinitely because it has to.

The DOM does this. React does this.

Did you know CSS even invokes the GPU for certain tasks?

You guys really need more experience. I can't believe how many people apparently know nothing at all about web dev and computers.