Commit Graph

30 Commits

Author SHA1 Message Date
Zack Weinberg
b6fe8205dd 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
Robert O'Callahan
64679553d1 Backed out changeset e2927bb26412 2009-08-26 14:49:18 -07:00
Zack Weinberg
1aef973199 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
2009-08-26 09:27:42 -07:00
Benjamin Smedberg
0f95227641 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.
2009-01-12 14:20:59 -05:00
Benjamin Smedberg
7a084ac404 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
991a16d8bc 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
sharparrow1@yahoo.com
de3ed105fb Bug 332927: Cleanup iframe/frame printing code (and a couple other misc. cleanups) 2006-04-11 01:48:48 +00:00
sharparrow1@yahoo.com
9df767b1c4 Bug 331415: some printing code cleanup. r+sr=roc. 2006-03-30 00:27:42 +00:00
sharparrow1@yahoo.com
109b433b14 Bug 326157: Get rid of unnecessary clipping code. r+sr=roc. 2006-02-07 02:22:06 +00:00
bsmedberg@covad.net
fb56b42204 Bug 313309 part 2 - change the NS_DEFINE_STATIC_IID_ACCESSOR macro to NS_DECLARE, and make a NS_DEFINE_ macro that's outside the class declaration, r=shaver 2005-11-11 14:36:26 +00:00
bryner@brianryner.com
6cde4639f0 Change nsIPresContext to nsPresContext globally, follow-up to bug 253470. rs=roc 2004-07-31 23:15:21 +00:00
gerv@gerv.net
a1ec040a65 Bug 236613: change to MPL/LGPL/GPL tri-license. 2004-04-18 14:30:37 +00:00
timeless@mozdev.org
b87cb09b51 Bug 205363 Remove SendStatusNotification/nsIPrintStatusCallback
r=dbaron sr=dmose
2003-05-23 22:10:13 +00:00
rods@netscape.com
3d9ae8f7f7 Change STF to use an unconstrainad reflow instead of searching for the widest frame
Bug 168961 r=dcone sr=kin
2002-09-19 21:45:07 +00:00
rods@netscape.com
3f37f1191e Turn on pluggable dialogs (second part of checkin, first part Bug 135441)
Bug 115136 r=dcone sr=attinasi
2002-05-07 12:03:37 +00:00
rods@netscape.com
b2c5cf7708 1) Enables the PageSeq frame to specify the "gap" of gray space around
it in Print Preview
2) It now positions the page in the window with the gray "gap" showing.
3) factors out code for calc'ing the number of pages
4) Adds the methods to get the number of page while in PP
Bug 125151 r=sgehanisr=attinasi
2002-02-14 23:18:09 +00:00
rods@netscape.com
cdd9aa81a9 1) It moves the BeginDocument to a earlier place in the call change
2) Fixes the negitive page range display problem
3) Improves performance by reducing the delay on pages not in the page range, i.e. before if you printed the 30th page out of 31 you had to wait 15 secs to get to the 30th page to print it.
4) Added AbortDocument, so now when Print jobs are cancelled we call AbortDocument and remove them from the print spooler
5) Fixed a couple of minor issue with Canceling and cancelling mail printings
6) selection was not printing correctly. The problem with selection was that the clip was not being set corrctly.
Bug 115227 & 123181 r=dcone,sspitzer sr=attainasi
2002-02-12 13:33:39 +00:00
rods@netscape.com
1c6b4a35ee Switch public interfaces from nsIPrintOptions to nsIPrintSettings
Enabling XP Print Dialog for Windows
Enabling XP Print Progress Dialog
Enabling XP Page Setup Dialog
Fixing nsPrintPreviewContext to use nsIPrintPreviewContext
Bug 113917 r=dcone sr=attinasi
2002-01-01 12:58:53 +00:00
rods@netscape.com
ec84f6df1b Initial check in for print preview work it is complied in for Windows and linix only
The bulk of print preview can be turned on/off with NS_PRINT_PREVIEW define
Bug 107562 r=kmcclusk sr=attinasi
2001-11-03 14:59:39 +00:00
dougt@netscape.com
2605bce49e Extraneous Symbol Removal. Patch by Jon Smirl jonsmirl@mediaone.net. r=dougt@netscape.com, sr=alecf@netscape.com. Bug 104172 , 104316 , 104420 , 104426 , 104461 , 104511 , 104527 2001-10-23 01:37:21 +00:00
gerv@gerv.net
58d409fba9 Relicensing Round 1, Take 2. Most C-like NPL files -> NPL/GPL/LGPL. Bug 98089. 2001-09-28 20:14:13 +00:00
rods@netscape.com
41b006b7e1 Implements Print FrameAsIs and other frame printing options
Bug 7201 r=dcone sr=attinasi
2001-04-12 13:04:29 +00:00
rods@netscape.com
14f2325381 This now enables print listeners, print progress and the cancelling of printing
Bug 70946 & Bug 70949 r=dcone,chak sr=attinasi
2001-03-27 11:56:03 +00:00
rods@netscape.com
a1ed5b3a4f This checkin enables mozilla to support the printing of selection, the printing of page ranges, and
the printing of headers and footers.
Printing of selection is implemented by the frames figuring out if they are in the selection and painting
if they or not they they don't paint. This also only allows the printing of the first page of
selections, alothough it is well documented where this is implemeted so it can be removed.
Bugs 63426, 31218, 61075 r=dcone,kmcclusk,erik,buster sr=waterson
2001-01-27 14:09:34 +00:00
jst@citec.fi
737694e2fc Fixing bug 12181 (removing static IID's). r=troy@netscape.com 2000-01-04 20:24:09 +00:00
tbogard@aol.net
617bb737a6 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
796280940b 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
2bc5acce30 Fixed a compiler warning where there was an extra ',' after an enum
identifier
1998-12-18 05:46:00 +00:00
troy@netscape.com
5c2565865b Added print options for controlling whether odd and even pages are printed 1998-12-10 03:07:11 +00:00
troy@netscape.com
91def96efc Initial check-in 1998-12-07 04:05:12 +00:00