Commit Graph

370 Commits

Author SHA1 Message Date
Robert O'Callahan
594cd74d3d Bug 584494. Avoid creating opacity/transform wrappers for empty lists. r=tnikkel a2.0=blocking2.0:betaN 2010-09-17 12:29:52 -07:00
Ehsan Akhgari
dae8839f12 Bug 596506 - Going to end of line using Ctrl-e on Mac positions caret after newline in textareas; r=bzbarsky a=blocking-final+ 2010-09-16 14:40:26 -04:00
Ehsan Akhgari
8c0a628bb6 Bug 240933 - Part 3: Correct the caret movement throughout textareas (and pre elements with caret browsing turned on as well); r=roc a=dbaron
--HG--
extra : rebase_source : 9f015607bc84a11137ab11ba47c14e98c20e3970
2010-07-13 21:49:16 -04:00
L. David Baron
344df4887f Simplify storage of computed calc() as a result of removing min() and max(). (Bug 363249) r=bzbarsky a2.0=blocking2.0:beta6 2010-09-11 09:27:13 -07:00
L. David Baron
fa356d0a17 Remove support for min() and max() in calc(): remove support for parsing and storage. (Bug 363249) r=bzbarsky a2.0=blocking2.0:beta6 2010-09-11 09:27:12 -07:00
L. David Baron
b272e35a61 Change the blur radius for -moz-box-shadow and text-shadow to match what is specified in css3-background, and the blur radius for canvas to follow what is specified in HTML5. (Bug 590039) r=roc a2.0=blocking2.0:beta6
This fixes the multiplication by 1.5 in
gfxAlphaBoxBlur::CalculateBlurRadius (originally added in changeset
ce9f05b57b95 for bug 467518) to work correctly.  It was previously a
multiplication by 1 due to integer division.  CalculateBlurRadius
previously multiplied by 1.880; it now multiplies by 2.820.

This changes canvas shadow handling to multiply shadowBlur by 2 before
taking its square root, as described in the spec.  This means that
canvas shadow blurs 8px or smaller are 1.5 times larger than they were
previously (due to the CalculateBlurRadius change), and canvas shadow
blurs larger than 8px are 2.121 times larger than they were previously
(due to the CalculateBlurRadius change *and* the additional factor of
sqrt(2)).

This changes text-shadow and -moz-box-shadow handling to use
CalculateBlurRadius on half of the value given instead of passing the
value through directly.  This means that text-shadow and box-shadow
blurs are multiplied by 1.410 relative to their old sizes.  It also
means that we round rather than floor, so that the effect that used to
be drawn by a blur in the range 1px to 1.99px is now drawn by a blur
anywhere in the range 0.36px to 1.05px, the effect that used to be drawn
by a blur in the range 2px to 2.99px is now drawn by a blur anywhere in
the range 1.06px to 1.77px, what used to be a drawn by a blur in the
range 3px to 3.99px is now drawn by a blur anywhere in the range 1.78px
to 2.47px, etc.
2010-09-11 09:27:12 -07:00
L. David Baron
d99ac32acf Clip replaced elements (for now, images, canvases, videos, and windowless plugins) to the border radius. (Bug 485501) r=roc a2.0=blocking:beta6 2010-09-09 08:21:47 -07:00
L. David Baron
d44b4ee882 Clip contents of elements with overflow != visible to the border radius. (Bug 459144, patch 14) r=roc a2.0=blocking2.0:beta6 2010-09-09 08:21:46 -07:00
L. David Baron
27b2504e3c Make nsIFrame::DisplaySelectionOverlay take an nsDisplayList* instead of nsDisplayListSet&. (Bug 485501) r=roc a2.0=blocking:beta6 2010-09-09 08:21:46 -07:00
L. David Baron
4113d6f1f9 Remove unneeded nsAbsPosClipWrapper::mContainer. (Bug 459144, patch 12) r=roc a2.0=blocking2.0:beta6 2010-09-09 08:21:46 -07:00
L. David Baron
cec33102e4 Remove unneeded nsDisplayClip::mClippingFrame. (Bug 459144, patch 11) r=roc a2.0=blocking2.0:beta6 2010-09-09 08:21:46 -07:00
L. David Baron
f9bc2d9cef Fix places where I missed clamping negative calc() to 0. (Bug 585715) r=bzbarsky a2.0=blocking2.0:beta6 2010-09-09 08:21:46 -07:00
L. David Baron
8aaf22a0f4 Add support for calc() on -moz-border-radius and -moz-outline-radius. (Bug 585715) r=bzbarsky a2.0=blocking2.0:beta6 2010-09-09 08:21:45 -07:00
L. David Baron
4f34aba74d Add border-radius-related helper functions to nsIFrame. (Bug 459144, patch 6) r=roc a2.0=blocking:beta6+ 2010-09-07 15:20:35 -07:00
L. David Baron
fb568df1f4 Move clamping of border-radii that are too big from nsCSSRendering::ComputePixelRadii to nsIFrame::ComputeBorderRadii. This also fixes a bug in nsDisplayBoxShadowOuter::ComputeVisibility. (Bug 459144, patch 5) r=roc a2.0=blocking:beta6+ 2010-09-07 15:20:35 -07:00
L. David Baron
59ce09e952 Move skip-sides handling from nsCSSRendering::ComputePixelRadii to nsIFrame::ComputeBorderRadii. This fixes a bug (ignoring skip-sides) in nsDisplayBoxShadowOuter::ComputeVisibility, and improves the no-border-radius optimizations when skip-sides allow us to take them. (Bug 459144, patch 3) r=roc a2.0=blocking:beta6+ 2010-09-07 15:20:34 -07:00
L. David Baron
228dbed13a Make nsIFrame::ComputeBorderRadii take an nsSize instead of two nscoords. (Bug 459144, patch 2) r=roc a2.0=blocking:beta6+ 2010-09-07 15:20:34 -07:00
L. David Baron
452d0afadd Move nsCSSRendering::GetBorderRadiusTwips to nsIFrame and rename it to ComputeBorderRadii. (Bug 459144, patch 1) r=roc a2.0=blocking:beta6+ 2010-09-07 15:20:34 -07:00
Ehsan Akhgari
7b654288bf Back out bug 240933 and bug 590554 because of reftest failure on Win7 and also bug 593211 2010-09-02 19:54:23 -04:00
Ehsan Akhgari
8b538d8a3a Bug 240933 - Part 3: Correct the caret movement throughout textareas (and pre elements with caret browsing turned on as well); r=roc a=dbaron
--HG--
extra : rebase_source : 198f679bb5cea82b710c921576fa44c59f77aa23
2010-07-13 21:49:16 -04:00
Robert O'Callahan
7db127ab8d Bug 584494 - Regression: Transform rotation testcase performs significantly worse - r=dbaron 2010-09-02 14:07:37 -04:00
L. David Baron
ed01917887 Add support for calc() to the '{margin,padding}-{top,right,bottom,left}' and '-moz-margin-{start,end}' properties. (Bug 585715) r=bzbarsky a2.0=blocking:beta6+ 2010-08-31 12:05:12 -04:00
Robert O'Callahan
c7acef03ff Bug 579323. Part 1.8: Rename InvalidateOverflowRect to InvalidateFrameSubtree. r=tnikkel
--HG--
rename : layout/generic/nsFrameFrame.cpp => layout/generic/nsSubDocumentFrame.cpp
extra : rebase_source : f7bd38670a03e8a7f3f8c40838af114be79b06f1
2010-08-31 12:49:12 +12:00
Robert O'Callahan
f566520efb Bug 579323. Part 1: Add FrameLayerBuilder::InvalidateThebesLayersInSubtree, and call it from InvalidateOverflowRect. r=tnikkel,sr=dbaron
--HG--
extra : rebase_source : c1dbc5b625e23d55ba030709f5cd429122977685
2010-08-31 12:46:26 +12:00
L. David Baron
a9774b11d6 Make IsAutoHeight be a member of nsLayoutUtils so we don't have to have two copies of it. (Bug 585715) r=bzbarsky a2.0=blocking+ 2010-08-25 12:17:56 +02:00
L. David Baron
091d6b7837 Add support for calc() to the 'height', 'min-height', and 'max-height' properties. (Bug 585715) r=bzbarsky a2.0=blocking+ 2010-08-25 12:17:55 +02:00
Robert O'Callahan
794cc06f63 Bug 581222. Back out patch that disabled box-shadows for native-themed content elements.
--HG--
extra : rebase_source : 4685dfdddd9e0bf1ed9e5f8401d6bc73b91a5600
2010-08-23 21:30:07 +12:00
Robert O'Callahan
a581cd6197 Bug 584282. Add nsDisplayItem::mToReferenceFrame and initialize it in the constructor. r=tnikkel,a=dbaron
--HG--
extra : rebase_source : 496cbde7c495eb8872c3d0ffc0ca4c57c2a6a777
2010-08-13 22:01:13 +12:00
Timothy Nikkel
cc09403fac Bug 587542. If painting is suppressed in the presshell, drop invalidations that come through the view subsystem as well as through the usual frame invalidation path. r=roc 2010-08-18 20:16:58 -05:00
Bobby Holley
20c25243b6 bug 512260 - part 5 - make nsCursorImage::mImage private, add getter/setter, and lock images in the setter.r=dbaron,a=blocker 2010-08-16 12:19:26 -04:00
Robert O'Callahan
f8dc984ede Backing out bug 584282 and bug 537890 2010-08-14 02:35:06 +12:00
Markus Stange
438fa8a236 Bug 506826 - Invalidate -moz-element rendering observers when necessary. r=roc 2010-08-13 15:36:13 +02:00
Markus Stange
2ea78354c5 Bug 572689 - Make nsSVGRenderingObservers observe elements instead of frames. r=roc 2010-08-13 15:31:31 +02:00
Robert O'Callahan
0b542b46ed Bug 579258. Remove the 'before move' region parameter to ComputeVisibility. r=tnikkel,a=joe 2010-08-13 21:55:54 +12:00
Timothy Nikkel
495b7af67e Bug 582754. Remove cross doc check in nsIFrame::GetOffsetTo. r=mats a=dbaron 2010-08-08 13:49:06 -05:00
Robert O'Callahan
6ea38bb418 Bug 584282. Add nsDisplayItem::mToReferenceFrame and initialize it in the constructor. r=tnikkel,a=dbaron 2010-08-13 22:01:13 +12:00
Timothy Nikkel
eaf04d25f4 Bug 563878. Part 15. Fix GetOffsetTo callsites. r=mats 2010-07-18 21:23:48 -05:00
Timothy Nikkel
460def762d Bug 563878. Part 7. Change frame, point, rect, region APIs. r=mats sr=roc 2010-07-18 21:23:47 -05:00
Robert O'Callahan
27f182eeac Bug 564991. Part 42: When the root frame changes size, invalidate the changed area. r=tnikkel 2010-07-16 09:08:12 +12:00
Robert O'Callahan
2b0f4a408a Bug 564991. Part 38: Make invalidation-during-paint work reliably. r=mats,sr=dbaron 2010-07-16 09:08:11 +12:00
Robert O'Callahan
1cbc86420d Bug 564991. Part 25: Introduce a 'has active layers' flag on frames, which times out, and use it for 'opacity'. r=mats,sr=dbaron 2010-07-16 09:08:06 +12:00
Robert O'Callahan
1917c1d836 Bug 564991. Part 13: Optimize invalidation to avoid repainting ThebesLayer contents sometimes. r=mats,sr=dbaron 2010-07-16 09:07:53 +12:00
Robert O'Callahan
fa45207070 Bug 564991. Part 7: Create Begin/EndDeferredInvalidates API so we can catch and defer invalidates on frames (and suppress certain areas completely). r=mats,sr=dbaron 2010-07-16 09:07:50 +12:00
Michael Ventnor
8139bee929 Bug 564991. Part 3: Create unique nsDisplayItem types for every single display item. r=tnikkel 2010-07-16 09:07:49 +12:00
Robert O'Callahan
a7c0fe60ac Bug 564991. Part 2: Create retained layer API: methods on FrameLayerBuilder that frames can use to access, reuse and invalidate retained layers. r=mats,sr=vlad 2010-07-16 09:07:46 +12:00
Mats Palmgren
a1c32a5075 Bug 556432 - Dragging a content selection shows non-selectable text in the drag feedback. r=roc 2010-07-12 22:24:33 +02:00
Timothy Nikkel
976046bf62 Bug 563878. Part 5. Rename nsIFrame::GetWindow(Offset) to GetNearestWidget. r=mats 2010-07-02 14:11:04 -05:00
Alexander Surkov
1b2bbba526 Bug 573706 - make frame based accessible creation more pellucid, r=davidb, sr=roc 2010-06-28 21:02:03 +09:00
Robert O'Callahan
9411b2cc9f Bug 572914. Overflow areas for theme backgrounds should not be clipped by -moz-hidden-unscrollable. r=dbaron 2010-06-28 12:28:21 +12:00
Timothy Nikkel
c25a766301 Bug 574756. Make sure nsIFrame::List outputs the stylecontext of the frame. r=dbaron 2010-06-25 16:51:17 -05:00