diff options
author | 2022-05-28 16:07:02 -0400 | |
---|---|---|
committer | 2022-07-13 18:32:56 +0200 | |
commit | e8cfa644e726a84c676154f7d0efb369da2a809f (patch) | |
tree | da780267a40f6b91db91ca75232f32981894e5be /pure/src | |
parent | 1404b88ea6ecf5b082d5c33d5f17dc15ce70b310 (diff) | |
download | iced-e8cfa644e726a84c676154f7d0efb369da2a809f.tar.gz iced-e8cfa644e726a84c676154f7d0efb369da2a809f.tar.bz2 iced-e8cfa644e726a84c676154f7d0efb369da2a809f.zip |
Added `on_paste` handler to `TextInput`
Diffstat (limited to '')
-rw-r--r-- | pure/src/widget/text_input.rs | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/pure/src/widget/text_input.rs b/pure/src/widget/text_input.rs index 9b0a466a..88726a52 100644 --- a/pure/src/widget/text_input.rs +++ b/pure/src/widget/text_input.rs @@ -46,6 +46,7 @@ where padding: Padding, size: Option<u16>, on_change: Box<dyn Fn(String) -> Message + 'a>, + on_paste: Option<Box<dyn Fn(String) -> Message + 'a>>, on_submit: Option<Message>, style: <Renderer::Theme as StyleSheet>::Style, } @@ -75,6 +76,7 @@ where padding: Padding::ZERO, size: None, on_change: Box::new(on_change), + on_paste: None, on_submit: None, style: Default::default(), } @@ -85,7 +87,14 @@ where self.is_secure = true; self } - + /// Set's the message that should be produced when a message is pasted into the [`TextInput`]. + pub fn on_paste<OnPaste>(mut self, on_paste: OnPaste) -> Self + where + OnPaste: 'a + Fn(String) -> Message, + { + self.on_paste = Some(Box::new(on_paste)); + self + } /// Sets the [`Font`] of the [`TextInput`]. /// /// [`Font`]: text::Renderer::Font @@ -215,6 +224,7 @@ where &self.font, self.is_secure, self.on_change.as_ref(), + &self.on_paste, &self.on_submit, || tree.state.downcast_mut::<text_input::State>(), ) |