diff --git a/suite/common/search/search-panel.js b/suite/common/search/search-panel.js
index 61e03ee789ba..201cd9fa18eb 100644
--- a/suite/common/search/search-panel.js
+++ b/suite/common/search/search-panel.js
@@ -57,21 +57,6 @@ function debug(msg)
// dump(msg+"\n");
}
-
-
-// get the click count pref
-try
-{
- pref = Components.classes["component://netscape/preferences"];
- if (pref) pref = pref.getService(nsIPref);
-}
-catch(e)
-{
- debug("Exception " + e + " trying to get prefs.\n");
-}
-
-
-
RDF_observer =
{
onAssert : function(ds, src, prop, target)
@@ -116,8 +101,7 @@ function rememberSearchText(target)
{
if (target) target = target.QueryInterface(nsIRDFLiteral);
if (target) target = target.Value;
- if (target && (target != ""))
- {
+ if (target) {
var textNode = document.getElementById("sidebar-search-text");
if (!textNode) return(false);
@@ -126,7 +110,7 @@ function rememberSearchText(target)
textNode.value = unescape(target);
- doEnabling();
+ doEnabling();
}
// show the results tab
switchTab(0);
@@ -136,30 +120,17 @@ function rememberSearchText(target)
function updateSearchMode()
{
- var searchMode = 0;
- try
- {
- if (pref) searchMode = pref.GetIntPref("browser.search.mode");
-
- var categoryBox = document.getElementById("categoryBox");
- if (categoryBox)
- {
- if (searchMode == 0)
- {
- categoryBox.setAttribute("collapsed", "true");
- switchTab(0);
- }
- else
- {
- categoryBox.removeAttribute("collapsed");
- switchTab(1);
- }
- }
- }
- catch(ex)
- {
- }
- return(searchMode);
+ var searchMode = nsPreferences.getIntPref("browser.search.mode", 0);
+ var categoryBox = document.getElementById("categoryBox");
+ if (!searchMode) {
+ categoryBox.setAttribute("collapsed", "true");
+ switchTab(0);
+ }
+ else {
+ categoryBox.removeAttribute("collapsed");
+ switchTab(1);
+ }
+ return searchMode;
}
@@ -210,28 +181,13 @@ function SearchPanelStartup()
}
// try and determine last category name used
- var lastCategoryName = "";
- try
- {
- if (pref) lastCategoryName = pref.CopyCharPref( "browser.search.last_search_category" );
-
- if (lastCategoryName != "")
- {
- // strip off the prefix if necessary
- var prefix="NC:SearchCategory?category=";
- if (lastCategoryName.indexOf(prefix) == 0)
- {
- lastCategoryName = lastCategoryName.substr(prefix.length);
- }
- }
-
- }
- catch( e )
- {
- debug("Exception in SearchPanelStartup\n");
- lastCategoryName = "";
- }
- debug("\nSearchPanelStartup: lastCategoryName = '" + lastCategoryName + "'\n");
+ var lastCategoryName = nsPreferences.copyUnicharPref("browser.search.last_search_category", "");
+ if (lastCategoryName) {
+ // strip off the prefix if necessary
+ var prefix = "NC:SearchCategory?category=";
+ if (lastCategoryName.indexOf(prefix) == 0)
+ lastCategoryName = lastCategoryName.substr(prefix.length);
+ }
// select the appropriate category
var categoryList = document.getElementById( "categoryList" );
@@ -331,15 +287,11 @@ function chooseCategory( aNode )
var category = !aNode.id ? "NC:SearchEngineRoot" :
"NC:SearchCategory?category=" + aNode.getAttribute("id");
- if (pref)
- pref.SetUnicharPref("browser.search.last_search_category", category);
+ nsPreferences.setUnicharPref("browser.search.last_search_category", category);
var treeNode = document.getElementById("searchengines");
- if (treeNode)
- {
- debug("chooseCategory: ref='" + category + "'\n");
- treeNode.setAttribute("ref", category);
- }
+ treeNode.setAttribute("ref", category);
+
loadEngines(category);
return(true);
}
@@ -507,13 +459,11 @@ function doStop()
// show appropriate column(s)
if ((rdf) && (internetSearch))
{
- var navWindow = getNavigatorWindow();
- var resultsTree = navWindow._content.document.getElementById("internetresultstree");
- if( !resultsTree )
- return(false);
+ var navWindow = getNavigatorWindow(false);
+ var resultsTree = navWindow ? navWindow._content.document.getElementById("internetresultstree") : null;
+ if (!resultsTree) return false;
var searchURL = resultsTree.getAttribute("ref");
- if( !searchURL )
- return(false);
+ if (!searchURL) return false;
var searchResource = rdf.GetResource(searchURL, true);
var priceProperty = rdf.GetResource("http://home.netscape.com/NC-rdf#Price", true);
@@ -527,39 +477,39 @@ function doStop()
var hasRelevanceFlag = internetSearch.HasAssertion(searchResource, relevanceProperty, trueProperty, true);
var hasDateFlag = internetSearch.HasAssertion(searchResource, dateProperty, trueProperty, true);
- var navWindow = getNavigatorWindow();
- if(hasPriceFlag == true)
+ var navWindow = getNavigatorWindow(false);
+ if(hasPriceFlag)
{
var colNode = navWindow._content.document.getElementById("PriceColumn");
if (colNode)
{
colNode.removeAttribute("style", "width: 0; visibility: collapse;");
- if (sortSetFlag == false)
+ if (!sortSetFlag)
{
top._content.setInitialSort(colNode, "ascending");
sortSetFlag = true;
}
}
}
- if (hasAvailabilityFlag == true)
+ if (hasAvailabilityFlag)
{
colNode = navWindow._content.document.getElementById("AvailabilityColumn");
if (colNode)
colNode.removeAttribute("style", "width: 0; visibility: collapse;");
}
- if (hasDateFlag == true)
+ if (hasDateFlag)
{
colNode = navWindow._content.document.getElementById("DateColumn");
if (colNode)
colNode.removeAttribute("style", "width: 0; visibility: collapse;");
}
- if (hasRelevanceFlag == true)
+ if (hasRelevanceFlag)
{
colNode = navWindow._content.document.getElementById("RelevanceColumn");
if (colNode)
{
colNode.removeAttribute("style", "width: 0; visibility: collapse;");
- if (sortSetFlag == false)
+ if (!sortSetFlag)
{
navWindow._content.setInitialSort(colNode, "descending");
sortSetFlag = true;
@@ -568,7 +518,7 @@ function doStop()
}
}
- if (sortSetFlag == false)
+ if (!sortSetFlag)
{
colNode = navWindow._content.document.getElementById("PageRankColumn");
if (colNode)
@@ -582,58 +532,35 @@ function doStop()
function doSearch()
{
var searchButton = document.getElementById("searchbutton");
- if ( searchButton.getAttribute("disabled") )
- {
- var sidebarSearchText = document.getElementById("sidebar-search-text");
- sidebarSearchText.focus();
- return;
+ if (searchButton.disabled) {
+ var sidebarSearchText = document.getElementById("sidebar-search-text");
+ sidebarSearchText.focus();
+ return;
}
//get click count pref for later
//and set tree attribute to cause proper results appearance (like links) to happen
//when user set pref to single click
- var searchMode = 0;
- var mClickCount = 1;
- var prefvalue = false;
+ var searchMode = nsPreferences.getIntPref("browser.search.mode", 0);
+ var mClickCount = nsPreferences.getBoolPref("browser.search.use_double_clicks", false) ? 2 : 1;
- try
- {
- if( pref )
- {
- searchMode = pref.GetIntPref("browser.search.mode");
- prefvalue = pref.GetBoolPref( "browser.search.use_double_clicks" );
- mClickCount = prefvalue ? 2 : 1;
- }
- }
- catch(e)
- {
- searchMode = 0;
- mClickCount = 1;
- prefvalue = false;
- }
-
- var tree = document.getElementById("Tree");
- if (mClickCount == 1)
- {
- tree.setAttribute("singleclick","true");
- }
- else
- {
- tree.removeAttribute("singleclick");
- }
+ // hack hack hack hack
+ var tree = document.getElementById("Tree");
+ if (mClickCount == 1)
+ tree.setAttribute("singleclick","true");
+ else
+ tree.removeAttribute("singleclick");
- // hide various columns
- var navWindow = getNavigatorWindow();
- dump("*** navWindow = " + navWindow + "\n");
- if( navWindow._content.isMozillaSearchWindow )
- {
- colNode = navWindow._content.document.getElementById("RelevanceColumn");
- if (colNode) colNode.setAttribute("style", "width: 0; visibility: collapse;");
- colNode = navWindow._content.document.getElementById("PriceColumn");
- if (colNode) colNode.setAttribute("style", "width: 0; visibility: collapse;");
- colNode = navWindow._content.document.getElementById("AvailabilityColumn");
- if (colNode) colNode.setAttribute("style", "width: 0; visibility: collapse;");
- }
+ // hide various columns
+ var navWindow = getNavigatorWindow(false);
+ if (navWindow && navWindow._content && navWindow._content.isMozillaSearchWindow) {
+ colNode = navWindow._content.document.getElementById("RelevanceColumn");
+ if (colNode) colNode.setAttribute("style", "width: 0; visibility: collapse;");
+ colNode = navWindow._content.document.getElementById("PriceColumn");
+ if (colNode) colNode.setAttribute("style", "width: 0; visibility: collapse;");
+ colNode = navWindow._content.document.getElementById("AvailabilityColumn");
+ if (colNode) colNode.setAttribute("style", "width: 0; visibility: collapse;");
+ }
// get user text to find
var textNode = document.getElementById("sidebar-search-text");
@@ -650,8 +577,8 @@ function doSearch()
if (searchMode > 0)
{
- // in advanced search mode, get selected search engines
- // (for the current search category)
+ // in advanced search mode, get selected search engines
+ // (for the current search category)
var engineBox = document.getElementById("engineKids");
if (!engineBox) return(false);
@@ -665,7 +592,7 @@ function doSearch()
if ( checkboxNode.checked == true || checkboxNode.checked == "true")
{
- var engineURI = treeitemNode.getAttribute("id");
+ var engineURI = treeitemNode.id;
if (!engineURI) continue;
engineURIs[engineURIs.length] = engineURI;
foundEngine = true;
@@ -676,13 +603,13 @@ function doSearch()
if( getNumEngines() == 1 ) {
// only one engine in this category, check it
var treeitemNode = engineBox.firstChild;
- engineURIs[engineURIs.length] = treeitemNode.getAttribute("id");
+ engineURIs[engineURIs.length] = treeitemNode.id;
}
else {
for( var i = 0; i < engineBox.childNodes.length; i++ )
{
var treeitemNode = engineBox.childNodes[i];
- var theID = treeitemNode.getAttribute("id");
+ var theID = treeitemNode.id;
if( theID.indexOf("NetscapeSearch.src") != -1 )
{
engineURIs[engineURIs.length] = theID;
@@ -690,15 +617,14 @@ function doSearch()
break;
}
}
- if (foundEngine == false)
- {
- alert(bundle.GetStringFromName("enterstringandlocation") );
- return(false);
+ if (!foundEngine) {
+ alert(bundle.GetStringFromName("enterstringandlocation") );
+ return(false);
}
}
}
}
-
+
// hide search button
var searchButtonNode = document.getElementById("searchbutton");
if (searchButtonNode)
@@ -724,50 +650,35 @@ function doSearch()
function checkSearchProgress()
{
var activeSearchFlag = false;
- var navWindow = getNavigatorWindow();
- var resultsTree = navWindow._content.document.getElementById("internetresultstree");
- if(resultsTree)
- {
- var treeref = resultsTree.getAttribute("ref");
- var ds = resultsTree.database;
- if (ds && treeref)
- {
- try
- {
- var rdf = Components.classes[RDFSERVICE_PROGID].getService(nsIRDFService);
- if (rdf)
- {
- var source = rdf.GetResource(treeref, true);
- var loadingProperty = rdf.GetResource("http://home.netscape.com/NC-rdf#loading", true);
- var target = ds.GetTarget(source, loadingProperty, true);
- if (target) target = target.QueryInterface(nsIRDFLiteral);
- if (target) target = target.Value;
- if (target == "true")
- {
- activeSearchFlag = true;
- }
- else
- {
- activeSearchFlag = false;
- }
- }
- }
- catch(ex)
- {
- activeSearchFlag = false;
- }
- }
+ var navWindow = getNavigatorWindow(false);
+ if (navWindow)
+ var resultsTree = navWindow._content.document.getElementById("internetresultstree");
+ if(resultsTree) {
+ var treeref = resultsTree.getAttribute("ref");
+ var ds = resultsTree.database;
+ if (ds && treeref) {
+ try {
+ var rdf = nsJSComponentManager.getService(RDFSERVICE_PROGID, "nsIRDFService");
+ if (rdf) {
+ var source = rdf.GetResource(treeref, true);
+ var loadingProperty = rdf.GetResource("http://home.netscape.com/NC-rdf#loading", true);
+ var target = ds.GetTarget(source, loadingProperty, true);
+ if (target) target = target.QueryInterface(nsIRDFLiteral);
+ if (target) target = target.Value;
+ activeSearchFlag = target == "true" ? true : false;
+ }
+ }
+ catch(ex) {
+ activeSearchFlag = false;
+ }
}
-
- if( activeSearchFlag )
- {
- setTimeout("checkSearchProgress()", 1000);
- }
- else
- {
- doStop();
- }
-
+ }
+
+ if (activeSearchFlag)
+ setTimeout("checkSearchProgress()", 1000);
+ else
+ doStop();
+
return(activeSearchFlag);
}
@@ -775,18 +686,8 @@ function checkSearchProgress()
function sidebarOpenURL(event, treeitem, root)
{
- try {
- if( pref ) {
- var prefvalue = pref.GetBoolPref( "browser.search.use_double_clicks" );
- mClickCount = prefvalue ? 2 : 1;
- }
- else
- mClickCount = 1;
- }
- catch(e) {
- mClickCount = 1;
- }
-
+ mClickCount = nsPreferences.getBoolPref("browser.search.use_double_clicks", false) ? 2 : 1;
+
if ((event.button != 1) || (event.detail != mClickCount))
return(false);
@@ -796,7 +697,7 @@ function sidebarOpenURL(event, treeitem, root)
if (treeitem.getAttribute("type") == "http://home.netscape.com/NC-rdf#BookmarkSeparator")
return(false);
- var id = treeitem.getAttribute('id');
+ var id = treeitem.id;
if (!id)
return(false);
@@ -810,7 +711,8 @@ function sidebarOpenURL(event, treeitem, root)
{
ds = theRootNode.database;
}
- var rdf = Components.classes[RDFSERVICE_PROGID].getService(nsIRDFService);
+
+ var rdf = nsJSComponentManager.getService(RDFSERVICE_PROGID, "nsIRDFService");
if (rdf)
{
if (ds)
@@ -828,122 +730,77 @@ function sidebarOpenURL(event, treeitem, root)
{
}
- loadURLInContent(id);
+ loadURLInContent(id);
}
function OpenSearch( aSearchStr, engineURIs )
{
- var searchEngineURI = null;
- var autoOpenSearchPanel = false;
- var defaultSearchURL = null;
+ var searchEngineURI = nsPreferences.copyUnicharPref("browser.search.defaultengine", null);
+ var autoOpenSearchPanel = nsPreferences.getBoolPref("browser.search.opensidebarsearchpanel", false);
+ var defaultSearchURL = nsPreferences.getLocalizedUnicharPref("browser.search.defaulturl", null);
- try
- {
- if (pref)
- {
- autoOpenSearchPanel = pref.GetBoolPref("browser.search.opensidebarsearchpanel");
- searchEngineURI = pref.CopyCharPref("browser.search.defaultengine");
- debug("From prefs, searchEngineURI = '" + searchEngineURI + "'\n");
- defaultSearchURL = pref.getLocalizedUnicharPref("browser.search.defaulturl");
- }
- }
- catch(ex)
- {
- }
-
- if ( !defaultSearchURL )
- {
+ if (!defaultSearchURL)
defaultSearchURL = bundle.GetStringFromName("defaultSearchURL");
- }
- var searchDS = Components.classes[ISEARCH_PROGID].getService(nsIInternetSearchService);
- if( searchDS )
- {
- if(!aSearchStr)
- {
- return(false);
+ var searchDS = Components.classes[ISEARCH_PROGID].getService(nsIInternetSearchService);
+ if (searchDS)
+ {
+ if(!aSearchStr)
+ return(false);
+
+ var escapedSearchStr = escape( aSearchStr );
+ searchDS.RememberLastSearchText( escapedSearchStr );
+
+ try {
+ if( !engineURIs || ( engineURIs && engineURIs.length <= 1 ) )
+ {
+ // not called from sidebar or only one engine selected
+ if (engineURIs && engineURIs.length == 1) {
+ debug("Got one engine: " + engineURIs[0] + "\n");
+ searchEngineURI = engineURIs[0];
+ gURL = "internetsearch:engine=" + searchEngineURI + "&text=" + escapedSearchStr;
}
+
+ if (!searchEngineURI)
+ searchEngineURI = bundle.GetStringFromName("defaultSearchURL");
- var escapedSearchStr = escape( aSearchStr );
- searchDS.RememberLastSearchText( escapedSearchStr );
+ // look up the correct search URL format for the given engine
+ try {
+ var searchURL = searchDS.GetInternetSearchURL( searchEngineURI, escapedSearchStr );
+ }
+ catch(ex) {
+ searchURL = "";
+ }
- try
- {
- if( !engineURIs || ( engineURIs && engineURIs.length <= 1 ) )
- {
- debug("searchEngineURI = '" + searchEngineURI + "'\n");
- // not called from sidebar or only one engine selected
- if (engineURIs && engineURIs.length == 1)
- {
- debug("Got one engine: " + engineURIs[0] + "\n");
- searchEngineURI = engineURIs[0];
- gURL = "internetsearch:engine=" + searchEngineURI + "&text=" + escapedSearchStr;
- }
- else
- {
- debug("No engines, default to '" + searchEngineURI + "'\n");
- }
+ defaultSearchURL = searchURL ? searchURL : defaultSearchURL + escapedSearchStr;
+ if (!searchURL) gURL = "";
- if ((!searchEngineURI) || (searchEngineURI == ""))
- {
- searchEngineURI = bundle.GetStringFromName("defaultSearchURL");
- }
-
- // look up the correct search URL format for the given engine
- try
- {
- var searchURL = searchDS.GetInternetSearchURL( searchEngineURI, escapedSearchStr );
+ // load the results page of selected or default engine in the content area
+ if (defaultSearchURL)
+ loadURLInContent(defaultSearchURL);
+ }
+ else {
+ // multiple providers
+ searchURL = "";
+ for( var i = 0; i < engineURIs.length; i++ ) {
+ searchURL += !searchURL ? "internetsearch:" : "&";
+ searchURL += "engine=" + engineURIs[i];
+ }
+ searchURL += ( "&text=" + escapedSearchStr );
+ gURL = searchURL;
+ dump("*** about to attempt to load internetresults into the content window\n");
+ loadURLInContent("chrome://communicator/content/search/internetresults.xul?" + searchURL);
+ }
}
catch(ex)
{
- searchURL = "";
}
-
- if (searchURL)
- {
- defaultSearchURL = searchURL;
- }
- else
- {
- defaultSearchURL = defaultSearchURL + escapedSearchStr;
- gURL = "";
- }
-
- // load the results page of selected or default engine in the content area
- if (defaultSearchURL)
- {
- loadURLInContent(defaultSearchURL);
- }
- }
- else
- {
- // multiple providers
- searchURL = "";
- for( var i = 0; i < engineURIs.length; i++ )
- {
- if( searchURL == "" )
- searchURL = "internetsearch:";
- else
- searchURL += "&";
- searchURL += "engine=" + engineURIs[i];
- }
- searchURL += ( "&text=" + escapedSearchStr );
- gURL = searchURL;
- loadURLInContent("chrome://communicator/content/search/internetresults.xul?" + searchURL);
- }
- }
- catch(ex)
- {
- }
-
- setTimeout("checkSearchProgress()", 1000);
- }
+ setTimeout("checkSearchProgress()", 1000);
+ }
}
-
-
function switchTab( aPageIndex )
{
var deck = document.getElementById( "advancedDeck" );
@@ -962,37 +819,22 @@ function switchTab( aPageIndex )
var haveSearchRef = false;
- var rdf = Components.classes[RDFSERVICE_PROGID].getService(nsIRDFService);
- if (rdf)
- {
- var source = rdf.GetResource( "NC:LastSearchRoot", true);
- var childProperty;
- var target;
-
+ var rdf = nsJSComponentManager.getService(RDFSERVICE_PROGID, "nsIRDFService");
+ if (rdf) {
// look for last search URI
- childProperty = rdf.GetResource("http://home.netscape.com/NC-rdf#ref", true);
- target = ds.GetTarget(source, childProperty, true);
+ var source = rdf.GetResource( "NC:LastSearchRoot", true);
+ var childProperty = rdf.GetResource("http://home.netscape.com/NC-rdf#ref", true);
+ var target = ds.GetTarget(source, childProperty, true);
if (target) target = target.QueryInterface(nsIRDFLiteral);
if (target) target = target.Value;
- if (target && target != "")
- {
- haveSearchRef = true;
- }
+ if (target) haveSearchRef = true;
}
- if (haveSearchRef == true)
- {
- saveQueryButton.removeAttribute("disabled", "true");
- }
- else
- {
- saveQueryButton.setAttribute("disabled", "true");
- }
- return(true);
+ saveQueryButton.disabled = haveSearchRef ? false : true;
+
+ return(true);
}
-
-
function saveSearch()
{
var resultsTree = document.getElementById("Tree");
@@ -1003,30 +845,23 @@ function saveSearch()
var lastSearchURI="";
var lastSearchText="";
- var rdf = Components.classes[RDFSERVICE_PROGID].getService(nsIRDFService);
+ var rdf = nsJSComponentManager.getService(RDFSERVICE_PROGID, "nsIRDFService");
if (rdf)
{
- var source = rdf.GetResource( "NC:LastSearchRoot", true);
- var childProperty;
- var target;
-
// look for last search URI
- childProperty = rdf.GetResource("http://home.netscape.com/NC-rdf#ref", true);
- target = ds.GetTarget(source, childProperty, true);
+ var source = rdf.GetResource( "NC:LastSearchRoot", true);
+ var childProperty = rdf.GetResource("http://home.netscape.com/NC-rdf#ref", true);
+ var target = ds.GetTarget(source, childProperty, true);
if (target) target = target.QueryInterface(nsIRDFLiteral);
if (target) target = target.Value;
- if (target && target != "")
- {
- lastSearchURI = target;
- debug("Bookmark search URL: '" + lastSearchURI + "'\n");
- }
+ if (target) lastSearchURI = target;
// look for last search text
childProperty = rdf.GetResource("http://home.netscape.com/NC-rdf#LastText", true);
target = ds.GetTarget(source, childProperty, true);
if (target) target = target.QueryInterface(nsIRDFLiteral);
if (target) target = target.Value;
- if (target && target != "")
+ if (target)
{
// convert pluses (+) back to spaces
target = target.replace(/+/i, " ");
@@ -1037,7 +872,7 @@ function saveSearch()
}
- if ((lastSearchURI == null) || (lastSearchURI == "")) return(false);
+ if (!lastSearchURI) return(false);
// rjc says: if lastSearchText is empty/null, that's still OK, synthesize the text
if ((lastSearchText == null) || (lastSearchText == ""))
@@ -1066,24 +901,24 @@ function saveSearch()
return(true);
}
-
-
function doCustomize()
{
window.openDialog("chrome://communicator/content/search/search-editor.xul", "_blank", "centerscreen,chrome,resizable");
}
-
-
function loadURLInContent(url)
{
- var appCore = getNavigatorWindowAppCore();
- if (appCore)
- appCore.loadUrl(url);
+ var appCore = getNavigatorWindowAppCore();
+ if (appCore)
+ appCore.loadUrl(url);
+ else {
+ var navWindow = getNavigatorWindow(true);
+ navWindow._content.location.href = url;
+ }
}
// retrieves the most recent navigator window
-function getNavigatorWindow()
+function getNavigatorWindow(aOpenFlag)
{
const WM_PROGID = "component://netscape/rdf/datasource?name=window-mediator";
var wm;
@@ -1094,38 +929,38 @@ function getNavigatorWindow()
return top;
else {
wm = nsJSComponentManager.getService(WM_PROGID, "nsIWindowMediator");
- return wm ? wm.getMostRecentWindow("navigator:browser") : openNewNavigator();
+ var mostRecentNavigator = wm.getMostRecentWindow("navigator:browser");
+ return mostRecentNavigator ? mostRecentNavigator : aOpenFlag ? openNewNavigator() : null;
}
}
else {
wm = nsJSComponentManager.getService(WM_PROGID, "nsIWindowMediator");
- return wm ? wm.getMostRecentWindow("navigator:browser") : openNewNavigator();
+ var mostRecentNavigator = wm.getMostRecentWindow("navigator:browser");
+ return mostRecentNavigator ? mostRecentNavigator : aOpenFlag ? openNewNavigator() : null;
}
}
// retrieves the most recent navigator window's crap core.
function getNavigatorWindowAppCore()
{
- var navigatorWindow = getNavigatorWindow();
+ var navigatorWindow = getNavigatorWindow(true);
return navigatorWindow.appCore;
}
function openNewNavigator()
{
- var newNavigator = open(search_getBrowserURL(), "_blank", "chrome,all,dialog=no");
- dump("*** newNavigator - " + newNavigator + "\n");
- return newNavigator;
+ var navURL = search_getBrowserURL();
+ var newNavigator = openDialog(navURL, "_blank", "chrome,all,dialog=no");
+
+ const WM_PROGID = "component://netscape/rdf/datasource?name=window-mediator";
+ var wm = nsJSComponentManager.getService(WM_PROGID, "nsIWindowMediator");
+ var mostRecentNavigator = wm.getMostRecentWindow("navigator:browser");
+ return mostRecentNavigator ? mostRecentNavigator : newNavigator;
}
function search_getBrowserURL()
{
- var url = "chrome://navigator/content/navigator.xul";
-
- if (pref) {
- var temp = pref.CopyCharPref("browser.chromeURL");
- if (temp) url = temp;
- }
- return url;
+ return nsPreferences.copyUnicharPref("browser.chromeURL", "chrome://navigator/content/navigator.xul");
}
@@ -1135,17 +970,13 @@ function doEnabling()
var searchButton = document.getElementById("searchbutton");
var sidebarSearchText = document.getElementById("sidebar-search-text");
- if ( sidebarSearchText.value == "" )
- {
- // No input, disable search button if enabled.
- if ( !searchButton.getAttribute("disabled") )
- searchButton.setAttribute("disabled","true");
- }
- else
- {
- if ( searchButton.getAttribute("disabled") == "true")
- {
- searchButton.removeAttribute("disabled");
- }
- }
+ if (!sidebarSearchText.value) {
+ // No input, disable search button if enabled.
+ if (!searchButton.disabled)
+ searchButton.disabled = true;
+ }
+ else if (searchButton.disabled)
+ searchButton.disabled = false;
}
+
+
diff --git a/suite/common/search/search-panel.xul b/suite/common/search/search-panel.xul
index 622f22be72ca..e985fcc51999 100644
--- a/suite/common/search/search-panel.xul
+++ b/suite/common/search/search-panel.xul
@@ -35,6 +35,7 @@
+