Commit Graph

245 Commits

Author SHA1 Message Date
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
Robert O'Callahan
247c01e3bb Backing out bug 448830 2008-09-28 23:13:58 +13:00
Jeremy Lea
32d2314112 Bug 448830. Make nsIntRect/nsIntMargin/nsIntSize/nsIntPoint their own types so that we can catch errors by distinguishing pixels from appunits. r+sr=roc 2008-09-28 20:38:34 +13:00
Olli Pettay
5c06da3485 Bug 433132, Running mochitest for bug 396024 still leaks r+sr=roc 2008-09-26 12:51:42 +03:00
Robert O'Callahan
ab507b7a60 Backing out bug 448830 2008-09-26 13:10:26 +12:00
Jeremy Lea
e2ebf884de Bug 448830. Make nsIntRect/nsIntSize/nsIntPoint/nsIntMargin separate types so we get appunit vs pixel typechecking. r+sr=roc 2008-09-26 10:42:19 +12:00
Arpad Borsos
7066401df6 Bug 454475 - Fix "unhandled enumeration value" warnings in layout/; r+sr=roc 2008-09-16 13:25:35 +02:00
Daniel Holbert
b849cc1a2b Bug 447835, r+sr=roc 2008-09-09 11:26:20 -07:00
Robert O'Callahan
49dbf21392 Bug 118704. Get the document title from the DOM instead of storing it in the document object. Relanding with hopeful leak fix. r+sr=jst 2008-08-18 14:10:28 +12:00
Robert O'Callahan
99068c5357 Backing out bug 118704 to try to fix Windows leak orange 2008-08-16 23:27:40 +12:00
Robert O'Callahan
499ef97faa Bug 118704. Get the document title from the DOM instead of storing it as a string in the document. r+sr=jst 2008-08-16 21:01:46 +12:00
923422fc18 But 431587: Use zoom-ratio when computing number of needed pages during print-selection. r+sr=roc a=damons 2008-04-30 23:31:17 -07:00
117e04aaa7 Bug 430748: In print-selection, crop out selection regions that are before the top of the first page. (e.g. initial whitespace) r+sr=roc a=beltzner 2008-04-29 11:16:49 -07:00
bca91125db Bug 430357: Subtract not just normal margin, but also unwriteable margin, when positioning selected block during print-selection. r+sr=roc a=damons 2008-04-22 18:53:20 -07:00
5e3256eb6f Bug 430150: During print-selection, use zoom ratio to scale y-position and height of selection, so that it doesn't get shifted too far when we move it to top of page. r+sr=roc a1.9=damons 2008-04-21 18:22:48 -07:00
794988423c 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
9d770cba36 Backing out bug 429337 to fix broken printing reftests on linux test box. 2008-04-21 17:48:12 -07:00
ec1b8b6c49 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
8461a5118f backout Bug 424377, a=beltzner 2008-04-15 11:02:22 -07:00
2c317f145e Minor comment-only change (fixing typo) 2008-04-10 17:39:16 -07:00
1274f522c3 Bug 408355: Better fix for bug 396024 that doesn't leak (as much). r+sr=roc, a=beltzner 2008-04-08 22:24:13 -07:00
580fbdd346 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
24c5296610 Bug 424377, r=jst, sr=roc 2008-04-01 03:37:28 -07:00
a4bcda9783 Bug 423345: Use mIsCreatingPrintPreview, not mIsDoingPrintPreview, to check if we're setting up a print-preview page. r+sr=vlad a=blocking1.9+ 2008-03-19 16:04:40 -07:00
808135857e 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
df25a6140d Backing out Bug 417356, due to pagination reftest failures. 2008-03-14 01:50:13 -07:00
ac7f310325 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
f40c6d5b86 Bug 407080: Disallow print-preview while page is loading. (Re-landing with broken mochitest disabled) r+sr=roc, a=blocking1.9+ 2008-03-13 14:12:55 -07:00
243c826b73 Backing out bug 407080 to investigate breakage of mochitest test_bug396024.html 2008-03-03 22:11:54 -08:00
d641ade830 Bug 407080: Disallow print-preview if page is loading. r+sr=roc, a=blocking1.9+ 2008-03-03 17:05:27 -08:00
17259f0581 Bug 416998: Fix the order of member variable initializers for a few constructors. sr=bz, a=schrep 2008-02-18 23:36:50 -08:00
f0d15798aa Bug 398269. Treat naked <frame> elements not in framesets like <iframes> when printing. r+sr=mats 2008-02-06 20:00:50 -08:00
c89a0eb1b5 Bug 389358 -- Give doc title & URL to pageSeqFrame for display in print-preview header. r+sr=roc; a=blocking1.9+ 2008-01-28 22:49:54 -08:00
6b8c86b0e6 Bug 193001 - "Use gnome's native print dialog" [p=ventnor.bugzilla@yahoo.com.au (Michael Ventnor) r+sr+a1.9=roc] 2008-01-20 19:47:25 -08:00
94a8704299 Back out Michael Ventnor's patch from bug 193001 for now, as it is causing crashes in bug 396024's mochitest. 2008-01-17 02:11:00 -08:00
d7ef4c0f48 Bug 193001 - "Use gnome's native print dialog" [p=ventnor.bugzilla@yahoo.com.au (Michael Ventnor) r+sr=roc a1.9=schrep] 2008-01-16 22:27:50 -08:00
7260a7259c 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
7e0603fd12 Bug 301560, print() from modal dialog crashes browser [@ nsPrintEngine::ShowPrintProgress], r+sr=bz, a=blocking1.9+ 2007-11-12 04:17:23 -08:00
3a4c4b6a20 Bug 398265, Crash [@ nsPrintPreviewListener::RemoveListeners()] with <frame> on print preview, r+sr=roc, a=1.9+ 2007-11-09 14:38:46 -08:00
5baf064a6d Bug 363265, Scroll arrows, page up/page down, home, end, and space don't work in print preview, r=roc+myk,sr=roc,a=1.9+ 2007-11-09 02:19:12 -08:00
9f351ff772 remove XP_MAC usage. b=281889 r=cbarrett sr=roc a=roc 2007-10-01 16:20:37 -07:00
bc58a7eab6 Bug 362734 - Crash [@ nsPrintEngine::DocumentReadyForPrinting] with testcase that sets print preview, then reloads the page, patch by Andrew Smith, r=sharparrow1, sr=roc (blocking1.9 bug) 2007-09-04 14:44:42 -07:00
d0829b5bfc Make sure to process style updates before reflow, and both before painting. Bug 375436, r+sr=roc, a=dbaron 2007-08-21 19:57:06 -07:00
0251575d88 Bye bye Xprint. b=326716 r+sr=dbaron 2007-06-13 11:02:58 -07:00
70e37b2ff0 Bug 363089, Remove nsIDOMEventReceiver (this time passes mochitest), r+sr=jst 2007-05-14 02:11:38 -07:00
48b9089c92 Process XBL constructors right after the frame construction inInitialReflow(). Bug 377119, r+sr=sicking 2007-05-13 20:52:48 -07:00
0f958609c2 backout Bug 363089 2007-05-11 06:34:05 -07:00
833e8c64f1 Bug 363089, Remove nsIDOMEventReceiver, r+sr=jst 2007-05-11 04:15:11 -07:00