Commit Graph

431 Commits

Author SHA1 Message Date
Ehsan Akhgari
5febe4410c Bug 424627 - Ctrl+clicking on a text control border followed by an editing operattion (e.g. paste) removes the table cell from a non-editable document; r=roc a=blocking-final+ 2010-11-01 19:04:12 -04:00
Alexander Surkov
b049d3e67a Bug 570275 - rework accessible tree update code, r=marcoz, davidb, bz, a=blocking 2010-10-21 13:16:10 +09:00
Timothy Nikkel
9fa3e05ad4 Bug 599113. Part 3. Can't restrict invalidated rects to visible portion of a scroll frame if we retain content that might be outside the visible portion of the scroll frame. r=roc a=blocking-betaN+ 2010-10-14 20:03:46 -05:00
L. David Baron
cd40905288 When a frame is themed, report a border-radius of 0. (Bug 595652) r=roc a2.0=blocking2.0:betaN 2010-10-06 21:25:47 -07:00
L. David Baron
a56a24a514 Change callers to use new nsIFrame overflow APIs. (Bug 542595, patch 20) r=roc a2.0=blocking2.0:beta8 2010-10-06 21:25:47 -07:00
L. David Baron
40d60928c6 Fix miscellaneous reflow methods to use new overflow area APIs. (Bug 542595, patch 19) r=roc a2.0=blocking2.0:beta8 2010-10-06 21:25:46 -07:00
L. David Baron
bf7624301d Now that overflow areas are split, change nsIFrame::ComputeTightBounds to use visual overflow. While it really only needs to include frame bounds, glyph bounds, and text decorations, since glyph bounds are not part of scrollable overflow, it must use visual overflow. (Bug 542595, patch 15) r=roc a2.0=blocking2.0:beta8 2010-10-06 21:25:46 -07:00
L. David Baron
d86ede8347 Change FinishAndStoreOverflow API to take two overflow areas. (Bug 542595, patch 4) r=roc a2.0=blocking2.0:beta8 2010-10-06 21:25:45 -07:00
L. David Baron
9cc9011dcd Convert nsIFrame APIs from having a single overflow rect to having two distinct overflow rects. (Bug 542595, patch 1) r=roc sr=bzbarsky a2.0=blocking2.0:beta8 2010-10-06 21:25:45 -07:00
Boris Zbarsky
a7d2e54c98 Bug 129941 followup. Continue creating scrollframes for native anonymous content. a=crashing tests 2010-10-06 22:21:58 -04:00
Boris Zbarsky
280f2c88c6 Bug 129941. Don't create scrollframes for blockframes (except inline blocks) while printing, and make such blockframes clip their contents instead. r=dbaron 2010-10-06 21:01:24 -04:00
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
Jim Mathies
bd6651b892 Bug 513162 - Cleanup unused widget code and CID statics. r=vlad. 2010-06-24 21:01:06 -05:00
Jesse Ruderman
f04ef428cb Remove stray line breaks from NS_ERROR messages, since they interfere with log processing. rs=jst
--HG--
extra : rebase_source : 87421691da969e0ebe5fbfbc44cd8f18617d1351
2010-06-17 13:28:38 -07:00
Masayuki Nakano
6e00300d75 Bug 550434 Clicking in an empty contenteditable element that has focus causes the caret to disappear (alternative approach) r=roc 2010-06-14 12:11:30 +09:00
Daniel Holbert
c76f173bb3 Bug 571059: Update debugging printfs to treat nsFrameState objects as 64-bit & fix build warnings. r=dbaron 2010-06-10 11:26:57 -07:00
L. David Baron
d574dd00ce Use macros for frame state so that it's easy to change the size and easier to read the constants. (Bug 570837) r=roc 2010-06-08 22:28:14 -07:00
Ehsan Akhgari
d051ffeaed Bug 534785 - Move the ownership of editor and selection controller from the text frame to the content node; r=roc,jst sr=roc
(transplanted from 2437636244f39bbdc7d20b062e2c978b9d85c239)

--HG--
rename : layout/reftests/forms/placeholder/placeholder-14.html => layout/reftests/forms/placeholder/placeholder-18.html
extra : transplant_source : %247cbD%F3%9B%BD%C7%D2%0B%06.%2C%97%8B%9D%85%C29
2010-04-21 16:17:41 -04:00
Zack Weinberg
7dfad97c7a Bug 562093: Add reflow tracing for InitConstraints, InitOffsets, InitFrameType. r=dbaron 2010-05-01 14:40:16 -07:00
Markus Stange
5654a6a17c Bug 550889 - Don't pass negative values to SetComputedWidth/Height in nsFrame::BoxReflow. r=bzbarsky 2010-05-01 12:40:22 +02:00
Boris Zbarsky
4d2b5f13cc Bug 562688 part 11. Eliminate eELEMENT usage in layout/generic. r=dbaron 2010-04-30 09:12:06 -04:00
Neil Deakin
ceb1712f98 Bug 418521, improve the way focus indicators are displayed to correlate better with system behaviour, add -moz-focusring property to apply only when focus rings should be drawn, r=dao,jmathies,dbaron sr=neil 2010-04-21 10:53:42 -04:00
L. David Baron
d93e0789b9 Exit loop when needed. (Bug 497256) r=roc 2010-04-06 12:42:41 -07:00
Ehren Metcalfe
e0ac5d5547 Bug 556446: Remove dead code in layout. r=roc,bz 2010-04-03 07:36:19 -04:00
L. David Baron
68d7839f41 Make PaintBackgroundWithSC and related methods operate on nsStyleContext* rather than const nsStyleBackground*. (Bug 147777) r=zweinberg 2010-04-02 18:58:26 -07:00
Vivien Nicolas
8d0a5ca6d8 Bug 461843: Backout changes to avoid assertions but broke scrollbar margin support [r=roc] 2010-04-02 18:25:40 -04:00
Zack Weinberg
54ad0fb73a Bug 494117: Mechanically change 'ReParent' to 'Reparent' throughout the tree. r=bzbarsky 2010-04-01 23:07:43 -07:00
Masayuki Nakano
553922eee1 Bug 554822 Caret should refer the actual text color instead of the value of CSS color property r=roc 2010-04-01 11:35:48 +09:00
Masayuki Nakano
313a3bd180 Bug 554822 backout the previous patch 2010-04-01 02:31:06 +09:00
Masayuki Nakano
55bbbc0a73 Bug 554822 Caret should refer the actual text color instead of the value of CSS color property r=roc 2010-04-01 02:12:43 +09:00
Craig Topper
1921815643 Bug 253889: DeCOMtaminate nsIPresShell - IsPaintingSuppressed(). r=roc
--HG--
extra : rebase_source : 9ee8283e8bce33402893ae5316f89c9f699a1236
2010-03-31 08:43:49 -04:00
Kyle Huey
53dc79a0f8 Backing out Bug 253889 to fix Bug 555727. 2010-03-30 19:57:12 -04:00
Kyle Huey
afc6c6ca2d Backed out changeset 4b8936ac4a31 2010-03-30 19:56:44 -04:00
Craig Topper
6c9540a26d Bug 253889: More deCOMtamination of nsIPresShell. r=roc 2010-03-28 19:21:11 -04:00
Masayuki Nakano
9de2f77373 Bug 553975 Caret is painted under textframe in input/textarea element r=roc 2010-03-27 13:33:17 +09:00
Robert O'Callahan
51aea0b3ed Bug 545049. Capture the pre-transform overflow area of a frame and use it in InvalidateOverflowArea. r=mats 2010-03-29 14:46:58 +13:00
Robert O'Callahan
60dacfeed1 Bug 545049. When the overflow area of a transformed frame changes, we need to repaint the whole thing. r=mats 2010-03-29 14:46:58 +13:00
Robert O'Callahan
9a2ed61b34 Bug 551660. Switch layout code from using nsPropertyTable to FramePropertyTable. r=mats,sr=dbaron 2010-03-29 14:46:55 +13:00
Craig Topper
a956b85435 Bug 253889: DeCOMtaminate nsIPresShell r=roc 2010-03-20 17:54:19 -04:00
Neil Deakin
b5207640b3 Bug 544472, eliminate duplicate calls to AddCSS*** methods, plus some minor related code cleanup, r=dbaron 2010-03-18 15:58:15 -04:00
Mats Palmgren
549893b6d7 Bug 544852, part 1: Remove nsCaret::GetCaretCoordinates. r=roc 2010-03-14 23:52:07 +01:00
Jonas Sicking
c4106f7f22 Bug 534136 Part 2: Use 16bit-char buffers inside atoms. r=bz sr=mrbkap 2010-03-08 07:45:00 -08:00
Robert O'Callahan
f07ee1400d Bug 539323. Position the caret at the content-edge of its container frame, not the border-edge. r=mats 2010-03-05 11:52:59 +13:00
Boris Zbarsky
7b3f749b05 Bug 527977 followup. Fix build bustage. 2010-03-02 19:04:44 -05:00
Michael Ventnor
25bc9c7d85 Bug 542361 - Fix and remove the GetUsedX assertions r=roc
--HG--
extra : rebase_source : 6bdb0e3251e955ced01476a2255e9ebc511c884b
2010-03-02 11:57:43 +10:00
Jonas Sicking
51fbd0da83 Bug 544642: Make frames report an error event if the frame src is pointed at a local file url. And don't make setAttribute thrown an exception in that scenario. r=smaug 2010-02-24 18:45:43 -08:00
Robert O'Callahan
ae45815e53 Bug 545581. Stop checking view visibility at content/chrome boundary. r=mats
--HG--
extra : rebase_source : 57383fcc5138b4b4ff27619adaaec33fba38a3a2
2010-02-24 11:37:58 -08:00
Dão Gottwald
5bf54b4622 Backed out changeset 8c2e7ae5cceb because of test_bug398289.html failure 2010-02-04 17:16:39 +01:00
Michael Ventnor
2b0c157e9a Bug 542361 - Fix and remove the GetUsedX assertions. r=roc,dbaron 2010-02-04 14:58:02 +01:00
Robert O'Callahan
6787212ae4 Bug 539331 - browser_sanitizeDialog.js is failing, r=matspal 2010-01-14 05:00:00 -08:00
Robert O'Callahan
df694cae49 Bug 534433. Destroy all nsImageLoaders when the prescontext is torn down. r=mats 2010-01-14 15:30:05 +13:00