Skip to content

Fix jitter when hovering edge of scroll area close to resize splitter#7803

Merged
emilk merged 1 commit intomainfrom
emilk/fix-scroll-jitter
Dec 22, 2025
Merged

Fix jitter when hovering edge of scroll area close to resize splitter#7803
emilk merged 1 commit intomainfrom
emilk/fix-scroll-jitter

Conversation

@emilk
Copy link
Copy Markdown
Owner

@emilk emilk commented Dec 22, 2025

What

In our hit test code we have special handling for thin widgets, to make them easier to hit.
The widths of our scroll bars are animated.
Together, the heuristic would trigger as the scroll bars were shrinking, leading to the scroll bars being hovered which lead them being too wide, making the heuristic fail, which would again make them shrink, causing the bug.

Bonus

Now the scroll bar is only shown as hovered if the mouse is actually hovering them and nothing else. Previously they would show as long as the cursor were in the general area (but maybe actually hovering something else).

@emilk emilk added bug Something is broken egui labels Dec 22, 2025
@github-actions
Copy link
Copy Markdown

github-actions bot commented Dec 22, 2025

Preview available at https://egui-pr-preview.github.io/pr/7803-emilkfix-scroll-jitter
Note that it might take a couple seconds for the update to show up after the preview_build workflow has completed.

View snapshot changes at kitdiff

@emilk emilk marked this pull request as ready for review December 22, 2025 20:10
@emilk emilk merged commit 4f6eabf into main Dec 22, 2025
49 checks passed
@emilk emilk deleted the emilk/fix-scroll-jitter branch December 22, 2025 20:13
emilk added a commit that referenced this pull request Dec 22, 2025
* Added in #5468
* Related to #7803

The code doesn't seem to longer be needed. Interacting with a resize
splitter isn't very difficult, and I never liked that special case.
Masterchef365 pushed a commit to Masterchef365/egui that referenced this pull request Apr 3, 2026
…emilk#7803)

* Closes emilk#7749

## What
In our hit test code we have special handling for thin widgets, to make
them easier to hit.
The widths of our scroll bars are animated.
Together, the heuristic would trigger as the scroll bars were shrinking,
leading to the scroll bars being _hovered_ which lead them being too
wide, making the heuristic fail, which would again make them shrink,
causing the bug.

## Bonus
Now the scroll bar is only shown as hovered if the mouse is actually
hovering them and nothing else. Previously they would show as long as
the cursor were in the general area (but maybe actually hovering
something else).
Masterchef365 pushed a commit to Masterchef365/egui that referenced this pull request Apr 3, 2026
* Added in emilk#5468
* Related to emilk#7803

The code doesn't seem to longer be needed. Interacting with a resize
splitter isn't very difficult, and I never liked that special case.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something is broken egui

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Scroll bar / resize handle conflict

1 participant