summaryrefslogtreecommitdiffstats
path: root/widget/src/helpers.rs
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón Jiménez <hector@hecrj.dev>2025-02-03 17:24:05 +0100
committerLibravatar Héctor Ramón Jiménez <hector@hecrj.dev>2025-02-03 17:24:05 +0100
commit50eaef28447f453bc90133de19cff8b2bfee27de (patch)
treeeaa85242780846f22198dd02909a69815385f589 /widget/src/helpers.rs
parent141290c7402a4e087ce18d60b210f4feeafcebee (diff)
parent0c0651de5b1722194d48c19cd645e747fb72ccb6 (diff)
downloadiced-50eaef28447f453bc90133de19cff8b2bfee27de.tar.gz
iced-50eaef28447f453bc90133de19cff8b2bfee27de.tar.bz2
iced-50eaef28447f453bc90133de19cff8b2bfee27de.zip
Merge branch 'master' into explore-input-method2
Diffstat (limited to 'widget/src/helpers.rs')
-rw-r--r--widget/src/helpers.rs14
1 files changed, 11 insertions, 3 deletions
diff --git a/widget/src/helpers.rs b/widget/src/helpers.rs
index 17cf94cc..199b8fc0 100644
--- a/widget/src/helpers.rs
+++ b/widget/src/helpers.rs
@@ -871,16 +871,19 @@ where
shell.request_redraw();
}
+ let is_visible =
+ is_hovered || self.is_top_focused || self.is_top_overlay_active;
+
if matches!(
event,
Event::Mouse(
mouse::Event::CursorMoved { .. }
| mouse::Event::ButtonReleased(_)
)
- ) || is_hovered
- || self.is_top_focused
- || self.is_top_overlay_active
+ ) || is_visible
{
+ let redraw_request = shell.redraw_request();
+
self.top.as_widget_mut().update(
top_tree,
event.clone(),
@@ -891,6 +894,11 @@ where
shell,
viewport,
);
+
+ // Ignore redraw requests of invisible content
+ if !is_visible {
+ Shell::replace_redraw_request(shell, redraw_request);
+ }
};
if shell.is_event_captured() {