Commit Graph

25 Commits

Author SHA1 Message Date
Zack Weinberg
d47e0f433b 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
4453cced60 Backed out changeset e2927bb26412 2009-08-26 14:49:18 -07:00
Zack Weinberg
64f6d4d0dd 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

--HG--
extra : rebase_source : ee672a17934227b408b83dc6b5cc4e4909652f72
2009-08-26 09:27:42 -07:00
Benjamin Smedberg
3498a5f86e 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
73a6fab34b 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
802d1a10c7 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
enndeakin@sympatico.ca
59c3596049 Bug 279703, rework XUL popups to use asynchronous opening, plus many other fixes, attempt 2 with creating widgets later, r=bz,neil,roc,sr=bz 2007-07-04 08:49:38 -07:00
enndeakin@sympatico.ca
8a87437d5f Bug 279703, backing out the popup changes due to performance regressions. sigh. 2007-06-29 15:15:59 -07:00
enndeakin@sympatico.ca
534c14e326 Bug 279703, rework XUL popups to use asynchronous opening, plus many other fixes, r=bz,neil,sr=bz 2007-06-29 12:04:45 -07:00
bsmedberg%covad.net
78f6d0683d 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
aaronleventhal%moonset.net
0ada7ea5e9 Bug 303404. Crash when hitting escape in context menu for a menu item. r=dbaron, sr=neil 2005-08-17 02:03:45 +00:00
aaronleventhal%moonset.net
3a39c08abe Bug 281568. MSAA events EVENT_MENUEND/EVENT_MENUPOPUPEND fired too late, when dialog opens from menu action. Screen readers get confused. r=bryner, sr=neil, a=dveditz 2005-02-11 13:18:40 +00:00
gerv%gerv.net
708b56cff4 Bug 236613: change to MPL/LGPL/GPL tri-license. 2004-04-18 14:30:37 +00:00
smontagu%netscape.com
8b17163212 Bug 140609: navigating menu bar with arrows is reversed when UI aligned to the right. r=dean_tessman@hotmail.com, sr=jst. 2002-08-06 23:47:01 +00:00
dbaron%fas.harvard.edu
6d2263f19b Convert handwritten GetIID methods to use NS_DEFINE_STATIC_IID_ACCESSOR and add |const| to GetCID methods so that static |nsID|s are declared as |const|. b=153525 sr=jag r=bryner 2002-06-26 03:38:55 +00:00
pete.zha%sun.com
f8b6f742a7 bug 92491:press letters to select item in XUL menu, menulist
r=aaronl sr=hyatt
Check in for Kyle Yuan's(kyle.yuan@sun.com) fix
2002-04-24 07:15:35 +00:00
bryner%netscape.com
653df3043e Revert to using an attribute for menuactive (bug 133610). r=ben/jkeiser, sr=jst, a=asa. 2002-03-27 07:01:26 +00:00
bryner%netscape.com
a34c68fa0b Changing XUL menus to use a :-moz-menuactive pseudoclass rather than a menuactive attribute for styling the active item. This will allow XBL select widgets to not modify the HTML DOM. Bug 128947, r=dbaron, sr=hyatt, a=asa. 2002-03-12 21:49:23 +00:00
hyatt%netscape.com
0ec3f045d8 Fix for 112980, nsITheme API and dynamic skin switching re-enabling. r=ben, sr=waterson 2001-12-17 22:51:39 +00:00
gerv%gerv.net
4e12e44b2f Relicensing Round 1, Take 2. Most C-like NPL files -> NPL/GPL/LGPL. Bug 98089. 2001-09-28 20:14:13 +00:00
dbaron%fas.harvard.edu
aa4fec2b67 Header include dependency cleanup. b=64023 r=jag rs=brendan 2001-07-16 02:40:48 +00:00
hyatt%netscape.com
148b1fdd8e Fix for 38461, r=ben 2000-08-17 09:15:51 +00:00
pinkerton%netscape.com
aa084907d3 oops, forgot to check this in. 2000-08-03 22:25:23 +00:00
hyatt%netscape.com
987bf4e696 Fix for bug #5927. 2000-02-13 08:33:39 +00:00
hyatt%netscape.com
c9071b6195 Fixes for bugs 24969 and 27109. 2000-02-11 00:56:41 +00:00