Chromium Code Reviews| 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/ui/app_list/app_list_view_delegate.h" | 5 #include "chrome/browser/ui/app_list/app_list_view_delegate.h" |
| 6 | 6 |
| 7 #include <vector> | 7 #include <vector> |
| 8 | 8 |
| 9 #include "apps/custom_launcher_page_contents.h" | 9 #include "apps/custom_launcher_page_contents.h" |
| 10 #include "base/callback.h" | 10 #include "base/callback.h" |
| (...skipping 23 matching lines...) Expand all Loading... | |
| 34 #include "chrome/common/extensions/extension_constants.h" | 34 #include "chrome/common/extensions/extension_constants.h" |
| 35 #include "chrome/common/url_constants.h" | 35 #include "chrome/common/url_constants.h" |
| 36 #include "components/signin/core/browser/signin_manager.h" | 36 #include "components/signin/core/browser/signin_manager.h" |
| 37 #include "content/public/browser/browser_thread.h" | 37 #include "content/public/browser/browser_thread.h" |
| 38 #include "content/public/browser/page_navigator.h" | 38 #include "content/public/browser/page_navigator.h" |
| 39 #include "content/public/browser/user_metrics.h" | 39 #include "content/public/browser/user_metrics.h" |
| 40 #include "content/public/browser/web_contents.h" | 40 #include "content/public/browser/web_contents.h" |
| 41 #include "extensions/browser/extension_registry.h" | 41 #include "extensions/browser/extension_registry.h" |
| 42 #include "extensions/common/constants.h" | 42 #include "extensions/common/constants.h" |
| 43 #include "extensions/common/extension_set.h" | 43 #include "extensions/common/extension_set.h" |
| 44 #include "extensions/common/manifest.h" | |
| 45 #include "extensions/common/manifest_constants.h" | 44 #include "extensions/common/manifest_constants.h" |
| 45 #include "extensions/common/manifest_handlers/launcher_page_info.h" | |
| 46 #include "grit/theme_resources.h" | 46 #include "grit/theme_resources.h" |
| 47 #include "ui/app_list/app_list_switches.h" | 47 #include "ui/app_list/app_list_switches.h" |
| 48 #include "ui/app_list/app_list_view_delegate_observer.h" | 48 #include "ui/app_list/app_list_view_delegate_observer.h" |
| 49 #include "ui/app_list/search_box_model.h" | 49 #include "ui/app_list/search_box_model.h" |
| 50 #include "ui/app_list/speech_ui_model.h" | 50 #include "ui/app_list/speech_ui_model.h" |
| 51 #include "ui/base/resource/resource_bundle.h" | 51 #include "ui/base/resource/resource_bundle.h" |
| 52 #include "ui/views/controls/webview/webview.h" | 52 #include "ui/views/controls/webview/webview.h" |
| 53 | 53 |
| 54 #if defined(TOOLKIT_VIEWS) | 54 #if defined(TOOLKIT_VIEWS) |
| 55 #include "ui/views/controls/webview/webview.h" | 55 #include "ui/views/controls/webview/webview.h" |
| (...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 128 | 128 |
| 129 // Search the list of installed extensions for ones with 'launcher_page'. | 129 // Search the list of installed extensions for ones with 'launcher_page'. |
| 130 extensions::ExtensionRegistry* extension_registry = | 130 extensions::ExtensionRegistry* extension_registry = |
| 131 extensions::ExtensionRegistry::Get(browser_context); | 131 extensions::ExtensionRegistry::Get(browser_context); |
| 132 const extensions::ExtensionSet& enabled_extensions = | 132 const extensions::ExtensionSet& enabled_extensions = |
| 133 extension_registry->enabled_extensions(); | 133 extension_registry->enabled_extensions(); |
| 134 for (extensions::ExtensionSet::const_iterator it = enabled_extensions.begin(); | 134 for (extensions::ExtensionSet::const_iterator it = enabled_extensions.begin(); |
| 135 it != enabled_extensions.end(); | 135 it != enabled_extensions.end(); |
| 136 ++it) { | 136 ++it) { |
| 137 const extensions::Extension* extension = it->get(); | 137 const extensions::Extension* extension = it->get(); |
| 138 const extensions::Manifest* manifest = extension->manifest(); | 138 extensions::LauncherPageInfo* info = |
| 139 if (!manifest->HasKey(extensions::manifest_keys::kLauncherPage)) | 139 extensions::LauncherPageHandler::GetInfo(extension); |
| 140 if (!info) | |
| 140 continue; | 141 continue; |
| 141 std::string launcher_page_page; | 142 urls->push_back(extension->GetResourceURL(info->page)); |
|
benwells
2014/08/26 03:29:12
Nit: please add a blank line after continue.
Matt Giuca
2014/08/26 03:36:30
Done.
| |
| 142 if (!manifest->GetString(extensions::manifest_keys::kLauncherPagePage, | |
| 143 &launcher_page_page)) { | |
| 144 // TODO(mgiuca): Add a proper manifest parser to catch this error properly | |
| 145 // and display it on the extensions page. | |
| 146 LOG(ERROR) << "Extension " << extension->id() << ": " | |
| 147 << extensions::manifest_keys::kLauncherPage | |
| 148 << " has no 'page' attribute; will be ignored."; | |
| 149 continue; | |
| 150 } | |
| 151 urls->push_back(extension->GetResourceURL(launcher_page_page)); | |
| 152 } | 143 } |
| 153 } | 144 } |
| 154 | 145 |
| 155 } // namespace | 146 } // namespace |
| 156 | 147 |
| 157 AppListViewDelegate::AppListViewDelegate(Profile* profile, | 148 AppListViewDelegate::AppListViewDelegate(Profile* profile, |
| 158 AppListControllerDelegate* controller) | 149 AppListControllerDelegate* controller) |
| 159 : controller_(controller), | 150 : controller_(controller), |
| 160 profile_(profile), | 151 profile_(profile), |
| 161 model_(NULL), | 152 model_(NULL), |
| (...skipping 420 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 582 | 573 |
| 583 void AppListViewDelegate::AddObserver( | 574 void AppListViewDelegate::AddObserver( |
| 584 app_list::AppListViewDelegateObserver* observer) { | 575 app_list::AppListViewDelegateObserver* observer) { |
| 585 observers_.AddObserver(observer); | 576 observers_.AddObserver(observer); |
| 586 } | 577 } |
| 587 | 578 |
| 588 void AppListViewDelegate::RemoveObserver( | 579 void AppListViewDelegate::RemoveObserver( |
| 589 app_list::AppListViewDelegateObserver* observer) { | 580 app_list::AppListViewDelegateObserver* observer) { |
| 590 observers_.RemoveObserver(observer); | 581 observers_.RemoveObserver(observer); |
| 591 } | 582 } |
| OLD | NEW |