Bug 1044736 - Part 2. Add nsIBrowserElementAPI.idl and implement nsBrowserElement. r=bz

This commit is contained in:
Kan-Ru Chen (陳侃如)
2014-11-12 14:20:18 +08:00
parent 687f27c287
commit 27c110b5aa
10 changed files with 494 additions and 33 deletions

View File

@@ -34,6 +34,7 @@ public:
mozilla::dom::FromParser aFromParser)
: nsGenericHTMLElement(aNodeInfo)
, nsElementFrameLoaderOwner(aFromParser)
, nsBrowserElement()
{
}
@@ -73,6 +74,19 @@ public:
static bool BrowserFramesEnabled();
/**
* nsIFrameLoaderOwner defines two GetFrameLoader() overloads. One
* is XPCOM style interface, the other one is C++ only. "using" pulls
* them both in, now GetFrameLoader() is ambiguous because
* nsBrowserElement also has GetFrameLoader(). Explicit redefine
* GetFrameLoader() to choose nsElementFrameLoaderOwner::GetFrameLoader()
*/
using nsElementFrameLoaderOwner::GetFrameLoader;
virtual already_AddRefed<nsFrameLoader> GetFrameLoader() MOZ_OVERRIDE
{
return nsElementFrameLoaderOwner::GetFrameLoader();
}
/**
* Helper method to map a HTML 'scrolling' attribute value to a nsIScrollable
* enum value. scrolling="no" (and its synonyms) maps to