[webkit-dev] Troubles with Anonymous Blocks

Roland Steiner rolandsteiner at google.com
Mon Feb 8 21:42:59 PST 2010


Just a stab in the dark here, and without knowledge about recent changes
that could have caused your code to break (so this could be wildly off). The
difference between the 2 versions AFAICT is whether m_isAnonymous is set or
not, which leads me to the question: have you properly
overridden createsAnonymousWrapper() in the parent?

Cheers,

Roland

On Tue, Feb 9, 2010 at 6:28 AM, Alex Milowski <alex at milowski.org> wrote:

> I've been struggling with odd issues with anonymous blocks that I don't
> quite
> understand.  For example, to build a fraction in MathML I wrap the
> numerator
> and denominator in an anonymous block:
>
>       RenderBlock* row = new (renderArena()) RenderBlock(document());
>
> I then set border, padding, and text-align style properties on the style
> for
> that anonymous block.  These settings seem to have stopped working
> in the latest round of work.
>
> If I change the construction of the row wrapper to:
>
>       RenderBlock* row = new (renderArena()) RenderBlock(node());
>
> which is backed by the 'mfrac' element, all the border/etc. style
> properties
> work.
>
> When I trace through with the debugger, the border properties seem to
> disappear from the style object when the node is the document node
> and the block is anonymous.
>
> Any ideas on what is happening?
>
> I see that there is little code that uses an anonymous blocks directly
> as I do.  Is there are a preferred way to do this?
>
> My intended design for fractions was:
>
> 1. The mfrac is a inline-block with block flows for its children
>
> 2. The numerator and denominator are blocks that stack vertically.
>
> 3. The denominator has a border property for the fraction line
>    separator.
>
> 4. These wrapper blocks for the numerator and denominator can
>    have arbitrarily complicated flows of their own.
>
> Currently, if I use the second construct above and use node() as
> the backing node for the block wrappers for the numerator and
> denominator, it almost works.  There seem to be situations where
> the border is drawn short of the overall width--which is a another
> problem I'm struggling with but may be unrelated to this issue.
>
> --
> --Alex Milowski
> "The excellence of grammar as a guide is proportional to the paucity of the
> inflexions, i.e. to the degree of analysis effected by the language
> considered."
>
> Bertrand Russell in a footnote of Principles of Mathematics
> _______________________________________________
> webkit-dev mailing list
> webkit-dev at lists.webkit.org
> http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-dev/attachments/20100209/d09e860d/attachment.html>


More information about the webkit-dev mailing list