Upstream version 7.36.149.0
[platform/framework/web/crosswalk.git] / src / chrome / browser / ui / content_settings / media_setting_changed_infobar_delegate.cc
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "chrome/browser/ui/content_settings/media_setting_changed_infobar_delegate.h"
6
7 #include "base/logging.h"
8 #include "chrome/browser/infobars/infobar_service.h"
9 #include "components/infobars/core/infobar.h"
10 #include "content/public/browser/web_contents.h"
11 #include "grit/generated_resources.h"
12 #include "grit/theme_resources.h"
13 #include "ui/base/l10n/l10n_util.h"
14
15 // static
16 void MediaSettingChangedInfoBarDelegate::Create(
17     InfoBarService* infobar_service) {
18   infobar_service->AddInfoBar(ConfirmInfoBarDelegate::CreateInfoBar(
19       scoped_ptr<ConfirmInfoBarDelegate>(
20           new MediaSettingChangedInfoBarDelegate())));
21 }
22
23 MediaSettingChangedInfoBarDelegate::MediaSettingChangedInfoBarDelegate()
24     : ConfirmInfoBarDelegate() {
25 }
26
27 MediaSettingChangedInfoBarDelegate::~MediaSettingChangedInfoBarDelegate() {
28 }
29
30 int MediaSettingChangedInfoBarDelegate::GetIconID() const {
31   return IDR_INFOBAR_MEDIA_STREAM_CAMERA;
32 }
33
34 infobars::InfoBarDelegate::Type
35 MediaSettingChangedInfoBarDelegate::GetInfoBarType() const {
36   return PAGE_ACTION_TYPE;
37 }
38
39 base::string16 MediaSettingChangedInfoBarDelegate::GetMessageText() const {
40   return l10n_util::GetStringUTF16(
41       IDS_MEDIASTREAM_SETTING_CHANGED_INFOBAR_MESSAGE);
42 }
43
44 int MediaSettingChangedInfoBarDelegate::GetButtons() const {
45   return BUTTON_OK;
46 }
47
48 base::string16 MediaSettingChangedInfoBarDelegate::GetButtonLabel(
49     InfoBarButton button) const {
50   DCHECK_EQ(BUTTON_OK, button);
51   return l10n_util::GetStringUTF16(IDS_CONTENT_SETTING_CHANGED_INFOBAR_BUTTON);
52 }
53
54 bool MediaSettingChangedInfoBarDelegate::Accept() {
55   content::WebContents* web_contents =
56       InfoBarService::WebContentsFromInfoBar(infobar());
57   web_contents->GetController().Reload(true);
58   return true;
59 }