Commit Graph

392 Commits

Author SHA1 Message Date
Jonathan Kew
6531a7f776 Backed out changeset 1958ebae93cc for causing mochitest orange. a=backout 2010-12-16 15:15:35 -08:00
Jonathan Kew
7a31c3e079 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
a3ec8a5ae1 Backed out changeset 34bd12eb4a9c for causing bug 618916, a=stuart 2010-12-13 16:14:07 -08:00
Oleg Romashin
0da1b085e9 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
3228336658 Bug 615536 - nsIFrame::GetMouseThrough need to be optimized r=roc a=approval2.0 2010-11-30 16:59:46 +02:00
Benjamin Smedberg
e69da252f3 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
7b428214f3 Bug 586216 - Don't use one timer per animated widget. r=roc a=b 2010-11-13 09:19:38 +01:00
Ehsan Akhgari
90e76bbb1f 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
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
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
Ehsan Akhgari
90ab413a2e 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
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
Daniel Holbert
d2bf82c2fc 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
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
15e706b2f1 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
7db127ab8d Bug 584494 - Regression: Transform rotation testcase performs significantly worse - r=dbaron 2010-09-02 14:07:37 -04:00
Robert O'Callahan
ded033638a 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
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
Timothy Nikkel
75dd64b1bf 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
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
Markus Stange
c107bb11a9 Bug 506826 - Fix overlapping frame state bit. 2010-08-13 18:09:58 +02:00
Markus Stange
12b1bcc7b0 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
2ea78354c5 Bug 572689 - Make nsSVGRenderingObservers observe elements instead of frames. r=roc 2010-08-13 15:31:31 +02:00
Ehsan Akhgari
c07d2babfd 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
a31d02e412 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
d298284e05 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
6d279b0435 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
99f4849c65 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
08a16e6b29 Replace force-fit with setting mIsTopOfPage correctly. (Bug 563584, patch 5) r=roc 2010-08-05 21:59:19 -07: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
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
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
Robert O'Callahan
270cfe600a 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
976046bf62 Bug 563878. Part 5. Rename nsIFrame::GetWindow(Offset) to GetNearestWidget. r=mats 2010-07-02 14:11:04 -05:00
Markus Stange
5a166a073b 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
1b2bbba526 Bug 573706 - make frame based accessible creation more pellucid, r=davidb, sr=roc 2010-06-28 21:02:03 +09:00
Ginn Chen
271f0b4b44 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)
95f0307543 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
d9f67b344a 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)
b3c3976708 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
ed06caaf51 Use 64 bits for frame state. (Bug 570837) r=roc 2010-06-08 22:28:14 -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
Simon Montagu
813eaf92c8 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
9610e7e8f7 Backout wrong fix for bug 547338. 2010-04-28 19:47:23 +02:00
Mats Palmgren
5197eefd38 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
9fb6b84bbc Bug 555727: Stop MSVC from over-optimizing NS_DECLARE_FRAME_PROPERTY. r=dbaron 2010-04-03 16:21:53 -04: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
961c31082c 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
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
Jim Mathies
d4cc6d9831 Backout bug 555133 to fix bug 555950. 2010-03-31 12:55:41 -05:00
Rob Arnold
9ffd5134c3 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
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
9a2ed61b34 Bug 551660. Switch layout code from using nsPropertyTable to FramePropertyTable. r=mats,sr=dbaron 2010-03-29 14:46:55 +13: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
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
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
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
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
13ac1c2c83 Bug 526394. Part 4: Obsolete nsIScrollableViewProvider by adding nsIFrame::GetScrollTargetFrame. r=mats,sr=dbaron 2009-09-01 23:22:31 +12: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
fantasai
714c1668f7 Bug 508473 Part I: Remove nsIFrame::RemovedAsPrimary r=bz sr=roc 2009-12-24 00:20:20 -05: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
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
Boris Zbarsky
0e977736ec 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
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
Boris Zbarsky
5c641e6c2b 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
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
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
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
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
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
Zack Weinberg
2cd31f70f9 Bug 510651: Fold nsIFrameDebug into nsFrame. r=dbaron sr=mrbkap 2009-08-20 14:52:48 -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
Boris Zbarsky
a1e015696b Bug 502942. Make fieldsets use their content's last-line baseline. r=dbaron 2009-08-03 10:42:59 -04:00
Robert O'Callahan
a4fec52cd4 Bug 506615. XUL decks should not have wididgets. r=dbaron 2009-07-30 14:54:42 +12: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
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
a2aaeadc49 Bug 504972. Remove some redundant code. r=roc 2009-07-28 08:53:20 -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
58ab0561e4 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
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
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
Boris Zbarsky
fa8b53c57c 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
41b0dc9d84 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
b47de0a11e Bug 500632. Suppress invalidation caused by parts inside collapsed scrollbars. r=dbaron 2009-07-22 12:44:49 +12: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
Mats Palmgren
f0978053f2 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
829f9f024a Bug 474369 - get rid of nsVoidArray; layout part; r+sr=roc 2009-02-03 15:42:18 +01: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
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
Markus Stange
c15f2b9d7f Forgot to add the braces in changeset 58f409bbc149 (bug 391984) 2008-12-15 14:43:31 +01:00
Markus Stange
975559338c Bug 391984 - [10.5] Add roundness to context menus, r=josh sr=roc 2008-12-11 15:37:38 +01:00
Jeff Walden
4180ce8eae imported patch nsIFrame.patch 2008-11-19 20:42:55 -08: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
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
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
Bernd
082b4cffdb 2 try 2008-10-26 12:21:47 +01: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
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
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
Robert O'Callahan
337c852320 Backing out bug 455984 to see if it fixed Tp crashes 2008-10-01 00:28:20 +13:00
Robert O'Callahan
0a5a34cbab 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
f79290bb0e 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
be33d80a1a 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
eef0edf9d5 Bug 454766 - Add suggested parentheses to layout/; r+sr=roc; (with nits by sgautherie) 2008-09-15 17:40:25 +02:00
Keith Schwarz
dc907e1ec7 Bug 435293. Implement CSS transforms. r=dbaron,r+sr=roc 2008-09-13 21:42:11 +12:00
Graeme McCutcheon
b6ce570b3c 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
be904c4d3d 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
ca15953a6e Backing out changeset 1bdd5da49865 (for bug 376662) due to regression bug 453661 2008-09-05 15:40:06 +12:00
Robert O'Callahan
1eeada5faa Bug 376662. Make nsIFrame::GetOffsetTo not explicitly use views. r+sr=bzbarsky 2008-09-04 09:35:52 +12:00
Boris Zbarsky
d9344bb542 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
4042320c9c 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
36ff184856 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
7e15def36c 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
8d8eda2eae 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
34d11c2d91 Bug 442729 - Annotate stack-only classes in layout, r+sr=roc 2008-07-01 15:16:45 -04:00
Kai Liu
ad9edcfa7d 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
45ac0e7ce6 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
b093864cba 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
cfdcd1fbe2 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
bef42eb600 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
40b710e021 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
d4dc37580f switch GetOverflowAreaProperty callers to GetOverflowRect b=417116 r+sr=roc a=roc 2008-02-19 23:08:55 -08:00
bzbarsky@mit.edu
8b8a07f4a7 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
b6cd4ed827 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
b81577fea9 handle dynamic insertion with overflow containers properly, b=403369 r=bzbarsky sr=roc 2008-01-27 00:13:19 -08:00
dwitte@stanford.edu
48b1fc2eb4 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
bf79c23ed9 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
cba1d47793 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
991719200d Bug 407155. Backing out 392809 to fix regressions. a=schrep 2007-12-07 01:35:44 -08:00
roc+@cs.cmu.edu
ea37d818bc 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
1a6bd11ee8 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
2976ce8f18 Bug 368760, r=mats, sr=roc, a=blocking1.9+ 2007-11-22 12:47:33 -08:00
jwatt@jwatt.org
4d976af81a 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
f3dee7a7ae 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
6ff9f4a686 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
00ceaa5363 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
32b36ae07b 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
fdf793303e Clean up prbool misuse in layout. bug 398312, r+sr+a=dbaron 2007-10-09 17:00:05 -07:00
roc+@cs.cmu.edu
5d758d9550 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
f467e1f991 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
48c8d7714f 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
2c483f5105 Backing out fix for bug 385607 due to bustage and Tp regressions 2007-08-09 21:41:00 -07:00
roc+@cs.cmu.edu
6aa69c7773 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
2561c55575 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
61373b8418 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
cb307ac952 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
3dd0a48e8f 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
072a5d24ae 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
11ed13d71f 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
e3c4baccae 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
8801788a06 Bug 386141: Switch NS_FRAME_IS_BOX to use IsFrameOfType. Patch by fantasai, r+sr=roc. 2007-07-03 15:11:28 -07:00
dbaron@dbaron.org
ad3d506605 Make text-indent contribute to intrinsic widths, and handle negative text-indent and negative margin properly by distinguishing forced and optional breaks when accumulating minimum widths. b=368155 r+sr=roc 2007-06-21 15:32:47 -07:00
jwalden@mit.edu
48ddf6ad09 C++ and/or gcc sucks for not allowing commas at the end of enums; this compiled in Visual Studio. 2007-06-19 22:24:09 -07:00
jwalden@mit.edu
8d353cbe72 Move frame bit #defines into an anonymous enum, to aid debuggers in determining their values, since the two I've used can't do so, at least not with the default build options. rs=roc 2007-06-19 22:12:35 -07:00
dbaron@dbaron.org
9e2fef4c30 Implement correct intrinsic width calculation (for container) for elements with specified height properties and an intrinsic ratio. b=364066 r+sr=bzbarsky 2007-06-12 11:27:09 -07:00
dbaron@dbaron.org
93042a4e45 Don't propagate line layout in reflow state when we're not in the line. b=320502 r+sr=roc 2007-05-17 23:04:04 -07:00
bzbarsky@mit.edu
3cb4bc9240 Change the FrameNeedsReflow API to pass the dirty flags to be added directly tothe method, instead of setting them before calling the method. That way we canavoid reflowing the ancestor of a reflow root which is not itself dirty but hasdirty children. This also makes it harder to set dirty bits inconsistentlywith the FrameNeedsReflow call. Bug 378784, r+sr=dbaron, pending rbs' reviewon the mathml parts. 2007-05-06 12:16:51 -07:00
roc+@cs.cmu.edu
b90ebbbc6c Bug 370439 (sort of). GetAbsPosClipRect needs to take the new frame size as a parameter, because the current frame size may be invalid when we are called by FinishAndStoreOverflow. r+sr=dbaron 2007-04-10 22:04:09 -07:00
bzbarsky@mit.edu
2fd17c94d8 Rename nsIFrame::GetPresContext to nsIFrame::PresContext. Bug 376042, patch byTaras Glek <tglek@mozilla.com>, rs=roc. 2007-03-30 14:11:41 -07:00
sharparrow1@yahoo.com
6fdcc6c041 Bug 372037: CSS clip property should clip the overflow rect as well as the paint rect; r+sr=roc. 2007-03-26 20:58:17 -07:00
hg@mozilla.com
465265d0d4 Free the (distributed) Lizard! Automatic merge from CVS: Module mozilla: tag HG_REPO_INITIAL_IMPORT at 22 Mar 2007 10:30 PDT, 2007-03-22 10:30:00 -07:00