From 3e22f0d1ccc1cef2f00554130bd3404d79c3b75e Mon Sep 17 00:00:00 2001 From: "sfraser%netscape.com" Date: Mon, 1 Jul 2002 03:48:42 +0000 Subject: [PATCH] Checking in fix for bug 145815 for bnesse. Hook up 'Search' button in toolbar to use mozilla pref, if it exists, or the IC preference. r=me git-svn-id: svn://10.0.0.236/trunk@124388 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/camino/BrowserWindowController.mm | 24 +++++++++++++++++-- .../src/browser/BrowserWindowController.mm | 24 +++++++++++++++++-- mozilla/chimera/BrowserWindowController.mm | 24 +++++++++++++++++-- .../src/browser/BrowserWindowController.mm | 24 +++++++++++++++++-- 4 files changed, 88 insertions(+), 8 deletions(-) diff --git a/mozilla/camino/BrowserWindowController.mm b/mozilla/camino/BrowserWindowController.mm index dc74976f7e6..69a6e2dcc5e 100644 --- a/mozilla/camino/BrowserWindowController.mm +++ b/mozilla/camino/BrowserWindowController.mm @@ -636,8 +636,28 @@ static NSString *SearchToolbarItemIdentifier = @"Search Toolbar Item"; - (void)performSearch { - // XXX go to the user's preferred search engine. - [[mBrowserView getBrowserView] loadURI: @"http://dmoz.org/" flags:NSLoadFlagsNone]; + NSString *searchEngine = nil; + + // Try and get the search engine from the pref service + nsCOMPtr prefBranch(do_GetService("@mozilla.org/preferences-service;1")); + if (prefBranch) { + char *buf = nsnull; + prefBranch->GetCharPref("search.default_engine", &buf); + if (buf) { + if (*buf) + searchEngine = [NSString stringWithCString:buf]; + free(buf); + } + } + + // Get the users preferred search engine from IC + if (!searchEngine) { + searchEngine = [[CHPreferenceManager sharedInstance] getICStringPref:kICWebSearchPagePrefs]; + if (!searchEngine || ([searchEngine cStringLength] == 0)) + searchEngine = @"http://dmoz.org/"; + } + + [[mBrowserView getBrowserView] loadURI:searchEngine flags:NSLoadFlagsNone]; } diff --git a/mozilla/camino/src/browser/BrowserWindowController.mm b/mozilla/camino/src/browser/BrowserWindowController.mm index dc74976f7e6..69a6e2dcc5e 100644 --- a/mozilla/camino/src/browser/BrowserWindowController.mm +++ b/mozilla/camino/src/browser/BrowserWindowController.mm @@ -636,8 +636,28 @@ static NSString *SearchToolbarItemIdentifier = @"Search Toolbar Item"; - (void)performSearch { - // XXX go to the user's preferred search engine. - [[mBrowserView getBrowserView] loadURI: @"http://dmoz.org/" flags:NSLoadFlagsNone]; + NSString *searchEngine = nil; + + // Try and get the search engine from the pref service + nsCOMPtr prefBranch(do_GetService("@mozilla.org/preferences-service;1")); + if (prefBranch) { + char *buf = nsnull; + prefBranch->GetCharPref("search.default_engine", &buf); + if (buf) { + if (*buf) + searchEngine = [NSString stringWithCString:buf]; + free(buf); + } + } + + // Get the users preferred search engine from IC + if (!searchEngine) { + searchEngine = [[CHPreferenceManager sharedInstance] getICStringPref:kICWebSearchPagePrefs]; + if (!searchEngine || ([searchEngine cStringLength] == 0)) + searchEngine = @"http://dmoz.org/"; + } + + [[mBrowserView getBrowserView] loadURI:searchEngine flags:NSLoadFlagsNone]; } diff --git a/mozilla/chimera/BrowserWindowController.mm b/mozilla/chimera/BrowserWindowController.mm index dc74976f7e6..69a6e2dcc5e 100644 --- a/mozilla/chimera/BrowserWindowController.mm +++ b/mozilla/chimera/BrowserWindowController.mm @@ -636,8 +636,28 @@ static NSString *SearchToolbarItemIdentifier = @"Search Toolbar Item"; - (void)performSearch { - // XXX go to the user's preferred search engine. - [[mBrowserView getBrowserView] loadURI: @"http://dmoz.org/" flags:NSLoadFlagsNone]; + NSString *searchEngine = nil; + + // Try and get the search engine from the pref service + nsCOMPtr prefBranch(do_GetService("@mozilla.org/preferences-service;1")); + if (prefBranch) { + char *buf = nsnull; + prefBranch->GetCharPref("search.default_engine", &buf); + if (buf) { + if (*buf) + searchEngine = [NSString stringWithCString:buf]; + free(buf); + } + } + + // Get the users preferred search engine from IC + if (!searchEngine) { + searchEngine = [[CHPreferenceManager sharedInstance] getICStringPref:kICWebSearchPagePrefs]; + if (!searchEngine || ([searchEngine cStringLength] == 0)) + searchEngine = @"http://dmoz.org/"; + } + + [[mBrowserView getBrowserView] loadURI:searchEngine flags:NSLoadFlagsNone]; } diff --git a/mozilla/chimera/src/browser/BrowserWindowController.mm b/mozilla/chimera/src/browser/BrowserWindowController.mm index dc74976f7e6..69a6e2dcc5e 100644 --- a/mozilla/chimera/src/browser/BrowserWindowController.mm +++ b/mozilla/chimera/src/browser/BrowserWindowController.mm @@ -636,8 +636,28 @@ static NSString *SearchToolbarItemIdentifier = @"Search Toolbar Item"; - (void)performSearch { - // XXX go to the user's preferred search engine. - [[mBrowserView getBrowserView] loadURI: @"http://dmoz.org/" flags:NSLoadFlagsNone]; + NSString *searchEngine = nil; + + // Try and get the search engine from the pref service + nsCOMPtr prefBranch(do_GetService("@mozilla.org/preferences-service;1")); + if (prefBranch) { + char *buf = nsnull; + prefBranch->GetCharPref("search.default_engine", &buf); + if (buf) { + if (*buf) + searchEngine = [NSString stringWithCString:buf]; + free(buf); + } + } + + // Get the users preferred search engine from IC + if (!searchEngine) { + searchEngine = [[CHPreferenceManager sharedInstance] getICStringPref:kICWebSearchPagePrefs]; + if (!searchEngine || ([searchEngine cStringLength] == 0)) + searchEngine = @"http://dmoz.org/"; + } + + [[mBrowserView getBrowserView] loadURI:searchEngine flags:NSLoadFlagsNone]; }