Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(179)

Side by Side Diff: chrome/browser/extensions/user_script_master.cc

Issue 11724002: Move ContentScripts out of Extension (Closed) Base URL: http://git.chromium.org/chromium/src.git@dc_unref_browser_action
Patch Set: Created 7 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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/extensions/user_script_master.h" 5 #include "chrome/browser/extensions/user_script_master.h"
6 6
7 #include <map> 7 #include <map>
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
11 #include "base/bind.h" 11 #include "base/bind.h"
12 #include "base/file_path.h" 12 #include "base/file_path.h"
13 #include "base/file_util.h" 13 #include "base/file_util.h"
14 #include "base/pickle.h" 14 #include "base/pickle.h"
15 #include "base/stl_util.h" 15 #include "base/stl_util.h"
16 #include "base/string_util.h" 16 #include "base/string_util.h"
17 #include "base/threading/thread.h" 17 #include "base/threading/thread.h"
18 #include "base/version.h" 18 #include "base/version.h"
19 #include "chrome/browser/extensions/extension_service.h" 19 #include "chrome/browser/extensions/extension_service.h"
20 #include "chrome/browser/extensions/extension_system.h" 20 #include "chrome/browser/extensions/extension_system.h"
21 #include "chrome/browser/profiles/profile.h" 21 #include "chrome/browser/profiles/profile.h"
22 #include "chrome/common/chrome_notification_types.h" 22 #include "chrome/common/chrome_notification_types.h"
23 #include "chrome/common/extensions/api/content_scripts/content_scripts_handler.h "
23 #include "chrome/common/extensions/extension.h" 24 #include "chrome/common/extensions/extension.h"
24 #include "chrome/common/extensions/extension_file_util.h" 25 #include "chrome/common/extensions/extension_file_util.h"
25 #include "chrome/common/extensions/extension_resource.h" 26 #include "chrome/common/extensions/extension_resource.h"
26 #include "chrome/common/extensions/extension_set.h" 27 #include "chrome/common/extensions/extension_set.h"
27 #include "chrome/common/extensions/message_bundle.h" 28 #include "chrome/common/extensions/message_bundle.h"
28 #include "content/public/browser/notification_service.h" 29 #include "content/public/browser/notification_service.h"
29 #include "content/public/browser/render_process_host.h" 30 #include "content/public/browser/render_process_host.h"
30 31
31 using content::BrowserThread; 32 using content::BrowserThread;
32 33
(...skipping 322 matching lines...) Expand 10 before | Expand all | Expand 10 after
355 break; 356 break;
356 case chrome::NOTIFICATION_EXTENSION_LOADED: { 357 case chrome::NOTIFICATION_EXTENSION_LOADED: {
357 // Add any content scripts inside the extension. 358 // Add any content scripts inside the extension.
358 const Extension* extension = 359 const Extension* extension =
359 content::Details<const Extension>(details).ptr(); 360 content::Details<const Extension>(details).ptr();
360 extensions_info_[extension->id()] = 361 extensions_info_[extension->id()] =
361 ExtensionSet::ExtensionPathAndDefaultLocale( 362 ExtensionSet::ExtensionPathAndDefaultLocale(
362 extension->path(), extension->default_locale()); 363 extension->path(), extension->default_locale());
363 bool incognito_enabled = extensions::ExtensionSystem::Get(profile_)-> 364 bool incognito_enabled = extensions::ExtensionSystem::Get(profile_)->
364 extension_service()->IsIncognitoEnabled(extension->id()); 365 extension_service()->IsIncognitoEnabled(extension->id());
365 const UserScriptList& scripts = extension->content_scripts(); 366 const UserScriptList& scripts =
367 ContentScriptsInfo::GetContentScripts(extension);
366 for (UserScriptList::const_iterator iter = scripts.begin(); 368 for (UserScriptList::const_iterator iter = scripts.begin();
367 iter != scripts.end(); ++iter) { 369 iter != scripts.end(); ++iter) {
368 user_scripts_.push_back(*iter); 370 user_scripts_.push_back(*iter);
369 user_scripts_.back().set_incognito_enabled(incognito_enabled); 371 user_scripts_.back().set_incognito_enabled(incognito_enabled);
370 } 372 }
371 if (extensions_service_ready_) 373 if (extensions_service_ready_)
372 should_start_load = true; 374 should_start_load = true;
373 break; 375 break;
374 } 376 }
375 case chrome::NOTIFICATION_EXTENSION_UNLOADED: { 377 case chrome::NOTIFICATION_EXTENSION_UNLOADED: {
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
437 439
438 base::SharedMemoryHandle handle_for_process; 440 base::SharedMemoryHandle handle_for_process;
439 if (!shared_memory->ShareToProcess(handle, &handle_for_process)) 441 if (!shared_memory->ShareToProcess(handle, &handle_for_process))
440 return; // This can legitimately fail if the renderer asserts at startup. 442 return; // This can legitimately fail if the renderer asserts at startup.
441 443
442 if (base::SharedMemory::IsHandleValid(handle_for_process)) 444 if (base::SharedMemory::IsHandleValid(handle_for_process))
443 process->Send(new ExtensionMsg_UpdateUserScripts(handle_for_process)); 445 process->Send(new ExtensionMsg_UpdateUserScripts(handle_for_process));
444 } 446 }
445 447
446 } // namespace extensions 448 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698