Use default_font_size for TextInput widget

This commit is contained in:
Héctor Ramón Jiménez 2020-07-06 23:58:15 +02:00
parent 946bbd2683
commit dfeb3db003
3 changed files with 7 additions and 26 deletions

View File

@ -27,14 +27,8 @@ impl<B> text_input::Renderer for Renderer<B>
where
B: Backend + backend::Text,
{
type Font = Font;
type Style = Box<dyn StyleSheet>;
fn default_size(&self) -> u16 {
// TODO: Make this configurable
20
}
fn measure_value(&self, value: &str, size: u16, font: Font) -> f32 {
let backend = self.backend();

View File

@ -105,13 +105,8 @@ impl scrollable::Renderer for Null {
}
impl text_input::Renderer for Null {
type Font = Font;
type Style = ();
fn default_size(&self) -> u16 {
20
}
fn measure_value(&self, _value: &str, _size: u16, _font: Font) -> f32 {
0.0
}

View File

@ -17,8 +17,8 @@ use editor::Editor;
use crate::{
keyboard, layout,
mouse::{self, click},
Clipboard, Element, Event, Hasher, Layout, Length, Point, Rectangle, Size,
Widget,
text, Clipboard, Element, Event, Hasher, Layout, Length, Point, Rectangle,
Size, Widget,
};
use std::u32;
@ -486,7 +486,8 @@ where
let text_bounds = layout.children().next().unwrap().bounds();
if self.is_secure {
renderer.draw(
self::Renderer::draw(
renderer,
bounds,
text_bounds,
cursor_position,
@ -498,7 +499,8 @@ where
&self.style,
)
} else {
renderer.draw(
self::Renderer::draw(
renderer,
bounds,
text_bounds,
cursor_position,
@ -531,20 +533,10 @@ where
///
/// [`TextInput`]: struct.TextInput.html
/// [renderer]: ../../renderer/index.html
pub trait Renderer: crate::Renderer + Sized {
/// The font type used for [`TextInput`].
///
/// [`TextInput`]: struct.TextInput.html
type Font: Default + Copy;
pub trait Renderer: text::Renderer + Sized {
/// The style supported by this renderer.
type Style: Default;
/// Returns the default size of the text of the [`TextInput`].
///
/// [`TextInput`]: struct.TextInput.html
fn default_size(&self) -> u16;
/// Returns the width of the value of the [`TextInput`].
///
/// [`TextInput`]: struct.TextInput.html