diff options
Diffstat (limited to 'tests/cefclient/browser/default_client_handler.cc')
-rw-r--r-- | tests/cefclient/browser/default_client_handler.cc | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/tests/cefclient/browser/default_client_handler.cc b/tests/cefclient/browser/default_client_handler.cc new file mode 100644 index 00000000..d42f32a8 --- /dev/null +++ b/tests/cefclient/browser/default_client_handler.cc @@ -0,0 +1,60 @@ +// Copyright (c) 2023 The Chromium Embedded Framework 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 "tests/cefclient/browser/default_client_handler.h" + +#include "tests/cefclient/browser/test_runner.h" + +namespace client { + +DefaultClientHandler::DefaultClientHandler() { + resource_manager_ = new CefResourceManager(); + test_runner::SetupResourceManager(resource_manager_, nullptr); +} + +CefRefPtr<CefResourceRequestHandler> +DefaultClientHandler::GetResourceRequestHandler( + CefRefPtr<CefBrowser> browser, + CefRefPtr<CefFrame> frame, + CefRefPtr<CefRequest> request, + bool is_navigation, + bool is_download, + const CefString& request_initiator, + bool& disable_default_handling) { + CEF_REQUIRE_IO_THREAD(); + return this; +} + +cef_return_value_t DefaultClientHandler::OnBeforeResourceLoad( + CefRefPtr<CefBrowser> browser, + CefRefPtr<CefFrame> frame, + CefRefPtr<CefRequest> request, + CefRefPtr<CefCallback> callback) { + CEF_REQUIRE_IO_THREAD(); + + return resource_manager_->OnBeforeResourceLoad(browser, frame, request, + callback); +} + +CefRefPtr<CefResourceHandler> DefaultClientHandler::GetResourceHandler( + CefRefPtr<CefBrowser> browser, + CefRefPtr<CefFrame> frame, + CefRefPtr<CefRequest> request) { + CEF_REQUIRE_IO_THREAD(); + + return resource_manager_->GetResourceHandler(browser, frame, request); +} + +CefRefPtr<CefResponseFilter> DefaultClientHandler::GetResourceResponseFilter( + CefRefPtr<CefBrowser> browser, + CefRefPtr<CefFrame> frame, + CefRefPtr<CefRequest> request, + CefRefPtr<CefResponse> response) { + CEF_REQUIRE_IO_THREAD(); + + return test_runner::GetResourceResponseFilter(browser, frame, request, + response); +} + +} // namespace client |