Index: chrome/browser/ui/views/website_settings/permissions_bubble_view.cc |
diff --git a/chrome/browser/ui/views/website_settings/permissions_bubble_view.cc b/chrome/browser/ui/views/website_settings/permissions_bubble_view.cc |
index ae41cd192260805c8770cae7808eec212559e821..60f64e2ebba8c6c7bb1e9657e24d0ddf590b2921 100644 |
--- a/chrome/browser/ui/views/website_settings/permissions_bubble_view.cc |
+++ b/chrome/browser/ui/views/website_settings/permissions_bubble_view.cc |
@@ -4,10 +4,13 @@ |
#include "chrome/browser/ui/views/website_settings/permissions_bubble_view.h" |
+#include "base/prefs/pref_service.h" |
#include "base/strings/string16.h" |
+#include "chrome/browser/profiles/profile.h" |
#include "chrome/browser/ui/views/website_settings/permission_selector_view.h" |
#include "chrome/browser/ui/views/website_settings/permission_selector_view_observer.h" |
#include "chrome/browser/ui/website_settings/permission_bubble_request.h" |
+#include "chrome/common/pref_names.h" |
#include "chrome/grit/generated_resources.h" |
#include "net/base/net_util.h" |
#include "ui/accessibility/ax_view_state.h" |
@@ -175,6 +178,7 @@ class PermissionsBubbleDelegateView : public views::BubbleDelegateView, |
PermissionsBubbleDelegateView( |
views::View* anchor, |
PermissionBubbleViewViews* owner, |
+ Profile* profile, |
const std::vector<PermissionBubbleRequest*>& requests, |
const std::vector<bool>& accept_state, |
bool customization_mode); |
@@ -214,6 +218,7 @@ class PermissionsBubbleDelegateView : public views::BubbleDelegateView, |
PermissionsBubbleDelegateView::PermissionsBubbleDelegateView( |
views::View* anchor, |
PermissionBubbleViewViews* owner, |
+ Profile* profile, |
const std::vector<PermissionBubbleRequest*>& requests, |
const std::vector<bool>& accept_state, |
bool customization_mode) |
@@ -232,9 +237,11 @@ PermissionsBubbleDelegateView::PermissionsBubbleDelegateView( |
SetLayoutManager(new views::BoxLayout( |
views::BoxLayout::kVertical, kBubbleOuterMargin, 0, kItemMajorSpacing)); |
- // TODO(gbillock): support other languages than English. |
+ DCHECK(profile); |
+ std::string languages = |
+ profile->GetPrefs()->GetString(prefs::kAcceptLanguages); |
sky
2015/01/29 17:40:44
One question though. Can PermissionBubbleViewViews
felt
2015/01/29 19:51:13
Looked into this. Changing the language will promp
|
hostname_ = net::FormatUrl(requests[0]->GetRequestingHostname(), |
- "en", |
+ languages, |
net::kFormatUrlOmitUsernamePassword | |
net::kFormatUrlOmitTrailingSlashOnBareHostname, |
net::UnescapeRule::SPACES, NULL, NULL, NULL); |
@@ -417,10 +424,13 @@ void PermissionsBubbleDelegateView::OnPerformAction( |
////////////////////////////////////////////////////////////////////////////// |
// PermissionBubbleViewViews |
-PermissionBubbleViewViews::PermissionBubbleViewViews(views::View* anchor_view) |
+PermissionBubbleViewViews::PermissionBubbleViewViews( |
+ views::View* anchor_view, |
+ Profile* profile) |
: anchor_view_(anchor_view), |
delegate_(NULL), |
- bubble_delegate_(NULL) {} |
+ bubble_delegate_(NULL), |
+ profile_(profile) {} |
PermissionBubbleViewViews::~PermissionBubbleViewViews() { |
if (delegate_) |
@@ -439,7 +449,7 @@ void PermissionBubbleViewViews::Show( |
bubble_delegate_->Close(); |
bubble_delegate_ = |
- new PermissionsBubbleDelegateView(anchor_view_, this, |
+ new PermissionsBubbleDelegateView(anchor_view_, this, profile_, |
requests, values, customization_mode); |
views::BubbleDelegateView::CreateBubble(bubble_delegate_)->Show(); |
bubble_delegate_->SizeToContents(); |