gecko/layout/mathml
Robert O'Callahan 833e8a244f Bug 733607. Restructure logic to compute snapped bounds of display items in layer coordinates. Moves responsibility for computing snapped bounds from within the display items to callers of GetBounds/GetOpaqueRegion. r=tnikkel
Previously we snapped the results of nsDisplayItem::GetBounds and
nsDisplayItem::GetOpaqueRegion internally. By tracking which display items were
inside transforms, we disabled snapping quite conservatively whenever an ancestor
had a transform, which is undesirable.

With this patch, we don't snap inside GetBounds or GetOpaqueRegion, but just return
a boolean flag indicating whether the item will draw with snapping or not. This flag
is conservative so that "true" means we will snap (if the graphics context has a transform
that allows snapping), but "false" means we might or might not snap (so it's always safe
to return false).

FrameLayerBuilder takes over responsibility for snapping item bounds. When it converts
display item bounds to layer pixel coordinates, it checks the snap flag returned from
the display item and checks whether the transform when we draw into the layer will be
a known scale (the ContainerParameters scale factors) plus integer translation. If both
are true, we snap the item bounds when converting to layer pixel coordinates. With
this approach, we can snap item bounds even when the items have ancestors with active
transforms.
2012-04-10 23:24:18 +12:00
..
crashtests Bug 557474 - mpadded tests. r=karlt 2011-07-03 09:56:35 +02:00
tests Bug 708072 - Add test page for stretchy and large operators, r=karlt 2011-12-06 13:24:00 -08:00
jar.mn
Makefile.in Bug 738957 - Remove the nsMathMLForeignFrameWrapper class and related files. r=karlt 2012-03-26 09:59:54 +02:00
mathfont.properties Bug 732834 - Use MathJax fonts in mathematical text part 2. r=karlt 2012-03-09 20:52:14 -05:00
mathfontAsanaMath.properties Bug 407439 - Support for Asana Math font in MathML. r=karlt 2011-06-22 11:49:26 -04:00
mathfontCMEX10.properties
mathfontCMSY10.properties
mathfontMath1.properties
mathfontMath2.properties
mathfontMath4.properties
mathfontMathJax_Main.properties Bug 701758 - Add stretchy operator table for MathJax fonts. r=karlt 2012-02-28 18:40:38 -05:00
mathfontMTExtra.properties
mathfontPUA.properties
mathfontStandardSymbolsL.properties
mathfontSTIXNonUnicode.properties Use u23AF instead of uE10B for stix extenders (bug 594244) r=karlt a=bsmedberg 2010-11-11 11:34:59 +13:00
mathfontSTIXSize1.properties
mathfontSTIXSizeOneSym.properties Always start the lookup of largeop variants at size=1 (bug 584332). r=karlt 2011-06-22 11:48:56 -04:00
mathfontSymbol.properties
mathfontUnicode.properties
MathJaxFonts.html Bug 701758 - Add page to convert MathJax font table into our own format. r=karlt 2012-02-28 18:40:38 -05:00
mathml.css Bug 732834 - Use MathJax fonts in mathematical text part 1. r=karlt 2012-03-09 20:52:13 -05:00
nsIMathMLFrame.h Make lspace/rspace in mo behave as leading/trailing spaces (bug 534963). r=karlt 2011-12-21 17:21:59 -05:00
nsMathMLAtoms.h
nsMathMLChar.cpp Bug 733607. Restructure logic to compute snapped bounds of display items in layer coordinates. Moves responsibility for computing snapped bounds from within the display items to callers of GetBounds/GetOpaqueRegion. r=tnikkel 2012-04-10 23:24:18 +12:00
nsMathMLChar.h Mirroring of operators for arabic math (Bug 208309) - part 1. r=karlt 2011-12-21 17:22:00 -05:00
nsMathMLContainerFrame.cpp Bug 320294 - Remove space between mi with mathvarian normal. r=karlt 2012-03-06 21:58:20 +01:00
nsMathMLContainerFrame.h Bug 524925 - Recompute overflow without reflowing for transforms. part=1/6 r=dbaron 2011-06-15 14:03:49 -07:00
nsMathMLFrame.cpp Make lspace/rspace in mo behave as leading/trailing spaces (bug 534963). r=karlt 2011-12-21 17:21:59 -05:00
nsMathMLFrame.h Bug 690892 - Replace PR_TRUE/PR_FALSE with true/false on mozilla-central; rs=dbaron 2011-10-17 10:59:28 -04:00
nsMathMLmactionFrame.cpp Bug 729924 - statusline actiontype should use the second child as a message. r=karlt 2012-03-29 11:50:02 +02:00
nsMathMLmactionFrame.h Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones 2011-09-28 23:19:26 -07:00
nsMathMLmencloseFrame.cpp Mirroring of operators for arabic math (Bug 208309) - part 1. r=karlt 2011-12-21 17:22:00 -05:00
nsMathMLmencloseFrame.h Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones 2011-09-28 23:19:26 -07:00
nsMathMLmfencedFrame.cpp Mirroring of operators for arabic math (Bug 208309) - part 1. r=karlt 2011-12-21 17:22:00 -05:00
nsMathMLmfencedFrame.h Mirroring of operators for arabic math (Bug 208309) - part 1. r=karlt 2011-12-21 17:22:00 -05:00
nsMathMLmfracFrame.cpp Make lspace/rspace in mo behave as leading/trailing spaces (bug 534963). r=karlt 2011-12-21 17:21:59 -05:00
nsMathMLmfracFrame.h Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones 2011-09-28 23:19:26 -07:00
nsMathMLmmultiscriptsFrame.cpp Overall Directionality of formulas (bug 534963). r=karlt 2010-01-05 11:22:31 +01:00
nsMathMLmmultiscriptsFrame.h Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones 2011-09-28 23:19:26 -07:00
nsMathMLmoFrame.cpp Mirroring of operators for arabic math (Bug 208309) - part 1. r=karlt 2011-12-21 17:22:00 -05:00
nsMathMLmoFrame.h Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones 2011-09-28 23:19:26 -07:00
nsMathMLmpaddedFrame.cpp Overall Directionality of formulas (bug 534963). r=karlt 2010-01-05 11:22:31 +01:00
nsMathMLmpaddedFrame.h Overall Directionality of formulas (bug 534963). r=karlt 2010-01-05 11:22:31 +01:00
nsMathMLmphantomFrame.cpp Bug 174055, part 1: minimize inclusion of nsI(Thebes)FontMetrics.h. 2011-04-07 18:04:41 -07:00
nsMathMLmphantomFrame.h Bug 21479 - Embellished operators - add rules for mstyle, mphantom, mpadded and mrow. r=karlt 2011-03-25 16:38:59 +13:00
nsMathMLmrootFrame.cpp Mirroring of operators for arabic math (Bug 208309) - part 1. r=karlt 2011-12-21 17:22:00 -05:00
nsMathMLmrootFrame.h Bug 266236 part 3: Mechanical rename of nsIRenderingContext and nsThebesRenderingContext to nsRenderingContext. Mechanical substitution of nsRefPtr<nsRenderingContext> for nsCOMPtr<nsRenderingContext>. 2011-04-07 18:04:40 -07:00
nsMathMLmrowFrame.cpp Bug 653649 - New way of getting child lists from frames. (part 4/5) r=roc 2011-08-24 22:54:30 +02:00
nsMathMLmrowFrame.h Bug 21479 - Embellished operators - add rules for mstyle, mphantom, mpadded and mrow. r=karlt 2011-03-25 16:38:59 +13:00
nsMathMLmspaceFrame.cpp Bug 690892 - Replace PR_TRUE/PR_FALSE with true/false on mozilla-central; rs=dbaron 2011-10-17 10:59:28 -04:00
nsMathMLmspaceFrame.h Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones 2011-09-28 23:19:26 -07:00
nsMathMLmsqrtFrame.cpp Support for attribute "notation" on mstyle (bug 569125). r=karlt 2011-05-13 09:31:34 +12:00
nsMathMLmsqrtFrame.h Support for attribute "notation" on mstyle (bug 569125). r=karlt 2011-05-13 09:31:34 +12:00
nsMathMLmstyleFrame.cpp Bug 174055, part 1: minimize inclusion of nsI(Thebes)FontMetrics.h. 2011-04-07 18:04:41 -07:00
nsMathMLmstyleFrame.h
nsMathMLmsubFrame.cpp Overall Directionality of formulas (bug 534963). r=karlt 2010-01-05 11:22:31 +01:00
nsMathMLmsubFrame.h Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones 2011-09-28 23:19:26 -07:00
nsMathMLmsubsupFrame.cpp Overall Directionality of formulas (bug 534963). r=karlt 2010-01-05 11:22:31 +01:00
nsMathMLmsubsupFrame.h Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones 2011-09-28 23:19:26 -07:00
nsMathMLmsupFrame.cpp Overall Directionality of formulas (bug 534963). r=karlt 2010-01-05 11:22:31 +01:00
nsMathMLmsupFrame.h Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones 2011-09-28 23:19:26 -07:00
nsMathMLmtableFrame.cpp Bug 690892 - Replace PR_TRUE/PR_FALSE with true/false on mozilla-central; rs=dbaron 2011-10-17 10:59:28 -04:00
nsMathMLmtableFrame.h Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones 2011-09-28 23:19:26 -07:00
nsMathMLmunderoverFrame.cpp munder, mover, munderover: add support for the align attribute (bug 557476). r=karlt 2012-01-05 11:20:39 +13:00
nsMathMLmunderoverFrame.h Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones 2011-09-28 23:19:26 -07:00
nsMathMLOperators.cpp Mirroring of operators for arabic math (Bug 208309) - part 1. r=karlt 2011-12-21 17:22:00 -05:00
nsMathMLOperators.h Mirroring of operators for arabic math (Bug 208309) - part 1. r=karlt 2011-12-21 17:22:00 -05:00
nsMathMLParts.h Bug 738957 - Remove the nsMathMLForeignFrameWrapper class and related files. r=karlt 2012-03-26 09:59:54 +02:00
nsMathMLsemanticsFrame.cpp
nsMathMLsemanticsFrame.h
nsMathMLTokenFrame.cpp Bug 690892 - Replace PR_TRUE/PR_FALSE with true/false on mozilla-central; rs=dbaron 2011-10-17 10:59:28 -04:00
nsMathMLTokenFrame.h Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones 2011-09-28 23:19:26 -07:00
operatorDictionary.xsl Add a perl script to compare MathML operator dictionaries and check validity of our private data (bug 534970) 2010-11-08 09:32:54 +13:00
updateOperatorDictionary.pl Bug 708072 - Add test page for stretchy and large operators, r=karlt 2011-12-06 13:24:00 -08:00