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

Side by Side Diff: chrome/browser/extensions/api/automation_internal/automation_internal_api.cc

Issue 1871713002: Convert //chrome/browser/extensions from scoped_ptr to std::unique_ptr (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase and fix header Created 4 years, 8 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 #include "chrome/browser/extensions/api/automation_internal/automation_internal_ api.h" 5 #include "chrome/browser/extensions/api/automation_internal/automation_internal_ api.h"
6 6
7 #include <stdint.h> 7 #include <stdint.h>
8 8
9 #include <vector> 9 #include <vector>
10 10
(...skipping 227 matching lines...) Expand 10 before | Expand all | Expand 10 after
238 238
239 DISALLOW_COPY_AND_ASSIGN(AutomationWebContentsObserver); 239 DISALLOW_COPY_AND_ASSIGN(AutomationWebContentsObserver);
240 }; 240 };
241 241
242 ExtensionFunction::ResponseAction 242 ExtensionFunction::ResponseAction
243 AutomationInternalEnableTabFunction::Run() { 243 AutomationInternalEnableTabFunction::Run() {
244 const AutomationInfo* automation_info = AutomationInfo::Get(extension()); 244 const AutomationInfo* automation_info = AutomationInfo::Get(extension());
245 EXTENSION_FUNCTION_VALIDATE(automation_info); 245 EXTENSION_FUNCTION_VALIDATE(automation_info);
246 246
247 using api::automation_internal::EnableTab::Params; 247 using api::automation_internal::EnableTab::Params;
248 scoped_ptr<Params> params(Params::Create(*args_)); 248 std::unique_ptr<Params> params(Params::Create(*args_));
249 EXTENSION_FUNCTION_VALIDATE(params.get()); 249 EXTENSION_FUNCTION_VALIDATE(params.get());
250 content::WebContents* contents = NULL; 250 content::WebContents* contents = NULL;
251 if (params->args.tab_id.get()) { 251 if (params->args.tab_id.get()) {
252 int tab_id = *params->args.tab_id; 252 int tab_id = *params->args.tab_id;
253 if (!ExtensionTabUtil::GetTabById(tab_id, 253 if (!ExtensionTabUtil::GetTabById(tab_id,
254 GetProfile(), 254 GetProfile(),
255 include_incognito(), 255 include_incognito(),
256 NULL, /* browser out param*/ 256 NULL, /* browser out param*/
257 NULL, /* tab_strip out param */ 257 NULL, /* tab_strip out param */
258 &contents, 258 &contents,
(...skipping 29 matching lines...) Expand all
288 ax_tree_id); 288 ax_tree_id);
289 289
290 return RespondNow(ArgumentList( 290 return RespondNow(ArgumentList(
291 api::automation_internal::EnableTab::Results::Create(ax_tree_id))); 291 api::automation_internal::EnableTab::Results::Create(ax_tree_id)));
292 } 292 }
293 293
294 ExtensionFunction::ResponseAction AutomationInternalEnableFrameFunction::Run() { 294 ExtensionFunction::ResponseAction AutomationInternalEnableFrameFunction::Run() {
295 // TODO(dtseng): Limited to desktop tree for now pending out of proc iframes. 295 // TODO(dtseng): Limited to desktop tree for now pending out of proc iframes.
296 using api::automation_internal::EnableFrame::Params; 296 using api::automation_internal::EnableFrame::Params;
297 297
298 scoped_ptr<Params> params(Params::Create(*args_)); 298 std::unique_ptr<Params> params(Params::Create(*args_));
299 EXTENSION_FUNCTION_VALIDATE(params.get()); 299 EXTENSION_FUNCTION_VALIDATE(params.get());
300 300
301 content::RenderFrameHost* rfh = 301 content::RenderFrameHost* rfh =
302 content::RenderFrameHost::FromAXTreeID(params->tree_id); 302 content::RenderFrameHost::FromAXTreeID(params->tree_id);
303 if (!rfh) 303 if (!rfh)
304 return RespondNow(Error("unable to load tab")); 304 return RespondNow(Error("unable to load tab"));
305 305
306 content::WebContents* contents = 306 content::WebContents* contents =
307 content::WebContents::FromRenderFrameHost(rfh); 307 content::WebContents::FromRenderFrameHost(rfh);
308 AutomationWebContentsObserver::CreateForWebContents(contents); 308 AutomationWebContentsObserver::CreateForWebContents(contents);
309 contents->EnableTreeOnlyAccessibilityMode(); 309 contents->EnableTreeOnlyAccessibilityMode();
310 310
311 return RespondNow(NoArguments()); 311 return RespondNow(NoArguments());
312 } 312 }
313 313
314 ExtensionFunction::ResponseAction 314 ExtensionFunction::ResponseAction
315 AutomationInternalPerformActionFunction::Run() { 315 AutomationInternalPerformActionFunction::Run() {
316 const AutomationInfo* automation_info = AutomationInfo::Get(extension()); 316 const AutomationInfo* automation_info = AutomationInfo::Get(extension());
317 EXTENSION_FUNCTION_VALIDATE(automation_info && automation_info->interact); 317 EXTENSION_FUNCTION_VALIDATE(automation_info && automation_info->interact);
318 318
319 using api::automation_internal::PerformAction::Params; 319 using api::automation_internal::PerformAction::Params;
320 scoped_ptr<Params> params(Params::Create(*args_)); 320 std::unique_ptr<Params> params(Params::Create(*args_));
321 EXTENSION_FUNCTION_VALIDATE(params.get()); 321 EXTENSION_FUNCTION_VALIDATE(params.get());
322 322
323 if (params->args.tree_id == kDesktopTreeID) { 323 if (params->args.tree_id == kDesktopTreeID) {
324 #if defined(USE_AURA) 324 #if defined(USE_AURA)
325 return RouteActionToAdapter(params.get(), 325 return RouteActionToAdapter(params.get(),
326 AutomationManagerAura::GetInstance()); 326 AutomationManagerAura::GetInstance());
327 #else 327 #else
328 NOTREACHED(); 328 NOTREACHED();
329 return RespondNow(Error("Unexpected action on desktop automation tree;" 329 return RespondNow(Error("Unexpected action on desktop automation tree;"
330 " platform does not support desktop automation")); 330 " platform does not support desktop automation"));
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
382 } 382 }
383 383
384 ExtensionFunction::ResponseAction 384 ExtensionFunction::ResponseAction
385 AutomationInternalEnableDesktopFunction::Run() { 385 AutomationInternalEnableDesktopFunction::Run() {
386 #if defined(USE_AURA) 386 #if defined(USE_AURA)
387 const AutomationInfo* automation_info = AutomationInfo::Get(extension()); 387 const AutomationInfo* automation_info = AutomationInfo::Get(extension());
388 if (!automation_info || !automation_info->desktop) 388 if (!automation_info || !automation_info->desktop)
389 return RespondNow(Error("desktop permission must be requested")); 389 return RespondNow(Error("desktop permission must be requested"));
390 390
391 using api::automation_internal::EnableDesktop::Params; 391 using api::automation_internal::EnableDesktop::Params;
392 scoped_ptr<Params> params(Params::Create(*args_)); 392 std::unique_ptr<Params> params(Params::Create(*args_));
393 EXTENSION_FUNCTION_VALIDATE(params.get()); 393 EXTENSION_FUNCTION_VALIDATE(params.get());
394 394
395 // This gets removed when the extension process dies. 395 // This gets removed when the extension process dies.
396 AutomationEventRouter::GetInstance()->RegisterListenerWithDesktopPermission( 396 AutomationEventRouter::GetInstance()->RegisterListenerWithDesktopPermission(
397 extension_id(), 397 extension_id(),
398 source_process_id(), 398 source_process_id(),
399 params->routing_id); 399 params->routing_id);
400 400
401 AutomationManagerAura::GetInstance()->Enable(browser_context()); 401 AutomationManagerAura::GetInstance()->Enable(browser_context());
402 return RespondNow(NoArguments()); 402 return RespondNow(NoArguments());
403 #else 403 #else
404 return RespondNow(Error("getDesktop is unsupported by this platform")); 404 return RespondNow(Error("getDesktop is unsupported by this platform"));
405 #endif // defined(USE_AURA) 405 #endif // defined(USE_AURA)
406 } 406 }
407 407
408 // static 408 // static
409 int AutomationInternalQuerySelectorFunction::query_request_id_counter_ = 0; 409 int AutomationInternalQuerySelectorFunction::query_request_id_counter_ = 0;
410 410
411 ExtensionFunction::ResponseAction 411 ExtensionFunction::ResponseAction
412 AutomationInternalQuerySelectorFunction::Run() { 412 AutomationInternalQuerySelectorFunction::Run() {
413 const AutomationInfo* automation_info = AutomationInfo::Get(extension()); 413 const AutomationInfo* automation_info = AutomationInfo::Get(extension());
414 EXTENSION_FUNCTION_VALIDATE(automation_info); 414 EXTENSION_FUNCTION_VALIDATE(automation_info);
415 415
416 using api::automation_internal::QuerySelector::Params; 416 using api::automation_internal::QuerySelector::Params;
417 scoped_ptr<Params> params(Params::Create(*args_)); 417 std::unique_ptr<Params> params(Params::Create(*args_));
418 EXTENSION_FUNCTION_VALIDATE(params.get()); 418 EXTENSION_FUNCTION_VALIDATE(params.get());
419 419
420 if (params->args.tree_id == kDesktopTreeID) { 420 if (params->args.tree_id == kDesktopTreeID) {
421 return RespondNow( 421 return RespondNow(
422 Error("domQuerySelector queries may not be used on the desktop.")); 422 Error("domQuerySelector queries may not be used on the desktop."));
423 } 423 }
424 content::RenderFrameHost* rfh = 424 content::RenderFrameHost* rfh =
425 content::RenderFrameHost::FromAXTreeID(params->args.tree_id); 425 content::RenderFrameHost::FromAXTreeID(params->args.tree_id);
426 if (!rfh) 426 if (!rfh)
427 return RespondNow(Error("domQuerySelector query sent on destroyed tree.")); 427 return RespondNow(Error("domQuerySelector query sent on destroyed tree."));
(...skipping 17 matching lines...) Expand all
445 int result_acc_obj_id) { 445 int result_acc_obj_id) {
446 if (!error.empty()) { 446 if (!error.empty()) {
447 Respond(Error(error)); 447 Respond(Error(error));
448 return; 448 return;
449 } 449 }
450 450
451 Respond(OneArgument(new base::FundamentalValue(result_acc_obj_id))); 451 Respond(OneArgument(new base::FundamentalValue(result_acc_obj_id)));
452 } 452 }
453 453
454 } // namespace extensions 454 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698