Commit Graph

141 Commits

Author SHA1 Message Date
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
L. David Baron
57a8e776d8 Rename flags and methods from space manager to float manager. (Bug 191448) r+sr=roc 2009-01-04 19:39:54 -05:00
L. David Baron
23d4f4d4b2 Stop using nsAreaFrame for anything other than xul:label, which is the only thing for which it does anything different from nsBlockFrame, and rename it accordingly. (Bug 471356) r+sr=roc
--HG--
rename : layout/generic/nsAreaFrame.cpp => layout/xul/base/src/nsXULLabelFrame.cpp
rename : layout/generic/nsAreaFrame.h => layout/xul/base/src/nsXULLabelFrame.h
2008-12-29 10:07:38 -05:00
Zack Weinberg
4c0c6a9460 Bug 462763 - more MathML crashers. r+sr=roc 2008-12-11 14:08:35 -05:00
L. David Baron
c95d61afc0 Pass the user font set through more reliably and make it a required parameter. (Bug 467084) r+sr=roc a=blocking1.9.1+ 2008-12-04 08:09:53 -08:00
Phil Ringnalda
bbe7e1d08a Bug 461888 - Remove unused PACKAGE_FILE and PACKAGE_VARS and .pkg files, mozilla-central part, r=bsmedberg 2008-11-03 19:46:28 -08:00
Benjamin Smedberg
b1918bb2c3 Bug 462381 - Build layout directories in parallel r=ted sr=roc 2008-10-31 09:07:15 -07:00
Zack Weinberg
2f1c365c3d Bug 416907 - Crash [@ nsHTMLFramesetFrame::Reflow] with frameset in mroot; r+sr=roc 2008-10-30 18:10:19 +01:00
Jesse Ruderman
6a8f907cca Add crashtest for bug 443089 2008-09-25 14:57:35 -07:00
Zack Weinberg
a64209d05b Bug 456792 - Two more API cleanups for nsCSSRendering; patch 1; r+sr=roc 2008-09-25 17:53:27 +02:00
Zack Weinberg
7687ccc76b Bug 456152 - slight API cleanup for nsCSSRendering::PaintBackground; r+sr=roc 2008-09-24 06:07:22 +02:00
Frédéric WANG
894d1d2475 b=454085 Add text-indent:0 in mtable to prevent unexpected spaces r+sr=roc 2008-09-16 10:35:28 +12:00
Zack Weinberg
0f68a207ca Bug 453916: treat transparency strictly as a special case of color alpha. r+sr=dbaron 2008-09-12 08:35:53 -07:00
Zack Weinberg
c9153c98a8 Bug 446498 – use new border rendering for focus rectangles, and strip dead code. r+sr=vlad 2008-08-06 12:33:18 +02:00
Karl Tomlinson
59302b51ac non-spacing marks in munder are off center or too long. b=428863 r+sr=roc 2008-07-21 19:32:46 +12:00
Bernd
8346cb9495 limit mathml row- and colspans as we do for html bug 443089 r/sr=bzbarsky 2008-07-16 17:02:18 +02:00
Robert O'Callahan
7e15def36c Bug 444688. Use an IsFrameOfType check instead of a frame state bit to detect whether a frame excludes ignorable whitespace children. r+sr=dbaronlayout 2008-07-14 10:41:18 +12:00
Michael Ventnor
7e868a56e1 Implement text-shadow rendering (bug 10713). r+sr=roc. Relanding with fixes to make tests pass on Mac 2008-06-13 10:02:32 +12:00
Robert O'Callahan
6382ad7c40 Backing out text-shadow due to Mac issues 2008-06-12 17:32:31 +12:00
Michael Ventnor
480a40574d Implement text-shadow rendering. 2008-06-12 14:34:40 +12:00
jruderman@hmc.edu
124627becd Add crashtest 2008-04-22 21:31:40 -07:00
jruderman@hmc.edu
133ff9cb7f Adding crashtest. 2008-04-22 21:25:47 -07:00
karlt+@karlt.net
bd2e0ff50c clip parts of stretchy chars more carefully b=427666 (also fixes b=349907) r+sr=roc a1.9=damons 2008-04-22 20:13:09 -07:00
karlt+@karlt.net
9d594ffd95 PaintHorizontally: correct dy calculation when bm.ascent is -ve. b=242861 r+sr=roc a1.9=beltzner 2008-04-17 20:27:09 -07:00
karlt+@karlt.net
c0113e4cfb use text-rendering:optimizeLegibility so that non-spacing marks render. b=427659, r+sr=roc, a1.9=dsicore 2008-04-08 22:30:08 -07:00
timeless@mozdev.org
2901e3ff19 Bug 394114 Interfaces missing from various QI implementations. r=jag sr=jag a=dsicore 2008-04-07 23:18:35 -07:00
karlt+@karlt.net
8e0f78b813 Add mathfontSymbol.properties for SymbolMT on MS Windows. Prefer DejaVu to Cambria Math for better stretchy fences. b=425367 r=pavlov 2008-04-04 20:38:25 -07:00
karlt+@karlt.net
8148702754 Back out b=425367 change to see if that fixes reftest failures for bugs/414123.xhtml and mathml/mi-mathvariant-1.xhtml. 2008-04-02 16:51:09 -07:00
karlt+@karlt.net
a61a79ef31 Restore font-family order to that before b=425367 change to see if that fixes reftest failures for bugs/414123.xhtml and mathml/mi-mathvariant-1.xhtml. 2008-04-02 15:32:23 -07:00
karlt+@karlt.net
9e8a95a7f8 Add mathfontSymbol.properties for SymbolMT on MS Windows b=425367 r=pavlov 2008-04-02 14:06:17 -07:00
karlt+@karlt.net
ff916b3fa4 Correction to mroot width calculation. b=363240 r+sr=roc 2008-03-27 15:47:08 -07:00
dbaron@dbaron.org
f31447da64 Fixing asymmetry between what timeless landed for bug 394114 and what he backed out. 2008-03-19 15:05:04 -07:00
timeless@mozdev.org
f33eb4a3b4 reverting, wrong patch, missing AMBIGUOUS 2008-03-19 14:55:22 -07:00
karlt+@karlt.net
ada80919ce Move Place() from nsIMathMLFrame to nsMathMLContainerFrame b=363240, r+sr=roc 2008-03-17 22:57:35 -07:00
karlt+@karlt.net
6c6cd3ed3e Move Place() from nsIMathMLFrame to nsMathMLContainerFrame b=363240, r+sr=roc 2008-03-17 22:26:05 -07:00
karlt+@karlt.net
11f89ddd6a Add GetIntrinsicWidth for <msqrt>. b=363240, r+sr=roc 2008-03-17 22:06:23 -07:00
karlt+@karlt.net
e4c30bc0d5 Move Place() from nsIMathMLFrame to nsMathMLContainerFrame b=363240, r+sr=roc 2008-03-17 21:52:48 -07:00
karlt+@karlt.net
7647ac9bdc Only change the style of default mathvariant <mi> elements to italic when there is a corresponding italic Mathematical Alphanumeric Symbol. Accept non-BMP characters in nsMathMLOperator::LookupInvariantChar. Update the mathvariant entries in mathfont.properties from PUA characters to their Plane 1 Unicode assignments (remainder of bug 289938). b=413115, r+sr=roc. 2008-03-15 19:10:47 -07:00
karlt+@karlt.net
5deea10aba GetIntrinsicWidth for mroot, mfenced, and mfrac. b=363240, r+sr=roc 2008-03-13 22:02:49 -07:00
karlt+@karlt.net
2071d69173 nsMathMLChar::GetMaxWidth and stretchy <mo> GetIntrinsicWidth implementations. Rename MAXSIZE_IS_EXPLICIT to MAXSIZE_IS_ABSOLUTE. Avoid unsigned/signed warnings with 1<<31. b=363240, r+sr=roc 2008-03-13 21:05:43 -07:00
karlt+@karlt.net
b64fb6eb32 Remove some unused nsGlyphTable methods. b=363240, r+sr=roc 2008-03-12 21:50:44 -07:00
jruderman@hmc.edu
728e86591d Add crashtest 2008-03-08 22:32:28 -08:00
karlt+@karlt.net
423c6ce2f9 Don't try to Place() invisible operators. b=420420 r+sr=roc a=beltzner 2008-03-06 22:37:23 -08:00
karlt+@karlt.net
4260e2c912 Bug 416549 - MathML does not render properly with text-align:justify. Patch by Frédéric WANG <fwsmail35@aol.com>, r=karlt, sr=roc 2008-03-06 19:47:11 -08:00
karlt+@karlt.net
88cb41a133 Backing out previous revision (b=416549) due to a reftest hang on qm-centos5-01 2008-03-06 16:19:00 -08:00
karlt+@karlt.net
6e07d7b64d Backing out previous revision (b=420420) due to reftest hang on qm-centos5-01 2008-03-06 16:14:56 -08:00
karlt+@karlt.net
dd94eb4942 Don't try to Place() invisible operators. b=420420 r+sr=roc a=beltzner 2008-03-06 14:21:07 -08:00
karlt+@karlt.net
ce3034771d Bug 416549 - MathML does not render properly with text-align:justify. Patch by Frédéric WANG <fwsmail35@aol.com>, r=karlt, sr=roc 2008-03-06 13:59:03 -08:00