mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-08 04:27:37 +00:00
b88fc62b54
--HG-- rename : content/xul/document/src/XULDocument.cpp => dom/xul/XULDocument.cpp rename : content/xul/document/src/XULDocument.h => dom/xul/XULDocument.h rename : content/xul/content/crashtests/107518-1.xml => dom/xul/crashtests/107518-1.xml rename : content/xul/content/crashtests/252448-1.xul => dom/xul/crashtests/252448-1.xul rename : content/xul/content/crashtests/253479-1.xul => dom/xul/crashtests/253479-1.xul rename : content/xul/content/crashtests/253479-2.xul => dom/xul/crashtests/253479-2.xul rename : content/xul/document/crashtests/326204-1.xul => dom/xul/crashtests/326204-1.xul rename : content/xul/content/crashtests/326644-1-inner.xul => dom/xul/crashtests/326644-1-inner.xul rename : content/xul/content/crashtests/326644-1.html => dom/xul/crashtests/326644-1.html rename : content/xul/content/crashtests/326644-2-inner.xul => dom/xul/crashtests/326644-2-inner.xul rename : content/xul/content/crashtests/326644-2.html => dom/xul/crashtests/326644-2.html rename : content/xul/content/crashtests/326864-1.xul => dom/xul/crashtests/326864-1.xul rename : content/xul/content/crashtests/326875-1.xul => dom/xul/crashtests/326875-1.xul rename : content/xul/content/crashtests/326881-1.xul => dom/xul/crashtests/326881-1.xul rename : content/xul/content/crashtests/329982-1.xhtml => dom/xul/crashtests/329982-1.xhtml rename : content/xul/content/crashtests/336096-1.xhtml => dom/xul/crashtests/336096-1.xhtml rename : content/xul/document/crashtests/344215-1.xul => dom/xul/crashtests/344215-1.xul rename : content/xul/content/crashtests/354611-1.html => dom/xul/crashtests/354611-1.html rename : content/xul/content/crashtests/360078-1.xhtml => dom/xul/crashtests/360078-1.xhtml rename : content/xul/content/crashtests/360078-1xbl.xml => dom/xul/crashtests/360078-1xbl.xml rename : content/xul/content/crashtests/363791-1.xul => dom/xul/crashtests/363791-1.xul rename : content/xul/content/crashtests/384740-1.xul => dom/xul/crashtests/384740-1.xul rename : content/xul/content/crashtests/384877-1-inner.xul => dom/xul/crashtests/384877-1-inner.xul rename : content/xul/content/crashtests/384877-1.html => dom/xul/crashtests/384877-1.html rename : content/xul/document/crashtests/386914-1-inner.xul => dom/xul/crashtests/386914-1-inner.xul rename : content/xul/document/crashtests/386914-1.html => dom/xul/crashtests/386914-1.html rename : content/xul/content/crashtests/386947-1.xul => dom/xul/crashtests/386947-1.xul rename : content/xul/content/crashtests/425821-1.xul => dom/xul/crashtests/425821-1.xul rename : content/xul/document/crashtests/428951-1.xul => dom/xul/crashtests/428951-1.xul rename : content/xul/content/crashtests/429085-1.xhtml => dom/xul/crashtests/429085-1.xhtml rename : content/xul/content/crashtests/431906-1-inner.xul => dom/xul/crashtests/431906-1-inner.xul rename : content/xul/content/crashtests/431906-1.html => dom/xul/crashtests/431906-1.html rename : content/xul/content/crashtests/451311-1.xul => dom/xul/crashtests/451311-1.xul rename : content/xul/content/crashtests/461917-1.xhtml => dom/xul/crashtests/461917-1.xhtml rename : content/xul/document/crashtests/468211-1.xul => dom/xul/crashtests/468211-1.xul rename : content/xul/document/crashtests/468211-2-binding.xml => dom/xul/crashtests/468211-2-binding.xml rename : content/xul/document/crashtests/468211-2.xul => dom/xul/crashtests/468211-2.xul rename : content/xul/document/crashtests/468211-3.xul => dom/xul/crashtests/468211-3.xul rename : content/xul/document/crashtests/495635-1.xul => dom/xul/crashtests/495635-1.xul rename : content/xul/content/crashtests/509719-1-overlay.xul => dom/xul/crashtests/509719-1-overlay.xul rename : content/xul/content/crashtests/509719-1.xul => dom/xul/crashtests/509719-1.xul rename : content/xul/content/crashtests/509719-2-overlay.xul => dom/xul/crashtests/509719-2-overlay.xul rename : content/xul/content/crashtests/509719-2.xul => dom/xul/crashtests/509719-2.xul rename : content/xul/document/crashtests/583230.xul => dom/xul/crashtests/583230.xul rename : content/xul/content/crashtests/crashtests.list => dom/xul/crashtests/crashtests.list rename : content/xul/document/crashtests/extA1.xul => dom/xul/crashtests/extA1.xul rename : content/xul/document/crashtests/extA2.xul => dom/xul/crashtests/extA2.xul rename : content/xul/document/crashtests/extB1.xul => dom/xul/crashtests/extB1.xul rename : content/xul/moz.build => dom/xul/moz.build rename : content/xul/document/src/nsForwardReference.h => dom/xul/nsForwardReference.h rename : content/xul/document/public/nsIController.idl => dom/xul/nsIController.idl rename : content/xul/document/public/nsIControllers.idl => dom/xul/nsIControllers.idl rename : content/xul/content/public/nsIXULContextMenuBuilder.idl => dom/xul/nsIXULContextMenuBuilder.idl rename : content/xul/document/public/nsIXULDocument.h => dom/xul/nsIXULDocument.h rename : content/xul/document/public/nsIXULOverlayProvider.idl => dom/xul/nsIXULOverlayProvider.idl rename : content/xul/document/src/nsXULCommandDispatcher.cpp => dom/xul/nsXULCommandDispatcher.cpp rename : content/xul/document/src/nsXULCommandDispatcher.h => dom/xul/nsXULCommandDispatcher.h rename : content/xul/document/src/nsXULContentSink.cpp => dom/xul/nsXULContentSink.cpp rename : content/xul/document/src/nsXULContentSink.h => dom/xul/nsXULContentSink.h rename : content/xul/content/src/nsXULContextMenuBuilder.cpp => dom/xul/nsXULContextMenuBuilder.cpp rename : content/xul/content/src/nsXULContextMenuBuilder.h => dom/xul/nsXULContextMenuBuilder.h rename : content/xul/document/src/nsXULControllers.cpp => dom/xul/nsXULControllers.cpp rename : content/xul/document/src/nsXULControllers.h => dom/xul/nsXULControllers.h rename : content/xul/content/src/nsXULElement.cpp => dom/xul/nsXULElement.cpp rename : content/xul/content/src/nsXULElement.h => dom/xul/nsXULElement.h rename : content/xul/content/src/nsXULPopupListener.cpp => dom/xul/nsXULPopupListener.cpp rename : content/xul/content/src/nsXULPopupListener.h => dom/xul/nsXULPopupListener.h rename : content/xul/document/src/nsXULPrototypeCache.cpp => dom/xul/nsXULPrototypeCache.cpp rename : content/xul/document/src/nsXULPrototypeCache.h => dom/xul/nsXULPrototypeCache.h rename : content/xul/document/src/nsXULPrototypeDocument.cpp => dom/xul/nsXULPrototypeDocument.cpp rename : content/xul/document/src/nsXULPrototypeDocument.h => dom/xul/nsXULPrototypeDocument.h rename : content/xul/templates/src/crashtests/257752-1-recursion.rdf => dom/xul/templates/crashtests/257752-1-recursion.rdf rename : content/xul/templates/src/crashtests/257752-1-recursion.xul => dom/xul/templates/crashtests/257752-1-recursion.xul rename : content/xul/templates/src/crashtests/329884-1.xul => dom/xul/templates/crashtests/329884-1.xul rename : content/xul/templates/src/crashtests/330012-1.rdf => dom/xul/templates/crashtests/330012-1.rdf rename : content/xul/templates/src/crashtests/330012-1.xul => dom/xul/templates/crashtests/330012-1.xul rename : content/xul/templates/src/crashtests/404346-1.xul => dom/xul/templates/crashtests/404346-1.xul rename : content/xul/templates/src/crashtests/415019-1.xul => dom/xul/templates/crashtests/415019-1.xul rename : content/xul/templates/src/crashtests/417840-1.xul => dom/xul/templates/crashtests/417840-1.xul rename : content/xul/templates/src/crashtests/424418-1.xul => dom/xul/templates/crashtests/424418-1.xul rename : content/xul/templates/src/crashtests/crashtests.list => dom/xul/templates/crashtests/crashtests.list rename : content/xul/templates/moz.build => dom/xul/templates/moz.build rename : content/xul/templates/src/nsContentSupportMap.cpp => dom/xul/templates/nsContentSupportMap.cpp rename : content/xul/templates/src/nsContentSupportMap.h => dom/xul/templates/nsContentSupportMap.h rename : content/xul/templates/src/nsContentTestNode.cpp => dom/xul/templates/nsContentTestNode.cpp rename : content/xul/templates/src/nsContentTestNode.h => dom/xul/templates/nsContentTestNode.h rename : content/xul/templates/public/nsIXULBuilderListener.idl => dom/xul/templates/nsIXULBuilderListener.idl rename : content/xul/templates/public/nsIXULSortService.idl => dom/xul/templates/nsIXULSortService.idl rename : content/xul/templates/public/nsIXULTemplateBuilder.idl => dom/xul/templates/nsIXULTemplateBuilder.idl rename : content/xul/templates/public/nsIXULTemplateQueryProcessor.idl => dom/xul/templates/nsIXULTemplateQueryProcessor.idl rename : content/xul/templates/public/nsIXULTemplateResult.idl => dom/xul/templates/nsIXULTemplateResult.idl rename : content/xul/templates/public/nsIXULTemplateRuleFilter.idl => dom/xul/templates/nsIXULTemplateRuleFilter.idl rename : content/xul/templates/src/nsInstantiationNode.cpp => dom/xul/templates/nsInstantiationNode.cpp rename : content/xul/templates/src/nsInstantiationNode.h => dom/xul/templates/nsInstantiationNode.h rename : content/xul/templates/src/nsRDFBinding.cpp => dom/xul/templates/nsRDFBinding.cpp rename : content/xul/templates/src/nsRDFBinding.h => dom/xul/templates/nsRDFBinding.h rename : content/xul/templates/src/nsRDFConInstanceTestNode.cpp => dom/xul/templates/nsRDFConInstanceTestNode.cpp rename : content/xul/templates/src/nsRDFConInstanceTestNode.h => dom/xul/templates/nsRDFConInstanceTestNode.h rename : content/xul/templates/src/nsRDFConMemberTestNode.cpp => dom/xul/templates/nsRDFConMemberTestNode.cpp rename : content/xul/templates/src/nsRDFConMemberTestNode.h => dom/xul/templates/nsRDFConMemberTestNode.h rename : content/xul/templates/src/nsRDFPropertyTestNode.cpp => dom/xul/templates/nsRDFPropertyTestNode.cpp rename : content/xul/templates/src/nsRDFPropertyTestNode.h => dom/xul/templates/nsRDFPropertyTestNode.h rename : content/xul/templates/src/nsRDFQuery.cpp => dom/xul/templates/nsRDFQuery.cpp rename : content/xul/templates/src/nsRDFQuery.h => dom/xul/templates/nsRDFQuery.h rename : content/xul/templates/src/nsRDFTestNode.h => dom/xul/templates/nsRDFTestNode.h rename : content/xul/templates/src/nsResourceSet.cpp => dom/xul/templates/nsResourceSet.cpp rename : content/xul/templates/src/nsResourceSet.h => dom/xul/templates/nsResourceSet.h rename : content/xul/templates/src/nsRuleNetwork.cpp => dom/xul/templates/nsRuleNetwork.cpp rename : content/xul/templates/src/nsRuleNetwork.h => dom/xul/templates/nsRuleNetwork.h rename : content/xul/templates/src/nsTemplateMap.h => dom/xul/templates/nsTemplateMap.h rename : content/xul/templates/src/nsTemplateMatch.cpp => dom/xul/templates/nsTemplateMatch.cpp rename : content/xul/templates/src/nsTemplateMatch.h => dom/xul/templates/nsTemplateMatch.h rename : content/xul/templates/src/nsTemplateRule.cpp => dom/xul/templates/nsTemplateRule.cpp rename : content/xul/templates/src/nsTemplateRule.h => dom/xul/templates/nsTemplateRule.h rename : content/xul/templates/src/nsTreeRows.cpp => dom/xul/templates/nsTreeRows.cpp rename : content/xul/templates/src/nsTreeRows.h => dom/xul/templates/nsTreeRows.h rename : content/xul/templates/src/nsXMLBinding.cpp => dom/xul/templates/nsXMLBinding.cpp rename : content/xul/templates/src/nsXMLBinding.h => dom/xul/templates/nsXMLBinding.h rename : content/xul/templates/src/nsXULContentBuilder.cpp => dom/xul/templates/nsXULContentBuilder.cpp rename : content/xul/templates/src/nsXULContentUtils.cpp => dom/xul/templates/nsXULContentUtils.cpp rename : content/xul/templates/src/nsXULContentUtils.h => dom/xul/templates/nsXULContentUtils.h rename : content/xul/templates/src/nsXULResourceList.h => dom/xul/templates/nsXULResourceList.h rename : content/xul/templates/src/nsXULSortService.cpp => dom/xul/templates/nsXULSortService.cpp rename : content/xul/templates/src/nsXULSortService.h => dom/xul/templates/nsXULSortService.h rename : content/xul/templates/src/nsXULTemplateBuilder.cpp => dom/xul/templates/nsXULTemplateBuilder.cpp rename : content/xul/templates/src/nsXULTemplateBuilder.h => dom/xul/templates/nsXULTemplateBuilder.h rename : content/xul/templates/src/nsXULTemplateQueryProcessorRDF.cpp => dom/xul/templates/nsXULTemplateQueryProcessorRDF.cpp rename : content/xul/templates/src/nsXULTemplateQueryProcessorRDF.h => dom/xul/templates/nsXULTemplateQueryProcessorRDF.h rename : content/xul/templates/src/nsXULTemplateQueryProcessorStorage.cpp => dom/xul/templates/nsXULTemplateQueryProcessorStorage.cpp rename : content/xul/templates/src/nsXULTemplateQueryProcessorStorage.h => dom/xul/templates/nsXULTemplateQueryProcessorStorage.h rename : content/xul/templates/src/nsXULTemplateQueryProcessorXML.cpp => dom/xul/templates/nsXULTemplateQueryProcessorXML.cpp rename : content/xul/templates/src/nsXULTemplateQueryProcessorXML.h => dom/xul/templates/nsXULTemplateQueryProcessorXML.h rename : content/xul/templates/src/nsXULTemplateResultRDF.cpp => dom/xul/templates/nsXULTemplateResultRDF.cpp rename : content/xul/templates/src/nsXULTemplateResultRDF.h => dom/xul/templates/nsXULTemplateResultRDF.h rename : content/xul/templates/src/nsXULTemplateResultSetRDF.cpp => dom/xul/templates/nsXULTemplateResultSetRDF.cpp rename : content/xul/templates/src/nsXULTemplateResultSetRDF.h => dom/xul/templates/nsXULTemplateResultSetRDF.h rename : content/xul/templates/src/nsXULTemplateResultStorage.cpp => dom/xul/templates/nsXULTemplateResultStorage.cpp rename : content/xul/templates/src/nsXULTemplateResultStorage.h => dom/xul/templates/nsXULTemplateResultStorage.h rename : content/xul/templates/src/nsXULTemplateResultXML.cpp => dom/xul/templates/nsXULTemplateResultXML.cpp rename : content/xul/templates/src/nsXULTemplateResultXML.h => dom/xul/templates/nsXULTemplateResultXML.h rename : content/xul/templates/src/nsXULTreeBuilder.cpp => dom/xul/templates/nsXULTreeBuilder.cpp rename : content/xul/templates/tests/chrome/animals.rdf => dom/xul/templates/tests/chrome/animals.rdf rename : content/xul/templates/tests/chrome/animals.sqlite => dom/xul/templates/tests/chrome/animals.sqlite rename : content/xul/templates/tests/chrome/animals.xml => dom/xul/templates/tests/chrome/animals.xml rename : content/xul/templates/tests/chrome/bug441785-1.rdf => dom/xul/templates/tests/chrome/bug441785-1.rdf rename : content/xul/templates/tests/chrome/bug441785-2.rdf => dom/xul/templates/tests/chrome/bug441785-2.rdf rename : content/xul/templates/tests/chrome/chrome.ini => dom/xul/templates/tests/chrome/chrome.ini rename : content/xul/templates/tests/chrome/file_bug330010.rdf => dom/xul/templates/tests/chrome/file_bug330010.rdf rename : content/xul/templates/tests/chrome/templates_shared.js => dom/xul/templates/tests/chrome/templates_shared.js rename : content/xul/templates/tests/chrome/test_bug329335.xul => dom/xul/templates/tests/chrome/test_bug329335.xul rename : content/xul/templates/tests/chrome/test_bug330010.xul => dom/xul/templates/tests/chrome/test_bug330010.xul rename : content/xul/templates/tests/chrome/test_bug397148.xul => dom/xul/templates/tests/chrome/test_bug397148.xul rename : content/xul/templates/tests/chrome/test_bug441785.xul => dom/xul/templates/tests/chrome/test_bug441785.xul rename : content/xul/templates/tests/chrome/test_bug476634.xul => dom/xul/templates/tests/chrome/test_bug476634.xul rename : content/xul/templates/tests/chrome/test_sortservice.xul => dom/xul/templates/tests/chrome/test_sortservice.xul rename : content/xul/templates/tests/chrome/test_tmpl_bindingsextendedsyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_bindingsextendedsyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_bindingsmultiple.xul => dom/xul/templates/tests/chrome/test_tmpl_bindingsmultiple.xul rename : content/xul/templates/tests/chrome/test_tmpl_bindingsquerysyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_bindingsquerysyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_bindingsreversed.xul => dom/xul/templates/tests/chrome/test_tmpl_bindingsreversed.xul rename : content/xul/templates/tests/chrome/test_tmpl_bindingssameastriple.xul => dom/xul/templates/tests/chrome/test_tmpl_bindingssameastriple.xul rename : content/xul/templates/tests/chrome/test_tmpl_containerandmembervariablechanged.xul => dom/xul/templates/tests/chrome/test_tmpl_containerandmembervariablechanged.xul rename : content/xul/templates/tests/chrome/test_tmpl_containervariablechanged.xul => dom/xul/templates/tests/chrome/test_tmpl_containervariablechanged.xul rename : content/xul/templates/tests/chrome/test_tmpl_containmentattribute.xul => dom/xul/templates/tests/chrome/test_tmpl_containmentattribute.xul rename : content/xul/templates/tests/chrome/test_tmpl_defaultcontainervariableisuri.xul => dom/xul/templates/tests/chrome/test_tmpl_defaultcontainervariableisuri.xul rename : content/xul/templates/tests/chrome/test_tmpl_errors.xul => dom/xul/templates/tests/chrome/test_tmpl_errors.xul rename : content/xul/templates/tests/chrome/test_tmpl_extendedsyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_extendedsyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_extendedsyntaxemptyconditions.xul => dom/xul/templates/tests/chrome/test_tmpl_extendedsyntaxemptyconditions.xul rename : content/xul/templates/tests/chrome/test_tmpl_extendedsyntaxotherrefvariable.xul => dom/xul/templates/tests/chrome/test_tmpl_extendedsyntaxotherrefvariable.xul rename : content/xul/templates/tests/chrome/test_tmpl_extendedsyntaxremoveunmatched.xul => dom/xul/templates/tests/chrome/test_tmpl_extendedsyntaxremoveunmatched.xul rename : content/xul/templates/tests/chrome/test_tmpl_extendedsyntaxsimplevariablesubstitution.xul => dom/xul/templates/tests/chrome/test_tmpl_extendedsyntaxsimplevariablesubstitution.xul rename : content/xul/templates/tests/chrome/test_tmpl_extendedsyntaxtworulesrecurse.xul => dom/xul/templates/tests/chrome/test_tmpl_extendedsyntaxtworulesrecurse.xul rename : content/xul/templates/tests/chrome/test_tmpl_extendedsyntaxusinganinterveningcontainer.xul => dom/xul/templates/tests/chrome/test_tmpl_extendedsyntaxusinganinterveningcontainer.xul rename : content/xul/templates/tests/chrome/test_tmpl_extendedvariablesubstitution.xul => dom/xul/templates/tests/chrome/test_tmpl_extendedvariablesubstitution.xul rename : content/xul/templates/tests/chrome/test_tmpl_gridelement.xul => dom/xul/templates/tests/chrome/test_tmpl_gridelement.xul rename : content/xul/templates/tests/chrome/test_tmpl_htmlelementextendedsyntaxwithbinding.xul => dom/xul/templates/tests/chrome/test_tmpl_htmlelementextendedsyntaxwithbinding.xul rename : content/xul/templates/tests/chrome/test_tmpl_htmlelementquerysyntaxrecursive.xul => dom/xul/templates/tests/chrome/test_tmpl_htmlelementquerysyntaxrecursive.xul rename : content/xul/templates/tests/chrome/test_tmpl_htmlelementquerysyntaxwithmultiplerules.xul => dom/xul/templates/tests/chrome/test_tmpl_htmlelementquerysyntaxwithmultiplerules.xul rename : content/xul/templates/tests/chrome/test_tmpl_htmlelementsimplesyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_htmlelementsimplesyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_htmlelementsimplesyntaxusingatextnode.xul => dom/xul/templates/tests/chrome/test_tmpl_htmlelementsimplesyntaxusingatextnode.xul rename : content/xul/templates/tests/chrome/test_tmpl_invalidqp.xul => dom/xul/templates/tests/chrome/test_tmpl_invalidqp.xul rename : content/xul/templates/tests/chrome/test_tmpl_listboxelement.xul => dom/xul/templates/tests/chrome/test_tmpl_listboxelement.xul rename : content/xul/templates/tests/chrome/test_tmpl_literalasmember.xul => dom/xul/templates/tests/chrome/test_tmpl_literalasmember.xul rename : content/xul/templates/tests/chrome/test_tmpl_membervariablechanged.xul => dom/xul/templates/tests/chrome/test_tmpl_membervariablechanged.xul rename : content/xul/templates/tests/chrome/test_tmpl_membervariablesubstitution.xul => dom/xul/templates/tests/chrome/test_tmpl_membervariablesubstitution.xul rename : content/xul/templates/tests/chrome/test_tmpl_menuelement.xul => dom/xul/templates/tests/chrome/test_tmpl_menuelement.xul rename : content/xul/templates/tests/chrome/test_tmpl_menuelementrecursive.xul => dom/xul/templates/tests/chrome/test_tmpl_menuelementrecursive.xul rename : content/xul/templates/tests/chrome/test_tmpl_menulistelement.xul => dom/xul/templates/tests/chrome/test_tmpl_menulistelement.xul rename : content/xul/templates/tests/chrome/test_tmpl_mixedsyntaxiscontainer.xul => dom/xul/templates/tests/chrome/test_tmpl_mixedsyntaxiscontainer.xul rename : content/xul/templates/tests/chrome/test_tmpl_mixedsyntaxiscontainerisempty.xul => dom/xul/templates/tests/chrome/test_tmpl_mixedsyntaxiscontainerisempty.xul rename : content/xul/templates/tests/chrome/test_tmpl_mixedsyntaxisempty.xul => dom/xul/templates/tests/chrome/test_tmpl_mixedsyntaxisempty.xul rename : content/xul/templates/tests/chrome/test_tmpl_noaction.xul => dom/xul/templates/tests/chrome/test_tmpl_noaction.xul rename : content/xul/templates/tests/chrome/test_tmpl_noactionuriattribute.xul => dom/xul/templates/tests/chrome/test_tmpl_noactionuriattribute.xul rename : content/xul/templates/tests/chrome/test_tmpl_parentconditions.xul => dom/xul/templates/tests/chrome/test_tmpl_parentconditions.xul rename : content/xul/templates/tests/chrome/test_tmpl_parentcontenttag.xul => dom/xul/templates/tests/chrome/test_tmpl_parentcontenttag.xul rename : content/xul/templates/tests/chrome/test_tmpl_parentsimplesyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_parentsimplesyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_query3triples.xul => dom/xul/templates/tests/chrome/test_tmpl_query3triples.xul rename : content/xul/templates/tests/chrome/test_tmpl_query3tripleswherecontains.xul => dom/xul/templates/tests/chrome/test_tmpl_query3tripleswherecontains.xul rename : content/xul/templates/tests/chrome/test_tmpl_querymember3tripleswhereequals.xul => dom/xul/templates/tests/chrome/test_tmpl_querymember3tripleswhereequals.xul rename : content/xul/templates/tests/chrome/test_tmpl_querymemberandtwotriples.xul => dom/xul/templates/tests/chrome/test_tmpl_querymemberandtwotriples.xul rename : content/xul/templates/tests/chrome/test_tmpl_querymembertriplemembertriple.xul => dom/xul/templates/tests/chrome/test_tmpl_querymembertriplemembertriple.xul rename : content/xul/templates/tests/chrome/test_tmpl_queryresourcematch.xul => dom/xul/templates/tests/chrome/test_tmpl_queryresourcematch.xul rename : content/xul/templates/tests/chrome/test_tmpl_queryreversetriple.xul => dom/xul/templates/tests/chrome/test_tmpl_queryreversetriple.xul rename : content/xul/templates/tests/chrome/test_tmpl_queryselfwithtriple.xul => dom/xul/templates/tests/chrome/test_tmpl_queryselfwithtriple.xul rename : content/xul/templates/tests/chrome/test_tmpl_querysetone.xul => dom/xul/templates/tests/chrome/test_tmpl_querysetone.xul rename : content/xul/templates/tests/chrome/test_tmpl_querysettwo.xul => dom/xul/templates/tests/chrome/test_tmpl_querysettwo.xul rename : content/xul/templates/tests/chrome/test_tmpl_querysettwowithcondition.xul => dom/xul/templates/tests/chrome/test_tmpl_querysettwowithcondition.xul rename : content/xul/templates/tests/chrome/test_tmpl_querysyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_querysyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_querysyntaxmultiplerules.xul => dom/xul/templates/tests/chrome/test_tmpl_querysyntaxmultiplerules.xul rename : content/xul/templates/tests/chrome/test_tmpl_querysyntaxmultiplerulesfirstconditionall.xul => dom/xul/templates/tests/chrome/test_tmpl_querysyntaxmultiplerulesfirstconditionall.xul rename : content/xul/templates/tests/chrome/test_tmpl_querysyntaxmultiplerulestwoconditions.xul => dom/xul/templates/tests/chrome/test_tmpl_querysyntaxmultiplerulestwoconditions.xul rename : content/xul/templates/tests/chrome/test_tmpl_querytripleandmembermerge.xul => dom/xul/templates/tests/chrome/test_tmpl_querytripleandmembermerge.xul rename : content/xul/templates/tests/chrome/test_tmpl_querytripleobjecttosubject.xul => dom/xul/templates/tests/chrome/test_tmpl_querytripleobjecttosubject.xul rename : content/xul/templates/tests/chrome/test_tmpl_querytwomembers.xul => dom/xul/templates/tests/chrome/test_tmpl_querytwomembers.xul rename : content/xul/templates/tests/chrome/test_tmpl_querytwomembersfiltered.xul => dom/xul/templates/tests/chrome/test_tmpl_querytwomembersfiltered.xul rename : content/xul/templates/tests/chrome/test_tmpl_querytwotriples.xul => dom/xul/templates/tests/chrome/test_tmpl_querytwotriples.xul rename : content/xul/templates/tests/chrome/test_tmpl_queryupwardsmember.xul => dom/xul/templates/tests/chrome/test_tmpl_queryupwardsmember.xul rename : content/xul/templates/tests/chrome/test_tmpl_queryupwardsmembertripleandfilteringtriple.xul => dom/xul/templates/tests/chrome/test_tmpl_queryupwardsmembertripleandfilteringtriple.xul rename : content/xul/templates/tests/chrome/test_tmpl_querywithemptyconditions.xul => dom/xul/templates/tests/chrome/test_tmpl_querywithemptyconditions.xul rename : content/xul/templates/tests/chrome/test_tmpl_referenceasmember.xul => dom/xul/templates/tests/chrome/test_tmpl_referenceasmember.xul rename : content/xul/templates/tests/chrome/test_tmpl_regenerate.xul => dom/xul/templates/tests/chrome/test_tmpl_regenerate.xul rename : content/xul/templates/tests/chrome/test_tmpl_selfgenerationextendedsyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_selfgenerationextendedsyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_selfgenerationsimplesyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_selfgenerationsimplesyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_simplesyntaxenclosedinacontainer.xul => dom/xul/templates/tests/chrome/test_tmpl_simplesyntaxenclosedinacontainer.xul rename : content/xul/templates/tests/chrome/test_tmpl_simplesyntaxenclosedinacontainerwitharule.xul => dom/xul/templates/tests/chrome/test_tmpl_simplesyntaxenclosedinacontainerwitharule.xul rename : content/xul/templates/tests/chrome/test_tmpl_simplesyntaxfilter.xul => dom/xul/templates/tests/chrome/test_tmpl_simplesyntaxfilter.xul rename : content/xul/templates/tests/chrome/test_tmpl_simplesyntaxfilterwithmultiplerules.xul => dom/xul/templates/tests/chrome/test_tmpl_simplesyntaxfilterwithmultiplerules.xul rename : content/xul/templates/tests/chrome/test_tmpl_simplesyntaxfilterwithrule.xul => dom/xul/templates/tests/chrome/test_tmpl_simplesyntaxfilterwithrule.xul rename : content/xul/templates/tests/chrome/test_tmpl_simplesyntaxiteratingoverasinglevalue.xul => dom/xul/templates/tests/chrome/test_tmpl_simplesyntaxiteratingoverasinglevalue.xul rename : content/xul/templates/tests/chrome/test_tmpl_simplesyntaxusinganinterveningcontainer.xul => dom/xul/templates/tests/chrome/test_tmpl_simplesyntaxusinganinterveningcontainer.xul rename : content/xul/templates/tests/chrome/test_tmpl_simplesyntaxusingatextnode.xul => dom/xul/templates/tests/chrome/test_tmpl_simplesyntaxusingatextnode.xul rename : content/xul/templates/tests/chrome/test_tmpl_simplesyntaxusingcontainerasthegenerationelement.xul => dom/xul/templates/tests/chrome/test_tmpl_simplesyntaxusingcontainerasthegenerationelement.xul rename : content/xul/templates/tests/chrome/test_tmpl_simplesyntaxusingdontrecurse.xul => dom/xul/templates/tests/chrome/test_tmpl_simplesyntaxusingdontrecurse.xul rename : content/xul/templates/tests/chrome/test_tmpl_simplesyntaxusingrecursivegeneration.xul => dom/xul/templates/tests/chrome/test_tmpl_simplesyntaxusingrecursivegeneration.xul rename : content/xul/templates/tests/chrome/test_tmpl_simplesyntaxusingrecursivegenerationagain.xul => dom/xul/templates/tests/chrome/test_tmpl_simplesyntaxusingrecursivegenerationagain.xul rename : content/xul/templates/tests/chrome/test_tmpl_simplesyntaxwithtwovariablesused.xul => dom/xul/templates/tests/chrome/test_tmpl_simplesyntaxwithtwovariablesused.xul rename : content/xul/templates/tests/chrome/test_tmpl_simplevariablesubstitutioncaretsatbeginningandend.xul => dom/xul/templates/tests/chrome/test_tmpl_simplevariablesubstitutioncaretsatbeginningandend.xul rename : content/xul/templates/tests/chrome/test_tmpl_simplevariablesubstitutioncaretsubstitution.xul => dom/xul/templates/tests/chrome/test_tmpl_simplevariablesubstitutioncaretsubstitution.xul rename : content/xul/templates/tests/chrome/test_tmpl_simplevariablesubstitutionnovariable.xul => dom/xul/templates/tests/chrome/test_tmpl_simplevariablesubstitutionnovariable.xul rename : content/xul/templates/tests/chrome/test_tmpl_simplevariablesubstitutionquestionmarkaspartofvariable.xul => dom/xul/templates/tests/chrome/test_tmpl_simplevariablesubstitutionquestionmarkaspartofvariable.xul rename : content/xul/templates/tests/chrome/test_tmpl_simplevariablesubstitutionquestionmarksubstitution.xul => dom/xul/templates/tests/chrome/test_tmpl_simplevariablesubstitutionquestionmarksubstitution.xul rename : content/xul/templates/tests/chrome/test_tmpl_simplevariablesubstitutiontextandvariable.xul => dom/xul/templates/tests/chrome/test_tmpl_simplevariablesubstitutiontextandvariable.xul rename : content/xul/templates/tests/chrome/test_tmpl_simplevariablesubstitutionvariableandtextconcatenated.xul => dom/xul/templates/tests/chrome/test_tmpl_simplevariablesubstitutionvariableandtextconcatenated.xul rename : content/xul/templates/tests/chrome/test_tmpl_simplevariablesubstitutionvariablesconcatenated.xul => dom/xul/templates/tests/chrome/test_tmpl_simplevariablesubstitutionvariablesconcatenated.xul rename : content/xul/templates/tests/chrome/test_tmpl_sortascendinginteger.xul => dom/xul/templates/tests/chrome/test_tmpl_sortascendinginteger.xul rename : content/xul/templates/tests/chrome/test_tmpl_sortascendingquerysyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_sortascendingquerysyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_sortascendingtworulesquerysyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_sortascendingtworulesquerysyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_sortascendingtworuleswithcontainerquerysyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_sortascendingtworuleswithcontainerquerysyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_sortascendingtworuleswithdifferentcontainerquerysyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_sortascendingtworuleswithdifferentcontainerquerysyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_sortdescendingquerysyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_sortdescendingquerysyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_sortquerymemberandtwotriples.xul => dom/xul/templates/tests/chrome/test_tmpl_sortquerymemberandtwotriples.xul rename : content/xul/templates/tests/chrome/test_tmpl_sortresource2descendingsimplesyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_sortresource2descendingsimplesyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_sortresource2settopredicateascendingquerysyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_sortresource2settopredicateascendingquerysyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_sortresource2settopredicatedescendingquerysyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_sortresource2settopredicatedescendingquerysyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_sortresourceascendingquerysyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_sortresourceascendingquerysyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_sortresourcedescendingquerysyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_sortresourcedescendingquerysyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_sortresourcesettopredicateascendingquerysyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_sortresourcesettopredicateascendingquerysyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_sortresourcesettopredicatedescendingquerysyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_sortresourcesettopredicatedescendingquerysyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_sorttworesourcesasstringsettopredicatedescendingquerysyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_sorttworesourcesasstringsettopredicatedescendingquerysyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_sorttworesourcessettopredicateascendingquerysyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_sorttworesourcessettopredicateascendingquerysyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_sorttwovariablesascendingquerysyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_sorttwovariablesascendingquerysyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_sorttwovariablesascendingsimplesyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_sorttwovariablesascendingsimplesyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_sorttwovariablesdescendingquerysyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_sorttwovariablesdescendingquerysyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_sortunknownascendingquerysyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_sortunknownascendingquerysyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_storage_bad_parameters.xul => dom/xul/templates/tests/chrome/test_tmpl_storage_bad_parameters.xul rename : content/xul/templates/tests/chrome/test_tmpl_storage_bad_parameters_2.xul => dom/xul/templates/tests/chrome/test_tmpl_storage_bad_parameters_2.xul rename : content/xul/templates/tests/chrome/test_tmpl_storage_bad_parameters_3.xul => dom/xul/templates/tests/chrome/test_tmpl_storage_bad_parameters_3.xul rename : content/xul/templates/tests/chrome/test_tmpl_storage_baddatasource.xul => dom/xul/templates/tests/chrome/test_tmpl_storage_baddatasource.xul rename : content/xul/templates/tests/chrome/test_tmpl_storage_badquery.xul => dom/xul/templates/tests/chrome/test_tmpl_storage_badquery.xul rename : content/xul/templates/tests/chrome/test_tmpl_storage_dynamicparameters.xul => dom/xul/templates/tests/chrome/test_tmpl_storage_dynamicparameters.xul rename : content/xul/templates/tests/chrome/test_tmpl_storage_listbox.xul => dom/xul/templates/tests/chrome/test_tmpl_storage_listbox.xul rename : content/xul/templates/tests/chrome/test_tmpl_storage_multiqueries.xul => dom/xul/templates/tests/chrome/test_tmpl_storage_multiqueries.xul rename : content/xul/templates/tests/chrome/test_tmpl_storage_parameters.xul => dom/xul/templates/tests/chrome/test_tmpl_storage_parameters.xul rename : content/xul/templates/tests/chrome/test_tmpl_storage_rule.xul => dom/xul/templates/tests/chrome/test_tmpl_storage_rule.xul rename : content/xul/templates/tests/chrome/test_tmpl_storage_simple.xul => dom/xul/templates/tests/chrome/test_tmpl_storage_simple.xul rename : content/xul/templates/tests/chrome/test_tmpl_storage_sortintegerasc.xul => dom/xul/templates/tests/chrome/test_tmpl_storage_sortintegerasc.xul rename : content/xul/templates/tests/chrome/test_tmpl_storage_sortintegerdesc.xul => dom/xul/templates/tests/chrome/test_tmpl_storage_sortintegerdesc.xul rename : content/xul/templates/tests/chrome/test_tmpl_storage_sortstringasc.xul => dom/xul/templates/tests/chrome/test_tmpl_storage_sortstringasc.xul rename : content/xul/templates/tests/chrome/test_tmpl_storage_sortstringdesc.xul => dom/xul/templates/tests/chrome/test_tmpl_storage_sortstringdesc.xul rename : content/xul/templates/tests/chrome/test_tmpl_storage_tree.xul => dom/xul/templates/tests/chrome/test_tmpl_storage_tree.xul rename : content/xul/templates/tests/chrome/test_tmpl_treeelementquerysyntax.xul => dom/xul/templates/tests/chrome/test_tmpl_treeelementquerysyntax.xul rename : content/xul/templates/tests/chrome/test_tmpl_treeelementquerysyntaxnotrecursive.xul => dom/xul/templates/tests/chrome/test_tmpl_treeelementquerysyntaxnotrecursive.xul rename : content/xul/templates/tests/chrome/test_tmpl_treeelementquerysyntaxnotrecursivetreebuilder.xul => dom/xul/templates/tests/chrome/test_tmpl_treeelementquerysyntaxnotrecursivetreebuilder.xul rename : content/xul/templates/tests/chrome/test_tmpl_treeelementquerysyntaxrecursive.xul => dom/xul/templates/tests/chrome/test_tmpl_treeelementquerysyntaxrecursive.xul rename : content/xul/templates/tests/chrome/test_tmpl_treeelementquerysyntaxrecursivemultiplerules.xul => dom/xul/templates/tests/chrome/test_tmpl_treeelementquerysyntaxrecursivemultiplerules.xul rename : content/xul/templates/tests/chrome/test_tmpl_treeelementquerysyntaxrecursivemultiplerulestreebuilder.xul => dom/xul/templates/tests/chrome/test_tmpl_treeelementquerysyntaxrecursivemultiplerulestreebuilder.xul rename : content/xul/templates/tests/chrome/test_tmpl_treeelementquerysyntaxrecursivetreebuilder.xul => dom/xul/templates/tests/chrome/test_tmpl_treeelementquerysyntaxrecursivetreebuilder.xul rename : content/xul/templates/tests/chrome/test_tmpl_treeelementquerysyntaxtreebuilder.xul => dom/xul/templates/tests/chrome/test_tmpl_treeelementquerysyntaxtreebuilder.xul rename : content/xul/templates/tests/chrome/test_tmpl_treeelementsimplesyntaxnotrecursive.xul => dom/xul/templates/tests/chrome/test_tmpl_treeelementsimplesyntaxnotrecursive.xul rename : content/xul/templates/tests/chrome/test_tmpl_treeelementsimplesyntaxnotrecursivetreebuilder.xul => dom/xul/templates/tests/chrome/test_tmpl_treeelementsimplesyntaxnotrecursivetreebuilder.xul rename : content/xul/templates/tests/chrome/test_tmpl_treeelementsimplesyntaxrecursive.xul => dom/xul/templates/tests/chrome/test_tmpl_treeelementsimplesyntaxrecursive.xul rename : content/xul/templates/tests/chrome/test_tmpl_treeelementsimplesyntaxrecursivetreebuilder.xul => dom/xul/templates/tests/chrome/test_tmpl_treeelementsimplesyntaxrecursivetreebuilder.xul rename : content/xul/templates/tests/chrome/test_tmpl_treeelementtreecell.xul => dom/xul/templates/tests/chrome/test_tmpl_treeelementtreecell.xul rename : content/xul/templates/tests/chrome/test_tmpl_treeelementtreecellsortascending.xul => dom/xul/templates/tests/chrome/test_tmpl_treeelementtreecellsortascending.xul rename : content/xul/templates/tests/chrome/test_tmpl_treeelementtreecellsortascendingtreebuilder.xul => dom/xul/templates/tests/chrome/test_tmpl_treeelementtreecellsortascendingtreebuilder.xul rename : content/xul/templates/tests/chrome/test_tmpl_treeelementtreecelltreebuilder.xul => dom/xul/templates/tests/chrome/test_tmpl_treeelementtreecelltreebuilder.xul rename : content/xul/templates/tests/chrome/test_tmpl_treeelementtreeitemonly.xul => dom/xul/templates/tests/chrome/test_tmpl_treeelementtreeitemonly.xul rename : content/xul/templates/tests/chrome/test_tmpl_treeelementtreeitemsortascending.xul => dom/xul/templates/tests/chrome/test_tmpl_treeelementtreeitemsortascending.xul rename : content/xul/templates/tests/chrome/test_tmpl_twogenerationnodes.xul => dom/xul/templates/tests/chrome/test_tmpl_twogenerationnodes.xul rename : content/xul/templates/tests/chrome/test_tmpl_whereafterignorecase.xul => dom/xul/templates/tests/chrome/test_tmpl_whereafterignorecase.xul rename : content/xul/templates/tests/chrome/test_tmpl_whereafterlowercase.xul => dom/xul/templates/tests/chrome/test_tmpl_whereafterlowercase.xul rename : content/xul/templates/tests/chrome/test_tmpl_whereafternegation.xul => dom/xul/templates/tests/chrome/test_tmpl_whereafternegation.xul rename : content/xul/templates/tests/chrome/test_tmpl_whereafteruppercase.xul => dom/xul/templates/tests/chrome/test_tmpl_whereafteruppercase.xul rename : content/xul/templates/tests/chrome/test_tmpl_wherebeforeignorecase.xul => dom/xul/templates/tests/chrome/test_tmpl_wherebeforeignorecase.xul rename : content/xul/templates/tests/chrome/test_tmpl_wherebeforelowercase.xul => dom/xul/templates/tests/chrome/test_tmpl_wherebeforelowercase.xul rename : content/xul/templates/tests/chrome/test_tmpl_wherebeforenegation.xul => dom/xul/templates/tests/chrome/test_tmpl_wherebeforenegation.xul rename : content/xul/templates/tests/chrome/test_tmpl_wherebeforeuppercase.xul => dom/xul/templates/tests/chrome/test_tmpl_wherebeforeuppercase.xul rename : content/xul/templates/tests/chrome/test_tmpl_wherecontains.xul => dom/xul/templates/tests/chrome/test_tmpl_wherecontains.xul rename : content/xul/templates/tests/chrome/test_tmpl_wherecontainsignorecase.xul => dom/xul/templates/tests/chrome/test_tmpl_wherecontainsignorecase.xul rename : content/xul/templates/tests/chrome/test_tmpl_wherecontainsnegation.xul => dom/xul/templates/tests/chrome/test_tmpl_wherecontainsnegation.xul rename : content/xul/templates/tests/chrome/test_tmpl_wherecontainsnumber.xul => dom/xul/templates/tests/chrome/test_tmpl_wherecontainsnumber.xul rename : content/xul/templates/tests/chrome/test_tmpl_wherecontainsnumberstring.xul => dom/xul/templates/tests/chrome/test_tmpl_wherecontainsnumberstring.xul rename : content/xul/templates/tests/chrome/test_tmpl_wherecontainsresource.xul => dom/xul/templates/tests/chrome/test_tmpl_wherecontainsresource.xul rename : content/xul/templates/tests/chrome/test_tmpl_wherecontainstwo.xul => dom/xul/templates/tests/chrome/test_tmpl_wherecontainstwo.xul rename : content/xul/templates/tests/chrome/test_tmpl_whereendswith.xul => dom/xul/templates/tests/chrome/test_tmpl_whereendswith.xul rename : content/xul/templates/tests/chrome/test_tmpl_whereendswithignorecase.xul => dom/xul/templates/tests/chrome/test_tmpl_whereendswithignorecase.xul rename : content/xul/templates/tests/chrome/test_tmpl_whereendswithnegation.xul => dom/xul/templates/tests/chrome/test_tmpl_whereendswithnegation.xul rename : content/xul/templates/tests/chrome/test_tmpl_whereequals.xul => dom/xul/templates/tests/chrome/test_tmpl_whereequals.xul rename : content/xul/templates/tests/chrome/test_tmpl_whereequalsignorecase.xul => dom/xul/templates/tests/chrome/test_tmpl_whereequalsignorecase.xul rename : content/xul/templates/tests/chrome/test_tmpl_whereequalsmultiple.xul => dom/xul/templates/tests/chrome/test_tmpl_whereequalsmultiple.xul rename : content/xul/templates/tests/chrome/test_tmpl_whereequalsmultiplenegation.xul => dom/xul/templates/tests/chrome/test_tmpl_whereequalsmultiplenegation.xul rename : content/xul/templates/tests/chrome/test_tmpl_whereequalsmultiplenegationignorecase.xul => dom/xul/templates/tests/chrome/test_tmpl_whereequalsmultiplenegationignorecase.xul rename : content/xul/templates/tests/chrome/test_tmpl_whereequalsnegation.xul => dom/xul/templates/tests/chrome/test_tmpl_whereequalsnegation.xul rename : content/xul/templates/tests/chrome/test_tmpl_whereequalsnegationignorecase.xul => dom/xul/templates/tests/chrome/test_tmpl_whereequalsnegationignorecase.xul rename : content/xul/templates/tests/chrome/test_tmpl_whereequalsnegationwrongcase.xul => dom/xul/templates/tests/chrome/test_tmpl_whereequalsnegationwrongcase.xul rename : content/xul/templates/tests/chrome/test_tmpl_whereequalsnumber.xul => dom/xul/templates/tests/chrome/test_tmpl_whereequalsnumber.xul rename : content/xul/templates/tests/chrome/test_tmpl_whereequalsothervariable.xul => dom/xul/templates/tests/chrome/test_tmpl_whereequalsothervariable.xul rename : content/xul/templates/tests/chrome/test_tmpl_whereequalsresource.xul => dom/xul/templates/tests/chrome/test_tmpl_whereequalsresource.xul rename : content/xul/templates/tests/chrome/test_tmpl_whereequalssamevariable.xul => dom/xul/templates/tests/chrome/test_tmpl_whereequalssamevariable.xul rename : content/xul/templates/tests/chrome/test_tmpl_whereequalswrongcase.xul => dom/xul/templates/tests/chrome/test_tmpl_whereequalswrongcase.xul rename : content/xul/templates/tests/chrome/test_tmpl_wheregreater.xul => dom/xul/templates/tests/chrome/test_tmpl_wheregreater.xul rename : content/xul/templates/tests/chrome/test_tmpl_wheregreaternegation.xul => dom/xul/templates/tests/chrome/test_tmpl_wheregreaternegation.xul rename : content/xul/templates/tests/chrome/test_tmpl_wheregreaternegationstring.xul => dom/xul/templates/tests/chrome/test_tmpl_wheregreaternegationstring.xul rename : content/xul/templates/tests/chrome/test_tmpl_wheregreaterstring.xul => dom/xul/templates/tests/chrome/test_tmpl_wheregreaterstring.xul rename : content/xul/templates/tests/chrome/test_tmpl_whereless.xul => dom/xul/templates/tests/chrome/test_tmpl_whereless.xul rename : content/xul/templates/tests/chrome/test_tmpl_wherelessnegation.xul => dom/xul/templates/tests/chrome/test_tmpl_wherelessnegation.xul rename : content/xul/templates/tests/chrome/test_tmpl_wherelessnegationstring.xul => dom/xul/templates/tests/chrome/test_tmpl_wherelessnegationstring.xul rename : content/xul/templates/tests/chrome/test_tmpl_wherelessstring.xul => dom/xul/templates/tests/chrome/test_tmpl_wherelessstring.xul rename : content/xul/templates/tests/chrome/test_tmpl_wherenorel.xul => dom/xul/templates/tests/chrome/test_tmpl_wherenorel.xul rename : content/xul/templates/tests/chrome/test_tmpl_wherenosubject.xul => dom/xul/templates/tests/chrome/test_tmpl_wherenosubject.xul rename : content/xul/templates/tests/chrome/test_tmpl_wherenovalue.xul => dom/xul/templates/tests/chrome/test_tmpl_wherenovalue.xul rename : content/xul/templates/tests/chrome/test_tmpl_wherestartswith.xul => dom/xul/templates/tests/chrome/test_tmpl_wherestartswith.xul rename : content/xul/templates/tests/chrome/test_tmpl_wherestartswithignorecase.xul => dom/xul/templates/tests/chrome/test_tmpl_wherestartswithignorecase.xul rename : content/xul/templates/tests/chrome/test_tmpl_wherestartswithmultiple.xul => dom/xul/templates/tests/chrome/test_tmpl_wherestartswithmultiple.xul rename : content/xul/templates/tests/chrome/test_tmpl_wherestartswithnegation.xul => dom/xul/templates/tests/chrome/test_tmpl_wherestartswithnegation.xul rename : content/xul/templates/tests/chrome/test_tmpl_wherestartswithunknownvariable.xul => dom/xul/templates/tests/chrome/test_tmpl_wherestartswithunknownvariable.xul rename : content/xul/templates/tests/chrome/test_tmpl_wherestartswithvariable.xul => dom/xul/templates/tests/chrome/test_tmpl_wherestartswithvariable.xul rename : content/xul/templates/tests/chrome/test_tmpl_wheresubjectequalsvariable.xul => dom/xul/templates/tests/chrome/test_tmpl_wheresubjectequalsvariable.xul rename : content/xul/templates/tests/chrome/test_tmpl_wheresubjectstartswithvariable.xul => dom/xul/templates/tests/chrome/test_tmpl_wheresubjectstartswithvariable.xul rename : content/xul/templates/tests/chrome/test_tmpl_xmlquerysimple.xul => dom/xul/templates/tests/chrome/test_tmpl_xmlquerysimple.xul rename : content/xul/templates/tests/chrome/test_tmpl_xmlquerywithassign.xul => dom/xul/templates/tests/chrome/test_tmpl_xmlquerywithassign.xul rename : content/xul/templates/tests/chrome/test_tmpl_xmlquerywithassignmentandcondition.xul => dom/xul/templates/tests/chrome/test_tmpl_xmlquerywithassignmentandcondition.xul rename : content/xul/templates/tests/chrome/test_tmpl_xmlquerywithassignmentandconditiondontrecurse.xul => dom/xul/templates/tests/chrome/test_tmpl_xmlquerywithassignmentandconditiondontrecurse.xul rename : content/xul/templates/tests/chrome/test_tmpl_xmlquerywithbindinginbindings.xul => dom/xul/templates/tests/chrome/test_tmpl_xmlquerywithbindinginbindings.xul rename : content/xul/templates/tests/chrome/test_tmpl_xmlquerywithbindinginrule.xul => dom/xul/templates/tests/chrome/test_tmpl_xmlquerywithbindinginrule.xul rename : content/xul/templates/tests/chrome/test_tmpl_xmlquerywithdifferentmember.xul => dom/xul/templates/tests/chrome/test_tmpl_xmlquerywithdifferentmember.xul rename : content/xul/templates/tests/chrome/test_tmpl_xmlquerywithinlinedata.xul => dom/xul/templates/tests/chrome/test_tmpl_xmlquerywithinlinedata.xul rename : content/xul/templates/tests/chrome/test_tmpl_xmlquerywithinlinedatawithmultiplequeries.xul => dom/xul/templates/tests/chrome/test_tmpl_xmlquerywithinlinedatawithmultiplequeries.xul rename : content/xul/templates/tests/chrome/test_tmpl_xmlquerywithmultiplequeries.xul => dom/xul/templates/tests/chrome/test_tmpl_xmlquerywithmultiplequeries.xul rename : content/xul/templates/tests/chrome/test_tmpl_xmlquerywithothertypes.xul => dom/xul/templates/tests/chrome/test_tmpl_xmlquerywithothertypes.xul rename : content/xul/templates/tests/chrome/test_tmpl_xmlquerywithsort.xul => dom/xul/templates/tests/chrome/test_tmpl_xmlquerywithsort.xul rename : content/xul/templates/tests/chrome/test_tmpl_xmlquerywithsortotherfield.xul => dom/xul/templates/tests/chrome/test_tmpl_xmlquerywithsortotherfield.xul rename : content/xul/content/test/398289-resource.xul => dom/xul/test/398289-resource.xul rename : content/xul/document/test/bug497875-iframe.xul => dom/xul/test/bug497875-iframe.xul rename : content/xul/content/test/chrome.ini => dom/xul/test/chrome.ini rename : content/xul/content/test/file_bug236853.rdf => dom/xul/test/file_bug236853.rdf rename : content/xul/content/test/mochitest.ini => dom/xul/test/mochitest.ini rename : content/xul/document/test/overlay1_bug335375.xul => dom/xul/test/overlay1_bug335375.xul rename : content/xul/document/test/overlay2_bug335375.xul => dom/xul/test/overlay2_bug335375.xul rename : content/xul/document/test/overlay_640158.xul => dom/xul/test/overlay_640158.xul rename : content/xul/document/test/test_bug199692.xul => dom/xul/test/test_bug199692.xul rename : content/xul/content/test/test_bug233643.xul => dom/xul/test/test_bug233643.xul rename : content/xul/content/test/test_bug236853.xul => dom/xul/test/test_bug236853.xul rename : content/xul/document/test/test_bug311681.xul => dom/xul/test/test_bug311681.xul rename : content/xul/document/test/test_bug335375.xul => dom/xul/test/test_bug335375.xul rename : content/xul/document/test/test_bug391002.xul => dom/xul/test/test_bug391002.xul rename : content/xul/content/test/test_bug398289.html => dom/xul/test/test_bug398289.html rename : content/xul/document/test/test_bug403868.xul => dom/xul/test/test_bug403868.xul rename : content/xul/document/test/test_bug414907.xul => dom/xul/test/test_bug414907.xul rename : content/xul/document/test/test_bug418216.xul => dom/xul/test/test_bug418216.xul rename : content/xul/document/test/test_bug445177.xul => dom/xul/test/test_bug445177.xul rename : content/xul/document/test/test_bug449457.xul => dom/xul/test/test_bug449457.xul rename : content/xul/document/test/test_bug468176.xul => dom/xul/test/test_bug468176.xul rename : content/xul/content/test/test_bug486990.xul => dom/xul/test/test_bug486990.xul rename : content/xul/document/test/test_bug497875.xul => dom/xul/test/test_bug497875.xul rename : content/xul/document/test/test_bug583948.xul => dom/xul/test/test_bug583948.xul rename : content/xul/document/test/test_bug640158_overlay_persist.xul => dom/xul/test/test_bug640158_overlay_persist.xul rename : content/xul/content/test/test_bug749367.xul => dom/xul/test/test_bug749367.xul rename : content/xul/document/test/test_bug757137.xul => dom/xul/test/test_bug757137.xul rename : content/xul/content/test/test_bug775972.xul => dom/xul/test/test_bug775972.xul rename : content/xul/content/test/test_import_xul_to_content.xul => dom/xul/test/test_import_xul_to_content.xul rename : content/xul/document/test/window_bug583948.xul => dom/xul/test/window_bug583948.xul rename : content/xul/document/test/window_bug757137.xul => dom/xul/test/window_bug757137.xul
536 lines
19 KiB
C++
536 lines
19 KiB
C++
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
#include "nsRDFConMemberTestNode.h"
|
|
#include "nsIRDFContainer.h"
|
|
#include "nsIRDFContainerUtils.h"
|
|
#include "nsRDFCID.h"
|
|
#include "nsIServiceManager.h"
|
|
#include "nsResourceSet.h"
|
|
#include "nsString.h"
|
|
#include "nsXULContentUtils.h"
|
|
|
|
#include "prlog.h"
|
|
#ifdef PR_LOGGING
|
|
extern PRLogModuleInfo* gXULTemplateLog;
|
|
#endif
|
|
|
|
nsRDFConMemberTestNode::nsRDFConMemberTestNode(TestNode* aParent,
|
|
nsXULTemplateQueryProcessorRDF* aProcessor,
|
|
nsIAtom *aContainerVariable,
|
|
nsIAtom *aMemberVariable)
|
|
: nsRDFTestNode(aParent),
|
|
mProcessor(aProcessor),
|
|
mContainerVariable(aContainerVariable),
|
|
mMemberVariable(aMemberVariable)
|
|
{
|
|
#ifdef PR_LOGGING
|
|
if (PR_LOG_TEST(gXULTemplateLog, PR_LOG_DEBUG)) {
|
|
nsAutoCString props;
|
|
|
|
nsResourceSet& containmentProps = aProcessor->ContainmentProperties();
|
|
nsResourceSet::ConstIterator last = containmentProps.Last();
|
|
nsResourceSet::ConstIterator first = containmentProps.First();
|
|
nsResourceSet::ConstIterator iter;
|
|
|
|
for (iter = first; iter != last; ++iter) {
|
|
if (iter != first)
|
|
props += " ";
|
|
|
|
const char* str;
|
|
iter->GetValueConst(&str);
|
|
|
|
props += str;
|
|
}
|
|
|
|
nsAutoString cvar(NS_LITERAL_STRING("(none)"));
|
|
if (mContainerVariable)
|
|
mContainerVariable->ToString(cvar);
|
|
|
|
nsAutoString mvar(NS_LITERAL_STRING("(none)"));
|
|
if (mMemberVariable)
|
|
mMemberVariable->ToString(mvar);
|
|
|
|
PR_LOG(gXULTemplateLog, PR_LOG_DEBUG,
|
|
("nsRDFConMemberTestNode[%p]: parent=%p member-props=(%s) container-var=%s member-var=%s",
|
|
this,
|
|
aParent,
|
|
props.get(),
|
|
NS_ConvertUTF16toUTF8(cvar).get(),
|
|
NS_ConvertUTF16toUTF8(mvar).get()));
|
|
}
|
|
#endif
|
|
}
|
|
|
|
nsresult
|
|
nsRDFConMemberTestNode::FilterInstantiations(InstantiationSet& aInstantiations,
|
|
bool* aCantHandleYet) const
|
|
{
|
|
// XXX Uh, factor me, please!
|
|
nsresult rv;
|
|
|
|
if (aCantHandleYet)
|
|
*aCantHandleYet = false;
|
|
|
|
nsCOMPtr<nsIRDFContainerUtils> rdfc =
|
|
do_GetService("@mozilla.org/rdf/container-utils;1");
|
|
|
|
if (! rdfc)
|
|
return NS_ERROR_FAILURE;
|
|
|
|
nsIRDFDataSource* ds = mProcessor->GetDataSource();
|
|
|
|
InstantiationSet::Iterator last = aInstantiations.Last();
|
|
for (InstantiationSet::Iterator inst = aInstantiations.First(); inst != last; ++inst) {
|
|
bool hasContainerBinding;
|
|
nsCOMPtr<nsIRDFNode> containerValue;
|
|
hasContainerBinding = inst->mAssignments.GetAssignmentFor(mContainerVariable,
|
|
getter_AddRefs(containerValue));
|
|
|
|
nsCOMPtr<nsIRDFResource> containerRes = do_QueryInterface(containerValue);
|
|
|
|
nsCOMPtr<nsIRDFContainer> rdfcontainer;
|
|
|
|
if (hasContainerBinding && containerRes) {
|
|
// If we have a container assignment, then see if the
|
|
// container is an RDF container (bag, seq, alt), and if
|
|
// so, wrap it.
|
|
bool isRDFContainer;
|
|
rv = rdfc->IsContainer(ds, containerRes, &isRDFContainer);
|
|
if (NS_FAILED(rv)) return rv;
|
|
|
|
if (isRDFContainer) {
|
|
rdfcontainer = do_CreateInstance("@mozilla.org/rdf/container;1", &rv);
|
|
if (NS_FAILED(rv)) return rv;
|
|
|
|
rv = rdfcontainer->Init(ds, containerRes);
|
|
if (NS_FAILED(rv)) return rv;
|
|
}
|
|
}
|
|
|
|
bool hasMemberBinding;
|
|
nsCOMPtr<nsIRDFNode> memberValue;
|
|
hasMemberBinding = inst->mAssignments.GetAssignmentFor(mMemberVariable,
|
|
getter_AddRefs(memberValue));
|
|
|
|
#ifdef PR_LOGGING
|
|
if (PR_LOG_TEST(gXULTemplateLog, PR_LOG_DEBUG)) {
|
|
const char* container = "(unbound)";
|
|
if (hasContainerBinding)
|
|
containerRes->GetValueConst(&container);
|
|
|
|
nsAutoString member(NS_LITERAL_STRING("(unbound)"));
|
|
if (hasMemberBinding)
|
|
nsXULContentUtils::GetTextForNode(memberValue, member);
|
|
|
|
PR_LOG(gXULTemplateLog, PR_LOG_DEBUG,
|
|
("nsRDFConMemberTestNode[%p]: FilterInstantiations() container=[%s] member=[%s]",
|
|
this, container, NS_ConvertUTF16toUTF8(member).get()));
|
|
}
|
|
#endif
|
|
|
|
if (hasContainerBinding && hasMemberBinding) {
|
|
// it's a consistency check. see if we have a assignment that is consistent
|
|
bool isconsistent = false;
|
|
|
|
if (rdfcontainer) {
|
|
// RDF containers are easy. Just use the container API.
|
|
int32_t index;
|
|
rv = rdfcontainer->IndexOf(memberValue, &index);
|
|
if (NS_FAILED(rv)) return rv;
|
|
|
|
if (index >= 0)
|
|
isconsistent = true;
|
|
}
|
|
|
|
// XXXwaterson oof. if we *are* an RDF container, why do
|
|
// we still need to grovel through all the containment
|
|
// properties if the thing we're looking for wasn't there?
|
|
|
|
if (! isconsistent) {
|
|
// Othewise, we'll need to grovel through the
|
|
// membership properties to see if we have an
|
|
// assertion that indicates membership.
|
|
nsResourceSet& containmentProps = mProcessor->ContainmentProperties();
|
|
for (nsResourceSet::ConstIterator property = containmentProps.First();
|
|
property != containmentProps.Last();
|
|
++property) {
|
|
bool hasAssertion;
|
|
rv = ds->HasAssertion(containerRes,
|
|
*property,
|
|
memberValue,
|
|
true,
|
|
&hasAssertion);
|
|
if (NS_FAILED(rv)) return rv;
|
|
|
|
if (hasAssertion) {
|
|
// it's consistent. leave it in the set and we'll
|
|
// run it up to our parent.
|
|
isconsistent = true;
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
PR_LOG(gXULTemplateLog, PR_LOG_DEBUG,
|
|
(" consistency check => %s", isconsistent ? "passed" : "failed"));
|
|
|
|
if (isconsistent) {
|
|
// Add a memory element to our set-of-support.
|
|
Element* element =
|
|
new nsRDFConMemberTestNode::Element(containerRes,
|
|
memberValue);
|
|
|
|
if (! element)
|
|
return NS_ERROR_OUT_OF_MEMORY;
|
|
|
|
inst->AddSupportingElement(element);
|
|
}
|
|
else {
|
|
// it's inconsistent. remove it.
|
|
aInstantiations.Erase(inst--);
|
|
}
|
|
|
|
// We're done, go on to the next instantiation
|
|
continue;
|
|
}
|
|
|
|
if (hasContainerBinding && rdfcontainer) {
|
|
// We've got a container assignment, and the container is
|
|
// bound to an RDF container. Add each member as a new
|
|
// instantiation.
|
|
nsCOMPtr<nsISimpleEnumerator> elements;
|
|
rv = rdfcontainer->GetElements(getter_AddRefs(elements));
|
|
if (NS_FAILED(rv)) return rv;
|
|
|
|
while (1) {
|
|
bool hasmore;
|
|
rv = elements->HasMoreElements(&hasmore);
|
|
if (NS_FAILED(rv)) return rv;
|
|
|
|
if (! hasmore)
|
|
break;
|
|
|
|
nsCOMPtr<nsISupports> isupports;
|
|
rv = elements->GetNext(getter_AddRefs(isupports));
|
|
if (NS_FAILED(rv)) return rv;
|
|
|
|
nsCOMPtr<nsIRDFNode> node = do_QueryInterface(isupports);
|
|
if (! node)
|
|
return NS_ERROR_UNEXPECTED;
|
|
|
|
#ifdef PR_LOGGING
|
|
if (PR_LOG_TEST(gXULTemplateLog, PR_LOG_DEBUG)) {
|
|
nsAutoString member;
|
|
nsXULContentUtils::GetTextForNode(node, member);
|
|
|
|
PR_LOG(gXULTemplateLog, PR_LOG_DEBUG,
|
|
(" member => %s", NS_ConvertUTF16toUTF8(member).get()));
|
|
}
|
|
#endif
|
|
|
|
Instantiation newinst = *inst;
|
|
newinst.AddAssignment(mMemberVariable, node);
|
|
|
|
Element* element =
|
|
new nsRDFConMemberTestNode::Element(containerRes, node);
|
|
|
|
if (! element)
|
|
return NS_ERROR_OUT_OF_MEMORY;
|
|
|
|
newinst.AddSupportingElement(element);
|
|
aInstantiations.Insert(inst, newinst);
|
|
}
|
|
}
|
|
|
|
if (hasMemberBinding) {
|
|
// Oh, this is so nasty. If we have a member assignment, then
|
|
// grovel through each one of our inbound arcs to see if
|
|
// any of them are ordinal properties (like an RDF
|
|
// container might have). If so, walk it backwards to get
|
|
// the container we're in.
|
|
nsCOMPtr<nsISimpleEnumerator> arcsin;
|
|
rv = ds->ArcLabelsIn(memberValue, getter_AddRefs(arcsin));
|
|
if (NS_FAILED(rv)) return rv;
|
|
|
|
while (1) {
|
|
nsCOMPtr<nsIRDFResource> property;
|
|
|
|
{
|
|
bool hasmore;
|
|
rv = arcsin->HasMoreElements(&hasmore);
|
|
if (NS_FAILED(rv)) return rv;
|
|
|
|
if (! hasmore)
|
|
break;
|
|
|
|
nsCOMPtr<nsISupports> isupports;
|
|
rv = arcsin->GetNext(getter_AddRefs(isupports));
|
|
if (NS_FAILED(rv)) return rv;
|
|
|
|
property = do_QueryInterface(isupports);
|
|
if (! property)
|
|
return NS_ERROR_UNEXPECTED;
|
|
}
|
|
|
|
// Ordinal properties automagically indicate container
|
|
// membership as far as we're concerned. Note that
|
|
// we're *only* concerned with ordinal properties
|
|
// here: the next block will worry about the other
|
|
// membership properties.
|
|
bool isordinal;
|
|
rv = rdfc->IsOrdinalProperty(property, &isordinal);
|
|
if (NS_FAILED(rv)) return rv;
|
|
|
|
if (isordinal) {
|
|
// If we get here, we've found a property that
|
|
// indicates container membership leading *into* a
|
|
// member node. Find all the people that point to
|
|
// it, and call them containers.
|
|
nsCOMPtr<nsISimpleEnumerator> sources;
|
|
rv = ds->GetSources(property, memberValue, true,
|
|
getter_AddRefs(sources));
|
|
if (NS_FAILED(rv)) return rv;
|
|
|
|
while (1) {
|
|
bool hasmore;
|
|
rv = sources->HasMoreElements(&hasmore);
|
|
if (NS_FAILED(rv)) return rv;
|
|
|
|
if (! hasmore)
|
|
break;
|
|
|
|
nsCOMPtr<nsISupports> isupports;
|
|
rv = sources->GetNext(getter_AddRefs(isupports));
|
|
if (NS_FAILED(rv)) return rv;
|
|
|
|
nsCOMPtr<nsIRDFResource> source = do_QueryInterface(isupports);
|
|
if (! source)
|
|
return NS_ERROR_UNEXPECTED;
|
|
|
|
#ifdef PR_LOGGING
|
|
if (PR_LOG_TEST(gXULTemplateLog, PR_LOG_DEBUG)) {
|
|
const char* container;
|
|
source->GetValueConst(&container);
|
|
|
|
PR_LOG(gXULTemplateLog, PR_LOG_DEBUG,
|
|
(" container => %s", container));
|
|
}
|
|
#endif
|
|
|
|
// Add a new instantiation
|
|
Instantiation newinst = *inst;
|
|
newinst.AddAssignment(mContainerVariable, source);
|
|
|
|
Element* element =
|
|
new nsRDFConMemberTestNode::Element(source,
|
|
memberValue);
|
|
|
|
if (! element)
|
|
return NS_ERROR_OUT_OF_MEMORY;
|
|
|
|
newinst.AddSupportingElement(element);
|
|
|
|
aInstantiations.Insert(inst, newinst);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
if ((hasContainerBinding && ! hasMemberBinding) ||
|
|
(! hasContainerBinding && hasMemberBinding)) {
|
|
// it's an open ended query on the container or member. go
|
|
// through our containment properties to see if anything
|
|
// applies.
|
|
nsResourceSet& containmentProps = mProcessor->ContainmentProperties();
|
|
for (nsResourceSet::ConstIterator property = containmentProps.First();
|
|
property != containmentProps.Last();
|
|
++property) {
|
|
nsCOMPtr<nsISimpleEnumerator> results;
|
|
if (hasContainerBinding) {
|
|
rv = ds->GetTargets(containerRes, *property, true,
|
|
getter_AddRefs(results));
|
|
}
|
|
else {
|
|
rv = ds->GetSources(*property, memberValue, true,
|
|
getter_AddRefs(results));
|
|
}
|
|
if (NS_FAILED(rv)) return rv;
|
|
|
|
while (1) {
|
|
bool hasmore;
|
|
rv = results->HasMoreElements(&hasmore);
|
|
if (NS_FAILED(rv)) return rv;
|
|
|
|
if (! hasmore)
|
|
break;
|
|
|
|
nsCOMPtr<nsISupports> isupports;
|
|
rv = results->GetNext(getter_AddRefs(isupports));
|
|
if (NS_FAILED(rv)) return rv;
|
|
|
|
nsIAtom* variable;
|
|
nsCOMPtr<nsIRDFNode> value;
|
|
nsCOMPtr<nsIRDFResource> valueRes;
|
|
|
|
if (hasContainerBinding) {
|
|
variable = mMemberVariable;
|
|
|
|
value = do_QueryInterface(isupports);
|
|
NS_ASSERTION(value != nullptr, "member is not an nsIRDFNode");
|
|
if (! value) continue;
|
|
|
|
#ifdef PR_LOGGING
|
|
if (PR_LOG_TEST(gXULTemplateLog, PR_LOG_DEBUG)) {
|
|
nsAutoString s;
|
|
nsXULContentUtils::GetTextForNode(value, s);
|
|
|
|
PR_LOG(gXULTemplateLog, PR_LOG_DEBUG,
|
|
(" member => %s", NS_ConvertUTF16toUTF8(s).get()));
|
|
}
|
|
#endif
|
|
}
|
|
else {
|
|
variable = mContainerVariable;
|
|
|
|
valueRes = do_QueryInterface(isupports);
|
|
NS_ASSERTION(valueRes != nullptr, "container is not an nsIRDFResource");
|
|
if (! valueRes) continue;
|
|
|
|
value = valueRes;
|
|
|
|
#ifdef PR_LOGGING
|
|
if (PR_LOG_TEST(gXULTemplateLog, PR_LOG_DEBUG)) {
|
|
const char* s;
|
|
valueRes->GetValueConst(&s);
|
|
|
|
PR_LOG(gXULTemplateLog, PR_LOG_DEBUG,
|
|
(" container => %s", s));
|
|
}
|
|
#endif
|
|
}
|
|
|
|
// Copy the original instantiation, and add it to the
|
|
// instantiation set with the new assignment that we've
|
|
// introduced. Ownership will be transferred to the
|
|
Instantiation newinst = *inst;
|
|
newinst.AddAssignment(variable, value);
|
|
|
|
Element* element;
|
|
if (hasContainerBinding) {
|
|
element =
|
|
new nsRDFConMemberTestNode::Element(containerRes, value);
|
|
}
|
|
else {
|
|
element =
|
|
new nsRDFConMemberTestNode::Element(valueRes, memberValue);
|
|
}
|
|
|
|
if (! element)
|
|
return NS_ERROR_OUT_OF_MEMORY;
|
|
|
|
newinst.AddSupportingElement(element);
|
|
|
|
aInstantiations.Insert(inst, newinst);
|
|
}
|
|
}
|
|
}
|
|
|
|
if (! hasContainerBinding && ! hasMemberBinding) {
|
|
// Neither container nor member assignment!
|
|
if (!aCantHandleYet) {
|
|
nsXULContentUtils::LogTemplateError(ERROR_TEMPLATE_MEMBER_UNBOUND);
|
|
return NS_ERROR_UNEXPECTED;
|
|
}
|
|
|
|
*aCantHandleYet = true;
|
|
return NS_OK;
|
|
}
|
|
|
|
// finally, remove the "under specified" instantiation.
|
|
aInstantiations.Erase(inst--);
|
|
}
|
|
|
|
return NS_OK;
|
|
}
|
|
|
|
bool
|
|
nsRDFConMemberTestNode::CanPropagate(nsIRDFResource* aSource,
|
|
nsIRDFResource* aProperty,
|
|
nsIRDFNode* aTarget,
|
|
Instantiation& aInitialBindings) const
|
|
{
|
|
nsresult rv;
|
|
|
|
bool canpropagate = false;
|
|
|
|
nsCOMPtr<nsIRDFContainerUtils> rdfc =
|
|
do_GetService("@mozilla.org/rdf/container-utils;1");
|
|
|
|
if (! rdfc)
|
|
return false;
|
|
|
|
// We can certainly propagate ordinal properties
|
|
rv = rdfc->IsOrdinalProperty(aProperty, &canpropagate);
|
|
if (NS_FAILED(rv)) return false;
|
|
|
|
if (! canpropagate) {
|
|
canpropagate = mProcessor->ContainmentProperties().Contains(aProperty);
|
|
}
|
|
|
|
#ifdef PR_LOGGING
|
|
if (PR_LOG_TEST(gXULTemplateLog, PR_LOG_DEBUG)) {
|
|
const char* source;
|
|
aSource->GetValueConst(&source);
|
|
|
|
const char* property;
|
|
aProperty->GetValueConst(&property);
|
|
|
|
nsAutoString target;
|
|
nsXULContentUtils::GetTextForNode(aTarget, target);
|
|
|
|
PR_LOG(gXULTemplateLog, PR_LOG_DEBUG,
|
|
("nsRDFConMemberTestNode[%p]: CanPropagate([%s]==[%s]=>[%s]) => %s",
|
|
this, source, property, NS_ConvertUTF16toUTF8(target).get(),
|
|
canpropagate ? "true" : "false"));
|
|
}
|
|
#endif
|
|
|
|
if (canpropagate) {
|
|
aInitialBindings.AddAssignment(mContainerVariable, aSource);
|
|
aInitialBindings.AddAssignment(mMemberVariable, aTarget);
|
|
return true;
|
|
}
|
|
|
|
return false;
|
|
}
|
|
|
|
void
|
|
nsRDFConMemberTestNode::Retract(nsIRDFResource* aSource,
|
|
nsIRDFResource* aProperty,
|
|
nsIRDFNode* aTarget) const
|
|
{
|
|
bool canretract = false;
|
|
|
|
nsCOMPtr<nsIRDFContainerUtils> rdfc =
|
|
do_GetService("@mozilla.org/rdf/container-utils;1");
|
|
|
|
if (! rdfc)
|
|
return;
|
|
|
|
// We can certainly retract ordinal properties
|
|
nsresult rv;
|
|
rv = rdfc->IsOrdinalProperty(aProperty, &canretract);
|
|
if (NS_FAILED(rv)) return;
|
|
|
|
if (! canretract) {
|
|
canretract = mProcessor->ContainmentProperties().Contains(aProperty);
|
|
}
|
|
|
|
if (canretract) {
|
|
mProcessor->RetractElement(Element(aSource, aTarget));
|
|
}
|
|
}
|