mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-11-25 00:50:22 +00:00
LibWeb/HTML: Implement HTMLImageElement::allows_auto_sizes()
This commit is contained in:
parent
2671820ace
commit
99718653e2
Notes:
github-actions[bot]
2024-09-12 05:40:13 +00:00
Author: https://github.com/AtkinsSJ Commit: https://github.com/LadybirdBrowser/ladybird/commit/99718653e21 Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/1374
2 changed files with 16 additions and 0 deletions
|
@ -1171,4 +1171,17 @@ void HTMLImageElement::set_decoding(String decoding)
|
|||
m_decoding_hint = ImageDecodingHint::Auto;
|
||||
}
|
||||
|
||||
bool HTMLImageElement::allows_auto_sizes() const
|
||||
{
|
||||
// An img element allows auto-sizes if:
|
||||
// - its loading attribute is in the Lazy state, and
|
||||
// - its sizes attribute's value is "auto" (ASCII case-insensitive), or starts with "auto," (ASCII case-insensitive).
|
||||
if (lazy_loading_attribute() != LazyLoading::Lazy)
|
||||
return false;
|
||||
auto sizes = attribute(HTML::AttributeNames::sizes);
|
||||
return sizes.has_value()
|
||||
&& (sizes->equals_ignoring_ascii_case("auto"sv)
|
||||
|| sizes->starts_with_bytes("auto,"sv, AK::CaseSensitivity::CaseInsensitive));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -94,6 +94,9 @@ public:
|
|||
// https://html.spec.whatwg.org/multipage/images.html#upgrade-the-pending-request-to-the-current-request
|
||||
void upgrade_pending_request_to_current_request();
|
||||
|
||||
// https://html.spec.whatwg.org/multipage/embedded-content.html#allows-auto-sizes
|
||||
bool allows_auto_sizes() const;
|
||||
|
||||
// ^Layout::ImageProvider
|
||||
virtual bool is_image_available() const override;
|
||||
virtual Optional<CSSPixels> intrinsic_width() const override;
|
||||
|
|
Loading…
Reference in a new issue