Add pref to hide cursor when handwriting

This commit is contained in:
2025-06-29 18:55:20 +02:00
parent cfed4fd5ed
commit 0a19462b0f
3 changed files with 13 additions and 5 deletions

View File

@ -151,6 +151,7 @@ impl FileEditor {
BufferItem::Handwriting(handwriting) => {
let style = HandwritingStyle {
animate: preferences.animations,
hide_cursor: preferences.hide_handwriting_cursor,
..HandwritingStyle::from_theme(ui.ctx().theme())
};
if handwriting.ui(&style, ui).changed {

View File

@ -56,6 +56,7 @@ pub struct HandwritingStyle {
pub bg_line_stroke: Stroke,
pub bg_color: Color32,
pub animate: bool,
pub hide_cursor: bool,
}
#[derive(serde::Deserialize, serde::Serialize)]
@ -185,12 +186,11 @@ impl Handwriting {
}
let desired_size = Vec2::new(ui.available_width(), self.height);
let (response, painter) = ui.allocate_painter(desired_size, Sense::drag());
let (mut response, painter) = ui.allocate_painter(desired_size, Sense::drag());
let mut response = response
//.on_hover_cursor(CursorIcon::Crosshair)
//.on_hover_and_drag_cursor(CursorIcon::None)
;
if style.hide_cursor {
response = response.on_hover_and_drag_cursor(egui::CursorIcon::None);
}
let size = response.rect.size();
@ -711,6 +711,7 @@ impl HandwritingStyle {
bg_color,
bg_line_stroke: Stroke::new(0.5, line_color),
animate: true,
hide_cursor: false,
}
}
}

View File

@ -10,6 +10,9 @@ pub struct Preferences {
/// Enable high-contrast theme
pub high_contrast: bool,
/// Hide the cursor when handwriting
pub hide_handwriting_cursor: bool,
#[serde(skip)]
has_applied_theme: bool,
}
@ -20,6 +23,7 @@ impl Default for Preferences {
animations: true,
high_contrast: false,
has_applied_theme: false,
hide_handwriting_cursor: false,
}
}
}
@ -67,6 +71,8 @@ impl Preferences {
self.apply(ui.ctx());
}
ui.toggle_value(&mut self.hide_handwriting_cursor, "Hide Handwriting Cursor");
egui::widgets::global_theme_preference_buttons(ui);
}
}