diff options
| author | 2025-02-02 21:06:50 +0100 | |
|---|---|---|
| committer | 2025-02-02 21:06:50 +0100 | |
| commit | db990b77e4aa8d001c774703301342c951d6caaa (patch) | |
| tree | 5fe6d046fa17c0a99438fbde7b8e748c8941afca /core | |
| parent | ae10adda74320e8098bfeb401f12a278e1e7b3e2 (diff) | |
| download | iced-db990b77e4aa8d001c774703301342c951d6caaa.tar.gz iced-db990b77e4aa8d001c774703301342c951d6caaa.tar.bz2 iced-db990b77e4aa8d001c774703301342c951d6caaa.zip | |
Add neutral `None` variant to `InputMethod`
Diffstat (limited to '')
| -rw-r--r-- | core/src/input_method.rs | 13 | ||||
| -rw-r--r-- | core/src/shell.rs | 2 | 
2 files changed, 11 insertions, 4 deletions
| diff --git a/core/src/input_method.rs b/core/src/input_method.rs index c293582d..b25f29aa 100644 --- a/core/src/input_method.rs +++ b/core/src/input_method.rs @@ -6,6 +6,8 @@ use std::ops::Range;  /// The input method strategy of a widget.  #[derive(Debug, Clone, PartialEq)]  pub enum InputMethod<T = String> { +    /// No input method strategy has been specified. +    None,      /// No input method is allowed.      Disabled,      /// Input methods are allowed, but not open yet. @@ -73,7 +75,7 @@ impl InputMethod {      /// ```      pub fn merge<T: AsRef<str>>(&mut self, other: &InputMethod<T>) {          match other { -            InputMethod::Disabled => {} +            InputMethod::None => {}              InputMethod::Open {                  position,                  purpose, @@ -88,10 +90,15 @@ impl InputMethod {                          .map(str::to_owned),                  };              } -            InputMethod::Allowed if matches!(self, Self::Disabled) => { +            InputMethod::Allowed +                if matches!(self, Self::None | Self::Disabled) => +            {                  *self = Self::Allowed;              } -            InputMethod::Allowed => {} +            InputMethod::Disabled if matches!(self, Self::None) => { +                *self = Self::Disabled; +            } +            _ => {}          }      }  } diff --git a/core/src/shell.rs b/core/src/shell.rs index e87d1696..d01233c7 100644 --- a/core/src/shell.rs +++ b/core/src/shell.rs @@ -27,7 +27,7 @@ impl<'a, Message> Shell<'a, Message> {              redraw_request: window::RedrawRequest::Wait,              is_layout_invalid: false,              are_widgets_invalid: false, -            input_method: InputMethod::Disabled, +            input_method: InputMethod::None,          }      } | 
