mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-04-27 18:17:22 +02:00
LibWeb: Invalidate input element style on focus change
The style of input and textarea elements is now invalidated when focus is changed to a new element. This ensures any `:focus` selectors are applied correctly.
This commit is contained in:
committed by
Sam Atkins
parent
9448c957c1
commit
572324d47b
Notes:
sideshowbarker
2024-07-17 01:53:23 +09:00
Author: https://github.com/tcl3 Commit: https://github.com/LadybirdBrowser/ladybird/commit/572324d47b Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/499 Issue: https://github.com/LadybirdBrowser/ladybird/issues/471
@@ -1098,16 +1098,21 @@ void HTMLInputElement::update_slider_thumb_element()
|
||||
|
||||
void HTMLInputElement::did_receive_focus()
|
||||
{
|
||||
auto navigable = document().navigable();
|
||||
if (!navigable)
|
||||
return;
|
||||
if (!m_text_node)
|
||||
return;
|
||||
m_text_node->invalidate_style();
|
||||
auto navigable = document().navigable();
|
||||
if (!navigable) {
|
||||
return;
|
||||
}
|
||||
navigable->set_cursor_position(DOM::Position::create(realm(), *m_text_node, 0));
|
||||
}
|
||||
|
||||
void HTMLInputElement::did_lose_focus()
|
||||
{
|
||||
if (m_text_node)
|
||||
m_text_node->invalidate_style();
|
||||
|
||||
commit_pending_changes();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user