Last Comment Bug 405855 - Unused interfaces in mozilla
: Unused interfaces in mozilla
Product: Core
Classification: Components
Component: SVG (show other bugs)
: Trunk
: x86 Mac OS X
-- normal (vote)
: ---
Assigned To: Nobody; OK to take it and work on it
: Jet Villegas (:jet)
Depends on: 499665
  Show dependency treegraph
Reported: 2007-11-28 13:57 PST by (dormant account)
Modified: 2010-01-24 04:18 PST (History)
15 users (show)
See Also:
Crash Signature:
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Description User image (dormant account) 2007-11-28 13:57:14 PST
Turns out that there aren't nearly as many dead interfaces (derived from nsISupports) in Moz as one would expect. 7/10 unimplemented ones are public interfaces. Note that I'm also processing testcases, so there aren't any testcases for these.

Here is the script I used to find them.

Here are my stats:
6375 classes derived from nsISupports
layout/style/nsCSSAnonBoxes.h:48: nsICSSAnonBoxPseudo has no class members.
layout/style/nsCSSPseudoElements.h:48: nsICSSPseudoElement has no class members.
layout/style/nsCSSPseudoClasses.h:48: nsICSSPseudoClass has no class members.
355 valid non-XPIDL interfaces
Only one implementation: 153
No Implementation: 10
content/svg/content/src/nsIDOMSVGListener.h:52: nsIDOMSVGListener
content/svg/content/src/nsIDOMSVGZoomListener.h:52: nsIDOMSVGZoomListener
widget/public/nsIMouseListener.h:55: nsIMouseListener
widget/public/nsIMenuListener.h:58: nsIMenuListener
dom/public/nsIDOMClassInfo.h:148: nsIDOMCIExtension
intl/uconv/public/nsIUnicodeEncoder.h:79: nsIUnicharEncoder
dom/src/base/nsGlobalWindowCommands.cpp:677: nsWebNavigationBaseCommand
layout/xul/base/src/nsIScrollbarListener.h:50: nsIScrollbarListener
widget/public/nsIPluginWidget.h:50: nsIPluginWidget
content/base/public/nsIXFormsUtilityService.h:65: nsIXFormsUtilityService
Comment 1 User image Robert Longson 2007-11-28 14:35:55 PST
I wonder if nsIDOMSVGListener and nsIDOMSVGZoomListener are used by svg zoom/pan extensions e.g. bug 163068 comment 32
Comment 2 User image Brendan Eich [:brendan] 2007-11-28 22:17:01 PST
I suggested we use sort -u | comm -23 to set-difference the list taras produced minus the mozpad list of known-useful platform interfaces, to get a hit-list. Thoughts?

Comment 3 User image Olli Pettay [:smaug] 2007-11-29 00:06:07 PST
nsIXFormsUtilityService is used at least by xforms extension.
nsWebNavigationBaseCommand is not an interface.
Comment 4 User image alexander :surkov 2007-11-29 01:36:06 PST
(In reply to comment #3)
> nsIXFormsUtilityService is used at least by xforms extension.

as well by accessibility.
Comment 5 User image Robert Longson 2010-01-24 04:18:59 PST
The SVG interfaces were removed in bug 499665. If there are any other unused interfaces then I guess they need a new bug with a different component.

Note You need to log in before you can comment on or make changes to this bug.