From 5576e4489b92de11a7cfd5a5108de01b24ae942b Mon Sep 17 00:00:00 2001 From: 0xfff Date: Sat, 4 Oct 2025 19:47:02 +0200 Subject: [PATCH 1/2] fix: query `UiGlobalTransform` instead of `GlobalTransform` --- crates/bevy_ui/src/widget/viewport.rs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/crates/bevy_ui/src/widget/viewport.rs b/crates/bevy_ui/src/widget/viewport.rs index dbd457956073d..0883717438686 100644 --- a/crates/bevy_ui/src/widget/viewport.rs +++ b/crates/bevy_ui/src/widget/viewport.rs @@ -32,6 +32,8 @@ use bevy_transform::components::GlobalTransform; #[cfg(feature = "bevy_ui_picking_backend")] use uuid::Uuid; +#[cfg(feature = "bevy_ui_picking_backend")] +use crate::UiGlobalTransform; use crate::{ComputedNode, Node}; /// Component used to render a [`Camera::target`] to a node. @@ -73,7 +75,7 @@ pub fn viewport_picking( &PointerId, &mut PointerLocation, &ComputedNode, - &GlobalTransform, + &UiGlobalTransform, )>, camera_query: Query<&Camera>, hover_map: Res, @@ -123,10 +125,8 @@ pub fn viewport_picking( }; // Create a `Rect` in *physical* coordinates centered at the node's GlobalTransform - let node_rect = Rect::from_center_size( - global_transform.translation().truncate(), - computed_node.size(), - ); + let node_rect = + Rect::from_center_size(global_transform.translation.trunc(), computed_node.size()); // Location::position uses *logical* coordinates let top_left = node_rect.min * computed_node.inverse_scale_factor(); let logical_size = computed_node.size() * computed_node.inverse_scale_factor(); From 33e38920df56378cb73c7be55b30f2c8401e2796 Mon Sep 17 00:00:00 2001 From: 0xfff Date: Sat, 4 Oct 2025 21:58:49 +0200 Subject: [PATCH 2/2] remove unused import of `GlobalTransform` --- crates/bevy_ui/src/widget/viewport.rs | 2 -- 1 file changed, 2 deletions(-) diff --git a/crates/bevy_ui/src/widget/viewport.rs b/crates/bevy_ui/src/widget/viewport.rs index 0883717438686..08b34ea5cb52f 100644 --- a/crates/bevy_ui/src/widget/viewport.rs +++ b/crates/bevy_ui/src/widget/viewport.rs @@ -28,8 +28,6 @@ use bevy_picking::{ use bevy_platform::collections::HashMap; use bevy_reflect::Reflect; #[cfg(feature = "bevy_ui_picking_backend")] -use bevy_transform::components::GlobalTransform; -#[cfg(feature = "bevy_ui_picking_backend")] use uuid::Uuid; #[cfg(feature = "bevy_ui_picking_backend")]