This matters primarily because it makes font inflation easier to test by
avoiding rounding differences. It fixes two existing tests that were
disabled and also makes it possible to test font inflation of selects
(since options have line-height: normal ! important in the UA style
sheet).
This is the second of two patches to honor inflation during intrinsic
width calculation (which we need to do to make some form controls
inflate correctly).
This is the third of three patches to rework the way we handle getting
the font inflation container and width data during reflow, which are
needed so that we can sometimes honor inflation during intrinsic width
calculation (which we need to do to make some form controls inflate
correctly).
This is the first of two patches to honor inflation during intrinsic
width calculation (which we need to do to make some form controls
inflate correctly).
This is the second of three patches to rework the way we handle getting
the font inflation container and width data during reflow, which are
needed so that we can sometimes honor inflation during intrinsic width
calculation (which we need to do to make some form controls inflate
correctly).
This is the first of three patches to rework the way we handle getting
the font inflation container and width data during reflow, which are
needed so that we can sometimes honor inflation during intrinsic width
calculation (which we need to do to make some form controls inflate
correctly).
This moves the logic currently in
nsLayoutUtils::IsContainerForFontSizeInflation into frame initialization
so that we can (later, for bug 706193) make that logic more complicated.
We have a special marker function for handling the Atom list because we need to
call JS_SET_TRACING_INDEX externally to avoid clobbering the index. However,
nobody cares about the index here and if they do, they can add custom debug
code. It is better at this point to have a consistent and correct interface,
thus we remove the specialized atomized string marking in favor of the existing
markers. Additionally, this is only used during root marking so we can switch
to using MarkRoot for the extra assertions.
--HG--
extra : rebase_source : b4448f7fde8990a727bf2893e53688690e170535
The main change is: remove the WebGLRectangleObject inheritance from
WebGLFramebufferAttachment, and instead have WebGLFramebufferAttachment
query its texture or renderbuffer for their dimensions, when needed.
In the course of doing this, a couple other needed changes appeared:
- let WebGLTexture::ImageInfo inherit WebGLRectangleObject, so that WebGLFramebufferAttachment can return a pointer to it right away in the texture case
- add a FramebufferRectangleObject() method to WebGLContext, that will return the dimensions of the bound FBO if there is one, otherwise will just return the contexts' own dimensions.
- in order to do that, it was very convenient to let WebGLContext inherit WebGLRectangleObject so that FramebufferRectangleObject() could just return a pointer to that in the no-bound-FBO case.
- move WebGLRectangleObject up in the file, above WebGLContext
- there was a plain bug in WebGLFramebufferAttachment::HasAlpha(), we were not using the right image info within the texture.