fix: palm rejection, eraser sizes, PDF thumbnails, even polygon strokes (Issues #37-#41)

- #41: snapped triangles, rectangles and polygons keep the full stroke width on every
  side; corners are mitered, sharp ones bevelled (the old corner offset thinned the edges)
- #38: four eraser sizes, cycled by a button below the eraser modes and remembered in
  ui.json
- #37: a selection made with the pen's select button can be moved with the bare pen
- #39: fingers resting on the screen when the pen comes near, or touching it while the pen
  is near (and 0.7 s after), are ignored until lifted; the vendored winit ignores touches
  on the title bar meanwhile
- #40: the page picker shows imported PDF pages, rendered small in the background

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
haraldandClaude Opus 5.5 committed 2026-10-21 15:06:39 +02:00
1 parent 31a57dc7a7
commit 2a06e2604a
11 files changed
+409 -45

No files matched your search

+4
View File
@@ -227,6 +227,8 @@ pub struct UiSettings {
pub stylus_buttons: Vec<StylusButton>,
/// Sprache der Oberfläche; ohne Angabe die des Systems
pub language: Option<Language>,
/// Eraser radius in mm (Issue #38)
pub eraser_radius_mm: f32,
}
impl Default for UiSettings {
@@ -246,6 +248,7 @@ impl Default for UiSettings {
active_text_color: 0,
stylus_buttons: Vec::new(),
language: None,
eraser_radius_mm: 3.0,
}
}
}
@@ -345,6 +348,7 @@ mod tests {
},
],
language: Some(Language::English),
eraser_radius_mm: 6.0,
};
settings.save_to(&path).unwrap();
assert_eq!(UiSettings::load_from(&path), settings);