Skip to content

Commit d3ea922

Browse files
authored
Fix: don't interact with Area outside its constrain_rect (emilk#5459)
<!-- Please read the "Making a PR" section of [`CONTRIBUTING.md`](https://github.com/emilk/egui/blob/master/CONTRIBUTING.md) before opening a Pull Request! * Keep your PR:s small and focused. * The PR title is what ends up in the changelog, so make it descriptive! * If applicable, add a screenshot or gif. * If it is a non-trivial addition, consider adding a demo for it to `egui_demo_lib`, or a new example. * Do NOT open PR:s from your `master` branch, as that makes it hard for maintainers to test and add commits to your PR. * Remember to run `cargo fmt` and `cargo clippy`. * Open the PR as a draft until you have self-reviewed it and run `./scripts/check.sh`. * When you have addressed a PR comment, mark it as resolved. Please be patient! I will review your PR, but my time is limited! --> * [x] I have followed the instructions in the PR template This PR makes an area's interact rect intersect its constrain rect. This fixes an issue where masked areas would still intercept input. Before: ![before](https://github.com/user-attachments/assets/6b790a04-8a15-44fe-a7ae-4adda189ecba) After: ![after](https://github.com/user-attachments/assets/98010d89-e680-44cb-8717-faf31b0912d3)
1 parent 36a70e1 commit d3ea922

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

crates/egui/src/containers/area.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -467,7 +467,7 @@ impl Area {
467467
id: interact_id,
468468
layer_id,
469469
rect: state.rect(),
470-
interact_rect: state.rect(),
470+
interact_rect: state.rect().intersect(constrain_rect),
471471
sense,
472472
enabled,
473473
},

0 commit comments

Comments
 (0)