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

Side by Side Diff: extensions/browser/script_executor.h

Issue 1628423002: Add frameId to chrome.tabs.executeScript/insertCSS (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@permissiondata-remove-process_id
Patch Set: Revert to wc->GetURL for chrome.tabs.update Created 4 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 #ifndef EXTENSIONS_BROWSER_SCRIPT_EXECUTOR_H_ 5 #ifndef EXTENSIONS_BROWSER_SCRIPT_EXECUTOR_H_
6 #define EXTENSIONS_BROWSER_SCRIPT_EXECUTOR_H_ 6 #define EXTENSIONS_BROWSER_SCRIPT_EXECUTOR_H_
7 7
8 #include "base/callback_forward.h" 8 #include "base/callback_forward.h"
9 #include "base/observer_list.h" 9 #include "base/observer_list.h"
10 #include "extensions/common/user_script.h" 10 #include "extensions/common/user_script.h"
(...skipping 26 matching lines...) Expand all
37 ~ScriptExecutor(); 37 ~ScriptExecutor();
38 38
39 // The type of script being injected. 39 // The type of script being injected.
40 enum ScriptType { 40 enum ScriptType {
41 JAVASCRIPT, 41 JAVASCRIPT,
42 CSS, 42 CSS,
43 }; 43 };
44 44
45 // The scope of the script injection across the frames. 45 // The scope of the script injection across the frames.
46 enum FrameScope { 46 enum FrameScope {
47 TOP_FRAME, 47 SINGLE_FRAME,
48 ALL_FRAMES, 48 ALL_FRAMES,
49 }; 49 };
50 50
51 // Whether to insert the script in about: frames when its origin matches 51 // Whether to insert the script in about: frames when its origin matches
52 // the extension's host permissions. 52 // the extension's host permissions.
53 enum MatchAboutBlank { 53 enum MatchAboutBlank {
54 DONT_MATCH_ABOUT_BLANK, 54 DONT_MATCH_ABOUT_BLANK,
55 MATCH_ABOUT_BLANK, 55 MATCH_ABOUT_BLANK,
56 }; 56 };
57 57
(...skipping 24 matching lines...) Expand all
82 // Executes a script. The arguments match ExtensionMsg_ExecuteCode_Params in 82 // Executes a script. The arguments match ExtensionMsg_ExecuteCode_Params in
83 // extension_messages.h (request_id is populated automatically). 83 // extension_messages.h (request_id is populated automatically).
84 // 84 //
85 // |callback| will always be called even if the IPC'd renderer is destroyed 85 // |callback| will always be called even if the IPC'd renderer is destroyed
86 // before a response is received (in this case the callback will be with a 86 // before a response is received (in this case the callback will be with a
87 // failure and appropriate error message). 87 // failure and appropriate error message).
88 void ExecuteScript(const HostID& host_id, 88 void ExecuteScript(const HostID& host_id,
89 ScriptType script_type, 89 ScriptType script_type,
90 const std::string& code, 90 const std::string& code,
91 FrameScope frame_scope, 91 FrameScope frame_scope,
92 int frame_id,
Devlin 2016/01/25 19:36:40 Man, this function makes me so sad. At the same t
robwu 2016/01/26 11:03:02 Done.
92 MatchAboutBlank match_about_blank, 93 MatchAboutBlank match_about_blank,
93 UserScript::RunLocation run_at, 94 UserScript::RunLocation run_at,
94 WorldType world_type, 95 WorldType world_type,
95 ProcessType process_type, 96 ProcessType process_type,
96 const GURL& webview_src, 97 const GURL& webview_src,
97 const GURL& file_url, 98 const GURL& file_url,
98 bool user_gesture, 99 bool user_gesture,
99 ResultType result_type, 100 ResultType result_type,
100 const ExecuteScriptCallback& callback); 101 const ExecuteScriptCallback& callback);
101 102
102 private: 103 private:
103 // The next value to use for request_id in ExtensionMsg_ExecuteCode_Params. 104 // The next value to use for request_id in ExtensionMsg_ExecuteCode_Params.
104 int next_request_id_; 105 int next_request_id_;
105 106
106 content::WebContents* web_contents_; 107 content::WebContents* web_contents_;
107 108
108 base::ObserverList<ScriptExecutionObserver>* script_observers_; 109 base::ObserverList<ScriptExecutionObserver>* script_observers_;
109 }; 110 };
110 111
111 } // namespace extensions 112 } // namespace extensions
112 113
113 #endif // EXTENSIONS_BROWSER_SCRIPT_EXECUTOR_H_ 114 #endif // EXTENSIONS_BROWSER_SCRIPT_EXECUTOR_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698