Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(109)

Side by Side Diff: chrome/browser/translate/options_menu_model.cc

Issue 230453004: Remove InfoBarDelegate::web_contents() (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix compile Created 6 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/translate/options_menu_model.h" 5 #include "chrome/browser/translate/options_menu_model.h"
6 6
7 #include "base/metrics/histogram.h" 7 #include "base/metrics/histogram.h"
8 #include "chrome/app/chrome_command_ids.h" 8 #include "chrome/app/chrome_command_ids.h"
9 #include "chrome/browser/profiles/profile.h" 9 #include "chrome/browser/profiles/profile.h"
10 #include "chrome/browser/translate/translate_infobar_delegate.h" 10 #include "chrome/browser/translate/translate_infobar_delegate.h"
11 #include "chrome/common/url_constants.h" 11 #include "chrome/common/url_constants.h"
12 #include "content/public/browser/navigation_controller.h" 12 #include "content/public/browser/navigation_controller.h"
13 #include "content/public/browser/navigation_entry.h" 13 #include "content/public/browser/navigation_entry.h"
14 #include "content/public/browser/web_contents.h" 14 #include "content/public/browser/web_contents.h"
15 #include "grit/generated_resources.h" 15 #include "grit/generated_resources.h"
16 #include "grit/locale_settings.h" 16 #include "grit/locale_settings.h"
17 #include "ui/base/l10n/l10n_util.h" 17 #include "ui/base/l10n/l10n_util.h"
18 18
19 using content::NavigationEntry; 19 using content::NavigationEntry;
20 using content::OpenURLParams; 20 using content::OpenURLParams;
21 using content::Referrer; 21 using content::Referrer;
22 using content::WebContents; 22 using content::WebContents;
23 23
24 OptionsMenuModel::OptionsMenuModel( 24 OptionsMenuModel::OptionsMenuModel(
25 TranslateInfoBarDelegate* translate_delegate) 25 TranslateInfoBarDelegate* translate_delegate)
26 : ui::SimpleMenuModel(this), 26 : ui::SimpleMenuModel(this),
27 translate_infobar_delegate_(translate_delegate) { 27 translate_infobar_delegate_(translate_delegate) {
28 // |translate_delegate| must already be owned. 28 // |translate_delegate| must already be owned.
29 DCHECK(translate_infobar_delegate_->web_contents()); 29 DCHECK(translate_infobar_delegate_->GetWebContents());
30 30
31 base::string16 original_language = translate_delegate->language_name_at( 31 base::string16 original_language = translate_delegate->language_name_at(
32 translate_delegate->original_language_index()); 32 translate_delegate->original_language_index());
33 base::string16 target_language = translate_delegate->language_name_at( 33 base::string16 target_language = translate_delegate->language_name_at(
34 translate_delegate->target_language_index()); 34 translate_delegate->target_language_index());
35 35
36 bool autodetermined_source_language = 36 bool autodetermined_source_language =
37 translate_delegate->original_language_index() == 37 translate_delegate->original_language_index() ==
38 TranslateInfoBarDelegate::kNoIndex; 38 TranslateInfoBarDelegate::kNoIndex;
39 39
40 // Populate the menu. 40 // Populate the menu.
41 // Incognito mode does not get any preferences related items. 41 // Incognito mode does not get any preferences related items.
42 if (!translate_delegate->web_contents()->GetBrowserContext()-> 42 if (!translate_delegate->GetWebContents()->GetBrowserContext()->
43 IsOffTheRecord()) { 43 IsOffTheRecord()) {
44 if (!autodetermined_source_language) { 44 if (!autodetermined_source_language) {
45 AddCheckItem(IDC_TRANSLATE_OPTIONS_ALWAYS, 45 AddCheckItem(IDC_TRANSLATE_OPTIONS_ALWAYS,
46 l10n_util::GetStringFUTF16(IDS_TRANSLATE_INFOBAR_OPTIONS_ALWAYS, 46 l10n_util::GetStringFUTF16(IDS_TRANSLATE_INFOBAR_OPTIONS_ALWAYS,
47 original_language, target_language)); 47 original_language, target_language));
48 AddCheckItem(IDC_TRANSLATE_OPTIONS_NEVER_TRANSLATE_LANG, 48 AddCheckItem(IDC_TRANSLATE_OPTIONS_NEVER_TRANSLATE_LANG,
49 l10n_util::GetStringFUTF16( 49 l10n_util::GetStringFUTF16(
50 IDS_TRANSLATE_INFOBAR_OPTIONS_NEVER_TRANSLATE_LANG, 50 IDS_TRANSLATE_INFOBAR_OPTIONS_NEVER_TRANSLATE_LANG,
51 original_language)); 51 original_language));
52 } 52 }
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
118 118
119 case IDC_TRANSLATE_OPTIONS_ALWAYS: 119 case IDC_TRANSLATE_OPTIONS_ALWAYS:
120 translate_infobar_delegate_->ToggleAlwaysTranslate(); 120 translate_infobar_delegate_->ToggleAlwaysTranslate();
121 break; 121 break;
122 122
123 case IDC_TRANSLATE_REPORT_BAD_LANGUAGE_DETECTION: 123 case IDC_TRANSLATE_REPORT_BAD_LANGUAGE_DETECTION:
124 translate_infobar_delegate_->ReportLanguageDetectionError(); 124 translate_infobar_delegate_->ReportLanguageDetectionError();
125 break; 125 break;
126 126
127 case IDC_TRANSLATE_OPTIONS_ABOUT: { 127 case IDC_TRANSLATE_OPTIONS_ABOUT: {
128 WebContents* web_contents = translate_infobar_delegate_->web_contents(); 128 WebContents* web_contents = translate_infobar_delegate_->GetWebContents();
129 if (web_contents) { 129 if (web_contents) {
130 OpenURLParams params( 130 OpenURLParams params(
131 GURL(chrome::kAboutGoogleTranslateURL), Referrer(), 131 GURL(chrome::kAboutGoogleTranslateURL), Referrer(),
132 NEW_FOREGROUND_TAB, content::PAGE_TRANSITION_LINK, false); 132 NEW_FOREGROUND_TAB, content::PAGE_TRANSITION_LINK, false);
133 web_contents->OpenURL(params); 133 web_contents->OpenURL(params);
134 } 134 }
135 break; 135 break;
136 } 136 }
137 137
138 default: 138 default:
139 NOTREACHED() << "Invalid command id from menu."; 139 NOTREACHED() << "Invalid command id from menu.";
140 break; 140 break;
141 } 141 }
142 } 142 }
OLDNEW
« no previous file with comments | « chrome/browser/three_d_api_observer.cc ('k') | chrome/browser/translate/translate_infobar_delegate.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698