mirror of
https://github.com/servo/servo.git
synced 2025-06-06 16:45:39 +00:00
Split up the InputButton variant
This commit is contained in:
parent
bc7b5b35b4
commit
2c2d741b1f
1 changed files with 10 additions and 8 deletions
|
@ -41,7 +41,9 @@ const DEFAULT_RESET_VALUE: &'static str = "Reset";
|
|||
#[deriving(PartialEq)]
|
||||
#[allow(dead_code)]
|
||||
enum InputType {
|
||||
InputButton(Option<&'static str>),
|
||||
InputSubmit,
|
||||
InputReset,
|
||||
InputButton,
|
||||
InputText,
|
||||
InputFile,
|
||||
InputImage,
|
||||
|
@ -110,9 +112,9 @@ impl LayoutHTMLInputElementHelpers for JS<HTMLInputElement> {
|
|||
match (*self.unsafe_get()).input_type.get() {
|
||||
InputCheckbox | InputRadio => "".to_string(),
|
||||
InputFile | InputImage => "".to_string(),
|
||||
InputButton(ref default) => get_raw_attr_value(self)
|
||||
.or_else(|| default.map(|v| v.to_string()))
|
||||
.unwrap_or_else(|| "".to_string()),
|
||||
InputButton => get_raw_attr_value(self).unwrap_or_else(|| "".to_string()),
|
||||
InputSubmit => get_raw_attr_value(self).unwrap_or_else(|| DEFAULT_SUBMIT_VALUE.to_string()),
|
||||
InputReset => get_raw_attr_value(self).unwrap_or_else(|| DEFAULT_RESET_VALUE.to_string()),
|
||||
InputPassword => {
|
||||
let raw = get_raw_textinput_value(self);
|
||||
String::from_char(raw.char_len(), '●')
|
||||
|
@ -305,9 +307,9 @@ impl<'a> VirtualMethods for JSRef<'a, HTMLInputElement> {
|
|||
&atom!("type") => {
|
||||
let value = attr.value();
|
||||
self.input_type.set(match value.as_slice() {
|
||||
"button" => InputButton(None),
|
||||
"submit" => InputButton(Some(DEFAULT_SUBMIT_VALUE)),
|
||||
"reset" => InputButton(Some(DEFAULT_RESET_VALUE)),
|
||||
"button" => InputButton,
|
||||
"submit" => InputSubmit,
|
||||
"reset" => InputReset,
|
||||
"file" => InputFile,
|
||||
"radio" => InputRadio,
|
||||
"checkbox" => InputCheckbox,
|
||||
|
@ -421,7 +423,7 @@ impl<'a> VirtualMethods for JSRef<'a, HTMLInputElement> {
|
|||
match self.input_type.get() {
|
||||
InputCheckbox => self.SetChecked(!self.checked.get()),
|
||||
InputRadio => self.SetChecked(true),
|
||||
InputButton(Some(DEFAULT_SUBMIT_VALUE)) => {
|
||||
InputSubmit => {
|
||||
self.form_owner().map(|o| {
|
||||
o.root().submit(NotFromFormSubmitMethod, InputElement(self.clone()))
|
||||
});
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue