diff options
author | rdevlin.cronin@chromium.org <rdevlin.cronin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-05-20 21:14:08 +0000 |
---|---|---|
committer | rdevlin.cronin@chromium.org <rdevlin.cronin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-05-20 21:14:08 +0000 |
commit | 53c7e6f1fe76c02d7f1796eb218a2964efecb575 (patch) | |
tree | 5a102c9bf13f13492e5f409b20656fda1c1283c9 | |
parent | 5d648cea4c17461ac61f850dad35d4154c2c1ed0 (diff) | |
download | chromium_src-53c7e6f1fe76c02d7f1796eb218a2964efecb575.zip chromium_src-53c7e6f1fe76c02d7f1796eb218a2964efecb575.tar.gz chromium_src-53c7e6f1fe76c02d7f1796eb218a2964efecb575.tar.bz2 |
Move FileHandlersInfo to /extensions and remove struct FileHandlersInfo
Move FileHandlersParser to /extensions.
FileHandlersInfo was a struct which only contained a vector of FileHandlers.
Instead, typedef a vector of FileHandlers as a FileHandlersInfo.
BUG=374980
Review URL: https://codereview.chromium.org/280963002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@271750 0039d316-1c4b-4281-b951-d872f2087c98
17 files changed, 74 insertions, 116 deletions
diff --git a/chrome/browser/extensions/api/file_handlers/app_file_handler_util.cc b/chrome/browser/extensions/api/file_handlers/app_file_handler_util.cc index d27ccac..04d54af 100644 --- a/chrome/browser/extensions/api/file_handlers/app_file_handler_util.cc +++ b/chrome/browser/extensions/api/file_handlers/app_file_handler_util.cc @@ -242,15 +242,13 @@ void WritableFileChecker::RemoteCheckDone( } // namespace -typedef std::vector<FileHandlerInfo> FileHandlerList; - const FileHandlerInfo* FileHandlerForId(const Extension& app, const std::string& handler_id) { - const FileHandlerList* file_handlers = FileHandlers::GetFileHandlers(&app); + const FileHandlersInfo* file_handlers = FileHandlers::GetFileHandlers(&app); if (!file_handlers) return NULL; - for (FileHandlerList::const_iterator i = file_handlers->begin(); + for (FileHandlersInfo::const_iterator i = file_handlers->begin(); i != file_handlers->end(); i++) { if (i->id == handler_id) return &*i; @@ -262,11 +260,11 @@ const FileHandlerInfo* FirstFileHandlerForFile( const Extension& app, const std::string& mime_type, const base::FilePath& path) { - const FileHandlerList* file_handlers = FileHandlers::GetFileHandlers(&app); + const FileHandlersInfo* file_handlers = FileHandlers::GetFileHandlers(&app); if (!file_handlers) return NULL; - for (FileHandlerList::const_iterator i = file_handlers->begin(); + for (FileHandlersInfo::const_iterator i = file_handlers->begin(); i != file_handlers->end(); i++) { if (FileHandlerCanHandleFile(*i, mime_type, path)) return &*i; @@ -281,11 +279,11 @@ std::vector<const FileHandlerInfo*> FindFileHandlersForFiles( return handlers; // Look for file handlers which can handle all the MIME types specified. - const FileHandlerList* file_handlers = FileHandlers::GetFileHandlers(&app); + const FileHandlersInfo* file_handlers = FileHandlers::GetFileHandlers(&app); if (!file_handlers) return handlers; - for (FileHandlerList::const_iterator data = file_handlers->begin(); + for (FileHandlersInfo::const_iterator data = file_handlers->begin(); data != file_handlers->end(); ++data) { bool handles_all_types = true; for (PathAndMimeTypeSet::const_iterator it = files.begin(); diff --git a/chrome/browser/extensions/api/file_handlers/app_file_handler_util.h b/chrome/browser/extensions/api/file_handlers/app_file_handler_util.h index 14bd11c..53d0036 100644 --- a/chrome/browser/extensions/api/file_handlers/app_file_handler_util.h +++ b/chrome/browser/extensions/api/file_handlers/app_file_handler_util.h @@ -10,9 +10,9 @@ #include <utility> #include <vector> -#include "chrome/common/extensions/api/file_handlers/file_handlers_parser.h" #include "content/public/browser/render_view_host.h" #include "extensions/common/extension.h" +#include "extensions/common/manifest_handlers/file_handler_info.h" class Profile; diff --git a/chrome/browser/web_applications/web_app.cc b/chrome/browser/web_applications/web_app.cc index 87cd12c..02c39bb 100644 --- a/chrome/browser/web_applications/web_app.cc +++ b/chrome/browser/web_applications/web_app.cc @@ -18,7 +18,6 @@ #include "chrome/browser/profiles/profile.h" #include "chrome/common/chrome_constants.h" #include "chrome/common/chrome_version_info.h" -#include "chrome/common/extensions/api/file_handlers/file_handlers_parser.h" #include "chrome/common/extensions/manifest_handlers/app_launch_info.h" #include "chrome/common/pref_names.h" #include "chrome/common/url_constants.h" @@ -162,11 +161,10 @@ void GetInfoForApp(const extensions::Extension* extension, const InfoCallback& callback) { web_app::ShortcutInfo shortcut_info = web_app::ShortcutInfoForExtensionAndProfile(extension, profile); - extensions::FileHandlersInfo file_handlers_info; const std::vector<extensions::FileHandlerInfo>* file_handlers = extensions::FileHandlers::GetFileHandlers(extension); - if (file_handlers) - file_handlers_info.handlers = *file_handlers; + extensions::FileHandlersInfo file_handlers_info = + file_handlers ? *file_handlers : extensions::FileHandlersInfo(); std::vector<extensions::ImageLoader::ImageRepresentation> info_list; for (size_t i = 0; i < kNumDesiredSizes; ++i) { diff --git a/chrome/browser/web_applications/web_app.h b/chrome/browser/web_applications/web_app.h index 9399868..9b2cef7 100644 --- a/chrome/browser/web_applications/web_app.h +++ b/chrome/browser/web_applications/web_app.h @@ -13,8 +13,8 @@ #include "base/strings/string16.h" #include "build/build_config.h" #include "chrome/browser/shell_integration.h" -#include "chrome/common/extensions/file_handler_info.h" #include "chrome/common/web_application_info.h" +#include "extensions/common/manifest_handlers/file_handler_info.h" class Profile; diff --git a/chrome/browser/web_applications/web_app_mac.h b/chrome/browser/web_applications/web_app_mac.h index 31fdb19..46702e4 100644 --- a/chrome/browser/web_applications/web_app_mac.h +++ b/chrome/browser/web_applications/web_app_mac.h @@ -12,7 +12,7 @@ #include "base/files/file_path.h" #include "base/gtest_prod_util.h" #include "chrome/browser/web_applications/web_app.h" -#include "chrome/common/extensions/file_handler_info.h" +#include "extensions/common/manifest_handlers/file_handler_info.h" namespace web_app { diff --git a/chrome/browser/web_applications/web_app_mac.mm b/chrome/browser/web_applications/web_app_mac.mm index 10d8a89..563b33f 100644 --- a/chrome/browser/web_applications/web_app_mac.mm +++ b/chrome/browser/web_applications/web_app_mac.mm @@ -436,14 +436,12 @@ web_app::ShortcutInfo BuildShortcutInfoFromBundle( void UpdateFileTypes(NSMutableDictionary* plist, const extensions::FileHandlersInfo& file_handlers_info) { - const std::vector<extensions::FileHandlerInfo>& handlers = - file_handlers_info.handlers; NSMutableArray* document_types = - [NSMutableArray arrayWithCapacity:handlers.size()]; + [NSMutableArray arrayWithCapacity:file_handlers_info.size()]; - for (std::vector<extensions::FileHandlerInfo>::const_iterator info_it = - handlers.begin(); - info_it != handlers.end(); + for (extensions::FileHandlersInfo::const_iterator info_it = + file_handlers_info.begin(); + info_it != file_handlers_info.end(); ++info_it) { const extensions::FileHandlerInfo& info = *info_it; diff --git a/chrome/browser/web_applications/web_app_mac_unittest.mm b/chrome/browser/web_applications/web_app_mac_unittest.mm index 10b27de..ca5d7c2 100644 --- a/chrome/browser/web_applications/web_app_mac_unittest.mm +++ b/chrome/browser/web_applications/web_app_mac_unittest.mm @@ -307,11 +307,11 @@ TEST_F(WebAppShortcutCreatorTest, FileHandlers) { handler_0.extensions.insert("ext1"); handler_0.types.insert("type0"); handler_0.types.insert("type1"); - file_handlers_info.handlers.push_back(handler_0); + file_handlers_info.push_back(handler_0); extensions::FileHandlerInfo handler_1; handler_1.extensions.insert("ext2"); handler_1.types.insert("type2"); - file_handlers_info.handlers.push_back(handler_1); + file_handlers_info.push_back(handler_1); NiceMock<WebAppShortcutCreatorMock> shortcut_creator( app_data_dir_, info_, file_handlers_info); diff --git a/chrome/chrome_common.gypi b/chrome/chrome_common.gypi index 908c9dd..407747c 100644 --- a/chrome/chrome_common.gypi +++ b/chrome/chrome_common.gypi @@ -127,8 +127,6 @@ 'common/extensions/api/extension_action/page_action_handler.h', 'common/extensions/api/file_browser_handlers/file_browser_handler.cc', 'common/extensions/api/file_browser_handlers/file_browser_handler.h', - 'common/extensions/api/file_handlers/file_handlers_parser.cc', - 'common/extensions/api/file_handlers/file_handlers_parser.h', 'common/extensions/api/i18n/default_locale_handler.cc', 'common/extensions/api/i18n/default_locale_handler.h', 'common/extensions/api/identity/oauth2_manifest_handler.cc', @@ -172,8 +170,6 @@ 'common/extensions/features/chrome_channel_feature_filter.h', 'common/extensions/features/feature_channel.cc', 'common/extensions/features/feature_channel.h', - 'common/extensions/file_handler_info.cc', - 'common/extensions/file_handler_info.h', 'common/extensions/manifest_handlers/app_isolation_info.cc', 'common/extensions/manifest_handlers/app_isolation_info.h', 'common/extensions/manifest_handlers/app_launch_info.cc', diff --git a/chrome/chrome_tests_unit.gypi b/chrome/chrome_tests_unit.gypi index 9cfcdd8..8c67a23 100644 --- a/chrome/chrome_tests_unit.gypi +++ b/chrome/chrome_tests_unit.gypi @@ -568,6 +568,7 @@ '../extensions/common/id_util_unittest.cc', '../extensions/common/manifest_handler_unittest.cc', '../extensions/common/manifest_handlers/externally_connectable_unittest.cc', + '../extensions/common/manifest_handlers/file_handler_manifest_unittest.cc', '../extensions/common/manifest_handlers/shared_module_manifest_unittest.cc', '../extensions/common/message_bundle_unittest.cc', '../extensions/common/one_shot_event_unittest.cc', @@ -1802,7 +1803,6 @@ 'common/extensions/api/extension_action/browser_action_manifest_unittest.cc', 'common/extensions/api/extension_action/page_action_manifest_unittest.cc', 'common/extensions/api/file_browser_handlers/file_browser_handler_manifest_unittest.cc', - 'common/extensions/api/file_handlers/file_handlers_manifest_unittest.cc', 'common/extensions/api/i18n/default_locale_manifest_unittest.cc', 'common/extensions/api/identity/extension_manifests_auth_unittest.cc', 'common/extensions/api/storage/storage_schema_manifest_handler_unittest.cc', diff --git a/chrome/common/extensions/chrome_manifest_handlers.cc b/chrome/common/extensions/chrome_manifest_handlers.cc index 136149e..c97daae 100644 --- a/chrome/common/extensions/chrome_manifest_handlers.cc +++ b/chrome/common/extensions/chrome_manifest_handlers.cc @@ -9,7 +9,6 @@ #include "chrome/common/extensions/api/extension_action/browser_action_handler.h" #include "chrome/common/extensions/api/extension_action/page_action_handler.h" #include "chrome/common/extensions/api/file_browser_handlers/file_browser_handler.h" -#include "chrome/common/extensions/api/file_handlers/file_handlers_parser.h" #include "chrome/common/extensions/api/i18n/default_locale_handler.h" #include "chrome/common/extensions/api/identity/oauth2_manifest_handler.h" #include "chrome/common/extensions/api/storage/storage_schema_manifest_handler.h" @@ -56,7 +55,6 @@ void RegisterChromeManifestHandlers() { (new DevToolsPageHandler)->Register(); (new ExternallyConnectableHandler)->Register(); (new FileBrowserHandlerParser)->Register(); - (new FileHandlersParser)->Register(); (new HomepageURLHandler)->Register(); (new IconsHandler)->Register(); #if defined(OS_CHROMEOS) diff --git a/chrome/common/extensions/file_handler_info.cc b/chrome/common/extensions/file_handler_info.cc deleted file mode 100644 index 2f9b6f1..0000000 --- a/chrome/common/extensions/file_handler_info.cc +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright 2014 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#include "chrome/common/extensions/file_handler_info.h" - -namespace extensions { - -FileHandlerInfo::FileHandlerInfo() {} -FileHandlerInfo::~FileHandlerInfo() {} - -FileHandlersInfo::FileHandlersInfo() {} -FileHandlersInfo::~FileHandlersInfo() {} - -} // namespace extensions diff --git a/chrome/common/extensions/file_handler_info.h b/chrome/common/extensions/file_handler_info.h deleted file mode 100644 index 5905ecd..0000000 --- a/chrome/common/extensions/file_handler_info.h +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright 2014 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#ifndef CHROME_COMMON_EXTENSIONS_FILE_HANDLER_INFO_H_ -#define CHROME_COMMON_EXTENSIONS_FILE_HANDLER_INFO_H_ - -#include <set> -#include <string> -#include <vector> - -namespace extensions { - -struct FileHandlerInfo { - FileHandlerInfo(); - ~FileHandlerInfo(); - - std::string id; - std::string title; - - // File extensions associated with this handler. - std::set<std::string> extensions; - - // MIME types associated with this handler. - std::set<std::string> types; -}; - -struct FileHandlersInfo { - FileHandlersInfo(); - ~FileHandlersInfo(); - - std::vector<FileHandlerInfo> handlers; -}; - -} // namespace extensions - -#endif // CHROME_COMMON_EXTENSIONS_FILE_HANDLER_INFO_H_ diff --git a/extensions/common/common_manifest_handlers.cc b/extensions/common/common_manifest_handlers.cc index 2dc14f2..c92c746 100644 --- a/extensions/common/common_manifest_handlers.cc +++ b/extensions/common/common_manifest_handlers.cc @@ -7,6 +7,7 @@ #include "extensions/common/manifest_handler.h" #include "extensions/common/manifest_handlers/background_info.h" #include "extensions/common/manifest_handlers/csp_info.h" +#include "extensions/common/manifest_handlers/file_handler_info.h" #include "extensions/common/manifest_handlers/incognito_info.h" #include "extensions/common/manifest_handlers/kiosk_mode_info.h" #include "extensions/common/manifest_handlers/offline_enabled_info.h" @@ -22,6 +23,7 @@ void RegisterCommonManifestHandlers() { (new BackgroundManifestHandler)->Register(); (new CSPHandler(false))->Register(); (new CSPHandler(true))->Register(); + (new FileHandlersParser)->Register(); (new IncognitoHandler)->Register(); (new KioskModeHandler)->Register(); (new OfflineEnabledHandler)->Register(); diff --git a/chrome/common/extensions/api/file_handlers/file_handlers_parser.cc b/extensions/common/manifest_handlers/file_handler_info.cc index 742d505..126e409 100644 --- a/chrome/common/extensions/api/file_handlers/file_handlers_parser.cc +++ b/extensions/common/manifest_handlers/file_handler_info.cc @@ -1,8 +1,8 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// Copyright 2014 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#include "chrome/common/extensions/api/file_handlers/file_handlers_parser.h" +#include "extensions/common/manifest_handlers/file_handler_info.h" #include "base/memory/scoped_ptr.h" #include "base/strings/string_number_conversions.h" @@ -17,13 +17,18 @@ namespace extensions { namespace keys = manifest_keys; namespace errors = manifest_errors; +namespace { const int kMaxTypeAndExtensionHandlers = 200; +} + +FileHandlerInfo::FileHandlerInfo() {} +FileHandlerInfo::~FileHandlerInfo() {} FileHandlers::FileHandlers() {} FileHandlers::~FileHandlers() {} // static -const std::vector<FileHandlerInfo>* FileHandlers::GetFileHandlers( +const FileHandlersInfo* FileHandlers::GetFileHandlers( const Extension* extension) { FileHandlers* info = static_cast<FileHandlers*>( extension->GetManifestData(keys::kFileHandlers)); @@ -38,7 +43,7 @@ FileHandlersParser::~FileHandlersParser() { bool LoadFileHandler(const std::string& handler_id, const base::DictionaryValue& handler_info, - std::vector<FileHandlerInfo>* file_handlers, + FileHandlersInfo* file_handlers, base::string16* error) { DCHECK(error); FileHandlerInfo handler; @@ -61,8 +66,8 @@ bool LoadFileHandler(const std::string& handler_id, return false; } - if ((!mime_types || mime_types->GetSize() == 0) && - (!file_extensions || file_extensions->GetSize() == 0)) { + if ((!mime_types || mime_types->empty()) && + (!file_extensions || file_extensions->empty())) { *error = ErrorUtils::FormatErrorMessageUTF16( errors::kInvalidFileHandlerNoTypeOrExtension, handler_id); @@ -116,7 +121,8 @@ bool FileHandlersParser::Parse(Extension* extension, base::string16* error) { return false; } - for (base::DictionaryValue::Iterator iter(*all_handlers); !iter.IsAtEnd(); + for (base::DictionaryValue::Iterator iter(*all_handlers); + !iter.IsAtEnd(); iter.Advance()) { // A file handler entry is a title and a list of MIME types to handle. const base::DictionaryValue* handler = NULL; @@ -129,16 +135,15 @@ bool FileHandlersParser::Parse(Extension* extension, base::string16* error) { } } - int filterCount = 0; - for (std::vector<FileHandlerInfo>::iterator iter = - info->file_handlers.begin(); - iter < info->file_handlers.end(); + int filter_count = 0; + for (FileHandlersInfo::const_iterator iter = info->file_handlers.begin(); + iter != info->file_handlers.end(); iter++) { - filterCount += iter->types.size(); - filterCount += iter->extensions.size(); + filter_count += iter->types.size(); + filter_count += iter->extensions.size(); } - if (filterCount > kMaxTypeAndExtensionHandlers) { + if (filter_count > kMaxTypeAndExtensionHandlers) { *error = base::ASCIIToUTF16( errors::kInvalidFileHandlersTooManyTypesAndExtensions); return false; diff --git a/chrome/common/extensions/api/file_handlers/file_handlers_parser.h b/extensions/common/manifest_handlers/file_handler_info.h index 864a38f..57c6e7a 100644 --- a/chrome/common/extensions/api/file_handlers/file_handlers_parser.h +++ b/extensions/common/manifest_handlers/file_handler_info.h @@ -1,28 +1,45 @@ -// Copyright (c) 2012 The Chromium Authors. All rights reserved. +// Copyright 2014 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#ifndef CHROME_COMMON_EXTENSIONS_API_FILE_HANDLERS_FILE_HANDLERS_PARSER_H_ -#define CHROME_COMMON_EXTENSIONS_API_FILE_HANDLERS_FILE_HANDLERS_PARSER_H_ +#ifndef EXTENSIONS_COMMON_MANIFEST_HANDLERS_FILE_HANDLER_INFO_H_ +#define EXTENSIONS_COMMON_MANIFEST_HANDLERS_FILE_HANDLER_INFO_H_ #include <set> #include <string> #include <vector> -#include "chrome/common/extensions/file_handler_info.h" #include "extensions/common/extension.h" #include "extensions/common/manifest_handler.h" namespace extensions { +struct FileHandlerInfo { + FileHandlerInfo(); + ~FileHandlerInfo(); + + // The id of this handler. + std::string id; + + // The title of this handler. + std::string title; + + // File extensions associated with this handler. + std::set<std::string> extensions; + + // MIME types associated with this handler. + std::set<std::string> types; +}; + +typedef std::vector<FileHandlerInfo> FileHandlersInfo; + struct FileHandlers : public Extension::ManifestData { FileHandlers(); virtual ~FileHandlers(); - std::vector<FileHandlerInfo> file_handlers; + FileHandlersInfo file_handlers; - static const std::vector<FileHandlerInfo>* GetFileHandlers( - const Extension* extension); + static const FileHandlersInfo* GetFileHandlers(const Extension* extension); }; // Parses the "file_handlers" manifest key. @@ -41,4 +58,4 @@ class FileHandlersParser : public ManifestHandler { } // namespace extensions -#endif // CHROME_COMMON_EXTENSIONS_API_FILE_HANDLERS_FILE_HANDLERS_PARSER_H_ +#endif // EXTENSIONS_COMMON_MANIFEST_HANDLERS_FILE_HANDLER_INFO_H_ diff --git a/chrome/common/extensions/api/file_handlers/file_handlers_manifest_unittest.cc b/extensions/common/manifest_handlers/file_handler_manifest_unittest.cc index 5e0cd3d..2e08096 100644 --- a/chrome/common/extensions/api/file_handlers/file_handlers_manifest_unittest.cc +++ b/extensions/common/manifest_handlers/file_handler_manifest_unittest.cc @@ -1,19 +1,15 @@ -// Copyright 2013 The Chromium Authors. All rights reserved. +// Copyright 2014 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#include "chrome/common/extensions/api/file_handlers/file_handlers_parser.h" -#include "chrome/common/extensions/extension_constants.h" #include "chrome/common/extensions/manifest_tests/extension_manifest_test.h" -//#include "extensions/common/error_utils.h" #include "extensions/common/manifest_constants.h" +#include "extensions/common/manifest_handlers/file_handler_info.h" #include "testing/gtest/include/gtest/gtest.h" -namespace errors = extensions::manifest_errors; +namespace extensions { -using extensions::Extension; -using extensions::FileHandlers; -using extensions::FileHandlerInfo; +namespace errors = manifest_errors; class FileHandlersManifestTest : public ExtensionManifestTest { }; @@ -45,8 +41,7 @@ TEST_F(FileHandlersManifestTest, ValidFileHandlers) { LoadAndExpectSuccess("file_handlers_valid.json"); ASSERT_TRUE(extension.get()); - const std::vector<FileHandlerInfo>* handlers = - FileHandlers::GetFileHandlers(extension.get()); + const FileHandlersInfo* handlers = FileHandlers::GetFileHandlers(extension); ASSERT_TRUE(handlers != NULL); ASSERT_EQ(2U, handlers->size()); @@ -73,7 +68,8 @@ TEST_F(FileHandlersManifestTest, NotPlatformApp) { LoadAndExpectSuccess("file_handlers_invalid_not_app.json"); ASSERT_TRUE(extension.get()); - const std::vector<FileHandlerInfo>* handlers = - FileHandlers::GetFileHandlers(extension.get()); + const FileHandlersInfo* handlers = FileHandlers::GetFileHandlers(extension); ASSERT_TRUE(handlers == NULL); } + +} // namespace extensions diff --git a/extensions/extensions.gyp b/extensions/extensions.gyp index 8a2bf4c..7b43638 100644 --- a/extensions/extensions.gyp +++ b/extensions/extensions.gyp @@ -125,6 +125,8 @@ 'common/manifest_handlers/csp_info.h', 'common/manifest_handlers/externally_connectable.cc', 'common/manifest_handlers/externally_connectable.h', + 'common/manifest_handlers/file_handler_info.cc', + 'common/manifest_handlers/file_handler_info.h', 'common/manifest_handlers/icons_handler.cc', 'common/manifest_handlers/icons_handler.h', 'common/manifest_handlers/incognito_info.cc', |