diff --git a/crates/bevy_ui/src/focus.rs b/crates/bevy_ui/src/focus.rs index 32872f1447851..cfa4b818b0600 100644 --- a/crates/bevy_ui/src/focus.rs +++ b/crates/bevy_ui/src/focus.rs @@ -267,7 +267,9 @@ pub fn ui_focus_system( // Save the relative cursor position to the correct component if let Some(mut node_relative_cursor_position_component) = node.relative_cursor_position { - *node_relative_cursor_position_component = relative_cursor_position_component; + // Avoid triggering change detection when not necessary. + node_relative_cursor_position_component + .set_if_neq(relative_cursor_position_component); } if contains_cursor {