mirror of
https://github.com/fergalmoran/ladybird.git
synced 2025-12-24 02:09:28 +00:00
LibWeb: Schedule a relayout after <image> and <object> elements load
Otherwise we'll be stuck with the intrinsic dimensions of the replacement content.
This commit is contained in:
@@ -23,6 +23,7 @@ HTMLImageElement::HTMLImageElement(DOM::Document& document, DOM::QualifiedName q
|
||||
{
|
||||
m_image_loader.on_load = [this] {
|
||||
set_needs_style_update(true);
|
||||
this->document().set_needs_layout();
|
||||
queue_an_element_task(HTML::Task::Source::DOMManipulation, [this] {
|
||||
dispatch_event(DOM::Event::create(EventNames::load));
|
||||
});
|
||||
@@ -31,6 +32,7 @@ HTMLImageElement::HTMLImageElement(DOM::Document& document, DOM::QualifiedName q
|
||||
m_image_loader.on_fail = [this] {
|
||||
dbgln("HTMLImageElement: Resource did fail: {}", src());
|
||||
set_needs_style_update(true);
|
||||
this->document().set_needs_layout();
|
||||
queue_an_element_task(HTML::Task::Source::DOMManipulation, [this] {
|
||||
dispatch_event(DOM::Event::create(EventNames::error));
|
||||
});
|
||||
|
||||
@@ -21,6 +21,7 @@ HTMLObjectElement::HTMLObjectElement(DOM::Document& document, DOM::QualifiedName
|
||||
m_image_loader.on_load = [this] {
|
||||
m_should_show_fallback_content = false;
|
||||
set_needs_style_update(true);
|
||||
this->document().set_needs_layout();
|
||||
// FIXME: This should be done by the HTML^Wdocument parser.
|
||||
dispatch_event(DOM::Event::create(HTML::EventNames::load));
|
||||
};
|
||||
@@ -28,6 +29,7 @@ HTMLObjectElement::HTMLObjectElement(DOM::Document& document, DOM::QualifiedName
|
||||
m_image_loader.on_fail = [this] {
|
||||
m_should_show_fallback_content = true;
|
||||
set_needs_style_update(true);
|
||||
this->document().set_needs_layout();
|
||||
// FIXME: This should be done by the HTML^Wdocument parser.
|
||||
dispatch_event(DOM::Event::create(HTML::EventNames::load));
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user