From ad8f1a43cc14f5ae627ddab3acdc1099d9c8b190 Mon Sep 17 00:00:00 2001 From: Piotr <114903054+elevenhsoft@users.noreply.github.com> Date: Fri, 17 May 2024 00:55:53 +0200 Subject: [PATCH] remove validate_input widget --- examples/input_validation/src/main.rs | 11 ++++------- src/widget/text_input/input.rs | 21 ++++----------------- 2 files changed, 8 insertions(+), 24 deletions(-) diff --git a/examples/input_validation/src/main.rs b/examples/input_validation/src/main.rs index d98db1a7..aaba2b8c 100644 --- a/examples/input_validation/src/main.rs +++ b/examples/input_validation/src/main.rs @@ -1,8 +1,7 @@ use cosmic::app::{Application, Command, Core, Settings}; -use cosmic::iced; use cosmic::iced::executor; use cosmic::iced_core::Size; -use cosmic::widget::{column, text_input, validate_input}; +use cosmic::widget::{column, text_input}; use cosmic::Element; use regex::Regex; @@ -43,10 +42,7 @@ impl Application for Window { ) } - fn update( - &mut self, - message: Self::Message, - ) -> iced::Command> { + fn update(&mut self, message: Self::Message) -> Command { match message { Message::InputName(name) => self.name = name, Message::InputEmail(email) => self.email = email, @@ -59,7 +55,8 @@ impl Application for Window { let validation_condition = emailregex.is_match(&self.email); let name_input = text_input("Name", &self.name).on_input(Message::InputName); - let email_input = validate_input("E-mail", &self.email, validation_condition) + let email_input = text_input("E-mail", &self.email) + .validation_condition(validation_condition) .on_input(Message::InputEmail); column() diff --git a/src/widget/text_input/input.rs b/src/widget/text_input/input.rs index 738d0fa3..a703dcb3 100644 --- a/src/widget/text_input/input.rs +++ b/src/widget/text_input/input.rs @@ -160,20 +160,6 @@ where .padding([spacing, spacing, spacing, spacing]) } -/// Creates a new validate input [`TextInput`]. -/// -/// [`TextInput`]: widget::TextInput -pub fn validate_input<'a, Message>( - placeholder: impl Into>, - value: impl Into>, - validate_condition: bool, -) -> TextInput<'a, Message> -where - Message: Clone + 'static, -{ - TextInput::new(placeholder, value).validation_condition(validate_condition) -} - #[cfg(feature = "wayland")] pub(crate) const SUPPORTED_TEXT_MIME_TYPES: &[&str; 6] = &[ "text/plain;charset=utf-8", @@ -314,7 +300,7 @@ where self } - fn validation_condition(mut self, validation_condition: bool) -> Self { + pub fn validation_condition(mut self, validation_condition: bool) -> Self { self.is_validated = Some(validation_condition); self } @@ -2054,8 +2040,9 @@ pub fn draw<'a, Message>( } if is_validated.is_some() { - if !is_validated.unwrap() { - border_color = Color::from_rgb(0.95, 0.30, 0.30); + if !is_validated.unwrap_or_default() { + border_color = + Color::from(palette::Srgb::new(0.890, 0.145, 0.420)); } }