Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7adc3dd2a2260a3dd133dbc2245a9be5b8b78772
      
https://github.com/WebKit/WebKit/commit/7adc3dd2a2260a3dd133dbc2245a9be5b8b78772
  Author: Ahmad Saleem <[email protected]>
  Date:   2024-01-15 (Mon, 15 Jan 2024)

  Changed paths:
    A LayoutTests/fast/block/float/checkbox-and-radio-avoid-floats-expected.txt
    A LayoutTests/fast/block/float/checkbox-and-radio-avoid-floats.html
    M Source/WebCore/rendering/RenderBox.cpp

  Log Message:
  -----------
  Replaced elements avoid floats, including check boxes and radio boxes when 
turned into block box

https://bugs.webkit.org/show_bug.cgi?id=264770
rdar://problem/118660695

Reviewed by Alan Baradlay.

This patch aligns WebKit with Blink / Chromium and Gecko / Firefox.

Merge: 
https://chromium.googlesource.com/chromium/blink/+/141235180acceb7bbdd50a315c31171dfcf55a07

This bug is reproducible when the input box is turned into a block box
(by default their display type value is inline-block and inline layout handles
such cases just fine i.e. they do avoid floats).

Check boxes and radio boxes are the odd man out among form control
elements: they neither have their own renderer class with which to
override avoidFloats nor are they isReplaced(). If the case for
making form control elements isReplaced() builds further than it may
be worth looking at including them in that effort but for now just
replaced the isReplaced() check in avoidsFloats() with a more inclusive
alternative.

* Source/WebCore/rendering/RenderBox.cpp:
(RenderBox::avoidsFloats):
* LayoutTests/fast/block/float/checkbox-and-radio-avoid-floats.html: Add Test 
Case
* LayoutTests/fast/block/float/checkbox-and-radio-avoid-floats-expected.txt: 
Add Test Case Expectation

Canonical link: https://commits.webkit.org/273047@main


_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to