Commit Graph

34 Commits

Author SHA1 Message Date
Robert O'Callahan
d56dfa741e Bug 513082. Instead of passing aDirtyRect to nsDisplayItem::Paint, have nsDisplayList::OptimizeVisibility (renamed to ComputeVisibility) compute the intersection of the visible region with the bounds of each display item and store the result in the item's mVisibleRect. This lets us do less work to paint display items which have a small intersection with the visible region but a large intersection with the bounding-box of the visible region. r=dbaron
--HG--
extra : rebase_source : 76db4b87ef9e5a6e9de7677edc08c26e2cbc462e
2009-09-07 12:35:14 +12:00
Mats Palmgren
8279fd683e Bug 233463, patch 0 - Use nsFrameList methods instead of nsIFrame::SetNextSibling. r=bzbarsky 2009-09-18 13:09:35 +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
Bobby Holley
2d5ec55945 Bug 435296 - Decode-On-Draw. r=joe,roc,bz,dolske,peterw sr=vlad 2009-09-12 16:44:18 -06:00
Zack Weinberg
17eb5a6efc Bug 497495 part 3: Add methods to every nsFrame subclass that expose the as-allocated identity of every frame object. Also some cleanups to the QueryFrame implementation. r=dbaron sr=roc 2009-09-12 17:49:24 +01:00
Olli Pettay
468b832900 Bug 425265, r=roc, sr=bz 2009-03-08 21:01:02 +02:00
Jeremy Lea
1800930122 Bug 448830. Make nsIntRect/nsIntMargin/nsIntSize/nsIntPoint different types from nsRect/nsMargin/nsSize/nsPoint different types for better compile-type unit checking. r+sr=roc
--HG--
extra : rebase_source : a331a9e49fbc5931f546919281fcca7f008ab615
2009-01-15 16:27:09 +13:00
Benjamin Smedberg
24e7cb1f78 Bug 396185 - Make nsIFrame derivatives and helper abstract classes use a different dynamic-cast system than nsISupports:
* we know all types frames may be cast to at compile time, so instead of extensible GUID IIDs, use a big enum (see nsQueryFrame::FrameIID)
* eliminate all vestiges of refcounting, since frames aren't refcounted

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

r+sr=roc

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

--HG--
extra : rebase_source : 4894a2ca0278e2ab92f27459db77165f8348cf41
2009-01-12 14:20:59 -05:00
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
Doug Turner
996fd0f708 Bug 458917 - Windows CE Cleanup. r/sr=stuart+bsmedberg 2008-10-08 20:51:54 -07:00
Daniel Holbert
5a71686d10 bug 433284 - Needed to reposition child views after sliding container frame during print-selection. r+sr=roc 2008-06-24 09:30:55 -07:00
dholbert@cs.stanford.edu
f931f25d4d Bug 430878: Call PositionChildViews after sliding selection to top of page, to fix mispositioned scrollframes in print selection. r+sr=roc a=dsicore 2008-04-28 15:55:04 -07:00
dholbert@cs.stanford.edu
7e014b1722 Bug 429337: re-landing patch, with bustage fix. (bustage fix initializes nsPrintSettingsGTK::mPrintSelectionOnly to false in default constructor. Wasn't getting initialized before.) 2008-04-21 18:18:26 -07:00
dholbert@cs.stanford.edu
80266fc62d Backing out bug 429337 to fix broken printing reftests on linux test box. 2008-04-21 17:48:12 -07:00
dholbert@cs.stanford.edu
0680b00a3f Bug 429337: During print-selection, don't use an unconstrained page height everywhere -- just on the reflowSize (where we need it, to catch selections on pages beyond the first). r+sr=roc a=beltzner 2008-04-21 15:36:26 -07:00
dholbert@cs.stanford.edu
c9a5a82516 Bug 389949, second patch: rotate landscape-mode printed output in Linux. (so we don't end up printing landscape-oriented content on top of portrait-oriented paper.) r+sr=vlad a=blocking1.9 2008-04-07 17:32:48 -07:00
dholbert@cs.stanford.edu
203b5735e3 Bug 417356: Define & use "UnwriteableMargin" PrintSettings pref, to make Linux printing work more like Mac printing (keeping us from printing right up against the edge of the page) Orig Patch: [r=ventron sr=roc] Updates: [r=ventron r+sr=vlad] a=blocking1.9+ 2008-03-19 13:51:42 -07:00
dholbert@cs.stanford.edu
dfa358c900 Backing out Bug 417356, due to pagination reftest failures. 2008-03-14 01:50:13 -07:00
dholbert@cs.stanford.edu
b847cc90cc Bug 417356: Define & use "UnwriteableMargin" PrintSettings pref, to make Linux printing work more like Mac printing (keeping us from printing right up against the edge of the page) r=ventron sr=roc a=blocking1.9+ 2008-03-14 00:48:04 -07:00
fantasai.cvs@inkedblade.net
ff988b85a3 give page content frames a computed size so height: 100% works, b=411382 r+sr=bz 2008-02-08 18:54:55 -08:00
dholbert@cs.stanford.edu
b0697ca8a6 Bug 414075: Set the correct dead space gap value in Print Preview. Patch by Jeremy Lea <reg@openpave.org> r+sr=roc a1.9b3=schrep 2008-01-30 22:12:52 -08:00
reed@reedloden.com
e8a1a3f8a9 Bug 328718 - "GetEdgePaperMarginCoord should extend one inch" [p=hb@calen.de (Hb) r+sr+a1.9=roc] 2008-01-28 23:38:20 -08:00
reed@reedloden.com
56411c05f1 Bug 404519 - "some margin and edges twips/app units confusion" [p=reg@freebsd.org (Jeremy Lea) / chpe@gnome.org (Christian Persch) r+sr=roc a1.9=schrep] 2007-11-20 21:09:58 -08:00
reed@reedloden.com
3f2752be52 Bug 396278 - "should take edge values from print settings instead of prefs" [p=chpe r+sr=roc r=gavin a1.9=schrep] 2007-11-13 11:14:07 -08:00
rflint@ryanflint.com
7872a37fed Backout bug 396278 due to failing reftests 2007-11-13 06:18:36 -08:00
reed@reedloden.com
3d0523f876 Bug 396278 - "should take edge values from print settings instead of prefs" [p=chpe r+sr=roc r=gavin a1.9=schrep] 2007-11-13 02:30:39 -08:00
fantasai.cvs@inkedblade.net
2456fd7a33 paginate absolutely-positioned elements, b=154892 r+sr=roc a=roc 2007-10-01 22:57:45 -07:00
bzbarsky@mit.edu
21e0d65a42 Introduce a setter for nsHTMLReflowState::mComputedHeight so that we're sure to
update the resize flags properly.  Bug 388084, r+sr+a=dbaron
2007-08-02 11:08:05 -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
mats.palmgren@bredband.net
db689821bf Cleanup implementations of QueryInterface. b=385750 r+sr=dbaron r+sr=jst 2007-07-03 19:15:31 -07:00
bzbarsky@mit.edu
f1c4c68543 Don't do incremental reflow for now, because tables can't deal. Followup forbug 378480, r+sr=roc 2007-04-25 22:33:34 -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
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