From 011b0a41e1f2757d857c0f1d17f6cf62800c6147 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Fri, 23 Oct 2026 21:18:46 +0000 Subject: [PATCH 1/2] G1: Reshape overlay readouts honor Measurement Labels pref Co-authored-by: nrq6993-a11y --- crates/tools/src/extra.rs | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/crates/tools/src/extra.rs b/crates/tools/src/extra.rs index 518237d3f..013578edc 100644 --- a/crates/tools/src/extra.rs +++ b/crates/tools/src/extra.rs @@ -310,8 +310,14 @@ impl Tool for ReshapeTool { } vec![] } - fn overlays(&self, _cx: &ToolContext) -> Vec { - if let Some((p, t)) = &self.measure { vec![Overlay::Measure { p: *p, text: t.clone() }] } else { vec![] } + fn overlays(&self, cx: &ToolContext) -> Vec { + if cx.measurement_labels + && let Some((p, t)) = &self.measure + { + vec![Overlay::Measure { p: *p, text: t.clone() }] + } else { + vec![] + } } fn cursor(&self, cx: &ToolContext, p: Point, _mods: Mods) -> Cursor { if self.grab.is_some() || Self::hit(cx, p).is_some() { Cursor::Move } else { Cursor::Arrow } @@ -550,6 +556,7 @@ mod tests { let want = on.offset_label(30.0, 0.0); assert!(t.overlays(&on).iter().any(|o| matches!(o, Overlay::Measure { text, .. } if text == &want))); let off = ToolContext { measurement_labels: false, ..cx(&d, &s, &p) }; + assert!(!t.overlays(&off).iter().any(|o| matches!(o, Overlay::Measure { .. })), "overlay follows the current pref"); let mut quiet = ReshapeTool::default(); drag(&mut quiet, &off); assert!(!quiet.overlays(&off).iter().any(|o| matches!(o, Overlay::Measure { .. }))); From 988c958e3dde49366111ae5109741623e0d27a78 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Fri, 23 Oct 2026 21:47:30 +0000 Subject: [PATCH 2/2] ci: allow unknown_lints for manual_isolate_lowest_one on Rust 1.95 Co-authored-by: nrq6993-a11y --- crates/effects/src/group.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/crates/effects/src/group.rs b/crates/effects/src/group.rs index 5463857ed..9f0eb549d 100644 --- a/crates/effects/src/group.rs +++ b/crates/effects/src/group.rs @@ -117,7 +117,7 @@ pub const PATHFINDER_MAX_OVERLAPS: usize = 16_384; struct Counts(Vec); // `isolate_lowest_one` is still unstable in Rust 1.96, and the workspace builds on 1.95 (rust-version). -#[allow(clippy::manual_isolate_lowest_one)] +#[allow(unknown_lints, clippy::manual_isolate_lowest_one)] impl Counts { fn add(&mut self, slot: usize, d: isize) { let mut i = slot + 1;