OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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/renderer/extensions/user_script_idle_scheduler.h" | 5 #include "chrome/renderer/extensions/user_script_idle_scheduler.h" |
6 | 6 |
7 #include "base/message_loop.h" | 7 #include "base/message_loop.h" |
8 #include "chrome/common/extensions/extension_error_utils.h" | 8 #include "chrome/common/extensions/extension_error_utils.h" |
9 #include "chrome/common/extensions/extension_messages.h" | 9 #include "chrome/common/extensions/extension_messages.h" |
10 #include "chrome/renderer/extensions/extension_dispatcher.h" | 10 #include "chrome/renderer/extensions/extension_dispatcher.h" |
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
138 } | 138 } |
139 | 139 |
140 WebScriptSource source(WebString::fromUTF8(params.code)); | 140 WebScriptSource source(WebString::fromUTF8(params.code)); |
141 if (params.in_main_world) { | 141 if (params.in_main_world) { |
142 frame->executeScript(source); | 142 frame->executeScript(source); |
143 } else { | 143 } else { |
144 std::vector<WebScriptSource> sources; | 144 std::vector<WebScriptSource> sources; |
145 sources.push_back(source); | 145 sources.push_back(source); |
146 UserScriptSlave::InsertInitExtensionCode(&sources, params.extension_id); | 146 UserScriptSlave::InsertInitExtensionCode(&sources, params.extension_id); |
147 frame->executeScriptInIsolatedWorld( | 147 frame->executeScriptInIsolatedWorld( |
148 UserScriptSlave::GetIsolatedWorldId(params.extension_id), | 148 UserScriptSlave::GetIsolatedWorldId(extension, frame), |
149 &sources.front(), sources.size(), EXTENSION_GROUP_CONTENT_SCRIPTS); | 149 &sources.front(), sources.size(), EXTENSION_GROUP_CONTENT_SCRIPTS); |
150 } | 150 } |
151 } else { | 151 } else { |
152 frame->insertStyleText(WebString::fromUTF8(params.code), WebString()); | 152 frame->insertStyleText(WebString::fromUTF8(params.code), WebString()); |
153 } | 153 } |
154 } | 154 } |
155 | 155 |
156 render_view->Send(new ExtensionHostMsg_ExecuteCodeFinished( | 156 render_view->Send(new ExtensionHostMsg_ExecuteCodeFinished( |
157 render_view->routing_id(), params.request_id, true, "")); | 157 render_view->routing_id(), params.request_id, true, "")); |
158 } | 158 } |
159 | 159 |
160 bool UserScriptIdleScheduler::GetAllChildFrames( | 160 bool UserScriptIdleScheduler::GetAllChildFrames( |
161 WebFrame* parent_frame, | 161 WebFrame* parent_frame, |
162 std::vector<WebFrame*>* frames_vector) const { | 162 std::vector<WebFrame*>* frames_vector) const { |
163 if (!parent_frame) | 163 if (!parent_frame) |
164 return false; | 164 return false; |
165 | 165 |
166 for (WebFrame* child_frame = parent_frame->firstChild(); child_frame; | 166 for (WebFrame* child_frame = parent_frame->firstChild(); child_frame; |
167 child_frame = child_frame->nextSibling()) { | 167 child_frame = child_frame->nextSibling()) { |
168 frames_vector->push_back(child_frame); | 168 frames_vector->push_back(child_frame); |
169 GetAllChildFrames(child_frame, frames_vector); | 169 GetAllChildFrames(child_frame, frames_vector); |
170 } | 170 } |
171 return true; | 171 return true; |
172 } | 172 } |
OLD | NEW |