blob: 8c901a67831a10a0b40c1e9044665a89d3ddf9e7 [file] [log] [blame]
// Copyright 2013 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "content/shell/browser/shell_resource_dispatcher_host_delegate.h"
#include "base/command_line.h"
#include "content/shell/browser/shell_login_dialog.h"
#include "content/shell/common/shell_switches.h"
namespace content {
ShellResourceDispatcherHostDelegate::ShellResourceDispatcherHostDelegate() {
}
ShellResourceDispatcherHostDelegate::~ShellResourceDispatcherHostDelegate() {
}
ResourceDispatcherHostLoginDelegate*
ShellResourceDispatcherHostDelegate::CreateLoginDelegate(
net::AuthChallengeInfo* auth_info, net::URLRequest* request) {
if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kDumpRenderTree))
return NULL;
if (!login_request_callback_.is_null()) {
login_request_callback_.Run();
login_request_callback_.Reset();
return NULL;
}
#if !defined(OS_MACOSX)
// TODO: implement ShellLoginDialog for other platforms, drop this #if
return NULL;
#else
return new ShellLoginDialog(auth_info, request);
#endif
}
} // namespace content