Mats Palmgren
7fa166a5f5
Bug 729519 - Allocate heap nsFrameLists from the shell arena. r=bzbarsky
...
"new nsFrameList()" becomes "new (shell) nsFrameList()".
"delete list" becomes "if (list) list->Delete(shell)" - note also that
an additional assertion was added that list is empty when deleted.
"nsAutoPtr<nsFrameList> list(StealSomeFrames())" becomes
"AutoFrameListPtr list(aPresContext, StealSomeFrames())"
2013-04-01 17:26:02 +02:00
Mats Palmgren
b6a1543603
Bug 729519 - Allocate nsFrameList::sEmptyList from the .rodata segment, not the heap. r=bzbarsky
2013-04-01 17:26:02 +02:00
Mats Palmgren
80707fa951
Bug 838706 - Remove Destroy/RemoveFrameIfPresent O(n) methods. All consumers are now using Start/ContinueRemoveFrame instead which are O(1). r=bzbarsky
2013-02-28 00:05:45 +01:00
Mats Palmgren
54ae45a9ab
Bug 838642 - Introduce nsFrameList::StartRemoveFrame/ContinueRemoveFrame that can be used in concert to remove a frame in O(1) time from a set of frame lists when its exact frame list is unknown. Use them to make nsContainerFrame::StealFrame O(1). r=bzbarsky
2013-02-28 00:05:44 +01:00
Ehsan Akhgari
8c296bbcd4
Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
...
This patch was generated by a script. Here's the source of the script for
future reference:
function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
! -wholename "*security/nss*" \
! -wholename "*/.hg*" \
! -wholename "obj-ff-dbg*" \
! -name nsXPCOMCID.h \
! -name prtypes.h \
-type f \
\( -iname "*.cpp" \
-o -iname "*.h" \
-o -iname "*.c" \
-o -iname "*.cc" \
-o -iname "*.idl" \
-o -iname "*.ipdl" \
-o -iname "*.ipdlh" \
-o -iname "*.mm" \) | \
xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}
convert PRInt8 int8_t
convert PRUint8 uint8_t
convert PRInt16 int16_t
convert PRUint16 uint16_t
convert PRInt32 int32_t
convert PRUint32 uint32_t
convert PRInt64 int64_t
convert PRUint64 uint64_t
convert PRIntn int
convert PRUintn unsigned
convert PRSize size_t
convert PROffset32 int32_t
convert PROffset64 int64_t
convert PRPtrdiff ptrdiff_t
convert PRFloat64 double
2012-08-22 11:56:38 -04:00
Aryeh Gregor
57c0ad57fb
Bug 777292 part 2 - Change all nsnull to nullptr
2012-07-30 17:20:58 +03:00
Gervase Markham
87620f5676
Bug 716478 - update licence to MPL 2.
2012-05-21 12:12:37 +01:00
Daniel Holbert
d55f55d9fe
Bug 738705: Remove dead helper-class CompareByContentOrderComparator. r=bz
2012-03-23 11:17:33 -07:00
Ehsan Akhgari
2a602a5685
Bug 690892 - Replace PR_TRUE/PR_FALSE with true/false on mozilla-central; rs=dbaron
...
Landing on a CLOSED TREE
2011-10-17 10:59:28 -04:00
Michael Wu
d8e503c38b
Bug 675553 - Switch from PRBool to bool on a CLOSED TREE , r=bsmedberg,khuey,bz,cjones
...
--HG--
rename : tools/trace-malloc/bloatblame.c => tools/trace-malloc/bloatblame.cpp
2011-09-28 23:19:26 -07:00
Simon Montagu
672d772074
Make all nsBidiPresUtils methods static. Bug 624798, r=roc
2011-04-13 12:23:49 +03:00
Craig Topper
74ac9a3f68
Bug 654369 - Part 5: Make nsFrameList::Init return void r=bz
...
--HG--
extra : rebase_source : 8e9aafbc53c9b7e6be24a15707c32f19d67b7c06
2011-05-01 23:32:59 -07:00
Simon Montagu
ece92e21ce
Back out bug 263359 and bug 624798 because of performance regressions (bug 650189)
2011-04-27 11:47:18 +03:00
Simon Montagu
8ade1e195e
Make all nsBidiPresUtils methods static. Bug 624798, r=roc
2011-04-13 12:23:49 +03:00
L. David Baron
b56efbfcf6
Add checks to VerifyList that previous siblings match next siblings. (Bug 563584, patch 21) r=roc
2010-08-05 21:59:20 -07:00
L. David Baron
7c80834b1e
Make nsFrameList::RemoveFramesAfter(nsnull) remove the whole list. (Bug 563584, patch 11.5) r=roc
2010-08-05 21:59:19 -07:00
Ehren Metcalfe
e0ac5d5547
Bug 556446: Remove dead code in layout. r=roc,bz
2010-04-03 07:36:19 -04: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
Robert O'Callahan
45ab6b1eff
Bug 526072. Guard super-expensive nsFrameList assertions with #ifdef DEBUG_FRAME_LIST so debug builds don't completely suck. r=bz
2009-11-04 07:39:41 +13:00
Boris Zbarsky
4fc405cefa
Bug 512336. Make frame lists doubly-linked. r=roc,fantasai
2009-10-02 12:27:37 -04:00
Mats Palmgren
34d1363139
Remove unused methods. b=516976 r=bzbarsky
2009-09-20 23:37:30 +02:00
Mats Palmgren
4e06ef038e
Bug 233463, patch 5 - Remove nsFrameList(nsIFrame*) ctor. r=bzbarsky
2009-09-18 13:09:36 +02:00
Mats Palmgren
7ca7fe2f91
Bug 233463, patch 3 - Make Destroy/RemoveFrame() methods void and assert that the frame to remove is present. 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
8279fd683e
Bug 233463, patch 0 - Use nsFrameList methods instead of nsIFrame::SetNextSibling. r=bzbarsky
2009-09-18 13:09:35 +02:00
Zack Weinberg
2cd31f70f9
Bug 510651: Fold nsIFrameDebug into nsFrame. r=dbaron sr=mrbkap
2009-08-20 14:52:48 -07:00
Boris Zbarsky
a2aaeadc49
Bug 504972. Remove some redundant code. r=roc
2009-07-28 08:53:20 -04:00
Boris Zbarsky
9d47a166af
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
cddaf1831c
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
b5d9390d06
Bug 504221 part 7. Make nsFrameItems inherit from nsFrameList. rfantasai, r+sr=roc
2009-07-28 08:53:18 -04:00
Boris Zbarsky
b0259fd19b
Bug 504221 part 3. Switch overflowFrames storage to nsFrameList. 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
Robert O'Callahan
0cc4169245
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
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
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
Arpad Borsos
8b11d938d2
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
7988560536
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
733a1ad657
Plug a nsLineIterator leak. b=414740 r+sr=roc a=blocking1.9
2008-02-06 10:21:29 -08:00
roc+@cs.cmu.edu
2032b542bf
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
dea0868d56
Bug 411870 backout again
2008-01-28 11:10:26 -08:00
roc+@cs.cmu.edu
6ac78d0700
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
d0b43fea97
backing out 411870
2008-01-27 22:28:31 -08:00
roc+@cs.cmu.edu
1233a70df6
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
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