A design to reduce CPU usage
- Dominant language
- Rust
- Stars
- 30.6k
- Forks
- 2.1k
- Avg merge
- 1d 9h
- Merged PRs (30d)
- 72
Description
Observing app usage, it can be noticed that most of the actual unnecessary redrawings are caused by mouse movements. For example, moving the mouse over a label widget does not result in any actual changes in the UI.
A simple idea is that we can draw a UI ID texture with the same size as the interface. If the mouse moves over the same widget before and after, no redraw is triggered, as long as this widget only needs to perceive whether it is being hovered over rather than its precise position.
for example:
A -> B: mouse move on same widget, don't redraw
B -> C: mouse move on different widget, need redraw



Contributor guide
Research direction
The issue provides no file or test entry point. Study the proposed UI ID texture approach and verify that mouse moves within the same widget avoid redraws while moves between widgets still redraw, while preserving behavior for widgets that need precise hover positions.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- frontend, performance
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100