OLD | NEW |
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/media_gallery/media_galleries_dialog_controller.h" | 5 #include "chrome/browser/media_gallery/media_galleries_dialog_controller.h" |
6 | 6 |
7 #include "base/path_service.h" | 7 #include "base/path_service.h" |
8 #include "base/utf_string_conversions.h" | 8 #include "base/utf_string_conversions.h" |
9 #include "chrome/browser/media_gallery/media_galleries_preferences_factory.h" | 9 #include "chrome/browser/media_gallery/media_galleries_preferences_factory.h" |
10 #include "chrome/browser/ui/chrome_select_file_policy.h" | 10 #include "chrome/browser/ui/chrome_select_file_policy.h" |
(...skipping 26 matching lines...) Expand all Loading... |
37 MediaGalleriesDialogController::MediaGalleriesDialogController() | 37 MediaGalleriesDialogController::MediaGalleriesDialogController() |
38 : tab_contents_(NULL), | 38 : tab_contents_(NULL), |
39 extension_(NULL), | 39 extension_(NULL), |
40 preferences_(NULL) {} | 40 preferences_(NULL) {} |
41 | 41 |
42 MediaGalleriesDialogController::~MediaGalleriesDialogController() { | 42 MediaGalleriesDialogController::~MediaGalleriesDialogController() { |
43 if (select_folder_dialog_.get()) | 43 if (select_folder_dialog_.get()) |
44 select_folder_dialog_->ListenerDestroyed(); | 44 select_folder_dialog_->ListenerDestroyed(); |
45 } | 45 } |
46 | 46 |
47 string16 MediaGalleriesDialogController::GetHeader() { | 47 string16 MediaGalleriesDialogController::GetHeader() const { |
48 std::string extension_name(extension_ ? extension_->name() : ""); | 48 std::string extension_name(extension_ ? extension_->name() : ""); |
49 return l10n_util::GetStringFUTF16(IDS_MEDIA_GALLERIES_DIALOG_HEADER, | 49 return l10n_util::GetStringFUTF16(IDS_MEDIA_GALLERIES_DIALOG_HEADER, |
50 UTF8ToUTF16(extension_name)); | 50 UTF8ToUTF16(extension_name)); |
51 } | 51 } |
52 | 52 |
53 string16 MediaGalleriesDialogController::GetSubtext() { | 53 string16 MediaGalleriesDialogController::GetSubtext() const { |
54 if (extension_ && extension_->HasAPIPermission( | 54 if (extension_ && extension_->HasAPIPermission( |
55 extensions::APIPermission::kMediaGalleriesRead)) { | 55 extensions::APIPermission::kMediaGalleriesRead)) { |
56 return l10n_util::GetStringFUTF16(IDS_MEDIA_GALLERIES_DIALOG_READ_SUBTEXT, | 56 return l10n_util::GetStringFUTF16(IDS_MEDIA_GALLERIES_DIALOG_READ_SUBTEXT, |
57 UTF8ToUTF16(extension_->name())); | 57 UTF8ToUTF16(extension_->name())); |
58 } | 58 } |
59 // TODO(estade): handle write et al. | 59 // TODO(estade): handle write et al. |
60 return string16(); | 60 return string16(); |
61 } | 61 } |
62 | 62 |
| 63 bool MediaGalleriesDialogController::HasPermittedGalleries() const { |
| 64 for (KnownGalleryPermissions::const_iterator iter = permissions().begin(); |
| 65 iter != permissions().end(); iter++) { |
| 66 if (iter->second.allowed) |
| 67 return true; |
| 68 } |
| 69 return false; |
| 70 } |
| 71 |
63 void MediaGalleriesDialogController::OnAddFolderClicked() { | 72 void MediaGalleriesDialogController::OnAddFolderClicked() { |
64 FilePath user_data_dir; | 73 FilePath user_data_dir; |
65 PathService::Get(chrome::DIR_USER_DATA, &user_data_dir); | 74 PathService::Get(chrome::DIR_USER_DATA, &user_data_dir); |
66 // TODO(estade): if file dialogs are disabled we need to handle it somehow. | 75 // TODO(estade): if file dialogs are disabled we need to handle it somehow. |
67 select_folder_dialog_ = | 76 select_folder_dialog_ = |
68 ui::SelectFileDialog::Create(this, new ChromeSelectFilePolicy(NULL)); | 77 ui::SelectFileDialog::Create(this, new ChromeSelectFilePolicy(NULL)); |
69 select_folder_dialog_->SelectFile( | 78 select_folder_dialog_->SelectFile( |
70 ui::SelectFileDialog::SELECT_FOLDER, | 79 ui::SelectFileDialog::SELECT_FOLDER, |
71 l10n_util::GetStringUTF16(IDS_MEDIA_GALLERIES_DIALOG_ADD_GALLERY_TITLE), | 80 l10n_util::GetStringUTF16(IDS_MEDIA_GALLERIES_DIALOG_ADD_GALLERY_TITLE), |
72 user_data_dir, | 81 user_data_dir, |
73 NULL, 0, FILE_PATH_LITERAL(""), | 82 NULL, 0, FILE_PATH_LITERAL(""), |
74 tab_contents_->web_contents()->GetView()->GetTopLevelNativeWindow(), | 83 tab_contents_->web_contents()->GetView()->GetTopLevelNativeWindow(), |
75 NULL); | 84 NULL); |
76 } | 85 } |
77 | 86 |
78 void MediaGalleriesDialogController::GalleryToggled( | 87 void MediaGalleriesDialogController::DidToggleGallery( |
79 const MediaGalleryPrefInfo* gallery, | 88 const MediaGalleryPrefInfo* gallery, |
80 bool enabled) { | 89 bool enabled) { |
81 // Check known galleries. | 90 // Check known galleries. |
82 KnownGalleryPermissions::iterator iter = | 91 KnownGalleryPermissions::iterator iter = |
83 known_galleries_.find(gallery->pref_id); | 92 known_galleries_.find(gallery->pref_id); |
84 if (iter != known_galleries_.end()) { | 93 if (iter != known_galleries_.end()) { |
85 iter->second.allowed = enabled; | 94 iter->second.allowed = enabled; |
86 return; | 95 return; |
87 } | 96 } |
88 | 97 |
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
182 preferences_->SetGalleryPermissionForExtension( | 191 preferences_->SetGalleryPermissionForExtension( |
183 *extension_, id, true); | 192 *extension_, id, true); |
184 } | 193 } |
185 } | 194 } |
186 | 195 |
187 // MediaGalleries dialog ------------------------------------------------------- | 196 // MediaGalleries dialog ------------------------------------------------------- |
188 | 197 |
189 MediaGalleriesDialog::~MediaGalleriesDialog() {} | 198 MediaGalleriesDialog::~MediaGalleriesDialog() {} |
190 | 199 |
191 } // namespace chrome | 200 } // namespace chrome |
OLD | NEW |