Граф коммитов

119 Коммитов

Автор SHA1 Сообщение Дата
Zack Weinberg 430c5ceb95 Bug 510651: Fold nsIFrameDebug into nsFrame. r=dbaron sr=mrbkap 2009-08-20 14:52:48 -07:00
Boris Zbarsky 4929e54f32 Bug 504972. Remove some redundant code. r=roc 2009-07-28 08:53:20 -04:00
Boris Zbarsky 4af28abfeb Bug 504221 part 11. Switch the {ib}-split list munging to nsFrameList. r=fantasai,roc 2009-07-28 08:53:19 -04:00
Boris Zbarsky 37f7f1c5af Bug 504221 part 10. Switch the first-line frame list munging to nsFrameList. r=fantasai, r+sr=roc 2009-07-28 08:53:19 -04:00
Boris Zbarsky 1d9375f5db Bug 504221 part 7. Make nsFrameItems inherit from nsFrameList. rfantasai, r+sr=roc 2009-07-28 08:53:18 -04:00
Boris Zbarsky 6f3f5929ed Bug 504221 part 3. Switch overflowFrames storage to nsFrameList. 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
Robert O'Callahan 9b9d496e09 Bug 384037. Eliminate nsFrameNavigator and switch XUL splitters to using nsFrameList instead. Also add a check so that we don't crash when a splitter's parent is not a XUL box. r+sr=dbaron
--HG--
extra : rebase_source : 2438d96782b0d3c976fe7adf4f8e167811d76e64
2009-04-25 20:33:32 +12: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
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
Arpad Borsos c72ef7d248 Bug 456388 - Remove PR_STATIC_CALLBACK and PR_CALLBACK(_DECL) from the tree; r+sr=brendan 2008-10-10 17:04:34 +02:00
Bernd 28f6e7c3b3 use the right method to insert more than one frame, bug 456041 r/sr=bzbarsky 2008-09-27 13:07:29 +02:00
mats.palmgren@bredband.net 2dc7216b3e Plug a nsLineIterator leak. b=414740 r+sr=roc a=blocking1.9 2008-02-06 10:21:29 -08:00
roc+@cs.cmu.edu 5338360abe Bug 411870. nsBidiPresUtils needs to track the current line across block continuation boundaries. r=smontagu 2008-01-29 15:39:39 -08:00
roc+@cs.cmu.edu 72c72d1d33 Bug 411870 backout again 2008-01-28 11:10:26 -08:00
roc+@cs.cmu.edu ef12785f4c Bug 411870. Bidi resolution needs to scan through block continuations when tracking the current line for frames. r=smontagu 2008-01-28 10:16:22 -08:00
roc+@cs.cmu.edu cc8a28fdd6 backing out 411870 2008-01-27 22:28:31 -08:00
roc+@cs.cmu.edu fbf20e6e5d Bug 411870. Make bidi resolution track lines across block continuation boundaries. r=smontagu 2008-01-27 21:07:14 -08: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
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
roc+@cs.cmu.edu 31b42ee9c8 Bug 368863. Reparent floats properly when placeholders move between inline continuations. r+sr=dbaron 2007-04-20 17:42:58 -07:00
bzbarsky@mit.edu eeaa1a101b Rename nsIFrame::GetPresContext to nsIFrame::PresContext. Bug 376042, patch byTaras Glek <tglek@mozilla.com>, rs=roc. 2007-03-30 14:11:41 -07:00
cvshook%sicking.cc a39ff30284 Kill remainders of ns(XBL|HTML|XUL|Layout)Atoms. r/sr=jst b=368128 2007-01-30 00:06:41 +00:00
uriber%gmail.com 26b820a880 Don't bidi-split line frames. bug=364839, r+sr=bzbarsky. 2007-01-13 18:20:28 +00:00
uriber%gmail.com 6f21109f82 Always use the visual iterator when moving visually in a bidi page, even if the current line or adjacent lines are LTR. bug=309432 r=smontagu sr=roc 2006-07-12 11:22:18 +00:00
mats.palmgren%bredband.net 153ab238ca Fix crash when recreating <caption> frames. Add ASSERTIONs to detect similar frame construction errors in the future. b=341382 r+sr=bzbarsky 2006-06-29 02:32:36 +00:00
roc+%cs.cmu.edu a7f03736a9 Bug 328926. Remove aPresContext parameter from nsIFrame::Destroy, nsIFrame::SetInitialChildList and nsIFrame::RemovedAsPrimaryFrame. patch by Marc Liddell, r+sr=roc 2006-04-10 00:16:29 +00:00
dbaron%dbaron.org 0e88f73bc6 Single line comments to describe files (helpful in LXR) 2006-03-29 18:29:03 +00:00
pavlov%pavlov.net 131e8794e2 backing out roc's patch for bug 328926 due to crash running tests on vc8 machines. 2006-03-15 06:43:36 +00:00
roc+%cs.cmu.edu 557b089a47 Bug 328926. Remove aPresContext parameter from Destroy and SetInitialChildList. patch by Marc Liddell, r+sr=roc 2006-03-15 03:14:02 +00:00
uriber%gmail.com 90f8e80156 Bug 309286: Caret moves incorrectly in some cases of bidi HTML contained within an inline element in LTR context. r=smontagu sr=roc 2006-03-14 09:16:40 +00:00
uriber%gmail.com 46c5e43bfe Added missing parenthese from patch to bug 303884. bug=330284 r+sr=roc 2006-03-13 00:00:58 +00:00
uriber%gmail.com 1003ca6dd4 Do away with geometry in nsFrameList::GetPrev[Next]VisualFor() and nsLineIterator::CheckLineOrder(). Instead use new helper methods in nsBidiPresUtils for determining visual order of the top level of frames in a line. bug=303884 r=smontagu sr=roc 2006-03-12 09:49:48 +00:00
timeless%mozdev.org 426f83aecc Bug 298277 remove useless references to nsVoidArray
r=dbaron sr=dbaron
2006-02-23 10:30:59 +00:00
cvshook%sicking.cc 7db01c8d27 Bug 321294: Remove unused ReplaceFrame codepaths.
r/sr=roc
2006-01-10 22:58:37 +00:00
timeless%mozdev.org 2dc157c8df Bug 313164 Bidi: Caret navigation broken inside inline elements
patch by uriber@gmail.com r=smontagu sr=roc
2005-10-21 20:08:50 +00:00
roc+%cs.cmu.edu f246fa2bbd Bug 280987. Remove aPresContext from nsIFrameDebug::List. r+sr=roc, patch by Vidar Braut Harr. 2005-09-06 21:34:50 +00:00
timeless%mozdev.org 4b48453e7b Bug 288789 BiDi - In an RTL textbox, caret moves to wrong position when using arrow keys to move into a line containing LTR text
patch by uriber@gmail.com r=smontagu sr=roc a=bsmedberg
2005-08-02 17:19:43 +00:00
roc+%cs.cmu.edu 87c224f2cb Bug 263825. Make paginated floats work, and other fixes. r+sr=dbaron 2005-03-23 03:35:08 +00:00
roc+%cs.cmu.edu 996d1e3d9e Bug 274516. Tables should use the ordered rowgroup array to decide which children to push, not just follow the sibling list. Also, repeating footers should not be pushed. r=bernd, sr=bzbarsky, a=choffman 2005-02-16 20:02:14 +00:00
bzbarsky%mit.edu 54d585f2af Remove prescontext args for some nsIFrame methods
(Append/Insert/Remove/ReplaceFrames) and for some methods in table land.  Patch
by Vidar Braut Haarr <bugmail@q1n.org>, r+sr=bzbarsky
2005-02-07 01:58:25 +00:00
bzbarsky%mit.edu 630c5022f7 Add loop-detection to the various methods that can change an nsFrameList. This
will assert if a loop is detected.  Bug 266332, r+sr=roc
2004-10-30 18:35:53 +00:00
bryner%brianryner.com 5c02a6978c Change nsIPresContext to nsPresContext globally, follow-up to bug 253470. rs=roc 2004-07-31 23:15:21 +00:00
gerv%gerv.net 708b56cff4 Bug 236613: change to MPL/LGPL/GPL tri-license. 2004-04-18 14:30:37 +00:00
uid502 d81619b4fa Bug 190735. DeCOMtaminate nsIFrame::GetFrameType. r+sr=bzbarsky 2003-10-31 20:19:18 +00:00
roc+%cs.cmu.edu e324543a75 Ongoing deCOMtamination. r+sr=dbaron 2003-07-02 10:30:00 +00:00
bzbarsky%mit.edu 92d1146ffc Fix ReplaceChild() on positioned inlines to delegate to
nsAbsoluteContainingBlock.h.  Bug 176915, r=dbaron, sr=rbs
2002-11-12 03:30:13 +00:00
karnaze%netscape.com cee69f0564 bug 120364 - remove framelist assertion; have table with height return correct desired height when row group splits. sr=attinasi, r=alexsavulov 2002-03-04 15:48:56 +00:00
dbaron%fas.harvard.edu b864327c87 Clean up nsBlockFrame::RemoveFrame and add assertion to nsFrameList. b=114222 r=waterson sr=kin 2002-01-06 18:17:41 +00:00
gerv%gerv.net 4e12e44b2f Relicensing Round 1, Take 2. Most C-like NPL files -> NPL/GPL/LGPL. Bug 98089. 2001-09-28 20:14:13 +00:00
ftang%netscape.com ea833bd9ce fix port bustage 2001-05-15 14:34:23 +00:00
ftang%netscape.com 0832fa6938 fix and check in 77252 for simon@softel.co.il
r=ftang sr=blizzard
2001-05-15 12:29:10 +00:00
erik%netscape.com 4f129c60af fixing build bustage in IBMBIDI ifdef on Mac 2001-04-16 21:53:21 +00:00
erik%netscape.com c5bd1e8ade bug 71314; author=simon@softel.co.il; r=mjudge,anthonyd; sr=erik; changes
from IBM bidi project (Arabic, Hebrew, etc); some in ifdef for now
2001-03-21 01:16:22 +00:00
troy%netscape.com 0c7b650a86 b=5588. Performance improvement. Avoids walking the child list
twice when inserting frames at the head of the list
2000-03-12 03:07:52 +00:00
pp%ludusdesign.com 58065dda04 Converting ::GetIID() into NS_GET_IID(). Bug #20232. r=scc, r=mozbot 2000-02-02 22:24:56 +00:00
tbogard%aol.net af1ce8d410 Changed nsIPresContext& to nsIPresContext*. Changed nsEventStatus& to nsEventStatus*. Now more compatible with XPIDL. a=vidur r=scc 1999-11-24 06:03:41 +00:00
dmose%mozilla.org 5312eacf8c updated license boilerplate to xPL 1.1, a=chofmann@netscape.com,r=endico@mozilla.org 1999-11-06 03:40:37 +00:00
troy%netscape.com 1585a751fb Moved a bunch of stuff out to a nsIFrameDebug interface 1999-11-01 22:12:45 +00:00
troy%netscape.com 87afecabc0 Changed SetView/GetView to take an additional argument which is the
pres context
1999-10-26 04:44:41 +00:00
troy%netscape.com 7a5e4dbdb5 Renamed some nsFrameList member functions 1999-07-22 04:00:57 +00:00
troy%netscape.com c551fe3166 Renamed DeleteFrame() to Destroy() 1999-07-22 02:24:52 +00:00
kipp%netscape.com eddd21fd73 Removed dependence on nsFrame (a no-no) 1999-03-24 15:40:44 +00:00
mjudge%netscape.com 1afd545499 moving nsFrameTraversal.* nsFrameList.* to layout/base also adding selection from keyboard. 1999-02-19 00:21:22 +00:00