Fix click target not extending to correct limit for aligned strokes (#3065)

Fixes #3047
This commit is contained in:
mTvare 2025-08-19 01:00:57 +05:30 committed by GitHub
parent 0a53eae4e0
commit 5ed45ead6f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 11 additions and 1 deletions

View File

@ -371,6 +371,16 @@ impl Stroke {
self.weight
}
/// Get the effective stroke weight.
pub fn effective_width(&self) -> f64 {
self.weight
* match self.align {
StrokeAlign::Center => 1.,
StrokeAlign::Inside => 0.,
StrokeAlign::Outside => 2.,
}
}
pub fn dash_lengths(&self) -> String {
if self.dash_lengths.is_empty() {
"none".to_string()

View File

@ -988,7 +988,7 @@ impl Render for Table<Vector> {
let vector = row.element;
if let Some(element_id) = element_id {
let stroke_width = vector.style.stroke().as_ref().map_or(0., Stroke::weight);
let stroke_width = vector.style.stroke().as_ref().map_or(0., Stroke::effective_width);
let filled = vector.style.fill() != &Fill::None;
let fill = |mut subpath: Subpath<_>| {
if filled {