commit 731a91bca835ba6b9c01932781549223e7ff013a parent 74cb87acf561cbbb1dd4dec675f6e48ea39f71c7 Author: Joey Arhar <jarhar@chromium.org> Date: Wed, 15 Oct 2025 08:21:50 +0000 Bug 1993485 [wpt PR 55317] - Correct size attribute parsing for SelectMobileDesktopParity, a=testonly Automatic update from web-platform-tests Correct size attribute parsing for SelectMobileDesktopParity The code which determined whether to use ListBox or MenuList rendering for SelectMobileDesktopParity assumed that invalid or missing size attributes set the size_ variable to 1, but it actually gets set to 0. This patch fixes it by handling the size_ variable the same as the non-SelectMobileDesktopParity branch. This patch also adds a call to invalidate :-internal-list-box since it certainly seems needed, but it doesn't actually seem to change the behavior. Fixed: 450045066 Bug: 439964654 Change-Id: Ibeafa40bfeb19efe647a61283de6077dd3338535 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7022339 Commit-Queue: Joey Arhar <jarhar@chromium.org> Reviewed-by: David Baron <dbaron@chromium.org> Cr-Commit-Position: refs/heads/main@{#1527201} -- wpt-commits: 0dec9a33d928cbbfc800a19b67668b048a0ef9ad wpt-pr: 55317 Diffstat:
2 files changed, 27 insertions(+), 0 deletions(-)
diff --git a/testing/web-platform/tests/html/semantics/forms/the-select-element/select-toggle-multiple-ref.html b/testing/web-platform/tests/html/semantics/forms/the-select-element/select-toggle-multiple-ref.html @@ -0,0 +1,5 @@ +<!DOCTYPE html> +<select> + <option>one</option> + <option>two</option> +</select> diff --git a/testing/web-platform/tests/html/semantics/forms/the-select-element/select-toggle-multiple.html b/testing/web-platform/tests/html/semantics/forms/the-select-element/select-toggle-multiple.html @@ -0,0 +1,22 @@ +<!DOCTYPE html> +<html class=reftest-wait> +<link rel=author href="mailto:jarhar@chromium.org"> +<link rel=help href="https://issues.chromium.org/issues/450045066"> +<link rel=match href="select-toggle-multiple-ref.html"> + +<select> + <option>one</option> + <option>two</option> +</select> + +<script> +(async () => { + const select = document.querySelector('select'); + await new Promise(requestAnimationFrame); + select.multiple = true; + await new Promise(requestAnimationFrame); + select.multiple = false; + await new Promise(requestAnimationFrame); + document.documentElement.classList.remove('reftest-wait'); +})(); +</script>