Commit Graph

1630 Commits

Author SHA1 Message Date
L. David Baron
1caa7b19e8 Bug 480888 patch 4: Draw outline around the union of border boxes, SVG, and text, rather than the visual overflow area. r=roc
At the same time, move the handling of outlines on inlines that contain
blocks earlier, so that we factor it into the stored frame property (and
thus have the stored frame property) and so that we include it
accurately in the overflow calculation.
2014-02-14 21:29:13 -08:00
L. David Baron
0de20c153e Bug 480888 patch 3: Refactor a common pattern into a FrameMaintainsOverflow helper function. r=roc 2014-02-14 21:29:13 -08:00
L. David Baron
197736cbab Bug 480888 patch 2: Remove always-true aStoreRectProperties parameter to ComputeEffectsRect. r=roc 2014-02-14 21:29:12 -08:00
L. David Baron
251eb7fe48 Bug 480888 patch 1: Rename ComputeOutlineAndEffectsRect to ComputeEffectsRect. r=roc 2014-02-14 21:29:12 -08:00
L. David Baron
7c8e71b8e1 Bug 972088: Make nsIFrame::Preserves3DChildren not call nsStyleDisplay::HasTransform (pure refactoring). r=mattwoodrow
The purpose of this change is to make the code less confusing (since it's not clear to me why one would check HasTransform here), and in general to reduce the number of callers of HasTransform, since HasTransform is a complicated check that checks too many things and probably isn't the right thing for many of its callers (see, e.g., bug 968555).

This is pure refactoring because:
 (1) We're calling HasTransform only if mTransformStyle is
     NS_STYLE_TRANSFORM_STYLE_PRESERVE_3D.
 (2) HasTransform can return false for either of two reasons:
     (a) because HasTransformStyle is false, which cannot be the case
         here because HasTransformStyle checks mTransformStyle, and we
         already know that check passes because of (1)
     (b) because IsFrameOfType(nsIFrame::eSupportsCSSTransforms) is
         false.
This means that we can replace the HasTransform check with solely the
IsFrameOfType check.
2014-02-14 21:29:12 -08:00
Max Vujovic
a5b842434f Bug 948265 - [CSS Filters] Change nsSVGFilterProperty to track an nsStyleFilter chain instead of a single nsIURI and nsSVGFilterFrame. r=roc 2014-02-09 20:31:03 -08:00
L. David Baron
0bd5aa6c7a Bug 970647 patch 3: Rename (to match convention) and better share nsStyleDisplay* variable in nsIFrame::Preserves3DChildren. r=mattwoodrow 2014-02-10 17:03:25 -08:00
L. David Baron
c408e797c8 Bug 970647 patch 2: Fix indentation and bracing in nsIFrame::Preserves3DChildren. r=mattwoodrow 2014-02-10 17:03:25 -08:00
L. David Baron
536c5e5812 Bug 970647 patch 1: Remove some null-checks and simplify control flow in nsIFrame::HasPerspective and nsIFrame::ChildrenHavePerspective. r=mattwoodrow 2014-02-10 17:03:25 -08:00
Mats Palmgren
db7ad396cc Bug 968174 - Don't schedule a paint if the pres context was detached during the delay. Re-enable the assertions from bug 967758. r=roc 2014-02-10 02:14:38 +00:00
L. David Baron
2e0070401d Bug 91419 patch 9: Fix comments and debugging output referring to "special" frames. r=mats 2014-02-06 17:45:33 -08:00
L. David Baron
afbd9ffdb9 Bug 91419 patch 8: Miscellaneous function and variable name changes. r=mats 2014-02-06 17:45:32 -08:00
L. David Baron
c7542495f9 Bug 91419 patch 6: Rename everything with IBSplitSpecialPrevSibling to IBSplitPrevSibling. r=mats 2014-02-06 17:45:31 -08:00
L. David Baron
8b634ca374 Bug 91419 patch 4: Rename everything with IBSpecialSibling to IBSplitSibling. r=mats 2014-02-06 17:45:30 -08:00
L. David Baron
cd0efbde78 Bug 91419 patch 3: Rename everything with IBSplitSpecialSibling to IBSplitSibling. r=mats 2014-02-06 17:45:30 -08:00
L. David Baron
e39235572d Bug 91419 patch 1: Rename NS_FRAME_IS_SPECIAL to NS_FRAME_PART_OF_IBSPLIT. r=mats 2014-02-06 17:45:28 -08:00
Timothy Nikkel
4a8738b098 Bug 967758. Disable newly added assert because it is triggering too much. r=roc on a CLOSED TREE 2014-02-04 19:04:50 -06:00
Mats Palmgren
c669f3d5d1 Bug 946929 - Part 1, Don't schedule paint related events in a detached pres context. r=roc 2014-02-03 23:47:57 +00:00
Nicholas Cameron
6b051e893f Bug 700926. Use nsStyleImage and nsRenderingContext to draw border-images. r=roc 2014-01-31 16:36:41 +13:00
Robert O'Callahan
b0db78ef5b Bug 946502. Part 4: Remove mStickyPosFrame. r=mattwoodrow 2014-01-04 18:14:27 +13:00
Matt Woodrow
63c5bce3f8 Bug 946952 - Run a 'compressed' paint up to 1 second after skipping the ColorLayer optimization. r=roc 2014-01-30 18:41:17 +13:00
Kartikaya Gupta
7ff1a41a33 Bug 956690 - Ensure we descend into the root scroll frame if there is a displayport set. r=tn 2014-01-29 17:40:01 -05:00
Benoit Girard
965fb73dde Bug 940842 - 2/3 - Implement will-change in layers-building code - r=mattwoodrow 2013-11-22 13:14:34 -05:00
David Zbarsky
4fc4d18430 Bug 952977: Convert Layer's mTransform to gfx::Matrix4x4 r=nical 2014-01-27 10:29:06 -05:00
David Zbarsky
a76cd8cfcd Bug 952977: Convert SetBaseTransform to gfx::Matrix4x4 r=nical 2014-01-27 10:28:33 -05:00
Timothy Nikkel
6d096d724f Bug 962443. Make layout frame tree dumping code work better for Fennec and b2g. r=mats 2014-01-26 16:07:02 -06:00
Benoit Jacob
49238a878d Bug 959448 - Convert most of LayersTypes.h to typed enums - r=nrc
find content/media dom/ipc widget/ gfx/tests gfx/ipc/ gfx/layers/ layout/ -type f | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)LAYERS_\(NONE\|BASIC\|OPENGL\|D3D9\|D3D10\|D3D11\|CLIENT\|LAST\)\($\|[^A-Za-z0-9_]\)/\1LayersBackend::LAYERS_\2\3/g'

find widget gfx/layers/ layout/ -type f | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)BUFFER_\(NONE\)\($\|[^A-Za-z0-9_]\)/\1BufferMode::BUFFER_\2\3/g'

find widget gfx/layers/ layout/ -type f | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)BUFFER_\(BUFFERED\)\($\|[^A-Za-z0-9_]\)/\1BufferMode::\2\3/g'

find gfx/layers/ layout/ -type f | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)CLIP_\(DRAW\|DRAW_SNAPPED\)\($\|[^A-Za-z0-9_]\)/\1DrawRegionClip::\2\3/g'

find gfx/layers/ layout/ -type f | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)CLIP_\(NONE\)\($\|[^A-Za-z0-9_]\)/\1DrawRegionClip::CLIP_\2\3/g'

find gfx/layers/ layout/ -type f | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)SURFACE_\(NONE\|OPAQUE\|SINGLE_CHANNEL_ALPHA\|COMPONENT_ALPHA\)\($\|[^A-Za-z0-9_]\)/\1SurfaceMode::SURFACE_\2\3/g'

find gfx/ipc/ gfx/layers/ layout/ -type f | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)SCALE_\(STRETCH\|SENTINEL\)\($\|[^A-Za-z0-9_]\)/\1ScaleMode::\2\3/g'

find gfx/ipc/ gfx/layers/ layout/ -type f | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)SCALE_\(NONE\)\($\|[^A-Za-z0-9_]\)/\1ScaleMode::SCALE_\2\3/g'
2014-01-23 13:26:41 -05:00
Peiyong Lin
db78ce129a Bug 959874 - Reorder two parameters in nsContainerFrame::FinishReflowChild(), for consistency with nsContainerFrame::ReflowChild(). r=dholbert 2014-01-16 17:34:44 -08:00
Vivien Nicolas
7c9affaa7c Bug 942246 - Event fluffing fails to generate a click under certain conditions. r=smaug 2014-01-16 15:52:27 +01:00
Cameron McCormack
8c6833b0ae Bug 959016 - Add lldb Python command handlers for debugging Gecko, starting with frametree and frametreelimited. (DONTBUILD) r=ehsan 2014-01-14 09:24:22 +11:00
Mats Palmgren
a56486443d Bug 956447 - Make it possible to get frame dumps in non-DEBUG builds. r=roc 2014-01-05 23:31:14 +00:00
Ehsan Akhgari
86c8e10b97 Merge m-c into inbound 2014-01-04 12:14:57 -05:00
Ehsan Akhgari
68bfe70f09 Bug 927728 - Part 1: Replace PRUnichar with char16_t; r=roc
This patch was automatically generated by the following script:

#!/bin/bash
# Command to convert PRUnichar to char16_t

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*modules/libmar*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name prtypes.h \
       ! -name Char16.h \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert PRUnichar char16_t
2014-01-04 10:02:17 -05:00
Mats Palmgren
91910d2dc4 Bug 949294 - Mark the delegating frame as being IN_REFLOW while reflowing abs.pos. children. r=roc 2014-01-03 21:08:50 +00:00
Robert O'Callahan
c9130edf19 Bug 953438 - Change nsIFrame::HasTerminalNewline to HasSignificantTerminalNewline since it doesn't make sense to check for a newline that gets converted to regular whitespace. r=jfkthame 2014-01-02 16:22:12 -05:00
Robert O'Callahan
884af75bd9 Bug 945203. Part 4: Add nsDisplayEventRegions and build it when painting. r=mats 2013-12-17 00:22:11 +13:00
David Zbarsky
3bb08d3626 Bug 952977: Switch IsSVGTransformed to gfx::Matrix r=nical 2013-12-29 18:35:53 -05:00
Jonathan Kew
279981cdc3 bug 735577 - pt 4.1 - use accessor functions for some physical-coordinate fields in nsHTMLReflowMetrics, in preparation for logicalization. r=smontagu 2013-12-27 17:59:52 +00:00
Jonathan Kew
4796e463bc bug 735577 - pt 3.2 - update the rest of layout code to use the new accessors on nsHTMLReflowState. r=smontagu 2013-12-27 17:59:21 +00:00
Robert Longson
c032670925 Bug 940193 - rename nsSVGTextFrame2 to SVGTextFrame. r=dholbert 2013-12-20 16:38:51 +00:00
Morris Tseng
4998cc4c93 Bug 930056 - Force invalidate frame when displayitem is remote type. r=mattwoodrow 2013-12-16 08:37:34 -05:00
Cameron McCormack
55e2ecaeed Bug 947082 - List parent style context in frame tree dumps. r=mats 2013-12-11 17:13:20 +11:00
Corey Ford
de488cf4d0 Bug 916302 - Part 1: Generalize nsLayoutUtils::GetAllInFlowRects to support other types of frame rects beyond border rects. r=dholbert
This adds extra bits for the aFlags parameter to GetAllInFlowRects and GetAllInFlowRectsUnion, removes BoxToRect::GetRectFromFrameFun, and also adds a few more rect-getting methods to nsIFrame.
2013-12-03 11:13:16 -08:00
Cameron McCormack
f7f2c264fe Bug 945517 - Make nsIFrame::GetPseudoElementContent return Element* instead of nsIContent*. r=bz 2013-12-03 15:49:03 +11:00
Cameron McCormack
7f26a46040 Bug 944246 - Make getComputedStyle pass in anonymous content when resolving pseudo-element style. r=bz 2013-12-03 10:57:50 +11:00
Frédéric Wang
a9292ca365 Bug 415413 - Incorrect widths and heights of MathML with italics in table cells. r=karlt, r=roc 2013-11-25 09:20:20 -05:00
Matt Woodrow
bc9337741c Bug 882384 - Make sure the status panel always get its own layer. r=roc 2013-11-25 14:59:00 +13:00
Mats Palmgren
60a5785b84 Bug 941220 - Avoid calling GetVisualOverflowRectRelativeToSelf() multiple times to improve performance. r=roc 2013-11-23 21:47:26 +00:00
Jonathan Watt
bb7921650c Bug 889736, part 1 - Remove nsSVGTextFrame and nsSVGGlyphFrame. r=heycam 2013-11-18 14:29:51 +00:00
Robert O'Callahan
363ab757c4 Bug 919144. Part 8: Delete lots of code that's no longer needed. r=mattwoodrow
I never liked nsDisplayListBuilder::IsFixedItem anyway, its behavior and
naming was confusing. Also, it assumed there's only one viewport displayport,
on the rootmost document, and that's a bad assumption in general.
We're able to remove calls to ForceVisiblityForFixedItem because FrameLayerBuilder
is now responsible for inflating the visible region of the fixed-pos layers.
2013-09-27 18:01:16 +12:00