LibWeb: Add method HTMLInputElement::is_single_line()

(cherry picked from commit b36a78a798bf9cac60ff13e003b0a1c94a716817)
This commit is contained in:
rmg-x 2024-07-07 11:05:13 -05:00 committed by Nico Weber
parent c30d2197bc
commit 7507357496
2 changed files with 17 additions and 0 deletions

View file

@ -2126,6 +2126,21 @@ bool HTMLInputElement::is_submit_button() const
|| type_state() == TypeAttributeState::ImageButton;
}
// https://html.spec.whatwg.org/multipage/input.html#text-(type=text)-state-and-search-state-(type=search)
// https://html.spec.whatwg.org/multipage/input.html#password-state-(type=password)
// "one line plain text edit control"
bool HTMLInputElement::is_single_line() const
{
// NOTE: For web compatibility reasons, we consider other types
// in addition to Text, Search, and Password as single line inputs.
return type_state() == TypeAttributeState::Text
|| type_state() == TypeAttributeState::Search
|| type_state() == TypeAttributeState::Password
|| type_state() == TypeAttributeState::Email
|| type_state() == TypeAttributeState::Telephone
|| type_state() == TypeAttributeState::Number;
}
bool HTMLInputElement::has_activation_behavior() const
{
return true;

View file

@ -168,6 +168,8 @@ public:
// https://html.spec.whatwg.org/multipage/forms.html#concept-submit-button
virtual bool is_submit_button() const override;
bool is_single_line() const;
virtual void reset_algorithm() override;
virtual void form_associated_element_was_inserted() override;