Index: chrome/browser/ui/app_list/search/people/people_result.cc |
diff --git a/chrome/browser/ui/app_list/search/people/people_result.cc b/chrome/browser/ui/app_list/search/people/people_result.cc |
index 6278313bf226a3d15677b9273235589d3ce51ada..6735cfe91447e4324557e6f0553853afc813a072 100644 |
--- a/chrome/browser/ui/app_list/search/people/people_result.cc |
+++ b/chrome/browser/ui/app_list/search/people/people_result.cc |
@@ -12,10 +12,10 @@ |
#include "chrome/browser/profiles/profile.h" |
#include "chrome/browser/signin/profile_oauth2_token_service_factory.h" |
#include "chrome/browser/signin/signin_manager_factory.h" |
+#include "chrome/browser/ui/app_list/app_list_controller_delegate.h" |
#include "chrome/browser/ui/app_list/search/common/url_icon_source.h" |
#include "chrome/browser/ui/app_list/search/people/person.h" |
#include "chrome/browser/ui/app_list/search/search_util.h" |
-#include "chrome/browser/ui/browser_navigator.h" |
#include "chrome/common/extensions/api/hangouts_private.h" |
#include "chrome/grit/generated_resources.h" |
#include "components/signin/core/browser/profile_oauth2_token_service.h" |
@@ -61,8 +61,13 @@ GURL GetImageUrl(const GURL& url) { |
namespace app_list { |
-PeopleResult::PeopleResult(Profile* profile, scoped_ptr<Person> person) |
- : profile_(profile), person_(person.Pass()), weak_factory_(this) { |
+PeopleResult::PeopleResult(Profile* profile, |
+ AppListControllerDelegate* controller, |
+ scoped_ptr<Person> person) |
+ : profile_(profile), |
+ controller_(controller), |
+ person_(person.Pass()), |
+ weak_factory_(this) { |
set_id(person_->id); |
set_title(base::UTF8ToUTF16(person_->display_name)); |
set_relevance(person_->interaction_rank); |
@@ -114,7 +119,7 @@ void PeopleResult::InvokeAction(int action_index, int event_flags) { |
scoped_ptr<SearchResult> PeopleResult::Duplicate() { |
return scoped_ptr<SearchResult>( |
- new PeopleResult(profile_, person_->Duplicate().Pass())); |
+ new PeopleResult(profile_, controller_, person_->Duplicate().Pass())); |
} |
void PeopleResult::OnIconLoaded() { |
@@ -175,12 +180,10 @@ void PeopleResult::OpenChat() { |
} |
void PeopleResult::SendEmail() { |
- chrome::NavigateParams params(profile_, |
- GURL(kEmailUrlPrefix + person_->email), |
- ui::PAGE_TRANSITION_LINK); |
- // If no window exists, this will open a new window this one tab. |
- params.disposition = NEW_FOREGROUND_TAB; |
- chrome::Navigate(¶ms); |
+ controller_->OpenURL(profile_, |
+ GURL(kEmailUrlPrefix + person_->email), |
+ ui::PAGE_TRANSITION_LINK, |
+ NEW_FOREGROUND_TAB); |
content::RecordAction(base::UserMetricsAction("PeopleSearch_SendEmail")); |
} |