summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--native/src/widget/checkbox.rs14
-rw-r--r--native/src/widget/text_input.rs5
2 files changed, 18 insertions, 1 deletions
diff --git a/native/src/widget/checkbox.rs b/native/src/widget/checkbox.rs
index 44962288..99178aae 100644
--- a/native/src/widget/checkbox.rs
+++ b/native/src/widget/checkbox.rs
@@ -33,6 +33,7 @@ pub struct Checkbox<Message, Renderer: self::Renderer + text::Renderer> {
size: u16,
spacing: u16,
text_size: Option<u16>,
+ font: Renderer::Font,
style: Renderer::Style,
}
@@ -61,6 +62,7 @@ impl<Message, Renderer: self::Renderer + text::Renderer>
size: <Renderer as self::Renderer>::DEFAULT_SIZE,
spacing: Renderer::DEFAULT_SPACING,
text_size: None,
+ font: Renderer::Font::default(),
style: Renderer::Style::default(),
}
}
@@ -97,6 +99,15 @@ impl<Message, Renderer: self::Renderer + text::Renderer>
self
}
+ /// Sets the [`Font`] of the text of the [`Checkbox`].
+ ///
+ /// [`Checkbox`]: struct.Checkbox.html
+ /// [`Font`]: ../../struct.Font.html
+ pub fn font(mut self, font: Renderer::Font) -> Self {
+ self.font = font;
+ self
+ }
+
/// Sets the style of the [`Checkbox`].
///
/// [`Checkbox`]: struct.Checkbox.html
@@ -135,6 +146,7 @@ where
)
.push(
Text::new(&self.label)
+ .font(self.font)
.width(self.width)
.size(self.text_size.unwrap_or(renderer.default_size())),
)
@@ -182,7 +194,7 @@ where
label_layout.bounds(),
&self.label,
self.text_size.unwrap_or(renderer.default_size()),
- Default::default(),
+ self.font,
None,
HorizontalAlignment::Left,
VerticalAlignment::Center,
diff --git a/native/src/widget/text_input.rs b/native/src/widget/text_input.rs
index 8c226d3d..9e15f4be 100644
--- a/native/src/widget/text_input.rs
+++ b/native/src/widget/text_input.rs
@@ -468,6 +468,11 @@ where
self.state.cursor.select_all(&self.value);
}
}
+ keyboard::KeyCode::Escape => {
+ self.state.is_focused = false;
+ self.state.is_dragging = false;
+ self.state.is_pasting = None;
+ }
_ => {}
},
Event::Keyboard(keyboard::Event::KeyReleased {