Bug 835981 part 1. Switch nsIDOMXULElement::GetBuilder consumers to nsXULElement instead. r=peterv

This commit is contained in:
Boris Zbarsky 2017-02-02 10:32:57 -05:00
parent 8aa589ac59
commit 5e86c194f6
7 changed files with 11 additions and 21 deletions

View File

@ -6,7 +6,6 @@
#include "nsIDOMElement.idl"
interface nsIRDFCompositeDataSource;
interface nsIXULTemplateBuilder;
interface nsIRDFResource;
interface nsIControllers;
interface nsIBoxObject;
@ -64,7 +63,6 @@ interface nsIDOMXULElement : nsIDOMElement
attribute boolean allowEvents;
readonly attribute nsIRDFCompositeDataSource database;
readonly attribute nsIXULTemplateBuilder builder;
readonly attribute nsIRDFResource resource;
readonly attribute nsIControllers controllers;
readonly attribute nsIBoxObject boxObject;

View File

@ -1423,13 +1423,6 @@ nsXULElement::GetDatabase()
}
NS_IMETHODIMP
nsXULElement::GetBuilder(nsIXULTemplateBuilder** aBuilder)
{
*aBuilder = GetBuilder().take();
return NS_OK;
}
already_AddRefed<nsIXULTemplateBuilder>
nsXULElement::GetBuilder()
{

View File

@ -32,7 +32,7 @@
#include "nsQuickSort.h"
#include "nsWhitespaceTokenizer.h"
#include "nsXULSortService.h"
#include "nsIDOMXULElement.h"
#include "nsXULElement.h"
#include "nsIXULTemplateBuilder.h"
#include "nsTemplateMatch.h"
#include "nsICollation.h"
@ -107,10 +107,9 @@ XULSortServiceImpl::GetItemsToSort(nsIContent *aContainer,
{
// if there is a template attached to the sort node, use the builder to get
// the items to be sorted
nsCOMPtr<nsIDOMXULElement> element = do_QueryInterface(aContainer);
RefPtr<nsXULElement> element = nsXULElement::FromContent(aContainer);
if (element) {
nsCOMPtr<nsIXULTemplateBuilder> builder;
element->GetBuilder(getter_AddRefs(builder));
nsCOMPtr<nsIXULTemplateBuilder> builder = element->GetBuilder();
if (builder) {
nsresult rv = builder->GetQueryProcessor(getter_AddRefs(aSortState->processor));

View File

@ -102,6 +102,7 @@ LOCAL_INCLUDES += [
'../painting',
'../style',
'/dom/base',
'/dom/xul',
]
if CONFIG['GNU_CXX']:

View File

@ -12,7 +12,7 @@
#include "nsContentUtils.h"
#include "nsIDOMDocument.h"
#include "nsIDOMEvent.h"
#include "nsIDOMXULElement.h"
#include "nsXULElement.h"
#include "nsIDOMXULMenuListElement.h"
#include "nsIXULDocument.h"
#include "nsIXULTemplateBuilder.h"
@ -678,10 +678,9 @@ nsXULPopupManager::ShowMenu(nsIContent *aMenu,
if (aMenu) {
nsIContent* element = aMenu;
do {
nsCOMPtr<nsIDOMXULElement> xulelem = do_QueryInterface(element);
RefPtr<nsXULElement> xulelem = nsXULElement::FromContent(element);
if (xulelem) {
nsCOMPtr<nsIXULTemplateBuilder> builder;
xulelem->GetBuilder(getter_AddRefs(builder));
nsCOMPtr<nsIXULTemplateBuilder> builder = xulelem->GetBuilder();
if (builder) {
builder->CreateContents(aMenu, true);
break;

View File

@ -5,7 +5,7 @@
#include "mozilla/dom/TreeBoxObject.h"
#include "nsCOMPtr.h"
#include "nsIDOMXULElement.h"
#include "nsXULElement.h"
#include "nsIScriptableRegion.h"
#include "nsIXULTemplateBuilder.h"
#include "nsTreeContentView.h"
@ -143,11 +143,10 @@ TreeBoxObject::GetView(nsITreeView * *aView)
return mTreeBody->GetView(aView);
}
if (!mView) {
nsCOMPtr<nsIDOMXULElement> xulele = do_QueryInterface(mContent);
RefPtr<nsXULElement> xulele = nsXULElement::FromContentOrNull(mContent);
if (xulele) {
// See if there is a XUL tree builder associated with the element
nsCOMPtr<nsIXULTemplateBuilder> builder;
xulele->GetBuilder(getter_AddRefs(builder));
nsCOMPtr<nsIXULTemplateBuilder> builder = xulele->GetBuilder();
mView = do_QueryInterface(builder);
if (!mView) {

View File

@ -48,6 +48,7 @@ LOCAL_INCLUDES += [
'../../painting',
'../../style',
'/dom/base',
'/dom/xul',
]
if CONFIG['GNU_CXX']: