Prechádzať zdrojové kódy

LibWeb: Implement HTMLImageElement.complete according to spec

Now that we use the HTML image loading algorithm from spec, we can
implement complete correctly.

This (finally) fixes an issue where images were not loading on
https://twinings.co.uk/ :^)
Andreas Kling 2 rokov pred
rodič
commit
5e24b97275

+ 4 - 2
Userland/Libraries/LibWeb/HTML/HTMLImageElement.cpp

@@ -234,9 +234,11 @@ bool HTMLImageElement::complete() const
         return true;
 
     // - The img element's current request's state is completely available and its pending request is null.
+    if (m_current_request->state() == ImageRequest::State::CompletelyAvailable && !m_pending_request)
+        return true;
+
     // - The img element's current request's state is broken and its pending request is null.
-    // FIXME: This is ad-hoc and should be updated once we are loading images via the Fetch mechanism.
-    if (auto bitmap = current_image_bitmap())
+    if (m_current_request->state() == ImageRequest::State::Broken && !m_pending_request)
         return true;
 
     return false;