Camino only - Bug 418108: Support OpenSearch discovery in the search sheet field. r/sr=pink

git-svn-id: svn://10.0.0.236/trunk@246377 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
stuart.morgan%alumni.case.edu
2008-02-23 19:39:31 +00:00
parent e1ace04d0d
commit a363f76a70

View File

@@ -1696,6 +1696,7 @@ public:
// Always allow the search engine menu to work
if (action == @selector(searchEngineChanged:) ||
action == @selector(installSearchPlugin:) ||
action == @selector(manageSearchEngines:) ||
action == @selector(findSearchEngines:))
{
@@ -4701,10 +4702,15 @@ public:
- (void)showSearchPluginDetected:(BOOL)pluginsAreDetected
{
if (pluginsAreDetected)
[mSearchBar setDetectedSearchPlugins:[[self browserWrapper] detectedSearchPlugins]];
else
if (pluginsAreDetected) {
NSArray* detectedPlugins = [[self browserWrapper] detectedSearchPlugins];
[mSearchBar setDetectedSearchPlugins:detectedPlugins];
[mSearchSheetTextField setDetectedSearchPlugins:detectedPlugins];
}
else {
[mSearchBar setDetectedSearchPlugins:nil];
[mSearchSheetTextField setDetectedSearchPlugins:nil];
}
}
- (BOOL)webSearchField:(WebSearchField*)searchField shouldListDetectedSearchPlugin:(NSDictionary *)searchPluginInfoDict
@@ -4741,6 +4747,7 @@ public:
// Because of this, select the last engine.
NSString* installedPluginName = [[[SearchEngineManager sharedSearchEngineManager] installedSearchEngineNames] lastObject];
[mSearchBar setCurrentSearchEngine:installedPluginName];
[mSearchSheetTextField setCurrentSearchEngine:installedPluginName];
}
else {
NSString* searchPluginName = [searchPlugin valueForKey:kWebSearchPluginNameKey];
@@ -4749,10 +4756,15 @@ public:
[alert setMessageText:NSLocalizedString(@"SearchPluginInstallationErrorTitle", nil)];
[alert setInformativeText:[NSString stringWithFormat:NSLocalizedString(@"SearchPluginInstallationErrorMessage", nil), searchPluginName]];
[alert setAlertStyle:NSWarningAlertStyle];
[alert beginSheetModalForWindow:[self window]
modalDelegate:self
didEndSelector:NULL
contextInfo:NULL];
if ([[self window] attachedSheet]) {
[alert runModal];
}
else {
[alert beginSheetModalForWindow:[self window]
modalDelegate:self
didEndSelector:NULL
contextInfo:NULL];
}
}
}