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 3 // found in the LICENSE file. 4 5 #include "content/shell/shell_resource_dispatcher_host_delegate.h" 6 7 #include "base/command_line.h" 8 #include "content/shell/common/shell_switches.h" 9 #include "content/shell/shell_login_dialog.h" 10 11 namespace content { 12 13 ShellResourceDispatcherHostDelegate::ShellResourceDispatcherHostDelegate() { 14 } 15 16 ShellResourceDispatcherHostDelegate::~ShellResourceDispatcherHostDelegate() { 17 } 18 19 bool ShellResourceDispatcherHostDelegate::AcceptAuthRequest( 20 net::URLRequest* request, 21 net::AuthChallengeInfo* auth_info) { 22 bool accept_auth_request = 23 !CommandLine::ForCurrentProcess()->HasSwitch(switches::kDumpRenderTree); 24 return accept_auth_request; 25 } 26 27 ResourceDispatcherHostLoginDelegate* 28 ShellResourceDispatcherHostDelegate::CreateLoginDelegate( 29 net::AuthChallengeInfo* auth_info, net::URLRequest* request) { 30 if (!login_request_callback_.is_null()) { 31 login_request_callback_.Run(); 32 login_request_callback_.Reset(); 33 return NULL; 34 } 35 36 #if !defined(OS_MACOSX) && !defined(TOOLKIT_GTK) 37 // TODO: implement ShellLoginDialog for other platforms, drop this #if 38 return NULL; 39 #else 40 return new ShellLoginDialog(auth_info, request); 41 #endif 42 } 43 44 } // namespace content 45