Commit Graph

581 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
Robert O'Callahan
68f4784a75 Bug 526394. Part 36: Store the overflow area explicitly whenever it's not exactly equal to the border-box; if they're both empty but with different dimensions or position, we should still store the explicit overflow area. Also fix test_offsets to compute the expected scrolled area correctly. r=mats 2010-01-12 10:45:21 +13:00
Robert O'Callahan
b5f5b11c36 Bug 526394. Part 33: Remove nsScrollPortView etc. r=mats 2010-01-12 10:45:20 +13:00
Robert O'Callahan
dd085808e4 Bug 526394. Part 32: Remove code that only existed so that scrollframes could have views. r=mats 2010-01-12 10:45:19 +13:00
Robert O'Callahan
88521a102c Bug 526394. Part 29: Create new nsLayoutUtils methods and remove useless code from nsListControlFrame::CaptureMouseEvents. r=mats 2010-01-12 10:45:18 +13:00
Robert O'Callahan
c814462e8a Bug 526394. Part 26: Rework nsSelection to use frames only. r=mats 2009-09-10 17:16:18 +12:00
Bernd
f4a1800dfb bug 43178 - replace incorrect border, frame and rules handling code in content by css rules, initial patch - fantasai, a lof of input - bz r=bzbarsky 2010-01-09 16:33:03 +01:00
Boris Zbarsky
b3883855ac Bug 500882 part 5. Switch layout module to using the new GetPrimaryFrame API. r=roc 2009-12-24 16:20:06 -05:00
Boris Zbarsky
b2e4054198 Bug 500882 part 2. Switch setting of primary frames to the new API; switch nsFrameManager::GetPrimaryFrameFor to the new API; remove resulting gobs of dead code. r=roc 2009-12-24 16:20:05 -05:00
fantasai
1ffb0c06ef Bug 508473 part III: Pass destruction root to frame destruction methods r=bz sr=roc 2009-12-24 00:21:15 -05:00
fantasai
1e880721fb Bug 508473 Part II: Remove DeletingFrameSubtree r=bz sr=roc 2009-12-24 00:20:41 -05:00
L. David Baron
5de5dfea69 Fix behavior of -moz-box-shadow on flexible non-flexbox children of flexboxes. (Bug 531098) r=roc 2009-12-13 19:40:55 -08:00
L. David Baron
c04a2d4b08 Make box-shadow cause only the overflow it needs and not add on additional overflow. (Bug 514917) r=roc 2009-12-13 19:40:55 -08:00
L. David Baron
b329d30aef Fix bustage from bug 530686. 2009-12-12 12:06:12 -08:00
Robert O'Callahan
19da2f1872 Bug 530686. Only create an nsDisplayTableBorderBackground when it's going to have something to paint, since having one can disable some scrolling optimizations. r=dbaron 2009-12-12 10:50:30 -08:00
Olli Pettay
2f4c5ea761 Bug 487667 - Clone documents for printing, r=roc+jst+joe+dbaron
--HG--
extra : rebase_source : dbab242066ba97c0d7f34a2fb701a1c465f26ec4
2009-12-10 20:02:13 -08:00
Mats Palmgren
125c079acd Bug 526769. r=roc a1.9.2=dbaron 2009-11-24 20:29:48 +01:00
Daniel Brooks
c475f3a770 merge for bug 528796 2009-11-16 08:51:51 -06:00
David Bolter
ae4129ee61 Bug 525579 - topcrash [@ nsAccessibilityService::GetAccessible(nsIDOMNode*, nsIPresShell*, nsIWeakReference*, nsIFrame**, int*, nsIAccessible**)] (thanks dbaron) r=roc,surkov 2009-11-16 09:03:53 -05:00
Daniel Brooks
71475216c7 bug 528796 - nsIBoxObject::GetScreenX/Y returns device pixels, not css pixels 2009-11-15 10:16:44 -06:00
Boris Zbarsky
18898e8da4 Bug 501847 part 1. Some preparatory cleanup of GetIBSpecialSiblingForAnonymousBlock. r=roc 2009-09-18 14:00:20 -04:00
Jeff Walden
9e35e4594c Bug 509329 - Various issues with invalidation of backgrounds propagated from body to the canvas, and with sized backgrounds. r=dbaron
--HG--
extra : rebase_source : ade87923afbccfb4c4b5016d8421aae57c4b0e4e
2009-10-22 16:46:08 -07:00
Boris Zbarsky
5215a681c7 Bug 525295. Rename nsStyleContext::GetPseudoType to GetPseudo. r=dbaron 2009-10-29 17:17:56 -04:00
Robert O'Callahan
e7c528888e Bug 522394. Don't bother descending into zero-opacity content when constructing display list. r=dbaron 2009-10-27 14:43:55 +13:00
Boris Zbarsky
4fc405cefa Bug 512336. Make frame lists doubly-linked. r=roc,fantasai 2009-10-02 12:27:37 -04:00
Robert O'Callahan
794f4fa11d Bug 508495. Remove CreateWidgetForView from nsIFrame and nsObjectFrame since it's no longer used there. r=dbaron
--HG--
extra : rebase_source : c400af6f507ea046e952b9c612dc2d7fca00ff91
2009-09-30 07:32:43 +10:00
Robert O'Callahan
d56dfa741e Bug 513082. Instead of passing aDirtyRect to nsDisplayItem::Paint, have nsDisplayList::OptimizeVisibility (renamed to ComputeVisibility) compute the intersection of the visible region with the bounds of each display item and store the result in the item's mVisibleRect. This lets us do less work to paint display items which have a small intersection with the visible region but a large intersection with the bounding-box of the visible region. r=dbaron
--HG--
extra : rebase_source : 76db4b87ef9e5a6e9de7677edc08c26e2cbc462e
2009-09-07 12:35:14 +12:00
Robert O'Callahan
79306e31ef Bug 442715. Invalidate the whole border-box when an element's size changes and its background is being clipped by a border-radius. r=dbaron
--HG--
extra : rebase_source : b9e738ebd64cbcc871a7d1a7178e1eccf64e66f1
2009-09-25 11:52:13 +12:00
David Zbarsky
8d8553ee41 Bug 488249. Replace IsNodeOfType(eHTML) checks with namespace checks. r+sr=jst 2009-08-24 16:02:07 -04:00
Robert O'Callahan
6de615de1b Bug 510110. Extend MozAfterPaint event to contain list of PaintRequest objects with information about individual invalidations. r=dbaron,sr=jst
--HG--
extra : rebase_source : 0e8b9f424d50c2d9e346f7ff15834202a6c101d1
2009-09-04 16:49:18 +12:00
Mats Palmgren
4e06ef038e Bug 233463, patch 5 - Remove nsFrameList(nsIFrame*) ctor. r=bzbarsky 2009-09-18 13:09:36 +02:00
Mats Palmgren
90fe0851f3 Bug 233463, patch 4 - Make nsIFrame::mNextSibling private. r=bzbarsky 2009-09-18 13:09:36 +02:00
Mats Palmgren
377056c269 Bug 233463, patch 2 - Introduce nsFrameList::mLastChild member for fast access to the last sibling frame. r=bzbarsky 2009-09-18 13:09:36 +02:00
Mats Palmgren
948203eb7d Replace PR_MIN/PR_MAX with NS_MIN/NS_MAX. b=512106 r=roc 2009-09-16 17:01:36 +02:00
Zack Weinberg
1bbb6caf46 Bug 497495 (frame poisoning) part 4: Change nsPresArena to maintain separate free lists for every frame class, based on its FrameIID. Pass the necessary information in from AllocateFrame and FreeFrame. r=roc sr=dbaron 2009-09-16 10:00:04 +12:00
Justin Dolske
f221ae86bd Backed out changeset a3f33def2dca (bug 497495 part 4) 2009-09-14 17:26:08 -07:00
Boris Zbarsky
efc26f0c70 Bug 497495 (frame poisoning) part 4: Change nsPresArena to maintain separate free lists for every frame class, based on its FrameIID. Pass the necessary information in from AllocateFrame and FreeFrame. r=roc sr=dbaron 2009-09-14 17:29:56 -04:00
Neil Deakin
02a7469b05 Bug 503943, add mouse capturing api to elements, remove capturing from views, r=roc,sr=smaug 2009-09-13 09:13:16 -04:00
Bobby Holley
2d5ec55945 Bug 435296 - Decode-On-Draw. r=joe,roc,bz,dolske,peterw sr=vlad 2009-09-12 16:44:18 -06:00
Zack Weinberg
17eb5a6efc Bug 497495 part 3: Add methods to every nsFrame subclass that expose the as-allocated identity of every frame object. Also some cleanups to the QueryFrame implementation. r=dbaron sr=roc 2009-09-12 17:49:24 +01:00
Neil Deakin
a5bfe49767 Bug 503943, back out mouse capture patch, CLOSED TREE 2009-09-10 12:11:41 -04:00
Neil Deakin
2ca788ce33 Bug 503943, add mouse capturing api to elements, remove capturing from views, r=roc,sr=smaug 2009-09-10 08:51:36 -04:00
Markus Stange
e48beb49fa Bug 469774 - Never descend into nsMenuPopupFrames when building display lists. Fixes drawing bugs that occurred when a caret was visible in a popup. r=roc
--HG--
extra : rebase_source : 9979c98dd1e7dac3994f2b3b5401306656d0a3b7
2009-09-08 09:43:20 +12:00
Robert O'Callahan
85e1db093e Bug 503813. Events targeted at generated content frames should get the non-generated ancestor as target element. r=dbaron
--HG--
extra : rebase_source : ee218effc8b98ba19b9b2ce9ff29ce4e8dfe0a2e
2009-09-02 14:46:33 +12:00
fantasai
d5c48032c3 Bug 492627 - Remove Placeholder Continuations [Part V: Reimplement float splitting without placeholder continuations] r=roc 2009-08-31 11:25:36 -07:00
fantasai
973c4e83aa Bug 492627 - Remove Placeholder Continuations [Part IV: Switch float layout APIs to pass float directly, without placeholder] r=roc 2009-08-31 11:25:35 -07:00
Robert O'Callahan
75dc1beb9c Backed out changeset e2927bb26412 2009-08-26 14:49:18 -07:00
Zack Weinberg
18c763f2c5 Bug 497495 part 3a: rationalize the queryframe-implementation macro naming scheme, restructure the implementation to detect duplicate entries, and a couple fixes to the frame ID enumeration. r=dbaron sr=roc
Bug 497495 part 3b: update users of queryframe macros (strictly mechanical change). r=dbaron

--HG--
extra : rebase_source : ee672a17934227b408b83dc6b5cc4e4909652f72
2009-08-26 09:27:42 -07:00
Boris Zbarsky
36622c6995 Backed out changeset 4aa19414e651 (bug 488249) to fix test orange.
--HG--
extra : rebase_source : ae1c0155ec32b0887eff27ded77c6ba2b37dda64
2009-08-24 20:51:57 -04:00
David Zbarsky
932e28482f Bug 488249. Replace IsNodeOfType(eHTML) checks with namespace checks. r+sr=jst 2009-08-24 16:02:07 -04:00
Ryo Kawaguchi
54bb0a0d80 Implement background-image: -moz-image-rect(), which allows a region of an image to be used as a background image. (Bug 113577) r=roc, dbaron 2009-08-21 13:39:25 -07:00
Zack Weinberg
2cd31f70f9 Bug 510651: Fold nsIFrameDebug into nsFrame. r=dbaron sr=mrbkap 2009-08-20 14:52:48 -07:00
Zack Weinberg
cc794998ac Bug 497495 (frame poisoning) part 2: Introduce nsIPresShell::AllocateMisc/FreeMisc functions; add an as-yet-unused "code" parameter to AllocateFrame/FreeFrame; fix up nsFrame to match; use AllocateMisc/FreeMisc for all non-frame pres arena objects; move clearing of frame objects from nsFrame::operator new to AllocateFrame. r=roc sr=dbaron 2009-08-17 20:21:06 -07:00
Hashem Masoud
c8f711113e Bug 489502 - Replace NS_ASSERTION(0, ...) by NS_ERROR(...) in mozilla-central; r=benjamin 2009-08-14 16:09:00 +02:00
Robert O'Callahan
14c9b93519 Bug 507334, part 1: Remove nsDisplaySummary optimization, since it introduces extra display items that would disable the optimizations in part 2. r=dbaron 2009-08-13 19:09:50 -07:00
Robert O'Callahan
cba39f15c7 Bug 504524. Change signature of nsIFrame: of nsIFrame::CharacterDataChanged to support passing of the full CharacterDataChangeInfo struct. r=bz
--HG--
extra : rebase_source : cdab9444f579d6b93e142ad8681152ecd180f818
2009-08-05 13:38:10 +12:00
Robert O'Callahan
a4fec52cd4 Bug 506615. XUL decks should not have wididgets. r=dbaron 2009-07-30 14:54:42 +12:00
Michael Ventnor
8ae6cd75f4 Bug 479220: Implement support for CSS gradients: -moz-linear-gradient() and -moz-radial-gradient(). r=roc, dbaron 2009-08-01 08:53:40 -07:00
Dão Gottwald
bf4108370b Backed out changeset c086fca6fc55 2009-07-31 14:35:48 +02:00
Michael Ventnor
61ed5fe1e2 Bug 479220 - Implement the CSS gradients proposal. r=roc,dbaron sr=roc 2009-07-31 13:32:32 +02:00
Boris Zbarsky
f2936464e5 Bug 281387. Make nsIFrame::Append/InsertFrames use nsFrameList. r=bernd,roc, sr=dbaron 2009-07-30 13:23:32 -04:00
Robert O'Callahan
c4703dc12d Backed out changeset c353fe809be0 2009-07-30 22:06:02 +12:00
Robert O'Callahan
ad539ed40b Bug 506615. XUL decks should not have wididgets. r=dbaron
--HG--
extra : rebase_source : 5d6728b11a121565f828f27e8abed5e0172aa069
2009-07-30 14:54:42 +12:00
Robert O'Callahan
b26bf31d5e Bug 467914. GetOverflowRectRelativeToSelf shouldn't always expect a preEffectsBBox. r=dbaron
--HG--
extra : rebase_source : cc6cd0bf3f4b11785b85baeaf74bd9ef7725c42f
2009-07-30 14:48:13 +12:00
Boris Zbarsky
209e31bf48 Relanding bug 496823 in the hopes that it's not causing the XP Txul issue.
--HG--
extra : rebase_source : 593d43b5c229e077e4454d848dba59265dee6b58
2009-07-29 08:53:27 -04:00
Boris Zbarsky
b4eb9b7084 Backed out changeset 622a29736f33 to see whether bug 496823 causes the WinXP Txul regression.
--HG--
extra : rebase_source : 450a2a83442a2326e303f97ad82d8213fbe11490
2009-07-28 14:35:28 -04:00
Boris Zbarsky
5fefb45a48 Bug 504221 part 12. Switch SetInitialChildList to nsFrameList. r=fantasai, r+sr=roc 2009-07-28 08:53:20 -04:00
Boris Zbarsky
db6ff446ab Bug 504221 part 5. Switch from GetFirstChild to GetChildList (returning an nsFrameList). For now, keep a GetFirstChild shim so callers don't have to be updated. r=fantasai, r+sr=roc 2009-07-28 08:51:09 -04:00
Boris Zbarsky
34df7918a4 Bug 496823. Blocks can implement GetLastChild() much faster than by just getting first child and iterating its siblings. r=roc 2009-07-26 21:27:32 -04:00
Robert O'Callahan
4ef62fb0ed Bug 371839. Remove ParentDisablesSelection, which is effectively unused. r=bzbarsky
--HG--
extra : rebase_source : 920c501f033e026709ec15792cadbb2f24462a0a
2009-07-27 10:06:30 +12:00
Robert O'Callahan
14dbcb0874 Bug 371839. Simplify SetSelected signature and semantics, and reimplement it in nsTextFrame much more efficiently. r=bzbarsky
--HG--
extra : rebase_source : 18c390e3ebd09de82b1a23699c56b741f928ca37
2009-07-27 10:05:41 +12:00
Robert O'Callahan
fb7ad45e60 Bug 371839. Remove useless SetSelected implementations. r=bzbarsky
--HG--
extra : rebase_source : 57629a43328f3dbc97a5d0595186a32150722db4
2009-07-27 10:03:16 +12:00
Robert O'Callahan
edefa6fb61 Bug 339548. Part 14: hide windowed plugins in CSS transforms and SVG foreignObject contexts; we can't display them properly, so let's not display them at all. r=dbaron 2009-07-22 12:45:14 +12:00
Robert O'Callahan
97b9409ae1 Bug 352093. Part 6: make GetScreenRect work when appunits-per-dev-pixel varies up the frame tree. r=dbaron 2009-07-22 12:45:06 +12:00
Robert O'Callahan
c1e47bdb51 Bug 505184. Expose nsFrame::DisplayBackgroundUnconditional so we can easily create an nsDisplayBackground elsewhere. r=dbaron 2009-07-22 12:44:51 +12:00
Joe Drew
6c441f55f7 Bug 753 - Remove nsIImage, gfxIImageFrame, and their implementations, and expose an equivalent api on imgIContainer. r=roc,josh,bz,longsonr,vlad,karlt,jimm,bsmedberg,mfinkle,peterw,peterv sr=vlad,roc
--HG--
rename : gfx/src/shared/gfxImageFrame.cpp => modules/libpr0n/src/imgFrame.cpp
rename : gfx/src/shared/gfxImageFrame.h => modules/libpr0n/src/imgFrame.h
2009-07-20 18:50:15 -07:00
L. David Baron
0d06184f97 Remove support for fallback background colors. (Bug 496721) r+sr=bzbarsky 2009-06-16 08:00:20 -07:00
Neil Rashbrook
9805c029f6 Bug 458231 Frame overflow plays havoc with size of <label> or <description> r+sr=roc r=dao for backout of workaround for bug 69710 2009-06-12 08:33:51 +01:00
Timothy Nikkel
13f0179fd9 Bug 491848. Ensure scripts are blocked during frame destruction. Also, don't dispatch paint events during a synchronous plugin message. r=roc 2009-05-15 15:08:41 +12:00
Robert O'Callahan
f34b7ae2c5 Bug 492480. Unregister placeholder relationship when we destroy out-of-flow frames, instead of trying to do it earlier in many places and not always doing it right. r+sr=dbaron
--HG--
extra : rebase_source : c9bedc1d7482b9c7ccf2878caded9320b92eb652
2009-05-14 09:35:02 +12:00
Daniel Holbert
0947631c3a Bug 490909: Remove old layout debugging code, patch #2: remove 'VerifyTree' & related code. r+sr=dbaron 2009-05-12 12:03:09 -07:00
Ryo Onodera
5e72993bff Bug 489485. nsRect::ToNearest/Inner/OuterPixels should be nonstatic. r+sr=roc
--HG--
extra : rebase_source : 13778709270ab926e951a7782fce3632370ef7c7
2009-05-08 14:31:04 +12:00
Robert O'Callahan
d827a42b82 Bug 488901. When an element's size changes and it has borders, we don't necessarily need to invalidate the entire border-box --- if there is no right or bottom border, and other conditions are met. r+sr=dbaron
--HG--
extra : rebase_source : 24306ec844dab873cc9b580f32a383f0ccb769a5
2009-05-08 13:52:22 +12:00
Robert O'Callahan
52b90a658d Bug 485121. The screen coordinates for an element should be snapped to the nearest screen pixel, not rounded out, for consistency with the way we position native widgets and snap rectangle drawing. r=dbaron
--HG--
extra : rebase_source : 6fd7efc5516702118e5207b2ff8150dc1859c3e4
2009-04-10 13:15:47 +12:00
Simon Montagu
78c48d14b7 Enable bidi when a frame has right-to-left direction during style post-processing instead of frame construction to catch dynamic changes to direction. Bug 489517, r+sr=dbaron 2009-04-23 09:09:47 +03:00
Robert O'Callahan
f6094f2796 Backed out changeset b5f88bffb072 2009-04-12 00:38:16 +12:00
Robert O'Callahan
4104983df9 Bug 485121. The screen coordinates for an element should be snapped to the nearest screen pixel, not rounded out, for consistency with the way we position native widgets and snap rectangle drawing. r=dbaron
--HG--
extra : rebase_source : d76f8fa9b8b9096ad833708a913e9af05b22dcea
2009-04-10 13:15:47 +12:00
Zack Weinberg
01403e2fa3 Bug 487831: Remove nsBox::(Get|Set)WasCollapsed, which are totally unused. r+sr=dbaron 2009-04-10 13:29:50 -07:00
Jonathan Kew
bdab93a7ca Bug 475968. Eliminate NS_FRAME_OUTSIDE_CHILDREN flag, store small overflow areas cheaply within the frame. r+sr=roc 2009-04-06 12:31:50 +12:00
Robert O'Callahan
2739cdda29 Bug 476062. Don't suppress box-shadows on elements with -moz-appearance in chrome documents. r+sr=dbaron 2009-04-06 11:35:53 +12:00
Robert O'Callahan
160bdca11d Bug 476062. Instead of turning off -moz-appearance when an element has a box-shadow, just ignore the box-shadow. r+sr=dbaron
--HG--
extra : rebase_source : 68e79ec44afd089b93870a5d87ea549d5f04b9d6
2009-04-01 14:07:18 +13:00
Olli Pettay
e92fe0f37a Bug 484238 - no click event generated when div is clicked, r+sr=roc 2009-03-30 13:12:35 +03:00
Robert O'Callahan
49ff0034cc Bug 485030. Don't restrict BuildDisplayList's dirty rect to a child's overflow area; then we can use the passed-in dirty rect to optimize the 'ignore scroll frame' case. r=dbaron
--HG--
extra : rebase_source : a0c489c3b33ccaf762293da7537d909f85d88782
2009-03-30 13:29:36 +13:00
Arpad Borsos
b8c7bb681a Bug 481881 - use better template arguments for nsTArray<T> after bug 474369, layout part; r+sr=roc 2009-03-12 08:26:29 +01:00
Olli Pettay
68a0322fcd Bug 478245 - Crash [@ nsEventStateManager::PreHandleEvent], r+sr=dbaron 2009-03-11 17:43:08 +02:00
Karl Tomlinson
6a5bf5d169 backout dac7c3176b33 from bug 481881 2009-03-11 17:09:22 +13:00
Arpad Borsos
27f29d685d Bug 481881 - use better template arguments for nsTArray<T> after bug 474369, layout part r+sr=roc 2009-03-11 15:26:36 +13:00
Boris Zbarsky
2423744439 Bug 481688. Stop firing our DOMLink* events to content. r+sr=smaug 2009-03-06 13:12:20 -05:00
Peter Annema
e0d504dda0 Fix Firefox-Ports Solaris build bustage. 2009-02-22 08:38:52 -08:00
L. David Baron
fa9a21c33d Implement multiple background layers, implement fallback background color, and make -moz-background-inline-policy no longer be part of the background shorthand. (Bug 322475) r+sr=roc,bzbarsky 2009-02-19 21:29:21 -08:00
Zack Weinberg
6cd01999d3 Bug 470250 - draw middle border image even if the border width is zero on all four sides r+sr=dbaron 2009-02-20 17:13:47 +13:00
L. David Baron
2eb748571c Backed out changeset fde0b361f25e (bug 322475, main patch) due to Mac talos startup failures and hitting the NS_ABORT_IF_FALSE in SetupBackgroundClip, which may be related. 2009-02-19 13:51:46 -08:00
L. David Baron
d9ac02ed8c Implement multiple background layers, implement fallback background color, and make -moz-background-inline-policy no longer be part of the background shorthand. (Bug 322475) r+sr=roc,bzbarsky 2009-02-19 12:33:09 -08:00
L. David Baron
db9e9b7806 Construct all our image loaders when we create frames so that we can allow arbitrary numbers of image loaders per frame (for multiple background images). (Bug 322475) r+sr=bzbarsky 2009-02-19 11:03:28 -08:00
L. David Baron
a91aa25ab0 Back out all 8 changesets that I just landed (bugs 477959, 477961, 322475, 478899, 475215, 478156) again, because Talos Try server builds lie about which changesets they're testing. 2009-02-19 09:06:18 -08:00
L. David Baron
51ef1de194 Implement multiple background layers, implement fallback background color, and make -moz-background-inline-policy no longer be part of the background shorthand. (Bug 322475) r+sr=roc,bzbarsky 2009-02-19 07:29:28 -08:00
L. David Baron
a5c13ba6b5 Construct all our image loaders when we create frames so that we can allow arbitrary numbers of image loaders per frame (for multiple background images). (Bug 322475) r+sr=bzbarsky 2009-02-19 07:29:27 -08:00
Jeremy D. Lea
b9a1696e34 Bug 476726 - deCOMtaminate WidgetToScreen and ScreenToWidget; r+sr=roc
--HG--
extra : rebase_source : 4a35ccdcafbe8a0a9dded9f292a139b4679709e3
2009-02-18 16:11:49 -08:00
L. David Baron
8b207bcc51 Revert (back out) the previous 11 changesets (bugs 477959, 477961, 477963, 477962, 322475, 478899, 475215, 478156), due to Mac talos orange with (as usual) no useful diagnostic. 2009-02-18 18:59:47 -08:00
L. David Baron
366992262c Implement multiple background layers, implement fallback background color, and make -moz-background-inline-policy no longer be part of the background shorthand. (Bug 322475) r+sr=roc,bzbarsky 2009-02-18 17:13:25 -08:00
L. David Baron
29c43121c7 Construct all our image loaders when we create frames so that we can allow arbitrary numbers of image loaders per frame (for multiple background images). (Bug 322475) r+sr=bzbarsky 2009-02-18 17:13:24 -08:00
Serge Gautherie
5ec9f53e89 Backed out changeset: 719dca3419b5 2009-02-15 18:41:16 +01:00
Jeremy Lea
b82cdbd258 Bug 476726 - deCOMtaminate WidgetToScreen and ScreenToWidget; r+sr=roc 2009-02-15 17:41:06 +01:00
Michael Ventnor
b480b09ba3 Bug 476738. Implement 'inset' box-shadows. r+sr=roc,r=dbaron 2009-02-10 21:45:13 +13:00
L. David Baron
5fe09edd17 Remove nsStyleContext::DumpRegressionData, code that uses it, and code that exists only for it. (Bug 477522) r+sr=bzbarsky 2009-02-09 20:36:54 -08:00
Arpad Borsos
829f9f024a Bug 474369 - get rid of nsVoidArray; layout part; r+sr=roc 2009-02-03 15:42:18 +01:00
L. David Baron
c3eeb84be5 Fix whitespace in DisplayReflowExit. 2009-01-29 12:39:22 -08:00
Jeremy Lea
1800930122 Bug 448830. Make nsIntRect/nsIntMargin/nsIntSize/nsIntPoint different types from nsRect/nsMargin/nsSize/nsPoint different types for better compile-type unit checking. r+sr=roc
--HG--
extra : rebase_source : a331a9e49fbc5931f546919281fcca7f008ab615
2009-01-15 16:27:09 +13:00
Benjamin Smedberg
24e7cb1f78 Bug 396185 - Make nsIFrame derivatives and helper abstract classes use a different dynamic-cast system than nsISupports:
* we know all types frames may be cast to at compile time, so instead of extensible GUID IIDs, use a big enum (see nsQueryFrame::FrameIID)
* eliminate all vestiges of refcounting, since frames aren't refcounted

Some frames (SVG frames in particular) still implement nsISupports-derived interfaces, for example nsISVGValue. There is a FrameIID for nsISVGValue that lets you go from a frame to the XPCOM interface, but you can't query back.

r+sr=roc

nsITextControlFrame didn't have an IID the first time around, but this wasn't a compile error because nsITextControlFrame::kFrameIID inherited from nsIFormControlFrame::kFrameIID. I've added a static analysis pass to verify the correct behavior, since I can't figure out a way to make the compiler do it.

--HG--
extra : rebase_source : 4894a2ca0278e2ab92f27459db77165f8348cf41
2009-01-12 14:20:59 -05:00
Phil Ringnalda
b6fe1a7700 Builds are neccesary, even if you can spell necessary, and even in a CLOSED TREE 2009-01-11 00:46:35 -08:00
Benjamin Smedberg
50621e4f9f Backed out changeset 4c4df6ed1b41 - Bug 396185 - Make nsIFrame not inherit from nsISupports due to mochitest failures... these appear to be crashes in nsGenericHTMLElement::GetEditorInternal. 2009-01-09 11:35:24 -05:00
Benjamin Smedberg
d0b948876f Bug 396185 - Make nsIFrame derivatives and helper abstract classes use a different dynamic-cast system than nsISupports:
* we know all types frames may be cast to at compile time, so instead of extensible GUID IIDs, use a big enum (see nsQueryFrame::FrameIID)
* eliminate all vestiges of refcounting, since frames aren't refcounted

Some frames (SVG frames in particular) still implement nsISupports-derived interfaces, for example nsISVGValue. There is a FrameIID for nsISVGValue that lets you go from a frame to the XPCOM interface, but you can't query back.

r+sr=roc

This patch locally causes two REFTEST-UNEXPECTED-PASS for Bidi stuff. It's possible that I accidentally fixed a bug, but I'm not sure, so I'm going to wait for the tinderboxes to confirm my local results.
2008-11-05 14:25:30 -05:00
Boris Zbarsky
709cd54c51 Bug 284320. Remove the contentParentFrame hack in subdocument frames, along with the no-longer-used arg it used to be used for. r+sr=roc 2009-01-06 17:29:50 -05:00
Benjamin Smedberg
720c4f5577 Bug 472348 - Some unused variables found by combing the warning database, rs=bz 2009-01-06 14:25:58 -05:00
L. David Baron
23d4f4d4b2 Stop using nsAreaFrame for anything other than xul:label, which is the only thing for which it does anything different from nsBlockFrame, and rename it accordingly. (Bug 471356) r+sr=roc
--HG--
rename : layout/generic/nsAreaFrame.cpp => layout/xul/base/src/nsXULLabelFrame.cpp
rename : layout/generic/nsAreaFrame.h => layout/xul/base/src/nsXULLabelFrame.h
2008-12-29 10:07:38 -05:00
L. David Baron
16aba7fd6b Set up image loaders before reflow for border-image in XUL just like for HTML. (Bug 468473) r+sr=roc 2008-12-23 09:06:56 -05:00
Benjamin Smedberg
9696613a50 Relanding bug 461410 - nsILineIterator is never used outside of layout - set nsresults to replicate the existing code more correctly, which fixes the mochitest failures, r+sr=roc with nits noted by Mats Palmgren 2008-10-30 12:17:59 -07:00
Benjamin Smedberg
4eb5e5d5a8 Bug 461212 - deCOM frame traversal (relanding) r=mats.palmgren sr=roc 2008-10-30 10:15:22 -07:00
L. David Baron
8878bc85e1 Merge backout of changeset 23eebebb8b48 (from bug 322475, which made us construct all our image loaders at frame construction time) because of issues with propagation of backgrounds to the canvas (bug 460796). 2008-10-28 14:36:44 -07:00
L. David Baron
65cadd7c29 Backed out changeset 23eebebb8b48 (from bug 322475, which made us construct all our image loaders at frame construction time) because of issues with propagation of backgrounds to the canvas (bug 460796). 2008-10-28 14:36:17 -07:00
L. David Baron
2015aefdfd Merge backout of changeset 7f708623bf59 (from bug 322475, which made us construct all our image loaders at frame construction time) because of issues with propagation of backgrounds to the canvas (bug 460796). 2008-10-28 14:35:18 -07:00
L. David Baron
e7cd23e3ac Backed out changeset 7f708623bf59 (from bug 322475, which made us construct all our image loaders at frame construction time) because of issues with propagation of backgrounds to the canvas (bug 460796).
--HG--
rename : layout/base/nsImageLoadNotifier.cpp => layout/base/nsImageLoader.cpp
rename : layout/base/nsImageLoadNotifier.h => layout/base/nsImageLoader.h
2008-10-28 14:34:03 -07:00
L. David Baron
8124ab8fbc Merge backout of changeset d7338fec7266 (from bug 322475, which made us construct all our image loaders at frame construction time) because of issues with propagation of backgrounds to the canvas (bug 460796). 2008-10-28 14:12:44 -07:00
L. David Baron
1736d9f550 Backed out changeset d7338fec7266 (from bug 322475, which made us construct all our image loaders at frame construction time) because of issues with propagation of backgrounds to the canvas (bug 460796). 2008-10-28 14:12:02 -07:00
Benjamin Smedberg
05386c2561 Back out bugs 461410 and 461212 because I'm not sure which is causing the mochitest regression. 2008-10-28 02:51:50 -04:00
Benjamin Smedberg
dfbac6a0c3 Merge backout and typo fix of bug 461212 2008-10-28 02:50:20 -04:00
Benjamin Smedberg
4214b72dd5 Backed out changeset d4c9a0776667 (deCOM nsILineEnumerator) due to regression from it or bug 461212 2008-10-28 02:49:14 -04:00
Benjamin Smedberg
3a3f316c84 Backed out changeset affcc1c08bc0 (deCOM frame enumerator) due to regression from it or bug 461410. 2008-10-28 02:47:40 -04:00
Benjamin Smedberg
dd4c950cff Bug 461410 - nsILineIterator is never used outside of layout, and doesn't need to be refcounted: the callers can just destroy it when they're done with it. We can't do this with a virtual destructor, however, because nsTableRowGroupFrame implements the interface directly, while nsLineIterator is a separately-allocated class. So clients are expected to call DisposeLineIterator when they're done with it.
Instead of accessing nsILineIterator using QueryInterface, we add a nsIFrame::GetLineIterator API, which is cleaner and more efficient all at the same time!

r+sr=roc
2008-10-28 00:47:19 -04:00
Benjamin Smedberg
d89e3c2841 Bug 461212 - deCOM frame enumerator, r=mats.palmgren sr=roc 2008-10-28 00:47:19 -04:00
Bernd
6777c42861 bug 258377, make border collapsed tables to listen for dynamic border style changes r/sr=bzbarsky 2008-10-26 11:11:34 +01:00
Robert O'Callahan
85ea5a3965 Bug 460240. Need to repaint the overflow area if the overflow area changes, the frame has effects/outline/box-shadow, and the frame size has not changed. r+sr=bzbarsky 2008-10-21 20:42:28 +13:00
Uri Bernstein
9418630bcb Bug 460532 - Firefox leaks SelectionDetails when clicking a point included in multiple selection ranges. r+sr=roc.
HGe changed layut/genericks SelectionDetails/test/Makefile.in
2008-10-20 22:53:40 +02:00
Uri Bernstein
ff104b5951 Bug 415707 - multiple text selection improvement doesn't work with double-click "word-by-word" or triple-click "paragraph" modes. r+sr=roc. 2008-10-17 21:46:33 +02:00
L. David Baron
9d7714304c Make sure DidSetStyleContext methods call the base class DidSetStyleContext, and change the signature to return void. (Bug 459649) r+sr=bzbarsky 2008-10-13 18:03:28 -04:00
L. David Baron
2545abc873 Fixing bustage. (Bug 322475) 2008-10-11 21:16:15 -04:00
L. David Baron
10bd0bbfe0 Construct all our image loaders when we create frames so that we can allow arbitrary numbers of image loaders per frame (for multiple background images). (Bug 322475) r+sr=bzbarsky 2008-10-11 20:49:42 -04:00
L. David Baron
2bd8ac7a44 Rename nsImageLoader to nsImageLoadNotifier, since it doesn't actually load images. (Bug 322475) r+sr=bzbarsky
--HG--
rename : layout/base/nsImageLoader.cpp => layout/base/nsImageLoadNotifier.cpp
rename : layout/base/nsImageLoader.h => layout/base/nsImageLoadNotifier.h
2008-10-11 20:49:42 -04:00
Uri Bernstein
8de8ea27ac Bug 458418: onclick event doesn't fire on empty fixed position elements. r+sr=roc. 2008-10-09 12:35:56 +02:00
Uri Bernstein
2b5ccfa067 Bug 449076: hang with 100% CPU on keyboard arrow trough text field. r+sr=roc. 2008-10-09 12:22:30 +02:00
Robert O'Callahan
09cfc5fa8c Bug 455984. Rework gradient and pattern code to use nsReferencedElement and nsSVGRenderingObservers, so they observe changes to the ID-element-map properly and propagate invalidations correctly (and with simpler code too). r=longsonr,sr=mats 2008-10-01 13:51:05 +13:00