mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-20 00:35:44 +00:00
552f835723
This fixes a rather subtle bug. What the underlying code here is trying to do is remove nsChangeHint_UpdateContainingBlock when some properties that influence whether a frame is a containing block for absolutely positioned or fixed positioned elements have changed, but the final calculation of being a containing block has not changed. However, the old code was using a function that tested whether the style could *possibly* lead to a frame being a containing block. Some of the properties (like the transform properties) that lead to being a containing block, for example, don't apply to non-replaced inlines. Some, however, do (such as 'filter'). So if there's a dynamic change adding or removing a filter, on an inline that also has an *ignored* transform property (like 'transform' or 'perspective') set, then the code prior to this patch causes us to remove the UpdateContainingBlock hint. This patch fixes things by testing whether being a containing block could have changed for *any* type of frame, by separately testing the changes. The added tests fail without the patch and pass with the patch, viewed in isolation. However, without the previous patch, test 003 passes. Test 003 also fails in Chrome (but 001 and 002 pass). Differential Revision: https://phabricator.services.mozilla.com/D2814 --HG-- extra : rebase_source : 0a5dbb15a058cf4a43d989bf53f042c5b718e24d |
||
---|---|---|
.. | ||
awsy | ||
config | ||
crashtest | ||
firefox-ui | ||
geckodriver | ||
gtest | ||
jsshell | ||
marionette | ||
mochitest | ||
modules | ||
mozbase | ||
mozharness | ||
profiles | ||
raptor | ||
runtimes | ||
specialpowers | ||
talos | ||
tools | ||
tps | ||
web-platform | ||
webdriver | ||
xpcshell | ||
cppunittest.ini | ||
mach_commands.py | ||
moz.build | ||
README.txt | ||
remotecppunittests.py | ||
runcppunittests.py | ||
testsuite-targets.mk |
Common testing tools for mozilla codebase projects, test suite definitions for automated test runs, tests that don't fit anywhere else, and other fun stuff