Matheus Kerschbaum
6eb93f7dd3
Bug 648911 - Remove support for non-libxul builds. r=ted,joedrew
2011-05-23 18:54:47 +02:00
Ehsan Akhgari
e66b9024c8
Bug 10209 - Part 2: Implement the absolute positioning support for all frames; r=roc
2011-04-29 19:02:33 -04:00
Ehsan Akhgari
d883e58253
Bug 10209 - Part 1: Add an API for absolute container support for all frame types; r=roc
2011-04-27 19:41:43 -04:00
Benjamin Stover
1b6808fa69
Bug 640048 Fix edge case for z-ordering for async scrollable elements r=roc
2011-05-01 18:53:01 -07:00
Mark Finkle
cabb1dfab7
Backed out changeset c7f62d818af2. Causes content crashes Bug 653889
2011-04-30 00:01:29 -04:00
Benjamin Stover
c95d8badae
Bug 640048 Fix edge case for z-ordering for async scrollable elements r=roc
2011-04-29 10:15:44 -07:00
Robert O'Callahan
ca5e5d48e9
Bug 641426. Part 3.5: Remove usage of nsMargin::TopLeft and nsMargin::IsZero. r=dbaron
2011-04-19 15:07:22 +12:00
Jan Küchler
c510bc3046
Bug 266236 part 3: Mechanical rename of nsIRenderingContext and nsThebesRenderingContext to nsRenderingContext. Mechanical substitution of nsRefPtr<nsRenderingContext> for nsCOMPtr<nsRenderingContext>.
...
--HG--
rename : gfx/src/nsThebesRenderingContext.cpp => gfx/src/nsRenderingContext.cpp
extra : rebase_source : 34884bfcafd885feaf73300bc7246cd192062a48
2011-04-07 18:04:40 -07:00
Robert O'Callahan
f55223784a
Bug 622072. Part 3: Support empty transactions for canvas layers. r=tnikkel
...
The basic idea is that whenever a layer transaction updates the window, we clear out the invalidation state for the canvas rendering context,
using a DidTransactionCallback registered on the layer(s) for the canvas, which calls MakeContextClean.
The DidTransactionCallbacks are directed to the user data attached to the Layer, which holds a strong reference to the canvas element. This
ensures that the element lives as long as the layer. Layers are destroyed when the presentation is torn down (including if the frame is destroyed),
so we can't have a leak here. The reference to the canvas element is only strong because the layer might briefly outlive the frame (the layer
won't be destroyed until the next paint of the window).
This patch moves responsibility for calling CanvasLayer::Updated and nsFrame::MarkLayersActive from the canvas context to nsHTMLCanvasElement::InvalidateFrame.
We call Updated on the retained CanvasLayer, if there is one; any other CanvasLayers created for this canvas would only be used once, and have Updated
called on them in BuildLayer when created.
2011-03-28 12:59:47 +13:00
Jonathan Kew
15d01c433c
bug 418975 - support ­ when calculating min width for table and fieldset. r=roc. landing on the CLOSED TREE after dbaron went to bed :)
2011-03-24 15:22:37 +00:00
Ehsan Akhgari
acac18d785
Back out bug 622072 because it caused bug 645987
2011-03-29 14:31:53 -04:00
Robert O'Callahan
46f6cf879d
Bug 622072. Part 3: Support empty transactions for canvas layers. r=tnikkel
...
The basic idea is that whenever a layer transaction updates the window, we clear out the invalidation state for the canvas rendering context,
using a DidTransactionCallback registered on the layer(s) for the canvas, which calls MakeContextClean.
The DidTransactionCallbacks are directed to the user data attached to the Layer, which holds a strong reference to the canvas element. This
ensures that the element lives as long as the layer. Layers are destroyed when the presentation is torn down (including if the frame is destroyed),
so we can't have a leak here. The reference to the canvas element is only strong because the layer might briefly outlive the frame (the layer
won't be destroyed until the next paint of the window).
This patch moves responsibility for calling CanvasLayer::Updated and nsFrame::MarkLayersActive from the canvas context to nsHTMLCanvasElement::InvalidateFrame.
We call Updated on the retained CanvasLayer, if there is one; any other CanvasLayers created for this canvas would only be used once, and have Updated
called on them in BuildLayer when created.
2011-03-28 12:59:47 +13:00
Ehsan Akhgari
93de29b2e6
Bug 642823 - Make the behavior of nsISelection::Modify consistent for word selection across platforms by not eating spaces on any platform; r=roc
2011-03-20 15:49:06 -04:00
Kevin Gadd
d294ee3873
bug 625248 - During each paint, build a list (stored as a FrameProperty of the root nsIFrame) of all the PresShells that are visible during this paint, so that we can increment their paint count correctly during an empty transaction; r=roc a=blocking-final+
...
--HG--
extra : rebase_source : 2524d2e258a6a6cc13a7d8df2c874752e415c1ba
2011-01-27 13:53:10 -08:00
Robert O'Callahan
182d011379
Bug 619117. When invalidating due to a transform change, use the cached post-transform visual overflow rect to avoid depending on the new transform style. r=dbaron,a=blocking
2011-01-25 21:41:56 +13:00
Robert O'Callahan
9fdc40df3d
Bug 615870. Part 2: Track per-display-root-frame 'update layer tree' state bit. r=tnikkel a=b-f
2010-12-10 21:32:52 +02:00
Jonathan Kew
e79e7e7398
bug 332636 - fix editor's handling of surrogate-pair combining marks with backspace. r=ehsan a=roc
2010-12-16 14:17:41 -08:00
Mounir Lamouri
67259dffcd
Bug 596088 - Make <input type='file'> looks disabled when inside a disabled fieldset by adding a ContentStatesChanged method in nsIFrame. r=bz sr=roc a=blocking-final
...
--HG--
rename : layout/reftests/bugs/557087.html => layout/reftests/bugs/557087-1.html
rename : layout/reftests/bugs/557087.html => layout/reftests/bugs/557087-2.html
extra : rebase_source : 350455e646775e42916e90dee7e09f63f84f4db4
2010-12-14 10:00:57 -08:00
Jonathan Kew
63186a7fc6
Backed out changeset 1958ebae93cc for causing mochitest orange. a=backout
2010-12-16 15:15:35 -08:00
Jonathan Kew
ff27ba6ff2
bug 332636 - fix editor's handling of surrogate-pair combining marks with backspace. r=ehsan a=roc
2010-12-16 14:17:41 -08:00
Michael Wu
adc8f28efe
Backed out changeset 34bd12eb4a9c for causing bug 618916, a=stuart
2010-12-13 16:14:07 -08:00
Oleg Romashin
32de6ed302
Bug 615870 - Remote HTML5 video rendering pipeline should be shorter r=roc a=b-f
2010-12-10 21:32:52 +02:00
Oleg Romashin
73fc44f096
Bug 615536 - nsIFrame::GetMouseThrough need to be optimized r=roc a=approval2.0
2010-11-30 16:59:46 +02:00
Benjamin Smedberg
c13f3e04fa
Bug 616127 - Prevent nsIFrame.h from being used from non-internal code. r+a=bz
2010-12-01 14:42:27 -05:00
Ben Turner
f17f1a4d68
Bug 586216 - Don't use one timer per animated widget. r=roc a=b
2010-11-13 09:19:38 +01:00
Ehsan Akhgari
db2d8e7cb6
Bug 389321 - Part 3: Use a centralized algorithm for caret positioning; r=roc a=blocking-betaN+
2010-08-31 14:54:44 -04:00
Timothy Nikkel
c612a70b99
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
eaf0cc10a3
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
86a617e692
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
44ad3bb392
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
e9aef85b7e
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
4c92be5947
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
Ehsan Akhgari
216a0f0f67
Bug 240933 - Part 13: Consider text frame continuations containing only newlines editable; r,a=roc
...
--HG--
extra : rebase_source : e9f3001867e7992513484b92993a5d6a222273f6
2010-08-13 18:58:26 -04:00
L. David Baron
c44e387e04
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
58eb6a43d3
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
Daniel Holbert
aba0326d04
Bug 276431 part 3: Make nsImageFrame store an intrinsic ratio separate from its intrinsic size, and accept percentages in its intrinsic size. r=roc a=blocking
2010-09-08 13:40:38 -07:00
L. David Baron
f350baca0b
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
65e139ce28
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
afabd727c0
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
8a42fd5b90
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
999f84163c
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
d84bc18024
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
bb65502039
Bug 240933 - Part 13: Consider text frame continuations containing only newlines editable; r,a=roc
...
--HG--
extra : rebase_source : b66535705ec25cd4dca7378424b78cc3bef94e46
2010-08-13 18:58:26 -04:00
Robert O'Callahan
8c37d3bfef
Bug 584494 - Regression: Transform rotation testcase performs significantly worse - r=dbaron
2010-09-02 14:07:37 -04:00
Robert O'Callahan
13db12c5b9
Bug 579323. Part 2: Actually fix the bug by calling InvalidateThebesLayersInSubtree from nsIFrame::Redraw. r=dbaron,a=blocking
2010-08-31 12:49:13 +12:00
Robert O'Callahan
6ed294185b
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
5023daae20
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
Timothy Nikkel
76e6768d25
Bug 591657. nsWeakFrame needs a copy constructor because the default one does not hook into the presshell. r=smaug,dbaron a=dbaron,blocking beta5+
2010-08-30 13:37:55 -05:00
Robert O'Callahan
915a02867c
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
Markus Stange
b093349bfe
Bug 506826 - Fix overlapping frame state bit.
2010-08-13 18:09:58 +02:00
Markus Stange
53d7d30d22
Bug 506826 - Use a frame state bit for recursion detection in SVG pattern drawing. r=roc
2010-08-13 15:32:15 +02:00
Markus Stange
eaba422dce
Bug 572689 - Make nsSVGRenderingObservers observe elements instead of frames. r=roc
2010-08-13 15:31:31 +02:00
Ehsan Akhgari
489e5fab3f
Bug 580869 - Cache the frame found in nsTextFrame::GetChildFrameContainingOffset; r=roc approval2.0=dbaron
...
--HG--
extra : rebase_source : 3bdd49e0e039c212b5faa8d12bcbdd785da267a4
2010-08-10 11:16:17 -04:00
Dave Townsend
4590036b45
Backed out changeset 8f8ee0543d0f from bug 580869 in the CLOSED TREE
...
--HG--
extra : rebase_source : 0bfba926d30e0d6fc80bccd4a5614b1532d9234b
2010-08-06 15:01:59 -07:00
Ehsan Akhgari
5105968c9e
Bug 580869 - Cache the frame found in nsTextFrame::GetChildFrameContainingOffset; r=roc approval2.0=dbaron
...
--HG--
extra : rebase_source : c04666fc452be4108ed717686086a5f7baba753d
2010-07-23 17:37:55 -04:00
L. David Baron
7afdbd9a59
Rename float continuations to pushed floats. (Bug 563584, patch 33) r=roc
...
This patch was generated with the following sed commands on layout/generic/*.{h,cpp}: 's/FLOAT_CONTINUATION/PUSHED_FLOAT/g;s/FloatContinuation/PushedFloat/g;s/float continuation/pushed float/g' plus whitespace fixup where the frame state bits are defined.
2010-08-05 21:59:20 -07:00
L. David Baron
e24a4a847e
Track which frames were float continuations that need to be pulled to the next block rather than figuring it out again when it's time to pull them. (This allows first-in-flows to be float continuations.) (Bug 563584, patch 12) r=roc
2010-08-05 21:59:19 -07:00
L. David Baron
5dbb4fc493
Replace force-fit with setting mIsTopOfPage correctly. (Bug 563584, patch 5) r=roc
2010-08-05 21:59:19 -07:00
Timothy Nikkel
70d241a01e
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
7629433417
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
e5ff8517e3
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
2e3d02e038
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
b6eddb8fcc
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
Robert O'Callahan
496811aed4
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
Robert O'Callahan
4a3fae344e
Bug 564991. Part 1: Create a new kind of frame property that can receive a frame pointer when its destructor is called. r=mats
2010-07-16 09:07:45 +12:00
Timothy Nikkel
1259443af7
Bug 563878. Part 5. Rename nsIFrame::GetWindow(Offset) to GetNearestWidget. r=mats
2010-07-02 14:11:04 -05:00
Markus Stange
c7c192f3a7
Bug 572697 - Add frame types eSVGGeometry and eSVGPaintServer. r=roc
...
--HG--
extra : rebase_source : c4f39637b2e251d851cbbd3dadc91a516fd93e4b
2010-07-01 18:40:19 +02:00
Alexander Surkov
65c355c8a7
Bug 573706 - make frame based accessible creation more pellucid, r=davidb, sr=roc
2010-06-28 21:02:03 +09:00
Ginn Chen
8b0322b1e8
Bug 571211 Sun Studio doesn't support 64bit enum for 32bit mode r=dbaron
2010-06-27 00:55:05 +08:00
Rob Arnold ext:(%20%26%20Robert%20O%27Callahan%20%3Crobert%40ocallahan.org%3E)
951a8a32a4
b=555133 Attempt to infer whether or not theme parts are transparent r=roc,rob sr=vlad
2010-06-11 10:53:57 +12:00
Karl Tomlinson
cc75c71979
backout ce0bec337cdd due to bad message
2010-06-11 10:53:01 +12:00
Rob Arnold ext:(%20%26%20Robert%20O%27Callahan%20%3Crobert%40ocallahan.org%3E)
0ff5253328
Attempt to infer whether or not theme parts are transparent r=roc,rob sr=vlad
...
--HG--
rename : layout/mathml/mathfontSTIXSize1.properties => layout/mathml/mathfontSTIXSizeOneSym.properties
extra : rebase_source : 0500c9e1f6cabd42bd56e5e69b1af3c30c7045cd
2010-06-11 10:25:15 +12:00
L. David Baron
0d78680576
Use 64 bits for frame state. (Bug 570837) r=roc
2010-06-08 22:28:14 -07:00
L. David Baron
e272b3a13d
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
Simon Montagu
85a1e8061a
Don't split frames in bidi resolution that have the same resolved directionality but different character types. Bug 399850, r=ehsan, roc
2010-05-10 23:14:05 -07:00
Mats Palmgren
f4d91f2af0
Backout wrong fix for bug 547338.
2010-04-28 19:47:23 +02:00
Mats Palmgren
ec17ad365a
Remove the VerticalScroll() before layout, nsListBoxBodyFrame does that in its post reflow callback. b=547338 r=roc
2010-04-27 18:15:02 +02:00
Bill Gianopoulos
3387c15d67
Bug 555727: Stop MSVC from over-optimizing NS_DECLARE_FRAME_PROPERTY. r=dbaron
2010-04-03 16:21:53 -04:00
Ehren Metcalfe
a791e19cc4
Bug 556446: Remove dead code in layout. r=roc,bz
2010-04-03 07:36:19 -04:00
L. David Baron
4cf0bf0c58
Add function to nsStyleUtil for choosing the appropriate color from style data based on link visitedness. (Bug 147777) r=bzbarsky
2010-04-02 18:58:25 -07:00
Masayuki Nakano
f88647e545
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
Jim Mathies
e8db46f043
Backout bug 555133 to fix bug 555950.
2010-03-31 12:55:41 -05:00
Rob Arnold
0feeddc29f
Bug 555133 - Attempt to infer whether or not theme parts are transparent r=roc sr=vlad
2010-03-29 15:24:40 -04:00
Robert O'Callahan
a27c78da5a
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
0fd1837981
Bug 551660. Switch layout code from using nsPropertyTable to FramePropertyTable. r=mats,sr=dbaron
2010-03-29 14:46:55 +13:00
Masayuki Nakano
71ab14e537
Bug 553975 Caret is painted under textframe in input/textarea element r=roc
2010-03-27 13:33:17 +09:00
Neil Deakin
b66e7be3ef
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
e5f8b2f7e8
Bug 544852, part 1: Remove nsCaret::GetCaretCoordinates. r=roc
2010-03-14 23:52:07 +01:00
Michael Ventnor
ace5e1d018
Bug 542361 - Fix and remove the GetUsedX assertions r=roc
...
--HG--
extra : rebase_source : 6bdb0e3251e955ced01476a2255e9ebc511c884b
2010-03-02 11:57:43 +10:00
Dão Gottwald
a6c411fa84
Backed out changeset 8c2e7ae5cceb because of test_bug398289.html failure
2010-02-04 17:16:39 +01:00
Michael Ventnor
50f557ed9e
Bug 542361 - Fix and remove the GetUsedX assertions. r=roc,dbaron
2010-02-04 14:58:02 +01:00
Robert O'Callahan
96a17b8b42
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
d5b09287dc
Bug 526394. Part 4: Obsolete nsIScrollableViewProvider by adding nsIFrame::GetScrollTargetFrame. r=mats,sr=dbaron
2009-09-01 23:22:31 +12:00
fantasai
3027a2127b
Bug 508473 part III: Pass destruction root to frame destruction methods r=bz sr=roc
2009-12-24 00:21:15 -05:00
fantasai
b27eacbc1d
Bug 508473 Part II: Remove DeletingFrameSubtree r=bz sr=roc
2009-12-24 00:20:41 -05:00
fantasai
b8f6ad289d
Bug 508473 Part I: Remove nsIFrame::RemovedAsPrimary r=bz sr=roc
2009-12-24 00:20:20 -05:00
L. David Baron
21c9bd0852
Fix bustage from bug 530686.
2009-12-12 12:06:12 -08:00
Robert O'Callahan
5c87a2d633
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
David Bolter
f82359dcea
Bug 525579 - topcrash [@ nsAccessibilityService::GetAccessible(nsIDOMNode*, nsIPresShell*, nsIWeakReference*, nsIFrame**, int*, nsIAccessible**)] (thanks dbaron) r=roc,surkov
2009-11-16 09:03:53 -05:00
Boris Zbarsky
2ba57b5fb5
Bug 501847 part 4. Change frame construction to create {ib} splits that have blocks wrapping runs of block kids and inlines wrapping runs of inline kids instead of wrapping all kids from the first block to the last block in a single block. r=tn,dbaron,roc
2009-09-18 14:00:21 -04:00
Boris Zbarsky
ba8c31506f
Bug 512336. Make frame lists doubly-linked. r=roc,fantasai
2009-10-02 12:27:37 -04:00
Robert O'Callahan
d3999577a2
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
Boris Zbarsky
7761f7af77
Bug 512471. Make nsBlockFrame's mFrames track its principal child list. r=roc,fantasai
2009-09-29 15:47:05 -04:00
Robert O'Callahan
1da8163981
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
eb7a0b3a40
Bug 233463, patch 4 - Make nsIFrame::mNextSibling private. r=bzbarsky
2009-09-18 13:09:36 +02:00
Mats Palmgren
1a7f096af8
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
dea07412a1
Replace PR_MIN/PR_MAX with NS_MIN/NS_MAX. b=512106 r=roc
2009-09-16 17:01:36 +02:00
Neil Deakin
51b0e867e6
Bug 503943, add mouse capturing api to elements, remove capturing from views, r=roc,sr=smaug
2009-09-13 09:13:16 -04:00
Zack Weinberg
d47e0f433b
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
cef5702d08
Bug 503943, back out mouse capture patch, CLOSED TREE
2009-09-10 12:11:41 -04:00
Neil Deakin
6d007b6255
Bug 503943, add mouse capturing api to elements, remove capturing from views, r=roc,sr=smaug
2009-09-10 08:51:36 -04:00
fantasai
b2ea1d69bb
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
4453cced60
Backed out changeset e2927bb26412
2009-08-26 14:49:18 -07:00
Zack Weinberg
64f6d4d0dd
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
Zack Weinberg
430c5ceb95
Bug 510651: Fold nsIFrameDebug into nsFrame. r=dbaron sr=mrbkap
2009-08-20 14:52:48 -07:00
Robert O'Callahan
2496b1ab4e
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
Boris Zbarsky
b7b105f657
Bug 502942. Make fieldsets use their content's last-line baseline. r=dbaron
2009-08-03 10:42:59 -04:00
Robert O'Callahan
cc3fc234ee
Bug 506615. XUL decks should not have wididgets. r=dbaron
2009-07-30 14:54:42 +12:00
Boris Zbarsky
811394b5da
Bug 281387. Make nsIFrame::Append/InsertFrames use nsFrameList. r=bernd,roc, sr=dbaron
2009-07-30 13:23:32 -04:00
Boris Zbarsky
2a78273130
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
51ea3f4f6e
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
4929e54f32
Bug 504972. Remove some redundant code. r=roc
2009-07-28 08:53:20 -04:00
Boris Zbarsky
1ef12b64a7
Bug 504221 part 12. Switch SetInitialChildList to nsFrameList. r=fantasai, r+sr=roc
2009-07-28 08:53:20 -04:00
Boris Zbarsky
cf7d0b6141
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
8d1ea3ae7a
Bug 504221 part 1. Introduce framelist slice and enumerator classes and make the framelist versions of nsFrameList::AppendFrames/InsertFrames return a slice for the new frames. r=fantasai, r+sr=roc
2009-07-28 08:51:08 -04:00
Boris Zbarsky
1950f2e7c4
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
8bab94a96a
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
Boris Zbarsky
09eadb9ca6
Bug 505482. Make sure to not leave frames on overflow lists when we interrupt reflow. Also fixes bug 478527 and bug 496742. r=roc
2009-07-24 09:32:32 -04:00
Robert O'Callahan
dce2b0d98a
Bug 339548. Part 9: Create nsRootPresContext::UpdatePluginGeometry, and use it. Make nsObjectFrame manage its widget directly.
2009-07-22 12:45:00 +12:00
Robert O'Callahan
309225cfa5
Bug 500632. Suppress invalidation caused by parts inside collapsed scrollbars. r=dbaron
2009-07-22 12:44:49 +12:00
Jonathan Kew
68b13a1a71
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
6da50998ea
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
Mats Palmgren
36729e6796
Keep track of the line container and forget the current line if it's for a different container. b=444027 r+sr=roc
2009-02-10 10:23:05 +01:00
Arpad Borsos
c0f2dadc80
Bug 474369 - get rid of nsVoidArray; layout part; r+sr=roc
2009-02-03 15:42:18 +01:00
Benjamin Smedberg
3498a5f86e
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
Benjamin Smedberg
73a6fab34b
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
802d1a10c7
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
Markus Stange
5b8093539a
Forgot to add the braces in changeset 58f409bbc149 (bug 391984)
2008-12-15 14:43:31 +01:00
Markus Stange
a5dc4569b8
Bug 391984 - [10.5] Add roundness to context menus, r=josh sr=roc
2008-12-11 15:37:38 +01:00
Jeff Walden
e5e8a86e73
imported patch nsIFrame.patch
2008-11-19 20:42:55 -08:00
Benjamin Smedberg
ae14b3d6aa
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
292d44b1a8
Backed out changeset d4c9a0776667 (deCOM nsILineEnumerator) due to regression from it or bug 461212
2008-10-28 02:49:14 -04:00
Benjamin Smedberg
87c2e7ef23
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
Bernd
b80ae60f0a
2 try
2008-10-26 12:21:47 +01:00
Bernd
867fdf2cb0
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
bc51ece93b
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
L. David Baron
da3721ca17
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
Robert O'Callahan
fa9c29cdcd
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
Robert O'Callahan
4fc9cfd0c6
Backing out bug 455984 to see if it fixed Tp crashes
2008-10-01 00:28:20 +13:00
Robert O'Callahan
4fdd181cd0
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-09-30 21:47:20 +13:00
Robert O'Callahan
775dd33c74
Bug 450930. Fire a DOM event when painting so that content and chrome can track what's being repainted. r=smaug,sr=dbaron
2008-09-18 21:47:21 +12:00
Robert O'Callahan
b7f3ce1f50
Bug 455280. Distinguish pre-transform overflow area from post-transform overflow area and have nsDisplaySVGEffects use the pre-transform area. r=kschwarz,sr=dbaron
2008-09-16 13:51:52 +12:00
Arpad Borsos
87878e68eb
Bug 454766 - Add suggested parentheses to layout/; r+sr=roc; (with nits by sgautherie)
2008-09-15 17:40:25 +02:00
Keith Schwarz
48a87265ac
Bug 435293. Implement CSS transforms. r=dbaron,r+sr=roc
2008-09-13 21:42:11 +12:00
Graeme McCutcheon
bc94c13609
Bug 451252 - "Highlight All" find selection not visible in elements that have -moz-user-select: none set; r+sr=roc
2008-09-07 16:12:50 +02:00
Robert O'Callahan
c04d96c610
Bug 376662. Convert nsIFrame::GetOffsetTo to not use views. We need to ensure that for popups and scrollframes, views and frames are kept in sync at *all* times. Also fixes bugs in tests for NS_FRAME_NO_MOVE_FRAME. r+sr=bzbarsky
2008-09-06 20:52:56 +12:00
Robert O'Callahan
8d8390a5b5
Backing out changeset 1bdd5da49865 (for bug 376662) due to regression bug 453661
2008-09-05 15:40:06 +12:00
Robert O'Callahan
82aa805186
Bug 376662. Make nsIFrame::GetOffsetTo not explicitly use views. r+sr=bzbarsky
2008-09-04 09:35:52 +12:00
Boris Zbarsky
bd67eb6f6f
Bug 449362 - "Table border is rendered incorrectly when the table cell size changes due to javascript." [r+sr=roc]
2008-08-20 01:45:29 -05:00
Robert O'Callahan
bb9a3c58d4
Bug 441418. Instead of guessing when frame broke at a first-letter boundary, explicitly record that in a reflow status bit. r+sr=dbaron
2008-08-06 12:31:25 +12:00
Boris Zbarsky
e915fa1342
Bug 430356. Don't return negative pref and min intrinsic widths for XUL boxes/ r+sr=dbaron
2008-07-28 23:07:28 -07:00
Robert O'Callahan
7644127121
Bug 444688. Use an IsFrameOfType check instead of a frame state bit to detect whether a frame excludes ignorable whitespace children. r+sr=dbaronlayout
2008-07-14 10:41:18 +12:00
Michael Ventnor
77451fb4e4
Bug 212633 - "Add support for CSS3 box-shadow" (rendering support) [p=ventnor.bugzilla@gmail.com (Michael Ventnor) r+sr=roc]
2008-07-07 19:57:47 -05:00
Benjamin Smedberg
556cf36dc9
Bug 442729 - Annotate stack-only classes in layout, r+sr=roc
2008-07-01 15:16:45 -04:00
Kai Liu
42b61613c3
Bug 422607: avoid unneeded pixel/twip conversions to fix bookmarks menu aligment issues, r=enndeakin, sr=roc
2008-06-15 21:26:41 -04:00
roc+@cs.cmu.edu
d8e8b9dda2
Bug 398332. Merge reflow statuses from out-of-flow frames more carefully so that we don't lose information about the primary reflow. r=fantasai,r+sr=dbaron,a=shaver
2008-05-28 06:39:41 -07:00
fantasai.cvs@inkedblade.net
c799e1aaed
consider relevant overflow when balancing columns (fixes various crashes and hangs) b=404215 r+sr=roc a=beltzner
2008-04-18 00:40:35 -07:00
roc+@cs.cmu.edu
f270904496
Bug 392809. Fix word-based caret movement around punctuation and whitespace. r=smontagu,a=beltzner
2008-03-03 00:37:34 -08:00
dbaron@dbaron.org
29a306a18f
Prevent margin expansion from interfering with table caption position. Based on patch by Mats Palmgren. b=363248 r+sr=roc a=blocking1.9+
2008-02-26 18:02:50 -08:00
reed@reedloden.com
e59cccedde
Bug 391559 - "Incorrect ordered-list numbering within -moz-column-* (and/or numbering changes when clicked)" [p=craig.topper@gmail.com (Craig Topper) r+sr=roc a1.9=beltzner]
2008-02-23 23:31:29 -08:00
fantasai.cvs@inkedblade.net
2f230818c7
switch GetOverflowAreaProperty callers to GetOverflowRect b=417116 r+sr=roc a=roc
2008-02-19 23:08:55 -08:00
bzbarsky@mit.edu
3a6834eaac
Fix bug 416073: invalidate more things as needed during table reflow to prevent glitches. r+sr=roc
2008-02-08 01:36:32 -08:00
dbaron@dbaron.org
f970a9abc8
Push scrollframes, tables, and other blocks that don't participate in float formatting down when they don't fit next to floats. b=134706,349255 r+sr=roc a=blocking1.9+
2008-01-28 23:40:05 -08:00
fantasai.cvs@inkedblade.net
3cf5f1aeed
handle dynamic insertion with overflow containers properly, b=403369 r=bzbarsky sr=roc
2008-01-27 00:13:19 -08:00
dwitte@stanford.edu
7e454eebf6
get rid of nsStyleStruct base type. b=408933, r+sr=dbaron, a=beltzner
2008-01-10 12:56:49 -08:00
roc+@cs.cmu.edu
fcd171df95
Bug 404146. Advancing through nsContainerFrame next-in-flows can make our InlineData->line invalid, so just null it out if it might have become invalid. r+sr=dbaron
2008-01-09 19:18:44 -08:00
roc+@cs.cmu.edu
3327ae5ee9
Bug 405380. Bidi reordering moves frames around so we can't trust pfd->mBounds in nsLineLayout::RelativePositionFrames. r+sr=dbaron
2007-12-11 16:42:20 -08:00
roc+@cs.cmu.edu
350892fb62
Bug 407155. Backing out 392809 to fix regressions. a=schrep
2007-12-07 01:35:44 -08:00
roc+@cs.cmu.edu
fed73e9f6a
Bug 392809. Break between whitespace and following punctuation even when stop_at_punctuation is false. Don't stop between punctuation and following non-punctuatino if the preceding punctuation follows white-space. r=smontagu
2007-12-04 18:11:17 -08:00
roc+@cs.cmu.edu
efa3189859
Bug 399531. Rework TrimTrailingWhitespace so that we recompute the overflow area for trimmed textframes and so that soft hyphens in otherwise-empty textframes are activated. r+sr=dbaron
2007-12-01 01:24:24 -08:00
Olli.Pettay@helsinki.fi
a0a74f16e7
Bug 368760, r=mats, sr=roc, a=blocking1.9+
2007-11-22 12:47:33 -08:00
jwatt@jwatt.org
d308285bb4
Fixing bug 294086. <svg> should be a replaced element. r+sr=dbaron@mozilla.com blocking1.9=tor@acm.org
2007-11-18 04:09:03 -08:00
enndeakin@sympatico.ca
cb92454492
Bug 394600, address bz's additional popup reworking comments, add tests for removing popups, r+sr=bz,a=beltzner
2007-11-17 07:47:38 -08:00
mats.palmgren@bredband.net
e33b99bebb
Use async version of Invalidate() to avoid flushing pending notifications. Also, document this aspect of the Invalidate() API. b=402198 r+sr=roc a=mtschrep
2007-11-09 16:51:02 -08:00
reed@reedloden.com
e09a2143a3
Bug 391584 - Pass around a context string so we can detect word breaks at the beginning or end of frames [p=roc r=smontagu a=blocking1.9+]
2007-11-07 20:33:28 -08:00
roc+@cs.cmu.edu
036806699a
Bug 397518. Wrap inline non-MathML children of MathML frames in anonymous blocks. r+sr=bzbarsky
2007-10-12 01:30:54 -07:00
tglek@mozilla.com
8cf3fb1c90
Clean up prbool misuse in layout. bug 398312, r+sr+a=dbaron
2007-10-09 17:00:05 -07:00
roc+@cs.cmu.edu
9a93a48ef0
Bug 385607. Ensure that whitespace is collapsed across text-run boundaries across incremental updates like adding/removing frames in the middle of the textrun. r+sr+a=dbaron
2007-09-17 20:00:16 -07:00
roc+@cs.cmu.edu
bbc848d48f
Bug 389421. Rework word selection, in particular so that layout.word_select.stop_at_punctuation is applied to boundaries between punctuation and non-punctuation, and all Unicode punctuation is treated as punctuation.
2007-08-29 20:10:19 -07:00
philringnalda@gmail.com
42675246db
Bug 390423 - Simplify the signature of nsIFrame::GetPointFromOffset, patch by Ben Karel <web+moz@eschew.org>, r=aaronlev/elif, sr=roc, a1.9=dbaron
2007-08-16 20:43:00 -07:00
roc+@cs.cmu.edu
25a3f52e56
Backing out fix for bug 385607 due to bustage and Tp regressions
2007-08-09 21:41:00 -07:00
roc+@cs.cmu.edu
ad74d94b42
Bug 385607. Force re-evaluation of textruns when block descendants are deleted or added.
2007-08-09 19:49:28 -07:00
aaronleventhal@moonset.net
e74bc44b8b
bug 348901. Remove extra whitespace from source when exposing accessible text. r+sr=roc, r=surkov. a=dbaron
2007-08-03 18:12:24 -07:00
roc+@cs.cmu.edu
a28eeaaafd
Bug 379349. Add support for 'overflow containers' --- special frame continuations that do not map any content of their own, but serve only as containers for laying out children that overflowed their parents' content height. patch by fantasai, r+sr=eli,roc
2007-07-25 21:03:29 -07:00
asqueella@gmail.com
2604465594
fix bug 388709 - "ASSERTION: Please remove this from the document properly: '!IsInDoc()'" with :after, floating :first-letter
...
Store the generated content as a nsCOMArray<nsIContent>* property on frames to make its clean-up on frame destruction less fragile.
r+sr=roc
2007-07-23 16:31:11 -07:00
jwalden@mit.edu
804f30a419
Rename one of the bits on frames with a meaningful name, rs/r+sr=dbaron
2007-07-20 17:34:36 -07:00
jwalden@mit.edu
aed6f06159
Bug 386142 - fix up some comments on nsIFrame::Init. Patchby fantasai <fantasai.bugs@inkedblade.net>, r+sr=roc
2007-07-20 12:00:36 -07:00
neil@parkwaycc.co.uk
10de8387c8
Followup to bug 348748 to fix the alignment of trailing backslashes in macros
...
[xxx_cast<foo*>(bar) is three characters shorter than NS_XXX_CAST(foo*, bar)]
2007-07-11 01:46:44 -07:00
jwalden@mit.edu
6d7584839a
Bug 348748 - Replace all instances of NS_STATIC_CAST and friends with C++ casts (and simultaneously bitrot nearly every patch in existence). r=bsmedberg on the script that did this. Tune in next time for Macro Wars: Episode II: Attack on the LL_* Macros.
2007-07-08 00:08:04 -07:00
sharparrow1@yahoo.com
f8eb726afe
Bug 386141: Switch NS_FRAME_IS_BOX to use IsFrameOfType. Patch by fantasai, r+sr=roc.
2007-07-03 15:11:28 -07:00