diff --git a/src/BUILD.gn b/src/BUILD.gn index 2c35c744f576c..42c59a4c5f587 --- a/src/BUILD.gn +++ b/src/BUILD.gn @@ -104,13 +104,12 @@ group("gn_all") { "//url:url_unittests", ] - deps += [ "//ohos_nweb:libnweb_adapter" ] - #ifdef OHOS_NWEB_EX if (defined(ohos_nweb_ex) && ohos_nweb_ex) { deps += [ "//ohos_browser_shell", "//ohos_nweb_ex/browser_service", + "//ohos_nweb_ex/test:ohos_nweb_ex_unittests", "//ohos_nweb_hap", ] } # endif // OHOS_NWEB_EX diff --git a/src/PRESUBMIT.py b/src/PRESUBMIT.py index 9e494489f8072..8b6873613163e --- a/src/PRESUBMIT.py +++ b/src/PRESUBMIT.py @@ -985,6 +985,19 @@ _BANNED_CPP_FUNCTIONS = ( r'^base[\\/]win[\\/]scoped_winrt_initializer\.cc$' ), ), + ( + r'\bchartorune\b', + ( + 'chartorune is not memory-safe, unless you can guarantee the input ', + 'string is always null-terminated. Otherwise, please use charntorune ', + 'from libphonenumber instead.' + ), + True, + [ + _THIRD_PARTY_EXCEPT_BLINK, + # Exceptions to this rule should have a fuzzer. + ], + ), ) # Format: Sequence of tuples containing: diff --git a/src/base/files/file_util_posix.cc b/src/base/files/file_util_posix.cc index 7e4b3cd4796f2..584d51b168eda --- a/src/base/files/file_util_posix.cc +++ b/src/base/files/file_util_posix.cc @@ -570,12 +570,6 @@ bool ExecutableExistsInPath(Environment* env, #if !BUILDFLAG(IS_APPLE) // This is implemented in file_util_mac.mm for Mac. bool GetTempDir(FilePath* path) { - const char* tmp = getenv("TMPDIR"); - if (tmp) { - *path = FilePath(tmp); - return true; - } - #if BUILDFLAG(IS_ANDROID) || BUILDFLAG(IS_OHOS) return PathService::Get(DIR_CACHE, path); #else diff --git a/src/base/files/memory_mapped_file.cc b/src/base/files/memory_mapped_file.cc index f1fbe30072846..6e466b9f3ff4b --- a/src/base/files/memory_mapped_file.cc +++ b/src/base/files/memory_mapped_file.cc @@ -28,7 +28,20 @@ bool MemoryMappedFile::Region::operator!=( } MemoryMappedFile::~MemoryMappedFile() { +#if BUILDFLAG(IS_OHOS) + if (!customizeData_) { + CloseHandles(); + return; + } + + if (data_) { + delete [] data_; + data_ = nullptr; + } + length_ = 0; +#else CloseHandles(); +#endif } #if !BUILDFLAG(IS_NACL) diff --git a/src/base/files/memory_mapped_file.h b/src/base/files/memory_mapped_file.h index 88536c5eb436f..2d96dfa52aaea --- a/src/base/files/memory_mapped_file.h +++ b/src/base/files/memory_mapped_file.h @@ -111,6 +111,17 @@ class BASE_EXPORT MemoryMappedFile { // Is file_ a valid file handle that points to an open, memory mapped file? bool IsValid() const; +#if BUILDFLAG(IS_OHOS) + void SetDataAndLength(std::unique_ptr &data, size_t length) { + if (IsValid() && !customizeData_) { + CloseHandles(); + } + customizeData_ = true; + data_ = data.release(); + length_ = length; + } +#endif + private: // Given the arbitrarily aligned memory region [start, size], returns the // boundaries of the region aligned to the granularity specified by the OS, @@ -140,6 +151,9 @@ class BASE_EXPORT MemoryMappedFile { File file_; uint8_t* data_; size_t length_; +#if BUILDFLAG(IS_OHOS) + bool customizeData_ = false; +#endif #if BUILDFLAG(IS_WIN) win::ScopedHandle file_mapping_; diff --git a/src/base/i18n/icu_util.cc b/src/base/i18n/icu_util.cc index b39ad6cc6441c..87283aef6e1f6 --- a/src/base/i18n/icu_util.cc +++ b/src/base/i18n/icu_util.cc @@ -57,6 +57,12 @@ #include "third_party/icu/source/i18n/unicode/timezone.h" #endif +#if BUILDFLAG(IS_OHOS) +#include "base/command_line.h" +#include "content/public/common/content_switches.h" +#include "ohos_adapter_helper.h" +#endif + namespace base { namespace i18n { @@ -265,6 +271,34 @@ int LoadIcuData(PlatformFile data_fd, return 0; } +#if BUILDFLAG(IS_OHOS) +const char kIcuDataFileNameHap[] = "resources/rawfile/icudtl.dat"; +int LoadIcuDataByHap(PlatformFile data_fd, + const MemoryMappedFile::Region& data_region, + std::unique_ptr* out_mapped_data_file, + UErrorCode* out_error_code) { + size_t length = 0; + std::unique_ptr data; + auto resourceInstance = OHOS::NWeb::OhosAdapterHelper::GetInstance().GetResourceAdapter(); + if (!resourceInstance->GetRawFileData(kIcuDataFileNameHap, length, data, true)) { + LOG(ERROR) << "Couldn't mmap icu data file by hap: " << kIcuDataFileNameHap; + return 1; + } + + *out_mapped_data_file = std::make_unique(); + (*out_error_code) = U_ZERO_ERROR; + InitializeExternalTimeZoneData(); + (*out_mapped_data_file)->SetDataAndLength(data, length); + LOG(INFO) << "icu data file length: " << length; + udata_setCommonData(const_cast((*out_mapped_data_file)->data()), out_error_code); + if (U_FAILURE(*out_error_code)) { + LOG(ERROR) << "Failed to initialize ICU with data file: " << u_errorName(*out_error_code); + return 3; + } + return 0; +} +#endif + bool InitializeICUWithFileDescriptorInternal( PlatformFile data_fd, const MemoryMappedFile::Region& data_region) { @@ -276,7 +310,15 @@ bool InitializeICUWithFileDescriptorInternal( std::unique_ptr mapped_file; UErrorCode err; +#if BUILDFLAG(IS_OHOS) + if (base::CommandLine::ForCurrentProcess()->HasSwitch(switches::kOhosHapPath)) { + g_debug_icu_load = LoadIcuDataByHap(data_fd, data_region, &mapped_file, &err); + } else { + g_debug_icu_load = LoadIcuData(data_fd, data_region, &mapped_file, &err); + } +#else g_debug_icu_load = LoadIcuData(data_fd, data_region, &mapped_file, &err); +#endif if (g_debug_icu_load == 1 || g_debug_icu_load == 2) { return false; } @@ -298,7 +340,7 @@ bool InitializeICUFromDataFile() { // cause any problems. LazyOpenIcuDataFile(); bool result = - InitializeICUWithFileDescriptorInternal(g_icudtl_pf, g_icudtl_region); + InitializeICUWithFileDescriptorInternal(g_icudtl_pf, g_icudtl_region); #if BUILDFLAG(IS_WIN) int debug_icu_load = g_debug_icu_load; diff --git a/src/base/logging.cc b/src/base/logging.cc index 0de6357094283..6f930c3dbc87d --- a/src/base/logging.cc +++ b/src/base/logging.cc @@ -146,7 +146,7 @@ namespace { VlogInfo* g_vlog_info = nullptr; VlogInfo* g_vlog_info_prev = nullptr; -const char* const log_severity_names[] = {"INFO", "WARNING", "ERROR", "FATAL"}; +const char* const log_severity_names[] = {"INFO", "WARNING", "ERROR", "FATAL", "DEBUG"}; static_assert(LOGGING_NUM_SEVERITIES == base::size(log_severity_names), "Incorrect number of log_severity_names"); @@ -850,6 +850,8 @@ LogMessage::~LogMessage() { case LOGGING_FATAL: priority = LogLevel::LOG_FATAL; break; + case LOGGING_DEBUG: + priority = LogLevel::LOG_DEBUG; } const char kOHOSLogTag[] = "chromium"; HiLogPrintOHOS(LOG_CORE, priority, 0xD004500, kOHOSLogTag, str_newline.c_str()); diff --git a/src/base/logging.h b/src/base/logging.h index a3ff92f0fd7df..83a8dc3517608 --- a/src/base/logging.h +++ b/src/base/logging.h @@ -359,7 +359,8 @@ constexpr LogSeverity LOGGING_INFO = 0; constexpr LogSeverity LOGGING_WARNING = 1; constexpr LogSeverity LOGGING_ERROR = 2; constexpr LogSeverity LOGGING_FATAL = 3; -constexpr LogSeverity LOGGING_NUM_SEVERITIES = 4; +constexpr LogSeverity LOGGING_DEBUG = 4; +constexpr LogSeverity LOGGING_NUM_SEVERITIES = 5; // LOGGING_DFATAL is LOGGING_FATAL in DCHECK-enabled builds, ERROR in normal // mode. @@ -373,6 +374,7 @@ constexpr LogSeverity LOGGING_DFATAL = LOGGING_ERROR; // from LOG_FOO to LOGGING_FOO. // TODO(thestig): Convert existing users to LOGGING_FOO and remove this block. constexpr LogSeverity LOG_VERBOSE = LOGGING_VERBOSE; +constexpr LogSeverity LOG_DEBUG = LOGGING_DEBUG; constexpr LogSeverity LOG_INFO = LOGGING_INFO; constexpr LogSeverity LOG_WARNING = LOGGING_WARNING; constexpr LogSeverity LOG_ERROR = LOGGING_ERROR; @@ -382,6 +384,9 @@ constexpr LogSeverity LOG_DFATAL = LOGGING_DFATAL; // A few definitions of macros that don't generate much code. These are used // by LOG() and LOG_IF, etc. Since these are used all over our code, it's // better to have compact code for these operations. +#define COMPACT_GOOGLE_LOG_EX_DEBUG(ClassName, ...) \ + ::logging::ClassName(__FILE__, __LINE__, ::logging::LOGGING_DEBUG, \ + ##__VA_ARGS__) #define COMPACT_GOOGLE_LOG_EX_INFO(ClassName, ...) \ ::logging::ClassName(__FILE__, __LINE__, ::logging::LOGGING_INFO, \ ##__VA_ARGS__) @@ -401,6 +406,7 @@ constexpr LogSeverity LOG_DFATAL = LOGGING_DFATAL; ::logging::ClassName(__FILE__, __LINE__, ::logging::LOGGING_DCHECK, \ ##__VA_ARGS__) +#define COMPACT_GOOGLE_LOG_DEBUG COMPACT_GOOGLE_LOG_EX_DEBUG(LogMessage) #define COMPACT_GOOGLE_LOG_INFO COMPACT_GOOGLE_LOG_EX_INFO(LogMessage) #define COMPACT_GOOGLE_LOG_WARNING COMPACT_GOOGLE_LOG_EX_WARNING(LogMessage) #define COMPACT_GOOGLE_LOG_ERROR COMPACT_GOOGLE_LOG_EX_ERROR(LogMessage) diff --git a/src/build/config/compiler/BUILD.gn b/src/build/config/compiler/BUILD.gn index da2e9864f99e3..28ee784acd77d --- a/src/build/config/compiler/BUILD.gn +++ b/src/build/config/compiler/BUILD.gn @@ -238,7 +238,7 @@ config("default_include_dirs") { # the executable they are loaded into, so they are unresolved at link-time. config("no_unresolved_symbols") { if (!using_sanitizer && - (is_linux || is_chromeos || is_android || is_fuchsia)) { + (is_linux || is_chromeos || is_android || is_fuchsia || is_ohos)) { ldflags = [ "-Wl,-z,defs", "-Wl,--as-needed", @@ -692,6 +692,10 @@ config("compiler") { # TODO(thakis): Check if '=0' (that is, number of cores, instead # of "all" which means number of hardware threads) is faster. ldflags += [ "-Wl,--thinlto-jobs=all" ] + if (is_ohos && !use_musl) { + ldflags -= [ "-Wl,--thinlto-jobs=all" ] + ldflags += [ "-Wl,--thinlto-jobs=8" ] + } if (is_mac) { ldflags += [ "-Wl,-cache_path_lto," + @@ -720,7 +724,7 @@ config("compiler") { } # TODO(https://crbug.com/1211155): investigate why this isn't effective on arm32. - if ((!is_android && !is_ohos) || current_cpu == "arm64") { + if (!is_android || current_cpu == "arm64") { cflags += [ "-fwhole-program-vtables" ] if (!is_win) { ldflags += [ "-fwhole-program-vtables" ] diff --git a/src/build/config/compiler/compiler.gni b/src/build/config/compiler/compiler.gni index 05a30aa62deb8..15fa15254b93c --- a/src/build/config/compiler/compiler.gni +++ b/src/build/config/compiler/compiler.gni @@ -74,7 +74,7 @@ declare_args() { use_thin_lto = is_cfi || (is_clang && is_official_build && chrome_pgo_phase != 1 && - (is_linux || is_win || is_mac || + (is_linux || is_win || is_mac || is_ohos || (is_android && target_os != "chromeos") || ((is_chromeos_ash || is_chromeos_lacros) && is_chromeos_device))) diff --git a/src/build/config/ohos/BUILD.gn b/src/build/config/ohos/BUILD.gn index 267a37869f9e7..5cb5cb6ccc4ad --- a/src/build/config/ohos/BUILD.gn +++ b/src/build/config/ohos/BUILD.gn @@ -259,7 +259,11 @@ config("runtime_library") { } config("lld_pack_relocations") { - ldflags = [ "-Wl,--pack-dyn-relocs=android" ] + if (use_musl) { + ldflags = [ "-Wl,--pack-dyn-relocs=relr" ] + } else { + ldflags = [ "-Wl,--pack-dyn-relocs=android" ] + } } # Used for instrumented build to generate the orderfile. diff --git a/src/cc/layers/scrollbar_layer_impl_base.cc b/src/cc/layers/scrollbar_layer_impl_base.cc index 8afe837d5255f..5c7ecb6ce32c6 --- a/src/cc/layers/scrollbar_layer_impl_base.cc +++ b/src/cc/layers/scrollbar_layer_impl_base.cc @@ -7,6 +7,7 @@ #include #include "base/cxx17_backports.h" +#include "base/logging.h" #include "cc/trees/effect_node.h" #include "cc/trees/layer_tree_impl.h" #include "cc/trees/scroll_node.h" diff --git a/src/cc/layers/scrollbar_layer_impl_base.h b/src/cc/layers/scrollbar_layer_impl_base.h index b0a5eb3dd8e69..a456eedd6182f --- a/src/cc/layers/scrollbar_layer_impl_base.h +++ b/src/cc/layers/scrollbar_layer_impl_base.h @@ -12,6 +12,10 @@ #include "cc/layers/layer.h" #include "cc/layers/layer_impl.h" #include "cc/trees/layer_tree_settings.h" +#if BUILDFLAG(IS_OHOS) +#include "display_manager_adapter.h" +#include "ohos_adapter_helper.h" +#endif namespace cc { @@ -115,6 +119,13 @@ class CC_EXPORT ScrollbarLayerImplBase : public LayerImpl { ScrollbarOrientation orientation_; bool is_left_side_vertical_scrollbar_; +#if BUILDFLAG(IS_OHOS) + std::unique_ptr display_manager_adapter_ = + nullptr; + float initial_layout_size_ratio_ = 2.0f; + void SetInitalLayoutRatio(); +#endif + // Difference between the clip layer's height and the visible viewport // height (which may differ in the presence of top-controls hiding). float vertical_adjust_; diff --git a/src/cef/BUILD.gn b/src/cef/BUILD.gn index 34b45df974a8a..4af75193cdca7 --- a/src/cef/BUILD.gn +++ b/src/cef/BUILD.gn @@ -249,7 +249,7 @@ if (is_linux) { # Set ENABLE_PRINTING=1 ENABLE_BASIC_PRINTING=1. assert(enable_basic_printing) -assert(enable_print_preview) +assert(enable_print_preview || is_ohos) # Enable support for Widevine CDM. assert(enable_widevine || is_ohos) @@ -259,6 +259,13 @@ if (is_clang) { assert(!clang_use_chrome_plugins) } +if (is_ohos) { + import("//pdf/features.gni") + declare_args() { + ohos_enable_cef_chrome_runtime = false + } +} + # # Local variables. # @@ -449,6 +456,8 @@ static_library("libcef_static") { "libcef/browser/browser_platform_delegate_create.cc", "libcef/browser/browser_util.cc", "libcef/browser/browser_util.h", + "libcef/browser/navigation_state_serializer.cc", + "libcef/browser/navigation_state_serializer.h", "libcef/browser/chrome/browser_delegate.h", "libcef/browser/chrome/browser_platform_delegate_chrome.cc", "libcef/browser/chrome/browser_platform_delegate_chrome.h", @@ -863,6 +872,75 @@ static_library("libcef_static") { "//third_party/crashpad/crashpad", ] + if (defined(ohos_enable_cef_chrome_runtime) && + !ohos_enable_cef_chrome_runtime) { + sources -= [ + "//chrome/app/chrome_main_delegate.cc", + "//chrome/app/chrome_main_delegate.h", + "libcef/browser/chrome/browser_delegate.h", + "libcef/browser/chrome/browser_platform_delegate_chrome.cc", + "libcef/browser/chrome/browser_platform_delegate_chrome.h", + "libcef/browser/chrome/chrome_browser_context.cc", + "libcef/browser/chrome/chrome_browser_context.h", + "libcef/browser/chrome/chrome_browser_delegate.cc", + "libcef/browser/chrome/chrome_browser_delegate.h", + "libcef/browser/chrome/chrome_browser_host_impl.cc", + "libcef/browser/chrome/chrome_browser_host_impl.h", + "libcef/browser/chrome/chrome_browser_main_extra_parts_cef.cc", + "libcef/browser/chrome/chrome_browser_main_extra_parts_cef.h", + "libcef/browser/chrome/chrome_content_browser_client_cef.cc", + "libcef/browser/chrome/chrome_content_browser_client_cef.h", + "libcef/browser/chrome/chrome_context_menu_handler.cc", + "libcef/browser/chrome/chrome_context_menu_handler.h", + "libcef/browser/chrome/extensions/chrome_mime_handler_view_guest_delegate_cef.cc", + "libcef/browser/chrome/extensions/chrome_mime_handler_view_guest_delegate_cef.h", + "libcef/browser/chrome_crash_reporter_client_stub.cc", + "libcef/browser/net/chrome_scheme_handler.cc", + "libcef/browser/net/chrome_scheme_handler.h", + "libcef/common/chrome/chrome_content_client_cef.cc", + "libcef/common/chrome/chrome_content_client_cef.h", + "libcef/common/chrome/chrome_main_delegate_cef.cc", + "libcef/common/chrome/chrome_main_delegate_cef.h", + "libcef/common/chrome/chrome_main_runner_delegate.cc", + "libcef/common/chrome/chrome_main_runner_delegate.h", + "libcef/renderer/chrome/chrome_content_renderer_client_cef.cc", + "libcef/renderer/chrome/chrome_content_renderer_client_cef.h", + ] + } + + if (is_ohos && !enable_print_preview) { + sources -= [ + "libcef/browser/printing/constrained_window_views_client.cc", + "libcef/browser/printing/constrained_window_views_client.h", + "libcef/browser/printing/print_view_manager.cc", + "libcef/browser/printing/print_view_manager.h", + "libcef/renderer/extensions/print_render_frame_helper_delegate.cc", + "libcef/renderer/extensions/print_render_frame_helper_delegate.h", + ] + } + + if (is_ohos && !enable_plugins) { + sources -= [ + "libcef/browser/web_plugin_impl.cc", + "libcef/browser/web_plugin_impl.h", + ] + } + + if (is_ohos && !ohos_enable_media_router) { + sources -= [ + "libcef/browser/media_router/media_route_impl.cc", + "libcef/browser/media_router/media_route_impl.h", + "libcef/browser/media_router/media_router_impl.cc", + "libcef/browser/media_router/media_router_impl.h", + "libcef/browser/media_router/media_router_manager.cc", + "libcef/browser/media_router/media_router_manager.h", + "libcef/browser/media_router/media_sink_impl.cc", + "libcef/browser/media_router/media_sink_impl.h", + "libcef/browser/media_router/media_source_impl.cc", + "libcef/browser/media_router/media_source_impl.h", + ] + } + public_deps = [ # Bring in feature flag defines. "//cef/libcef/features", @@ -974,6 +1052,42 @@ static_library("libcef_static") { "//v8", ] + if (defined(ohos_enable_cef_chrome_runtime) && + !ohos_enable_cef_chrome_runtime) { + deps -= [ + "//chrome:packed_resources", + "//chrome:resources", + "//chrome:strings", + "//chrome/services/printing:lib", + ] + } + + if (is_ohos && !enable_print_preview) { + deps -= [ + "//components/printing/browser", + "//components/printing/common", + "//components/printing/renderer", + "//components/services/print_compositor/public/cpp", + "//components/services/print_compositor/public/mojom", + ] + } + + if (is_ohos && !enable_plugins) { + deps -= [ "//components/plugins/renderer" ] + } + + if (is_ohos && !enable_pdf) { + deps -= [ + "//components/pdf/browser", + "//components/pdf/renderer", + "//pdf", + ] + } + + if (is_ohos && !ohos_enable_media_router) { + deps -= [ "//components/media_router/common/mojom:media_router" ] + } + if (defined(ohos_nweb_ex) && ohos_nweb_ex) { deps += [ "//ohos_nweb_ex/overrides/cef" ] } @@ -1113,7 +1227,7 @@ static_library("libcef_static") { deps += [ "//tools/v8_context_snapshot" ] } - if (toolkit_views || is_ohos) { + if (toolkit_views) { sources += [ "libcef/browser/chrome/views/browser_platform_delegate_chrome_views.cc", "libcef/browser/chrome/views/browser_platform_delegate_chrome_views.h", @@ -1330,6 +1444,58 @@ static_library("libcef_static") { "libcef_dll/views_stub.cc", ] } + + if (is_ohos) { + sources += [ + "libcef/browser/chrome/views/chrome_views_util.cc", + "libcef/browser/chrome/views/chrome_views_util.h", + "libcef/browser/views/view_util.cc", + "libcef/browser/views/view_util.h", + ] + + if (use_aura) { + sources += [ + "libcef/browser/native/browser_platform_delegate_native_aura.cc", + "libcef/browser/native/browser_platform_delegate_native_aura.h", + "libcef/browser/views/view_util_aura.cc", + + # Part of //ui/views:test_support which is testingonly. + "//ui/views/test/desktop_test_views_delegate_aura.cc", + "//ui/views/test/test_views_delegate_aura.cc", + + # Support for UI input events. + # Part of //ui/base:test_support which is testingonly. + "//ui/aura/test/ui_controls_factory_aura.h", + "//ui/base/test/ui_controls_aura.cc", + ] + + deps += [ + "//ui/aura", + "//ui/wm", + "//ui/wm/public", + ] + + if (is_ohos) { + sources += [ + # Support for UI input events. + # Part of //ui/aura:test_support which is testingonly. + "//ui/aura/test/aura_test_utils.cc", + "//ui/aura/test/aura_test_utils.h", + + # Part of //ui/events:test_support which is testingonly. + # "//ui/events/test/x11_event_waiter.cc", + # "//ui/events/test/x11_event_waiter.h", + ] + + deps += [ + "//ui/events", + "//ui/strings", + "//ui/views", + "//ui/views/controls/webview", + ] + } + } + } } # @@ -1519,7 +1685,27 @@ make_pack_header("resources") { "//ui/resources:webui_resources_grd", ] - if (toolkit_views || is_ohos) { + if (defined(ohos_enable_cef_chrome_runtime) && + !ohos_enable_cef_chrome_runtime) { + inputs -= [ + "$root_gen_dir/chrome/grit/browser_resources.h", + "$root_gen_dir/chrome/grit/common_resources.h", + "$root_gen_dir/chrome/grit/component_extension_resources.h", + "$root_gen_dir/chrome/grit/dev_ui_browser_resources.h", + "$root_gen_dir/chrome/grit/pdf_resources.h", + "$root_gen_dir/chrome/grit/renderer_resources.h", + ] + deps -= [ + "//chrome/browser:dev_ui_browser_resources", + "//chrome/browser:resources", + "//chrome/browser/resources:component_extension_resources", + "//chrome/browser/resources/pdf:resources", + "//chrome/common:resources", + "//chrome/renderer:resources", + ] + } + + if (toolkit_views) { inputs += [ "$root_gen_dir/ui/views/resources/grit/views_resources.h" ] deps += [ "//ui/views/resources:resources_grd" ] } @@ -1561,6 +1747,22 @@ make_pack_header("strings") { "//ui/strings:app_locale_settings", "//ui/strings:ui_strings", ] + + if (defined(ohos_enable_cef_chrome_runtime) && + !ohos_enable_cef_chrome_runtime) { + inputs -= [ + "$root_gen_dir/chrome/grit/chromium_strings.h", + "$root_gen_dir/chrome/grit/generated_resources.h", + "$root_gen_dir/chrome/grit/locale_settings.h", + "$root_gen_dir/chrome/grit/platform_locale_settings.h", + ] + deps -= [ + "//chrome/app:chromium_strings", + "//chrome/app:generated_resources", + "//chrome/app/resources:locale_settings", + "//chrome/app/resources:platform_locale_settings", + ] + } } # Generate cef_api_hash.h. @@ -1753,6 +1955,18 @@ if (is_mac) { ldflags = [ "-Wl,--version-script=" + rebase_path("//cef/libcef_dll/libcef.lst") ] } + + if (is_ohos) { + deps += [ "//ohos_nweb:nweb_sources" ] + if (defined(ohos_nweb_ex) && ohos_nweb_ex) { + deps += [ "//ohos_nweb_ex:nweb_ex" ] + } + configs += [ "//build/config/ohos:lld_pack_relocations" ] + if (!(defined(testonly) && testonly)) { + configs -= [ "//build/config/compiler:thinlto_optimize_default" ] + configs += [ "//build/config/compiler:thinlto_optimize_max" ] + } + } } } diff --git a/src/cef/cef_paths.gypi b/src/cef/cef_paths.gypi index 45331261cf845..b82cb6579f4e1 --- a/src/cef/cef_paths.gypi +++ b/src/cef/cef_paths.gypi @@ -1,4 +1,4 @@ -# Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +# 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. # @@ -8,7 +8,7 @@ # by hand. See the translator.README.txt file in the tools directory for # more information. # -# $hash=6509e4ab15ca15cfbe46f0e54693db2dcb590810$ +# $hash=c0184bbfa08d5b1a2168f3886235203d2fa5b758$ # { @@ -48,7 +48,6 @@ 'include/cef_keyboard_handler.h', 'include/cef_life_span_handler.h', 'include/cef_load_handler.h', - 'include/cef_media_router.h', 'include/cef_menu_model.h', 'include/cef_menu_model_delegate.h', 'include/cef_navigation_entry.h', @@ -86,7 +85,6 @@ 'include/cef_v8.h', 'include/cef_values.h', 'include/cef_waitable_event.h', - 'include/cef_web_plugin.h', 'include/cef_web_storage.h', 'include/cef_x509_certificate.h', 'include/cef_xml_reader.h', @@ -150,7 +148,6 @@ 'include/capi/cef_keyboard_handler_capi.h', 'include/capi/cef_life_span_handler_capi.h', 'include/capi/cef_load_handler_capi.h', - 'include/capi/cef_media_router_capi.h', 'include/capi/cef_menu_model_capi.h', 'include/capi/cef_menu_model_delegate_capi.h', 'include/capi/cef_navigation_entry_capi.h', @@ -188,7 +185,6 @@ 'include/capi/cef_v8_capi.h', 'include/capi/cef_values_capi.h', 'include/capi/cef_waitable_event_capi.h', - 'include/capi/cef_web_plugin_capi.h', 'include/capi/cef_web_storage_capi.h', 'include/capi/cef_x509_certificate_capi.h', 'include/capi/cef_xml_reader_capi.h', @@ -348,20 +344,6 @@ 'libcef_dll/cpptoc/list_value_cpptoc.h', 'libcef_dll/ctocpp/load_handler_ctocpp.cc', 'libcef_dll/ctocpp/load_handler_ctocpp.h', - 'libcef_dll/ctocpp/media_observer_ctocpp.cc', - 'libcef_dll/ctocpp/media_observer_ctocpp.h', - 'libcef_dll/cpptoc/media_route_cpptoc.cc', - 'libcef_dll/cpptoc/media_route_cpptoc.h', - 'libcef_dll/ctocpp/media_route_create_callback_ctocpp.cc', - 'libcef_dll/ctocpp/media_route_create_callback_ctocpp.h', - 'libcef_dll/cpptoc/media_router_cpptoc.cc', - 'libcef_dll/cpptoc/media_router_cpptoc.h', - 'libcef_dll/cpptoc/media_sink_cpptoc.cc', - 'libcef_dll/cpptoc/media_sink_cpptoc.h', - 'libcef_dll/ctocpp/media_sink_device_info_callback_ctocpp.cc', - 'libcef_dll/ctocpp/media_sink_device_info_callback_ctocpp.h', - 'libcef_dll/cpptoc/media_source_cpptoc.cc', - 'libcef_dll/cpptoc/media_source_cpptoc.h', 'libcef_dll/cpptoc/views/menu_button_cpptoc.cc', 'libcef_dll/cpptoc/views/menu_button_cpptoc.h', 'libcef_dll/ctocpp/views/menu_button_delegate_ctocpp.cc', @@ -452,6 +434,8 @@ 'libcef_dll/cpptoc/views/scroll_view_cpptoc.h', 'libcef_dll/cpptoc/select_client_certificate_callback_cpptoc.cc', 'libcef_dll/cpptoc/select_client_certificate_callback_cpptoc.h', + 'libcef_dll/cpptoc/select_popup_callback_cpptoc.cc', + 'libcef_dll/cpptoc/select_popup_callback_cpptoc.h', 'libcef_dll/cpptoc/server_cpptoc.cc', 'libcef_dll/cpptoc/server_cpptoc.h', 'libcef_dll/ctocpp/server_handler_ctocpp.cc', @@ -528,12 +512,8 @@ 'libcef_dll/ctocpp/views/view_delegate_ctocpp.h', 'libcef_dll/cpptoc/waitable_event_cpptoc.cc', 'libcef_dll/cpptoc/waitable_event_cpptoc.h', - 'libcef_dll/cpptoc/web_plugin_info_cpptoc.cc', - 'libcef_dll/cpptoc/web_plugin_info_cpptoc.h', - 'libcef_dll/ctocpp/web_plugin_info_visitor_ctocpp.cc', - 'libcef_dll/ctocpp/web_plugin_info_visitor_ctocpp.h', - 'libcef_dll/ctocpp/web_plugin_unstable_callback_ctocpp.cc', - 'libcef_dll/ctocpp/web_plugin_unstable_callback_ctocpp.h', + 'libcef_dll/ctocpp/web_message_receiver_ctocpp.cc', + 'libcef_dll/ctocpp/web_message_receiver_ctocpp.h', 'libcef_dll/cpptoc/web_storage_cpptoc.cc', 'libcef_dll/cpptoc/web_storage_cpptoc.h', 'libcef_dll/cpptoc/views/window_cpptoc.cc', @@ -682,20 +662,6 @@ 'libcef_dll/ctocpp/list_value_ctocpp.h', 'libcef_dll/cpptoc/load_handler_cpptoc.cc', 'libcef_dll/cpptoc/load_handler_cpptoc.h', - 'libcef_dll/cpptoc/media_observer_cpptoc.cc', - 'libcef_dll/cpptoc/media_observer_cpptoc.h', - 'libcef_dll/ctocpp/media_route_ctocpp.cc', - 'libcef_dll/ctocpp/media_route_ctocpp.h', - 'libcef_dll/cpptoc/media_route_create_callback_cpptoc.cc', - 'libcef_dll/cpptoc/media_route_create_callback_cpptoc.h', - 'libcef_dll/ctocpp/media_router_ctocpp.cc', - 'libcef_dll/ctocpp/media_router_ctocpp.h', - 'libcef_dll/ctocpp/media_sink_ctocpp.cc', - 'libcef_dll/ctocpp/media_sink_ctocpp.h', - 'libcef_dll/cpptoc/media_sink_device_info_callback_cpptoc.cc', - 'libcef_dll/cpptoc/media_sink_device_info_callback_cpptoc.h', - 'libcef_dll/ctocpp/media_source_ctocpp.cc', - 'libcef_dll/ctocpp/media_source_ctocpp.h', 'libcef_dll/ctocpp/views/menu_button_ctocpp.cc', 'libcef_dll/ctocpp/views/menu_button_ctocpp.h', 'libcef_dll/cpptoc/views/menu_button_delegate_cpptoc.cc', @@ -786,6 +752,8 @@ 'libcef_dll/ctocpp/views/scroll_view_ctocpp.h', 'libcef_dll/ctocpp/select_client_certificate_callback_ctocpp.cc', 'libcef_dll/ctocpp/select_client_certificate_callback_ctocpp.h', + 'libcef_dll/ctocpp/select_popup_callback_ctocpp.cc', + 'libcef_dll/ctocpp/select_popup_callback_ctocpp.h', 'libcef_dll/ctocpp/server_ctocpp.cc', 'libcef_dll/ctocpp/server_ctocpp.h', 'libcef_dll/cpptoc/server_handler_cpptoc.cc', @@ -862,12 +830,8 @@ 'libcef_dll/cpptoc/views/view_delegate_cpptoc.h', 'libcef_dll/ctocpp/waitable_event_ctocpp.cc', 'libcef_dll/ctocpp/waitable_event_ctocpp.h', - 'libcef_dll/ctocpp/web_plugin_info_ctocpp.cc', - 'libcef_dll/ctocpp/web_plugin_info_ctocpp.h', - 'libcef_dll/cpptoc/web_plugin_info_visitor_cpptoc.cc', - 'libcef_dll/cpptoc/web_plugin_info_visitor_cpptoc.h', - 'libcef_dll/cpptoc/web_plugin_unstable_callback_cpptoc.cc', - 'libcef_dll/cpptoc/web_plugin_unstable_callback_cpptoc.h', + 'libcef_dll/cpptoc/web_message_receiver_cpptoc.cc', + 'libcef_dll/cpptoc/web_message_receiver_cpptoc.h', 'libcef_dll/ctocpp/web_storage_ctocpp.cc', 'libcef_dll/ctocpp/web_storage_ctocpp.h', 'libcef_dll/ctocpp/views/window_ctocpp.cc', diff --git a/src/cef/include/capi/cef_accessibility_handler_capi.h b/src/cef/include/capi/cef_accessibility_handler_capi.h index cafa9a27d3c12..40b5a26b2c9cf --- a/src/cef/include/capi/cef_accessibility_handler_capi.h +++ b/src/cef/include/capi/cef_accessibility_handler_capi.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 Marshall A. Greenblatt. All rights reserved. +// Copyright (c) 2023 Marshall A. Greenblatt. All rights reserved. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are @@ -33,7 +33,7 @@ // by hand. See the translator.README.txt file in the tools directory for // more information. // -// $hash=306e44d49ab6198a0fa1bcea50e8a25ee18672be$ +// $hash=5dc54f9c45e2a1df857f114a11c97509da95db34$ // #ifndef CEF_INCLUDE_CAPI_CEF_ACCESSIBILITY_HANDLER_CAPI_H_ diff --git a/src/cef/include/capi/cef_app_capi.h b/src/cef/include/capi/cef_app_capi.h index 4554a25dc0104..f5418cdfd9752 --- a/src/cef/include/capi/cef_app_capi.h +++ b/src/cef/include/capi/cef_app_capi.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 Marshall A. Greenblatt. All rights reserved. +// Copyright (c) 2023 Marshall A. Greenblatt. All rights reserved. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are @@ -33,7 +33,7 @@ // by hand. See the translator.README.txt file in the tools directory for // more information. // -// $hash=adfba3dd6479b96a95639c13ee1e07bed7b335d0$ +// $hash=7713ef16c0c137b67ad926fafe2dfae35d187b48$ // #ifndef CEF_INCLUDE_CAPI_CEF_APP_CAPI_H_ diff --git a/src/cef/include/capi/cef_audio_handler_capi.h b/src/cef/include/capi/cef_audio_handler_capi.h index ffb9ff0b18de4..11d69d36c5bd1 --- a/src/cef/include/capi/cef_audio_handler_capi.h +++ b/src/cef/include/capi/cef_audio_handler_capi.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 Marshall A. Greenblatt. All rights reserved. +// Copyright (c) 2023 Marshall A. Greenblatt. All rights reserved. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are @@ -33,7 +33,7 @@ // by hand. See the translator.README.txt file in the tools directory for // more information. // -// $hash=fd8d34089842ee8f8490ef1828c3091d12052e28$ +// $hash=dca41618f6b4b8c5623912b0637918ab10c61846$ // #ifndef CEF_INCLUDE_CAPI_CEF_AUDIO_HANDLER_CAPI_H_ diff --git a/src/cef/include/capi/cef_auth_callback_capi.h b/src/cef/include/capi/cef_auth_callback_capi.h index fd06fe2312988..97ed88afd31da --- a/src/cef/include/capi/cef_auth_callback_capi.h +++ b/src/cef/include/capi/cef_auth_callback_capi.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 Marshall A. Greenblatt. All rights reserved. +// Copyright (c) 2023 Marshall A. Greenblatt. All rights reserved. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are @@ -33,7 +33,7 @@ // by hand. See the translator.README.txt file in the tools directory for // more information. // -// $hash=0938c1802b077b2b17708c6a8ee305984e079d64$ +// $hash=5b63adedf123da2990eef1445830f221e557ce95$ // #ifndef CEF_INCLUDE_CAPI_CEF_AUTH_CALLBACK_CAPI_H_ diff --git a/src/cef/include/capi/cef_browser_capi.h b/src/cef/include/capi/cef_browser_capi.h index 0f5e4026dbe05..d0d087ab0df9b --- a/src/cef/include/capi/cef_browser_capi.h +++ b/src/cef/include/capi/cef_browser_capi.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 Marshall A. Greenblatt. All rights reserved. +// Copyright (c) 2023 Marshall A. Greenblatt. All rights reserved. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are @@ -33,7 +33,7 @@ // by hand. See the translator.README.txt file in the tools directory for // more information. // -// $hash=e13b741eb5cb983fde79d62937d9eb8a55dd6ebb$ +// $hash=097fc69d7b712dde294d45394bc0eff518a34689$ // #ifndef CEF_INCLUDE_CAPI_CEF_BROWSER_CAPI_H_ @@ -59,6 +59,7 @@ struct _cef_browser_host_t; struct _cef_client_t; struct _cef_java_script_result_callback_t; struct _cef_store_web_archive_result_callback_t; +struct _cef_web_message_receiver_t; /// // Structure used to represent a browser. When used in the browser process the @@ -864,7 +865,7 @@ typedef struct _cef_browser_host_t { /// void(CEF_CALLBACK* post_port_message)(struct _cef_browser_host_t* self, cef_string_t* port_handle, - cef_string_t* data); + struct _cef_value_t* message); /// // Set the callback of the port. @@ -872,7 +873,7 @@ typedef struct _cef_browser_host_t { void(CEF_CALLBACK* set_port_message_callback)( struct _cef_browser_host_t* self, cef_string_t* port_handle, - struct _cef_java_script_result_callback_t* callback); + struct _cef_web_message_receiver_t* callback); /// // Gets the latest hitdata @@ -1195,6 +1196,65 @@ typedef struct _cef_browser_host_t { /// void(CEF_CALLBACK* remove_cache)(struct _cef_browser_host_t* self, int include_disk_files); + + /// + // Scroll page up or down + /// + void(CEF_CALLBACK* scroll_page_up_down)(struct _cef_browser_host_t* self, + int is_up, + int is_half, + float view_height); + + /// + // Get web history state + /// + struct _cef_binary_value_t*(CEF_CALLBACK* get_web_state)( + struct _cef_browser_host_t* self); + + /// + // Restore web history state + /// + int(CEF_CALLBACK* restore_web_state)(struct _cef_browser_host_t* self, + struct _cef_binary_value_t* state); + + /// + // Scroll to the position. + /// + void(CEF_CALLBACK* scroll_to)(struct _cef_browser_host_t* self, + float x, + float y); + + /// + // Scroll by the delta distance. + /// + void(CEF_CALLBACK* scroll_by)(struct _cef_browser_host_t* self, + float delta_x, + float delta_y); + + /// + // Slide Scroll by the speed. + /// + void(CEF_CALLBACK* slide_scroll)(struct _cef_browser_host_t* self, + float vx, + float vy); + + /// + // Set whether webview can access files + /// + void(CEF_CALLBACK* set_file_access)(struct _cef_browser_host_t* self, + int falg); + + /// + // Set whether webview can access network + /// + void(CEF_CALLBACK* set_block_network)(struct _cef_browser_host_t* self, + int falg); + + /// + // Set the cache mode of webview + /// + void(CEF_CALLBACK* set_cache_mode)(struct _cef_browser_host_t* self, + int falg); } cef_browser_host_t; /// @@ -1269,6 +1329,23 @@ typedef struct _cef_store_web_archive_result_callback_t { const cef_string_t* result); } cef_store_web_archive_result_callback_t; +/// +// Structure to implement to be notified of asynchronous web message channel. +/// +typedef struct _cef_web_message_receiver_t { + /// + // Base structure. + /// + cef_base_ref_counted_t base; + + /// + // Method that will be called upon |PostPortMessage|. |message| will be sent + // to another end of web message channel. + /// + void(CEF_CALLBACK* on_message)(struct _cef_web_message_receiver_t* self, + struct _cef_value_t* message); +} cef_web_message_receiver_t; + #ifdef __cplusplus } #endif diff --git a/src/cef/include/capi/cef_browser_process_handler_capi.h b/src/cef/include/capi/cef_browser_process_handler_capi.h index 2a3dc178e7353..a53e677b9be24 --- a/src/cef/include/capi/cef_browser_process_handler_capi.h +++ b/src/cef/include/capi/cef_browser_process_handler_capi.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 Marshall A. Greenblatt. All rights reserved. +// Copyright (c) 2023 Marshall A. Greenblatt. All rights reserved. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are @@ -33,7 +33,7 @@ // by hand. See the translator.README.txt file in the tools directory for // more information. // -// $hash=8c97f9b58c642c144cc37824ad820192640307cb$ +// $hash=e56e9d7bc7bd7d42f768a845cb3dc8ead6475fcd$ // #ifndef CEF_INCLUDE_CAPI_CEF_BROWSER_PROCESS_HANDLER_CAPI_H_ diff --git a/src/cef/include/capi/cef_callback_capi.h b/src/cef/include/capi/cef_callback_capi.h index 481e45266351a..05353af3423ee --- a/src/cef/include/capi/cef_callback_capi.h +++ b/src/cef/include/capi/cef_callback_capi.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 Marshall A. Greenblatt. All rights reserved. +// Copyright (c) 2023 Marshall A. Greenblatt. All rights reserved. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are @@ -33,7 +33,7 @@ // by hand. See the translator.README.txt file in the tools directory for // more information. // -// $hash=6dabadb8090f82aa929beda6f4724bac4cd17020$ +// $hash=a48ae6711d03e12ddfe94aa3b54a46fbd41bd179$ // #ifndef CEF_INCLUDE_CAPI_CEF_CALLBACK_CAPI_H_ diff --git a/src/cef/include/capi/cef_client_capi.h b/src/cef/include/capi/cef_client_capi.h index ce800661252b7..606e22de72f37 --- a/src/cef/include/capi/cef_client_capi.h +++ b/src/cef/include/capi/cef_client_capi.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 Marshall A. Greenblatt. All rights reserved. +// Copyright (c) 2023 Marshall A. Greenblatt. All rights reserved. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are @@ -33,7 +33,7 @@ // by hand. See the translator.README.txt file in the tools directory for // more information. // -// $hash=d69368574610ae29c8b17bf71174c237fb01ca28$ +// $hash=100836d9c768fb63da4c355cb0571e34d0c6a8dd$ // #ifndef CEF_INCLUDE_CAPI_CEF_CLIENT_CAPI_H_ @@ -76,133 +76,137 @@ typedef struct _cef_client_t { /// // Return the handler for audio rendering events. /// - struct _cef_audio_handler_t *(CEF_CALLBACK *get_audio_handler)( - struct _cef_client_t *self); + struct _cef_audio_handler_t*(CEF_CALLBACK* get_audio_handler)( + struct _cef_client_t* self); /// // Return the handler for context menus. If no handler is provided the default // implementation will be used. /// - struct _cef_context_menu_handler_t *(CEF_CALLBACK *get_context_menu_handler)( - struct _cef_client_t *self); + struct _cef_context_menu_handler_t*(CEF_CALLBACK* get_context_menu_handler)( + struct _cef_client_t* self); /// // Return the handler for dialogs. If no handler is provided the default // implementation will be used. /// - struct _cef_dialog_handler_t *(CEF_CALLBACK *get_dialog_handler)( - struct _cef_client_t *self); + struct _cef_dialog_handler_t*(CEF_CALLBACK* get_dialog_handler)( + struct _cef_client_t* self); /// // Return the handler for browser display state events. /// - struct _cef_display_handler_t *(CEF_CALLBACK *get_display_handler)( - struct _cef_client_t *self); + struct _cef_display_handler_t*(CEF_CALLBACK* get_display_handler)( + struct _cef_client_t* self); /// // Return the handler for download events. If no handler is returned downloads // will not be allowed. /// - struct _cef_download_handler_t *(CEF_CALLBACK *get_download_handler)( - struct _cef_client_t *self); + struct _cef_download_handler_t*(CEF_CALLBACK* get_download_handler)( + struct _cef_client_t* self); /// // Return the handler for drag events. /// - struct _cef_drag_handler_t *(CEF_CALLBACK *get_drag_handler)( - struct _cef_client_t *self); + struct _cef_drag_handler_t*(CEF_CALLBACK* get_drag_handler)( + struct _cef_client_t* self); /// // Return the handler for find result events. /// - struct _cef_find_handler_t *(CEF_CALLBACK *get_find_handler)( - struct _cef_client_t *self); + struct _cef_find_handler_t*(CEF_CALLBACK* get_find_handler)( + struct _cef_client_t* self); /// // Return the handler for focus events. /// - struct _cef_focus_handler_t *(CEF_CALLBACK *get_focus_handler)( - struct _cef_client_t *self); + struct _cef_focus_handler_t*(CEF_CALLBACK* get_focus_handler)( + struct _cef_client_t* self); /// // Return the handler for events related to cef_frame_t lifespan. This // function will be called once during cef_browser_t creation and the result // will be cached for performance reasons. /// - struct _cef_frame_handler_t *(CEF_CALLBACK *get_frame_handler)( - struct _cef_client_t *self); + struct _cef_frame_handler_t*(CEF_CALLBACK* get_frame_handler)( + struct _cef_client_t* self); /// // Return the handler for JavaScript dialogs. If no handler is provided the // default implementation will be used. /// - struct _cef_jsdialog_handler_t *(CEF_CALLBACK *get_jsdialog_handler)( - struct _cef_client_t *self); + struct _cef_jsdialog_handler_t*(CEF_CALLBACK* get_jsdialog_handler)( + struct _cef_client_t* self); /// // Return the handler for keyboard events. /// - struct _cef_keyboard_handler_t *(CEF_CALLBACK *get_keyboard_handler)( - struct _cef_client_t *self); + struct _cef_keyboard_handler_t*(CEF_CALLBACK* get_keyboard_handler)( + struct _cef_client_t* self); /// // Return the handler for browser life span events. /// - struct _cef_life_span_handler_t *(CEF_CALLBACK *get_life_span_handler)( - struct _cef_client_t *self); + struct _cef_life_span_handler_t*(CEF_CALLBACK* get_life_span_handler)( + struct _cef_client_t* self); /// // Return the handler for browser load status events. /// - struct _cef_load_handler_t *(CEF_CALLBACK *get_load_handler)( - struct _cef_client_t *self); + struct _cef_load_handler_t*(CEF_CALLBACK* get_load_handler)( + struct _cef_client_t* self); /// // Return the handler for printing on Linux. If a print handler is not // provided then printing will not be supported on the Linux platform. /// - struct _cef_print_handler_t *(CEF_CALLBACK *get_print_handler)( - struct _cef_client_t *self); + struct _cef_print_handler_t*(CEF_CALLBACK* get_print_handler)( + struct _cef_client_t* self); /// // Return the handler for off-screen rendering events. /// - struct _cef_render_handler_t *(CEF_CALLBACK *get_render_handler)( - struct _cef_client_t *self); + struct _cef_render_handler_t*(CEF_CALLBACK* get_render_handler)( + struct _cef_client_t* self); /// // Return the handler for browser request events. /// - struct _cef_request_handler_t *(CEF_CALLBACK *get_request_handler)( - struct _cef_client_t *self); + struct _cef_request_handler_t*(CEF_CALLBACK* get_request_handler)( + struct _cef_client_t* self); /// // Return the handler for browser geolocation permission request events. /// - struct _cef_permission_request_t *(CEF_CALLBACK *get_permission_request)( - struct _cef_client_t *self); + struct _cef_permission_request_t*(CEF_CALLBACK* get_permission_request)( + struct _cef_client_t* self); /// // Called when a new message is received from a different process. Return true // (1) if the message was handled or false (0) otherwise. It is safe to keep // a reference to |message| outside of this callback. /// - int(CEF_CALLBACK *on_process_message_received)( - struct _cef_client_t *self, struct _cef_browser_t *browser, - struct _cef_frame_t *frame, cef_process_id_t source_process, - struct _cef_process_message_t *message); + int(CEF_CALLBACK* on_process_message_received)( + struct _cef_client_t* self, + struct _cef_browser_t* browser, + struct _cef_frame_t* frame, + cef_process_id_t source_process, + struct _cef_process_message_t* message); /// // Returns the list of arguments NotifyJavaScriptResult. /// - int(CEF_CALLBACK *notify_java_script_result)( - struct _cef_client_t *self, struct _cef_list_value_t *args, - const cef_string_t *method, const cef_string_t *object_name, - struct _cef_list_value_t *result); + int(CEF_CALLBACK* notify_java_script_result)( + struct _cef_client_t* self, + struct _cef_list_value_t* args, + const cef_string_t* method, + const cef_string_t* object_name, + struct _cef_list_value_t* result); } cef_client_t; #ifdef __cplusplus } #endif -#endif // CEF_INCLUDE_CAPI_CEF_CLIENT_CAPI_H_ +#endif // CEF_INCLUDE_CAPI_CEF_CLIENT_CAPI_H_ diff --git a/src/cef/include/capi/cef_command_line_capi.h b/src/cef/include/capi/cef_command_line_capi.h index 7f69a1d34da58..f1088f0143950 --- a/src/cef/include/capi/cef_command_line_capi.h +++ b/src/cef/include/capi/cef_command_line_capi.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 Marshall A. Greenblatt. All rights reserved. +// Copyright (c) 2023 Marshall A. Greenblatt. All rights reserved. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are @@ -33,7 +33,7 @@ // by hand. See the translator.README.txt file in the tools directory for // more information. // -// $hash=93f3d769c0d48ed6e1d91ad8a8e2f95d4ee54287$ +// $hash=deb97d81f206e08a6f78510e7f8f1985aef98ff0$ // #ifndef CEF_INCLUDE_CAPI_CEF_COMMAND_LINE_CAPI_H_ diff --git a/src/cef/include/capi/cef_context_menu_handler_capi.h b/src/cef/include/capi/cef_context_menu_handler_capi.h index 04dbeaf8390ec..d292f78cec42f --- a/src/cef/include/capi/cef_context_menu_handler_capi.h +++ b/src/cef/include/capi/cef_context_menu_handler_capi.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 Marshall A. Greenblatt. All rights reserved. +// Copyright (c) 2023 Marshall A. Greenblatt. All rights reserved. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are @@ -33,7 +33,7 @@ // by hand. See the translator.README.txt file in the tools directory for // more information. // -// $hash=07baaa2ecbddce012a9ef020766e4cb40ff8b9b0$ +// $hash=351828c559518eeefb3b74bb24558ae51a49f2a5$ // #ifndef CEF_INCLUDE_CAPI_CEF_CONTEXT_MENU_HANDLER_CAPI_H_ @@ -373,6 +373,20 @@ typedef struct _cef_context_menu_params_t { // items). /// int(CEF_CALLBACK* is_custom_menu)(struct _cef_context_menu_params_t* self); + + /// + // Returns the input field type of context node that the context menu was + // invoked on. + /// + cef_context_menu_input_field_type_t(CEF_CALLBACK* get_input_field_type)( + struct _cef_context_menu_params_t* self); + + /// + // Returns the source type of context node that the context menu was invoked + // on. + /// + cef_context_menu_source_type_t(CEF_CALLBACK* get_source_type)( + struct _cef_context_menu_params_t* self); } cef_context_menu_params_t; #ifdef __cplusplus diff --git a/src/cef/include/capi/cef_cookie_capi.h b/src/cef/include/capi/cef_cookie_capi.h index fe865a0831b00..d81c9e8f46251 --- a/src/cef/include/capi/cef_cookie_capi.h +++ b/src/cef/include/capi/cef_cookie_capi.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 Marshall A. Greenblatt. All rights reserved. +// Copyright (c) 2023 Marshall A. Greenblatt. All rights reserved. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are @@ -33,7 +33,7 @@ // by hand. See the translator.README.txt file in the tools directory for // more information. // -// $hash=76bce0d14b3cfcc4afb47d59936e4f2e0932566b$ +// $hash=fcda5b9ec03f8bae722fa681f0cde144caf6c929$ // #ifndef CEF_INCLUDE_CAPI_CEF_COOKIE_CAPI_H_ diff --git a/src/cef/include/capi/cef_crash_util_capi.h b/src/cef/include/capi/cef_crash_util_capi.h index 2a569bdb807d9..4ebf112d358d1 --- a/src/cef/include/capi/cef_crash_util_capi.h +++ b/src/cef/include/capi/cef_crash_util_capi.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 Marshall A. Greenblatt. All rights reserved. +// Copyright (c) 2023 Marshall A. Greenblatt. All rights reserved. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are @@ -33,7 +33,7 @@ // by hand. See the translator.README.txt file in the tools directory for // more information. // -// $hash=0460e68eb7d1b1188706c42d14beafbf9a6f7126$ +// $hash=dd437f3b8022c0c92074a0d1d9aa5b2cef40e109$ // #ifndef CEF_INCLUDE_CAPI_CEF_CRASH_UTIL_CAPI_H_ diff --git a/src/cef/include/capi/cef_data_base_capi.h b/src/cef/include/capi/cef_data_base_capi.h index a0e1d91eaa644..12b11dd1e81cb --- a/src/cef/include/capi/cef_data_base_capi.h +++ b/src/cef/include/capi/cef_data_base_capi.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 Marshall A. Greenblatt. All rights reserved. +// Copyright (c) 2023 Marshall A. Greenblatt. All rights reserved. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are @@ -33,7 +33,7 @@ // by hand. See the translator.README.txt file in the tools directory for // more information. // -// $hash=d2a63576b59c75e748b5a725af9a4337414c82b9$ +// $hash=99bb61cf23fa49b4a7ce08c77d0c98980bc07a1f$ // #ifndef CEF_INCLUDE_CAPI_CEF_DATA_BASE_CAPI_H_ @@ -78,11 +78,12 @@ typedef struct _cef_data_base_t { /// // get http auth data by host and realm. /// - void(CEF_CALLBACK* get_http_auth_credentials)( - struct _cef_data_base_t* self, - const cef_string_t* host, - const cef_string_t* realm, - cef_string_list_t username_password); + void(CEF_CALLBACK* get_http_auth_credentials)(struct _cef_data_base_t* self, + const cef_string_t* host, + const cef_string_t* realm, + cef_string_t* username, + char* password, + uint32_t passwordSize); /// // gets whether the instance holds the specified permissions for the specified diff --git a/src/cef/include/capi/cef_devtools_message_observer_capi.h b/src/cef/include/capi/cef_devtools_message_observer_capi.h index 137f82136d035..b9e7662ff2908 --- a/src/cef/include/capi/cef_devtools_message_observer_capi.h +++ b/src/cef/include/capi/cef_devtools_message_observer_capi.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 Marshall A. Greenblatt. All rights reserved. +// Copyright (c) 2023 Marshall A. Greenblatt. All rights reserved. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are @@ -33,7 +33,7 @@ // by hand. See the translator.README.txt file in the tools directory for // more information. // -// $hash=ec62239c2b24ff512b64ca758be825ff57fb3b6b$ +// $hash=bd660c767a942fc27ea2ede0343e029ac8b7c603$ // #ifndef CEF_INCLUDE_CAPI_CEF_DEVTOOLS_MESSAGE_OBSERVER_CAPI_H_ diff --git a/src/cef/include/capi/cef_dialog_handler_capi.h b/src/cef/include/capi/cef_dialog_handler_capi.h index 0071832626b2d..2d5c1438f0756 --- a/src/cef/include/capi/cef_dialog_handler_capi.h +++ b/src/cef/include/capi/cef_dialog_handler_capi.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 Marshall A. Greenblatt. All rights reserved. +// Copyright (c) 2023 Marshall A. Greenblatt. All rights reserved. // // Redistribution and use in source and binary forms, with or without // modification, are permitted provided that the following conditions are @@ -33,7 +33,7 @@ // by hand. See the translator.README.txt file in the tools directory for // more information. // -// $hash=abdbb4a150fc310df31ec08d1618e1e557dfe3e2$ +// $hash=999efab317d9de20cf31c967a7facaed253ced56$ // #ifndef CEF_INCLUDE_CAPI_CEF_DIALOG_HANDLER_CAPI_H_ @@ -73,6 +73,30 @@ typedef struct _cef_file_dialog_callback_t { void(CEF_CALLBACK* cancel)(struct _cef_file_dialog_callback_t* self); } cef_file_dialog_callback_t; +/// +// Callback structure for asynchronous continuation of selection. |indices| should be the 0-based array + // index of the value selected from the selection. + /// + void(CEF_CALLBACK* cancel)(struct _cef_select_popup_callback_t* self); +} cef_select_popup_callback_t; + /// // Implement this structure to handle dialog events. The functions of this // structure will be called on the browser process UI thread. @@ -108,6 +132,22 @@ typedef struct _cef_dialog_handler_t { int selected_accept_filter, int capture, struct _cef_file_dialog_callback_t* callback); + + /// + // Show selection. +/// +/*--cef(source=library)--*/ +class CefSelectPopupCallback : public virtual CefBaseRefCounted { + public: + /// + // Continue the array passed to + // CefDialogHandler::ShowSelectPopup. + /// + /*--cef(capi_name=cont)--*/ + virtual void Continue(const std::vector& indices) = 0; + + /// + // Cancel popup menu. + /// + /*--cef()--*/ + virtual void OnSelectPopupMenu(CefRefPtr browser, + const CefRect& bounds, + int item_height, + double item_font_size, + int selected_item, + const std::vector& menu_items, + bool right_aligned, + bool allow_multiple_selection, + CefRefPtr callback) {} }; #endif // CEF_INCLUDE_CEF_DIALOG_HANDLER_H_ diff --git a/src/cef/include/cef_media_router.h b/src/cef/include/cef_media_router.h deleted file mode 100644 index 378c3fc51530e..0000000000000 --- a/src/cef/include/cef_media_router.h +++ /dev/null @@ -1,323 +0,0 @@ -// Copyright (c) 2020 Marshall A. Greenblatt. All rights reserved. -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following disclaimer -// in the documentation and/or other materials provided with the -// distribution. -// * Neither the name of Google Inc. nor the name Chromium Embedded -// Framework nor the names of its contributors may be used to endorse -// or promote products derived from this software without specific prior -// written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -// -// --------------------------------------------------------------------------- -// -// The contents of this file must follow a specific format in order to -// support the CEF translator tool. See the translator.README.txt file in the -// tools directory for more information. -// - -#ifndef CEF_INCLUDE_CEF_MEDIA_ROUTER_H_ -#define CEF_INCLUDE_CEF_MEDIA_ROUTER_H_ -#pragma once - -#include -#include "include/cef_base.h" -#include "include/cef_callback.h" -#include "include/cef_registration.h" - -class CefMediaObserver; -class CefMediaRoute; -class CefMediaRouteCreateCallback; -class CefMediaSink; -class CefMediaSinkDeviceInfoCallback; -class CefMediaSource; - -/// -// Supports discovery of and communication with media devices on the local -// network via the Cast and DIAL protocols. The methods of this class may be -// called on any browser process thread unless otherwise indicated. -/// -/*--cef(source=library)--*/ -class CefMediaRouter : public virtual CefBaseRefCounted { - public: - /// - // Returns the MediaRouter object associated with the global request context. - // If |callback| is non-NULL it will be executed asnychronously on the UI - // thread after the manager's storage has been initialized. Equivalent to - // calling CefRequestContext::GetGlobalContext()->GetMediaRouter(). - /// - /*--cef(optional_param=callback)--*/ - static CefRefPtr GetGlobalMediaRouter( - CefRefPtr callback); - - /// - // Add an observer for MediaRouter events. The observer will remain registered - // until the returned Registration object is destroyed. - /// - /*--cef()--*/ - virtual CefRefPtr AddObserver( - CefRefPtr observer) = 0; - - /// - // Returns a MediaSource object for the specified media source URN. Supported - // URN schemes include "cast:" and "dial:", and will be already known by the - // client application (e.g. "cast:?clientId="). - /// - /*--cef()--*/ - virtual CefRefPtr GetSource(const CefString& urn) = 0; - - /// - // Trigger an asynchronous call to CefMediaObserver::OnSinks on all - // registered observers. - /// - /*--cef()--*/ - virtual void NotifyCurrentSinks() = 0; - - /// - // Create a new route between |source| and |sink|. Source and sink must be - // valid, compatible (as reported by CefMediaSink::IsCompatibleWith), and a - // route between them must not already exist. |callback| will be executed - // on success or failure. If route creation succeeds it will also trigger an - // asynchronous call to CefMediaObserver::OnRoutes on all registered - // observers. - /// - /*--cef()--*/ - virtual void CreateRoute(CefRefPtr source, - CefRefPtr sink, - CefRefPtr callback) = 0; - - /// - // Trigger an asynchronous call to CefMediaObserver::OnRoutes on all - // registered observers. - /// - /*--cef()--*/ - virtual void NotifyCurrentRoutes() = 0; -}; - -/// -// Implemented by the client to observe MediaRouter events and registered via -// CefMediaRouter::AddObserver. The methods of this class will be called on the -// browser process UI thread. -/// -/*--cef(source=client)--*/ -class CefMediaObserver : public virtual CefBaseRefCounted { - public: - typedef cef_media_route_connection_state_t ConnectionState; - - /// - // The list of available media sinks has changed or - // CefMediaRouter::NotifyCurrentSinks was called. - /// - /*--cef()--*/ - virtual void OnSinks(const std::vector>& sinks) = 0; - - /// - // The list of available media routes has changed or - // CefMediaRouter::NotifyCurrentRoutes was called. - /// - /*--cef()--*/ - virtual void OnRoutes( - const std::vector>& routes) = 0; - - /// - // The connection state of |route| has changed. - /// - /*--cef()--*/ - virtual void OnRouteStateChanged(CefRefPtr route, - ConnectionState state) = 0; - - /// - // A message was recieved over |route|. |message| is only valid for - // the scope of this callback and should be copied if necessary. - /// - /*--cef()--*/ - virtual void OnRouteMessageReceived(CefRefPtr route, - const void* message, - size_t message_size) = 0; -}; - -/// -// Represents the route between a media source and sink. Instances of this -// object are created via CefMediaRouter::CreateRoute and retrieved via -// CefMediaObserver::OnRoutes. Contains the status and metadata of a -// routing operation. The methods of this class may be called on any browser -// process thread unless otherwise indicated. -/// -/*--cef(source=library)--*/ -class CefMediaRoute : public virtual CefBaseRefCounted { - public: - /// - // Returns the ID for this route. - /// - /*--cef()--*/ - virtual CefString GetId() = 0; - - /// - // Returns the source associated with this route. - /// - /*--cef()--*/ - virtual CefRefPtr GetSource() = 0; - - /// - // Returns the sink associated with this route. - /// - /*--cef()--*/ - virtual CefRefPtr GetSink() = 0; - - /// - // Send a message over this route. |message| will be copied if necessary. - /// - /*--cef()--*/ - virtual void SendRouteMessage(const void* message, size_t message_size) = 0; - - /// - // Terminate this route. Will result in an asynchronous call to - // CefMediaObserver::OnRoutes on all registered observers. - /// - /*--cef()--*/ - virtual void Terminate() = 0; -}; - -/// -// Callback interface for CefMediaRouter::CreateRoute. The methods of this -// class will be called on the browser process UI thread. -/// -/*--cef(source=client)--*/ -class CefMediaRouteCreateCallback : public virtual CefBaseRefCounted { - public: - typedef cef_media_route_create_result_t RouteCreateResult; - - /// - // Method that will be executed when the route creation has finished. |result| - // will be CEF_MRCR_OK if the route creation succeeded. |error| will be a - // description of the error if the route creation failed. |route| is the - // resulting route, or empty if the route creation failed. - /// - /*--cef(optional_param=error,optional_param=route)--*/ - virtual void OnMediaRouteCreateFinished(RouteCreateResult result, - const CefString& error, - CefRefPtr route) = 0; -}; - -/// -// Represents a sink to which media can be routed. Instances of this object are -// retrieved via CefMediaObserver::OnSinks. The methods of this class may -// be called on any browser process thread unless otherwise indicated. -/// -/*--cef(source=library)--*/ -class CefMediaSink : public virtual CefBaseRefCounted { - public: - typedef cef_media_sink_icon_type_t IconType; - - /// - // Returns the ID for this sink. - /// - /*--cef()--*/ - virtual CefString GetId() = 0; - - /// - // Returns the name of this sink. - /// - /*--cef()--*/ - virtual CefString GetName() = 0; - - /// - // Returns the description of this sink. - /// - /*--cef()--*/ - virtual CefString GetDescription() = 0; - - /// - // Returns the icon type for this sink. - /// - /*--cef(default_retval=CEF_MSIT_GENERIC)--*/ - virtual IconType GetIconType() = 0; - - /// - // Asynchronously retrieves device info. - /// - /*--cef()--*/ - virtual void GetDeviceInfo( - CefRefPtr callback) = 0; - - /// - // Returns true if this sink accepts content via Cast. - /// - /*--cef()--*/ - virtual bool IsCastSink() = 0; - - /// - // Returns true if this sink accepts content via DIAL. - /// - /*--cef()--*/ - virtual bool IsDialSink() = 0; - - /// - // Returns true if this sink is compatible with |source|. - /// - /*--cef()--*/ - virtual bool IsCompatibleWith(CefRefPtr source) = 0; -}; - -/// -// Callback interface for CefMediaSink::GetDeviceInfo. The methods of this -// class will be called on the browser process UI thread. -/// -/*--cef(source=client)--*/ -class CefMediaSinkDeviceInfoCallback : public virtual CefBaseRefCounted { - public: - /// - // Method that will be executed asyncronously once device information has been - // retrieved. - /// - /*--cef()--*/ - virtual void OnMediaSinkDeviceInfo( - const CefMediaSinkDeviceInfo& device_info) = 0; -}; - -/// -// Represents a source from which media can be routed. Instances of this object -// are retrieved via CefMediaRouter::GetSource. The methods of this class may be -// called on any browser process thread unless otherwise indicated. -/// -/*--cef(source=library)--*/ -class CefMediaSource : public virtual CefBaseRefCounted { - public: - /// - // Returns the ID (media source URN or URL) for this source. - /// - /*--cef()--*/ - virtual CefString GetId() = 0; - - /// - // Returns true if this source outputs its content via Cast. - /// - /*--cef()--*/ - virtual bool IsCastSource() = 0; - - /// - // Returns true if this source outputs its content via DIAL. - /// - /*--cef()--*/ - virtual bool IsDialSource() = 0; -}; - -#endif // CEF_INCLUDE_CEF_MEDIA_ROUTER_H_ diff --git a/src/cef/include/cef_request_context.h b/src/cef/include/cef_request_context.h index 016362f4a3572..e95de9a65bc3f --- a/src/cef/include/cef_request_context.h +++ b/src/cef/include/cef_request_context.h @@ -45,7 +45,6 @@ #include "include/cef_data_base.h" #include "include/cef_extension.h" #include "include/cef_extension_handler.h" -#include "include/cef_media_router.h" #include "include/cef_values.h" #include "include/cef_web_storage.h" @@ -380,15 +379,6 @@ class CefRequestContext : public virtual CefBaseRefCounted { /*--cef()--*/ virtual CefRefPtr GetExtension( const CefString& extension_id) = 0; - - /// - // Returns the MediaRouter object associated with this context. If |callback| - // is non-NULL it will be executed asnychronously on the UI thread after the - // manager's context has been initialized. - /// - /*--cef(optional_param=callback)--*/ - virtual CefRefPtr GetMediaRouter( - CefRefPtr callback) = 0; }; #endif // CEF_INCLUDE_CEF_REQUEST_CONTEXT_H_ diff --git a/src/cef/include/cef_request_context_handler.h b/src/cef/include/cef_request_context_handler.h index 3bf495dda0f6c..162fd229fc87d --- a/src/cef/include/cef_request_context_handler.h +++ b/src/cef/include/cef_request_context_handler.h @@ -43,7 +43,7 @@ #include "include/cef_frame.h" #include "include/cef_request.h" #include "include/cef_resource_request_handler.h" -#include "include/cef_web_plugin.h" +//#include "include/cef_web_plugin.h" // !enable_plugins /// // Implement this interface to provide handler implementations. The handler diff --git a/src/cef/include/cef_web_plugin.h b/src/cef/include/cef_web_plugin.h deleted file mode 100644 index 2ffd572a506d2..0000000000000 --- a/src/cef/include/cef_web_plugin.h +++ /dev/null @@ -1,148 +0,0 @@ -// Copyright (c) 2012 Marshall A. Greenblatt. All rights reserved. -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are -// met: -// -// * Redistributions of source code must retain the above copyright -// notice, this list of conditions and the following disclaimer. -// * Redistributions in binary form must reproduce the above -// copyright notice, this list of conditions and the following disclaimer -// in the documentation and/or other materials provided with the -// distribution. -// * Neither the name of Google Inc. nor the name Chromium Embedded -// Framework nor the names of its contributors may be used to endorse -// or promote products derived from this software without specific prior -// written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -// -// --------------------------------------------------------------------------- -// -// The contents of this file must follow a specific format in order to -// support the CEF translator tool. See the translator.README.txt file in the -// tools directory for more information. -// - -#ifndef CEF_INCLUDE_CEF_WEB_PLUGIN_H_ -#define CEF_INCLUDE_CEF_WEB_PLUGIN_H_ - -#include "include/cef_base.h" - -class CefBrowser; - -/// -// Information about a specific web plugin. -/// -/*--cef(source=library)--*/ -class CefWebPluginInfo : public virtual CefBaseRefCounted { - public: - /// - // Returns the plugin name. - /// - /*--cef()--*/ - virtual CefString GetName() = 0; - - /// - // Returns the plugin file path (DLL/bundle/library). - /// - /*--cef()--*/ - virtual CefString GetPath() = 0; - - /// - // Returns the version of the plugin (may be OS-specific). - /// - /*--cef()--*/ - virtual CefString GetVersion() = 0; - - /// - // Returns a description of the plugin from the version information. - /// - /*--cef()--*/ - virtual CefString GetDescription() = 0; -}; - -/// -// Interface to implement for visiting web plugin information. The methods of -// this class will be called on the browser process UI thread. -/// -/*--cef(source=client)--*/ -class CefWebPluginInfoVisitor : public virtual CefBaseRefCounted { - public: - /// - // Method that will be called once for each plugin. |count| is the 0-based - // index for the current plugin. |total| is the total number of plugins. - // Return false to stop visiting plugins. This method may never be called if - // no plugins are found. - /// - /*--cef()--*/ - virtual bool Visit(CefRefPtr info, - int count, - int total) = 0; -}; - -/// -// Visit web plugin information. Can be called on any thread in the browser -// process. -/// -/*--cef()--*/ -void CefVisitWebPluginInfo(CefRefPtr visitor); - -/// -// Cause the plugin list to refresh the next time it is accessed regardless -// of whether it has already been loaded. Can be called on any thread in the -// browser process. -/// -/*--cef()--*/ -void CefRefreshWebPlugins(); - -/// -// Unregister an internal plugin. This may be undone the next time -// CefRefreshWebPlugins() is called. Can be called on any thread in the browser -// process. -/// -/*--cef()--*/ -void CefUnregisterInternalWebPlugin(const CefString& path); - -/// -// Register a plugin crash. Can be called on any thread in the browser process -// but will be executed on the IO thread. -/// -/*--cef()--*/ -void CefRegisterWebPluginCrash(const CefString& path); - -/// -// Interface to implement for receiving unstable plugin information. The methods -// of this class will be called on the browser process IO thread. -/// -/*--cef(source=client)--*/ -class CefWebPluginUnstableCallback : public virtual CefBaseRefCounted { - public: - /// - // Method that will be called for the requested plugin. |unstable| will be - // true if the plugin has reached the crash count threshold of 3 times in 120 - // seconds. - /// - /*--cef()--*/ - virtual void IsUnstable(const CefString& path, bool unstable) = 0; -}; - -/// -// Query if a plugin is unstable. Can be called on any thread in the browser -// process. -/// -/*--cef()--*/ -void CefIsWebPluginUnstable(const CefString& path, - CefRefPtr callback); - -#endif // CEF_INCLUDE_CEF_WEB_PLUGIN_H_ diff --git a/src/cef/include/internal/cef_string_wrappers.h b/src/cef/include/internal/cef_string_wrappers.h index c53f5627e99ae..0909f90669e6c --- a/src/cef/include/internal/cef_string_wrappers.h +++ b/src/cef/include/internal/cef_string_wrappers.h @@ -531,6 +531,16 @@ class CefStringBase { owner_ = false; } + /// + // Memset the data to zero. + /// + void MemsetToZero() { + if (!string_) + return; + if (string_->str != NULL) + memset(string_->str, 0, string_->length); + } + /// // Attach to the specified string structure. If |owner| is true this class // will take ownership of the structure. diff --git a/src/cef/include/internal/cef_types.h b/src/cef/include/internal/cef_types.h index e24b376d19871..6ec7dd2e48e2c --- a/src/cef/include/internal/cef_types.h +++ b/src/cef/include/internal/cef_types.h @@ -664,6 +664,7 @@ typedef struct _cef_browser_settings_t { // Force the background color to be dark /// cef_state_t force_dark_mode_enabled; + cef_state_t dark_prefer_color_scheme_enabled; cef_state_t loads_images_automatically; bool javascript_can_open_windows_automatically; int text_size_percent; @@ -677,6 +678,10 @@ typedef struct _cef_browser_settings_t { bool viewport_meta_enabled; bool user_gesture_required; bool pinch_smooth_mode; +#if BUILDFLAG(IS_OHOS) + cef_state_t hide_vertical_scrollbars; + cef_state_t hide_horizontal_scrollbars; +#endif /* ohos webview end */ } cef_browser_settings_t; @@ -3308,6 +3313,197 @@ typedef struct _cef_touch_handle_state_t { float edge_height; } cef_touch_handle_state_t; +/// +// Supported context menu input field types. These constants match their equivalents +// in Chromium's ContextMenuDataInputFieldType and should not be renumbered. +/// +typedef enum { + /// + // Not an input field. + /// + CM_INPUTFIELDTYPE_NONE, + + /// + // type = text, search, email, url + /// + CM_INPUTFIELDTYPE_PLAINTEXT, + + /// + // type = password + /// + CM_INPUTFIELDTYPE_PASSWORD, + + /// + // type = number + /// + CM_INPUTFIELDTYPE_NUMBER, + + /// + // type = tel + /// + CM_INPUTFIELDTYPE_TELEPHONE, + + /// + // type = + /// + CM_INPUTFIELDTYPE_OTHER, +} cef_context_menu_input_field_type_t; + +/// +// Supported context menu source types. These constants match their equivalents +// in Chromium's ui::MenuSourceType and should not be renumbered. +/// +typedef enum { + /// + // type = none + /// + CM_SOURCETYPE_NONE, + + /// + // type = mouse + /// + CM_SOURCETYPE_MOUSE, + + /// + // type = keyboard + /// + CM_SOURCETYPE_KEYBOARD, + + /// + // type = touch + /// + CM_SOURCETYPE_TOUCH, + + /// + // type = touch edit menu + /// + CM_SOURCETYPE_TOUCH_EDIT_MENU, + + /// + // type = long press + /// + CM_SOURCETYPE_LONG_PRESS, + + /// + // type = long tap + /// + CM_SOURCETYPE_LONG_TAP, + + /// + // type = number + /// + CM_SOURCETYPE_TOUCH_HANDLE, + + /// + // type = stylus + /// + CM_SOURCETYPE_STYLUS, + + /// + // type = adjust selection + /// + CM_SOURCETYPE_ADJUST_SELECTION, + + /// + // type = selection reset + /// + CM_SOURCETYPE_SELECTION_RESET, +} cef_context_menu_source_type_t; + +/// +// Supported text direction. See text_direction.mojom. +/// +typedef enum { + /// + // type = unknown direction + /// + UNKNOWN, + + /// + // type = right to left + /// + RTL, + + /// + // type = left to right + /// + LTR, +} cef_text_direction_t; + +/// +// Supported item. +/// +typedef struct _cef_select_popup_item_t { + /// + // label name of item. + /// + cef_string_t label; + + /// + // tool tip of item. + /// + cef_string_t tool_tip; + + /// + // type of item. + /// + cef_select_popup_item_type_t type; + + /// + // action of item. + /// + uint32_t action; + + /// + // text direction of item. + /// + cef_text_direction_t text_direction; + + /// + // whether item is enabled. + /// + bool enabled; + + /// + // whether item has text direction overridel + /// + bool has_text_direction_override; + + /// + // whether item is checked. + /// + bool checked; +} cef_select_popup_item_t; #ifdef __cplusplus } #endif diff --git a/src/cef/include/internal/cef_types_wrappers.h b/src/cef/include/internal/cef_types_wrappers.h index 9bfde0a89e3f9..d69abfcbf52b3 --- a/src/cef/include/internal/cef_types_wrappers.h +++ b/src/cef/include/internal/cef_types_wrappers.h @@ -730,6 +730,7 @@ struct CefBrowserSettingsTraits { /* ohos webview begin */ target->force_dark_mode_enabled = src->force_dark_mode_enabled; + target->dark_prefer_color_scheme_enabled = src->dark_prefer_color_scheme_enabled; target->javascript_can_open_windows_automatically = src->javascript_can_open_windows_automatically; target->loads_images_automatically = src->loads_images_automatically; @@ -746,6 +747,10 @@ struct CefBrowserSettingsTraits { target->viewport_meta_enabled = src->viewport_meta_enabled; target->user_gesture_required = src->user_gesture_required; target->pinch_smooth_mode = src->pinch_smooth_mode; +#if BUILDFLAG(IS_OHOS) + target->hide_vertical_scrollbars = src->hide_vertical_scrollbars; + target->hide_horizontal_scrollbars = src->hide_horizontal_scrollbars; +#endif /* ohos webview end */ } }; @@ -1050,4 +1055,23 @@ struct CefMediaSinkDeviceInfoTraits { /// typedef CefStructBase CefMediaSinkDeviceInfo; +struct CefSelectPopupItemTraits { + typedef cef_select_popup_item_t struct_type; + + static inline void init(struct_type* s) {} + + static inline void clear(struct_type* s) {} + + static inline void set(const struct_type* src, + struct_type* target, + bool copy) { + *target = *src; + } +}; + +/// +// Class representing select popup item. +/// +typedef CefStructBase CefSelectPopupItem; + #endif // CEF_INCLUDE_INTERNAL_CEF_TYPES_WRAPPERS_H_ diff --git a/src/cef/libcef/browser/alloy/alloy_browser_context.cc b/src/cef/libcef/browser/alloy/alloy_browser_context.cc index 6ede933824b83..2e09ea0d29090 --- a/src/cef/libcef/browser/alloy/alloy_browser_context.cc +++ b/src/cef/libcef/browser/alloy/alloy_browser_context.cc @@ -24,7 +24,6 @@ #include "base/strings/string_util.h" #include "chrome/browser/font_family_cache.h" #include "chrome/browser/media/media_device_id_salt.h" -#include "chrome/browser/plugins/chrome_plugin_service_filter.h" #include "chrome/browser/profiles/profile_key.h" #include "chrome/browser/ui/zoom/chrome_zoom_level_prefs.h" #include "chrome/common/pref_names.h" @@ -49,6 +48,10 @@ #include "net/proxy_resolution/proxy_config_service.h" #include "services/network/public/mojom/cors_origin_pattern.mojom.h" +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) +#include "chrome/browser/plugins/chrome_plugin_service_filter.h" +#endif + using content::BrowserThread; // Creates and manages VisitedLinkEventListener objects for each @@ -183,7 +186,9 @@ void AlloyBrowserContext::Initialize() { if (extensions_enabled) extension_system_->Init(); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) ChromePluginServiceFilter::GetInstance()->RegisterProfile(this); +#endif media_device_id_salt_ = new MediaDeviceIDSalt(pref_service); } @@ -194,7 +199,9 @@ void AlloyBrowserContext::Shutdown() { // Send notifications to clean up objects associated with this Profile. MaybeSendDestroyedNotification(); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) ChromePluginServiceFilter::GetInstance()->UnregisterProfile(this); +#endif // Remove any BrowserContextKeyedServiceFactory associations. This must be // called before the ProxyService owned by AlloyBrowserContext is destroyed. diff --git a/src/cef/libcef/browser/alloy/alloy_browser_host_impl.cc b/src/cef/libcef/browser/alloy/alloy_browser_host_impl.cc index ee3704e8da89f..ec9cc632fb823 --- a/src/cef/libcef/browser/alloy/alloy_browser_host_impl.cc +++ b/src/cef/libcef/browser/alloy/alloy_browser_host_impl.cc @@ -331,6 +331,13 @@ void AlloyBrowserHostImpl::CloseBrowser(bool force_close) { // Will result in a call to BeforeUnloadFired() and, if the close isn't // canceled, CloseContents(). contents->DispatchBeforeUnload(false /* auto_cancel */); +#if BUILDFLAG(IS_OHOS) + // In cef_life_span_handler.h file show DoClose step. + // Step 1 to Step 3 is over. + // This will replace Step 4 : User approves the close. Beause both in + // Android and OH close will not be blocked by beforeunload event. + CloseContents(contents); +#endif } else { CloseContents(contents); } @@ -1180,6 +1187,14 @@ void AlloyBrowserHostImpl::CloseContents(content::WebContents* source) { if (handler.get()) { close_browser = !handler->DoClose(this); } +#if BUILDFLAG(IS_OHOS) + // |DoClose| will notify the UI to close, |DESTRUCTION_STATE_NONE| means + // |CloseBrowser| has not been triggered by UI. We should close browser + // when received |CloseBrowser| request from UI. + if (destruction_state_ == DESTRUCTION_STATE_NONE) { + close_browser = false; + } +#endif } if (close_browser) { @@ -1254,7 +1269,6 @@ bool AlloyBrowserHostImpl::HandleContextMenu( auto rvh = web_contents()->GetRenderViewHost(); CefRenderWidgetHostViewOSR* view = static_cast(rvh->GetWidget()->GetView()); - touch_insert_handle_menu_show_ = true; if (view) { CefTouchSelectionControllerClientOSR* touch_client = static_cast( @@ -1750,6 +1764,23 @@ void AlloyBrowserHostImpl::StartDragging( } } +void AlloyBrowserHostImpl::ShowPopupMenu( + mojo::PendingRemote popup_client, + const gfx::Rect& bounds, + int item_height, + double item_font_size, + int selected_item, + std::vector menu_items, + bool right_aligned, + bool allow_multiple_selection) { + if (platform_delegate_) { + platform_delegate_->ShowPopupMenu(std::move(popup_client), bounds, + item_height, item_font_size, selected_item, + std::move(menu_items), right_aligned, + allow_multiple_selection); + } +} + void AlloyBrowserHostImpl::UpdateDragCursor( ui::mojom::DragOperation operation) { if (platform_delegate_) diff --git a/src/cef/libcef/browser/alloy/alloy_browser_host_impl.h b/src/cef/libcef/browser/alloy/alloy_browser_host_impl.h index a59dfe1562b11..f134101b58cf0 --- a/src/cef/libcef/browser/alloy/alloy_browser_host_impl.h +++ b/src/cef/libcef/browser/alloy/alloy_browser_host_impl.h @@ -28,6 +28,7 @@ #include "content/public/browser/web_contents_delegate.h" #include "content/public/browser/web_contents_observer.h" #include "extensions/common/mojom/view_type.mojom-forward.h" +#include "third_party/blink/public/mojom/choosers/popup_menu.mojom.h" class CefAudioCapturer; class CefBrowserInfo; @@ -207,9 +208,20 @@ class AlloyBrowserHostImpl : public CefBrowserHostBase, /* ohos webview begin */ void SetBackgroundColor(int color) override; void SetTouchInsertHandleMenuShow(bool show) { - touch_insert_handle_menu_show_ = show; + web_contents()->SetTouchInsertHandleMenuShow(show); } - bool GetTouchInsertHandleMenuShow() { return touch_insert_handle_menu_show_; } + bool GetTouchInsertHandleMenuShow() { + return web_contents()->GetTouchInsertHandleMenuShow(); + } + void ShowPopupMenu( + mojo::PendingRemote popup_client, + const gfx::Rect& bounds, + int item_height, + double item_font_size, + int selected_item, + std::vector menu_items, + bool right_aligned, + bool allow_multiple_selection); /* ohos webview end */ // content::WebContentsDelegate methods. diff --git a/src/cef/libcef/browser/alloy/alloy_browser_main.cc b/src/cef/libcef/browser/alloy/alloy_browser_main.cc index c6136251089ae..63e13b778d4f7 --- a/src/cef/libcef/browser/alloy/alloy_browser_main.cc +++ b/src/cef/libcef/browser/alloy/alloy_browser_main.cc @@ -13,8 +13,6 @@ #include "libcef/browser/context.h" #include "libcef/browser/devtools/devtools_manager_delegate.h" #include "libcef/browser/extensions/extension_system_factory.h" -#include "libcef/browser/net/chrome_scheme_handler.h" -#include "libcef/browser/printing/constrained_window_views_client.h" #include "libcef/browser/thread_util.h" #include "libcef/common/app_manager.h" #include "libcef/common/extensions/extensions_util.h" @@ -25,11 +23,8 @@ #include "base/task/post_task.h" #include "base/task/thread_pool.h" #include "chrome/browser/browser_process.h" -#include "chrome/browser/media/router/chrome_media_router_factory.h" #include "chrome/browser/net/system_network_context_manager.h" -#include "chrome/browser/plugins/plugin_finder.h" #include "chrome/common/chrome_switches.h" -#include "components/constrained_window/constrained_window_views.h" #include "content/public/browser/gpu_data_manager.h" #include "content/public/browser/network_service_instance.h" #include "content/public/common/result_codes.h" @@ -92,12 +87,31 @@ #include "chrome/browser/component_updater/widevine_cdm_component_installer.h" #endif +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) +#include "libcef/browser/net/chrome_scheme_handler.h" +#endif + +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PRINT_PREVIEW) +#include "components/constrained_window/constrained_window_views.h" +#include "libcef/browser/printing/constrained_window_views_client.h" +#endif + +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) +#include "chrome/browser/plugins/plugin_finder.h" +#endif + +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) +#include "chrome/browser/media/router/chrome_media_router_factory.h" +#endif + AlloyBrowserMainParts::AlloyBrowserMainParts( content::MainFunctionParams parameters) : BrowserMainParts(), parameters_(std::move(parameters)) {} AlloyBrowserMainParts::~AlloyBrowserMainParts() { +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PRINT_PREVIEW) constrained_window::SetConstrainedWindowViewsClient(nullptr); +#endif } int AlloyBrowserMainParts::PreEarlyInitialization() { @@ -111,7 +125,9 @@ int AlloyBrowserMainParts::PreEarlyInitialization() { } void AlloyBrowserMainParts::ToolkitInitialized() { +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PRINT_PREVIEW) SetConstrainedWindowViewsClient(CreateCefConstrainedWindowViewsClient()); +#endif #if defined(USE_AURA) CHECK(aura::Env::GetInstance()); @@ -147,7 +163,9 @@ void AlloyBrowserMainParts::PreCreateMainMessageLoop() { ChromeBrowserMainPartsWin::SetupInstallerUtilStrings(); #endif // BUILDFLAG(IS_WIN) +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) media_router::ChromeMediaRouterFactory::DoPlatformInit(); +#endif } void AlloyBrowserMainParts::PostCreateMainMessageLoop() { @@ -237,10 +255,14 @@ int AlloyBrowserMainParts::PreMainMessageLoopRun() { InitializeWinParentalControls(); #endif +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) // Triggers initialization of the singleton instance on UI thread. PluginFinder::GetInstance()->Init(); +#endif +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) scheme::RegisterWebUIControllerFactory(); +#endif #if BUILDFLAG(ENABLE_MEDIA_FOUNDATION_WIDEVINE_CDM) || \ BUILDFLAG(ENABLE_WIDEVINE_CDM_COMPONENT) diff --git a/src/cef/libcef/browser/alloy/alloy_content_browser_client.cc b/src/cef/libcef/browser/alloy/alloy_content_browser_client.cc index 1b8696bd6ece0..f472e1012109a --- a/src/cef/libcef/browser/alloy/alloy_content_browser_client.cc +++ b/src/cef/libcef/browser/alloy/alloy_content_browser_client.cc @@ -28,7 +28,6 @@ #include "libcef/browser/extensions/extension_system.h" #include "libcef/browser/extensions/extension_web_contents_observer.h" #include "libcef/browser/media_capture_devices_dispatcher.h" -#include "libcef/browser/net/chrome_scheme_handler.h" #include "libcef/browser/net/throttle_handler.h" #include "libcef/browser/net_service/cookie_manager_impl.h" #include "libcef/browser/net_service/login_delegate.h" @@ -36,7 +35,6 @@ #include "libcef/browser/net_service/resource_request_handler_wrapper.h" #include "libcef/browser/net_service/restrict_cookie_manager.h" #include "libcef/browser/prefs/renderer_prefs.h" -#include "libcef/browser/printing/print_view_manager.h" #include "libcef/browser/speech_recognition_manager_delegate.h" #include "libcef/browser/ssl_info_impl.h" #include "libcef/browser/thread_util.h" @@ -66,36 +64,24 @@ #include "chrome/browser/net/profile_network_context_service.h" #include "chrome/browser/net/profile_network_context_service_factory.h" #include "chrome/browser/net/system_network_context_manager.h" -#include "chrome/browser/pdf/chrome_pdf_stream_delegate.h" -#include "chrome/browser/plugins/pdf_iframe_navigation_throttle.h" -#include "chrome/browser/plugins/plugin_info_host_impl.h" -#include "chrome/browser/plugins/plugin_response_interceptor_url_loader_throttle.h" #include "chrome/browser/plugins/plugin_utils.h" #include "chrome/browser/profiles/profile.h" #include "chrome/browser/profiles/renderer_updater.h" #include "chrome/browser/profiles/renderer_updater_factory.h" -#include "chrome/browser/renderer_host/pepper/chrome_browser_pepper_host_factory.h" #include "chrome/browser/spellchecker/spell_check_host_chrome_impl.h" #include "chrome/common/chrome_content_client.h" #include "chrome/common/chrome_paths.h" #include "chrome/common/chrome_switches.h" #include "chrome/common/google_url_loader_throttle.h" -#include "chrome/common/pdf_util.h" #include "chrome/common/pref_names.h" #include "chrome/common/webui_url_constants.h" #include "chrome/grit/browser_resources.h" #include "chrome/grit/generated_resources.h" -#include "chrome/services/printing/printing_service.h" #include "components/content_settings/core/browser/cookie_settings.h" #include "components/embedder_support/switches.h" #include "components/embedder_support/user_agent_utils.h" -#include "components/pdf/browser/pdf_navigation_throttle.h" -#include "components/pdf/browser/pdf_url_loader_request_interceptor.h" -#include "components/pdf/browser/pdf_web_contents_helper.h" -#include "components/pdf/common/internal_plugin_helpers.h" #include "components/spellcheck/common/spellcheck.mojom.h" #include "components/version_info/version_info.h" -#include "content/browser/plugin_service_impl.h" #include "content/browser/renderer_host/render_frame_host_impl.h" #include "content/public/browser/browser_context.h" #include "content/public/browser/browser_ppapi_host.h" @@ -180,6 +166,37 @@ #include "chrome/browser/spellchecker/spell_check_panel_host_impl.h" #endif +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) +#include "libcef/browser/net/chrome_scheme_handler.h" +#endif + +#if BUILDFLAG(IS_OHOS) +#include "printing/buildflags/buildflags.h" +#if BUILDFLAG(ENABLE_PRINT_PREVIEW) +#include "chrome/services/printing/printing_service.h" +#include "libcef/browser/printing/print_view_manager.h" +#endif +#endif + +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) +#include "chrome/browser/plugins/plugin_info_host_impl.h" +#include "chrome/browser/plugins/plugin_response_interceptor_url_loader_throttle.h" +#include "chrome/browser/renderer_host/pepper/chrome_browser_pepper_host_factory.h" +#include "content/browser/plugin_service_impl.h" +#endif + +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PDF) +#include "chrome/browser/pdf/chrome_pdf_stream_delegate.h" +#include "chrome/browser/plugins/pdf_iframe_navigation_throttle.h" +#include "chrome/common/pdf_util.h" +#include "components/pdf/browser/pdf_navigation_throttle.h" +#include "components/pdf/browser/pdf_url_loader_request_interceptor.h" +#include "components/pdf/browser/pdf_web_contents_helper.h" +#include "components/pdf/common/internal_plugin_helpers.h" +#else +#include "content/public/browser/url_loader_request_interceptor.h" +#endif + namespace { void TransferVector(const std::vector& source, std::vector& target) { @@ -644,6 +661,7 @@ int GetCrashSignalFD(const base::CommandLine& command_line) { } #endif // BUILDFLAG(IS_POSIX) && !BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) // From chrome/browser/plugins/chrome_content_browser_client_plugins_part.cc. void BindPluginInfoHost( int render_process_id, @@ -659,6 +677,7 @@ void BindPluginInfoHost( std::make_unique(render_process_id, profile), std::move(receiver)); } +#endif base::FilePath GetRootCachePath() { // The CefContext::ValidateCachePath method enforces the requirement that all @@ -817,7 +836,11 @@ void AlloyContentBrowserClient::GetAdditionalAllowedSchemesForFileSystem( bool AlloyContentBrowserClient::IsWebUIAllowedToMakeNetworkRequests( const url::Origin& origin) { +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) return scheme::IsWebUIAllowedToMakeNetworkRequests(origin); +#else + return false; +#endif } bool AlloyContentBrowserClient::IsHandledURL(const GURL& url) { @@ -1207,7 +1230,7 @@ bool AlloyContentBrowserClient::CanCreateWindow( if (!browser_host) { return false; } - if (!browser_host->settings().javascript_can_open_windows_automatically) { + if (!browser_host->settings().javascript_can_open_windows_automatically && !user_gesture) { LOG(INFO) << "javascript_can_open_windows_automatically false"; return false; } @@ -1238,7 +1261,7 @@ bool AlloyContentBrowserClient::CanCreateWindow( CefRefPtr browser_host = CefBrowserHostBase::GetBrowserForContents(web_contents); - if (!browser_host->settings().javascript_can_open_windows_automatically) { + if (!browser_host->settings().javascript_can_open_windows_automatically && !user_gesture) { LOG(INFO) << "javascript_can_open_windows_automatically false"; return false; } @@ -1270,7 +1293,9 @@ bool AlloyContentBrowserClient::OverrideWebPreferencesAfterNavigation( void AlloyContentBrowserClient::BrowserURLHandlerCreated( content::BrowserURLHandler* handler) { +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) scheme::BrowserURLHandlerCreated(handler); +#endif } std::string AlloyContentBrowserClient::GetDefaultDownloadName() { @@ -1279,9 +1304,11 @@ std::string AlloyContentBrowserClient::GetDefaultDownloadName() { void AlloyContentBrowserClient::DidCreatePpapiPlugin( content::BrowserPpapiHost* browser_host) { +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) browser_host->GetPpapiHost()->AddHostFactoryFilter( std::unique_ptr( new ChromeBrowserPepperHostFactory(browser_host))); +#endif } std::unique_ptr @@ -1302,6 +1329,7 @@ void AlloyContentBrowserClient:: }, &render_frame_host)); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PRINT_PREVIEW) associated_registry.AddInterface(base::BindRepeating( [](content::RenderFrameHost* render_frame_host, mojo::PendingAssociatedReceiver @@ -1310,7 +1338,9 @@ void AlloyContentBrowserClient:: render_frame_host); }, &render_frame_host)); +#endif +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PDF) associated_registry.AddInterface(base::BindRepeating( [](content::RenderFrameHost* render_frame_host, mojo::PendingAssociatedReceiver receiver) { @@ -1318,6 +1348,7 @@ void AlloyContentBrowserClient:: render_frame_host); }, &render_frame_host)); +#endif } std::vector> @@ -1325,6 +1356,7 @@ AlloyContentBrowserClient::CreateThrottlesForNavigation( content::NavigationHandle* navigation_handle) { throttle::NavigationThrottleList throttles; +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PDF) if (extensions::ExtensionsEnabled()) { auto pdf_iframe_throttle = PDFIFrameNavigationThrottle::MaybeCreateThrottleFor(navigation_handle); @@ -1336,6 +1368,7 @@ AlloyContentBrowserClient::CreateThrottlesForNavigation( if (pdf_throttle) throttles.push_back(std::move(pdf_throttle)); } +#endif throttle::CreateThrottlesForNavigation(navigation_handle, throttles); @@ -1351,9 +1384,11 @@ AlloyContentBrowserClient::CreateURLLoaderThrottles( int frame_tree_node_id) { std::vector> result; +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) // Used to substitute View ID for PDF contents when using the PDF plugin. result.push_back(std::make_unique( request.destination, frame_tree_node_id)); +#endif Profile* profile = Profile::FromBrowserContext(browser_context); @@ -1376,6 +1411,7 @@ AlloyContentBrowserClient::WillCreateURLLoaderRequestInterceptors( std::vector> interceptors; +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PDF) if (extensions::ExtensionsEnabled()) { auto pdf_interceptor = pdf::PdfURLLoaderRequestInterceptor::MaybeCreateInterceptor( @@ -1383,6 +1419,7 @@ AlloyContentBrowserClient::WillCreateURLLoaderRequestInterceptors( if (pdf_interceptor) interceptors.push_back(std::move(pdf_interceptor)); } +#endif return interceptors; } @@ -1403,8 +1440,10 @@ void AlloyContentBrowserClient::ExposeInterfacesToRenderer( service_manager::BinderRegistry* registry, blink::AssociatedInterfaceRegistry* associated_registry, content::RenderProcessHost* host) { +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) associated_registry->AddInterface( base::BindRepeating(&BindPluginInfoHost, host->GetID())); +#endif if (extensions::ExtensionsEnabled()) { associated_registry->AddInterface(base::BindRepeating( @@ -1490,6 +1529,10 @@ void AlloyContentBrowserClient::RegisterNonNetworkSubresourceURLLoaderFactories( content::CreateFileURLLoaderFactory( browser_context->GetPath(), browser_context->GetSharedCorsOriginAccessList())); + factories->emplace(url::kResourcesScheme, + content::CreateFileURLLoaderFactory( + browser_context->GetPath(), + browser_context->GetSharedCorsOriginAccessList())); #endif if (!extensions::ExtensionsEnabled()) return; @@ -1621,6 +1664,11 @@ bool AlloyContentBrowserClient::ConfigureNetworkContextParams( // TODO(cef): Remove this and add required NetworkIsolationKeys, // this is currently not the case and this was not required pre M84. network_context_params->require_network_isolation_key = false; +#if BUILDFLAG(IS_OHOS) + network_context_params->initial_ssl_config = network::mojom::SSLConfig::New(); + network_context_params->initial_ssl_config->version_min = + network::mojom::SSLVersion::kTLS1; +#endif return true; } @@ -1789,11 +1837,15 @@ base::flat_set AlloyContentBrowserClient::GetPluginMimeTypesWithExternalHandlers( content::BrowserContext* browser_context) { base::flat_set mime_types; +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) auto map = PluginUtils::GetMimeTypeToExtensionIdMap(browser_context); for (const auto& pair : map) mime_types.insert(pair.first); +#endif +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PDF) if (pdf::IsInternalPluginExternallyHandled()) mime_types.insert(pdf::kInternalPluginMimeType); +#endif return mime_types; } @@ -1808,6 +1860,7 @@ bool AlloyContentBrowserClient::ArePersistentMediaDeviceIDsAllowed( ->IsFullCookieAccessAllowed(url, site_for_cookies, top_frame_origin); } +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) bool AlloyContentBrowserClient::ShouldAllowPluginCreation( const url::Origin& embedder_origin, const content::PepperPluginInfo& plugin_info) { @@ -1817,6 +1870,7 @@ bool AlloyContentBrowserClient::ShouldAllowPluginCreation( return true; } +#endif #if BUILDFLAG(IS_OHOS) bool AlloyContentBrowserClient::ShouldTryToUseExistingProcessHost( @@ -1895,10 +1949,14 @@ void AlloyContentBrowserClient::OnWebContentsCreated( bool AlloyContentBrowserClient::IsFindInPageDisabledForOrigin( const url::Origin& origin) { +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PDF) // For PDF viewing with the PPAPI-free PDF Viewer, find-in-page should only // display results from the PDF content, and not from the UI. return base::FeatureList::IsEnabled(chrome_pdf::features::kPdfUnseasoned) && IsPdfExtensionOrigin(origin); +#else + return false; +#endif } CefRefPtr AlloyContentBrowserClient::request_context() diff --git a/src/cef/libcef/browser/alloy/alloy_content_browser_client.h b/src/cef/libcef/browser/alloy/alloy_content_browser_client.h index eed665622b379..6bab20215fa3c --- a/src/cef/libcef/browser/alloy/alloy_content_browser_client.h +++ b/src/cef/libcef/browser/alloy/alloy_content_browser_client.h @@ -244,9 +244,11 @@ class AlloyContentBrowserClient : public content::ContentBrowserClient { const GURL& scope, const net::SiteForCookies& site_for_cookies, const absl::optional& top_frame_origin) override; +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) bool ShouldAllowPluginCreation( const url::Origin& embedder_origin, const content::PepperPluginInfo& plugin_info) override; +#endif void OnWebContentsCreated(content::WebContents* web_contents) override; bool IsFindInPageDisabledForOrigin(const url::Origin& origin) override; diff --git a/src/cef/libcef/browser/alloy/browser_platform_delegate_alloy.cc b/src/cef/libcef/browser/alloy/browser_platform_delegate_alloy.cc index 082421f19893c..8c27ed9a7c81d --- a/src/cef/libcef/browser/alloy/browser_platform_delegate_alloy.cc +++ b/src/cef/libcef/browser/alloy/browser_platform_delegate_alloy.cc @@ -10,14 +10,11 @@ #include "libcef/browser/extensions/extension_system.h" #include "libcef/browser/extensions/extension_view_host.h" #include "libcef/browser/extensions/extension_web_contents_observer.h" -#include "libcef/browser/printing/print_view_manager.h" #include "libcef/common/extensions/extensions_util.h" #include "libcef/common/net/url_util.h" #include "libcef/features/runtime_checks.h" #include "base/logging.h" -#include "chrome/browser/printing/print_view_manager.h" -#include "chrome/browser/printing/print_view_manager_common.h" #include "chrome/browser/ui/prefs/prefs_tab_helper.h" #include "components/find_in_page/find_tab_helper.h" #include "components/find_in_page/find_types.h" @@ -31,12 +28,23 @@ #include "printing/mojom/print.mojom.h" #include "third_party/blink/public/mojom/frame/find_in_page.mojom.h" +#if BUILDFLAG(IS_OHOS) +#include "printing/buildflags/buildflags.h" +#if BUILDFLAG(ENABLE_PRINT_PREVIEW) +#include "libcef/browser/printing/print_view_manager.h" +#include "chrome/browser/printing/print_view_manager.h" +#include "chrome/browser/printing/print_view_manager_common.h" +#endif +#endif + namespace { +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PRINT_PREVIEW) printing::CefPrintViewManager* GetPrintViewManager( content::WebContents* web_contents) { return printing::CefPrintViewManager::FromWebContents(web_contents); } +#endif } // namespace @@ -181,7 +189,9 @@ void CefBrowserPlatformDelegateAlloy::BrowserCreated( web_contents_->SetDelegate(static_cast(browser)); PrefsTabHelper::CreateForWebContents(web_contents_); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PRINT_PREVIEW) printing::CefPrintViewManager::CreateForWebContents(web_contents_); +#endif if (extensions::ExtensionsEnabled()) { // Used by the tabs extension API. @@ -363,6 +373,7 @@ bool CefBrowserPlatformDelegateAlloy::IsPrintPreviewSupported() const { } void CefBrowserPlatformDelegateAlloy::Print() { +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PRINT_PREVIEW) REQUIRE_ALLOY_RUNTIME(); auto contents_to_use = printing::GetWebContentsToUse(web_contents_); @@ -378,12 +389,14 @@ void CefBrowserPlatformDelegateAlloy::Print() { } else { GetPrintViewManager(contents_to_use)->PrintNow(rfh_to_use); } +#endif } void CefBrowserPlatformDelegateAlloy::PrintToPDF( const CefString& path, const CefPdfPrintSettings& settings, CefRefPtr callback) { +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PRINT_PREVIEW) REQUIRE_ALLOY_RUNTIME(); auto contents_to_use = printing::GetWebContentsToUse(web_contents_); @@ -402,6 +415,7 @@ void CefBrowserPlatformDelegateAlloy::PrintToPDF( GetPrintViewManager(contents_to_use) ->PrintToPDF(rfh_to_use, base::FilePath(path), settings, std::move(pdf_callback)); +#endif } void CefBrowserPlatformDelegateAlloy::Find(const CefString& searchText, diff --git a/src/cef/libcef/browser/alloy/chrome_browser_process_alloy.cc b/src/cef/libcef/browser/alloy/chrome_browser_process_alloy.cc index 0e636b44e566f..72e3e714a4a77 --- a/src/cef/libcef/browser/alloy/chrome_browser_process_alloy.cc +++ b/src/cef/libcef/browser/alloy/chrome_browser_process_alloy.cc @@ -19,9 +19,7 @@ #include "chrome/browser/component_updater/chrome_component_updater_configurator.h" #include "chrome/browser/net/system_network_context_manager.h" #include "chrome/browser/policy/chrome_browser_policy_connector.h" -#include "chrome/browser/printing/background_printing_manager.h" #include "chrome/browser/printing/print_job_manager.h" -#include "chrome/browser/printing/print_preview_dialog_controller.h" #include "chrome/browser/ui/prefs/pref_watcher.h" #include "components/component_updater/component_updater_service.h" #include "components/component_updater/timer_update_scheduler.h" @@ -94,7 +92,9 @@ void ChromeBrowserProcessAlloy::CleanupOnUIThread() { // tasks to run once teardown has started. print_job_manager_->Shutdown(); print_job_manager_.reset(nullptr); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PRINT_PREVIEW) print_preview_dialog_controller_ = nullptr; +#endif profile_manager_.reset(); event_router_forwarder_ = nullptr; @@ -112,16 +112,20 @@ void ChromeBrowserProcessAlloy::CleanupOnUIThread() { if (pref_watcher) pref_watcher->Shutdown(); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PRINT_PREVIEW) // Unregister observers for |background_printing_manager_|. if (background_printing_manager_) { background_printing_manager_->DeletePreviewContentsForBrowserContext( profile); } +#endif } local_state_.reset(); browser_policy_connector_.reset(); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PRINT_PREVIEW) background_printing_manager_.reset(); +#endif field_trial_list_.reset(); component_updater_.reset(); @@ -259,20 +263,28 @@ printing::PrintJobManager* ChromeBrowserProcessAlloy::print_job_manager() { printing::PrintPreviewDialogController* ChromeBrowserProcessAlloy::print_preview_dialog_controller() { +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PRINT_PREVIEW) if (!print_preview_dialog_controller_.get()) { print_preview_dialog_controller_ = new printing::PrintPreviewDialogController(); } return print_preview_dialog_controller_.get(); +#else + return nullptr; +#endif } printing::BackgroundPrintingManager* ChromeBrowserProcessAlloy::background_printing_manager() { +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PRINT_PREVIEW) if (!background_printing_manager_.get()) { background_printing_manager_.reset( new printing::BackgroundPrintingManager()); } return background_printing_manager_.get(); +#else + return nullptr; +#endif } IntranetRedirectDetector* diff --git a/src/cef/libcef/browser/alloy/chrome_browser_process_alloy.h b/src/cef/libcef/browser/alloy/chrome_browser_process_alloy.h index 1a3fea0944156..b6a9253870c95 --- a/src/cef/libcef/browser/alloy/chrome_browser_process_alloy.h +++ b/src/cef/libcef/browser/alloy/chrome_browser_process_alloy.h @@ -18,6 +18,14 @@ #include "chrome/browser/extensions/event_router_forwarder.h" #include "media/media_buildflags.h" +#if BUILDFLAG(IS_OHOS) +#include "printing/buildflags/buildflags.h" +#if BUILDFLAG(ENABLE_PRINT_PREVIEW) +#include "chrome/browser/printing/background_printing_manager.h" +#include "chrome/browser/printing/print_preview_dialog_controller.h" +#endif +#endif + namespace extensions { class ExtensionsBrowserClient; class ExtensionsClient; @@ -127,10 +135,12 @@ class ChromeBrowserProcessAlloy : public BrowserProcess { std::unique_ptr print_job_manager_; std::unique_ptr profile_manager_; scoped_refptr event_router_forwarder_; +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PRINT_PREVIEW) scoped_refptr print_preview_dialog_controller_; std::unique_ptr background_printing_manager_; +#endif std::unique_ptr local_state_; // Must be destroyed after |local_state_|. std::unique_ptr diff --git a/src/cef/libcef/browser/browser_context.cc b/src/cef/libcef/browser/browser_context.cc index 63793430388b0..0fdd5a18c9d67 --- a/src/cef/libcef/browser/browser_context.cc +++ b/src/cef/libcef/browser/browser_context.cc @@ -8,7 +8,6 @@ #include #include "libcef/browser/context.h" -#include "libcef/browser/media_router/media_router_manager.h" #include "libcef/browser/request_context_impl.h" #include "libcef/browser/thread_util.h" #include "libcef/common/cef_switches.h" @@ -28,6 +27,10 @@ #include "content/public/browser/browser_thread.h" #include "content/public/browser/storage_partition.h" +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) +#include "libcef/browser/media_router/media_router_manager.h" +#endif + using content::BrowserThread; namespace { @@ -212,8 +215,10 @@ void CefBrowserContext::Shutdown() { // Unregister the context first to avoid re-entrancy during shutdown. g_manager.Get().RemoveImpl(this, cache_path_); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) // Destroy objects that may hold references to the MediaRouter. media_router_manager_.reset(); +#endif // Invalidate any Getter references to this object. weak_ptr_factory_.InvalidateWeakPtrs(); @@ -264,6 +269,7 @@ CefBrowserContext* CefBrowserContext::FromProfile(const Profile* profile) { if (cef_context) return cef_context; +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) if (cef::IsChromeRuntimeEnabled()) { auto* original_profile = profile->GetOriginalProfile(); if (original_profile != profile) { @@ -273,6 +279,7 @@ CefBrowserContext* CefBrowserContext::FromProfile(const Profile* profile) { return FromBrowserContext(original_profile); } } +#endif // defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) return nullptr; } @@ -403,6 +410,7 @@ network::mojom::NetworkContext* CefBrowserContext::GetNetworkContext() { return browser_context->GetDefaultStoragePartition()->GetNetworkContext(); } +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) CefMediaRouterManager* CefBrowserContext::GetMediaRouterManager() { CEF_REQUIRE_UIT(); if (!media_router_manager_) { @@ -410,6 +418,7 @@ CefMediaRouterManager* CefBrowserContext::GetMediaRouterManager() { } return media_router_manager_.get(); } +#endif CefBrowserContext::CookieableSchemes CefBrowserContext::GetCookieableSchemes() const { diff --git a/src/cef/libcef/browser/browser_context.h b/src/cef/libcef/browser/browser_context.h index 3bae0202a7521..f8d95ac12f29b --- a/src/cef/libcef/browser/browser_context.h +++ b/src/cef/libcef/browser/browser_context.h @@ -22,6 +22,10 @@ #include "third_party/abseil-cpp/absl/types/optional.h" #include "url/origin.h" +#if BUILDFLAG(IS_OHOS) +#include "media/media_buildflags.h" +#endif + /* // Classes used in request processing (network, storage, service, etc.): // @@ -220,7 +224,9 @@ class CefBrowserContext { scoped_refptr iothread_state_; CookieableSchemes cookieable_schemes_; +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) std::unique_ptr media_router_manager_; +#endif // CefRequestContextImpl objects referencing this object. std::set request_context_set_; diff --git a/src/cef/libcef/browser/browser_context_keyed_service_factories.cc b/src/cef/libcef/browser/browser_context_keyed_service_factories.cc index 32a11de3e1280..a46ac3be4a3f6 --- a/src/cef/libcef/browser/browser_context_keyed_service_factories.cc +++ b/src/cef/libcef/browser/browser_context_keyed_service_factories.cc @@ -6,8 +6,6 @@ #include "libcef/common/extensions/extensions_util.h" #include "chrome/browser/content_settings/cookie_settings_factory.h" -#include "chrome/browser/media/router/chrome_media_router_factory.h" -#include "chrome/browser/plugins/plugin_prefs_factory.h" #include "chrome/browser/profiles/renderer_updater_factory.h" #include "chrome/browser/spellchecker/spellcheck_factory.h" #include "chrome/browser/themes/theme_service_factory.h" @@ -16,12 +14,30 @@ #include "extensions/browser/api/storage/storage_frontend.h" #include "extensions/browser/renderer_startup_helper.h" +#if BUILDFLAG(IS_OHOS) +#include "ppapi/buildflags/buildflags.h" +#if BUILDFLAG(ENABLE_PLUGINS) +#include "chrome/browser/plugins/plugin_prefs_factory.h" +#endif +#endif + +#if BUILDFLAG(IS_OHOS) +#include "media/media_buildflags.h" +#if BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) +#include "chrome/browser/media/router/chrome_media_router_factory.h" +#endif +#endif + namespace cef { void EnsureBrowserContextKeyedServiceFactoriesBuilt() { CookieSettingsFactory::GetInstance(); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) media_router::ChromeMediaRouterFactory::GetInstance(); +#endif +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) PluginPrefsFactory::GetInstance(); +#endif PrefsTabHelper::GetServiceInstance(); RendererUpdaterFactory::GetInstance(); SpellcheckServiceFactory::GetInstance(); diff --git a/src/cef/libcef/browser/browser_host_base.cc b/src/cef/libcef/browser/browser_host_base.cc index 0a046454b0a54..6e2923b34552d --- a/src/cef/libcef/browser/browser_host_base.cc +++ b/src/cef/libcef/browser/browser_host_base.cc @@ -50,6 +50,7 @@ #include "base/strings/string_number_conversions.h" #include "chrome/browser/browser_process.h" #include "content/public/common/mhtml_generation_params.h" +#include "libcef/browser/navigation_state_serializer.h" #include "libcef/browser/javascript/oh_javascript_injector.h" #include "ui/base/resource/resource_bundle.h" #endif @@ -498,6 +499,7 @@ void CefBrowserHostBase::UpdateBrowserSettings( // browser_settings.file_access_from_file_urls; /* ohos webview add*/ settings_.force_dark_mode_enabled = browser_settings.force_dark_mode_enabled; + settings_.dark_prefer_color_scheme_enabled = browser_settings.dark_prefer_color_scheme_enabled; settings_.javascript_can_open_windows_automatically = browser_settings.javascript_can_open_windows_automatically; settings_.loads_images_automatically = @@ -519,6 +521,10 @@ void CefBrowserHostBase::UpdateBrowserSettings( settings_.viewport_meta_enabled = browser_settings.viewport_meta_enabled; settings_.user_gesture_required = browser_settings.user_gesture_required; settings_.pinch_smooth_mode = browser_settings.pinch_smooth_mode; +#if BUILDFLAG(IS_OHOS) + settings_.hide_vertical_scrollbars = browser_settings.hide_vertical_scrollbars; + settings_.hide_horizontal_scrollbars = browser_settings.hide_horizontal_scrollbars; +#endif } void CefBrowserHostBase::SetWebPreferences( @@ -721,8 +727,7 @@ CefString CefBrowserHostBase::GetOriginalUrl() { void CefBrowserHostBase::PutNetworkAvailable(bool available) { auto frame = GetMainFrame(); if (frame && frame->IsValid()) { - static_cast(frame.get()) - ->SetJsOnlineProperty(available); + static_cast(frame.get())->SetJsOnlineProperty(available); } } @@ -767,7 +772,8 @@ void CefBrowserHostBase::ExitFullScreen() { return; } wc->GetMainFrame()->AllowInjectingJavaScript(); - std::string jscode("{if(document.fullscreenElement){document.exitFullscreen()}}"); + std::string jscode( + "{if(document.fullscreenElement){document.exitFullscreen()}}"); wc->GetMainFrame()->ExecuteJavaScript(base::UTF8ToUTF16(jscode), base::NullCallback()); } @@ -975,6 +981,59 @@ void CefBrowserHostBase::RemoveCache(bool include_disk_files) { return; } } +void CefBrowserHostBase::ScrollPageUpDown(bool is_up, + bool is_half, + float view_height) { + auto frame = GetMainFrame(); + if (frame && frame->IsValid()) { + static_cast(frame.get()) + ->ScrollPageUpDown(is_up, is_half, view_height); + } +} + +void CefBrowserHostBase::ScrollTo(float x, + float y) { + auto frame = GetMainFrame(); + if (frame && frame->IsValid()) { + static_cast(frame.get()) + ->ScrollTo(x, y); + } +} + +void CefBrowserHostBase::ScrollBy(float delta_x, + float delta_y) { + auto frame = GetMainFrame(); + if (frame && frame->IsValid()) { + static_cast(frame.get()) + ->ScrollBy(delta_x, delta_y); + } +} + +void CefBrowserHostBase::SlideScroll(float vx, + float vy) { + auto frame = GetMainFrame(); + if (frame && frame->IsValid()) { + static_cast(frame.get()) + ->SlideScroll(vx, vy); + } +} + +CefRefPtr CefBrowserHostBase::GetWebState() { + auto web_contents = GetWebContents(); + if (!web_contents) { + return nullptr; + } + + return NavigationStateSerializer::WriteNavigationStatus(*web_contents); +} + +bool CefBrowserHostBase::RestoreWebState(const CefRefPtr state) { + auto web_contents = GetWebContents(); + if (!web_contents || !state) { + return false; + } + return NavigationStateSerializer::RestoreNavigationStatus(*web_contents, state); +} #endif // IS_OHOS void CefBrowserHostBase::StopLoad() { @@ -1539,19 +1598,32 @@ void CefBrowserHostBase::ClosePort(CefString& portHandle) { } void CefBrowserHostBase::PostPortMessage(CefString& portHandle, - CefString& data) { + CefRefPtr data) { auto web_contents = GetWebContents(); if (!web_contents) { LOG(ERROR) << "GetWebContents null"; return; } - std::u16string message(base::UTF8ToUTF16(data.ToString())); + blink::WebMessagePort::Message message; + if (data->GetType() == VTYPE_STRING) { + message = blink::WebMessagePort::Message(base::UTF8ToUTF16(data->GetString().ToString())); + } else if (data->GetType() == VTYPE_BINARY) { + CefRefPtr binValue = data->GetBinary(); + size_t len = binValue->GetSize(); + std::vector arr(len); + binValue->GetData(&arr[0], len, 0); + message = blink::WebMessagePort::Message(std::move(arr)); + } else { + LOG(ERROR) << "CefBrowserHostBase::PostPortMessage not support type"; + return; + } + // find the WebMessagePort in map for (auto iter = portMap_.begin(); iter != portMap_.end(); ++iter) { if (portHandle.ToString().compare(std::to_string(iter->first.first)) == 0) { if (iter->second.first.CanPostMessage()) { - iter->second.first.PostMessage(blink::WebMessagePort::Message(message)); + iter->second.first.PostMessage(std::move(message)); } else { LOG(ERROR) << "port can not post messsage"; } @@ -1559,8 +1631,7 @@ void CefBrowserHostBase::PostPortMessage(CefString& portHandle, } else if (portHandle.ToString().compare( std::to_string(iter->first.second)) == 0) { if (iter->second.second.CanPostMessage()) { - iter->second.second.PostMessage( - blink::WebMessagePort::Message(message)); + iter->second.second.PostMessage(std::move(message)); } else { LOG(ERROR) << "port can not post messsage"; } @@ -1574,7 +1645,7 @@ void CefBrowserHostBase::PostPortMessage(CefString& portHandle, // WebMessagePort of the pipe. void CefBrowserHostBase::SetPortMessageCallback( CefString& portHandle, - CefRefPtr callback) { + CefRefPtr callback) { auto web_contents = GetWebContents(); if (!web_contents) { LOG(ERROR) << "GetWebContents null"; @@ -1640,7 +1711,7 @@ WebMessageReceiverImpl::~WebMessageReceiverImpl() { } void WebMessageReceiverImpl::SetOnMessageCallback( - CefRefPtr callback) { + CefRefPtr callback) { LOG(INFO) << "WebMessageReceiverImpl::SetOnMessageCallback "; callback_ = callback; } @@ -1650,9 +1721,17 @@ bool WebMessageReceiverImpl::OnMessage(blink::WebMessagePort::Message message) { LOG(INFO) << "OnMessage start"; // Pass the message on to the receiver. if (callback_) { - LOG(INFO) << "OnMessage:" << message.data; - std::u16string data = message.data; - callback_->OnJavaScriptExeResult(base::UTF16ToUTF8(data)); + CefRefPtr data = CefValue::Create(); + if (!message.data.empty()) { + data->SetString(base::UTF16ToUTF8(message.data)); + } else { + std::vector vecBinary = message.array_buffer; + CefRefPtr value = + CefBinaryValue::Create(vecBinary.data(), vecBinary.size()); + data->SetBinary(value); + } + + callback_->OnMessage(data); } else { LOG(ERROR) << "u should set callback to receive message"; } @@ -1717,8 +1796,10 @@ void CefBrowserHostBase::LoadWithDataAndBaseUrl(const CefString& baseUrl, const CefString& encoding, const CefString& historyUrl) { if (!CEF_CURRENTLY_ON_UIT()) { - CEF_POST_TASK(CEF_UIT, base::BindOnce(&CefBrowserHostBase::LoadWithDataAndBaseUrl, - this, baseUrl, data, mimeType, encoding, historyUrl)); + CEF_POST_TASK( + CEF_UIT, + base::BindOnce(&CefBrowserHostBase::LoadWithDataAndBaseUrl, this, + baseUrl, data, mimeType, encoding, historyUrl)); return; } std::string dataBase = data.empty() ? "" : data; @@ -1761,7 +1842,7 @@ void CefBrowserHostBase::LoadWithData(const CefString& data, const CefString& encoding) { if (!CEF_CURRENTLY_ON_UIT()) { CEF_POST_TASK(CEF_UIT, base::BindOnce(&CefBrowserHostBase::LoadWithData, - this, data, mimeType, encoding)); + this, data, mimeType, encoding)); return; } std::string dataBase = data.empty() ? "" : data; @@ -1835,6 +1916,48 @@ bool CefBrowserHostBase::GetWebDebuggingAccess() { return is_web_debugging_access_; } +#if BUILDFLAG(IS_OHOS) +void CefBrowserHostBase::SetFileAccess(bool flag) { + base::AutoLock lock_scope(state_lock_); + if (file_access_ == flag) { + return; + } + file_access_ = flag; +} + +void CefBrowserHostBase::SetBlockNetwork(bool flag) { + base::AutoLock lock_scope(state_lock_); + if (network_blocked_ == flag) { + return; + } + network_blocked_ = flag; +} + +void CefBrowserHostBase::SetCacheMode(int flag) { + base::AutoLock lock_scope(state_lock_); + if (cache_mode_ == flag) { + return; + } + cache_mode_ = flag; +} + + +bool CefBrowserHostBase::GetFileAccess() { + base::AutoLock lock_scope(state_lock_); + return file_access_; +} + +bool CefBrowserHostBase::GetBlockNetwork() { + base::AutoLock lock_scope(state_lock_); + return network_blocked_; +} + +int CefBrowserHostBase::GetCacheMode() { + base::AutoLock lock_scope(state_lock_); + return cache_mode_; +} +#endif + void CefBrowserHostBase::GetImageForContextNode() { auto frame = GetMainFrame(); if (frame && frame->IsValid()) { diff --git a/src/cef/libcef/browser/browser_host_base.h b/src/cef/libcef/browser/browser_host_base.h index a098827de9f05..a752ef2c3a23d --- a/src/cef/libcef/browser/browser_host_base.h +++ b/src/cef/libcef/browser/browser_host_base.h @@ -108,10 +108,10 @@ class WebMessageReceiverImpl : public blink::WebMessagePort::MessageReceiver { // WebMessagePort::MessageReceiver implementation: bool OnMessage(blink::WebMessagePort::Message message) override; - void SetOnMessageCallback(CefRefPtr callback); + void SetOnMessageCallback(CefRefPtr callback); private: - CefRefPtr callback_; + CefRefPtr callback_; }; struct CefHitData { @@ -239,6 +239,12 @@ class CefBrowserHostBase : public CefBrowserHost, CefString GetOriginalUrl() override; void PutNetworkAvailable(bool available) override; void RemoveCache(bool include_disk_files) override; + CefRefPtr GetWebState() override; + bool RestoreWebState(const CefRefPtr state) override; + void ScrollPageUpDown(bool is_up, bool is_half, float view_height) override; + void ScrollTo(float x, float y) override; + void ScrollBy(float delta_x, float delta_y) override; + void SlideScroll(float vx, float vy) override; /* ohos webview end */ #endif @@ -276,10 +282,10 @@ class CefBrowserHostBase : public CefBrowserHost, std::vector& ports, CefString& targetUri) override; void ClosePort(CefString& port_handle) override; - void PostPortMessage(CefString& port_handle, CefString& data) override; + void PostPortMessage(CefString& port_handle, CefRefPtr message) override; void SetPortMessageCallback( CefString& port_handle, - CefRefPtr callback) override; + CefRefPtr callback) override; void DestroyAllWebMessagePorts() override; #endif CefString Title() override; @@ -409,6 +415,18 @@ class CefBrowserHostBase : public CefBrowserHost, void SetWebDebuggingAccess(bool isEnableDebug) override; bool GetWebDebuggingAccess() override; +#if BUILDFLAG(IS_OHOS) + void SetFileAccess(bool flag) override; + void SetBlockNetwork(bool flag) override; + void SetCacheMode(int flag) override; + bool GetFileAccess(); + bool GetBlockNetwork(); + int GetCacheMode(); + bool file_access_ = false; + bool network_blocked_ = false; + int cache_mode_ = 0; +#endif + #if BUILDFLAG(IS_OHOS) bool ShouldShowLoadingUI() override; #endif diff --git a/src/cef/libcef/browser/browser_host_create.cc b/src/cef/libcef/browser/browser_host_create.cc index 21742d9599e16..60d14a5d4b9ae --- a/src/cef/libcef/browser/browser_host_create.cc +++ b/src/cef/libcef/browser/browser_host_create.cc @@ -5,11 +5,14 @@ #include "include/cef_browser.h" #include "libcef/browser/alloy/alloy_browser_host_impl.h" -#include "libcef/browser/chrome/chrome_browser_host_impl.h" #include "libcef/browser/context.h" #include "libcef/browser/thread_util.h" #include "libcef/features/runtime.h" +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) +#include "libcef/browser/chrome/chrome_browser_host_impl.h" +#endif // defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) + namespace { class CreateBrowserHelper { @@ -138,10 +141,12 @@ CefRefPtr CefBrowserHost::CreateBrowserSync( // static CefRefPtr CefBrowserHostBase::Create( CefBrowserCreateParams& create_params) { +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) if (cef::IsChromeRuntimeEnabled()) { auto browser = ChromeBrowserHostImpl::Create(create_params); return browser.get(); } +#endif // defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) auto browser = AlloyBrowserHostImpl::Create(create_params); return browser.get(); diff --git a/src/cef/libcef/browser/browser_platform_delegate.cc b/src/cef/libcef/browser/browser_platform_delegate.cc index d5ef0e763cfe8..d3f93c844f946 --- a/src/cef/libcef/browser/browser_platform_delegate.cc +++ b/src/cef/libcef/browser/browser_platform_delegate.cc @@ -393,6 +393,18 @@ void CefBrowserPlatformDelegate::StopFinding(bool clearSelection) { NOTIMPLEMENTED(); } +void CefBrowserPlatformDelegate::ShowPopupMenu( + mojo::PendingRemote popup_client, + const gfx::Rect& bounds, + int item_height, + double item_font_size, + int selected_item, + std::vector menu_items, + bool right_aligned, + bool allow_multiple_selection) { + NOTIMPLEMENTED(); +} + // static int CefBrowserPlatformDelegate::TranslateWebEventModifiers( uint32 cef_modifiers) { diff --git a/src/cef/libcef/browser/browser_platform_delegate.h b/src/cef/libcef/browser/browser_platform_delegate.h index fbcb7521503ec..f69fa5b0c42e1 --- a/src/cef/libcef/browser/browser_platform_delegate.h +++ b/src/cef/libcef/browser/browser_platform_delegate.h @@ -17,6 +17,7 @@ #include "base/callback_forward.h" #include "extensions/common/mojom/view_type.mojom-forward.h" #include "third_party/blink/public/common/page/drag_operation.h" +#include "third_party/blink/public/mojom/choosers/popup_menu.mojom.h" #include "third_party/blink/public/mojom/drag/drag.mojom-forward.h" #include "third_party/skia/include/core/SkColor.h" #include "ui/base/dragdrop/mojom/drag_drop_types.mojom-forward.h" @@ -359,6 +360,15 @@ class CefBrowserPlatformDelegate { bool findNext, bool newSession); virtual void StopFinding(bool clearSelection); + virtual void ShowPopupMenu( + mojo::PendingRemote popup_client, + const gfx::Rect& bounds, + int item_height, + double item_font_size, + int selected_item, + std::vector menu_items, + bool right_aligned, + bool allow_multiple_selection); protected: // Allow deletion via std::unique_ptr only. diff --git a/src/cef/libcef/browser/browser_platform_delegate_create.cc b/src/cef/libcef/browser/browser_platform_delegate_create.cc index da158b2a3a659..8c2723bb11048 --- a/src/cef/libcef/browser/browser_platform_delegate_create.cc +++ b/src/cef/libcef/browser/browser_platform_delegate_create.cc @@ -12,7 +12,6 @@ #include "build/build_config.h" #include "libcef/browser/browser_host_base.h" -#include "libcef/browser/chrome/browser_platform_delegate_chrome.h" #include "libcef/browser/extensions/browser_platform_delegate_background.h" #include "libcef/features/runtime_checks.h" @@ -30,10 +29,16 @@ #endif #if defined(TOOLKIT_VIEWS) +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) #include "libcef/browser/chrome/views/browser_platform_delegate_chrome_views.h" +#endif // defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) #include "libcef/browser/views/browser_platform_delegate_views.h" #endif +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) +#include "libcef/browser/chrome/browser_platform_delegate_chrome.h" +#endif // defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) + namespace { std::unique_ptr CreateNativeDelegate( @@ -79,6 +84,7 @@ std::unique_ptr CefBrowserPlatformDelegate::Create( const SkColor background_color = CefContext::Get()->GetBackgroundColor( &create_params.settings, is_windowless ? STATE_ENABLED : STATE_DISABLED); +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) if (cef::IsChromeRuntimeEnabled()) { // CefWindowInfo is not used in this case. std::unique_ptr native_delegate = @@ -94,6 +100,7 @@ std::unique_ptr CefBrowserPlatformDelegate::Create( return std::make_unique( std::move(native_delegate)); } +#endif // defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) if (create_params.window_info) { std::unique_ptr native_delegate = diff --git a/src/cef/libcef/browser/context_menu_params_impl.cc b/src/cef/libcef/browser/context_menu_params_impl.cc index c8d817852b2a3..3cff40a84c1d0 --- a/src/cef/libcef/browser/context_menu_params_impl.cc +++ b/src/cef/libcef/browser/context_menu_params_impl.cc @@ -147,3 +147,14 @@ bool CefContextMenuParamsImpl::IsCustomMenu() { CEF_VALUE_VERIFY_RETURN(false, false); return !const_value().custom_items.empty(); } + +CefContextMenuParamsImpl::InputFieldType CefContextMenuParamsImpl::GetInputFieldType() { + CEF_VALUE_VERIFY_RETURN(false, CM_INPUTFIELDTYPE_NONE); + return static_cast(const_value().input_field_type); +} + +CefContextMenuParamsImpl::SourceType CefContextMenuParamsImpl::GetSourceType() { + CEF_VALUE_VERIFY_RETURN(false, CM_SOURCETYPE_NONE); + return static_cast(const_value().source_type); +} + diff --git a/src/cef/libcef/browser/context_menu_params_impl.h b/src/cef/libcef/browser/context_menu_params_impl.h index 782848a03b7dd..eedb81e10f9ba --- a/src/cef/libcef/browser/context_menu_params_impl.h +++ b/src/cef/libcef/browser/context_menu_params_impl.h @@ -41,6 +41,8 @@ class CefContextMenuParamsImpl bool IsSpellCheckEnabled() override; EditStateFlags GetEditStateFlags() override; bool IsCustomMenu() override; + InputFieldType GetInputFieldType() override; + SourceType GetSourceType() override; }; #endif // CEF_LIBCEF_BROWSER_CONTEXT_MENU_PARAMS_IMPL_H_ diff --git a/src/cef/libcef/browser/extensions/browser_extensions_util.cc b/src/cef/libcef/browser/extensions/browser_extensions_util.cc index 74e94b9e26fc7..aff6b30e85345 --- a/src/cef/libcef/browser/extensions/browser_extensions_util.cc +++ b/src/cef/libcef/browser/extensions/browser_extensions_util.cc @@ -23,6 +23,10 @@ #include "content/public/browser/render_view_host.h" #include "extensions/browser/extension_registry.h" +#if BUILDFLAG(IS_OHOS) +#include "printing/buildflags/buildflags.h" +#endif + namespace extensions { namespace { @@ -52,10 +56,14 @@ content::WebContents* GetOwnerForGuestContents(content::WebContents* guest) { return plugin_guest->owner_web_contents(); } +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PRINT_PREVIEW) // Maybe it's a print preview dialog. auto print_preview_controller = g_browser_process->print_preview_dialog_controller(); return print_preview_controller->GetInitiator(guest); +#else + return nullptr; +#endif } CefRefPtr GetOwnerBrowserForGlobalId( diff --git a/src/cef/libcef/browser/extensions/component_extension_resource_manager.cc b/src/cef/libcef/browser/extensions/component_extension_resource_manager.cc index 4c8f5666fb962..b9d1f2e716fda --- a/src/cef/libcef/browser/extensions/component_extension_resource_manager.cc +++ b/src/cef/libcef/browser/extensions/component_extension_resource_manager.cc @@ -8,23 +8,33 @@ #include "base/logging.h" #include "base/path_service.h" #include "base/values.h" -#include "chrome/browser/pdf/pdf_extension_util.h" #include "chrome/common/chrome_paths.h" #include "chrome/grit/component_extension_resources_map.h" -#include "chrome/grit/pdf_resources_map.h" #include "extensions/common/constants.h" +#if BUILDFLAG(IS_OHOS) +#include "pdf/buildflags.h" +#if BUILDFLAG(ENABLE_PDF) +#include "chrome/browser/pdf/pdf_extension_util.h" +#include "chrome/grit/pdf_resources_map.h" +#endif +#endif + namespace extensions { CefComponentExtensionResourceManager::CefComponentExtensionResourceManager() { AddComponentResourceEntries(kComponentExtensionResources, kComponentExtensionResourcesSize); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PDF) AddComponentResourceEntries(kPdfResources, kPdfResourcesSize); +#endif base::Value dict(base::Value::Type::DICTIONARY); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PDF) pdf_extension_util::AddStrings( pdf_extension_util::PdfViewerContext::kPdfViewer, &dict); pdf_extension_util::AddAdditionalData(/*enable_annotations=*/true, &dict); +#endif ui::TemplateReplacements pdf_viewer_replacements; ui::TemplateReplacementsFromDictionaryValue( diff --git a/src/cef/libcef/browser/extensions/extension_system.cc b/src/cef/libcef/browser/extensions/extension_system.cc index 21cfc861c382f..3f54b1fe7d5f5 --- a/src/cef/libcef/browser/extensions/extension_system.cc +++ b/src/cef/libcef/browser/extensions/extension_system.cc @@ -21,7 +21,6 @@ #include "base/strings/string_tokenizer.h" #include "base/strings/utf_string_conversions.h" #include "base/threading/thread_restrictions.h" -#include "chrome/browser/pdf/pdf_extension_util.h" #include "chrome/browser/profiles/profile.h" #include "chrome/common/chrome_paths.h" #include "components/crx_file/id_util.h" @@ -31,7 +30,6 @@ #include "content/public/browser/notification_details.h" #include "content/public/browser/notification_service.h" #include "content/public/browser/notification_source.h" -#include "content/public/browser/plugin_service.h" #include "content/public/browser/render_process_host.h" #include "extensions/browser/api/app_runtime/app_runtime_api.h" #include "extensions/browser/extension_prefs.h" @@ -52,6 +50,20 @@ #include "extensions/common/switches.h" #include "net/base/mime_util.h" +#if BUILDFLAG(IS_OHOS) +#include "ppapi/buildflags/buildflags.h" +#if BUILDFLAG(ENABLE_PLUGINS) +#include "content/public/browser/plugin_service.h" +#endif +#endif + +#if BUILDFLAG(IS_OHOS) +#include "pdf/buildflags.h" +#if BUILDFLAG(ENABLE_PDF) +#include "chrome/browser/pdf/pdf_extension_util.h" +#endif +#endif + using content::BrowserContext; namespace extensions { @@ -263,11 +275,13 @@ void CefExtensionSystem::Init() { // the guest WebContents will be destroyed. This triggers a call to // CefMimeHandlerViewGuestDelegate::OnGuestDetached which removes the // routing ID association with the owner CefBrowser. +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PDF) if (PdfExtensionEnabled()) { LoadExtension(ParseManifest(pdf_extension_util::GetManifest()), base::FilePath(FILE_PATH_LITERAL("pdf")), true /* internal */, nullptr, nullptr); } +#endif initialized_ = true; } @@ -683,10 +697,12 @@ void CefExtensionSystem::NotifyExtensionLoaded(const Extension* extension) { } info.mime_types.push_back(mime_type_info); } +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) content::PluginService* plugin_service = content::PluginService::GetInstance(); plugin_service->RefreshPlugins(); plugin_service->RegisterInternalPlugin(info, true); +#endif } } @@ -707,10 +723,12 @@ void CefExtensionSystem::NotifyExtensionUnloaded( if (handler && !handler->handler_url().empty()) { base::FilePath path = base::FilePath::FromUTF8Unsafe(extension->url().spec()); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) content::PluginService* plugin_service = content::PluginService::GetInstance(); plugin_service->UnregisterInternalPlugin(path); plugin_service->RefreshPlugins(); +#endif } registry_->TriggerOnUnloaded(extension, reason); diff --git a/src/cef/libcef/browser/extensions/extensions_api_client.cc b/src/cef/libcef/browser/extensions/extensions_api_client.cc index 97976cdebb1a1..9dd257baa66b6 --- a/src/cef/libcef/browser/extensions/extensions_api_client.cc +++ b/src/cef/libcef/browser/extensions/extensions_api_client.cc @@ -11,16 +11,29 @@ #include "libcef/browser/extensions/api/storage/sync_value_store_cache.h" #include "libcef/browser/extensions/extension_web_contents_observer.h" #include "libcef/browser/extensions/mime_handler_view_guest_delegate.h" -#include "libcef/browser/printing/print_view_manager.h" #include "base/memory/ptr_util.h" -#include "chrome/browser/ui/pdf/chrome_pdf_web_contents_helper_client.h" #include "chrome/browser/ui/prefs/prefs_tab_helper.h" -#include "components/pdf/browser/pdf_web_contents_helper.h" #include "components/zoom/zoom_controller.h" #include "extensions/browser/guest_view/extensions_guest_view_manager_delegate.h" #include "printing/mojom/print.mojom.h" +#if BUILDFLAG(IS_OHOS) +#include "printing/buildflags/buildflags.h" +#if BUILDFLAG(ENABLE_PRINT_PREVIEW) +#include "libcef/browser/printing/print_view_manager.h" +#endif +#endif + +#if BUILDFLAG(IS_OHOS) +#include "pdf/buildflags.h" +#endif + +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PDF) +#include "chrome/browser/ui/pdf/chrome_pdf_web_contents_helper_client.h" +#include "components/pdf/browser/pdf_web_contents_helper.h" +#endif + namespace extensions { CefExtensionsAPIClient::CefExtensionsAPIClient() {} @@ -51,12 +64,16 @@ CefExtensionsAPIClient::CreateMimeHandlerViewGuestDelegate( void CefExtensionsAPIClient::AttachWebContentsHelpers( content::WebContents* web_contents) const { PrefsTabHelper::CreateForWebContents(web_contents); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PRINT_PREVIEW) printing::CefPrintViewManager::CreateForWebContents(web_contents); +#endif +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PDF) // Used by the PDF extension. pdf::PDFWebContentsHelper::CreateForWebContentsWithClient( web_contents, std::unique_ptr( new ChromePDFWebContentsHelperClient())); +#endif // Used by the tabs extension API. zoom::ZoomController::CreateForWebContents(web_contents); diff --git a/src/cef/libcef/browser/frame_host_impl.cc b/src/cef/libcef/browser/frame_host_impl.cc index ade8f9f6996c8..b79a4ee9f5857 --- a/src/cef/libcef/browser/frame_host_impl.cc +++ b/src/cef/libcef/browser/frame_host_impl.cc @@ -294,11 +294,12 @@ void CefFrameHostImpl::RefreshAttributes() { } void CefFrameHostImpl::UpdateLocale(const CefString& locale) { - SendToRenderFrame(__FUNCTION__, - base::BindOnce([](const std::string& locale, - const RenderFrameType& render_frame) { - render_frame->UpdateLocale(locale); - }, locale.ToString())); + SendToRenderFrame(__FUNCTION__, base::BindOnce( + [](const std::string& locale, + const RenderFrameType& render_frame) { + render_frame->UpdateLocale(locale); + }, + locale.ToString())); } void CefFrameHostImpl::NotifyMoveOrResizeStarted() { @@ -779,12 +780,13 @@ void CefFrameHostImpl::SetInitialScale(float scale) { } void CefFrameHostImpl::SetJsOnlineProperty(bool network_up) { - SendToRenderFrame(__FUNCTION__, - base::BindOnce( - [](bool network_up, const RenderFrameType& render_frame) { - render_frame->SetJsOnlineProperty(network_up); - }, - network_up)); + SendToRenderFrame( + __FUNCTION__, + base::BindOnce( + [](bool network_up, const RenderFrameType& render_frame) { + render_frame->SetJsOnlineProperty(network_up); + }, + network_up)); } void CefFrameHostImpl::GetImageForContextNode() { @@ -804,16 +806,17 @@ void CefFrameHostImpl::PutZoomingForTextFactor(float factor) { factor)); } -void CefFrameHostImpl::GetImagesCallback(CefRefPtr frame, - CefRefPtr callback, bool response) { +void CefFrameHostImpl::GetImagesCallback( + CefRefPtr frame, + CefRefPtr callback, + bool response) { if (auto browser = frame->GetBrowser()) { callback->GetImages(response); } } void CefFrameHostImpl::GetImagesWithResponse( - cef::mojom::RenderFrame::GetImagesWithResponseCallback - response_callback) { + cef::mojom::RenderFrame::GetImagesWithResponseCallback response_callback) { SendToRenderFrame( __FUNCTION__, base::BindOnce( @@ -826,17 +829,16 @@ void CefFrameHostImpl::GetImagesWithResponse( } void CefFrameHostImpl::GetImages(CefRefPtr callback) { - GetImagesWithResponse( - base::BindOnce(&CefFrameHostImpl::GetImagesCallback, base::Unretained(this), - CefRefPtr(this), callback)); + GetImagesWithResponse(base::BindOnce( + &CefFrameHostImpl::GetImagesCallback, base::Unretained(this), + CefRefPtr(this), callback)); } void CefFrameHostImpl::RemoveCache(bool include_disk_files) { SendToRenderFrame(__FUNCTION__, - base::BindOnce( - [](const RenderFrameType& render_frame) { - render_frame->RemoveCache(); - })); + base::BindOnce([](const RenderFrameType& render_frame) { + render_frame->RemoveCache(); + })); if (include_disk_files) { auto browser = GetBrowserHostBase(); @@ -857,9 +859,55 @@ void CefFrameHostImpl::RemoveCache(bool include_disk_files) { base::Time(), base::Time::Max(), content::BrowsingDataRemover::DATA_TYPE_CACHE, content::BrowsingDataRemover::ORIGIN_TYPE_UNPROTECTED_WEB | - content::BrowsingDataRemover::ORIGIN_TYPE_PROTECTED_WEB); + content::BrowsingDataRemover::ORIGIN_TYPE_PROTECTED_WEB); } } + +void CefFrameHostImpl::ScrollPageUpDown(bool is_up, + bool is_half, + float view_height) { + SendToRenderFrame(__FUNCTION__, + base::BindOnce( + [](bool is_up, bool is_half, float view_height, + const RenderFrameType& render_frame) { + render_frame->ScrollPageUpDown(is_up, is_half, + view_height); + }, + is_up, is_half, view_height)); +} + +void CefFrameHostImpl::ScrollTo(float x, + float y) { + SendToRenderFrame(__FUNCTION__, + base::BindOnce( + [](float x, float y, + const RenderFrameType& render_frame) { + render_frame->ScrollTo(x, y); + }, + x, y)); +} + +void CefFrameHostImpl::ScrollBy(float delta_x, + float delta_y) { + SendToRenderFrame(__FUNCTION__, + base::BindOnce( + [](float delta_x, float delta_y, + const RenderFrameType& render_frame) { + render_frame->ScrollBy(delta_x, delta_y); + }, + delta_x, delta_y)); +} + +void CefFrameHostImpl::SlideScroll(float vx, + float vy) { + SendToRenderFrame(__FUNCTION__, + base::BindOnce( + [](float vx, float vy, + const RenderFrameType& render_frame) { + render_frame->SlideScroll(vx, vy); + }, + vx, vy)); +} #endif // BUILDFLAG(IS_OHOS) void CefExecuteJavaScriptWithUserGestureForTests(CefRefPtr frame, diff --git a/src/cef/libcef/browser/frame_host_impl.h b/src/cef/libcef/browser/frame_host_impl.h index 00f0918d783d5..5a43da2de74a0 --- a/src/cef/libcef/browser/frame_host_impl.h +++ b/src/cef/libcef/browser/frame_host_impl.h @@ -169,7 +169,10 @@ class CefFrameHostImpl : public CefFrame, public cef::mojom::BrowserFrame { response_callback); void GetImages(CefRefPtr callback) override; void RemoveCache(bool include_disk_files); - + void ScrollPageUpDown(bool is_up, bool is_half, float view_height); + void ScrollTo(float x, float y); + void ScrollBy(float delta_x, float delta_y); + void SlideScroll(float vx, float vy); #endif // BUILDFLAG(IS_OHOS) static const int64_t kMainFrameId; diff --git a/src/cef/libcef/browser/main_runner.cc b/src/cef/libcef/browser/main_runner.cc index d4284ee6c27e8..4de525d6b94ce --- a/src/cef/libcef/browser/main_runner.cc +++ b/src/cef/libcef/browser/main_runner.cc @@ -9,7 +9,6 @@ #include "libcef/browser/thread_util.h" #include "libcef/common/alloy/alloy_main_runner_delegate.h" #include "libcef/common/cef_switches.h" -#include "libcef/common/chrome/chrome_main_runner_delegate.h" #include "libcef/features/runtime.h" #include "base/at_exit.h" @@ -40,12 +39,18 @@ #include "third_party/crashpad/crashpad/handler/handler_main.h" #endif +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) +#include "libcef/common/chrome/chrome_main_runner_delegate.h" +#endif // defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) + namespace { enum class RuntimeType { UNINITIALIZED, ALLOY, +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) CHROME, +#endif // defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) }; RuntimeType g_runtime_type = RuntimeType::UNINITIALIZED; @@ -54,6 +59,7 @@ std::unique_ptr MakeDelegate( CefMainRunnerHandler* runner, CefSettings* settings, CefRefPtr application) { +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) if (type == RuntimeType::ALLOY) { g_runtime_type = RuntimeType::ALLOY; return std::make_unique(runner, settings, @@ -63,6 +69,11 @@ std::unique_ptr MakeDelegate( return std::make_unique(runner, settings, application); } +#else + g_runtime_type = RuntimeType::ALLOY; + return std::make_unique(runner, settings, + application); +#endif // defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) } #if BUILDFLAG(IS_MAC) || BUILDFLAG(IS_WIN) @@ -229,9 +240,13 @@ bool CefMainRunner::Initialize(CefSettings* settings, bool* initialized, base::OnceClosure context_initialized) { DCHECK(!main_delegate_); +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) main_delegate_ = MakeDelegate( settings->chrome_runtime ? RuntimeType::CHROME : RuntimeType::ALLOY, this, settings, application); +#else + main_delegate_ = MakeDelegate(RuntimeType::ALLOY, this, settings, application); +#endif // defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) const int exit_code = ContentMainInitialize(args, windows_sandbox_info, &settings->no_sandbox); @@ -318,9 +333,13 @@ int CefMainRunner::RunAsHelperProcess(const CefMainArgs& args, if (process_type.empty()) return -1; +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) auto runtime_type = command_line.HasSwitch(switches::kEnableChromeRuntime) ? RuntimeType::CHROME : RuntimeType::ALLOY; +#else + auto runtime_type = RuntimeType::ALLOY; +#endif // defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) auto main_delegate = MakeDelegate(runtime_type, /*runner=*/nullptr, /*settings=*/nullptr, application); main_delegate->BeforeExecuteProcess(args); @@ -536,7 +555,11 @@ bool IsAlloyRuntimeEnabled() { } bool IsChromeRuntimeEnabled() { +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) return g_runtime_type == RuntimeType::CHROME; +#else + return false; +#endif // defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) } } // namespace cef diff --git a/src/cef/libcef/browser/menu_manager.cc b/src/cef/libcef/browser/menu_manager.cc index 2ad53d395c385..879b0f449f186 --- a/src/cef/libcef/browser/menu_manager.cc +++ b/src/cef/libcef/browser/menu_manager.cc @@ -21,9 +21,15 @@ #include "content/public/browser/render_process_host.h" #include "content/public/browser/render_widget_host_view.h" #include "third_party/blink/public/mojom/context_menu/context_menu.mojom.h" +#include "ui/base/clipboard/clipboard.h" +#include "ui/base/data_transfer_policy/data_transfer_endpoint.h" namespace { +constexpr cef_context_menu_edit_state_flags_t kMenuCommands[] = { + CM_EDITFLAG_CAN_CUT, CM_EDITFLAG_CAN_COPY, CM_EDITFLAG_CAN_PASTE, + CM_EDITFLAG_CAN_DELETE, CM_EDITFLAG_CAN_SELECT_ALL}; + CefString GetLabel(int message_id) { std::u16string label = CefAppManager::Get()->GetContentClient()->GetLocalizedString(message_id); @@ -120,6 +126,53 @@ bool CefMenuManager::IsShowingContextMenu() { return web_contents()->IsShowingContextMenu(); } +bool CefMenuManager::IsCommandIdEnabled(int command_id, + content::ContextMenuParams& params) const { + bool editable = params.is_editable; + bool readable = params.input_field_type != blink::mojom::ContextMenuDataInputFieldType::kPassword; + bool has_selection = !params.selection_text.empty(); + bool has_image_contents = params.has_image_contents; + + switch (command_id) { + case CM_EDITFLAG_CAN_CUT: + case CM_EDITFLAG_CAN_DELETE: + return editable && readable && has_selection; + case CM_EDITFLAG_CAN_COPY: + return readable && (has_selection || has_image_contents); + case CM_EDITFLAG_CAN_PASTE: { + std::u16string result; + bool can_paste = false; + ui::DataTransferEndpoint data_dst = ui::DataTransferEndpoint( + ui::EndpointType::kDefault, false); + ui::Clipboard::GetForCurrentThread()->ReadText( + ui::ClipboardBuffer::kCopyPaste, &data_dst, &result); + + if (result.empty()) { + can_paste = ui::Clipboard::GetForCurrentThread()->IsFormatAvailable( + ui::ClipboardFormatType::BitmapType(), + ui::ClipboardBuffer::kCopyPaste, &data_dst); + } + can_paste = can_paste ? can_paste : !result.empty(); + return editable && can_paste; + } + case CM_EDITFLAG_CAN_SELECT_ALL: + return editable || readable; + default: + return false; + } +} + +void CefMenuManager::UpdateMenuEditStateFlags(content::ContextMenuParams& params) { + int menu_flags = 0; + for (const auto& command : kMenuCommands) { + if (IsCommandIdEnabled(command, params)) { + menu_flags |= command; + } + } + + params.edit_flags = menu_flags; +} + bool CefMenuManager::CreateContextMenu( const content::ContextMenuParams& params) { // The renderer may send the "show context menu" message multiple times, one @@ -134,6 +187,7 @@ bool CefMenuManager::CreateContextMenu( params_ = params; model_->Clear(); + UpdateMenuEditStateFlags(params_); // Create the default menu model. CreateDefaultModel(); diff --git a/src/cef/libcef/browser/menu_manager.h b/src/cef/libcef/browser/menu_manager.h index 239e3b7c3fab7..14da5e4ce6ee6 --- a/src/cef/libcef/browser/menu_manager.h +++ b/src/cef/libcef/browser/menu_manager.h @@ -63,6 +63,11 @@ class CefMenuManager : public CefMenuModelImpl::Delegate, // Returns true if the specified id is a custom context menu command. bool IsCustomContextMenuCommand(int command_id); + bool IsCommandIdEnabled(int command_id, + content::ContextMenuParams& params) const; + + void UpdateMenuEditStateFlags(content::ContextMenuParams& params); + // AlloyBrowserHostImpl pointer is guaranteed to outlive this object. AlloyBrowserHostImpl* browser_; diff --git a/src/cef/libcef/browser/navigation_state_serializer.cc b/src/cef/libcef/browser/navigation_state_serializer.cc new file mode 100755 index 0000000000000..7da18ce018344 --- /dev/null +++ b/src/cef/libcef/browser/navigation_state_serializer.cc @@ -0,0 +1,161 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include "libcef/browser/navigation_state_serializer.h" + +#include "base/logging.h" +#include "third_party/blink/public/common/page_state/page_state.h" + +CefRefPtr +NavigationStateSerializer::WriteNavigationStatus( + content::WebContents& web_contents) { + content::NavigationController& controller = web_contents.GetController(); + if (!web_contents.GetController().GetLastCommittedEntry() || + web_contents.GetController().GetLastCommittedEntry()->IsInitialEntry()) { + LOG(ERROR) << "navigation controller invalid"; + return nullptr; + } + base::Pickle pickle; + int entry_count = controller.GetEntryCount(); + int entry_index = controller.GetLastCommittedEntryIndex(); + pickle.WriteInt(entry_count); + pickle.WriteInt(entry_index); + for (int index = 0; index < entry_count; ++index) { + WriteNavigationEntry(*controller.GetEntryAtIndex(index), &pickle); + } + return CefBinaryValue::Create(pickle.data(), pickle.size()); +} + +void NavigationStateSerializer::WriteNavigationEntry( + content::NavigationEntry& entry, + base::Pickle* pickle) { + if (!pickle) + return; + pickle->WriteString(entry.GetURL().spec()); + pickle->WriteString(entry.GetVirtualURL().spec()); + + const content::Referrer& referrer = entry.GetReferrer(); + pickle->WriteString(referrer.url.spec()); + pickle->WriteInt(static_cast(referrer.policy)); + pickle->WriteString16(entry.GetTitle()); + pickle->WriteString(entry.GetPageState().ToEncodedData()); + pickle->WriteBool(static_cast(entry.GetHasPostData())); + pickle->WriteString(entry.GetOriginalRequestURL().spec()); + pickle->WriteString(entry.GetBaseURLForDataURL().spec()); + pickle->WriteBool(static_cast(entry.GetIsOverridingUserAgent())); + pickle->WriteInt64(entry.GetTimestamp().ToInternalValue()); + pickle->WriteInt(entry.GetHttpStatusCode()); +} + +bool NavigationStateSerializer::RestoreNavigationStatus( + content::WebContents& web_contents, + const CefRefPtr& state) { + if (!state) { + LOG(ERROR) << "web state is nullptr."; + return false; + } + size_t state_size = state->GetSize(); + if (state_size <= 0) { + LOG(ERROR) << "web state size invalid."; + return false; + } + uint8_t temp_buffer[state_size]; + state->GetData(temp_buffer, state_size, 0); + base::Pickle pickle(reinterpret_cast(temp_buffer), + state->GetSize()); + base::PickleIterator iterator(pickle); + int entry_count = -1; + int entry_index = -2; + if (!iterator.ReadInt(&entry_count) || !iterator.ReadInt(&entry_index) || + entry_index >= entry_count) { + LOG(ERROR) << "web state size invalid."; + return false; + } + + std::unique_ptr context = + content::NavigationEntryRestoreContext::Create(); + std::vector> entries; + entries.reserve(entry_count); + for (int i = 0; i < entry_count; ++i) { + std::unique_ptr entry = + content::NavigationEntry::Create(); + if (!RestoreNavigationEntry(&iterator, entry, context.get())) + return false; + entries.push_back(std::move(entry)); + } + + content::NavigationController& controller = web_contents.GetController(); + controller.Restore(entry_index, content::RestoreType::kRestored, &entries); + controller.LoadIfNecessary(); + return true; +} + +bool NavigationStateSerializer::RestoreNavigationEntry( + base::PickleIterator* iterator, + std::unique_ptr& entry, + content::NavigationEntryRestoreContext* context) { + if (!iterator || !entry || !context) { + return false; + } + std::string url; + std::string virtual_url; + std::string original_request_url; + std::string base_url_for_data_url; + std::string referrer_url; + int policy; + std::u16string title; + std::string content_state; + bool has_post_data; + bool is_overriding_user_agent; + int64_t timestamp; + int http_status_code; + + if (!iterator->ReadString(&url) || !iterator->ReadString(&virtual_url) || + !iterator->ReadString(&referrer_url) || !iterator->ReadInt(&policy) || + !iterator->ReadString16(&title) || + !iterator->ReadString(&content_state) || + !iterator->ReadBool(&has_post_data) || + !iterator->ReadString(&original_request_url) || + !iterator->ReadString(&base_url_for_data_url) || + !iterator->ReadBool(&is_overriding_user_agent) || + !iterator->ReadInt64(×tamp) || + !iterator->ReadInt(&http_status_code)) { + LOG(ERROR) << "restore navigation entry failed."; + return false; + } + + GURL deserialized_url; + entry->SetURL(deserialized_url); + entry->SetVirtualURL(GURL(virtual_url)); + entry->SetTitle(title); + content::Referrer deserialized_referrer; + deserialized_referrer.url = GURL(referrer_url); + deserialized_referrer.policy = content::Referrer::ConvertToPolicy(policy); + if (content_state.empty()) { + entry->SetPageState(blink::PageState::CreateFromURL(deserialized_url), + context); + entry->SetReferrer(deserialized_referrer); + } else { + entry->SetPageState(blink::PageState::CreateFromEncodedData(content_state), + context); + } + entry->SetHasPostData(has_post_data); + entry->SetOriginalRequestURL(GURL(original_request_url)); + entry->SetBaseURLForDataURL(GURL(base_url_for_data_url)); + entry->SetIsOverridingUserAgent(is_overriding_user_agent); + entry->SetTimestamp(base::Time::FromInternalValue(timestamp)); + entry->SetHttpStatusCode(http_status_code); + return true; +} \ No newline at end of file diff --git a/src/cef/libcef/browser/navigation_state_serializer.h b/src/cef/libcef/browser/navigation_state_serializer.h new file mode 100755 index 0000000000000..73d0bbefe5d2e --- /dev/null +++ b/src/cef/libcef/browser/navigation_state_serializer.h @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef NAVIGATION_STATE_SERIALIZER_H +#define NAVIGATION_STATE_SERIALIZER_H +#pragma once + +#include +#include + +#include "base/pickle.h" +#include "content/public/browser/navigation_entry.h" +#include "content/public/browser/navigation_entry_restore_context.h" +#include "content/public/browser/web_contents.h" +#include "include/cef_values.h" + +class NavigationStateSerializer { + public: + static CefRefPtr WriteNavigationStatus( + content::WebContents& web_contents); + static bool RestoreNavigationStatus(content::WebContents& web_contents, + const CefRefPtr& state); + + private: + static void WriteNavigationEntry(content::NavigationEntry& entry, + base::Pickle* pickle); + static bool RestoreNavigationEntry( + base::PickleIterator* iterator, + std::unique_ptr& entry, + content::NavigationEntryRestoreContext* context); +}; + +#endif \ No newline at end of file diff --git a/src/cef/libcef/browser/net/chrome_scheme_handler.cc b/src/cef/libcef/browser/net/chrome_scheme_handler.cc index 533483340a79b..98aaa94a2b703 --- a/src/cef/libcef/browser/net/chrome_scheme_handler.cc +++ b/src/cef/libcef/browser/net/chrome_scheme_handler.cc @@ -166,9 +166,11 @@ bool IsUnlistedHost(const std::string& host) { // Returns true if a host is WebUI and should be allowed to load. bool IsAllowedWebUIHost(const std::string& host) { +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) // Chrome runtime allows all WebUI hosts. if (cef::IsChromeRuntimeEnabled()) return true; +#endif // defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) // Explicitly whitelisted WebUI hosts. for (size_t i = 0; @@ -293,6 +295,7 @@ class TemplateParser { bool OnExtensionsSupportUI(std::string* mime_type, std::string* output) { *mime_type = "text/html"; +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) if (cef::IsChromeRuntimeEnabled()) { // Redirect to the Chrome documentation. *output = @@ -302,6 +305,7 @@ bool OnExtensionsSupportUI(std::string* mime_type, std::string* output) { "\n"; return true; } +#endif // defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) static const char kDevURL[] = "https://developer.chrome.com/extensions/"; diff --git a/src/cef/libcef/browser/net/scheme_handler.cc b/src/cef/libcef/browser/net/scheme_handler.cc index 9686e53fa94a5..701ff98e6a964 --- a/src/cef/libcef/browser/net/scheme_handler.cc +++ b/src/cef/libcef/browser/net/scheme_handler.cc @@ -6,13 +6,16 @@ #include -#include "libcef/browser/net/chrome_scheme_handler.h" #include "libcef/browser/net/devtools_scheme_handler.h" #include "libcef/common/net/scheme_registration.h" #include "libcef/features/runtime.h" #include "content/public/common/url_constants.h" +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) +#include "libcef/browser/net/chrome_scheme_handler.h" +#endif + namespace scheme { void RegisterInternalHandlers(CefIOThreadState* iothread_state) { diff --git a/src/cef/libcef/browser/net_database/cef_data_base_impl.cc b/src/cef/libcef/browser/net_database/cef_data_base_impl.cc index ceb653c27b0f4..f91e981433c06 --- a/src/cef/libcef/browser/net_database/cef_data_base_impl.cc +++ b/src/cef/libcef/browser/net_database/cef_data_base_impl.cc @@ -57,17 +57,19 @@ void CefDataBaseImpl::SaveHttpAuthCredentials(const CefString& host, void CefDataBaseImpl::GetHttpAuthCredentials( const CefString& host, const CefString& realm, - std::vector& username_password) { + CefString& username, + char* password, + uint32_t passwordSize) { if (host.empty() || realm.empty()) { return; } - std::vector result; + std::string usernameStr; OHOS::NWeb::OhosWebDataBaseAdapter& databaseAdapter = OHOS::NWeb::OhosAdapterHelper::GetInstance() .GetOhosWebDataBaseAdapterInstance(); - databaseAdapter.GetHttpAuthCredentials(host, realm, result); - TransferVector(result, username_password); + databaseAdapter.GetHttpAuthCredentials(host, realm, usernameStr, password, passwordSize); + username = usernameStr; return; } diff --git a/src/cef/libcef/browser/net_database/cef_data_base_impl.h b/src/cef/libcef/browser/net_database/cef_data_base_impl.h index 439385953b998..b990d0ceae2a4 --- a/src/cef/libcef/browser/net_database/cef_data_base_impl.h +++ b/src/cef/libcef/browser/net_database/cef_data_base_impl.h @@ -28,7 +28,9 @@ class CefDataBaseImpl : public CefDataBase { void GetHttpAuthCredentials( const CefString& host, const CefString& realm, - std::vector& username_password) override; + CefString& username, + char* password, + uint32_t passwordSize) override; bool ExistPermissionByOrigin(const CefString& origin, int type) override; diff --git a/src/cef/libcef/browser/net_database/cef_dns_data_base.cc b/src/cef/libcef/browser/net_database/cef_dns_data_base.cc index a6ebf9267945b..0a55885825ae7 --- a/src/cef/libcef/browser/net_database/cef_dns_data_base.cc +++ b/src/cef/libcef/browser/net_database/cef_dns_data_base.cc @@ -4,49 +4,48 @@ #include "cef_dns_data_base.h" +#include #include "base/logging.h" #include "net/base/ip_endpoint.h" #include "nweb_pre_dns_adapter.h" #include "ohos_adapter_helper.h" #include "third_party/abseil-cpp/absl/types/optional.h" +namespace { +std::set g_hostname; +} void CacheHostName(const std::string& hostname) { - OHOS::NWeb::OhosWebDnsDataBaseAdapter& dnsDatabaseAdapter = - OHOS::NWeb::OhosAdapterHelper::GetInstance().GetWebDnsDataBaseInstance(); - if (dnsDatabaseAdapter.ExistHostname(hostname)) { - return; + if (g_hostname.count(hostname) == 0) { + g_hostname.insert(hostname); + auto& dnsDatabaseAdapter = OHOS::NWeb::OhosAdapterHelper::GetInstance().GetWebDnsDataBaseInstance(); + dnsDatabaseAdapter.InsertHostname(hostname); } - - dnsDatabaseAdapter.InsertHostname(hostname); } net::AddressList GetAddrList(const std::string& hostname) { using OHOS::NWeb::g_AddrInfoMap; - net::AddressList addr_list; - if (g_AddrInfoMap.empty()) { - return addr_list; - } - - addrinfo* addrInfo; auto it = g_AddrInfoMap.find(hostname); if (it == g_AddrInfoMap.end()) { - return addr_list; + return net::AddressList(); } - addrInfo = it->second; - auto canonical_name = (addrInfo->ai_canonname != nullptr) - ? absl::optional(std::string(addrInfo->ai_canonname)) - : absl::optional(); + + net::AddressList addr_list; + addrinfo* addrInfo = it->second; + auto canonical_name = + addrInfo->ai_canonname + ? absl::make_optional(std::string(addrInfo->ai_canonname)) + : absl::nullopt; if (canonical_name) { - std::vector aliases({*canonical_name}); - addr_list.SetDnsAliases(std::move(aliases)); + addr_list.SetDnsAliases({*canonical_name}); } - for (auto ai = addrInfo; ai != NULL; ai = ai->ai_next) { + for (auto ai = addrInfo; ai != nullptr; ai = ai->ai_next) { net::IPEndPoint ipe; // NOTE: Ignoring non-INET* families. - if (ipe.FromSockAddr(ai->ai_addr, ai->ai_addrlen)) + if (ipe.FromSockAddr(ai->ai_addr, ai->ai_addrlen)) { addr_list.push_back(ipe); - else + } else { LOG(INFO) << "Unknown family found in addrinfo: " << ai->ai_family; + } } return addr_list; } \ No newline at end of file diff --git a/src/cef/libcef/browser/net_service/login_delegate.cc b/src/cef/libcef/browser/net_service/login_delegate.cc index dc05f1f1a6945..326b285c0878c --- a/src/cef/libcef/browser/net_service/login_delegate.cc +++ b/src/cef/libcef/browser/net_service/login_delegate.cc @@ -4,6 +4,8 @@ #include "libcef/browser/net_service/login_delegate.h" +#include + #include "libcef/browser/browser_host_base.h" #include "libcef/browser/net_database/cef_data_base_impl.h" #include "libcef/browser/net_service/browser_urlrequest_impl.h" @@ -17,8 +19,6 @@ namespace net_service { namespace { -const int USERNAME_PASSWORD_VECTOR_NUM = 2; - class AuthCallbackImpl : public CefAuthCallback { public: explicit AuthCallbackImpl(base::WeakPtr delegate, @@ -68,6 +68,7 @@ class AuthCallbackImpl : public CefAuthCallback { } bool IsHttpAuthInfoSaved() override { + constexpr int32_t MAX_PWD_LENGTH = 256; auto dataBase = CefDataBase::GetGlobalDataBase(); if (dataBase == nullptr) { return false; @@ -75,25 +76,29 @@ class AuthCallbackImpl : public CefAuthCallback { if (!dataBase->ExistHttpAuthCredentials()) { return false; } - std::vector usernamePassword; - usernamePassword.clear(); - dataBase->GetHttpAuthCredentials(host_, realm_, usernamePassword); - if (usernamePassword.size() < USERNAME_PASSWORD_VECTOR_NUM) { + CefString username; + char password[MAX_PWD_LENGTH + 1] = {0}; + dataBase->GetHttpAuthCredentials(host_, realm_, username, password, MAX_PWD_LENGTH + 1); + if (username.empty() || strlen(password) == 0) { + (void)memset_s(password, MAX_PWD_LENGTH + 1, 0, MAX_PWD_LENGTH + 1); return false; } - CefString username = usernamePassword[0]; - CefString password = usernamePassword[1]; + CefString passwordCef(password, strlen(password)); + (void)memset_s(password, MAX_PWD_LENGTH + 1, 0, MAX_PWD_LENGTH + 1); if (!task_runner_->RunsTasksInCurrentSequence()) { task_runner_->PostTask( FROM_HERE, base::BindOnce(&AuthCallbackImpl::Continue, this, username, - password)); + passwordCef)); + passwordCef.MemsetToZero(); return true; } if (delegate_) { - delegate_->Continue(username, password); + delegate_->Continue(username, passwordCef); delegate_ = nullptr; + passwordCef.MemsetToZero(); return true; } + passwordCef.MemsetToZero(); return false; } diff --git a/src/cef/libcef/browser/net_service/net_helpers.cc b/src/cef/libcef/browser/net_service/net_helpers.cc index 9bca0ec6a4c36..c8c630566b91a --- a/src/cef/libcef/browser/net_service/net_helpers.cc +++ b/src/cef/libcef/browser/net_service/net_helpers.cc @@ -38,8 +38,8 @@ bool NetHelpers::ShouldBlockContentUrls() { return !allow_content_access; } -bool NetHelpers::ShouldBlockFileUrls() { - return !allow_file_access; +bool NetHelpers::ShouldBlockFileUrls(struct NetHelperSetting setting) { + return !setting.file_access; } bool NetHelpers::IsAllowAcceptCookies() { @@ -77,33 +77,33 @@ bool IsSpecialFileUrl(const GURL& url) { return false; } -bool IsURLBlocked(const GURL& url) { +bool IsURLBlocked(const GURL& url, struct NetHelperSetting setting) { // Part of implementation of NWebPreference.allowContentAccess. if (url.SchemeIs(url::kContentScheme) && NetHelpers::ShouldBlockContentUrls()) return true; // Part of implementation of NWebPreference.allowFileAccess. - if (url.SchemeIsFile() && NetHelpers::ShouldBlockFileUrls()) { + if (url.SchemeIsFile() && NetHelpers::ShouldBlockFileUrls(setting)) { // Appdatas are always available. return !IsSpecialFileUrl(url); } - return NetHelpers::is_network_blocked && url.SchemeIs(url::kFtpScheme); + return setting.block_network && url.SchemeIs(url::kFtpScheme); } -int UpdateLoadFlags(int load_flags) { - if (NetHelpers::is_network_blocked) { +int UpdateLoadFlags(int load_flags, NetHelperSetting setting) { + if (setting.block_network) { LOG(INFO) << "Update cache control flag to block network."; return UpdateCacheLoadFlags( load_flags, net::LOAD_ONLY_FROM_CACHE | net::LOAD_SKIP_CACHE_VALIDATION); } - if (!NetHelpers::cache_mode) { + if (!setting.cache_mode) { return load_flags; } - return UpdateCacheLoadFlags(load_flags, NetHelpers::cache_mode); + return UpdateCacheLoadFlags(load_flags, setting.cache_mode); } } // namespace net_service diff --git a/src/cef/libcef/browser/net_service/net_helpers.h b/src/cef/libcef/browser/net_service/net_helpers.h index f2283769ec839..6c8fa83c33a74 --- a/src/cef/libcef/browser/net_service/net_helpers.h +++ b/src/cef/libcef/browser/net_service/net_helpers.h @@ -11,10 +11,16 @@ namespace net_service { #define NETHELPERS_EXPORT __attribute__((visibility("default"))) +struct NetHelperSetting { + bool file_access; + bool block_network; + int cache_mode; +}; + class NETHELPERS_EXPORT NetHelpers { public: static bool ShouldBlockContentUrls(); - static bool ShouldBlockFileUrls(); + static bool ShouldBlockFileUrls(struct NetHelperSetting setting); static bool IsAllowAcceptCookies(); static bool IsThirdPartyCookieAllowed(); @@ -29,11 +35,11 @@ class NETHELPERS_EXPORT NetHelpers { bool IsSpecialFileUrl(const GURL& url); // Update request's |load_flags| based on the settings. -int UpdateLoadFlags(int load_flags); +int UpdateLoadFlags(int load_flags, struct NetHelperSetting setting); // Returns true if the given URL should be aborted with // net::ERR_ACCESS_DENIED. -bool IsURLBlocked(const GURL& url); +bool IsURLBlocked(const GURL& url, struct NetHelperSetting setting); } // namespace net_service diff --git a/src/cef/libcef/browser/net_service/proxy_url_loader_factory.cc b/src/cef/libcef/browser/net_service/proxy_url_loader_factory.cc index 93d08697df16e..a016633fb5382 --- a/src/cef/libcef/browser/net_service/proxy_url_loader_factory.cc +++ b/src/cef/libcef/browser/net_service/proxy_url_loader_factory.cc @@ -500,13 +500,15 @@ void InterceptedRequest::Restart() { } } - if (IsURLBlocked(request_.url)) { + struct NetHelperSetting setting; + factory_->request_handler_->GetSettingOfNetHelper(setting); + if (IsURLBlocked(request_.url, setting)) { SendErrorAndCompleteImmediately(net::ERR_ACCESS_DENIED); LOG(INFO) << "File url access denied! url=" << request_.url.spec(); return; } - request_.load_flags = UpdateLoadFlags(request_.load_flags); + request_.load_flags = UpdateLoadFlags(request_.load_flags, setting); const GURL original_url = request_.url; @@ -612,11 +614,7 @@ void InterceptedRequest::OnReceiveResponse( request->SetURL(CefString(request_.url.spec())); request->SetMethod(CefString(request_.method)); request->Set(request_.headers); - content::GetUIThreadTaskRunner({})->PostTask( - FROM_HERE, base::BindOnce(&InterceptedRequest::OnHttpErrorForUIThread, - base::Unretained(this), id_, request, - request_.is_main_frame, - request_.has_user_gesture, error_reponse)); + OnHttpErrorForUIThread(id_, request, request_.is_main_frame, request_.has_user_gesture, error_reponse); } if (current_request_uses_header_client_) { diff --git a/src/cef/libcef/browser/net_service/proxy_url_loader_factory.h b/src/cef/libcef/browser/net_service/proxy_url_loader_factory.h index 53011b62b2981..c94b8eba97720 --- a/src/cef/libcef/browser/net_service/proxy_url_loader_factory.h +++ b/src/cef/libcef/browser/net_service/proxy_url_loader_factory.h @@ -140,6 +140,9 @@ class InterceptedRequestHandler { bool is_main_frame, bool has_user_gesture, CefRefPtr error_response) {} + + // To get setting of net helper. + virtual void GetSettingOfNetHelper(struct NetHelperSetting& setting) {} }; // URL Loader Factory that supports request/response interception, processing diff --git a/src/cef/libcef/browser/net_service/resource_request_handler_wrapper.cc b/src/cef/libcef/browser/net_service/resource_request_handler_wrapper.cc index 15b602200100b..dd61f9586dfcc --- a/src/cef/libcef/browser/net_service/resource_request_handler_wrapper.cc +++ b/src/cef/libcef/browser/net_service/resource_request_handler_wrapper.cc @@ -1200,6 +1200,27 @@ class InterceptedRequestHandlerWrapper : public InterceptedRequestHandler { error_response); } + void GetSettingOfNetHelper(struct NetHelperSetting& setting) override { + CEF_REQUIRE_UIT(); + if (!init_state_) { + // set the default value + setting.file_access = false; + setting.block_network = false; + setting.cache_mode = 0; + return; + } + if (!init_state_->browser_) { + // set the default value + setting.file_access = false; + setting.block_network = false; + setting.cache_mode = 0; + return; + } + setting.file_access = init_state_->browser_->GetFileAccess(); + setting.block_network = init_state_->browser_->GetBlockNetwork(); + setting.cache_mode = init_state_->browser_->GetCacheMode(); + } + private: void CallHandlerOnComplete(RequestState* state, const network::URLLoaderCompletionStatus& status) { diff --git a/src/cef/libcef/browser/osr/browser_platform_delegate_osr.cc b/src/cef/libcef/browser/osr/browser_platform_delegate_osr.cc index 69a0423ceb774..bdef16ae39192 --- a/src/cef/libcef/browser/osr/browser_platform_delegate_osr.cc +++ b/src/cef/libcef/browser/osr/browser_platform_delegate_osr.cc @@ -18,6 +18,48 @@ #include "content/public/browser/render_view_host.h" #include "ui/events/base_event_utils.h" +namespace { +void ConvertSelectPopupItem(const blink::mojom::MenuItemPtr& menu_ptr, + CefSelectPopupItem& menu_item) { + CefString label = CefString(menu_ptr->label.value_or("")); + CefString tool_tip = CefString(menu_ptr->tool_tip.value_or("")); + cef_string_set(label.c_str(), label.length(), &(menu_item.label), true); + cef_string_set(tool_tip.c_str(), tool_tip.length(), &(menu_item.tool_tip), + true); + menu_item.action = menu_ptr->action; + menu_item.enabled = menu_ptr->enabled; + menu_item.checked = menu_ptr->checked; + menu_item.type = static_cast(menu_ptr->type); + menu_item.text_direction = + static_cast(menu_ptr->text_direction); + menu_item.has_text_direction_override = menu_ptr->has_text_direction_override; +} +} // namespace + +class CefSelectPopupCallbackImpl : public CefSelectPopupCallback { + public: + explicit CefSelectPopupCallbackImpl( + mojo::PendingRemote popup_client) { + popup_client_.Bind(std::move(popup_client)); + } + + void Continue(const std::vector& indices) override { + if (popup_client_) { + popup_client_->DidAcceptIndices(indices); + } + } + + void Cancel() override { + if (popup_client_) { + popup_client_->DidCancel(); + } + } + + private: + mojo::Remote popup_client_; + IMPLEMENT_REFCOUNTING(CefSelectPopupCallbackImpl); +}; + CefBrowserPlatformDelegateOsr::CefBrowserPlatformDelegateOsr( std::unique_ptr native_delegate, bool use_shared_texture, @@ -495,6 +537,34 @@ void CefBrowserPlatformDelegateOsr::StartDragging( DragSourceSystemDragEnded(); } +void CefBrowserPlatformDelegateOsr::ShowPopupMenu( + mojo::PendingRemote popup_client, + const gfx::Rect& bounds, + int item_height, + double item_font_size, + int selected_item, + std::vector menu_items, + bool right_aligned, + bool allow_multiple_selection) { + CefRefPtr handler = + browser_->GetClient()->GetDialogHandler(); + if (handler.get()) { + std::vector item_list; + for (int i = 0; i < menu_items.size(); i++) { + CefSelectPopupItem menu_item; + ConvertSelectPopupItem(menu_items[i], menu_item); + item_list.push_back(menu_item); + } + CefRefPtr callback = + new CefSelectPopupCallbackImpl(std::move(popup_client)); + handler->OnSelectPopupMenu( + browser_, + CefRect(bounds.x(), bounds.y(), bounds.width(), bounds.height()), + item_height, item_font_size, selected_item, item_list, right_aligned, + allow_multiple_selection, callback); + } +} + void CefBrowserPlatformDelegateOsr::UpdateDragCursor( ui::mojom::DragOperation operation) { CefRefPtr handler = @@ -609,4 +679,4 @@ CefRenderWidgetHostViewOSR* CefBrowserPlatformDelegateOsr::GetOSRHostView() } return nullptr; -} +} \ No newline at end of file diff --git a/src/cef/libcef/browser/osr/browser_platform_delegate_osr.h b/src/cef/libcef/browser/osr/browser_platform_delegate_osr.h index 5efb3ee968db5..7074ae9d77398 --- a/src/cef/libcef/browser/osr/browser_platform_delegate_osr.h +++ b/src/cef/libcef/browser/osr/browser_platform_delegate_osr.h @@ -89,6 +89,15 @@ class CefBrowserPlatformDelegateOsr void AccessibilityLocationChangesReceived( const std::vector& locData) override; + void ShowPopupMenu( + mojo::PendingRemote popup_client, + const gfx::Rect& bounds, + int item_height, + double item_font_size, + int selected_item, + std::vector menu_items, + bool right_aligned, + bool allow_multiple_selection) override; // CefBrowserPlatformDelegateNative::WindowlessHandler methods: CefWindowHandle GetParentWindowHandle() const override; diff --git a/src/cef/libcef/browser/osr/render_widget_host_view_osr.cc b/src/cef/libcef/browser/osr/render_widget_host_view_osr.cc index 86b0da5a7d138..b5e9a81f243c4 --- a/src/cef/libcef/browser/osr/render_widget_host_view_osr.cc +++ b/src/cef/libcef/browser/osr/render_widget_host_view_osr.cc @@ -1173,10 +1173,9 @@ void CefRenderWidgetHostViewOSR::OnScaleChanged(float old_page_scale_factor, CefRefPtr handler = browser_impl_->client()->GetDisplayHandler(); CHECK(handler); - float ratio = browser_impl_->GetVirtualPixelRatio(); handler->OnScaleChanged(browser_impl_.get(), - std::round(old_page_scale_factor * (100 / ratio)), - std::round(nwe_page_scale_factor * (100 / ratio))); + std::round(old_page_scale_factor * 100), + std::round(nwe_page_scale_factor * 100)); } } @@ -1599,6 +1598,9 @@ void CefRenderWidgetHostViewOSR::SetFocus(bool focus) { if (focus) { widget->GotFocus(); widget->SetActive(true); + if (selection_controller_client_) { + selection_controller_client_->SetTemporarilyHidden(false); + } } else { #if !BUILDFLAG(IS_OHOS) if (browser_impl_.get()) @@ -1619,7 +1621,7 @@ void CefRenderWidgetHostViewOSR::OnUpdateTextInputStateCalled( bool did_update_state) { const auto state = text_input_manager->GetTextInputState(); if (state && !state->show_ime_if_needed) { - LOG(INFO) << "OnUpdateTextInputStateCalled no need to show ime"; + return; } CefRenderHandler::TextInputMode mode = CEF_TEXT_INPUT_MODE_NONE; @@ -1641,6 +1643,21 @@ void CefRenderWidgetHostViewOSR::OnUpdateTextInputStateCalled( show_keyboard); } +void CefRenderWidgetHostViewOSR::FocusedNodeChanged(bool is_editable_node, + const gfx::Rect& node_bounds_in_screen) +{ + CefRefPtr handler = + browser_impl_->GetClient()->GetRenderHandler(); + CHECK(handler); + if (is_editable_node) { + handler->OnVirtualKeyboardRequested(browser_impl_->GetBrowser(), + CEF_TEXT_INPUT_MODE_DEFAULT, false); + } else { + handler->OnVirtualKeyboardRequested(browser_impl_->GetBrowser(), + CEF_TEXT_INPUT_MODE_NONE, false); + } +} + void CefRenderWidgetHostViewOSR::ProcessAckedTouchEvent( const content::TouchEventWithLatencyInfo& touch, blink::mojom::InputEventResultState ack_result) { @@ -1967,8 +1984,13 @@ void CefRenderWidgetHostViewOSR::OnScrollOffsetChanged() { CefRefPtr handler = browser_impl_->client()->GetRenderHandler(); CHECK(handler); + #if BUILDFLAG(IS_OHOS) + handler->OnScrollOffsetChanged(browser_impl_.get(), std::round(last_scroll_offset_.x()), + std::round(last_scroll_offset_.y())); + #else handler->OnScrollOffsetChanged(browser_impl_.get(), last_scroll_offset_.x(), last_scroll_offset_.y()); + #endif } is_scroll_offset_changed_pending_ = false; } diff --git a/src/cef/libcef/browser/osr/render_widget_host_view_osr.h b/src/cef/libcef/browser/osr/render_widget_host_view_osr.h index bf5e49c14b13d..96cc2faf567a7 --- a/src/cef/libcef/browser/osr/render_widget_host_view_osr.h +++ b/src/cef/libcef/browser/osr/render_widget_host_view_osr.h @@ -225,6 +225,9 @@ class CefRenderWidgetHostViewOSR RenderWidgetHostViewBase* updated_view, bool did_update_state) override; + void FocusedNodeChanged(bool is_editable_node, + const gfx::Rect& node_bounds_in_screen) override; + // ui::GestureProviderClient implementation. void ProcessAckedTouchEvent( const content::TouchEventWithLatencyInfo& touch, diff --git a/src/cef/libcef/browser/osr/touch_selection_controller_client_osr.cc b/src/cef/libcef/browser/osr/touch_selection_controller_client_osr.cc index a4566a8dbba89..f2751a7a4c027 --- a/src/cef/libcef/browser/osr/touch_selection_controller_client_osr.cc +++ b/src/cef/libcef/browser/osr/touch_selection_controller_client_osr.cc @@ -21,6 +21,7 @@ #include "ui/base/pointer/touch_editing_controller.h" #include "ui/gfx/geometry/point_conversions.h" #include "ui/gfx/geometry/size_conversions.h" +#include "base/logging.h" namespace { @@ -125,7 +126,22 @@ CefTouchSelectionControllerClientOSR::~CefTouchSelectionControllerClientOSR() { void CefTouchSelectionControllerClientOSR::CloseQuickMenuAndHideHandles() { CloseQuickMenu(); - rwhv_->selection_controller()->HideAndDisallowShowingAutomatically(); + auto controller = rwhv_->selection_controller(); + if (controller) { + if (!controller->GetInsertHandle() || !controller->GetInsertHandle()->GetEnabled()) { + rwhv_->selection_controller()->HideAndDisallowShowingAutomatically(); + } else if (controller->GetInsertHandle()->GetEnabled()) { + rwhv_->selection_controller()->SetTemporarilyHidden(true); + NotifyTouchSelectionChanged(true); + } + } +} + +void CefTouchSelectionControllerClientOSR::SetTemporarilyHidden(bool hidden) { + if (rwhv_ && rwhv_->selection_controller()) { + rwhv_->selection_controller()->SetTemporarilyHidden(hidden); + NotifyTouchSelectionChanged(false); + } } void CefTouchSelectionControllerClientOSR::OnWindowMoved() { @@ -290,7 +306,6 @@ void CefTouchSelectionControllerClientOSR::ShowQuickMenu() { new CefRunQuickMenuCallbackImpl(base::BindOnce( &CefTouchSelectionControllerClientOSR::ExecuteCommand, weak_ptr_factory_.GetWeakPtr()))); - quick_menu_running_ = true; if (!handler->RunQuickMenu( browser, browser->GetFocusedFrame(), @@ -307,6 +322,7 @@ void CefTouchSelectionControllerClientOSR::ShowQuickMenu() { if (browser->web_contents()) { browser->web_contents()->SetShowingContextMenu(true); } + browser->SetTouchInsertHandleMenuShow(false); } } } @@ -404,6 +420,7 @@ void CefTouchSelectionControllerClientOSR::OnSelectionEvent( ui::SelectionEventType event) { // This function (implicitly) uses active_menu_client_, so we don't go to the // active view for this. + auto browser = rwhv_->browser_impl(); switch (event) { case ui::SELECTION_HANDLES_SHOWN: quick_menu_requested_ = true; @@ -416,7 +433,9 @@ void CefTouchSelectionControllerClientOSR::OnSelectionEvent( rwhv_->browser_impl()->GetTouchInsertHandleMenuShow(); } NotifyTouchSelectionChanged(true); - UpdateQuickMenu(); + if (quick_menu_requested_) { + ShowQuickMenu(); + } break; case ui::SELECTION_HANDLES_CLEARED: case ui::INSERTION_HANDLE_CLEARED: @@ -433,11 +452,10 @@ void CefTouchSelectionControllerClientOSR::OnSelectionEvent( handle_drag_in_progress_ = false; break; case ui::SELECTION_HANDLES_MOVED: + case ui::INSERTION_HANDLE_MOVED: if (!handle_drag_in_progress_) { UpdateQuickMenu(); } - [[fallthrough]]; - case ui::INSERTION_HANDLE_MOVED: NotifyTouchSelectionChanged(true); break; case ui::INSERTION_HANDLE_TAPPED: @@ -450,9 +468,6 @@ void CefTouchSelectionControllerClientOSR::OnSelectionEvent( } break; } - if (rwhv_ && rwhv_->browser_impl()) { - rwhv_->browser_impl()->SetTouchInsertHandleMenuShow(false); - } } void CefTouchSelectionControllerClientOSR::InternalClient::OnSelectionEvent( @@ -616,4 +631,4 @@ bool CefTouchSelectionControllerClientOSR:: return true; } return false; -} +} \ No newline at end of file diff --git a/src/cef/libcef/browser/osr/touch_selection_controller_client_osr.h b/src/cef/libcef/browser/osr/touch_selection_controller_client_osr.h index 9794cf9fc8ea0..b7de80ae61a1b --- a/src/cef/libcef/browser/osr/touch_selection_controller_client_osr.h +++ b/src/cef/libcef/browser/osr/touch_selection_controller_client_osr.h @@ -41,6 +41,7 @@ class CefTouchSelectionControllerClientOSR ~CefTouchSelectionControllerClientOSR() override; void CloseQuickMenuAndHideHandles(); + void SetTemporarilyHidden(bool hidden); void OnWindowMoved(); diff --git a/src/cef/libcef/browser/osr/web_contents_view_osr.cc b/src/cef/libcef/browser/osr/web_contents_view_osr.cc index e81a41ae714c1..3469cfdf25aa8 --- a/src/cef/libcef/browser/osr/web_contents_view_osr.cc +++ b/src/cef/libcef/browser/osr/web_contents_view_osr.cc @@ -148,6 +148,8 @@ bool CefWebContentsViewOSR::CloseTabAfterEventTrackingIfNeeded() { } #endif // BUILDFLAG(IS_MAC) +void CefWebContentsViewOSR::FullscreenStateChanged(bool is_fullscreen) {} + void CefWebContentsViewOSR::StartDragging( const content::DropData& drop_data, blink::DragOperationsMask allowed_ops, @@ -172,6 +174,27 @@ void CefWebContentsViewOSR::UpdateDragCursor( browser->UpdateDragCursor(operation); } +#if BUILDFLAG(USE_EXTERNAL_POPUP_MENU) +void CefWebContentsViewOSR::ShowPopupMenu( + content::RenderFrameHost* render_frame_host, + mojo::PendingRemote popup_client, + const gfx::Rect& bounds, + int item_height, + double item_font_size, + int selected_item, + std::vector menu_items, + bool right_aligned, + bool allow_multiple_selection) { + CefRefPtr browser = GetBrowser(); + if (browser.get()) { + browser->ShowPopupMenu(std::move(popup_client), bounds, + item_height, item_font_size, selected_item, + std::move(menu_items), right_aligned, + allow_multiple_selection); + } +} +#endif + CefRenderWidgetHostViewOSR* CefWebContentsViewOSR::GetView() const { if (web_contents_) { return static_cast( diff --git a/src/cef/libcef/browser/osr/web_contents_view_osr.h b/src/cef/libcef/browser/osr/web_contents_view_osr.h index 81b5689dcb6f7..e5dd7ae1c817b --- a/src/cef/libcef/browser/osr/web_contents_view_osr.h +++ b/src/cef/libcef/browser/osr/web_contents_view_osr.h @@ -65,6 +65,8 @@ class CefWebContentsViewOSR : public content::WebContentsView, bool CloseTabAfterEventTrackingIfNeeded() override; #endif + void FullscreenStateChanged(bool is_fullscreen) override; + // RenderViewHostDelegateView methods. void StartDragging(const content::DropData& drop_data, blink::DragOperationsMask allowed_ops, @@ -78,6 +80,18 @@ class CefWebContentsViewOSR : public content::WebContentsView, virtual void LostFocus( content::RenderWidgetHostImpl* render_widget_host) override; virtual void TakeFocus(bool reverse) override; +#if BUILDFLAG(USE_EXTERNAL_POPUP_MENU) + void ShowPopupMenu( + content::RenderFrameHost* render_frame_host, + mojo::PendingRemote popup_client, + const gfx::Rect& bounds, + int item_height, + double item_font_size, + int selected_item, + std::vector menu_items, + bool right_aligned, + bool allow_multiple_selection) override; +#endif private: CefRenderWidgetHostViewOSR* GetView() const; diff --git a/src/cef/libcef/browser/permission/alloy_access_request.cc b/src/cef/libcef/browser/permission/alloy_access_request.cc index c15d3bd73dae4..416b37379cde8 --- a/src/cef/libcef/browser/permission/alloy_access_request.cc +++ b/src/cef/libcef/browser/permission/alloy_access_request.cc @@ -10,7 +10,9 @@ AlloyAccessRequest::AlloyAccessRequest(const CefString& origin, : origin_(origin), resources_(resources), callback_(std::move(callback)) {} AlloyAccessRequest::~AlloyAccessRequest() { - std::move(callback_).Run(false); + if (!callback_.is_null()) { + std::move(callback_).Run(false); + } } CefString AlloyAccessRequest::Origin() { @@ -22,5 +24,7 @@ int AlloyAccessRequest::ResourceAcessId() { } void AlloyAccessRequest::ReportRequestResult(bool allowed) { - std::move(callback_).Run(allowed); + if (!callback_.is_null()) { + std::move(callback_).Run(allowed); + } } \ No newline at end of file diff --git a/src/cef/libcef/browser/prefs/browser_prefs.cc b/src/cef/libcef/browser/prefs/browser_prefs.cc index e34ca3e4edd42..0a964b7fe42c1 --- a/src/cef/libcef/browser/prefs/browser_prefs.cc +++ b/src/cef/libcef/browser/prefs/browser_prefs.cc @@ -22,10 +22,8 @@ #include "chrome/browser/accessibility/accessibility_ui.h" #include "chrome/browser/download/download_prefs.h" #include "chrome/browser/media/media_device_id_salt.h" -#include "chrome/browser/media/router/media_router_feature.h" #include "chrome/browser/net/profile_network_context_service.h" #include "chrome/browser/net/system_network_context_manager.h" -#include "chrome/browser/plugins/plugin_info_host_impl.h" #include "chrome/browser/prefetch/prefetch_prefs.h" #include "chrome/browser/prefs/chrome_command_line_pref_store.h" #include "chrome/browser/printing/print_preview_sticky_settings.h" @@ -75,6 +73,14 @@ #include "chrome/browser/supervised_user/supervised_user_settings_service_factory.h" #endif +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) +#include "chrome/browser/plugins/plugin_info_host_impl.h" +#endif + +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) +#include "chrome/browser/media/router/media_router_feature.h" +#endif + namespace browser_prefs { namespace { @@ -223,8 +229,12 @@ std::unique_ptr CreatePrefService(Profile* profile, CefMediaCaptureDevicesDispatcher::RegisterPrefs(registry.get()); certificate_transparency::prefs::RegisterPrefs(registry.get()); flags_ui::PrefServiceFlagsStorage::RegisterPrefs(registry.get()); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) media_router::RegisterLocalStatePrefs(registry.get()); +#endif +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) PluginInfoHostImpl::RegisterUserPrefs(registry.get()); +#endif PrefProxyConfigTrackerImpl::RegisterPrefs(registry.get()); ProfileNetworkContextService::RegisterLocalStatePrefs(registry.get()); SSLConfigServiceManager::RegisterPrefs(registry.get()); @@ -266,7 +276,9 @@ std::unique_ptr CreatePrefService(Profile* profile, extensions::ExtensionPrefs::RegisterProfilePrefs(registry.get()); HostContentSettingsMap::RegisterProfilePrefs(registry.get()); language::LanguagePrefs::RegisterProfilePrefs(registry.get()); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) media_router::RegisterProfilePrefs(registry.get()); +#endif MediaDeviceIDSalt::RegisterProfilePrefs(registry.get()); prefetch::RegisterPredictionOptionsProfilePrefs(registry.get()); ProfileNetworkContextService::RegisterProfilePrefs(registry.get()); @@ -291,8 +303,10 @@ std::unique_ptr CreatePrefService(Profile* profile, prefs::kPrintPreviewDefaultDestinationSelectionRules, std::string()); registry->RegisterBooleanPref(prefs::kCloudPrintSubmitEnabled, false); registry->RegisterBooleanPref(prefs::kEnableMediaRouter, true); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PRINT_PREVIEW) printing::PolicySettings::RegisterProfilePrefs(registry.get()); printing::PrintPreviewStickySettings::RegisterProfilePrefs(registry.get()); +#endif DownloadPrefs::RegisterProfilePrefs(registry.get()); // Cache preferences. diff --git a/src/cef/libcef/browser/prefs/renderer_prefs.cc b/src/cef/libcef/browser/prefs/renderer_prefs.cc index 4fd9397b037f3..fdd2157dcdb89 --- a/src/cef/libcef/browser/prefs/renderer_prefs.cc +++ b/src/cef/libcef/browser/prefs/renderer_prefs.cc @@ -184,6 +184,7 @@ void SetBool(CommandLinePrefStore* prefs, const std::string& key, bool value) { WriteablePrefStore::DEFAULT_PREF_WRITE_FLAGS); } +#if !BUILDFLAG(IS_OHOS) blink::mojom::PreferredColorScheme ToBlinkPreferredColorScheme( ui::NativeTheme::PreferredColorScheme native_theme_scheme) { switch (native_theme_scheme) { @@ -195,6 +196,7 @@ blink::mojom::PreferredColorScheme ToBlinkPreferredColorScheme( NOTREACHED(); } +#endif // From chrome/browser/chrome_content_browser_client.cc // Returns true if preferred color scheme is modified based on at least one of @@ -207,8 +209,10 @@ bool UpdatePreferredColorScheme(blink::web_pref::WebPreferences* web_prefs, auto old_preferred_color_scheme = web_prefs->preferred_color_scheme; // Update based on native theme scheme. +#if !BUILDFLAG(IS_OHOS) web_prefs->preferred_color_scheme = ToBlinkPreferredColorScheme(native_theme->GetPreferredColorScheme()); +#endif // Force a light preferred color scheme on certain URLs if kWebUIDarkMode is // disabled; some of the UI is not yet correctly themed. @@ -359,6 +363,11 @@ void SetCefPrefs(const CefBrowserSettings& cef, /* ohos webview begin*/ SET_STATE(cef.force_dark_mode_enabled, web.force_dark_mode_enabled); + if (cef.dark_prefer_color_scheme_enabled == STATE_ENABLED) { + web.preferred_color_scheme = blink::mojom::PreferredColorScheme::kDark; + } else { + web.preferred_color_scheme = blink::mojom::PreferredColorScheme::kLight; + } SET_STATE(cef.loads_images_automatically, web.loads_images_automatically); SET_STATE(cef.allow_running_insecure_content, web.allow_running_insecure_content); @@ -367,6 +376,10 @@ void SetCefPrefs(const CefBrowserSettings& cef, SET_STATE(cef.allow_mixed_content_upgrades, web.allow_mixed_content_upgrades); SET_STATE(cef.initialize_at_minimum_page_scale, web.initialize_at_minimum_page_scale); +#if BUILDFLAG(IS_OHOS) + SET_STATE(cef.hide_vertical_scrollbars, web.hide_vertical_scrollbars); + SET_STATE(cef.hide_horizontal_scrollbars, web.hide_horizontal_scrollbars); +#endif web.viewport_meta_enabled = cef.viewport_meta_enabled; web.autoplay_policy = cef.user_gesture_required @@ -421,6 +434,7 @@ void PopulateWebPreferences(content::RenderViewHost* rvh, } auto* native_theme = ui::NativeTheme::GetInstanceForWeb(); +#if !BUILDFLAG(IS_OHOS) switch (native_theme->GetPreferredColorScheme()) { case ui::NativeTheme::PreferredColorScheme::kDark: web.preferred_color_scheme = blink::mojom::PreferredColorScheme::kDark; @@ -429,6 +443,7 @@ void PopulateWebPreferences(content::RenderViewHost* rvh, web.preferred_color_scheme = blink::mojom::PreferredColorScheme::kLight; break; } +#endif switch (native_theme->GetPreferredContrast()) { case ui::NativeTheme::PreferredContrast::kNoPreference: diff --git a/src/cef/libcef/browser/request_context_impl.cc b/src/cef/libcef/browser/request_context_impl.cc index bb4de98dbaca4..77543ac833990 --- a/src/cef/libcef/browser/request_context_impl.cc +++ b/src/cef/libcef/browser/request_context_impl.cc @@ -579,12 +579,14 @@ CefRefPtr CefRequestContextImpl::GetExtension( return browser_context()->GetExtension(extension_id); } +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) CefRefPtr CefRequestContextImpl::GetMediaRouter( CefRefPtr callback) { CefRefPtr media_router = new CefMediaRouterImpl(); InitializeMediaRouterInternal(media_router, callback); return media_router.get(); } +#endif void CefRequestContextImpl::OnRenderFrameCreated( const content::GlobalRenderFrameHostId& global_id, @@ -805,6 +807,7 @@ void CefRequestContextImpl::InitializeWebStorageInternal( web_storage, callback)); } +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) void CefRequestContextImpl::InitializeMediaRouterInternal( CefRefPtr media_router, CefRefPtr callback) { @@ -818,6 +821,7 @@ void CefRequestContextImpl::InitializeMediaRouterInternal( }, media_router, callback)); } +#endif CefBrowserContext* CefRequestContextImpl::browser_context() const { return browser_context_; diff --git a/src/cef/libcef/browser/request_context_impl.h b/src/cef/libcef/browser/request_context_impl.h index e495dd1f3a619..6b145ef17e4df --- a/src/cef/libcef/browser/request_context_impl.h +++ b/src/cef/libcef/browser/request_context_impl.h @@ -8,12 +8,15 @@ #include "include/cef_request_context.h" #include "libcef/browser/browser_context.h" -#include "libcef/browser/media_router/media_router_impl.h" #include "libcef/browser/net_database/cef_data_base_impl.h" #include "libcef/browser/net_service/cookie_manager_impl.h" #include "libcef/browser/storage/web_storage_impl.h" #include "libcef/browser/thread_util.h" +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) +#include "libcef/browser/media_router/media_router_impl.h" +#endif + namespace content { struct GlobalRenderFrameHostId; } @@ -100,8 +103,10 @@ class CefRequestContextImpl : public CefRequestContext { bool HasExtension(const CefString& extension_id) override; bool GetExtensions(std::vector& extension_ids) override; CefRefPtr GetExtension(const CefString& extension_id) override; +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) CefRefPtr GetMediaRouter( CefRefPtr callback) override; +#endif const CefRequestContextSettings& settings() const { return config_.settings; } @@ -174,8 +179,10 @@ class CefRequestContextImpl : public CefRequestContext { CefRefPtr callback); void InitializeWebStorageInternal(CefRefPtr web_storage, CefRefPtr callback); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) void InitializeMediaRouterInternal(CefRefPtr media_router, CefRefPtr callback); +#endif CefBrowserContext* browser_context() const; diff --git a/src/cef/libcef/browser/storage/web_storage_impl.cc b/src/cef/libcef/browser/storage/web_storage_impl.cc index 7d246b423648e..1bc79467760e9 --- a/src/cef/libcef/browser/storage/web_storage_impl.cc +++ b/src/cef/libcef/browser/storage/web_storage_impl.cc @@ -71,6 +71,7 @@ void GetStorageKeysTask::OnStorageKeysObtained( blink::mojom::StorageType type, const std::set& storage_keys) { DCHECK(CEF_CURRENTLY_ON_IOT()); + LOG(INFO) << "OnStorageKeysObtained storage_keys size: " << storage_keys.size(); num_callbacks_to_wait_ = storage_keys.size(); num_callbacks_received_ = 0u; for (const blink::StorageKey& storage_key : storage_keys) { diff --git a/src/cef/libcef/browser/views/browser_view_impl.cc b/src/cef/libcef/browser/views/browser_view_impl.cc index 139dff2ad6053..045e9d17fb75e --- a/src/cef/libcef/browser/views/browser_view_impl.cc +++ b/src/cef/libcef/browser/views/browser_view_impl.cc @@ -6,7 +6,6 @@ #include "libcef/browser/browser_host_base.h" #include "libcef/browser/browser_util.h" -#include "libcef/browser/chrome/views/chrome_browser_view.h" #include "libcef/browser/context.h" #include "libcef/browser/request_context_impl.h" #include "libcef/browser/thread_util.h" @@ -15,6 +14,10 @@ #include "content/public/browser/native_web_keyboard_event.h" #include "ui/content_accelerators/accelerator_util.h" +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) +#include "libcef/browser/chrome/views/chrome_browser_view.h" +#endif // defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) + // static CefRefPtr CefBrowserView::CreateBrowserView( CefRefPtr client, @@ -138,9 +141,11 @@ CefRefPtr CefBrowserViewImpl::GetBrowser() { CefRefPtr CefBrowserViewImpl::GetChromeToolbar() { CEF_REQUIRE_VALID_RETURN(nullptr); +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) if (cef::IsChromeRuntimeEnabled()) { return static_cast(root_view())->cef_toolbar(); } +#endif // defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) return nullptr; } @@ -232,25 +237,33 @@ void CefBrowserViewImpl::SetDefaults(const CefBrowserSettings& settings) { } views::View* CefBrowserViewImpl::CreateRootView() { +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) if (cef::IsChromeRuntimeEnabled()) { return new ChromeBrowserView(delegate(), this); } +#endif // defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) return new CefBrowserViewView(delegate(), this); } void CefBrowserViewImpl::InitializeRootView() { +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) if (cef::IsChromeRuntimeEnabled()) { static_cast(root_view())->Initialize(); } else { static_cast(root_view())->Initialize(); } +#else + static_cast(root_view())->Initialize(); +#endif // defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) } views::WebView* CefBrowserViewImpl::web_view() const { +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) if (cef::IsChromeRuntimeEnabled()) { return static_cast(root_view())->contents_web_view(); } +#endif // defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) return static_cast(root_view()); } diff --git a/src/cef/libcef/browser/views/window_view.cc b/src/cef/libcef/browser/views/window_view.cc index f1784a5a8735f..ab43771ebc8e3 --- a/src/cef/libcef/browser/views/window_view.cc +++ b/src/cef/libcef/browser/views/window_view.cc @@ -4,7 +4,6 @@ #include "libcef/browser/views/window_view.h" -#include "libcef/browser/chrome/views/chrome_browser_frame.h" #include "libcef/browser/image_impl.h" #include "libcef/browser/views/window_impl.h" #include "libcef/features/runtime.h" @@ -29,6 +28,10 @@ #include "ui/aura/window.h" #endif +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) +#include "libcef/browser/chrome/views/chrome_browser_frame.h" +#endif // defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) + namespace { // Specialize ClientView to handle Widget-related events. @@ -259,8 +262,12 @@ void CefWindowView::CreateWidget() { // |widget| is owned by the NativeWidget and will be destroyed in response to // a native destruction message. +#if defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) views::Widget* widget = cef::IsChromeRuntimeEnabled() ? new ChromeBrowserFrame : new views::Widget; +#else + views::Widget* widget = new views::Widget; +#endif // defined(OHOS_ENABLE_CEF_CHROME_RUNTIME) views::Widget::InitParams params; params.delegate = this; diff --git a/src/cef/libcef/common/alloy/alloy_content_client.cc b/src/cef/libcef/common/alloy/alloy_content_client.cc index fe1f5fa84f268..a6f52055f18db --- a/src/cef/libcef/common/alloy/alloy_content_client.cc +++ b/src/cef/libcef/common/alloy/alloy_content_client.cc @@ -32,7 +32,6 @@ #include "content/public/common/cdm_info.h" #include "content/public/common/content_constants.h" #include "content/public/common/content_switches.h" -#include "content/public/common/pepper_plugin_info.h" #include "ppapi/shared_impl/ppapi_permissions.h" #include "third_party/widevine/cdm/buildflags.h" #include "ui/base/l10n/l10n_util.h" @@ -42,8 +41,13 @@ #include "chrome/common/media/cdm_host_file_path.h" #endif +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) +#include "content/public/common/pepper_plugin_info.h" +#endif + namespace { +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) // The following plugin-related methods are from // chrome/common/chrome_content_client.cc @@ -80,16 +84,19 @@ void ComputeBuiltInPlugins(std::vector* plugins) { plugins->push_back(pdf_info); } } +#endif } // namespace AlloyContentClient::AlloyContentClient() = default; AlloyContentClient::~AlloyContentClient() = default; +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) void AlloyContentClient::AddPepperPlugins( std::vector* plugins) { ComputeBuiltInPlugins(plugins); } +#endif void AlloyContentClient::AddContentDecryptionModules( std::vector* cdms, @@ -158,6 +165,7 @@ gfx::Image& AlloyContentClient::GetNativeImageNamed(int resource_id) { return value; } +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) // static void AlloyContentClient::SetPDFEntryFunctions( content::PepperPluginInfo::GetInterfaceFunc get_interface, @@ -167,3 +175,4 @@ void AlloyContentClient::SetPDFEntryFunctions( g_pdf_initialize_module = initialize_module; g_pdf_shutdown_module = shutdown_module; } +#endif diff --git a/src/cef/libcef/common/alloy/alloy_content_client.h b/src/cef/libcef/common/alloy/alloy_content_client.h index 160bfe855c2b0..03200dbe45b6c --- a/src/cef/libcef/common/alloy/alloy_content_client.h +++ b/src/cef/libcef/common/alloy/alloy_content_client.h @@ -9,7 +9,13 @@ #include "base/compiler_specific.h" #include "content/public/common/content_client.h" + +#if BUILDFLAG(IS_OHOS) +#include "ppapi/buildflags/buildflags.h" +#if BUILDFLAG(ENABLE_PLUGINS) #include "content/public/common/pepper_plugin_info.h" +#endif +#endif class AlloyContentClient : public content::ContentClient { public: @@ -17,8 +23,10 @@ class AlloyContentClient : public content::ContentClient { ~AlloyContentClient() override; // content::ContentClient overrides. +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) void AddPepperPlugins( std::vector* plugins) override; +#endif void AddContentDecryptionModules( std::vector* cdms, std::vector* cdm_host_file_paths) override; @@ -32,10 +40,12 @@ class AlloyContentClient : public content::ContentClient { base::RefCountedMemory* GetDataResourceBytes(int resource_id) override; gfx::Image& GetNativeImageNamed(int resource_id) override; +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) static void SetPDFEntryFunctions( content::PepperPluginInfo::GetInterfaceFunc get_interface, content::PepperPluginInfo::PPP_InitializeModuleFunc initialize_module, content::PepperPluginInfo::PPP_ShutdownModuleFunc shutdown_module); +#endif }; #endif // CEF_LIBCEF_COMMON_ALLOY_ALLOY_CONTENT_CLIENT_H_ diff --git a/src/cef/libcef/common/alloy/alloy_main_delegate.cc b/src/cef/libcef/common/alloy/alloy_main_delegate.cc index 5022baa38ce1b..af0eeffcf2a28 --- a/src/cef/libcef/common/alloy/alloy_main_delegate.cc +++ b/src/cef/libcef/common/alloy/alloy_main_delegate.cc @@ -25,7 +25,6 @@ #include "base/strings/string_util.h" #include "base/synchronization/waitable_event.h" #include "chrome/browser/browser_process.h" -#include "chrome/child/pdf_child_init.h" #include "chrome/common/chrome_constants.h" #include "chrome/common/chrome_paths.h" #include "chrome/common/chrome_switches.h" @@ -41,7 +40,6 @@ #include "content/public/common/url_constants.h" #include "extensions/common/constants.h" #include "net/base/features.h" -#include "pdf/pdf_ppapi.h" #include "sandbox/policy/switches.h" #include "services/network/public/cpp/features.h" #include "third_party/blink/public/common/switches.h" @@ -58,6 +56,14 @@ #include "ui/base/resource/resource_bundle_win.h" #endif +#if BUILDFLAG(IS_OHOS) +#include "pdf/buildflags.h" +#if BUILDFLAG(ENABLE_PDF) +#include "chrome/child/pdf_child_init.h" +#include "pdf/pdf_ppapi.h" +#endif +#endif + namespace { const char* const kNonWildcardDomainNonPortSchemes[] = { @@ -379,13 +385,17 @@ void AlloyMainDelegate::PreSandboxStartup() { chrome::DIR_USER_DATA); InitializeResourceBundle(); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PDF) MaybePatchGdiGetFontData(); +#endif } void AlloyMainDelegate::SandboxInitialized(const std::string& process_type) { +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) AlloyContentClient::SetPDFEntryFunctions(chrome_pdf::PPP_GetInterface, chrome_pdf::PPP_InitializeModule, chrome_pdf::PPP_ShutdownModule); +#endif } absl::variant AlloyMainDelegate::RunProcess( @@ -548,7 +558,6 @@ void AlloyMainDelegate::InitializeResourceBundle() { std::string locale = command_line->GetSwitchValueASCII(switches::kLang); DCHECK(!locale.empty()); - const std::string loaded_locale = ui::ResourceBundle::InitSharedInstanceWithLocale( locale, &resource_bundle_delegate_, @@ -562,33 +571,47 @@ void AlloyMainDelegate::InitializeResourceBundle() { LOG(ERROR) << "Could not load locale pak for " << locale; resource_bundle_delegate_.set_allow_pack_file_load(true); - +#if BUILDFLAG(IS_OHOS) + resource_bundle.AddDataPackFromPath(resources_pak_file, + ui::kScaleFactorNone); +#else if (base::PathExists(resources_pak_file)) { resource_bundle.AddDataPackFromPath(resources_pak_file, ui::kScaleFactorNone); } else { LOG(ERROR) << "Could not load resources.pak"; } +#endif // Always load the 1x data pack first as the 2x data pack contains both 1x // and 2x images. The 1x data pack only has 1x images, thus passes in an // accurate scale factor to gfx::ImageSkia::AddRepresentation. if (resource_util::IsScaleFactorSupported(ui::k100Percent)) { +#if BUILDFLAG(IS_OHOS) + resource_bundle.AddDataPackFromPath(chrome_100_percent_pak_file, + ui::k100Percent); +#else if (base::PathExists(chrome_100_percent_pak_file)) { resource_bundle.AddDataPackFromPath(chrome_100_percent_pak_file, ui::k100Percent); } else { LOG(ERROR) << "Could not load chrome_100_percent.pak"; } +#endif } if (resource_util::IsScaleFactorSupported(ui::k200Percent)) { +#if BUILDFLAG(IS_OHOS) + resource_bundle.AddDataPackFromPath(chrome_200_percent_pak_file, + ui::k200Percent); +#else if (base::PathExists(chrome_200_percent_pak_file)) { resource_bundle.AddDataPackFromPath(chrome_200_percent_pak_file, ui::k200Percent); } else { LOG(ERROR) << "Could not load chrome_200_percent.pak"; } +#endif } // Skip the default pak file loading that would otherwise occur in diff --git a/src/cef/libcef/common/mojom/cef.mojom b/src/cef/libcef/common/mojom/cef.mojom index 1f8a41de20c2b..5fc111634eee8 --- a/src/cef/libcef/common/mojom/cef.mojom +++ b/src/cef/libcef/common/mojom/cef.mojom @@ -12,6 +12,7 @@ import "services/network/public/mojom/url_request.mojom"; import "third_party/blink/public/mojom/loader/referrer.mojom"; import "ui/gfx/geometry/mojom/geometry.mojom"; import "url/mojom/url.mojom"; +import "mojo/public/mojom/base/time.mojom"; [EnableIf=is_ohos] import "skia/public/mojom/bitmap.mojom"; @@ -130,6 +131,18 @@ interface RenderFrame { [EnableIf=is_ohos] RemoveCache(); + + [EnableIf=is_ohos] + ScrollPageUpDown(bool is_up, bool move_half, float view_height); + + [EnableIf=is_ohos] + ScrollTo(float x, float y); + + [EnableIf=is_ohos] + ScrollBy(float delta_x, float delta_y); + + [EnableIf=is_ohos] + SlideScroll(float vx, float vy); }; // Interface for communicating with a frame in the browser process. diff --git a/src/cef/libcef/common/net/scheme_registration.cc b/src/cef/libcef/common/net/scheme_registration.cc index b377b1a580f03..74a02b838c60a --- a/src/cef/libcef/common/net/scheme_registration.cc +++ b/src/cef/libcef/common/net/scheme_registration.cc @@ -69,6 +69,7 @@ bool IsInternalHandledScheme(const std::string& scheme) { url::kJavaScriptScheme, url::kWsScheme, url::kWssScheme, + url::kResourcesScheme, }; for (size_t i = 0; i < sizeof(schemes) / sizeof(schemes[0]); ++i) { diff --git a/src/cef/libcef/common/soc_perf_util.cc b/src/cef/libcef/common/soc_perf_util.cc index 1864b77cad2b1..6d7ca453ab84e --- a/src/cef/libcef/common/soc_perf_util.cc +++ b/src/cef/libcef/common/soc_perf_util.cc @@ -20,22 +20,48 @@ base::Time SocPerUtil::last_time_boost_timestamp; namespace { const int SOC_PERF_CONFIG_ID = 10020; +const int SOC_PERF_SLIDE_NORMAL_CONFIG_ID = 10025; +const int SOC_PERF_WEB_GUSTURE_ID = 10012; const int MIN_LAYER_NUM = 50; const int MIN_VIDEO_LAYOUT_NUM = 1; const int MAX_BOOST_RUN_TIME_IN_SECOND = 10; const int REST_TIME_IN_SECOND = 2; } // namespace -void SocPerUtil::ApplySocConfig() { - TRACE_EVENT2("soc_perf", "SocPerUtil::ApplySocConfig", "layout_num", +void SocPerUtil::EnableFlingBoost() { + TRACE_EVENT2("soc_perf", "SocPerUtil::EnableFlingBoost2", "layout_num", video_layout_num, "layer_num", layer_num); + OHOS::NWeb::OhosAdapterHelper::GetInstance() + .CreateSocPerfClientAdapter() + ->ApplySocPerfConfigByIdEx(SOC_PERF_WEB_GUSTURE_ID, false); + + OHOS::NWeb::OhosAdapterHelper::GetInstance() + .CreateSocPerfClientAdapter() + ->ApplySocPerfConfigByIdEx(SOC_PERF_SLIDE_NORMAL_CONFIG_ID, true); + if (video_layout_num >= MIN_VIDEO_LAYOUT_NUM || layer_num >= MIN_LAYER_NUM) { OHOS::NWeb::OhosAdapterHelper::GetInstance() .CreateSocPerfClientAdapter() - ->ApplySocPerfConfigById(SOC_PERF_CONFIG_ID); + ->ApplySocPerfConfigByIdEx(SOC_PERF_CONFIG_ID, true); } } +void SocPerUtil::DisableFlingBoost() { + TRACE_EVENT0("soc_perf", "SocPerUtil::DisableFlingBoost"); + + OHOS::NWeb::OhosAdapterHelper::GetInstance() + .CreateSocPerfClientAdapter() + ->ApplySocPerfConfigByIdEx(SOC_PERF_SLIDE_NORMAL_CONFIG_ID, false); + + OHOS::NWeb::OhosAdapterHelper::GetInstance() + .CreateSocPerfClientAdapter() + ->ApplySocPerfConfigByIdEx(SOC_PERF_CONFIG_ID, false); + + OHOS::NWeb::OhosAdapterHelper::GetInstance() + .CreateSocPerfClientAdapter() + ->ApplySocPerfConfigByIdEx(SOC_PERF_WEB_GUSTURE_ID, false); +} + void SocPerUtil::TryRunSocPerf() { if ((base::Time().Now() - first_time_boost_timestamp).InSeconds() >= MAX_BOOST_RUN_TIME_IN_SECOND) { diff --git a/src/cef/libcef/common/soc_perf_util.h b/src/cef/libcef/common/soc_perf_util.h index 87afb17332a97..cdfc6147b68c2 --- a/src/cef/libcef/common/soc_perf_util.h +++ b/src/cef/libcef/common/soc_perf_util.h @@ -14,7 +14,8 @@ extern int layer_num; class SocPerUtil { public: - static void ApplySocConfig(); + static void EnableFlingBoost(); + static void DisableFlingBoost(); static void StartBoost(); private: diff --git a/src/cef/libcef/renderer/alloy/alloy_content_renderer_client.cc b/src/cef/libcef/renderer/alloy/alloy_content_renderer_client.cc index c43d739441ea6..c388996b30e4a --- a/src/cef/libcef/renderer/alloy/alloy_content_renderer_client.cc +++ b/src/cef/libcef/renderer/alloy/alloy_content_renderer_client.cc @@ -33,7 +33,6 @@ #include "libcef/renderer/alloy/url_loader_throttle_provider_impl.h" #include "libcef/renderer/browser_impl.h" #include "libcef/renderer/extensions/extensions_renderer_client.h" -#include "libcef/renderer/extensions/print_render_frame_helper_delegate.h" #include "libcef/renderer/render_frame_observer.h" #include "libcef/renderer/render_manager.h" #include "libcef/renderer/thread_util.h" @@ -53,14 +52,9 @@ #include "chrome/renderer/chrome_content_renderer_client.h" #include "chrome/renderer/extensions/chrome_extensions_renderer_client.h" #include "chrome/renderer/loadtimes_extension_bindings.h" -#include "chrome/renderer/pepper/chrome_pdf_print_client.h" -#include "chrome/renderer/pepper/pepper_helper.h" #include "chrome/renderer/plugins/chrome_plugin_placeholder.h" #include "components/content_settings/core/common/content_settings_types.h" #include "components/nacl/common/nacl_constants.h" -#include "components/pdf/common/internal_plugin_helpers.h" -#include "components/pdf/renderer/internal_plugin_renderer_helpers.h" -#include "components/pdf/renderer/pdf_find_in_page.h" #include "components/printing/renderer/print_render_frame_helper.h" #include "components/spellcheck/renderer/spellcheck.h" #include "components/spellcheck/renderer/spellcheck_provider.h" @@ -109,6 +103,21 @@ #include "base/strings/sys_string_conversions.h" #endif +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PRINT_PREVIEW) +#include "libcef/renderer/extensions/print_render_frame_helper_delegate.h" +#endif + +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) +#include "chrome/renderer/pepper/pepper_helper.h" +#endif + +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PDF) +#include "chrome/renderer/pepper/chrome_pdf_print_client.h" +#include "components/pdf/common/internal_plugin_helpers.h" +#include "components/pdf/renderer/internal_plugin_renderer_helpers.h" +#include "components/pdf/renderer/pdf_find_in_page.h" +#endif + AlloyContentRendererClient::AlloyContentRendererClient() : main_entry_time_(base::TimeTicks::Now()), render_manager_(new CefRenderManager) { @@ -232,10 +241,12 @@ void AlloyContentRendererClient::RenderThreadStarted() { } #endif // BUILDFLAG(IS_MAC) +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PDF) if (extensions::PdfExtensionEnabled()) { pdf_print_client_.reset(new ChromePDFPrintClient()); pdf::PepperPDFHost::SetPrintClient(pdf_print_client_.get()); } +#endif if (extensions::ExtensionsEnabled()) extensions_renderer_client_->RenderThreadStarted(); @@ -276,7 +287,9 @@ void AlloyContentRendererClient::RenderFrameCreated( content::RenderFrame* render_frame) { auto render_frame_observer = new CefRenderFrameObserver(render_frame); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) new PepperHelper(render_frame); +#endif if (extensions::ExtensionsEnabled()) { extensions_renderer_client_->RenderFrameCreated( @@ -302,18 +315,22 @@ void AlloyContentRendererClient::RenderFrameCreated( OnBrowserCreated(render_frame->GetRenderView(), is_windowless); } +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PRINT_PREVIEW) if (is_windowless.has_value()) { new printing::PrintRenderFrameHelper( render_frame, base::WrapUnique( new extensions::CefPrintRenderFrameHelperDelegate(*is_windowless))); } +#endif +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PDF) if (base::FeatureList::IsEnabled(chrome_pdf::features::kPdfUnseasoned)) { render_frame_observer->associated_interfaces()->AddInterface( base::BindRepeating(&pdf::PdfFindInPageFactory::BindReceiver, render_frame->GetRoutingID())); } +#endif } void AlloyContentRendererClient::WebViewCreated(blink::WebView* web_view) { @@ -332,6 +349,7 @@ bool AlloyContentRendererClient::IsPluginHandledExternally( const blink::WebElement& plugin_element, const GURL& original_url, const std::string& mime_type) { +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) if (!extensions::ExtensionsEnabled()) return false; @@ -373,12 +391,16 @@ bool AlloyContentRendererClient::IsPluginHandledExternally( return ChromeExtensionsRendererClient::MaybeCreateMimeHandlerView( plugin_element, original_url, plugin_info->actual_mime_type, plugin_info->plugin); +#else + return false; +#endif } bool AlloyContentRendererClient::OverrideCreatePlugin( content::RenderFrame* render_frame, const blink::WebPluginParams& params, blink::WebPlugin** plugin) { +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) std::string orig_mime_type = params.mime_type.Utf8(); if (extensions::ExtensionsEnabled() && !extensions_renderer_client_->OverrideCreatePlugin(render_frame, @@ -394,6 +416,7 @@ bool AlloyContentRendererClient::OverrideCreatePlugin( &plugin_info); *plugin = ChromeContentRendererClient::CreatePlugin(render_frame, params, *plugin_info); +#endif return true; } diff --git a/src/cef/libcef/renderer/alloy/alloy_content_renderer_client.h b/src/cef/libcef/renderer/alloy/alloy_content_renderer_client.h index 150978262a3ba..59680bb4b815c --- a/src/cef/libcef/renderer/alloy/alloy_content_renderer_client.h +++ b/src/cef/libcef/renderer/alloy/alloy_content_renderer_client.h @@ -25,6 +25,10 @@ #include "mojo/public/cpp/bindings/generic_pending_receiver.h" #include "services/service_manager/public/cpp/local_interface_provider.h" +#if BUILDFLAG(IS_OHOS) +#include "pdf/buildflags.h" +#endif + namespace extensions { class CefExtensionsRendererClient; class Dispatcher; @@ -152,7 +156,9 @@ class AlloyContentRendererClient std::unique_ptr spellcheck_; std::unique_ptr visited_link_slave_; +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PDF) std::unique_ptr pdf_print_client_; +#endif std::unique_ptr extensions_client_; std::unique_ptr diff --git a/src/cef/libcef/renderer/frame_impl.cc b/src/cef/libcef/renderer/frame_impl.cc index 5010d4a9cad73..e74978a2fa7a4 --- a/src/cef/libcef/renderer/frame_impl.cc +++ b/src/cef/libcef/renderer/frame_impl.cc @@ -71,6 +71,17 @@ const std::string kAddressPrefix = "geo:0,0?q="; const std::string kEmailPrefix = "mailto:"; const std::string kPhoneNumberPrefix = "tel:"; +// The amount of content to overlap between two screens when using +// pageUp/pageDown methiods. static int PAGE_SCROLL_OVERLAP = 24; Standard +// animated scroll speed. +static int STD_SCROLL_ANIMATION_SPEED_PIX_PER_SEC = 480; +// Time for the longest scroll animation. +static int MAX_SCROLL_ANIMATION_DURATION_MILLISEC = 750; + +static int DEFAULT_SCROLL_ANIMATION_DURATION_MILLISEC = 600; + +static double POSITION_RATIO = 138.9; + enum HitTestDataType { kUnknown = 0, kPhone = 2, @@ -81,6 +92,17 @@ enum HitTestDataType { kSrcImageLink = 8, kEditText = 9, }; + +int computeDurationInMilliSec(int dx, int dy) { + int distance = std::max(std::abs(dx), std::abs(dy)); + int duration = distance * 1000 / STD_SCROLL_ANIMATION_SPEED_PIX_PER_SEC; + return std::min(duration, MAX_SCROLL_ANIMATION_DURATION_MILLISEC); +} + +float computeSlidePosition(float v) { + return (v * POSITION_RATIO / 1000); +} + #endif // BUILDFLAG(IS_OHOS) } // namespace @@ -808,39 +830,38 @@ void CefFrameImpl::PutZoomingForTextFactor(float factor) { auto render_frame = content::RenderFrame::FromWebFrame(frame_); DCHECK(render_frame->IsMainFrame()); blink::WebView* webview = render_frame->GetRenderView()->GetWebView(); - + if (!webview) return; // Hide selection and autofill popups. webview->CancelPagePopup(); - + render_frame->GetWebFrame()->FrameWidget()->SetTextZoomFactor(factor); } - + void CefFrameImpl::GetImageForContextNode() { if (!frame_) { LOG(ERROR) << "GetImageForContextNode frame is nullptr"; return; } cef::mojom::GetImageForContextNodeParamsPtr params = - cef::mojom::GetImageForContextNodeParams::New(); + cef::mojom::GetImageForContextNodeParams::New(); blink::WebNode context_node = frame_->ContextMenuImageNode(); std::vector image_data; gfx::Size original_size; std::string image_extension; if (context_node.IsNull() || !context_node.IsElementNode()) { - SendToBrowserFrame( - __FUNCTION__, - base::BindOnce( - [](cef::mojom::GetImageForContextNodeParamsPtr data, - const BrowserFrameType& browser_frame) { - browser_frame->OnGetImageForContextNodeNull(); - }, - std::move(params))); + SendToBrowserFrame(__FUNCTION__, + base::BindOnce( + [](cef::mojom::GetImageForContextNodeParamsPtr data, + const BrowserFrameType& browser_frame) { + browser_frame->OnGetImageForContextNodeNull(); + }, + std::move(params))); return; } - + blink::WebElement web_element = context_node.To(); original_size = web_element.GetImageSize(); @@ -963,8 +984,7 @@ void CefFrameImpl::UpdateLocale(const std::string& locale) { return; } std::string result = - ui::ResourceBundle::GetSharedInstance().ReloadLocaleResources( - locale); + ui::ResourceBundle::GetSharedInstance().ReloadLocaleResources(locale); if (result.empty()) { LOG(ERROR) << "CefFrameImpl update locale failed"; } @@ -977,13 +997,83 @@ void CefFrameImpl::GetImagesWithResponse( base::BindOnce( [](cef::mojom::RenderFrame::GetImagesWithResponseCallback callback, blink::WebLocalFrame* frame) { - blink::WebElementCollection collection = frame->GetDocument().GetElementsByHTMLTagName("img"); + blink::WebElementCollection collection = + frame->GetDocument().GetElementsByHTMLTagName("img"); DCHECK(!collection.IsNull()); bool response = !(collection.FirstItem()).IsNull(); std::move(callback).Run(response); }, std::move(callback))); } + +void CefFrameImpl::ScrollPageUpDown(bool is_up, + bool is_half, + float view_height) { + auto render_frame = content::RenderFrame::FromWebFrame(frame_); + DCHECK(render_frame->IsMainFrame()); + blink::WebView* webview = render_frame->GetRenderView()->GetWebView(); + if (!webview) { + LOG(ERROR) << "scorll page up down get webview failed"; + return; + } + auto scroll_offset = webview->GetScrollOffset(); + float dy; + if (is_up) { + dy = is_half ? -view_height : -scroll_offset.y(); + } else { + if (!is_half) { + float bottom_y = webview->GetScrollBottom(); + if (bottom_y <= 0) { + LOG(ERROR) << "get scroll bottom offset failed."; + return; + } + dy = bottom_y - scroll_offset.y(); + } else { + dy = view_height; + } + } + webview->SmoothScroll(scroll_offset.x(), scroll_offset.y() + dy, + base::Milliseconds(computeDurationInMilliSec(0, dy))); +} + +void CefFrameImpl::ScrollTo(float x, float y) { + auto render_frame = content::RenderFrame::FromWebFrame(frame_); + DCHECK(render_frame->IsMainFrame()); + blink::WebView* webview = render_frame->GetRenderView()->GetWebView(); + if (!webview) { + LOG(ERROR) << "scrollto get webview failed"; + return; + } + webview->SetScrollOffset(gfx::PointF(x, y)); +} + +void CefFrameImpl::ScrollBy(float delta_x, float delta_y) { + auto render_frame = content::RenderFrame::FromWebFrame(frame_); + DCHECK(render_frame->IsMainFrame()); + blink::WebView* webview = render_frame->GetRenderView()->GetWebView(); + if (!webview) { + LOG(ERROR) << "scrollby get webview failed"; + return; + } + auto scroll_offset = webview->GetScrollOffset(); + webview->SetScrollOffset(gfx::PointF(delta_x + scroll_offset.x(), + delta_y + scroll_offset.y())); +} + +void CefFrameImpl::SlideScroll(float vx, float vy) { + auto render_frame = content::RenderFrame::FromWebFrame(frame_); + DCHECK(render_frame->IsMainFrame()); + blink::WebView* webview = render_frame->GetRenderView()->GetWebView(); + if (!webview) { + LOG(ERROR) << "scrollby get webview failed"; + return; + } + float dx = vx == 0 ? 0 : computeSlidePosition(vx); + float dy = vy == 0 ? 0 : computeSlidePosition(vy); + auto scroll_offset = webview->GetScrollOffset(); + webview->SmoothScroll(dx + scroll_offset.x(), dy + scroll_offset.y(), + base::Milliseconds(DEFAULT_SCROLL_ANIMATION_DURATION_MILLISEC)); +} #endif // BUILDFLAG(IS_OHOS) // Enable deprecation warnings on Windows. See http://crbug.com/585142. diff --git a/src/cef/libcef/renderer/frame_impl.h b/src/cef/libcef/renderer/frame_impl.h index ab9a91db2c403..d5d4f727493f4 --- a/src/cef/libcef/renderer/frame_impl.h +++ b/src/cef/libcef/renderer/frame_impl.h @@ -159,7 +159,10 @@ class CefFrameImpl : public CefFrame, public cef::mojom::RenderFrame { void GetImagesWithResponse( cef::mojom::RenderFrame::GetImagesWithResponseCallback callback) override; void RemoveCache() override; - + void ScrollPageUpDown(bool is_up, bool is_half, float view_height) override; + void ScrollTo(float x, float y) override; + void ScrollBy(float delta_x, float delta_y) override; + void SlideScroll(float vx, float vy) override; GURL GetAbsoluteUrl(const blink::WebNode& node, const std::u16string& url_fragment); GURL GetAbsoluteSrcUrl(const blink::WebElement& element); diff --git a/src/cef/libcef_dll/cpptoc/access_request_cpptoc.cc b/src/cef/libcef_dll/cpptoc/access_request_cpptoc.cc index d97849ec3b453..f01822fdc08ec --- a/src/cef/libcef_dll/cpptoc/access_request_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/access_request_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6b186aa2b1640034df797d439745503309071680$ +// $hash=43f719c6388e6fb2ee41d8502b7f47983313cfc9$ // #include "libcef_dll/cpptoc/access_request_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/access_request_cpptoc.h b/src/cef/libcef_dll/cpptoc/access_request_cpptoc.h index c5262807d7ce3..8ce9c60ae05ed --- a/src/cef/libcef_dll/cpptoc/access_request_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/access_request_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7f780d77c50f8f64713a51f886c76adc70e44357$ +// $hash=44c32953a5dc70e64d35222732817d6b065f0e33$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_ACCESS_REQUEST_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/accessibility_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/accessibility_handler_cpptoc.cc index 992a81d60965e..daa3ab86b14ba --- a/src/cef/libcef_dll/cpptoc/accessibility_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/accessibility_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f20a2530c9b5ad72cccd301ee4234a16132c487d$ +// $hash=63799a16d1ff311eb185eb57bae7d682d150d376$ // #include "libcef_dll/cpptoc/accessibility_handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/accessibility_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/accessibility_handler_cpptoc.h index b6dce7abc847c..faf271035e848 --- a/src/cef/libcef_dll/cpptoc/accessibility_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/accessibility_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=0605de17534cba62d36fc1160997660c4a38e40b$ +// $hash=0d1469b1473cbef38092a2b0624ac33faa6e1d89$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_ACCESSIBILITY_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/app_cpptoc.cc b/src/cef/libcef_dll/cpptoc/app_cpptoc.cc index bc6f55efe8a81..58572b24012c9 --- a/src/cef/libcef_dll/cpptoc/app_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/app_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ee267b6567062246b9f82b4b50b68d82d2cc939f$ +// $hash=04b98a2d9c374132d2149fd8e3cf8b110acba86f$ // #include "libcef_dll/cpptoc/app_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/app_cpptoc.h b/src/cef/libcef_dll/cpptoc/app_cpptoc.h index c705f806df64a..fe94e85891294 --- a/src/cef/libcef_dll/cpptoc/app_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/app_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=601455da6a16a7212debdb8184b8f731be4e2f8d$ +// $hash=a4d3edb584e87581659ded4e0bb20739b2b0efea$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_APP_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/audio_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/audio_handler_cpptoc.cc index 0317067179b0d..36aec0d286c7d --- a/src/cef/libcef_dll/cpptoc/audio_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/audio_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=519a82bbea84ea39cadc72c55291e15cb2a74072$ +// $hash=56d4812b8f81cbda67550a8b03e8b7af911e5e28$ // #include "libcef_dll/cpptoc/audio_handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/audio_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/audio_handler_cpptoc.h index d2574a797abb7..1d574545486ef --- a/src/cef/libcef_dll/cpptoc/audio_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/audio_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=352ed71e6c70ef8e5f38e635ed8fc17b2fcc2b4e$ +// $hash=6d31cfb9774514e0a15c999903fa4eb9ce76634d$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_AUDIO_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/auth_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/auth_callback_cpptoc.cc index 146cf8370d04b..caedf03194a5c --- a/src/cef/libcef_dll/cpptoc/auth_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/auth_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=1c155d75ccb34c91336d15446c10b7e476f23c44$ +// $hash=b71adaa7f64de4164420e0f28f1c1064813c2beb$ // #include "libcef_dll/cpptoc/auth_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/auth_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/auth_callback_cpptoc.h index b9aae72ade919..6a1dd700efad2 --- a/src/cef/libcef_dll/cpptoc/auth_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/auth_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=036ebbbaaa86b497dda11ef6371e5bc6c9171b04$ +// $hash=be94cb2e319c4a42e8bc9ee41b78935834e8a59c$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_AUTH_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/before_download_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/before_download_callback_cpptoc.cc index 6187dfa3f368c..97825a59f8046 --- a/src/cef/libcef_dll/cpptoc/before_download_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/before_download_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=0f0475ffcd9ea6ca7f91616c52c21b3e51b075f3$ +// $hash=5b940bd6e4a7e6a9cabd42b87ae9ff89eb1a0c5d$ // #include "libcef_dll/cpptoc/before_download_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/before_download_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/before_download_callback_cpptoc.h index fc31cf841792f..9f2944cd96091 --- a/src/cef/libcef_dll/cpptoc/before_download_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/before_download_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=53a024e4e503f7e107c19ed638684c5708efd6e6$ +// $hash=76dfadaa2d0f5ef6cdb8621cad3136e89b33ae25$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_BEFORE_DOWNLOAD_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/binary_value_cpptoc.cc b/src/cef/libcef_dll/cpptoc/binary_value_cpptoc.cc index 51659b1677737..9ad3bd943056c --- a/src/cef/libcef_dll/cpptoc/binary_value_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/binary_value_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=fd59a248f99060800fc3bab5c381784eb3309a57$ +// $hash=b1f1f6a65560c0607e7eb3c4a57dbc40cab0b811$ // #include "libcef_dll/cpptoc/binary_value_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/binary_value_cpptoc.h b/src/cef/libcef_dll/cpptoc/binary_value_cpptoc.h index 994621aa25378..3f6a9e362ddc9 --- a/src/cef/libcef_dll/cpptoc/binary_value_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/binary_value_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=83361bb9395a566ef5bfcd9d87eade8df222d075$ +// $hash=bdc631b2bd2c0a68146e823e0ff23e1b3a455023$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_BINARY_VALUE_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/browser_cpptoc.cc b/src/cef/libcef_dll/cpptoc/browser_cpptoc.cc index 1cdfa28447136..d713abd8f25ec --- a/src/cef/libcef_dll/cpptoc/browser_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/browser_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c1509a4a06a744e423e92c8d75b17128fd0601e1$ +// $hash=de6d56ff06c32a54e999d9309218c6a546eaa146$ // #include "libcef_dll/cpptoc/browser_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/browser_cpptoc.h b/src/cef/libcef_dll/cpptoc/browser_cpptoc.h index 08c927b4983fc..1a10254e25c87 --- a/src/cef/libcef_dll/cpptoc/browser_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/browser_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=68e6a8ff4e47ec0c3c767d80746091550b9d11dc$ +// $hash=01e044c521a174528e137e4b131d9df95875eb65$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_BROWSER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/browser_host_cpptoc.cc b/src/cef/libcef_dll/cpptoc/browser_host_cpptoc.cc index 131f0d1a8d2c4..b7b75e6dd316f --- a/src/cef/libcef_dll/cpptoc/browser_host_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/browser_host_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,10 +9,11 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=1d35c0dce6fb6b92779d45000924a5c0992e5ce7$ +// $hash=fbbfbf396665393a59e2487e84880bafe3568174$ // #include "libcef_dll/cpptoc/browser_host_cpptoc.h" +#include "libcef_dll/cpptoc/binary_value_cpptoc.h" #include "libcef_dll/cpptoc/browser_cpptoc.h" #include "libcef_dll/cpptoc/dictionary_value_cpptoc.h" #include "libcef_dll/cpptoc/drag_data_cpptoc.h" @@ -20,6 +21,7 @@ #include "libcef_dll/cpptoc/navigation_entry_cpptoc.h" #include "libcef_dll/cpptoc/registration_cpptoc.h" #include "libcef_dll/cpptoc/request_context_cpptoc.h" +#include "libcef_dll/cpptoc/value_cpptoc.h" #include "libcef_dll/ctocpp/client_ctocpp.h" #include "libcef_dll/ctocpp/dev_tools_message_observer_ctocpp.h" #include "libcef_dll/ctocpp/download_image_callback_ctocpp.h" @@ -29,6 +31,7 @@ #include "libcef_dll/ctocpp/run_file_dialog_callback_ctocpp.h" #include "libcef_dll/ctocpp/store_web_archive_result_callback_ctocpp.h" #include "libcef_dll/ctocpp/task_ctocpp.h" +#include "libcef_dll/ctocpp/web_message_receiver_ctocpp.h" #include "libcef_dll/shutdown_checker.h" #include "libcef_dll/transfer_util.h" @@ -1251,7 +1254,7 @@ browser_host_destroy_all_web_message_ports(struct _cef_browser_host_t* self) { void CEF_CALLBACK browser_host_post_port_message(struct _cef_browser_host_t* self, cef_string_t* port_handle, - cef_string_t* data) { + struct _cef_value_t* message) { shutdown_checker::AssertNotShutdown(); // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING @@ -1263,24 +1266,23 @@ browser_host_post_port_message(struct _cef_browser_host_t* self, DCHECK(port_handle); if (!port_handle) return; - // Verify param: data; type: string_byref - DCHECK(data); - if (!data) + // Verify param: message; type: refptr_same + DCHECK(message); + if (!message) return; // Translate param: port_handle; type: string_byref CefString port_handleStr(port_handle); - // Translate param: data; type: string_byref - CefString dataStr(data); // Execute - CefBrowserHostCppToC::Get(self)->PostPortMessage(port_handleStr, dataStr); + CefBrowserHostCppToC::Get(self)->PostPortMessage( + port_handleStr, CefValueCppToC::Unwrap(message)); } void CEF_CALLBACK browser_host_set_port_message_callback( struct _cef_browser_host_t* self, cef_string_t* port_handle, - struct _cef_java_script_result_callback_t* callback) { + struct _cef_web_message_receiver_t* callback) { shutdown_checker::AssertNotShutdown(); // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING @@ -1302,7 +1304,7 @@ void CEF_CALLBACK browser_host_set_port_message_callback( // Execute CefBrowserHostCppToC::Get(self)->SetPortMessageCallback( - port_handleStr, CefJavaScriptResultCallbackCToCpp::Wrap(callback)); + port_handleStr, CefWebMessageReceiverCToCpp::Wrap(callback)); } void CEF_CALLBACK browser_host_get_hit_data(struct _cef_browser_host_t* self, @@ -1985,6 +1987,152 @@ void CEF_CALLBACK browser_host_remove_cache(struct _cef_browser_host_t* self, : false); } +void CEF_CALLBACK +browser_host_scroll_page_up_down(struct _cef_browser_host_t* self, + int is_up, + int is_half, + float view_height) { + shutdown_checker::AssertNotShutdown(); + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + DCHECK(self); + if (!self) + return; + + // Execute + CefBrowserHostCppToC::Get(self)->ScrollPageUpDown( + is_up ? true : false, is_half ? true : false, view_height); +} + +struct _cef_binary_value_t* CEF_CALLBACK +browser_host_get_web_state(struct _cef_browser_host_t* self) { + shutdown_checker::AssertNotShutdown(); + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + DCHECK(self); + if (!self) + return NULL; + + // Execute + CefRefPtr _retval = + CefBrowserHostCppToC::Get(self)->GetWebState(); + + // Return type: refptr_same + return CefBinaryValueCppToC::Wrap(_retval); +} + +int CEF_CALLBACK +browser_host_restore_web_state(struct _cef_browser_host_t* self, + struct _cef_binary_value_t* state) { + shutdown_checker::AssertNotShutdown(); + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + DCHECK(self); + if (!self) + return 0; + // Verify param: state; type: refptr_same + DCHECK(state); + if (!state) + return 0; + + // Execute + bool _retval = CefBrowserHostCppToC::Get(self)->RestoreWebState( + CefBinaryValueCppToC::Unwrap(state)); + + // Return type: bool + return _retval; +} + +void CEF_CALLBACK browser_host_scroll_to(struct _cef_browser_host_t* self, + float x, + float y) { + shutdown_checker::AssertNotShutdown(); + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + DCHECK(self); + if (!self) + return; + + // Execute + CefBrowserHostCppToC::Get(self)->ScrollTo(x, y); +} + +void CEF_CALLBACK browser_host_scroll_by(struct _cef_browser_host_t* self, + float delta_x, + float delta_y) { + shutdown_checker::AssertNotShutdown(); + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + DCHECK(self); + if (!self) + return; + + // Execute + CefBrowserHostCppToC::Get(self)->ScrollBy(delta_x, delta_y); +} + +void CEF_CALLBACK browser_host_slide_scroll(struct _cef_browser_host_t* self, + float vx, + float vy) { + shutdown_checker::AssertNotShutdown(); + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + DCHECK(self); + if (!self) + return; + + // Execute + CefBrowserHostCppToC::Get(self)->SlideScroll(vx, vy); +} + +void CEF_CALLBACK browser_host_set_file_access(struct _cef_browser_host_t* self, + int falg) { + shutdown_checker::AssertNotShutdown(); + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + DCHECK(self); + if (!self) + return; + + // Execute + CefBrowserHostCppToC::Get(self)->SetFileAccess(falg ? true : false); +} + +void CEF_CALLBACK +browser_host_set_block_network(struct _cef_browser_host_t* self, int falg) { + shutdown_checker::AssertNotShutdown(); + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + DCHECK(self); + if (!self) + return; + + // Execute + CefBrowserHostCppToC::Get(self)->SetBlockNetwork(falg ? true : false); +} + +void CEF_CALLBACK browser_host_set_cache_mode(struct _cef_browser_host_t* self, + int falg) { + shutdown_checker::AssertNotShutdown(); + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + DCHECK(self); + if (!self) + return; + + // Execute + CefBrowserHostCppToC::Get(self)->SetCacheMode(falg); +} + } // namespace // CONSTRUCTOR - Do not edit by hand. @@ -2098,6 +2246,15 @@ CefBrowserHostCppToC::CefBrowserHostCppToC() { GetStruct()->get_original_url = browser_host_get_original_url; GetStruct()->put_network_available = browser_host_put_network_available; GetStruct()->remove_cache = browser_host_remove_cache; + GetStruct()->scroll_page_up_down = browser_host_scroll_page_up_down; + GetStruct()->get_web_state = browser_host_get_web_state; + GetStruct()->restore_web_state = browser_host_restore_web_state; + GetStruct()->scroll_to = browser_host_scroll_to; + GetStruct()->scroll_by = browser_host_scroll_by; + GetStruct()->slide_scroll = browser_host_slide_scroll; + GetStruct()->set_file_access = browser_host_set_file_access; + GetStruct()->set_block_network = browser_host_set_block_network; + GetStruct()->set_cache_mode = browser_host_set_cache_mode; } // DESTRUCTOR - Do not edit by hand. diff --git a/src/cef/libcef_dll/cpptoc/browser_host_cpptoc.h b/src/cef/libcef_dll/cpptoc/browser_host_cpptoc.h index 3a7c59332962d..2f88bb3380b13 --- a/src/cef/libcef_dll/cpptoc/browser_host_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/browser_host_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=244bcb519cd21d6febf70c4ce40fbc1cbb18176c$ +// $hash=e51f496e40bd2b3b9573d2ca084e578bb1df1407$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_BROWSER_HOST_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/browser_permission_request_delegate_cpptoc.cc b/src/cef/libcef_dll/cpptoc/browser_permission_request_delegate_cpptoc.cc index 821d80ab8fd34..49e9e4134c765 --- a/src/cef/libcef_dll/cpptoc/browser_permission_request_delegate_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/browser_permission_request_delegate_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2f9f0ebd4c8a44fb9c2d2136e0791770fc72dfe0$ +// $hash=4200c2184c268c8a81967053abedbff5fcbc7582$ // #include "libcef_dll/cpptoc/browser_permission_request_delegate_cpptoc.h" @@ -21,8 +21,9 @@ namespace { void CEF_CALLBACK browser_permission_request_delegate_ask_geolocation_permission( - struct _cef_browser_permission_request_delegate_t *self, - const cef_string_t *origin, cef_permission_callback_t callback) { + struct _cef_browser_permission_request_delegate_t* self, + const cef_string_t* origin, + cef_permission_callback_t callback) { shutdown_checker::AssertNotShutdown(); // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING @@ -42,8 +43,8 @@ browser_permission_request_delegate_ask_geolocation_permission( void CEF_CALLBACK browser_permission_request_delegate_abort_ask_geolocation_permission( - struct _cef_browser_permission_request_delegate_t *self, - const cef_string_t *origin) { + struct _cef_browser_permission_request_delegate_t* self, + const cef_string_t* origin) { shutdown_checker::AssertNotShutdown(); // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING @@ -63,8 +64,9 @@ browser_permission_request_delegate_abort_ask_geolocation_permission( void CEF_CALLBACK browser_permission_request_delegate_ask_protected_media_identifier_permission( - struct _cef_browser_permission_request_delegate_t *self, - const cef_string_t *origin, cef_permission_callback_t callback) { + struct _cef_browser_permission_request_delegate_t* self, + const cef_string_t* origin, + cef_permission_callback_t callback) { shutdown_checker::AssertNotShutdown(); // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING @@ -84,8 +86,8 @@ browser_permission_request_delegate_ask_protected_media_identifier_permission( void CEF_CALLBACK browser_permission_request_delegate_abort_ask_protected_media_identifier_permission( - struct _cef_browser_permission_request_delegate_t *self, - const cef_string_t *origin) { + struct _cef_browser_permission_request_delegate_t* self, + const cef_string_t* origin) { shutdown_checker::AssertNotShutdown(); // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING @@ -104,8 +106,9 @@ browser_permission_request_delegate_abort_ask_protected_media_identifier_permiss } void CEF_CALLBACK browser_permission_request_delegate_ask_midisysex_permission( - struct _cef_browser_permission_request_delegate_t *self, - const cef_string_t *origin, cef_permission_callback_t callback) { + struct _cef_browser_permission_request_delegate_t* self, + const cef_string_t* origin, + cef_permission_callback_t callback) { shutdown_checker::AssertNotShutdown(); // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING @@ -125,8 +128,8 @@ void CEF_CALLBACK browser_permission_request_delegate_ask_midisysex_permission( void CEF_CALLBACK browser_permission_request_delegate_abort_ask_midisysex_permission( - struct _cef_browser_permission_request_delegate_t *self, - const cef_string_t *origin) { + struct _cef_browser_permission_request_delegate_t* self, + const cef_string_t* origin) { shutdown_checker::AssertNotShutdown(); // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING @@ -146,8 +149,9 @@ browser_permission_request_delegate_abort_ask_midisysex_permission( void CEF_CALLBACK browser_permission_request_delegate_notify_geolocation_permission( - struct _cef_browser_permission_request_delegate_t *self, int value, - const cef_string_t *origin) { + struct _cef_browser_permission_request_delegate_t* self, + int value, + const cef_string_t* origin) { shutdown_checker::AssertNotShutdown(); // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING @@ -165,7 +169,7 @@ browser_permission_request_delegate_notify_geolocation_permission( ->NotifyGeolocationPermission(value ? true : false, CefString(origin)); } -} // namespace +} // namespace // CONSTRUCTOR - Do not edit by hand. @@ -200,7 +204,7 @@ CefCppToCRefCounted:: UnwrapDerived(CefWrapperType type, - cef_browser_permission_request_delegate_t *s) { + cef_browser_permission_request_delegate_t* s) { NOTREACHED() << "Unexpected class type: " << type; return nullptr; } diff --git a/src/cef/libcef_dll/cpptoc/browser_permission_request_delegate_cpptoc.h b/src/cef/libcef_dll/cpptoc/browser_permission_request_delegate_cpptoc.h index 34e1571c8b229..e7e22ba877c49 --- a/src/cef/libcef_dll/cpptoc/browser_permission_request_delegate_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/browser_permission_request_delegate_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=56d5e14a811fca57a762921bdef1270c44af6b4c$ +// $hash=add424cc39b4f5c546f8333e3c25dc8090880a81$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_BROWSER_PERMISSION_REQUEST_DELEGATE_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/browser_process_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/browser_process_handler_cpptoc.cc index 0a3e0b0e0a668..c8c86a5ee47ba --- a/src/cef/libcef_dll/cpptoc/browser_process_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/browser_process_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=452f119327aff2ec0aaed162adf85bbd239b9033$ +// $hash=a872b0755d60861a2ccf93526ba6b05a74274e7d$ // #include "libcef_dll/cpptoc/browser_process_handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/browser_process_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/browser_process_handler_cpptoc.h index 5ee18f0f521f1..19b902d512c28 --- a/src/cef/libcef_dll/cpptoc/browser_process_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/browser_process_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ebbabaa3d73f0266003818a764f8ca677a9ec6b2$ +// $hash=508373dbbfcb411f218ad9688d56b49380d8ca75$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_BROWSER_PROCESS_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/callback_cpptoc.cc index 5deff72b31bc4..fc1a46e0b4fd7 --- a/src/cef/libcef_dll/cpptoc/callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=01b8f661ca054d4a48ee00f1163011688b32e9f1$ +// $hash=c692df579a3b5f6d780c1e26013c91e2eb2098c8$ // #include "libcef_dll/cpptoc/callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/callback_cpptoc.h index 8850a48171bc3..611c202b5be0f --- a/src/cef/libcef_dll/cpptoc/callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5b2fa7fef3cde7efde7df615769b6361ea81ce46$ +// $hash=f0c92901c6462ad03d3c95c0ba92129784c808e1$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/client_cpptoc.cc b/src/cef/libcef_dll/cpptoc/client_cpptoc.cc index b2144570d57e5..84bae5411537c --- a/src/cef/libcef_dll/cpptoc/client_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/client_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=be6ffc497bb625fc087fa38352b8f173f1de3d6d$ +// $hash=9d36943180a6382a12e74a92d9d9967039f14ad3$ // #include "libcef_dll/cpptoc/client_cpptoc.h" @@ -39,8 +39,8 @@ namespace { // MEMBER FUNCTIONS - Body may be edited by hand. -cef_audio_handler_t *CEF_CALLBACK -client_get_audio_handler(struct _cef_client_t *self) { +cef_audio_handler_t* CEF_CALLBACK +client_get_audio_handler(struct _cef_client_t* self) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -55,8 +55,8 @@ client_get_audio_handler(struct _cef_client_t *self) { return CefAudioHandlerCppToC::Wrap(_retval); } -struct _cef_context_menu_handler_t *CEF_CALLBACK -client_get_context_menu_handler(struct _cef_client_t *self) { +struct _cef_context_menu_handler_t* CEF_CALLBACK +client_get_context_menu_handler(struct _cef_client_t* self) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -71,8 +71,8 @@ client_get_context_menu_handler(struct _cef_client_t *self) { return CefContextMenuHandlerCppToC::Wrap(_retval); } -struct _cef_dialog_handler_t *CEF_CALLBACK -client_get_dialog_handler(struct _cef_client_t *self) { +struct _cef_dialog_handler_t* CEF_CALLBACK +client_get_dialog_handler(struct _cef_client_t* self) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -87,8 +87,8 @@ client_get_dialog_handler(struct _cef_client_t *self) { return CefDialogHandlerCppToC::Wrap(_retval); } -struct _cef_display_handler_t *CEF_CALLBACK -client_get_display_handler(struct _cef_client_t *self) { +struct _cef_display_handler_t* CEF_CALLBACK +client_get_display_handler(struct _cef_client_t* self) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -103,8 +103,8 @@ client_get_display_handler(struct _cef_client_t *self) { return CefDisplayHandlerCppToC::Wrap(_retval); } -struct _cef_download_handler_t *CEF_CALLBACK -client_get_download_handler(struct _cef_client_t *self) { +struct _cef_download_handler_t* CEF_CALLBACK +client_get_download_handler(struct _cef_client_t* self) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -119,8 +119,8 @@ client_get_download_handler(struct _cef_client_t *self) { return CefDownloadHandlerCppToC::Wrap(_retval); } -struct _cef_drag_handler_t *CEF_CALLBACK -client_get_drag_handler(struct _cef_client_t *self) { +struct _cef_drag_handler_t* CEF_CALLBACK +client_get_drag_handler(struct _cef_client_t* self) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -135,8 +135,8 @@ client_get_drag_handler(struct _cef_client_t *self) { return CefDragHandlerCppToC::Wrap(_retval); } -struct _cef_find_handler_t *CEF_CALLBACK -client_get_find_handler(struct _cef_client_t *self) { +struct _cef_find_handler_t* CEF_CALLBACK +client_get_find_handler(struct _cef_client_t* self) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -151,8 +151,8 @@ client_get_find_handler(struct _cef_client_t *self) { return CefFindHandlerCppToC::Wrap(_retval); } -struct _cef_focus_handler_t *CEF_CALLBACK -client_get_focus_handler(struct _cef_client_t *self) { +struct _cef_focus_handler_t* CEF_CALLBACK +client_get_focus_handler(struct _cef_client_t* self) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -167,8 +167,8 @@ client_get_focus_handler(struct _cef_client_t *self) { return CefFocusHandlerCppToC::Wrap(_retval); } -struct _cef_frame_handler_t *CEF_CALLBACK -client_get_frame_handler(struct _cef_client_t *self) { +struct _cef_frame_handler_t* CEF_CALLBACK +client_get_frame_handler(struct _cef_client_t* self) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -183,8 +183,8 @@ client_get_frame_handler(struct _cef_client_t *self) { return CefFrameHandlerCppToC::Wrap(_retval); } -struct _cef_jsdialog_handler_t *CEF_CALLBACK -client_get_jsdialog_handler(struct _cef_client_t *self) { +struct _cef_jsdialog_handler_t* CEF_CALLBACK +client_get_jsdialog_handler(struct _cef_client_t* self) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -199,8 +199,8 @@ client_get_jsdialog_handler(struct _cef_client_t *self) { return CefJSDialogHandlerCppToC::Wrap(_retval); } -struct _cef_keyboard_handler_t *CEF_CALLBACK -client_get_keyboard_handler(struct _cef_client_t *self) { +struct _cef_keyboard_handler_t* CEF_CALLBACK +client_get_keyboard_handler(struct _cef_client_t* self) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -215,8 +215,8 @@ client_get_keyboard_handler(struct _cef_client_t *self) { return CefKeyboardHandlerCppToC::Wrap(_retval); } -struct _cef_life_span_handler_t *CEF_CALLBACK -client_get_life_span_handler(struct _cef_client_t *self) { +struct _cef_life_span_handler_t* CEF_CALLBACK +client_get_life_span_handler(struct _cef_client_t* self) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -231,8 +231,8 @@ client_get_life_span_handler(struct _cef_client_t *self) { return CefLifeSpanHandlerCppToC::Wrap(_retval); } -struct _cef_load_handler_t *CEF_CALLBACK -client_get_load_handler(struct _cef_client_t *self) { +struct _cef_load_handler_t* CEF_CALLBACK +client_get_load_handler(struct _cef_client_t* self) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -247,8 +247,8 @@ client_get_load_handler(struct _cef_client_t *self) { return CefLoadHandlerCppToC::Wrap(_retval); } -struct _cef_print_handler_t *CEF_CALLBACK -client_get_print_handler(struct _cef_client_t *self) { +struct _cef_print_handler_t* CEF_CALLBACK +client_get_print_handler(struct _cef_client_t* self) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -263,8 +263,8 @@ client_get_print_handler(struct _cef_client_t *self) { return CefPrintHandlerCppToC::Wrap(_retval); } -struct _cef_render_handler_t *CEF_CALLBACK -client_get_render_handler(struct _cef_client_t *self) { +struct _cef_render_handler_t* CEF_CALLBACK +client_get_render_handler(struct _cef_client_t* self) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -279,8 +279,8 @@ client_get_render_handler(struct _cef_client_t *self) { return CefRenderHandlerCppToC::Wrap(_retval); } -struct _cef_request_handler_t *CEF_CALLBACK -client_get_request_handler(struct _cef_client_t *self) { +struct _cef_request_handler_t* CEF_CALLBACK +client_get_request_handler(struct _cef_client_t* self) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -295,8 +295,8 @@ client_get_request_handler(struct _cef_client_t *self) { return CefRequestHandlerCppToC::Wrap(_retval); } -struct _cef_permission_request_t *CEF_CALLBACK -client_get_permission_request(struct _cef_client_t *self) { +struct _cef_permission_request_t* CEF_CALLBACK +client_get_permission_request(struct _cef_client_t* self) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -311,10 +311,12 @@ client_get_permission_request(struct _cef_client_t *self) { return CefPermissionRequestCppToC::Wrap(_retval); } -int CEF_CALLBACK client_on_process_message_received( - struct _cef_client_t *self, cef_browser_t *browser, - struct _cef_frame_t *frame, cef_process_id_t source_process, - struct _cef_process_message_t *message) { +int CEF_CALLBACK +client_on_process_message_received(struct _cef_client_t* self, + cef_browser_t* browser, + struct _cef_frame_t* frame, + cef_process_id_t source_process, + struct _cef_process_message_t* message) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -342,10 +344,12 @@ int CEF_CALLBACK client_on_process_message_received( return _retval; } -int CEF_CALLBACK client_notify_java_script_result( - struct _cef_client_t *self, struct _cef_list_value_t *args, - const cef_string_t *method, const cef_string_t *object_name, - struct _cef_list_value_t *result) { +int CEF_CALLBACK +client_notify_java_script_result(struct _cef_client_t* self, + struct _cef_list_value_t* args, + const cef_string_t* method, + const cef_string_t* object_name, + struct _cef_list_value_t* result) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -377,7 +381,7 @@ int CEF_CALLBACK client_notify_java_script_result( return _retval; } -} // namespace +} // namespace // CONSTRUCTOR - Do not edit by hand. @@ -410,11 +414,12 @@ CefClientCppToC::~CefClientCppToC() {} template <> CefRefPtr CefCppToCRefCounted::UnwrapDerived( - CefWrapperType type, cef_client_t *s) { + CefWrapperType type, + cef_client_t* s) { NOTREACHED() << "Unexpected class type: " << type; return nullptr; } template <> -CefWrapperType CefCppToCRefCounted::kWrapperType = WT_CLIENT; +CefWrapperType CefCppToCRefCounted:: + kWrapperType = WT_CLIENT; diff --git a/src/cef/libcef_dll/cpptoc/client_cpptoc.h b/src/cef/libcef_dll/cpptoc/client_cpptoc.h index e33730c9b5600..3898b87ee470e --- a/src/cef/libcef_dll/cpptoc/client_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/client_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=30d4264433606a5e29f5ec2a325f630b278d4be9$ +// $hash=6dd8a3977d8a7d75da7399a9c15a160afbfcf744$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_CLIENT_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/command_line_cpptoc.cc b/src/cef/libcef_dll/cpptoc/command_line_cpptoc.cc index 97e1a5ef50fbf..5eeb22109684e --- a/src/cef/libcef_dll/cpptoc/command_line_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/command_line_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=fec108946a9d826210e4fa3746839b56a123316c$ +// $hash=69cdcccdd0b005cb929d250a0ccfe287d1df37ed$ // #include "libcef_dll/cpptoc/command_line_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/command_line_cpptoc.h b/src/cef/libcef_dll/cpptoc/command_line_cpptoc.h index a466cc76fd052..45eb004c92d23 --- a/src/cef/libcef_dll/cpptoc/command_line_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/command_line_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=395fccd246892782a1c4a26a87baa43f75436bd8$ +// $hash=f8af58d9e62d25a46593ccebc487734730f6a1a3$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_COMMAND_LINE_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/completion_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/completion_callback_cpptoc.cc index dbfc0cab561e1..158c9b5df8783 --- a/src/cef/libcef_dll/cpptoc/completion_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/completion_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c16d5dc361785c620c9066fc473a443651afa7ab$ +// $hash=0d30202496e04b3b51a914a480dca377de198807$ // #include "libcef_dll/cpptoc/completion_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/completion_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/completion_callback_cpptoc.h index 96b2bb1c78f0d..f57a9e4fae4f1 --- a/src/cef/libcef_dll/cpptoc/completion_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/completion_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7ac48d4ac56f3e31947f8f3b9d9bf54a3bc3383c$ +// $hash=407df18b90244b245e73c4f69a199663df079f0d$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_COMPLETION_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/context_menu_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/context_menu_handler_cpptoc.cc index 84eb030acc8b9..72ffa966fc5d1 --- a/src/cef/libcef_dll/cpptoc/context_menu_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/context_menu_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9652f02b935b2e77b689283cbc0b61e2efc95c17$ +// $hash=2a6026a4c3f2190e968af0d43bf5a96ce3335c32$ // #include "libcef_dll/cpptoc/context_menu_handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/context_menu_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/context_menu_handler_cpptoc.h index f429b4b8593c1..fe010bf8565ba --- a/src/cef/libcef_dll/cpptoc/context_menu_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/context_menu_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=51d213cb8d40ba1f608944422e0522749e433a6f$ +// $hash=68dd3aa1b0a216bdc63aa9ed3008b0b5815f8040$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_CONTEXT_MENU_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/context_menu_params_cpptoc.cc b/src/cef/libcef_dll/cpptoc/context_menu_params_cpptoc.cc index 6c26eac30765f..0f79a6583d0cb --- a/src/cef/libcef_dll/cpptoc/context_menu_params_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/context_menu_params_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e2f6dee4f74c0eb0979d7a557b007fb8e495bcbb$ +// $hash=b086ddccc396ae8b81f8847a2942325ea7b68faf$ // #include "libcef_dll/cpptoc/context_menu_params_cpptoc.h" @@ -383,6 +383,43 @@ context_menu_params_is_custom_menu(struct _cef_context_menu_params_t* self) { return _retval; } +cef_context_menu_input_field_type_t CEF_CALLBACK +context_menu_params_get_input_field_type( + struct _cef_context_menu_params_t* self) { + shutdown_checker::AssertNotShutdown(); + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + DCHECK(self); + if (!self) + return CM_INPUTFIELDTYPE_NONE; + + // Execute + cef_context_menu_input_field_type_t _retval = + CefContextMenuParamsCppToC::Get(self)->GetInputFieldType(); + + // Return type: simple + return _retval; +} + +cef_context_menu_source_type_t CEF_CALLBACK +context_menu_params_get_source_type(struct _cef_context_menu_params_t* self) { + shutdown_checker::AssertNotShutdown(); + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + DCHECK(self); + if (!self) + return CM_SOURCETYPE_NONE; + + // Execute + cef_context_menu_source_type_t _retval = + CefContextMenuParamsCppToC::Get(self)->GetSourceType(); + + // Return type: simple + return _retval; +} + } // namespace // CONSTRUCTOR - Do not edit by hand. @@ -412,6 +449,8 @@ CefContextMenuParamsCppToC::CefContextMenuParamsCppToC() { context_menu_params_is_spell_check_enabled; GetStruct()->get_edit_state_flags = context_menu_params_get_edit_state_flags; GetStruct()->is_custom_menu = context_menu_params_is_custom_menu; + GetStruct()->get_input_field_type = context_menu_params_get_input_field_type; + GetStruct()->get_source_type = context_menu_params_get_source_type; } // DESTRUCTOR - Do not edit by hand. diff --git a/src/cef/libcef_dll/cpptoc/context_menu_params_cpptoc.h b/src/cef/libcef_dll/cpptoc/context_menu_params_cpptoc.h index e4cc567718318..ccae20acf3f51 --- a/src/cef/libcef_dll/cpptoc/context_menu_params_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/context_menu_params_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9612bbf58cbf1ee4c41d9cec79267e473d130172$ +// $hash=289e9100aeb329f9ec7d1696354e31f2eb7d8ce9$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_CONTEXT_MENU_PARAMS_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/cookie_access_filter_cpptoc.cc b/src/cef/libcef_dll/cpptoc/cookie_access_filter_cpptoc.cc index eb095602c203c..300574a4085c8 --- a/src/cef/libcef_dll/cpptoc/cookie_access_filter_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/cookie_access_filter_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8a64cdcb148bd7c9cad278d57c353ebf48386a16$ +// $hash=714da2b623c625391a0ca8415f5dcc3a434e212e$ // #include "libcef_dll/cpptoc/cookie_access_filter_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/cookie_access_filter_cpptoc.h b/src/cef/libcef_dll/cpptoc/cookie_access_filter_cpptoc.h index 32c7864d66dc1..d3e150457aaba --- a/src/cef/libcef_dll/cpptoc/cookie_access_filter_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/cookie_access_filter_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=16e58fb5b73a0c13602b01a14afb4f6a882c094d$ +// $hash=e0b8da1120abbbb306c6cc789ec94e38dc07ceb0$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_COOKIE_ACCESS_FILTER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/cookie_manager_cpptoc.cc b/src/cef/libcef_dll/cpptoc/cookie_manager_cpptoc.cc index c78c8f33be0c4..bb862918e0a8f --- a/src/cef/libcef_dll/cpptoc/cookie_manager_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/cookie_manager_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e2ce6d109390673bbfa660a9a43b8f7ce2e3adf7$ +// $hash=2efc0918bc483be69599cf2cd08c0f3894b560d0$ // #include "libcef_dll/cpptoc/cookie_manager_cpptoc.h" @@ -20,8 +20,8 @@ // GLOBAL FUNCTIONS - Body may be edited by hand. -CEF_EXPORT cef_cookie_manager_t * -cef_cookie_manager_get_global_manager(cef_completion_callback_t *callback) { +CEF_EXPORT cef_cookie_manager_t* cef_cookie_manager_get_global_manager( + cef_completion_callback_t* callback) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Unverified params: callback @@ -34,10 +34,10 @@ cef_cookie_manager_get_global_manager(cef_completion_callback_t *callback) { return CefCookieManagerCppToC::Wrap(_retval); } -CEF_EXPORT int -cef_cookie_manager_create_cef_cookie(const cef_string_t *url, - const cef_string_t *value, - struct _cef_cookie_t *cef_cookie) { +CEF_EXPORT int cef_cookie_manager_create_cef_cookie( + const cef_string_t* url, + const cef_string_t* value, + struct _cef_cookie_t* cef_cookie) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Verify param: url; type: string_byref_const @@ -75,7 +75,7 @@ namespace { // MEMBER FUNCTIONS - Body may be edited by hand. int CEF_CALLBACK -cookie_manager_is_accept_cookie_allowed(struct _cef_cookie_manager_t *self) { +cookie_manager_is_accept_cookie_allowed(struct _cef_cookie_manager_t* self) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -89,8 +89,9 @@ cookie_manager_is_accept_cookie_allowed(struct _cef_cookie_manager_t *self) { return _retval; } -void CEF_CALLBACK cookie_manager_put_accept_cookie_enabled( - struct _cef_cookie_manager_t *self, int accept) { +void CEF_CALLBACK +cookie_manager_put_accept_cookie_enabled(struct _cef_cookie_manager_t* self, + int accept) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -103,7 +104,7 @@ void CEF_CALLBACK cookie_manager_put_accept_cookie_enabled( } int CEF_CALLBACK cookie_manager_is_third_party_cookie_allowed( - struct _cef_cookie_manager_t *self) { + struct _cef_cookie_manager_t* self) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -118,7 +119,8 @@ int CEF_CALLBACK cookie_manager_is_third_party_cookie_allowed( } void CEF_CALLBACK cookie_manager_put_accept_third_party_cookie_enabled( - struct _cef_cookie_manager_t *self, int accept) { + struct _cef_cookie_manager_t* self, + int accept) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -131,7 +133,7 @@ void CEF_CALLBACK cookie_manager_put_accept_third_party_cookie_enabled( } int CEF_CALLBACK cookie_manager_is_file_urlscheme_cookies_allowed( - struct _cef_cookie_manager_t *self) { + struct _cef_cookie_manager_t* self) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -147,7 +149,8 @@ int CEF_CALLBACK cookie_manager_is_file_urlscheme_cookies_allowed( } void CEF_CALLBACK cookie_manager_put_accept_file_urlscheme_cookies_enabled( - struct _cef_cookie_manager_t *self, int allow) { + struct _cef_cookie_manager_t* self, + int allow) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -159,8 +162,9 @@ void CEF_CALLBACK cookie_manager_put_accept_file_urlscheme_cookies_enabled( allow ? true : false); } -int CEF_CALLBACK cookie_manager_visit_all_cookies( - struct _cef_cookie_manager_t *self, struct _cef_cookie_visitor_t *visitor) { +int CEF_CALLBACK +cookie_manager_visit_all_cookies(struct _cef_cookie_manager_t* self, + struct _cef_cookie_visitor_t* visitor) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -179,9 +183,11 @@ int CEF_CALLBACK cookie_manager_visit_all_cookies( return _retval; } -int CEF_CALLBACK cookie_manager_visit_url_cookies( - struct _cef_cookie_manager_t *self, const cef_string_t *url, - int includeHttpOnly, struct _cef_cookie_visitor_t *visitor) { +int CEF_CALLBACK +cookie_manager_visit_url_cookies(struct _cef_cookie_manager_t* self, + const cef_string_t* url, + int includeHttpOnly, + struct _cef_cookie_visitor_t* visitor) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -205,10 +211,11 @@ int CEF_CALLBACK cookie_manager_visit_url_cookies( return _retval; } -int CEF_CALLBACK cookie_manager_set_cookie( - struct _cef_cookie_manager_t *self, const cef_string_t *url, - const struct _cef_cookie_t *cookie, - struct _cef_set_cookie_callback_t *callback) { +int CEF_CALLBACK +cookie_manager_set_cookie(struct _cef_cookie_manager_t* self, + const cef_string_t* url, + const struct _cef_cookie_t* cookie, + struct _cef_set_cookie_callback_t* callback) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -237,10 +244,12 @@ int CEF_CALLBACK cookie_manager_set_cookie( return _retval; } -int CEF_CALLBACK cookie_manager_delete_cookies( - struct _cef_cookie_manager_t *self, const cef_string_t *url, - const cef_string_t *cookie_name, int is_session, - struct _cef_delete_cookies_callback_t *callback) { +int CEF_CALLBACK +cookie_manager_delete_cookies(struct _cef_cookie_manager_t* self, + const cef_string_t* url, + const cef_string_t* cookie_name, + int is_session, + struct _cef_delete_cookies_callback_t* callback) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -257,8 +266,9 @@ int CEF_CALLBACK cookie_manager_delete_cookies( return _retval; } -int CEF_CALLBACK cookie_manager_flush_store( - struct _cef_cookie_manager_t *self, cef_completion_callback_t *callback) { +int CEF_CALLBACK +cookie_manager_flush_store(struct _cef_cookie_manager_t* self, + cef_completion_callback_t* callback) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -274,7 +284,7 @@ int CEF_CALLBACK cookie_manager_flush_store( return _retval; } -} // namespace +} // namespace // CONSTRUCTOR - Do not edit by hand. @@ -303,16 +313,17 @@ CefCookieManagerCppToC::CefCookieManagerCppToC() { CefCookieManagerCppToC::~CefCookieManagerCppToC() {} template <> -CefRefPtr -CefCppToCRefCounted::UnwrapDerived(CefWrapperType type, - cef_cookie_manager_t - *s) { +CefRefPtr CefCppToCRefCounted< + CefCookieManagerCppToC, + CefCookieManager, + cef_cookie_manager_t>::UnwrapDerived(CefWrapperType type, + cef_cookie_manager_t* s) { NOTREACHED() << "Unexpected class type: " << type; return nullptr; } template <> -CefWrapperType CefCppToCRefCounted::kWrapperType = WT_COOKIE_MANAGER; diff --git a/src/cef/libcef_dll/cpptoc/cookie_manager_cpptoc.h b/src/cef/libcef_dll/cpptoc/cookie_manager_cpptoc.h index b1088b73409db..9f4094feb8497 --- a/src/cef/libcef_dll/cpptoc/cookie_manager_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/cookie_manager_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=75170ff033e8e382ba463d350493fab6e12e4192$ +// $hash=3c70ed00438c00d85c27407d1c0947d2b310f401$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_COOKIE_MANAGER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/cookie_visitor_cpptoc.cc b/src/cef/libcef_dll/cpptoc/cookie_visitor_cpptoc.cc index d3d5ef089562e..82b09a1fc8348 --- a/src/cef/libcef_dll/cpptoc/cookie_visitor_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/cookie_visitor_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=07483aea0b811fedba3da36f7a598f06edd22faf$ +// $hash=399d62b7dd532222ab5e208d95acbd46985cc1aa$ // #include "libcef_dll/cpptoc/cookie_visitor_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/cookie_visitor_cpptoc.h b/src/cef/libcef_dll/cpptoc/cookie_visitor_cpptoc.h index 130318cd07a66..f0dd94f0541eb --- a/src/cef/libcef_dll/cpptoc/cookie_visitor_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/cookie_visitor_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2c087a5613a69038aa9bba45c46a56d96c6a60ba$ +// $hash=45985eb9f0544a0c90fea396ec66c921e44f55a5$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_COOKIE_VISITOR_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/data_base_cpptoc.cc b/src/cef/libcef_dll/cpptoc/data_base_cpptoc.cc index 5493176c301e2..fb65d762c7cd5 --- a/src/cef/libcef_dll/cpptoc/data_base_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/data_base_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5cc7dfcfeb969f00a01d13456464b2811bda3a85$ +// $hash=8781ffbbab1b14d126dd8e91270e04628354940e$ // #include "libcef_dll/cpptoc/data_base_cpptoc.h" @@ -95,7 +95,9 @@ void CEF_CALLBACK data_base_get_http_auth_credentials(struct _cef_data_base_t* self, const cef_string_t* host, const cef_string_t* realm, - cef_string_list_t username_password) { + cef_string_t* username, + char* password, + uint32_t passwordSize) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -109,26 +111,27 @@ data_base_get_http_auth_credentials(struct _cef_data_base_t* self, DCHECK(realm); if (!realm) return; - // Verify param: username_password; type: string_vec_byref - DCHECK(username_password); - if (!username_password) + // Verify param: username; type: string_byref + DCHECK(username); + if (!username) + return; + // Verify param: password; type: simple_byaddr + DCHECK(password); + if (!password) return; - // Translate param: username_password; type: string_vec_byref - std::vector username_passwordList; - transfer_string_list_contents(username_password, username_passwordList); + // Translate param: username; type: string_byref + CefString usernameStr(username); // Execute CefDataBaseCppToC::Get(self)->GetHttpAuthCredentials( - CefString(host), CefString(realm), username_passwordList); - - // Restore param: username_password; type: string_vec_byref - cef_string_list_clear(username_password); - transfer_string_list_contents(username_passwordList, username_password); + CefString(host), CefString(realm), usernameStr, password, passwordSize); } -int CEF_CALLBACK data_base_exist_permission_by_origin( - struct _cef_data_base_t *self, const cef_string_t *origin, int type) { +int CEF_CALLBACK +data_base_exist_permission_by_origin(struct _cef_data_base_t* self, + const cef_string_t* origin, + int type) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -147,9 +150,11 @@ int CEF_CALLBACK data_base_exist_permission_by_origin( return _retval; } -int CEF_CALLBACK data_base_get_permission_result_by_origin( - struct _cef_data_base_t *self, const cef_string_t *origin, int type, - int *result) { +int CEF_CALLBACK +data_base_get_permission_result_by_origin(struct _cef_data_base_t* self, + const cef_string_t* origin, + int type, + int* result) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -179,9 +184,11 @@ int CEF_CALLBACK data_base_get_permission_result_by_origin( return _retval; } -void CEF_CALLBACK data_base_set_permission_by_origin( - struct _cef_data_base_t *self, const cef_string_t *origin, int type, - int result) { +void CEF_CALLBACK +data_base_set_permission_by_origin(struct _cef_data_base_t* self, + const cef_string_t* origin, + int type, + int result) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -197,8 +204,10 @@ void CEF_CALLBACK data_base_set_permission_by_origin( result ? true : false); } -void CEF_CALLBACK data_base_clear_permission_by_origin( - struct _cef_data_base_t *self, const cef_string_t *origin, int type) { +void CEF_CALLBACK +data_base_clear_permission_by_origin(struct _cef_data_base_t* self, + const cef_string_t* origin, + int type) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); @@ -214,7 +223,7 @@ void CEF_CALLBACK data_base_clear_permission_by_origin( type); } -void CEF_CALLBACK data_base_clear_all_permission(struct _cef_data_base_t *self, +void CEF_CALLBACK data_base_clear_all_permission(struct _cef_data_base_t* self, int type) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING @@ -226,8 +235,10 @@ void CEF_CALLBACK data_base_clear_all_permission(struct _cef_data_base_t *self, CefDataBaseCppToC::Get(self)->ClearAllPermission(type); } -void CEF_CALLBACK data_base_get_origins_by_permission( - struct _cef_data_base_t *self, int type, cef_string_list_t origins) { +void CEF_CALLBACK +data_base_get_origins_by_permission(struct _cef_data_base_t* self, + int type, + cef_string_list_t origins) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING DCHECK(self); diff --git a/src/cef/libcef_dll/cpptoc/data_base_cpptoc.h b/src/cef/libcef_dll/cpptoc/data_base_cpptoc.h index 345a8e2d6428e..5c3dfb18857bf --- a/src/cef/libcef_dll/cpptoc/data_base_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/data_base_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=556a51c2b0295892b98e2c6f62b27b99eba39286$ +// $hash=bcd06269b419de539f58d0d17f5e568d370641ac$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_DATA_BASE_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/delete_cookies_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/delete_cookies_callback_cpptoc.cc index 8c5b758b23feb..529faf2314ef9 --- a/src/cef/libcef_dll/cpptoc/delete_cookies_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/delete_cookies_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=0d2b19ca10e7a4ad389d3ce8de83addc1cad4b63$ +// $hash=67304c5e02c51d987d2a4b4f0a03e019f44018ea$ // #include "libcef_dll/cpptoc/delete_cookies_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/delete_cookies_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/delete_cookies_callback_cpptoc.h index 5f8c4f6db10d4..bc1ebd9531521 --- a/src/cef/libcef_dll/cpptoc/delete_cookies_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/delete_cookies_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=424b81efdcb5b86629d8388df5df13b1229155bb$ +// $hash=9ef76b4e16c9ee12b2c5956a3e4789fe2e40d9f0$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_DELETE_COOKIES_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/dev_tools_message_observer_cpptoc.cc b/src/cef/libcef_dll/cpptoc/dev_tools_message_observer_cpptoc.cc index 534d94072ac98..cb0e417f9ba56 --- a/src/cef/libcef_dll/cpptoc/dev_tools_message_observer_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/dev_tools_message_observer_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a8a10af1258edd37dbb8d079a10943070c1e9c4c$ +// $hash=c39b7ad0cee7f051f5b2f374917910aae6e9a96a$ // #include "libcef_dll/cpptoc/dev_tools_message_observer_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/dev_tools_message_observer_cpptoc.h b/src/cef/libcef_dll/cpptoc/dev_tools_message_observer_cpptoc.h index cd0396a86b71e..6ab9e5c987ad9 --- a/src/cef/libcef_dll/cpptoc/dev_tools_message_observer_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/dev_tools_message_observer_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=309236e96bdbd2d39e63f94872d2de18552bec80$ +// $hash=4f034b01b5709e8012ff089e000216008f6232b6$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_DEV_TOOLS_MESSAGE_OBSERVER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/dialog_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/dialog_handler_cpptoc.cc index e66a9617d455f..4e607b88d785b --- a/src/cef/libcef_dll/cpptoc/dialog_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/dialog_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,12 +9,13 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2f925fbe5bb419b6adf14c4b508c7330ec8dd84a$ +// $hash=3c71c8ae9b8f6ae947bfccd7e018137d7f30737c$ // #include "libcef_dll/cpptoc/dialog_handler_cpptoc.h" #include "libcef_dll/ctocpp/browser_ctocpp.h" #include "libcef_dll/ctocpp/file_dialog_callback_ctocpp.h" +#include "libcef_dll/ctocpp/select_popup_callback_ctocpp.h" #include "libcef_dll/shutdown_checker.h" #include "libcef_dll/transfer_util.h" @@ -67,12 +68,68 @@ dialog_handler_on_file_dialog(struct _cef_dialog_handler_t* self, return _retval; } +void CEF_CALLBACK +dialog_handler_on_select_popup_menu(struct _cef_dialog_handler_t* self, + cef_browser_t* browser, + const cef_rect_t* bounds, + int item_height, + double item_font_size, + int selected_item, + size_t menu_itemsCount, + cef_select_popup_item_t const* menu_items, + int right_aligned, + int allow_multiple_selection, + cef_select_popup_callback_t* callback) { + shutdown_checker::AssertNotShutdown(); + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + DCHECK(self); + if (!self) + return; + // Verify param: browser; type: refptr_diff + DCHECK(browser); + if (!browser) + return; + // Verify param: bounds; type: simple_byref_const + DCHECK(bounds); + if (!bounds) + return; + // Verify param: menu_items; type: simple_vec_byref_const + DCHECK(menu_itemsCount == 0 || menu_items); + if (menu_itemsCount > 0 && !menu_items) + return; + // Verify param: callback; type: refptr_diff + DCHECK(callback); + if (!callback) + return; + + // Translate param: bounds; type: simple_byref_const + CefRect boundsVal = bounds ? *bounds : CefRect(); + // Translate param: menu_items; type: simple_vec_byref_const + std::vector menu_itemsList; + if (menu_itemsCount > 0) { + for (size_t i = 0; i < menu_itemsCount; ++i) { + CefSelectPopupItem menu_itemsVal = menu_items[i]; + menu_itemsList.push_back(menu_itemsVal); + } + } + + // Execute + CefDialogHandlerCppToC::Get(self)->OnSelectPopupMenu( + CefBrowserCToCpp::Wrap(browser), boundsVal, item_height, item_font_size, + selected_item, menu_itemsList, right_aligned ? true : false, + allow_multiple_selection ? true : false, + CefSelectPopupCallbackCToCpp::Wrap(callback)); +} + } // namespace // CONSTRUCTOR - Do not edit by hand. CefDialogHandlerCppToC::CefDialogHandlerCppToC() { GetStruct()->on_file_dialog = dialog_handler_on_file_dialog; + GetStruct()->on_select_popup_menu = dialog_handler_on_select_popup_menu; } // DESTRUCTOR - Do not edit by hand. diff --git a/src/cef/libcef_dll/cpptoc/dialog_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/dialog_handler_cpptoc.h index d1dbb38f3a85f..dcd88050832be --- a/src/cef/libcef_dll/cpptoc/dialog_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/dialog_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=52c108ee7b518b733b331b7d172f16bf3126fe3d$ +// $hash=fca3fb90b8a74c5cdf3dc16e1489668ce80c7c07$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_DIALOG_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/dictionary_value_cpptoc.cc b/src/cef/libcef_dll/cpptoc/dictionary_value_cpptoc.cc index 450903a13bad7..aaaae4474a299 --- a/src/cef/libcef_dll/cpptoc/dictionary_value_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/dictionary_value_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c55e53ae76eba8e90a364cd6768764a4c56967ff$ +// $hash=a3293282e7d3c476dc68b315b9d698d8c62768b6$ // #include "libcef_dll/cpptoc/dictionary_value_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/dictionary_value_cpptoc.h b/src/cef/libcef_dll/cpptoc/dictionary_value_cpptoc.h index 4b2aeae7ebad4..038b5738ddb84 --- a/src/cef/libcef_dll/cpptoc/dictionary_value_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/dictionary_value_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ddb7429c3059bb7af3a285adde53aab78a99d39d$ +// $hash=dd73e5b97103c4ad27620af89886e49bfbdc8d21$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_DICTIONARY_VALUE_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/display_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/display_handler_cpptoc.cc index 283d83b8c0186..c3f6c08414798 --- a/src/cef/libcef_dll/cpptoc/display_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/display_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=dcec0d8e6a9a0d393173112aa81e0f9dc70f73db$ +// $hash=a6d58b8140f21ae5130189a75c283510d7e712fd$ // #include "libcef_dll/cpptoc/display_handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/display_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/display_handler_cpptoc.h index 9d5121a244837..ccc1e439a3c05 --- a/src/cef/libcef_dll/cpptoc/display_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/display_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=db9ca0d224aa971d8912fc577c53cc9abe52fe58$ +// $hash=8ba6fb9ce96e92ba80a05258060e530ddf822264$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_DISPLAY_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/domdocument_cpptoc.cc b/src/cef/libcef_dll/cpptoc/domdocument_cpptoc.cc index 4850dcd185b13..77469f6ad3f5e --- a/src/cef/libcef_dll/cpptoc/domdocument_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/domdocument_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c4cad301694f35ea716d7c4376252140fcb0d78f$ +// $hash=66706283cc184aece537eb9df570f7bd8a3281a5$ // #include "libcef_dll/cpptoc/domdocument_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/domdocument_cpptoc.h b/src/cef/libcef_dll/cpptoc/domdocument_cpptoc.h index 919eb2a288105..bdf946cb6aabd --- a/src/cef/libcef_dll/cpptoc/domdocument_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/domdocument_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8aea7ead4b6cbdefba65a1234213fee4eb4a1952$ +// $hash=6a5b9bb0155acb8c5e6f796e68463825e00a8e53$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_DOMDOCUMENT_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/domnode_cpptoc.cc b/src/cef/libcef_dll/cpptoc/domnode_cpptoc.cc index 6496648c827d4..f965040ed3396 --- a/src/cef/libcef_dll/cpptoc/domnode_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/domnode_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d352693e8728b1ed586dc62d69a91dd92667760a$ +// $hash=a83ee414291415564391c48a351d4ea2691d8358$ // #include "libcef_dll/cpptoc/domnode_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/domnode_cpptoc.h b/src/cef/libcef_dll/cpptoc/domnode_cpptoc.h index a9325b62b0e04..c11783f8f7cb8 --- a/src/cef/libcef_dll/cpptoc/domnode_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/domnode_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e5c97231e7d369e8fb4bd73611ec49d7289af076$ +// $hash=18f223a2671334b8bd8d463a94b5a3c0191141e8$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_DOMNODE_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/domvisitor_cpptoc.cc b/src/cef/libcef_dll/cpptoc/domvisitor_cpptoc.cc index fd1cff62815f1..8838f93c16549 --- a/src/cef/libcef_dll/cpptoc/domvisitor_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/domvisitor_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f809bcb5a3f1246b3a94aebe14ad36bbb7e185c7$ +// $hash=7426be91c0a1a5d650b24d18f23cc5f559c9971e$ // #include "libcef_dll/cpptoc/domvisitor_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/domvisitor_cpptoc.h b/src/cef/libcef_dll/cpptoc/domvisitor_cpptoc.h index 84a2b75baaa8a..3cd81a5e27ee6 --- a/src/cef/libcef_dll/cpptoc/domvisitor_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/domvisitor_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=974358c3bab311f8a19af125f5ccf2dfd13ad8e7$ +// $hash=2a64ff6edd81d5158997158c91e75b85dbd8da39$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_DOMVISITOR_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/download_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/download_handler_cpptoc.cc index 8c2aa1f202ce9..5354bf29bd782 --- a/src/cef/libcef_dll/cpptoc/download_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/download_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=496b226297ba7d5fa5e7e7bd4117c417e26fae59$ +// $hash=ed4452d7a096e5dfbd091bbcaeac61f3851d943a$ // #include "libcef_dll/cpptoc/download_handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/download_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/download_handler_cpptoc.h index cd7580f8ab4c0..1c1c6ddb9d6e8 --- a/src/cef/libcef_dll/cpptoc/download_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/download_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d8c8f94bad7ee32841d16658b106158880edb5e0$ +// $hash=1b301493e2f905a2761858e2d6623765a540f918$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_DOWNLOAD_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/download_image_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/download_image_callback_cpptoc.cc index 9b31d1e29604d..528e44fa60bda --- a/src/cef/libcef_dll/cpptoc/download_image_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/download_image_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9313088260606d8b5a57b7e75c1d37e724924a40$ +// $hash=83a570d6d3a6b45d9d7502bbeba9e2e8fa726d0e$ // #include "libcef_dll/cpptoc/download_image_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/download_image_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/download_image_callback_cpptoc.h index c7d6125bbb902..8e517c7cfaf23 --- a/src/cef/libcef_dll/cpptoc/download_image_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/download_image_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c5f83abc0a8e18b3f0c87d39f83df687dfff22e1$ +// $hash=9a9250d7e4f3d2018c4b441e6616930627625b59$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_DOWNLOAD_IMAGE_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/download_item_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/download_item_callback_cpptoc.cc index 7ef2878221aa1..11a34dabbdc4d --- a/src/cef/libcef_dll/cpptoc/download_item_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/download_item_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7cb000dca30be501541fc16036c585a3cd6618cb$ +// $hash=dad2dfff457e4c1ad5b2a8722f79b5dd74bc5448$ // #include "libcef_dll/cpptoc/download_item_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/download_item_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/download_item_callback_cpptoc.h index bd9dec4ef2e23..858baa2fc70f2 --- a/src/cef/libcef_dll/cpptoc/download_item_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/download_item_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d0baa6c264292da99e5c909d18450486435c9a8e$ +// $hash=1c85860b0d21f2efc1610ed47af70ed570f63926$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_DOWNLOAD_ITEM_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/download_item_cpptoc.cc b/src/cef/libcef_dll/cpptoc/download_item_cpptoc.cc index 357d285c90744..c41dd1e51959c --- a/src/cef/libcef_dll/cpptoc/download_item_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/download_item_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=64b3cee6b2de98140a1dc6f6aabff6b2c4ac7d78$ +// $hash=86d4cf7d9ddcc2e20f09a6a7270b376e7de4fef8$ // #include "libcef_dll/cpptoc/download_item_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/download_item_cpptoc.h b/src/cef/libcef_dll/cpptoc/download_item_cpptoc.h index 559b6c8f2d77d..dcf26cfd75389 --- a/src/cef/libcef_dll/cpptoc/download_item_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/download_item_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=72609007d48530320ae4a0f210c4604108d896d9$ +// $hash=3817a67cd4da8a318fe118f775a86a3daa22af67$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_DOWNLOAD_ITEM_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/drag_data_cpptoc.cc b/src/cef/libcef_dll/cpptoc/drag_data_cpptoc.cc index 6e682e5d89603..7bf1d73f280c4 --- a/src/cef/libcef_dll/cpptoc/drag_data_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/drag_data_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2a39ab30ca26c5c63ce557b31f86a5557cd96ebc$ +// $hash=6fbfc46d229413699c26e2e8d669e04c5ce776b1$ // #include "libcef_dll/cpptoc/drag_data_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/drag_data_cpptoc.h b/src/cef/libcef_dll/cpptoc/drag_data_cpptoc.h index fbeafd07458a8..1628e094b1bad --- a/src/cef/libcef_dll/cpptoc/drag_data_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/drag_data_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c267ab21bb2e49ecade7ba3c7545003d7e072373$ +// $hash=4ce3b8cfc691f8cb7aa224a00d7835283c5039ab$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_DRAG_DATA_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/drag_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/drag_handler_cpptoc.cc index 833c0cbeef279..88fe5e93d4c3d --- a/src/cef/libcef_dll/cpptoc/drag_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/drag_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=53febc1355422739c9de942f67f52fb4de462571$ +// $hash=7569af91eb9b0d7bc5af403a6733d06ada294955$ // #include "libcef_dll/cpptoc/drag_handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/drag_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/drag_handler_cpptoc.h index 865b8c94a9f99..e8f136b923d6a --- a/src/cef/libcef_dll/cpptoc/drag_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/drag_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=39ab6f4e1f88efb2d726995d7075c904e11091e6$ +// $hash=9d82217b402aa41686392b0ba81169f4b41035e7$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_DRAG_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/end_tracing_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/end_tracing_callback_cpptoc.cc index efc5b12922865..3627ce4c13e77 --- a/src/cef/libcef_dll/cpptoc/end_tracing_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/end_tracing_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=67836a9b2dfec98cab93231cb7e07ca2b9696123$ +// $hash=d1cdc1747a3caa4b8aa4cc385c1164bc066bbefb$ // #include "libcef_dll/cpptoc/end_tracing_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/end_tracing_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/end_tracing_callback_cpptoc.h index 89668d4d525a5..c6291697f7ea8 --- a/src/cef/libcef_dll/cpptoc/end_tracing_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/end_tracing_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=0769e0fec9a6f3c0e33d35b23ebf1bec4a205844$ +// $hash=81dc12ded9752671497f775c397ca120632c4ddb$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_END_TRACING_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/extension_cpptoc.cc b/src/cef/libcef_dll/cpptoc/extension_cpptoc.cc index f601bb51c6c3a..7edf7b9111be8 --- a/src/cef/libcef_dll/cpptoc/extension_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/extension_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5ae76b861609dc9f1b0d033dcebf514d8ef68a57$ +// $hash=e62a7361febcdb3a9608051a0e4902a571e94ebc$ // #include "libcef_dll/cpptoc/extension_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/extension_cpptoc.h b/src/cef/libcef_dll/cpptoc/extension_cpptoc.h index f2c06267c08f1..32eca73369ccd --- a/src/cef/libcef_dll/cpptoc/extension_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/extension_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=46725937bd7ba35ca8ea8fb2d1bbdeac0c53dc80$ +// $hash=924265d65cc81f721d9757d8b4a325260e1848d1$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_EXTENSION_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/extension_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/extension_handler_cpptoc.cc index 2aaccfbc5a858..93241efc0f1dd --- a/src/cef/libcef_dll/cpptoc/extension_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/extension_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7cdd0564d9b129bf9f068764d4d1588645445d5b$ +// $hash=d75d766c210dd2b55be991f962651b25047a14cf$ // #include "libcef_dll/cpptoc/extension_handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/extension_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/extension_handler_cpptoc.h index fc3ff5d6a6603..13b489be281be --- a/src/cef/libcef_dll/cpptoc/extension_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/extension_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b695266a9c10c4fc0b68f96b64a77cc5c0235827$ +// $hash=db012b196983395c9684bf1275b638e9ccc57949$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_EXTENSION_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/file_dialog_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/file_dialog_callback_cpptoc.cc index 7a4bdbcf8d67f..8b5d6fb273cac --- a/src/cef/libcef_dll/cpptoc/file_dialog_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/file_dialog_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d334e579f498ad7727721dfe4e10ad810b81035a$ +// $hash=d226e92e69207d76675dc52b7ab5f4e68262ee7d$ // #include "libcef_dll/cpptoc/file_dialog_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/file_dialog_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/file_dialog_callback_cpptoc.h index 046c02aa5f1a6..f0a754b929746 --- a/src/cef/libcef_dll/cpptoc/file_dialog_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/file_dialog_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2b6c5e5bd0bb44f1c916b317bccb0e0794c28f91$ +// $hash=2db275ca5be351037a0e19531fb2ed4c3af4498d$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_FILE_DIALOG_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/find_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/find_handler_cpptoc.cc index 7130f8058dc2e..2d71f4f000420 --- a/src/cef/libcef_dll/cpptoc/find_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/find_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=022bd3d1f8fd0eb3de156647dd4f50d688747534$ +// $hash=dec97de981cccf1e47dae36336011071a1a8e80b$ // #include "libcef_dll/cpptoc/find_handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/find_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/find_handler_cpptoc.h index 0d2193718edb4..cf30c541ef2fa --- a/src/cef/libcef_dll/cpptoc/find_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/find_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c6408d6714984291379f0113e7806cac21aee934$ +// $hash=fd8c0866622e63f6564c0b00107ebcb0c82d60fe$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_FIND_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/focus_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/focus_handler_cpptoc.cc index 2549edd6d6df0..43151b580fce6 --- a/src/cef/libcef_dll/cpptoc/focus_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/focus_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6d554e767e9e5eea0d9caefba61e35fbe4fff231$ +// $hash=baed9b712645a466ab9c52ae814f31eb10c0ef3b$ // #include "libcef_dll/cpptoc/focus_handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/focus_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/focus_handler_cpptoc.h index d384176fe8eea..1dc59c421bfde --- a/src/cef/libcef_dll/cpptoc/focus_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/focus_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=def50c909d368ef1d03f1932f2b0283c3cbf8165$ +// $hash=b4e1894b64083f0045302da4840abf664c5a2429$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_FOCUS_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/frame_cpptoc.cc b/src/cef/libcef_dll/cpptoc/frame_cpptoc.cc index 293e5b740b4b4..3661e43c0fb85 --- a/src/cef/libcef_dll/cpptoc/frame_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/frame_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d9d33c576ca1d7bef983c275e8b115767237f69c$ +// $hash=ebf943663fb2988ca0b2a0cd40d4dea389678604$ // #include "libcef_dll/cpptoc/frame_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/frame_cpptoc.h b/src/cef/libcef_dll/cpptoc/frame_cpptoc.h index 3e1e27fe923f4..dab946904c7aa --- a/src/cef/libcef_dll/cpptoc/frame_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/frame_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5154f627049509d38f098549ea08fb26a0712963$ +// $hash=e2af583c7a4b0b6b071e9e96ce8645375902673d$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_FRAME_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/frame_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/frame_handler_cpptoc.cc index 4fabd048f513c..40f490cb84be1 --- a/src/cef/libcef_dll/cpptoc/frame_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/frame_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=276f4b15ecef989b38c2a6dd9cac5be7df5cb844$ +// $hash=92d9c5512725c0532baa33ab9f324f18af40a641$ // #include "libcef_dll/cpptoc/frame_handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/frame_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/frame_handler_cpptoc.h index 4310ea47b3d93..c553a2dd73ab1 --- a/src/cef/libcef_dll/cpptoc/frame_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/frame_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d0f6aac72a7795b0221831ffe475fa8b5062ab1a$ +// $hash=72b035624f1edff425da000635d111f72186fffc$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_FRAME_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/geolocation_acess_cpptoc.cc b/src/cef/libcef_dll/cpptoc/geolocation_acess_cpptoc.cc index da6eb4aac594a..00a9414934b6f --- a/src/cef/libcef_dll/cpptoc/geolocation_acess_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/geolocation_acess_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a21b3afd08841726e90bdc044e0dd0d22b277264$ +// $hash=901fb04c00bd650e2e0bdff347fdd3ad460f5a21$ // #include "libcef_dll/cpptoc/geolocation_acess_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/geolocation_acess_cpptoc.h b/src/cef/libcef_dll/cpptoc/geolocation_acess_cpptoc.h index 97b335d034aec..f2ab7de54a655 --- a/src/cef/libcef_dll/cpptoc/geolocation_acess_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/geolocation_acess_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=42966754a9927c84debb6edfd37f8c41873ee268$ +// $hash=66a1438642f8ff3dd315b9535336be8d6b2c3e99$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_GEOLOCATION_ACESS_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/get_extension_resource_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/get_extension_resource_callback_cpptoc.cc index 4aeb4e9714070..3984352b69d80 --- a/src/cef/libcef_dll/cpptoc/get_extension_resource_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/get_extension_resource_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=3f24789c79862889b5a0454c743bf70f71a98faf$ +// $hash=b129eeac4e3e5ce621b58018d7516127f7a85aed$ // #include "libcef_dll/cpptoc/get_extension_resource_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/get_extension_resource_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/get_extension_resource_callback_cpptoc.h index 3ed16a181a54f..0056536b211aa --- a/src/cef/libcef_dll/cpptoc/get_extension_resource_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/get_extension_resource_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8e0f89043319ecad378af6125bd4fcdbd8bdd34e$ +// $hash=76b58a0d3f719bb4899c87ec701d89a96a45ae31$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_GET_EXTENSION_RESOURCE_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/get_images_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/get_images_callback_cpptoc.cc index fc55c1c5638b0..c0efd5b4bdbb4 --- a/src/cef/libcef_dll/cpptoc/get_images_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/get_images_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=aa8ce20cabfc1a45e42b70040c2de7fa540d9466$ +// $hash=c8fcd18ac761a259a3dc23799f2b7ca3863b2ff2$ // #include "libcef_dll/cpptoc/get_images_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/get_images_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/get_images_callback_cpptoc.h index 491bd5b82c5fb..27cc93f4eaeef --- a/src/cef/libcef_dll/cpptoc/get_images_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/get_images_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6902a0c4f13668d55f729924580a7bd25c7c3718$ +// $hash=d5b18c7be26bf71b47bb68718126ef89fad457d3$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_GET_IMAGES_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/get_origin_usage_or_quota_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/get_origin_usage_or_quota_callback_cpptoc.cc index 3876dba9e89e8..5ebe55e7b640b --- a/src/cef/libcef_dll/cpptoc/get_origin_usage_or_quota_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/get_origin_usage_or_quota_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8c21d39cfec72fe99c8317906941d00cd3cbf0d0$ +// $hash=4bf000010f6c757be8d561c82ebc8c6142f31a3d$ // #include "libcef_dll/cpptoc/get_origin_usage_or_quota_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/get_origin_usage_or_quota_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/get_origin_usage_or_quota_callback_cpptoc.h index 4d219961ba523..97fdb9f9ec701 --- a/src/cef/libcef_dll/cpptoc/get_origin_usage_or_quota_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/get_origin_usage_or_quota_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6ba873fdbcca40051dd14bd26bc4a4c7a8999b5f$ +// $hash=79d42142140e6b820264a3d723ee0f1ffa1747f2$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_GET_ORIGIN_USAGE_OR_QUOTA_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/get_origins_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/get_origins_callback_cpptoc.cc index 66d66ad674fe3..f1c6c5bb7d12c --- a/src/cef/libcef_dll/cpptoc/get_origins_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/get_origins_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=aff05076c3fad1702ba17a27a4e4713ae1593596$ +// $hash=c2fd30c49290abe08881da439bab727b9504b3da$ // #include "libcef_dll/cpptoc/get_origins_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/get_origins_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/get_origins_callback_cpptoc.h index d5318c9e17e80..5f09c5b4ad923 --- a/src/cef/libcef_dll/cpptoc/get_origins_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/get_origins_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=86239d3281ad43ad93dcbe67a82a713044ab885d$ +// $hash=a0d4dd8ca32ce2f249a5f36f798be8dfa594d25a$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_GET_ORIGINS_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/image_cpptoc.cc b/src/cef/libcef_dll/cpptoc/image_cpptoc.cc index 81dc865b265bf..ca857bef796d0 --- a/src/cef/libcef_dll/cpptoc/image_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/image_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e9ee6df7e0e77e54dea7e2c1e4b24cdc88b79344$ +// $hash=fce97ac2600da10ad5349abe49c2cf80aaa6b55d$ // #include "libcef_dll/cpptoc/image_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/image_cpptoc.h b/src/cef/libcef_dll/cpptoc/image_cpptoc.h index acd84570c2669..3f63462f19aaf --- a/src/cef/libcef_dll/cpptoc/image_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/image_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e82ca8d18a0367d4061f67afd33a8a486f338238$ +// $hash=4ce026e90daa0a4d5d4be0baf1e8dbd3ede5974f$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_IMAGE_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/java_script_result_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/java_script_result_callback_cpptoc.cc index 1a0adf8512e6e..3ea3c17b15129 --- a/src/cef/libcef_dll/cpptoc/java_script_result_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/java_script_result_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b98959cda67200ef6a434297c5e9de53a2e948fb$ +// $hash=98a8f58c5379ac345b36c7cde9ba25d31837447b$ // #include "libcef_dll/cpptoc/java_script_result_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/java_script_result_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/java_script_result_callback_cpptoc.h index 0f6e4290d339c..f029712a922ec --- a/src/cef/libcef_dll/cpptoc/java_script_result_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/java_script_result_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=fe951e9554ef1ba97fc78a2caac2f154497bde3f$ +// $hash=d2e376ccc88d8547a4b4aca415a638f8b5fe6eab$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_JAVA_SCRIPT_RESULT_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/jsdialog_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/jsdialog_callback_cpptoc.cc index 7b6b2d8d60db5..81a399101a90a --- a/src/cef/libcef_dll/cpptoc/jsdialog_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/jsdialog_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8a66dc7024a4d368e8368b1be42deff60f4966dc$ +// $hash=9486b9a33142d7af6d5635bef96621238ceadd5d$ // #include "libcef_dll/cpptoc/jsdialog_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/jsdialog_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/jsdialog_callback_cpptoc.h index 1c6e3b5147fed..772ae287b6127 --- a/src/cef/libcef_dll/cpptoc/jsdialog_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/jsdialog_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5bc7b389cab53db3487532fbcae4ad156c814710$ +// $hash=37aac75252a6f35a8abe927ca603849ce98ac1e1$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_JSDIALOG_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/jsdialog_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/jsdialog_handler_cpptoc.cc index 432323d8c3ab2..7148a942d24f4 --- a/src/cef/libcef_dll/cpptoc/jsdialog_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/jsdialog_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=41c06df7feb0288f02c644bd633cce3f1754beba$ +// $hash=93d039a400e46cc0b87bbab7a9b68b61e6dd6a66$ // #include "libcef_dll/cpptoc/jsdialog_handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/jsdialog_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/jsdialog_handler_cpptoc.h index d855c3a20e3b8..93f193d1db3de --- a/src/cef/libcef_dll/cpptoc/jsdialog_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/jsdialog_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=507a9b3192b98d0fad632714a8a4a4f97e5c19a3$ +// $hash=c6a25a7ceb346f562302df398305f3d09a7c587d$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_JSDIALOG_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/keyboard_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/keyboard_handler_cpptoc.cc index c9b7a0fa965ae..dd50c47adb2a7 --- a/src/cef/libcef_dll/cpptoc/keyboard_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/keyboard_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9f55775c0fcff5993efe9d8c9db75001d4335743$ +// $hash=c1ff97a2d1992f704d02e1afc689a7d0b5426b6f$ // #include "libcef_dll/cpptoc/keyboard_handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/keyboard_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/keyboard_handler_cpptoc.h index 2d01998aa31aa..9ce294a166104 --- a/src/cef/libcef_dll/cpptoc/keyboard_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/keyboard_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5d3509b80dac95b50b7d3c7053562169055ad361$ +// $hash=0798f508afacf2ed239982052247da9cd7f366e9$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_KEYBOARD_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/life_span_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/life_span_handler_cpptoc.cc index d6f447c746260..ed436d9124b65 --- a/src/cef/libcef_dll/cpptoc/life_span_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/life_span_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=46fab68760ab49b9a282aafb0e55d81de9cca943$ +// $hash=402f069391e367a81c76fc24b1081e713acabcae$ // #include "libcef_dll/cpptoc/life_span_handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/life_span_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/life_span_handler_cpptoc.h index 94eca4fb27d2c..531314a0f60b3 --- a/src/cef/libcef_dll/cpptoc/life_span_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/life_span_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=85c8f684b4799cf1410174b0e29a41b192eaf7a4$ +// $hash=74c66feec24c563e6f3f32230dcb0dbf45ed9350$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_LIFE_SPAN_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/list_value_cpptoc.cc b/src/cef/libcef_dll/cpptoc/list_value_cpptoc.cc index db4fc4e9f1bdc..e3d7b6bab8392 --- a/src/cef/libcef_dll/cpptoc/list_value_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/list_value_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2d2041c7571bd613f92c2d80c100e92e7439df6e$ +// $hash=b62e31a8e177869cf33c37c48d158802700a0080$ // #include "libcef_dll/cpptoc/list_value_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/list_value_cpptoc.h b/src/cef/libcef_dll/cpptoc/list_value_cpptoc.h index 4385aa5c0cab8..3e7b9c5138a3a --- a/src/cef/libcef_dll/cpptoc/list_value_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/list_value_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=85db2149d4c843eae2145e9015c2062d8ad45695$ +// $hash=bb4f6bacea8366b11d1526059c5ad4c3df495630$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_LIST_VALUE_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/load_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/load_handler_cpptoc.cc index e6a7312c38884..d27985a6a2c90 --- a/src/cef/libcef_dll/cpptoc/load_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/load_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=1c8a4ef9964effea5d8f02abc6890794c7a22df7$ +// $hash=c0c0bf119990d7ce088a2c9c7fc0fc4a0a378460$ // #include "libcef_dll/cpptoc/load_handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/load_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/load_handler_cpptoc.h index 31ed258d8bdd8..b17e7746a1cd1 --- a/src/cef/libcef_dll/cpptoc/load_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/load_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=67a49693f79a526ebb12c8352c13de8bf7c64784$ +// $hash=60feef3855499ffd313c9e10fe4e8a6304acc871$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_LOAD_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/menu_model_cpptoc.cc b/src/cef/libcef_dll/cpptoc/menu_model_cpptoc.cc index 809b2184731f5..4e39df4d40934 --- a/src/cef/libcef_dll/cpptoc/menu_model_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/menu_model_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=587be50ef3aefc00fadcf6fec431ebecc305b3eb$ +// $hash=d5b8daec5b6d6a6632d664143e27361425c00212$ // #include "libcef_dll/cpptoc/menu_model_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/menu_model_cpptoc.h b/src/cef/libcef_dll/cpptoc/menu_model_cpptoc.h index f8882f06df3bc..9344a7269361c --- a/src/cef/libcef_dll/cpptoc/menu_model_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/menu_model_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8c46e7f774742f9834a61bc7657fdc03a0ed580c$ +// $hash=5f39f05bb39da5ede094d0e9789c5ef1dee1cf7f$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_MENU_MODEL_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/menu_model_delegate_cpptoc.cc b/src/cef/libcef_dll/cpptoc/menu_model_delegate_cpptoc.cc index ecc7682476239..3da06a32c64e8 --- a/src/cef/libcef_dll/cpptoc/menu_model_delegate_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/menu_model_delegate_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d46082f24a6ad01677700ac68ad424cc4951efed$ +// $hash=57f03a43b0143d9f4f52cd110400c2fbe06d72e9$ // #include "libcef_dll/cpptoc/menu_model_delegate_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/menu_model_delegate_cpptoc.h b/src/cef/libcef_dll/cpptoc/menu_model_delegate_cpptoc.h index 4f4a4e749fdf5..50a03ba4db0a6 --- a/src/cef/libcef_dll/cpptoc/menu_model_delegate_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/menu_model_delegate_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c48cb7ff4b3e506b4e1ca8b1442bfe91d260ec67$ +// $hash=2277b8692532f706316bb97ffe611394a00e1023$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_MENU_MODEL_DELEGATE_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/navigation_entry_cpptoc.cc b/src/cef/libcef_dll/cpptoc/navigation_entry_cpptoc.cc index b7788325b1146..4b068202620b5 --- a/src/cef/libcef_dll/cpptoc/navigation_entry_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/navigation_entry_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=1e8f06cdecbf10a9b95fd1be4e6d4a0154f4aff0$ +// $hash=a55e8468667740e9e121e0d553a416d2337c15f6$ // #include "libcef_dll/cpptoc/navigation_entry_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/navigation_entry_cpptoc.h b/src/cef/libcef_dll/cpptoc/navigation_entry_cpptoc.h index f4857ed61ebcb..38285d8148aa6 --- a/src/cef/libcef_dll/cpptoc/navigation_entry_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/navigation_entry_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=888591dac662cceb022bc320c159fcba58fc6e24$ +// $hash=213e6404f2260e81c41b20a42ae7788af80710dc$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_NAVIGATION_ENTRY_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/navigation_entry_visitor_cpptoc.cc b/src/cef/libcef_dll/cpptoc/navigation_entry_visitor_cpptoc.cc index 3fe2dba37c603..2f28f1ee089f3 --- a/src/cef/libcef_dll/cpptoc/navigation_entry_visitor_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/navigation_entry_visitor_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=dc5e1a5dece19a5168915d1a6816ac4a52c1078f$ +// $hash=bb3302d31f5fe2e81cde418da8c25d16138ce3b7$ // #include "libcef_dll/cpptoc/navigation_entry_visitor_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/navigation_entry_visitor_cpptoc.h b/src/cef/libcef_dll/cpptoc/navigation_entry_visitor_cpptoc.h index 30c02d6f876af..77bb1a6807fba --- a/src/cef/libcef_dll/cpptoc/navigation_entry_visitor_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/navigation_entry_visitor_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=112f7c12c88d09e4d300cd3d8bf1f72b1be54596$ +// $hash=e2fe9b1846135732e7596c2ff7ab6efadbb5a519$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_NAVIGATION_ENTRY_VISITOR_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/pdf_print_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/pdf_print_callback_cpptoc.cc index 5a5d810c4fb72..11bc0594c5bc5 --- a/src/cef/libcef_dll/cpptoc/pdf_print_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/pdf_print_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=388a87f728a292dc4e2101724656ac09b8fdaa1d$ +// $hash=7f58256b38894ba0a8bf514cbdd2719e75bca5c3$ // #include "libcef_dll/cpptoc/pdf_print_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/pdf_print_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/pdf_print_callback_cpptoc.h index df0c88723c98d..79130c8db5211 --- a/src/cef/libcef_dll/cpptoc/pdf_print_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/pdf_print_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=0dfa6d58ed63c1e3be9992486e404a642df6e32a$ +// $hash=5e9c671740881e345231547607160ce167d37728$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_PDF_PRINT_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/permission_request_cpptoc.cc b/src/cef/libcef_dll/cpptoc/permission_request_cpptoc.cc index 4038e2c5cf85c..fe5ff538b45d3 --- a/src/cef/libcef_dll/cpptoc/permission_request_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/permission_request_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a0c1e9d26c0b0129b85719532cd7312019c2d5f3$ +// $hash=26d002adb41352f89861e1da149863a378f00a1e$ // #include "libcef_dll/cpptoc/permission_request_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/permission_request_cpptoc.h b/src/cef/libcef_dll/cpptoc/permission_request_cpptoc.h index fc597ec736bab..7446187b86322 --- a/src/cef/libcef_dll/cpptoc/permission_request_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/permission_request_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b4bca43d1905283a291f6df6cf1a15bccf569618$ +// $hash=8ef60b5e6629947be455e0c402c9170bf7848cff$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_PERMISSION_REQUEST_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/post_data_cpptoc.cc b/src/cef/libcef_dll/cpptoc/post_data_cpptoc.cc index 2b1d0e145f88b..ecbbae66b2b42 --- a/src/cef/libcef_dll/cpptoc/post_data_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/post_data_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=935efc8f333c6df95b783e1e80bb84aa26d55b9b$ +// $hash=0de557ec053dbe8fd6ae4e455450549ff322e195$ // #include "libcef_dll/cpptoc/post_data_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/post_data_cpptoc.h b/src/cef/libcef_dll/cpptoc/post_data_cpptoc.h index ff139f20d0f14..59518a2bd8aff --- a/src/cef/libcef_dll/cpptoc/post_data_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/post_data_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c73c8a6c74113ead0251ca0afb007d2baa02030b$ +// $hash=784458fd59458b07ba3c6eacac3803b9901c354c$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_POST_DATA_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/post_data_element_cpptoc.cc b/src/cef/libcef_dll/cpptoc/post_data_element_cpptoc.cc index 1dff9418b3137..55916e44b4499 --- a/src/cef/libcef_dll/cpptoc/post_data_element_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/post_data_element_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6148547c3504062984362b43db9e95ee68ef1358$ +// $hash=eb33ec601cd24711837575d3bc19dc603a2d939a$ // #include "libcef_dll/cpptoc/post_data_element_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/post_data_element_cpptoc.h b/src/cef/libcef_dll/cpptoc/post_data_element_cpptoc.h index 176e3081bf016..5b57b20450e85 --- a/src/cef/libcef_dll/cpptoc/post_data_element_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/post_data_element_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e29b5318c16ccbffa354d79176698d1709048e32$ +// $hash=6d48d5f01f5cebcdca0fcfa7ce2b39a049fdc9cd$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_POST_DATA_ELEMENT_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/print_dialog_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/print_dialog_callback_cpptoc.cc index ac4a1fbd244ba..5eb17755a750a --- a/src/cef/libcef_dll/cpptoc/print_dialog_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/print_dialog_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5332b8cb609fa0f5b98e607878678808d21da3a4$ +// $hash=bca20d1cfd7f00c65784d4532b02f8a05cf06068$ // #include "libcef_dll/cpptoc/print_dialog_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/print_dialog_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/print_dialog_callback_cpptoc.h index f16cff04f2825..281ef13984eb8 --- a/src/cef/libcef_dll/cpptoc/print_dialog_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/print_dialog_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=88e44e22bb56d51ba9a60f38f59b89bb3e372748$ +// $hash=ee6fd2ddae3899be82feca1e37cce919363bae99$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_PRINT_DIALOG_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/print_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/print_handler_cpptoc.cc index dd6c36379ebb7..b2d5be1531e5c --- a/src/cef/libcef_dll/cpptoc/print_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/print_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9c26e4bf9952a26541915f64dad82080f09dfd58$ +// $hash=b23eaa74cd7c6a1075d6a8c4b7d1ecbc9effe142$ // #include "libcef_dll/cpptoc/print_handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/print_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/print_handler_cpptoc.h index da73686680aab..f2d71b3cc5f52 --- a/src/cef/libcef_dll/cpptoc/print_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/print_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=49bb73be2c56a31fff2e88875360591dd31bdd8c$ +// $hash=cd0bb4e9c12f53896be544b28ae3c6f38b3504e2$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_PRINT_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/print_job_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/print_job_callback_cpptoc.cc index 45ec93c715f3a..038259e327373 --- a/src/cef/libcef_dll/cpptoc/print_job_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/print_job_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=3becd112f5c17b36328e77fcdcd296cdf73291a3$ +// $hash=e631d13c43819555aabf52b015d40ab9cd532b91$ // #include "libcef_dll/cpptoc/print_job_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/print_job_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/print_job_callback_cpptoc.h index ec169ba4a0ce8..cc5901085d0eb --- a/src/cef/libcef_dll/cpptoc/print_job_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/print_job_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d3c680caf88e14fa8cd3c846fe44870900f82ea1$ +// $hash=54a355e9511b5d0956f1a7269ee21766fa7f8c87$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_PRINT_JOB_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/print_settings_cpptoc.cc b/src/cef/libcef_dll/cpptoc/print_settings_cpptoc.cc index 4138aaf281f20..0f012ca207606 --- a/src/cef/libcef_dll/cpptoc/print_settings_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/print_settings_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8840518039eff950764302105148c5da0b0c996a$ +// $hash=fe89e407154f3696538e128f07da6d26767b7f5c$ // #include "libcef_dll/cpptoc/print_settings_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/print_settings_cpptoc.h b/src/cef/libcef_dll/cpptoc/print_settings_cpptoc.h index 6e6eea2140648..c7ece39229d0d --- a/src/cef/libcef_dll/cpptoc/print_settings_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/print_settings_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ab8680da4bc909d2c1a6cf723fafc1a561bfeb44$ +// $hash=596144335f97b41394808d0de0908c2a69d04d7a$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_PRINT_SETTINGS_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/process_message_cpptoc.cc b/src/cef/libcef_dll/cpptoc/process_message_cpptoc.cc index f6473634e0b92..a26067d9b044f --- a/src/cef/libcef_dll/cpptoc/process_message_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/process_message_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b63f665e68e4dc6269c3e88b81068190ea90abb3$ +// $hash=380c4fce89031ac6da4de226f3007d1a8a1b26ef$ // #include "libcef_dll/cpptoc/process_message_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/process_message_cpptoc.h b/src/cef/libcef_dll/cpptoc/process_message_cpptoc.h index 76f2c5d97bf9c..e3f2485893858 --- a/src/cef/libcef_dll/cpptoc/process_message_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/process_message_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e70a96835042a2ebf0a60f2130f31d24f1ca59fd$ +// $hash=6d4c104d51d4d34c0ec8b767a13db58a6fb0fef8$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_PROCESS_MESSAGE_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/read_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/read_handler_cpptoc.cc index ca8ec58e351c2..f2990fc4d5605 --- a/src/cef/libcef_dll/cpptoc/read_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/read_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a0976edc09e822700d8f402b2dae7af4c434d86f$ +// $hash=dead2ddfaea0555af195b8bb7bb858a57e96f25b$ // #include "libcef_dll/cpptoc/read_handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/read_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/read_handler_cpptoc.h index eda92ed97ca9e..4c4ddc6ee3276 --- a/src/cef/libcef_dll/cpptoc/read_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/read_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=3c16def2c698c26a175b1087db819d3894a264fa$ +// $hash=8a5eb8ffc9a8857ac10a6586e954dc532d10618a$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_READ_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/registration_cpptoc.cc b/src/cef/libcef_dll/cpptoc/registration_cpptoc.cc index 5d959db487a0e..ab7f377f33f14 --- a/src/cef/libcef_dll/cpptoc/registration_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/registration_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=bfa5ab4142b6fe56939a45241a39bb74f3a84acb$ +// $hash=9256f12f40a70c8a2e6100882473516f80c097c4$ // #include "libcef_dll/cpptoc/registration_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/registration_cpptoc.h b/src/cef/libcef_dll/cpptoc/registration_cpptoc.h index e623e5f7d471d..8fd4ce15dc226 --- a/src/cef/libcef_dll/cpptoc/registration_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/registration_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=edd002ac63a0564820617ad44c5c30f9674b8122$ +// $hash=461d6b9297ebd61bf8d2df2e3960458a9a3705f6$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_REGISTRATION_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/render_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/render_handler_cpptoc.cc index 32553b7017bae..4add57745a8f4 --- a/src/cef/libcef_dll/cpptoc/render_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/render_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c83f5f49a5411a5071750e238c12e22bfa82c48a$ +// $hash=5da07c9f36d3f52ef73ea85ebd73fecb31838536$ // #include "libcef_dll/cpptoc/render_handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/render_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/render_handler_cpptoc.h index c213ddf908607..f56251d7d1e9b --- a/src/cef/libcef_dll/cpptoc/render_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/render_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=18b7f5398b817f5d20f26aa4e139faa4f91cfe0b$ +// $hash=a0cdfb84f8b30f01dd01556ad3e1725e043641e0$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_RENDER_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/render_process_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/render_process_handler_cpptoc.cc index 42c4ad45eceb8..fa68599a2be28 --- a/src/cef/libcef_dll/cpptoc/render_process_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/render_process_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=08f14fa621595f247e87853c39c3375fce2c9326$ +// $hash=05c223f2568d1c7deb34613ae3838bdcf6fdb0ee$ // #include "libcef_dll/cpptoc/render_process_handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/render_process_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/render_process_handler_cpptoc.h index 599203043efa4..124c4a5092987 --- a/src/cef/libcef_dll/cpptoc/render_process_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/render_process_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8d832edacd5ccc0baac1314aaa9424ba2ab4837c$ +// $hash=1686827d48e7c0d75a603a2b6b8ca05b4f158340$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_RENDER_PROCESS_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/request_context_cpptoc.cc b/src/cef/libcef_dll/cpptoc/request_context_cpptoc.cc index 228abbc4db996..5fb169abd4c74 --- a/src/cef/libcef_dll/cpptoc/request_context_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/request_context_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f895effb80d27ea9ae57687c81df2f8871e2ea53$ +// $hash=8b3881774a33c2efa32765341a72e050d321db58$ // #include "libcef_dll/cpptoc/request_context_cpptoc.h" @@ -17,7 +17,6 @@ #include "libcef_dll/cpptoc/data_base_cpptoc.h" #include "libcef_dll/cpptoc/dictionary_value_cpptoc.h" #include "libcef_dll/cpptoc/extension_cpptoc.h" -#include "libcef_dll/cpptoc/media_router_cpptoc.h" #include "libcef_dll/cpptoc/value_cpptoc.h" #include "libcef_dll/cpptoc/web_storage_cpptoc.h" #include "libcef_dll/ctocpp/completion_callback_ctocpp.h" @@ -579,25 +578,6 @@ request_context_get_extension(struct _cef_request_context_t* self, return CefExtensionCppToC::Wrap(_retval); } -cef_media_router_t* CEF_CALLBACK -request_context_get_media_router(struct _cef_request_context_t* self, - cef_completion_callback_t* callback) { - // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING - - DCHECK(self); - if (!self) - return NULL; - // Unverified params: callback - - // Execute - CefRefPtr _retval = - CefRequestContextCppToC::Get(self)->GetMediaRouter( - CefCompletionCallbackCToCpp::Wrap(callback)); - - // Return type: refptr_same - return CefMediaRouterCppToC::Wrap(_retval); -} - } // namespace // CONSTRUCTOR - Do not edit by hand. @@ -633,7 +613,6 @@ CefRequestContextCppToC::CefRequestContextCppToC() { GetStruct()->has_extension = request_context_has_extension; GetStruct()->get_extensions = request_context_get_extensions; GetStruct()->get_extension = request_context_get_extension; - GetStruct()->get_media_router = request_context_get_media_router; } // DESTRUCTOR - Do not edit by hand. diff --git a/src/cef/libcef_dll/cpptoc/request_context_cpptoc.h b/src/cef/libcef_dll/cpptoc/request_context_cpptoc.h index bf9847b8d1767..f798fefbaecc2 --- a/src/cef/libcef_dll/cpptoc/request_context_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/request_context_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7350e36d25125a3560d0e0da5b46daa60295c7a7$ +// $hash=07ccff0f6993fe1634467a76d9996081fca0ec3a$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_REQUEST_CONTEXT_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/request_context_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/request_context_handler_cpptoc.cc index 6bc9ece6db413..8d8a3464f80a5 --- a/src/cef/libcef_dll/cpptoc/request_context_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/request_context_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2e085c019a8e5c4701db0ee23fbd06b275e6342b$ +// $hash=43bd770ac450f9f61d50ddebd85b209953c2fce0$ // #include "libcef_dll/cpptoc/request_context_handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/request_context_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/request_context_handler_cpptoc.h index aaa029d91b30c..7a002b9517cb5 --- a/src/cef/libcef_dll/cpptoc/request_context_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/request_context_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e1cebce8a08c570f02235a53bab5f6aa0b13699c$ +// $hash=0985ec29d8f7825abf5542f7bff3a0477431fc1a$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_REQUEST_CONTEXT_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/request_cpptoc.cc b/src/cef/libcef_dll/cpptoc/request_cpptoc.cc index ee7cd8b9be4b3..9086c22b3d087 --- a/src/cef/libcef_dll/cpptoc/request_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/request_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b1a7f857e453a625325a1a2847e60990eecc61ea$ +// $hash=4f55af31ee0cf2bde8f353e26283210430f2d871$ // #include "libcef_dll/cpptoc/request_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/request_cpptoc.h b/src/cef/libcef_dll/cpptoc/request_cpptoc.h index b93e0ba163e8c..723e1dec0ea38 --- a/src/cef/libcef_dll/cpptoc/request_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/request_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=25a489e9a54195be43325a811956c66f578fbeb0$ +// $hash=406c30cba514a450568bc341a7facf5495ab58a5$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_REQUEST_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/request_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/request_handler_cpptoc.cc index 04ed33bc8dda2..5607a0984816f --- a/src/cef/libcef_dll/cpptoc/request_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/request_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=162a493c73858bd96eb41016a031932bb23d4a70$ +// $hash=bd54d0dce483d6e05e564e7fbe6a2743f4d6b277$ // #include "libcef_dll/cpptoc/request_handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/request_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/request_handler_cpptoc.h index 70c502128ec88..73ff5d4c73743 --- a/src/cef/libcef_dll/cpptoc/request_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/request_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=4cda9dc12a20ead4f6889fd26a176da22ca67c50$ +// $hash=0167d427e72426d439b11b2655caac2b79a7b8de$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_REQUEST_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/resolve_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/resolve_callback_cpptoc.cc index 6ec72fcf3acb4..7a1f12e0e1033 --- a/src/cef/libcef_dll/cpptoc/resolve_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/resolve_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d6f5224414a15d32a42ed2862b30c0076d0b5d95$ +// $hash=0a182976f79666acbe49e7bc5fe2e8b07b3afe7c$ // #include "libcef_dll/cpptoc/resolve_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/resolve_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/resolve_callback_cpptoc.h index 76e790de0375f..cd35ce3d73963 --- a/src/cef/libcef_dll/cpptoc/resolve_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/resolve_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=659df5decaf5cab4624f6f15b8bceeed0bd2d228$ +// $hash=aea5c318f99d23b06478b765f81720890aa098b3$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_RESOLVE_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/resource_bundle_cpptoc.cc b/src/cef/libcef_dll/cpptoc/resource_bundle_cpptoc.cc index 97ad75f998995..8c2cd88f14cbd --- a/src/cef/libcef_dll/cpptoc/resource_bundle_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/resource_bundle_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5081aa41e87ea1a44df19f1df060a478b3b902d8$ +// $hash=99b8484b086c9f3d26e56621610e7761ba5d4f5e$ // #include "libcef_dll/cpptoc/resource_bundle_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/resource_bundle_cpptoc.h b/src/cef/libcef_dll/cpptoc/resource_bundle_cpptoc.h index 429418a493091..8102bff0994ea --- a/src/cef/libcef_dll/cpptoc/resource_bundle_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/resource_bundle_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=808eba3682873dd7b948ed9f572d9960df9a1b2d$ +// $hash=c126e6379765b577e7251c418bd3fe4dbe392522$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_RESOURCE_BUNDLE_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/resource_bundle_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/resource_bundle_handler_cpptoc.cc index 8e9a45951a4e3..e530d86a815ce --- a/src/cef/libcef_dll/cpptoc/resource_bundle_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/resource_bundle_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=486d1b31ccfd53e10dec622d3ae024c23b50e2c2$ +// $hash=d7cb40bc1f7bbdf092b3c80b162f134f24253359$ // #include "libcef_dll/cpptoc/resource_bundle_handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/resource_bundle_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/resource_bundle_handler_cpptoc.h index 12d1d945c5aa7..3b74d91484943 --- a/src/cef/libcef_dll/cpptoc/resource_bundle_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/resource_bundle_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=26b5dfed49b7182c1bdf52f50547ccb26c4850fe$ +// $hash=f6e9e2a12912ea7b9ab5060481e323c180698725$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_RESOURCE_BUNDLE_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/resource_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/resource_handler_cpptoc.cc index 078bd359c9ad8..cd59767ef3927 --- a/src/cef/libcef_dll/cpptoc/resource_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/resource_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=72d9dc0e438de96161f262353c153c11b76f8ad0$ +// $hash=19b5f403a0a77dfb38a0200046b35cf5d2053cfd$ // #include "libcef_dll/cpptoc/resource_handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/resource_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/resource_handler_cpptoc.h index c3ed893b8db37..fc57f6477248c --- a/src/cef/libcef_dll/cpptoc/resource_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/resource_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a2b9dcc0ff22bd3f1b0ecb70a3e10b6c1c7a0ed7$ +// $hash=3853a8b89137fdd6c71bc86f801536517bde7c88$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_RESOURCE_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/resource_read_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/resource_read_callback_cpptoc.cc index baffa6547229b..0e90a4bf6ea9d --- a/src/cef/libcef_dll/cpptoc/resource_read_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/resource_read_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9d07f53404d3b90d1e386e37b0ed4535afb57b39$ +// $hash=cf89b317501cd267ef18b96d934297412e7ddf5c$ // #include "libcef_dll/cpptoc/resource_read_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/resource_read_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/resource_read_callback_cpptoc.h index c1b4d1a5970fc..f152b5d2b300c --- a/src/cef/libcef_dll/cpptoc/resource_read_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/resource_read_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7cd5016181dd61511cb1c1d3176d8aff5e5fba82$ +// $hash=f5efbaafb5a54dfb9deb422cf31a0908c8a4cfc3$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_RESOURCE_READ_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/resource_request_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/resource_request_handler_cpptoc.cc index 3e9cea75bb47f..2462a281cf801 --- a/src/cef/libcef_dll/cpptoc/resource_request_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/resource_request_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=57f1a169f2b2efb6ff3f1ca71aa390fb1d82ed2d$ +// $hash=477291aae432b368ed8195975c5d93b5e19da36e$ // #include "libcef_dll/cpptoc/resource_request_handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/resource_request_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/resource_request_handler_cpptoc.h index 813e38e8d4af7..7010001717ec1 --- a/src/cef/libcef_dll/cpptoc/resource_request_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/resource_request_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a8c2b0d3df6a4c6b336084598084d14f62860a53$ +// $hash=0b8d614a76b9027970354dc850f7b491348a2941$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_RESOURCE_REQUEST_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/resource_skip_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/resource_skip_callback_cpptoc.cc index 41bbad03226bf..2e0aa01963ee7 --- a/src/cef/libcef_dll/cpptoc/resource_skip_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/resource_skip_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=3b4968443aafd1ee42fcc9a5e7b466b38fb98d28$ +// $hash=ce7cc4f550ea769a9d8c3b757c19f9c48e0240d6$ // #include "libcef_dll/cpptoc/resource_skip_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/resource_skip_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/resource_skip_callback_cpptoc.h index c173a16715a9b..d7a82710cc2a3 --- a/src/cef/libcef_dll/cpptoc/resource_skip_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/resource_skip_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=decf49c2d8a337c353d149e9b9392065740eb06d$ +// $hash=5e756fb08a289333025a894573332555a1ab8e1f$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_RESOURCE_SKIP_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/response_cpptoc.cc b/src/cef/libcef_dll/cpptoc/response_cpptoc.cc index 1cb1db789fabf..12493c5c8a052 --- a/src/cef/libcef_dll/cpptoc/response_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/response_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=1dc0f59d37e6979ba3f431463671f0feefc45c31$ +// $hash=09e7052fafc6202fa043603c97c56ae4b917a291$ // #include "libcef_dll/cpptoc/response_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/response_cpptoc.h b/src/cef/libcef_dll/cpptoc/response_cpptoc.h index 209f550a13c05..b84c6990b56dc --- a/src/cef/libcef_dll/cpptoc/response_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/response_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9bd9fdb8fe353f1af3ac543074cb74b12cdab0c5$ +// $hash=624d1cb515a9f5f44d6e63574021689ccfe09b76$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_RESPONSE_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/response_filter_cpptoc.cc b/src/cef/libcef_dll/cpptoc/response_filter_cpptoc.cc index 1bc437f06fda8..bee2671e6cf58 --- a/src/cef/libcef_dll/cpptoc/response_filter_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/response_filter_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b6721a12a6b018187b3ccc87557beb29be130100$ +// $hash=490594608437694d853b132444163af6352eb1e5$ // #include "libcef_dll/cpptoc/response_filter_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/response_filter_cpptoc.h b/src/cef/libcef_dll/cpptoc/response_filter_cpptoc.h index b79d579543cd1..c17599dcf97cf --- a/src/cef/libcef_dll/cpptoc/response_filter_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/response_filter_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6ef35ca53f2bd4523397d3f56b02ca9b40a811f9$ +// $hash=55d4dc0a6467d6d084de5e1114be0fcd36ae89b9$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_RESPONSE_FILTER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/run_context_menu_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/run_context_menu_callback_cpptoc.cc index 8cf46c83661fe..9f2df1a061d16 --- a/src/cef/libcef_dll/cpptoc/run_context_menu_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/run_context_menu_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d76ba7de3a561c71b88250340676e56dc7a9f84a$ +// $hash=ee06834316c98179b98e7226f89b8a630a11de2b$ // #include "libcef_dll/cpptoc/run_context_menu_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/run_context_menu_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/run_context_menu_callback_cpptoc.h index 20124e44f363f..954af2789749f --- a/src/cef/libcef_dll/cpptoc/run_context_menu_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/run_context_menu_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d8003b6de1b89c64b2d5b53ea1665dda982effb9$ +// $hash=a41928b718004e3e8cc92ba620b20f76ad9181b7$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_RUN_CONTEXT_MENU_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/run_file_dialog_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/run_file_dialog_callback_cpptoc.cc index 33705ecbbfad3..ddfba315fc959 --- a/src/cef/libcef_dll/cpptoc/run_file_dialog_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/run_file_dialog_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2e6aa9015192a3704df073f7dad0c6fa3b05f76c$ +// $hash=9b4502e14a4597158e56d4a5ea3307e9798499f9$ // #include "libcef_dll/cpptoc/run_file_dialog_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/run_file_dialog_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/run_file_dialog_callback_cpptoc.h index 50dc062cb0887..c5dac2e3f32ee --- a/src/cef/libcef_dll/cpptoc/run_file_dialog_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/run_file_dialog_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6542e83e5f1a6694575c89e628ee11da17bb6624$ +// $hash=7f45e5e5b3772e10b2eb6901c3e27e835a873163$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_RUN_FILE_DIALOG_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/run_quick_menu_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/run_quick_menu_callback_cpptoc.cc index 477c530ed458b..4102d17e00099 --- a/src/cef/libcef_dll/cpptoc/run_quick_menu_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/run_quick_menu_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=51e850e2768a6ec8ec7d764830d27138334d82ac$ +// $hash=2695b1c7532d10e5f337c353a51d1e5e97667b9e$ // #include "libcef_dll/cpptoc/run_quick_menu_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/run_quick_menu_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/run_quick_menu_callback_cpptoc.h index 355cfa24d1451..b8fa640fd2927 --- a/src/cef/libcef_dll/cpptoc/run_quick_menu_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/run_quick_menu_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b641fe8119fa5ab3e3a635105ca25985dec40bd0$ +// $hash=acc845289f80273062c7fde7d81e0c034a80f4e1$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_RUN_QUICK_MENU_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/scheme_handler_factory_cpptoc.cc b/src/cef/libcef_dll/cpptoc/scheme_handler_factory_cpptoc.cc index 759f5f9dc127d..40801cdfffd21 --- a/src/cef/libcef_dll/cpptoc/scheme_handler_factory_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/scheme_handler_factory_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=abd81866575f873556b4ae40313ea65c89219756$ +// $hash=96fb6718f22acb2425f9fe31f64bd7c71531a2a8$ // #include "libcef_dll/cpptoc/scheme_handler_factory_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/scheme_handler_factory_cpptoc.h b/src/cef/libcef_dll/cpptoc/scheme_handler_factory_cpptoc.h index 1c442fae769d1..75daf7c15c851 --- a/src/cef/libcef_dll/cpptoc/scheme_handler_factory_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/scheme_handler_factory_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b119c6e375aee04bc83623c73f61b7eb39af16f5$ +// $hash=746b9d06b417c9730fa98fa456a08e5c53e5475b$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_SCHEME_HANDLER_FACTORY_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/scheme_registrar_cpptoc.cc b/src/cef/libcef_dll/cpptoc/scheme_registrar_cpptoc.cc index aee5e11789d13..622aee176c3a7 --- a/src/cef/libcef_dll/cpptoc/scheme_registrar_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/scheme_registrar_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c028de29ae5b48ed41d4e8b8ae3df9a0ee765e14$ +// $hash=aef6d4c3a2016f1cfd4c9aff12d59302b2dba3a8$ // #include "libcef_dll/cpptoc/scheme_registrar_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/scheme_registrar_cpptoc.h b/src/cef/libcef_dll/cpptoc/scheme_registrar_cpptoc.h index 6f0265be6a39d..3966e2167ad34 --- a/src/cef/libcef_dll/cpptoc/scheme_registrar_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/scheme_registrar_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f14ceae023fe1f52e53b26edb60667203b919178$ +// $hash=92c5fb1f7d14753510b029f71579a26970f0304c$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_SCHEME_REGISTRAR_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/select_client_certificate_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/select_client_certificate_callback_cpptoc.cc index 353d69c68b20f..a74df760f3773 --- a/src/cef/libcef_dll/cpptoc/select_client_certificate_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/select_client_certificate_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d20b8b121892f6d2fe0f944c4447464ab6657feb$ +// $hash=09750a65f47197298e8600d97c627fb6ee233800$ // #include "libcef_dll/cpptoc/select_client_certificate_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/select_client_certificate_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/select_client_certificate_callback_cpptoc.h index 678ce51dd6dd4..34cc05d56dfca --- a/src/cef/libcef_dll/cpptoc/select_client_certificate_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/select_client_certificate_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=3cfa40dde5fccdecbb2d598b20e1d76cc13f4c34$ +// $hash=31869f5383d73caf6fa9b3fede9f2e47f54a01ae$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_SELECT_CLIENT_CERTIFICATE_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/select_popup_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/select_popup_callback_cpptoc.cc new file mode 100644 index 0000000000000..15e1bd299ba6d --- /dev/null +++ b/src/cef/libcef_dll/cpptoc/select_popup_callback_cpptoc.cc @@ -0,0 +1,95 @@ +// 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. +// +// --------------------------------------------------------------------------- +// +// This file was generated by the CEF translator tool. If making changes by +// hand only do so within the body of existing method and function +// implementations. See the translator.README.txt file in the tools directory +// for more information. +// +// $hash=8d79b93a23482ece6217a0a113578c32e6926f94$ +// + +#include "libcef_dll/cpptoc/select_popup_callback_cpptoc.h" +#include "libcef_dll/shutdown_checker.h" + +namespace { + +// MEMBER FUNCTIONS - Body may be edited by hand. + +void CEF_CALLBACK +select_popup_callback_cont(struct _cef_select_popup_callback_t* self, + size_t indicesCount, + int const* indices) { + shutdown_checker::AssertNotShutdown(); + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + DCHECK(self); + if (!self) + return; + // Verify param: indices; type: simple_vec_byref_const + DCHECK(indicesCount == 0 || indices); + if (indicesCount > 0 && !indices) + return; + + // Translate param: indices; type: simple_vec_byref_const + std::vector indicesList; + if (indicesCount > 0) { + for (size_t i = 0; i < indicesCount; ++i) { + int indicesVal = indices[i]; + indicesList.push_back(indicesVal); + } + } + + // Execute + CefSelectPopupCallbackCppToC::Get(self)->Continue(indicesList); +} + +void CEF_CALLBACK +select_popup_callback_cancel(struct _cef_select_popup_callback_t* self) { + shutdown_checker::AssertNotShutdown(); + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + DCHECK(self); + if (!self) + return; + + // Execute + CefSelectPopupCallbackCppToC::Get(self)->Cancel(); +} + +} // namespace + +// CONSTRUCTOR - Do not edit by hand. + +CefSelectPopupCallbackCppToC::CefSelectPopupCallbackCppToC() { + GetStruct()->cont = select_popup_callback_cont; + GetStruct()->cancel = select_popup_callback_cancel; +} + +// DESTRUCTOR - Do not edit by hand. + +CefSelectPopupCallbackCppToC::~CefSelectPopupCallbackCppToC() { + shutdown_checker::AssertNotShutdown(); +} + +template <> +CefRefPtr CefCppToCRefCounted< + CefSelectPopupCallbackCppToC, + CefSelectPopupCallback, + cef_select_popup_callback_t>::UnwrapDerived(CefWrapperType type, + cef_select_popup_callback_t* + s) { + NOTREACHED() << "Unexpected class type: " << type; + return nullptr; +} + +template <> +CefWrapperType CefCppToCRefCounted::kWrapperType = + WT_SELECT_POPUP_CALLBACK; diff --git a/src/cef/libcef_dll/cpptoc/select_popup_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/select_popup_callback_cpptoc.h new file mode 100644 index 0000000000000..75c11dffe90f1 --- /dev/null +++ b/src/cef/libcef_dll/cpptoc/select_popup_callback_cpptoc.h @@ -0,0 +1,38 @@ +// 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. +// +// --------------------------------------------------------------------------- +// +// This file was generated by the CEF translator tool. If making changes by +// hand only do so within the body of existing method and function +// implementations. See the translator.README.txt file in the tools directory +// for more information. +// +// $hash=38cd12caaee1fc018d0fd04eee914774eec7c41c$ +// + +#ifndef CEF_LIBCEF_DLL_CPPTOC_SELECT_POPUP_CALLBACK_CPPTOC_H_ +#define CEF_LIBCEF_DLL_CPPTOC_SELECT_POPUP_CALLBACK_CPPTOC_H_ +#pragma once + +#if !defined(BUILDING_CEF_SHARED) +#error This file can be included DLL-side only +#endif + +#include "include/capi/cef_dialog_handler_capi.h" +#include "include/cef_dialog_handler.h" +#include "libcef_dll/cpptoc/cpptoc_ref_counted.h" + +// Wrap a C++ class with a C structure. +// This class may be instantiated and accessed DLL-side only. +class CefSelectPopupCallbackCppToC + : public CefCppToCRefCounted { + public: + CefSelectPopupCallbackCppToC(); + virtual ~CefSelectPopupCallbackCppToC(); +}; + +#endif // CEF_LIBCEF_DLL_CPPTOC_SELECT_POPUP_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/server_cpptoc.cc b/src/cef/libcef_dll/cpptoc/server_cpptoc.cc index f6be3490c7cfb..48086176f16f6 --- a/src/cef/libcef_dll/cpptoc/server_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/server_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d0cfc5e4c052a2d1fe43d1c0ae264642db03c04c$ +// $hash=abf39f5a0fa0be81e8c8fbd743ea6f4f4c2e14c3$ // #include "libcef_dll/cpptoc/server_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/server_cpptoc.h b/src/cef/libcef_dll/cpptoc/server_cpptoc.h index fb99d54f7e0c5..fd191b03c17c5 --- a/src/cef/libcef_dll/cpptoc/server_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/server_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a36274939df284287ac49a8ec9321f8188d4fddb$ +// $hash=edf9787173ef035101e1d1805f2926b6028530f8$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_SERVER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/server_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/server_handler_cpptoc.cc index 2688d1cc03137..e72635d24eb69 --- a/src/cef/libcef_dll/cpptoc/server_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/server_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2ef239c7779477feb8808f2198e7d2063ab74156$ +// $hash=37a840b566aadeeddaa21af7fa5fda4c222b5571$ // #include "libcef_dll/cpptoc/server_handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/server_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/server_handler_cpptoc.h index a4c951c65a04f..c452567a21858 --- a/src/cef/libcef_dll/cpptoc/server_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/server_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=754575fa090b971fc9105fecda97a407ef0d2484$ +// $hash=ba72a7b9571b7e2d9d490a02972855eca1ff987f$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_SERVER_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/set_cookie_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/set_cookie_callback_cpptoc.cc index b4beccccd3aed..87bcae9676afe --- a/src/cef/libcef_dll/cpptoc/set_cookie_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/set_cookie_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=99f02c8911b913161cfd3834e19bbdc0ba542409$ +// $hash=1672096b07c52bafaa15e3e195116c2a4b30f938$ // #include "libcef_dll/cpptoc/set_cookie_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/set_cookie_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/set_cookie_callback_cpptoc.h index 72e21124994a8..85c34421bd1d8 --- a/src/cef/libcef_dll/cpptoc/set_cookie_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/set_cookie_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=3e86bf9e36a3ef63e6777dcafee8847bd4965a60$ +// $hash=886b832f912900c89787888566d4d5e803c91ebc$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_SET_COOKIE_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/sslinfo_cpptoc.cc b/src/cef/libcef_dll/cpptoc/sslinfo_cpptoc.cc index 7251adfda8853..2da00fed8c046 --- a/src/cef/libcef_dll/cpptoc/sslinfo_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/sslinfo_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=78b529fc88b9701f7cf8d40097576704b0ef35fc$ +// $hash=bd192e23b1985c9413ec6b09b7b1854ea65b5590$ // #include "libcef_dll/cpptoc/sslinfo_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/sslinfo_cpptoc.h b/src/cef/libcef_dll/cpptoc/sslinfo_cpptoc.h index 3dc2625904e5c..bb9576808edca --- a/src/cef/libcef_dll/cpptoc/sslinfo_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/sslinfo_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=00ab5a37c56c5bd5f14ae97f72338a32615214b7$ +// $hash=2eaaaeef70817cde9783efe192d0f57cb73ddfad$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_SSLINFO_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/sslstatus_cpptoc.cc b/src/cef/libcef_dll/cpptoc/sslstatus_cpptoc.cc index 92073dfc08fc2..840136f745795 --- a/src/cef/libcef_dll/cpptoc/sslstatus_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/sslstatus_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8596e5de45842c1e1de8e6377c2b7d932218c370$ +// $hash=f645a1528c4091733cdd8b93c7d076c11cb8a329$ // #include "libcef_dll/cpptoc/sslstatus_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/sslstatus_cpptoc.h b/src/cef/libcef_dll/cpptoc/sslstatus_cpptoc.h index 2d45ad428005a..4e5379fbd6828 --- a/src/cef/libcef_dll/cpptoc/sslstatus_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/sslstatus_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8f0a00c305a6defdcbf4caa2ea437cefe49a191f$ +// $hash=dba266754e189de39172bddaacf0dfa3fdd79351$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_SSLSTATUS_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/store_web_archive_result_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/store_web_archive_result_callback_cpptoc.cc index 4c69ff14accfb..9289ae8db375b --- a/src/cef/libcef_dll/cpptoc/store_web_archive_result_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/store_web_archive_result_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=63e0d5c68603a8478c9b8a638618c9b6554665cb$ +// $hash=018aea8a22d2cd56b94fdb4afe6cda26e5267e50$ // #include "libcef_dll/cpptoc/store_web_archive_result_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/store_web_archive_result_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/store_web_archive_result_callback_cpptoc.h index c80f743fff7ae..3df50719b18f0 --- a/src/cef/libcef_dll/cpptoc/store_web_archive_result_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/store_web_archive_result_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=1471041bc8e9230b7bef9e42aabaf441e641ab96$ +// $hash=a9b06d8d2a8a85752732cfdc632a1c67070f2a3a$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_STORE_WEB_ARCHIVE_RESULT_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/stream_reader_cpptoc.cc b/src/cef/libcef_dll/cpptoc/stream_reader_cpptoc.cc index 3d6b7f73788a9..3d1273476ce61 --- a/src/cef/libcef_dll/cpptoc/stream_reader_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/stream_reader_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=fcbdc299c4f34868f817a9b77777a9b88f3cf07b$ +// $hash=5301e5393a92345b12208721df602fd8f9d25abe$ // #include "libcef_dll/cpptoc/stream_reader_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/stream_reader_cpptoc.h b/src/cef/libcef_dll/cpptoc/stream_reader_cpptoc.h index df8cc7fd6f642..d4d5dc5aab651 --- a/src/cef/libcef_dll/cpptoc/stream_reader_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/stream_reader_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c98bd38e350a4b24d11039a326e8df7fb86bfc75$ +// $hash=6482aca1d5d2c06d39d226f2d085580abc8eee99$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_STREAM_READER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/stream_writer_cpptoc.cc b/src/cef/libcef_dll/cpptoc/stream_writer_cpptoc.cc index d402161f2d7d7..8b73d15c90576 --- a/src/cef/libcef_dll/cpptoc/stream_writer_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/stream_writer_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ac20659d83a6efb764f3b55756dbc8c686fc5363$ +// $hash=5f8cba4541a5f92cbbe2c9aad2ec270528f597cb$ // #include "libcef_dll/cpptoc/stream_writer_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/stream_writer_cpptoc.h b/src/cef/libcef_dll/cpptoc/stream_writer_cpptoc.h index 815bc3feba6e9..0a5ed64e89418 --- a/src/cef/libcef_dll/cpptoc/stream_writer_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/stream_writer_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9204925136614f1d4e4f4609ea6ee30dad0c2782$ +// $hash=7b95fc6bea4023038075ee6712eaceb6c0a153a8$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_STREAM_WRITER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/string_visitor_cpptoc.cc b/src/cef/libcef_dll/cpptoc/string_visitor_cpptoc.cc index 34e6a844d3faa..cb498b859fe14 --- a/src/cef/libcef_dll/cpptoc/string_visitor_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/string_visitor_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=cad58a7370ef2b36aacb2fdf527fe1c061f4a868$ +// $hash=5e22146a6ab1326e04c4de9d822b663e9ce6dee4$ // #include "libcef_dll/cpptoc/string_visitor_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/string_visitor_cpptoc.h b/src/cef/libcef_dll/cpptoc/string_visitor_cpptoc.h index 672cf3dab8c50..86a2b46fbd7f4 --- a/src/cef/libcef_dll/cpptoc/string_visitor_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/string_visitor_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=4cf29c1d2d715dee4855acda840ca47d5f1fabbf$ +// $hash=8f717e4df178cef8f90d5af081094a4952fcc90e$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_STRING_VISITOR_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/task_cpptoc.cc b/src/cef/libcef_dll/cpptoc/task_cpptoc.cc index ef51cfac7b44c..3a65c73ba29a3 --- a/src/cef/libcef_dll/cpptoc/task_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/task_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=47bacb389bbb262f0be39b49c5d6251b8bf1c507$ +// $hash=d9ce29d70c61b486d32a45e8908b317f3b191a8b$ // #include "libcef_dll/cpptoc/task_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/task_cpptoc.h b/src/cef/libcef_dll/cpptoc/task_cpptoc.h index cdf9aab98e552..9a702d94f5a1d --- a/src/cef/libcef_dll/cpptoc/task_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/task_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a22ba7af43964082c9e8570da140389ca9953a12$ +// $hash=32859b75e638cd76a9319561b675fa3583818905$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_TASK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/task_runner_cpptoc.cc b/src/cef/libcef_dll/cpptoc/task_runner_cpptoc.cc index 435cada85f56c..b814b90b9d4f2 --- a/src/cef/libcef_dll/cpptoc/task_runner_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/task_runner_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7c1bd7fe9f9c91bc488299a2278f83a0850befe7$ +// $hash=cc3f60147bbed7acd8e4d111a53bf519757687b2$ // #include "libcef_dll/cpptoc/task_runner_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/task_runner_cpptoc.h b/src/cef/libcef_dll/cpptoc/task_runner_cpptoc.h index 9a8f6ded34aa7..d462c7e147832 --- a/src/cef/libcef_dll/cpptoc/task_runner_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/task_runner_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=3422c7340cee9aaf51c62fa1868b3e665ef34b2f$ +// $hash=66efea72ce623fbf542496f15d0b5fe33d426286$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_TASK_RUNNER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/test/translator_test_cpptoc.cc b/src/cef/libcef_dll/cpptoc/test/translator_test_cpptoc.cc index 4b5e412551bcd..1e897e06769ac --- a/src/cef/libcef_dll/cpptoc/test/translator_test_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/test/translator_test_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=0192ac51914013c4452ffbb99c3a2589137f7c78$ +// $hash=4117623ecedbef67bdfc9346f89208255798688e$ // #include "libcef_dll/cpptoc/test/translator_test_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/test/translator_test_cpptoc.h b/src/cef/libcef_dll/cpptoc/test/translator_test_cpptoc.h index 60be8a4191550..c84b470058d6e --- a/src/cef/libcef_dll/cpptoc/test/translator_test_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/test/translator_test_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=aeae16842d711fd6e5d54cd14333d27cbc06c400$ +// $hash=5f0f8e9729af10fb258c197facf57ae150969f1a$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_TEST_TRANSLATOR_TEST_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_client_child_cpptoc.cc b/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_client_child_cpptoc.cc index d3ac64f4981f0..4f77ecb7ff798 --- a/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_client_child_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_client_child_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5eb9ef23f60f99db031e0e3da6cdfc81c979f5ff$ +// $hash=e673b289ae45b277af9c33ee74fe9056cff6e265$ // #include "libcef_dll/cpptoc/test/translator_test_ref_ptr_client_child_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_client_child_cpptoc.h b/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_client_child_cpptoc.h index e32aee6a7f57f..71d3384f479d5 --- a/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_client_child_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_client_child_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f84f12aa3e444b6ae98c620147bdacf6c32af8df$ +// $hash=b6731cceb5f02011f2bafe6afa336b95355a1bf0$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_TEST_TRANSLATOR_TEST_REF_PTR_CLIENT_CHILD_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_client_cpptoc.cc b/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_client_cpptoc.cc index 22ddee2c75dc0..fe25e680782a3 --- a/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_client_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_client_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f331b4d8e20683281cee5cf873950c236fc6cffd$ +// $hash=7bbb368ca482601286a12f0ab7cc652fd16a1929$ // #include "libcef_dll/cpptoc/test/translator_test_ref_ptr_client_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_client_cpptoc.h b/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_client_cpptoc.h index 2f752aed77d7c..e8a5309622d43 --- a/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_client_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_client_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=abcdf3e219cfeac25ddf87a82c173189d0707bbd$ +// $hash=871a3626f0e6928f2b1094b6fd01175f2bc82a29$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_TEST_TRANSLATOR_TEST_REF_PTR_CLIENT_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_child_cpptoc.cc b/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_child_cpptoc.cc index 2709126202650..c6165f7552d67 --- a/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_child_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_child_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=693175fcf035e056074e56a8a5e39e3f5d1c218d$ +// $hash=3c88df3fd064a4d053a17e1db85c95f2faa0f55a$ // #include "libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_child_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_child_cpptoc.h b/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_child_cpptoc.h index f9c3a093817da..c17f7181d86e9 --- a/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_child_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_child_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=602040c56e366821ec632f5675d22d5b1787d046$ +// $hash=c578229af8491c038b4a036ca870c5dd268b9244$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_TEST_TRANSLATOR_TEST_REF_PTR_LIBRARY_CHILD_CHILD_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_cpptoc.cc b/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_cpptoc.cc index b807842346485..d58c36511144d --- a/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8331f68f4339fbe375428550af8c793d455ef432$ +// $hash=1f115b393d5226e9be5216e8209cdd9d1a8df345$ // #include "libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_cpptoc.h b/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_cpptoc.h index a95b9af96faeb..0ed52386f0e2e --- a/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_child_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=80d99f15db9d7a39f51b24769104d2daeb100ef7$ +// $hash=f138313a94a2c2943926df60ee5293f5dc9f62b8$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_TEST_TRANSLATOR_TEST_REF_PTR_LIBRARY_CHILD_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_cpptoc.cc b/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_cpptoc.cc index b0a9754827888..0159dc5bc28d1 --- a/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=215ecf50a38a26a660ebd9c9784ddba9ef9ac336$ +// $hash=bf4d4b7f5a7395de486eeab67d16ad48310b0771$ // #include "libcef_dll/cpptoc/test/translator_test_ref_ptr_library_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_cpptoc.h b/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_cpptoc.h index c0011d3ce753a..e1420e8f2175d --- a/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/test/translator_test_ref_ptr_library_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=cf13344b75658fdc4d727598a1ca9cf1d2d9aebe$ +// $hash=f431a7518ff642f5b307dbd716bfcd75c5bcb37a$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_TEST_TRANSLATOR_TEST_REF_PTR_LIBRARY_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_client_child_cpptoc.cc b/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_client_child_cpptoc.cc index 6912405ebfc68..e64cd734766e7 --- a/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_client_child_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_client_child_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ba3de8f4ffca578355877eb66e19a61e337fab63$ +// $hash=6bcfc2738c1acbf4476fe6fcdb62d3bb7f14f44b$ // #include "libcef_dll/cpptoc/test/translator_test_scoped_client_child_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_client_child_cpptoc.h b/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_client_child_cpptoc.h index afb925f57fb88..894345cccc680 --- a/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_client_child_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_client_child_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=3a46ac0b98d0a79f8506ffc09a5c3cdcca353f29$ +// $hash=7a7900759a192fa0586d1ab7e2706c513ed9b715$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_TEST_TRANSLATOR_TEST_SCOPED_CLIENT_CHILD_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_client_cpptoc.cc b/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_client_cpptoc.cc index f528e64e083eb..6fc05d57e3d58 --- a/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_client_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_client_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=da43c88a9d20786247371fa3a69230862f8619a6$ +// $hash=9d7c60f524e97dfb4ef831ee5c00037372d42673$ // #include "libcef_dll/cpptoc/test/translator_test_scoped_client_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_client_cpptoc.h b/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_client_cpptoc.h index 591e1c7c41fea..d73036be67c74 --- a/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_client_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_client_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c639d2f671cbfeb508e95a481c0d81ee92b87c29$ +// $hash=bf705a17d41da4d434c122928b0f55c8760d3689$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_TEST_TRANSLATOR_TEST_SCOPED_CLIENT_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_library_child_child_cpptoc.cc b/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_library_child_child_cpptoc.cc index 09704c592128c..16cee5f001c7a --- a/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_library_child_child_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_library_child_child_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=428d7bab8b87fe39bf70e53c8bf1d0a50bf88c33$ +// $hash=b1ca84e5a38b7d473cdd8386868c9cc7372e1ebf$ // #include "libcef_dll/cpptoc/test/translator_test_scoped_library_child_child_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_library_child_child_cpptoc.h b/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_library_child_child_cpptoc.h index 104f2992ef182..3602a4b03e324 --- a/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_library_child_child_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_library_child_child_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=26db238e377ea4db7b6c005d00dcaf270be64ce6$ +// $hash=333a572bf8bb3cde5058ae36410b571d777cd157$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_TEST_TRANSLATOR_TEST_SCOPED_LIBRARY_CHILD_CHILD_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_library_child_cpptoc.cc b/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_library_child_cpptoc.cc index 2dfe000ef0ecc..1ef86633a44e0 --- a/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_library_child_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_library_child_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c7dafd30c4f75e38e507feabdc40dc234d21a06b$ +// $hash=603f865fe40c123657e8d8213b6c03cb9fea36ad$ // #include "libcef_dll/cpptoc/test/translator_test_scoped_library_child_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_library_child_cpptoc.h b/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_library_child_cpptoc.h index b6ee58dab1cb2..e1c516aa0f178 --- a/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_library_child_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_library_child_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=87924524eab4c309d13dc3e9656c601fd65c7449$ +// $hash=df48c52988d69bfd94bc4245d1c2069f45512f7a$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_TEST_TRANSLATOR_TEST_SCOPED_LIBRARY_CHILD_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_library_cpptoc.cc b/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_library_cpptoc.cc index cc253be262b15..2359a3a4cf418 --- a/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_library_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_library_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=442b86286b5b3126fd0a0f0849ca661ef7487fb3$ +// $hash=481e41d324069dcb26cfc0c69b51ad4281e95144$ // #include "libcef_dll/cpptoc/test/translator_test_scoped_library_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_library_cpptoc.h b/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_library_cpptoc.h index dbdd75ed0972f..f03840613b6c1 --- a/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_library_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/test/translator_test_scoped_library_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=43b0a0576a86ba1d2dda27c83af22554da773221$ +// $hash=029af2aa3f312b751ca30b039f22e5c4fbd42295$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_TEST_TRANSLATOR_TEST_SCOPED_LIBRARY_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/thread_cpptoc.cc b/src/cef/libcef_dll/cpptoc/thread_cpptoc.cc index b48ba593ce01b..a63f79ed25c65 --- a/src/cef/libcef_dll/cpptoc/thread_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/thread_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9975067d09206080d5237a7d1e8dd70155deb554$ +// $hash=d8f0260fca4ead50ef8cfc5856fa94e835844846$ // #include "libcef_dll/cpptoc/thread_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/thread_cpptoc.h b/src/cef/libcef_dll/cpptoc/thread_cpptoc.h index 66da3dbc79e66..37f0be30ccfa2 --- a/src/cef/libcef_dll/cpptoc/thread_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/thread_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=820a6a8e017c6ba2a19f5c0b8db0f8aa628a0cfa$ +// $hash=684bc72317e634d7357bdea53bf7dfe81d9d536b$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_THREAD_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/urlrequest_client_cpptoc.cc b/src/cef/libcef_dll/cpptoc/urlrequest_client_cpptoc.cc index dc445270043ff..d36bb74093246 --- a/src/cef/libcef_dll/cpptoc/urlrequest_client_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/urlrequest_client_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=db92b5330f0b984051a202144f77b389501a260e$ +// $hash=e5112f59f64307d7059920de8a59527494dad903$ // #include "libcef_dll/cpptoc/urlrequest_client_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/urlrequest_client_cpptoc.h b/src/cef/libcef_dll/cpptoc/urlrequest_client_cpptoc.h index 085a6000827b7..551f69c51b8c1 --- a/src/cef/libcef_dll/cpptoc/urlrequest_client_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/urlrequest_client_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6ab5f8f6ff4a68382bd5e239ad2c8e2c12c39c6d$ +// $hash=da593bcc58bec4b7dc1159fdc2fd2b8f472a6c93$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_URLREQUEST_CLIENT_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/urlrequest_cpptoc.cc b/src/cef/libcef_dll/cpptoc/urlrequest_cpptoc.cc index 805b66a820e23..f7d7f6805fd2c --- a/src/cef/libcef_dll/cpptoc/urlrequest_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/urlrequest_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6193670d2d0577eaf226bd1825cde7b3f70c0f68$ +// $hash=baa94bdc57a09aa7dfd6b040963510d037a6e37c$ // #include "libcef_dll/cpptoc/urlrequest_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/urlrequest_cpptoc.h b/src/cef/libcef_dll/cpptoc/urlrequest_cpptoc.h index b798d658857f5..3ed15df73fd55 --- a/src/cef/libcef_dll/cpptoc/urlrequest_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/urlrequest_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=1902918d90c40d3b524c0f7adcb56dc9a565df4d$ +// $hash=f870036a626bd6ba126425b586b0a3116030c8d6$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_URLREQUEST_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/v8accessor_cpptoc.cc b/src/cef/libcef_dll/cpptoc/v8accessor_cpptoc.cc index a6bfe77e3b060..39ddef322cd2d --- a/src/cef/libcef_dll/cpptoc/v8accessor_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/v8accessor_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=35161ccb0b72898e250d905b4b245b4839fe7ecc$ +// $hash=ff5e74bff88361fed356300624c8ee8deab15554$ // #include "libcef_dll/cpptoc/v8accessor_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/v8accessor_cpptoc.h b/src/cef/libcef_dll/cpptoc/v8accessor_cpptoc.h index dd68c064bb05d..fb40f8632a3a8 --- a/src/cef/libcef_dll/cpptoc/v8accessor_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/v8accessor_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=cbf062496a14d367e643c3e52afd460df4176fde$ +// $hash=b8975b107d5912bdcc3e66229119fed6316d269c$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_V8ACCESSOR_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/v8array_buffer_release_callback_cpptoc.cc b/src/cef/libcef_dll/cpptoc/v8array_buffer_release_callback_cpptoc.cc index 9c5e28070d88b..48587b103705b --- a/src/cef/libcef_dll/cpptoc/v8array_buffer_release_callback_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/v8array_buffer_release_callback_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=0a7885c5553c99c1ff7539c8aba3a340aa6f3d08$ +// $hash=2b44fa06894c671a055dfbba079bc3373902fcb9$ // #include "libcef_dll/cpptoc/v8array_buffer_release_callback_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/v8array_buffer_release_callback_cpptoc.h b/src/cef/libcef_dll/cpptoc/v8array_buffer_release_callback_cpptoc.h index a5b0463b7bb69..650881c3262d1 --- a/src/cef/libcef_dll/cpptoc/v8array_buffer_release_callback_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/v8array_buffer_release_callback_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=aa87e37fdfa915cb160cb4b7577c46b9e903a698$ +// $hash=f3cb7f220bf24ad178eed9b14d8b6e3d1baed6d5$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_V8ARRAY_BUFFER_RELEASE_CALLBACK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/v8context_cpptoc.cc b/src/cef/libcef_dll/cpptoc/v8context_cpptoc.cc index fc02f3c2496bf..191e9714e89dc --- a/src/cef/libcef_dll/cpptoc/v8context_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/v8context_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5fb43e3f68ef5f431fe6d6f84d399dc0cd292d7d$ +// $hash=cf1f345f1f55c603ab3d5fb7dad775152bed8bd5$ // #include "libcef_dll/cpptoc/v8context_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/v8context_cpptoc.h b/src/cef/libcef_dll/cpptoc/v8context_cpptoc.h index 073ea9e248be4..5b7746d2b41f8 --- a/src/cef/libcef_dll/cpptoc/v8context_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/v8context_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e0d02da9f3e8216559bd80e50b0e3d061455b0af$ +// $hash=251051522f71e61a56b0844596a6ca2d858915c8$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_V8CONTEXT_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/v8exception_cpptoc.cc b/src/cef/libcef_dll/cpptoc/v8exception_cpptoc.cc index c142b061d5b85..bcbd9eb4a2a81 --- a/src/cef/libcef_dll/cpptoc/v8exception_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/v8exception_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=bcf73c22701825bb552e78ece2e62c1e6b8da282$ +// $hash=be0ac1aa2ae8d92bf3e2552497345e4559776b6f$ // #include "libcef_dll/cpptoc/v8exception_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/v8exception_cpptoc.h b/src/cef/libcef_dll/cpptoc/v8exception_cpptoc.h index 83f329540cabb..d9f8725b58953 --- a/src/cef/libcef_dll/cpptoc/v8exception_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/v8exception_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8d6ac0b98bc8a8efc173365c7542907fe1d229ae$ +// $hash=438f4efa56776c515c7c42c6a7dae68937729fef$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_V8EXCEPTION_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/v8handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/v8handler_cpptoc.cc index 63fe01b9c9490..931d8a7a0a177 --- a/src/cef/libcef_dll/cpptoc/v8handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/v8handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7a072d883f46856cf79bf868560689797b31e362$ +// $hash=116eee182be2336fac01047c154a177dd5c6de49$ // #include "libcef_dll/cpptoc/v8handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/v8handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/v8handler_cpptoc.h index bbf4e955e4f98..f3122ffc622aa --- a/src/cef/libcef_dll/cpptoc/v8handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/v8handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8a1d3087cb27c365c8972bc22f712c8433db37a7$ +// $hash=25ab4ee4f4c72c6be2e4df28dfaa8bbe5ec522d6$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_V8HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/v8interceptor_cpptoc.cc b/src/cef/libcef_dll/cpptoc/v8interceptor_cpptoc.cc index 6a590da10e22b..4367178dcc054 --- a/src/cef/libcef_dll/cpptoc/v8interceptor_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/v8interceptor_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=fd651a7fef9dbbce9765c8200660c4057808e6cc$ +// $hash=acc06c29fd11d4eecb3d8114c48f4f3f0548abce$ // #include "libcef_dll/cpptoc/v8interceptor_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/v8interceptor_cpptoc.h b/src/cef/libcef_dll/cpptoc/v8interceptor_cpptoc.h index e13ff18779b9c..07f4a629dc3f0 --- a/src/cef/libcef_dll/cpptoc/v8interceptor_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/v8interceptor_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ea56a3340775acdee89516a9e1107f725e0f8c47$ +// $hash=17704763b12cf8c125a358d2db96037f13613b17$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_V8INTERCEPTOR_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/v8stack_frame_cpptoc.cc b/src/cef/libcef_dll/cpptoc/v8stack_frame_cpptoc.cc index 68cf92f231984..0887c3f66a98a --- a/src/cef/libcef_dll/cpptoc/v8stack_frame_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/v8stack_frame_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=bcf0ccd2d4220eaa8f31b1f4f9b64440f81f563e$ +// $hash=d57266ae37abe823a7a91d36416da50f75e7c663$ // #include "libcef_dll/cpptoc/v8stack_frame_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/v8stack_frame_cpptoc.h b/src/cef/libcef_dll/cpptoc/v8stack_frame_cpptoc.h index 2c4659cbd5b3f..fabdf222e3fb2 --- a/src/cef/libcef_dll/cpptoc/v8stack_frame_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/v8stack_frame_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=08e9e87d39ea58ed8bd7edc6dbf7cf2873218eee$ +// $hash=a804ebb160de9a40b1e8ce65e1dfca67e5ffb658$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_V8STACK_FRAME_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/v8stack_trace_cpptoc.cc b/src/cef/libcef_dll/cpptoc/v8stack_trace_cpptoc.cc index 6e33464a3ceaa..d797ec93f65e4 --- a/src/cef/libcef_dll/cpptoc/v8stack_trace_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/v8stack_trace_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=69faf917e01945c29e5f20a00abbcc69aac7c0a7$ +// $hash=c9f42c7ec65dbe45094126c7668ecab5bc0dba4a$ // #include "libcef_dll/cpptoc/v8stack_trace_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/v8stack_trace_cpptoc.h b/src/cef/libcef_dll/cpptoc/v8stack_trace_cpptoc.h index d7c2f079f5f5e..c0374479ea34f --- a/src/cef/libcef_dll/cpptoc/v8stack_trace_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/v8stack_trace_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=01a737cd8e6ea8e747d0a404c4b370a620eada94$ +// $hash=7d064189557bf22631a1daf8a757128680743960$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_V8STACK_TRACE_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/v8value_cpptoc.cc b/src/cef/libcef_dll/cpptoc/v8value_cpptoc.cc index 49dd142b07ecd..fd550f13bee69 --- a/src/cef/libcef_dll/cpptoc/v8value_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/v8value_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=0cb915346153880872b44bd1f857c24787ed52af$ +// $hash=9a17d4cb73ff68c45251d606252cbcb84ddffbff$ // #include "libcef_dll/cpptoc/v8value_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/v8value_cpptoc.h b/src/cef/libcef_dll/cpptoc/v8value_cpptoc.h index 363743ce1f016..87862ae754c8e --- a/src/cef/libcef_dll/cpptoc/v8value_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/v8value_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=0d07225656f5400129aca5cef75bbefcaaacb70d$ +// $hash=5b314dd35111aa303aa5d695e75839076f874c90$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_V8VALUE_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/value_cpptoc.cc b/src/cef/libcef_dll/cpptoc/value_cpptoc.cc index 1d4001b723399..196df482bdf67 --- a/src/cef/libcef_dll/cpptoc/value_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/value_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=680adcc74e385af7d83fa8b28b36b2215bc20f2b$ +// $hash=610af325d95f1242db8993e38da62713feafe0a7$ // #include "libcef_dll/cpptoc/value_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/value_cpptoc.h b/src/cef/libcef_dll/cpptoc/value_cpptoc.h index 72b6a3dab4322..512155e5c6a0b --- a/src/cef/libcef_dll/cpptoc/value_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/value_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=108679f1ab32ec8b2e0ffe77602e89603f6c279f$ +// $hash=19a491010366c91259449297ea4fb37414ae2a8e$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_VALUE_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/views/box_layout_cpptoc.cc b/src/cef/libcef_dll/cpptoc/views/box_layout_cpptoc.cc index 4e7d723cdeccb..6db8fb3acb527 --- a/src/cef/libcef_dll/cpptoc/views/box_layout_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/views/box_layout_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=95678987551b26755e5dc718c3cad2e975b574c7$ +// $hash=0603aa2ef3dd35d5630bafc47763307f77f64c8e$ // #include "libcef_dll/cpptoc/views/box_layout_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/views/box_layout_cpptoc.h b/src/cef/libcef_dll/cpptoc/views/box_layout_cpptoc.h index e67288a57d5d5..fc41243e66b16 --- a/src/cef/libcef_dll/cpptoc/views/box_layout_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/views/box_layout_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e665defe8e51c3405d75a3f1d9f382f6e9e9f81f$ +// $hash=3f9e4984c1e1eff7e51ab13f9f7fe2ab249657ec$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_VIEWS_BOX_LAYOUT_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/views/browser_view_cpptoc.cc b/src/cef/libcef_dll/cpptoc/views/browser_view_cpptoc.cc index 2109aac1d9e5f..2bc455e6b441f --- a/src/cef/libcef_dll/cpptoc/views/browser_view_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/views/browser_view_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ed2a9f38555ed559f342f6fd39f21192611771ee$ +// $hash=a07b2f308b7192403cc92086f11545fd6adca28d$ // #include "libcef_dll/cpptoc/views/browser_view_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/views/browser_view_cpptoc.h b/src/cef/libcef_dll/cpptoc/views/browser_view_cpptoc.h index f4e36ae4f19c1..2f9fd838f8df4 --- a/src/cef/libcef_dll/cpptoc/views/browser_view_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/views/browser_view_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=dc07da6d436a7d99817045690a3932010cd1acfd$ +// $hash=f981c5f7247ec57926549c145c47a7cdcbdd80a0$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_VIEWS_BROWSER_VIEW_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/views/browser_view_delegate_cpptoc.cc b/src/cef/libcef_dll/cpptoc/views/browser_view_delegate_cpptoc.cc index 46d9fa3794932..2ef39d183df08 --- a/src/cef/libcef_dll/cpptoc/views/browser_view_delegate_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/views/browser_view_delegate_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8f3129779912a325240795e05610d6190997e028$ +// $hash=d2fdb9e5fa608211f3583bafc74602d0573421c1$ // #include "libcef_dll/cpptoc/views/browser_view_delegate_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/views/browser_view_delegate_cpptoc.h b/src/cef/libcef_dll/cpptoc/views/browser_view_delegate_cpptoc.h index feb502ae7e5f2..f0761f3bbc572 --- a/src/cef/libcef_dll/cpptoc/views/browser_view_delegate_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/views/browser_view_delegate_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5bd6bbfbc74b0059f073463c28b74c9b31916e59$ +// $hash=b091e620040d148171ce5c99d5376cb00356eb37$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_VIEWS_BROWSER_VIEW_DELEGATE_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/views/button_cpptoc.cc b/src/cef/libcef_dll/cpptoc/views/button_cpptoc.cc index 7ccd17db62912..890ca97f8b920 --- a/src/cef/libcef_dll/cpptoc/views/button_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/views/button_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f002c60074ac76bb3e4db3d070b5ea1b430e620d$ +// $hash=d1d8ab075e6ac6cf29e2284f21b17a7e0648af71$ // #include "libcef_dll/cpptoc/views/button_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/views/button_cpptoc.h b/src/cef/libcef_dll/cpptoc/views/button_cpptoc.h index 5848a3fd83e7c..ed70f485bb601 --- a/src/cef/libcef_dll/cpptoc/views/button_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/views/button_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=60660c0973fee97e850fcf4026b57a6f367ea294$ +// $hash=3fc906cb8937c58418501c33ba81462806b26860$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_VIEWS_BUTTON_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/views/button_delegate_cpptoc.cc b/src/cef/libcef_dll/cpptoc/views/button_delegate_cpptoc.cc index 05464b089ed6e..c04277528fc71 --- a/src/cef/libcef_dll/cpptoc/views/button_delegate_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/views/button_delegate_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=4e776c8db93f07efd47e80fe380071539e94ec81$ +// $hash=4bcd9e786dcddeb99de73e14839f121a211f0e2d$ // #include "libcef_dll/cpptoc/views/button_delegate_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/views/button_delegate_cpptoc.h b/src/cef/libcef_dll/cpptoc/views/button_delegate_cpptoc.h index 3a682e09bcf4d..b342d8c50d4fe --- a/src/cef/libcef_dll/cpptoc/views/button_delegate_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/views/button_delegate_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f3b8ad78e8614f873ee581697ac29cad49a19260$ +// $hash=455b4eb400cc642cfb4cf0089b12059b8be31af6$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_VIEWS_BUTTON_DELEGATE_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/views/display_cpptoc.cc b/src/cef/libcef_dll/cpptoc/views/display_cpptoc.cc index 470fee9d11971..41d13961f52f4 --- a/src/cef/libcef_dll/cpptoc/views/display_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/views/display_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=546b8f890852fb4df26a85aec6b83effe1bdc6e6$ +// $hash=19b9c4f4c94c1109c599ccda41440f573c966009$ // #include "libcef_dll/cpptoc/views/display_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/views/display_cpptoc.h b/src/cef/libcef_dll/cpptoc/views/display_cpptoc.h index 6ae1863347202..13eb6a6591302 --- a/src/cef/libcef_dll/cpptoc/views/display_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/views/display_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5918cca150c476ead77121bb93599c763a3e13e7$ +// $hash=73811073aeb490787e777b5e7f8e41ef34cd6369$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_VIEWS_DISPLAY_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/views/fill_layout_cpptoc.cc b/src/cef/libcef_dll/cpptoc/views/fill_layout_cpptoc.cc index b6b3a99c2a3a8..e42c249a84afc --- a/src/cef/libcef_dll/cpptoc/views/fill_layout_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/views/fill_layout_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=304f5db25f7e2a1e4cf169f7cc205013bb06f861$ +// $hash=04718b744aa511fa8917dbcc464aecf6cda4550a$ // #include "libcef_dll/cpptoc/views/fill_layout_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/views/fill_layout_cpptoc.h b/src/cef/libcef_dll/cpptoc/views/fill_layout_cpptoc.h index a9bdbaf9d538a..a695842261622 --- a/src/cef/libcef_dll/cpptoc/views/fill_layout_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/views/fill_layout_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e2bad567245e3e1bdf240be33a3b0008ec0e3b18$ +// $hash=88b95199af576610e6ce7e71603fb3c8b1426046$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_VIEWS_FILL_LAYOUT_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/views/label_button_cpptoc.cc b/src/cef/libcef_dll/cpptoc/views/label_button_cpptoc.cc index 9916f2ecfd30b..56c31670f73bd --- a/src/cef/libcef_dll/cpptoc/views/label_button_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/views/label_button_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c32cf44685b993619659ae5f6fb681e40d0b4cd9$ +// $hash=c71d13ab650b2516ba6ae3b3cfda6b2f67b45e97$ // #include "libcef_dll/cpptoc/views/label_button_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/views/label_button_cpptoc.h b/src/cef/libcef_dll/cpptoc/views/label_button_cpptoc.h index a26b71ad35f67..dad5d89582a65 --- a/src/cef/libcef_dll/cpptoc/views/label_button_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/views/label_button_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=60d980037705be97fb1113e0b23b0e4bdd29b801$ +// $hash=8e86fa292ee6e5debd2525e71eaa3ae8e42c8e55$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_VIEWS_LABEL_BUTTON_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/views/layout_cpptoc.cc b/src/cef/libcef_dll/cpptoc/views/layout_cpptoc.cc index 5976c28b094d8..e4c688b99a411 --- a/src/cef/libcef_dll/cpptoc/views/layout_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/views/layout_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=91327244b4a4c037841a54ea2a06ebe42efe5477$ +// $hash=ef68f133e06458b067d4768ea64360b48f6f7b76$ // #include "libcef_dll/cpptoc/views/layout_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/views/layout_cpptoc.h b/src/cef/libcef_dll/cpptoc/views/layout_cpptoc.h index 93ac800c7ac30..76c9930eef23f --- a/src/cef/libcef_dll/cpptoc/views/layout_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/views/layout_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8044bcf51ec6feacc1a186f6780c9076f5c1ec74$ +// $hash=d0adda3ed7bbb825b0c9959960f832d23f75ccdc$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_VIEWS_LAYOUT_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/views/menu_button_cpptoc.cc b/src/cef/libcef_dll/cpptoc/views/menu_button_cpptoc.cc index 4f3f0fb971be5..d43d7c55aed6a --- a/src/cef/libcef_dll/cpptoc/views/menu_button_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/views/menu_button_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=be533dcd2dd95060259a8baaece87bf2c6df0c27$ +// $hash=b40df03337901e30bbd3db00a852dedc7ea500d8$ // #include "libcef_dll/cpptoc/views/menu_button_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/views/menu_button_cpptoc.h b/src/cef/libcef_dll/cpptoc/views/menu_button_cpptoc.h index 6b38233af507d..52f93e09a71c7 --- a/src/cef/libcef_dll/cpptoc/views/menu_button_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/views/menu_button_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d3b01ef1bca22e454dd4375df90a5a3fbd0f11f3$ +// $hash=f2f44594e4cbcb3ef1ee3eb39d3d498f7a6cafbc$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_VIEWS_MENU_BUTTON_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/views/menu_button_delegate_cpptoc.cc b/src/cef/libcef_dll/cpptoc/views/menu_button_delegate_cpptoc.cc index 6fe5582d5c00f..295a2851e8ae2 --- a/src/cef/libcef_dll/cpptoc/views/menu_button_delegate_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/views/menu_button_delegate_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=269173ab9f81796dec4b732e2050e26a177d8387$ +// $hash=869a0291457438cf60cb7464dcc63dd0ac7a8cfc$ // #include "libcef_dll/cpptoc/views/menu_button_delegate_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/views/menu_button_delegate_cpptoc.h b/src/cef/libcef_dll/cpptoc/views/menu_button_delegate_cpptoc.h index 0ecc9e377eb0c..5f70f5a485c48 --- a/src/cef/libcef_dll/cpptoc/views/menu_button_delegate_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/views/menu_button_delegate_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=670b8f7f67a5eacd3288724ec6439c56248477ec$ +// $hash=9178b58c1b03965fc20636f3efd97c2385618574$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_VIEWS_MENU_BUTTON_DELEGATE_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/views/menu_button_pressed_lock_cpptoc.cc b/src/cef/libcef_dll/cpptoc/views/menu_button_pressed_lock_cpptoc.cc index daa1e5fdd8d64..c3d85d202a0aa --- a/src/cef/libcef_dll/cpptoc/views/menu_button_pressed_lock_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/views/menu_button_pressed_lock_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c6db7f8e7c031a323e9da96aed3aee7fd7a4f558$ +// $hash=2dc6b6ba5f4b65f25877aa56083d0e6dea42e7ae$ // #include "libcef_dll/cpptoc/views/menu_button_pressed_lock_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/views/menu_button_pressed_lock_cpptoc.h b/src/cef/libcef_dll/cpptoc/views/menu_button_pressed_lock_cpptoc.h index 51cac8072d11e..79a8566ee59ac --- a/src/cef/libcef_dll/cpptoc/views/menu_button_pressed_lock_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/views/menu_button_pressed_lock_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=072279b56eeeaf089107f5f78ee431c907afda46$ +// $hash=5d7f30f1265294fc8617b444bd35bee3da172746$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_VIEWS_MENU_BUTTON_PRESSED_LOCK_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/views/overlay_controller_cpptoc.cc b/src/cef/libcef_dll/cpptoc/views/overlay_controller_cpptoc.cc index d830c864bcf15..d8ce4395261fd --- a/src/cef/libcef_dll/cpptoc/views/overlay_controller_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/views/overlay_controller_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6cf61c4e2900a7776278d4a0542f2b3e32d4420b$ +// $hash=eec6e92443829047f908febc6d9ce7e6eafc6566$ // #include "libcef_dll/cpptoc/views/overlay_controller_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/views/overlay_controller_cpptoc.h b/src/cef/libcef_dll/cpptoc/views/overlay_controller_cpptoc.h index 8e428ae9da78f..b89f8b4b273c0 --- a/src/cef/libcef_dll/cpptoc/views/overlay_controller_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/views/overlay_controller_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=15c5e3c251b7a4f882b2e49e9a2ee6e84deb21e1$ +// $hash=8d50609d2e79539752a8118f831e853b845892f4$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_VIEWS_OVERLAY_CONTROLLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/views/panel_cpptoc.cc b/src/cef/libcef_dll/cpptoc/views/panel_cpptoc.cc index 3c7aeecd67dec..396ff3ee062b0 --- a/src/cef/libcef_dll/cpptoc/views/panel_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/views/panel_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=fbec1a9b566580497409a7dbd3382e7c51db61ae$ +// $hash=27650c566e4a7c056e5bb87a76df335ba641ab0f$ // #include "libcef_dll/cpptoc/views/panel_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/views/panel_cpptoc.h b/src/cef/libcef_dll/cpptoc/views/panel_cpptoc.h index ae2d99182ac5e..7411c0d35d823 --- a/src/cef/libcef_dll/cpptoc/views/panel_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/views/panel_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=4fd7a58485d8ef00e6b2dff8ffdfcb1405eb4fcc$ +// $hash=2c4b5c88fc2a00039dc5eb01aaa90ecd7c2ea0ad$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_VIEWS_PANEL_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/views/panel_delegate_cpptoc.cc b/src/cef/libcef_dll/cpptoc/views/panel_delegate_cpptoc.cc index ba1fabff98ba7..68f6d427f4ebb --- a/src/cef/libcef_dll/cpptoc/views/panel_delegate_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/views/panel_delegate_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=03a39472314a6cb7cf93fb0196be57e9ae308c53$ +// $hash=7b91896f42ce5d096e4278d9e96dc3ac99a9e86b$ // #include "libcef_dll/cpptoc/views/panel_delegate_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/views/panel_delegate_cpptoc.h b/src/cef/libcef_dll/cpptoc/views/panel_delegate_cpptoc.h index 05fb713501368..578ce7c78238e --- a/src/cef/libcef_dll/cpptoc/views/panel_delegate_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/views/panel_delegate_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=821d48d74b437c7a0387b1d0ac1875621873b2e4$ +// $hash=1eedf21b5a9e1edb24e6c24de55c991388b50c7c$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_VIEWS_PANEL_DELEGATE_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/views/scroll_view_cpptoc.cc b/src/cef/libcef_dll/cpptoc/views/scroll_view_cpptoc.cc index 2b15cdde26698..4b55421134531 --- a/src/cef/libcef_dll/cpptoc/views/scroll_view_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/views/scroll_view_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=02f2588f9c40c510115d3279fbffdb9bf2f4dcfb$ +// $hash=9d80193629328eede62d0da7ed5bf06b16781f52$ // #include "libcef_dll/cpptoc/views/scroll_view_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/views/scroll_view_cpptoc.h b/src/cef/libcef_dll/cpptoc/views/scroll_view_cpptoc.h index a08983a1fcb16..1861706c60cf3 --- a/src/cef/libcef_dll/cpptoc/views/scroll_view_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/views/scroll_view_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a5d02fd363950248101f5113ceeee2c280dd831c$ +// $hash=f0b7e40e7ec1e3870dbc7f25430978c46eb1a51f$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_VIEWS_SCROLL_VIEW_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/views/textfield_cpptoc.cc b/src/cef/libcef_dll/cpptoc/views/textfield_cpptoc.cc index 9ea6250ee730f..b8a8e7452d0ad --- a/src/cef/libcef_dll/cpptoc/views/textfield_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/views/textfield_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=1fab78c3e307dcdcdfbcc5d458121f50e23bf626$ +// $hash=f21462763c1f6f19e8c0a18c100edb60cb13660c$ // #include "libcef_dll/cpptoc/views/textfield_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/views/textfield_cpptoc.h b/src/cef/libcef_dll/cpptoc/views/textfield_cpptoc.h index 730d6486d2022..790835306ec36 --- a/src/cef/libcef_dll/cpptoc/views/textfield_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/views/textfield_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2e8b2aebc574d685d1c39e7cb96b2e8c724a6d9c$ +// $hash=0b5018c0b9d42f4ee100098365c46e0ea723ea29$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_VIEWS_TEXTFIELD_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/views/textfield_delegate_cpptoc.cc b/src/cef/libcef_dll/cpptoc/views/textfield_delegate_cpptoc.cc index 83590dc8889c2..dd9ad3ace4988 --- a/src/cef/libcef_dll/cpptoc/views/textfield_delegate_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/views/textfield_delegate_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=0009ced13fa9f1e26064455df0c9f5043d7618cf$ +// $hash=e9c21f1320ea2c7c750afbe1901f273f71df8213$ // #include "libcef_dll/cpptoc/views/textfield_delegate_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/views/textfield_delegate_cpptoc.h b/src/cef/libcef_dll/cpptoc/views/textfield_delegate_cpptoc.h index 75abe63a36ebc..2ad4735f35999 --- a/src/cef/libcef_dll/cpptoc/views/textfield_delegate_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/views/textfield_delegate_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=157e47e42dbb25aa2effd5bd085228d1dc3ad061$ +// $hash=33ba2bd44c946bf204f2f7a929b8d208768ca3dd$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_VIEWS_TEXTFIELD_DELEGATE_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/views/view_cpptoc.cc b/src/cef/libcef_dll/cpptoc/views/view_cpptoc.cc index f5728725a0bbf..e9b1fff41244a --- a/src/cef/libcef_dll/cpptoc/views/view_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/views/view_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=48694fa56762351ccd3369dca9e679efbda61160$ +// $hash=4808be531e96aa028463b2713f2141d9d1d7cd8b$ // #include "libcef_dll/cpptoc/views/view_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/views/view_cpptoc.h b/src/cef/libcef_dll/cpptoc/views/view_cpptoc.h index e508ab45a5731..efb597517ef8d --- a/src/cef/libcef_dll/cpptoc/views/view_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/views/view_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=725abc7d1f25861799c54c827de37617b23a1bd5$ +// $hash=0d24d12448e97907667f8347a38818e0a4d713ed$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_VIEWS_VIEW_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/views/view_delegate_cpptoc.cc b/src/cef/libcef_dll/cpptoc/views/view_delegate_cpptoc.cc index 28e568feef411..804f515ac3d06 --- a/src/cef/libcef_dll/cpptoc/views/view_delegate_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/views/view_delegate_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=43217c47279478323050eef44d6403cb4b5c62a6$ +// $hash=58ecca3b863657322cdb1280298486167d55bdfe$ // #include "libcef_dll/cpptoc/views/view_delegate_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/views/view_delegate_cpptoc.h b/src/cef/libcef_dll/cpptoc/views/view_delegate_cpptoc.h index 38d6332b824c5..a6903ef4f71e5 --- a/src/cef/libcef_dll/cpptoc/views/view_delegate_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/views/view_delegate_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ebd265b4907f2531eacce52bd6cfd1f8848b7abf$ +// $hash=384b7d1f2df446d35d6ba46e62d89976d88fef7c$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_VIEWS_VIEW_DELEGATE_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/views/window_cpptoc.cc b/src/cef/libcef_dll/cpptoc/views/window_cpptoc.cc index 53932f99f8248..b4c3387060178 --- a/src/cef/libcef_dll/cpptoc/views/window_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/views/window_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=360b248f7f43cd62a111f59a79fc81b40f8d4023$ +// $hash=e89c6c2ef5a7af05e58a2a7e76097910e97c9db4$ // #include "libcef_dll/cpptoc/views/window_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/views/window_cpptoc.h b/src/cef/libcef_dll/cpptoc/views/window_cpptoc.h index de348f70d4a58..e02be4494da84 --- a/src/cef/libcef_dll/cpptoc/views/window_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/views/window_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5b14236c7e00a7dafa47fdc32ce78d347de477a1$ +// $hash=12ff3d7d14f9977ff1f62e9a35b04b153a135480$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_VIEWS_WINDOW_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/views/window_delegate_cpptoc.cc b/src/cef/libcef_dll/cpptoc/views/window_delegate_cpptoc.cc index 769c84a11a7f5..cdc36f8fac76e --- a/src/cef/libcef_dll/cpptoc/views/window_delegate_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/views/window_delegate_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9a65c4a9e35ba40f01a3d27c772ef9b736eb75ea$ +// $hash=cd7d5a65be4a9c5b983b390ec08670baf6f82be2$ // #include "libcef_dll/cpptoc/views/window_delegate_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/views/window_delegate_cpptoc.h b/src/cef/libcef_dll/cpptoc/views/window_delegate_cpptoc.h index dff58e097e217..441a2ca239b81 --- a/src/cef/libcef_dll/cpptoc/views/window_delegate_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/views/window_delegate_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=594a3ff498c14872187e0ae8d466a023664c92b6$ +// $hash=b4d82958ac79ac843f904c4aa8010a6909ca06fa$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_VIEWS_WINDOW_DELEGATE_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/waitable_event_cpptoc.cc b/src/cef/libcef_dll/cpptoc/waitable_event_cpptoc.cc index f65b2038dc345..3af7d1b6c0951 --- a/src/cef/libcef_dll/cpptoc/waitable_event_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/waitable_event_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ea0c4c4d8c202a47a9b5b63a57525dc726c1e40e$ +// $hash=c74bf87e609f7e27581c49144f0c751199f7c2cb$ // #include "libcef_dll/cpptoc/waitable_event_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/waitable_event_cpptoc.h b/src/cef/libcef_dll/cpptoc/waitable_event_cpptoc.h index cc466b7b3ed5e..1e1ba61868eaf --- a/src/cef/libcef_dll/cpptoc/waitable_event_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/waitable_event_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f19f05824d06a9aadd3ad10b58e2041eb855a66e$ +// $hash=c3d08738052ecc67921493df15ea0df38c040314$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_WAITABLE_EVENT_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/web_message_receiver_cpptoc.cc b/src/cef/libcef_dll/cpptoc/web_message_receiver_cpptoc.cc new file mode 100644 index 0000000000000..e791792deed44 --- /dev/null +++ b/src/cef/libcef_dll/cpptoc/web_message_receiver_cpptoc.cc @@ -0,0 +1,71 @@ +// 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. +// +// --------------------------------------------------------------------------- +// +// This file was generated by the CEF translator tool. If making changes by +// hand only do so within the body of existing method and function +// implementations. See the translator.README.txt file in the tools directory +// for more information. +// +// $hash=4a0b96e9541249b0a756bb5709359fade8df76f6$ +// + +#include "libcef_dll/cpptoc/web_message_receiver_cpptoc.h" +#include "libcef_dll/ctocpp/value_ctocpp.h" +#include "libcef_dll/shutdown_checker.h" + +namespace { + +// MEMBER FUNCTIONS - Body may be edited by hand. + +void CEF_CALLBACK +web_message_receiver_on_message(struct _cef_web_message_receiver_t* self, + struct _cef_value_t* message) { + shutdown_checker::AssertNotShutdown(); + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + DCHECK(self); + if (!self) + return; + // Verify param: message; type: refptr_diff + DCHECK(message); + if (!message) + return; + + // Execute + CefWebMessageReceiverCppToC::Get(self)->OnMessage( + CefValueCToCpp::Wrap(message)); +} + +} // namespace + +// CONSTRUCTOR - Do not edit by hand. + +CefWebMessageReceiverCppToC::CefWebMessageReceiverCppToC() { + GetStruct()->on_message = web_message_receiver_on_message; +} + +// DESTRUCTOR - Do not edit by hand. + +CefWebMessageReceiverCppToC::~CefWebMessageReceiverCppToC() { + shutdown_checker::AssertNotShutdown(); +} + +template <> +CefRefPtr CefCppToCRefCounted< + CefWebMessageReceiverCppToC, + CefWebMessageReceiver, + cef_web_message_receiver_t>::UnwrapDerived(CefWrapperType type, + cef_web_message_receiver_t* s) { + NOTREACHED() << "Unexpected class type: " << type; + return nullptr; +} + +template <> +CefWrapperType CefCppToCRefCounted::kWrapperType = + WT_WEB_MESSAGE_RECEIVER; diff --git a/src/cef/libcef_dll/cpptoc/web_message_receiver_cpptoc.h b/src/cef/libcef_dll/cpptoc/web_message_receiver_cpptoc.h new file mode 100644 index 0000000000000..9846b0985a9bf --- /dev/null +++ b/src/cef/libcef_dll/cpptoc/web_message_receiver_cpptoc.h @@ -0,0 +1,40 @@ +// 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. +// +// --------------------------------------------------------------------------- +// +// This file was generated by the CEF translator tool. If making changes by +// hand only do so within the body of existing method and function +// implementations. See the translator.README.txt file in the tools directory +// for more information. +// +// $hash=849fd01178757316d7b9a87fcc89d7a862186798$ +// + +#ifndef CEF_LIBCEF_DLL_CPPTOC_WEB_MESSAGE_RECEIVER_CPPTOC_H_ +#define CEF_LIBCEF_DLL_CPPTOC_WEB_MESSAGE_RECEIVER_CPPTOC_H_ +#pragma once + +#if !defined(WRAPPING_CEF_SHARED) +#error This file can be included wrapper-side only +#endif + +#include "include/capi/cef_browser_capi.h" +#include "include/capi/cef_client_capi.h" +#include "include/cef_browser.h" +#include "include/cef_client.h" +#include "libcef_dll/cpptoc/cpptoc_ref_counted.h" + +// Wrap a C++ class with a C structure. +// This class may be instantiated and accessed wrapper-side only. +class CefWebMessageReceiverCppToC + : public CefCppToCRefCounted { + public: + CefWebMessageReceiverCppToC(); + virtual ~CefWebMessageReceiverCppToC(); +}; + +#endif // CEF_LIBCEF_DLL_CPPTOC_WEB_MESSAGE_RECEIVER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/web_storage_cpptoc.cc b/src/cef/libcef_dll/cpptoc/web_storage_cpptoc.cc index 5176cd1efbcd8..648fdc96bc2ee --- a/src/cef/libcef_dll/cpptoc/web_storage_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/web_storage_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=959e73af8a9517a5a2381606195efc0fde114317$ +// $hash=53c636c06989583d0ad24c92f4aedce825e5e8ad$ // #include "libcef_dll/cpptoc/web_storage_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/web_storage_cpptoc.h b/src/cef/libcef_dll/cpptoc/web_storage_cpptoc.h index 1e1b951eccc99..6c3ea996fbd0e --- a/src/cef/libcef_dll/cpptoc/web_storage_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/web_storage_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e96ec830a2f1b20fc1ec99664ce7a2df266b73dc$ +// $hash=811b936281434fdc17bbb33dc50640bfc8d5dd33$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_WEB_STORAGE_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/write_handler_cpptoc.cc b/src/cef/libcef_dll/cpptoc/write_handler_cpptoc.cc index 8de6eb3a2e2fa..5cb60f31a9a19 --- a/src/cef/libcef_dll/cpptoc/write_handler_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/write_handler_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=208b9651cb7a357f7665e6d449c6ba974dfae9e3$ +// $hash=9c53b2b7086bf095aa4a4b39fbf5beb6b89b8ea7$ // #include "libcef_dll/cpptoc/write_handler_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/write_handler_cpptoc.h b/src/cef/libcef_dll/cpptoc/write_handler_cpptoc.h index dfcfd5b41dadf..60a0ba7924f85 --- a/src/cef/libcef_dll/cpptoc/write_handler_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/write_handler_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b6360b7899237a1d616dd8c1cff016d397acbcd3$ +// $hash=94c67ea9a0a7a44b92ef2d322f7dd34490f5b8e6$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_WRITE_HANDLER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/x509cert_principal_cpptoc.cc b/src/cef/libcef_dll/cpptoc/x509cert_principal_cpptoc.cc index abbd87a9ba645..f0685aeada23c --- a/src/cef/libcef_dll/cpptoc/x509cert_principal_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/x509cert_principal_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=08b0ac0ef8621f8ce81753616044a5e04dc4a191$ +// $hash=513c53172ce1c11c036ff200d1ea73c4015b7f3d$ // #include "libcef_dll/cpptoc/x509cert_principal_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/x509cert_principal_cpptoc.h b/src/cef/libcef_dll/cpptoc/x509cert_principal_cpptoc.h index 244854b81a8d6..8aba2d611d836 --- a/src/cef/libcef_dll/cpptoc/x509cert_principal_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/x509cert_principal_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2041bbbdcbf9434c1a5205ebae8438d47725aa1f$ +// $hash=6e97a51d6d111d04e88c67e98eff127d7ca09dc1$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_X509CERT_PRINCIPAL_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/x509certificate_cpptoc.cc b/src/cef/libcef_dll/cpptoc/x509certificate_cpptoc.cc index e510b4d19200f..6a0b07933fcd1 --- a/src/cef/libcef_dll/cpptoc/x509certificate_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/x509certificate_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=cac3e88ea15965e3a7786500606845b0b6157212$ +// $hash=42a3effdf914b981136faef4528708ea47aba8c1$ // #include "libcef_dll/cpptoc/x509certificate_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/x509certificate_cpptoc.h b/src/cef/libcef_dll/cpptoc/x509certificate_cpptoc.h index 29644da070b96..6ef90271fca96 --- a/src/cef/libcef_dll/cpptoc/x509certificate_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/x509certificate_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6eb11abb213e5b3e50494c956c51d6286020ca39$ +// $hash=11090b23faf77d87bde0a603e74a0697be58fa7c$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_X509CERTIFICATE_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/xml_reader_cpptoc.cc b/src/cef/libcef_dll/cpptoc/xml_reader_cpptoc.cc index ae117e5f241ce..a782ff1432587 --- a/src/cef/libcef_dll/cpptoc/xml_reader_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/xml_reader_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=3ac5f5c45a59bad3310db431653227ceac42186e$ +// $hash=e4ec9a462bd52b87a605d8c2c677b278943e55f9$ // #include "libcef_dll/cpptoc/xml_reader_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/xml_reader_cpptoc.h b/src/cef/libcef_dll/cpptoc/xml_reader_cpptoc.h index 5f32d62c81f89..0a69e23f147a2 --- a/src/cef/libcef_dll/cpptoc/xml_reader_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/xml_reader_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=397fee4bf9eb4c1dc2117bba9ac2b63542335196$ +// $hash=1305b95acf584a0a0e5fd412e948f195233f476b$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_XML_READER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/cpptoc/zip_reader_cpptoc.cc b/src/cef/libcef_dll/cpptoc/zip_reader_cpptoc.cc index a53a7a724eeb0..7231cc3ffead5 --- a/src/cef/libcef_dll/cpptoc/zip_reader_cpptoc.cc +++ b/src/cef/libcef_dll/cpptoc/zip_reader_cpptoc.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9fe9e9199e284af22669ba2abfb715d0e7ae8de3$ +// $hash=1fdbab5695a0c6e3eb026cd78dda309b620c75a7$ // #include "libcef_dll/cpptoc/zip_reader_cpptoc.h" diff --git a/src/cef/libcef_dll/cpptoc/zip_reader_cpptoc.h b/src/cef/libcef_dll/cpptoc/zip_reader_cpptoc.h index c04789a0c9290..06233d39eae09 --- a/src/cef/libcef_dll/cpptoc/zip_reader_cpptoc.h +++ b/src/cef/libcef_dll/cpptoc/zip_reader_cpptoc.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=10530d641ffc50165b89d16e76230b9ab3f9aca5$ +// $hash=488ca93df16ff22fdd9d397aab117990f01f3331$ // #ifndef CEF_LIBCEF_DLL_CPPTOC_ZIP_READER_CPPTOC_H_ diff --git a/src/cef/libcef_dll/ctocpp/access_request_ctocpp.cc b/src/cef/libcef_dll/ctocpp/access_request_ctocpp.cc index 4d7e095ef4da0..800bc7e9e08db --- a/src/cef/libcef_dll/ctocpp/access_request_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/access_request_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=05b34b1c04c69b654aad9a8136efbe83693d255f$ +// $hash=1e70efca41e4964cb02f68b5f93dc4a4567b60da$ // #include "libcef_dll/ctocpp/access_request_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/access_request_ctocpp.h b/src/cef/libcef_dll/ctocpp/access_request_ctocpp.h index fc0300402f19d..5eb1d7f759de9 --- a/src/cef/libcef_dll/ctocpp/access_request_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/access_request_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9a6a1dd32258b15f1694c3070c61bf0d0092f18f$ +// $hash=08c6bc8913ed7dcf8134fe99745d8f9a4fbc7fa4$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_ACCESS_REQUEST_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/accessibility_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/accessibility_handler_ctocpp.cc index 544ecf2731753..1f6d139cc9793 --- a/src/cef/libcef_dll/ctocpp/accessibility_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/accessibility_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ced6517a7c7149502b418c5fb06386ff30777630$ +// $hash=0613e7faeb146728fa191bcb163f5d2a7386378f$ // #include "libcef_dll/ctocpp/accessibility_handler_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/accessibility_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/accessibility_handler_ctocpp.h index 17804af63428b..0a94e2ead1e4e --- a/src/cef/libcef_dll/ctocpp/accessibility_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/accessibility_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7ab53ef41cd69320ac6441e514582fd583203207$ +// $hash=3bfebc6542251128247e89a55fba8cbb3bc7061d$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_ACCESSIBILITY_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/app_ctocpp.cc b/src/cef/libcef_dll/ctocpp/app_ctocpp.cc index 6d60e8f0cd219..49ca33f2e07c5 --- a/src/cef/libcef_dll/ctocpp/app_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/app_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9986455b9b29bd88504e9b4c2b73bfebc87cfc61$ +// $hash=60ccdb3fa2c50678bc2ba4aeb04a6ed9428f0671$ // #include "libcef_dll/ctocpp/app_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/app_ctocpp.h b/src/cef/libcef_dll/ctocpp/app_ctocpp.h index bac5ba4bb12b3..80424a306c27b --- a/src/cef/libcef_dll/ctocpp/app_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/app_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b1a38565477fd1c436d8a62bfa9d41747f7fe30f$ +// $hash=ea433c4f09f9cc1c432e3406dacfe27ec81c20cb$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_APP_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/audio_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/audio_handler_ctocpp.cc index fcba4e08799dd..0352ecfc01bef --- a/src/cef/libcef_dll/ctocpp/audio_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/audio_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e2df55073d0fb809dcd4cf0f6bb7ed36dcd4f73c$ +// $hash=de4ec961ee7ee01943cf5a21b7e0729109d74d31$ // #include "libcef_dll/ctocpp/audio_handler_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/audio_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/audio_handler_ctocpp.h index cdb6138637ad3..07bf46b6327a1 --- a/src/cef/libcef_dll/ctocpp/audio_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/audio_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9de91dcf5136e07c0d5c06ad9be8173b918f668a$ +// $hash=761b05f6a7cd2f0cfc1968a3902bd874060ad79b$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_AUDIO_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/auth_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/auth_callback_ctocpp.cc index ee290eb9b4c8f..e86d64fbbb335 --- a/src/cef/libcef_dll/ctocpp/auth_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/auth_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e7ec4903d06110c27d271a7e946c90231b8d3f08$ +// $hash=1397d65bac566cf536f65f10709e0cd0448692fa$ // #include "libcef_dll/ctocpp/auth_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/auth_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/auth_callback_ctocpp.h index c03f19aec0d3b..aba08fadedf4e --- a/src/cef/libcef_dll/ctocpp/auth_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/auth_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=74b470ef09c99a7d2ccbe7e9134e0b4d1f11be03$ +// $hash=b21ded769da39fdf3e0ae7991bdc6a2175a4113d$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_AUTH_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/before_download_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/before_download_callback_ctocpp.cc index 35b0bb6593a34..e98722822d887 --- a/src/cef/libcef_dll/ctocpp/before_download_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/before_download_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=dab6c53c94db70fbeb54b440584a5147c52fe082$ +// $hash=70cd50b1ed22e0b0068a90539de1f00ddd0511dd$ // #include "libcef_dll/ctocpp/before_download_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/before_download_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/before_download_callback_ctocpp.h index 52415e89675ad..23739dd84de11 --- a/src/cef/libcef_dll/ctocpp/before_download_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/before_download_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f2b6a61b2459566fef19ee3824d7c155bf7f25d1$ +// $hash=743f5b5893055b96eb373b93368c727b3d36d3c6$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_BEFORE_DOWNLOAD_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/binary_value_ctocpp.cc b/src/cef/libcef_dll/ctocpp/binary_value_ctocpp.cc index 307b982cde15b..b9c7809c3ece0 --- a/src/cef/libcef_dll/ctocpp/binary_value_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/binary_value_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=80a91b8a85dc537cb49cbd5eaea974f92fbf9cde$ +// $hash=50f74bf4eaafce6b10c91af2a9bf516fac113cf5$ // #include "libcef_dll/ctocpp/binary_value_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/binary_value_ctocpp.h b/src/cef/libcef_dll/ctocpp/binary_value_ctocpp.h index 5a768b4747b97..414f70260ccf9 --- a/src/cef/libcef_dll/ctocpp/binary_value_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/binary_value_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e9e56607998130280b093c45987aa294c06f1912$ +// $hash=b6f011a6c26b4264084eb68dae0d63032c07013c$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_BINARY_VALUE_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/browser_ctocpp.cc b/src/cef/libcef_dll/ctocpp/browser_ctocpp.cc index f2a84fea5f8a4..a9bdc2a55717a --- a/src/cef/libcef_dll/ctocpp/browser_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/browser_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8a99c30f78379c8bac224637139db4110d8801cb$ +// $hash=ab991c66f7028ebb53acbd5cf350c89a880f4383$ // #include "libcef_dll/ctocpp/browser_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/browser_ctocpp.h b/src/cef/libcef_dll/ctocpp/browser_ctocpp.h index df1823631cb26..f59811147206e --- a/src/cef/libcef_dll/ctocpp/browser_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/browser_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=4e74199d2ef640e3276988dc06a53ff84140b3fc$ +// $hash=66aac50bedd02f309bb3715b0d4cafb0cd824c4d$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_BROWSER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/browser_host_ctocpp.cc b/src/cef/libcef_dll/ctocpp/browser_host_ctocpp.cc index 5ee4cf01c6285..188871e22d02a --- a/src/cef/libcef_dll/ctocpp/browser_host_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/browser_host_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=da4be0653a8e67000f1c6e34219ee3f7b288ca58$ +// $hash=4912cb91f0c5d4e550ab1441c8848477bc787a11$ // #include "libcef_dll/ctocpp/browser_host_ctocpp.h" @@ -22,6 +22,8 @@ #include "libcef_dll/cpptoc/run_file_dialog_callback_cpptoc.h" #include "libcef_dll/cpptoc/store_web_archive_result_callback_cpptoc.h" #include "libcef_dll/cpptoc/task_cpptoc.h" +#include "libcef_dll/cpptoc/web_message_receiver_cpptoc.h" +#include "libcef_dll/ctocpp/binary_value_ctocpp.h" #include "libcef_dll/ctocpp/browser_ctocpp.h" #include "libcef_dll/ctocpp/dictionary_value_ctocpp.h" #include "libcef_dll/ctocpp/drag_data_ctocpp.h" @@ -29,6 +31,7 @@ #include "libcef_dll/ctocpp/navigation_entry_ctocpp.h" #include "libcef_dll/ctocpp/registration_ctocpp.h" #include "libcef_dll/ctocpp/request_context_ctocpp.h" +#include "libcef_dll/ctocpp/value_ctocpp.h" #include "libcef_dll/shutdown_checker.h" #include "libcef_dll/transfer_util.h" @@ -1122,7 +1125,7 @@ void CefBrowserHostCToCpp::DestroyAllWebMessagePorts() { NO_SANITIZE("cfi-icall") void CefBrowserHostCToCpp::PostPortMessage(CefString& port_handle, - CefString& data) { + CefRefPtr message) { shutdown_checker::AssertNotShutdown(); cef_browser_host_t* _struct = GetStruct(); @@ -1131,15 +1134,20 @@ void CefBrowserHostCToCpp::PostPortMessage(CefString& port_handle, // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + // Verify param: message; type: refptr_same + DCHECK(message.get()); + if (!message.get()) + return; + // Execute _struct->post_port_message(_struct, port_handle.GetWritableStruct(), - data.GetWritableStruct()); + CefValueCToCpp::Unwrap(message)); } NO_SANITIZE("cfi-icall") void CefBrowserHostCToCpp::SetPortMessageCallback( CefString& port_handle, - CefRefPtr callback) { + CefRefPtr callback) { shutdown_checker::AssertNotShutdown(); cef_browser_host_t* _struct = GetStruct(); @@ -1156,7 +1164,7 @@ void CefBrowserHostCToCpp::SetPortMessageCallback( // Execute _struct->set_port_message_callback( _struct, port_handle.GetWritableStruct(), - CefJavaScriptResultCallbackCppToC::Wrap(callback)); + CefWebMessageReceiverCppToC::Wrap(callback)); } NO_SANITIZE("cfi-icall") @@ -1758,6 +1766,143 @@ void CefBrowserHostCToCpp::RemoveCache(bool include_disk_files) { _struct->remove_cache(_struct, include_disk_files); } +NO_SANITIZE("cfi-icall") +void CefBrowserHostCToCpp::ScrollPageUpDown(bool is_up, + bool is_half, + float view_height) { + shutdown_checker::AssertNotShutdown(); + + cef_browser_host_t* _struct = GetStruct(); + if (CEF_MEMBER_MISSING(_struct, scroll_page_up_down)) + return; + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + // Execute + _struct->scroll_page_up_down(_struct, is_up, is_half, view_height); +} + +NO_SANITIZE("cfi-icall") +CefRefPtr CefBrowserHostCToCpp::GetWebState() { + shutdown_checker::AssertNotShutdown(); + + cef_browser_host_t* _struct = GetStruct(); + if (CEF_MEMBER_MISSING(_struct, get_web_state)) + return nullptr; + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + // Execute + cef_binary_value_t* _retval = _struct->get_web_state(_struct); + + // Return type: refptr_same + return CefBinaryValueCToCpp::Wrap(_retval); +} + +NO_SANITIZE("cfi-icall") +bool CefBrowserHostCToCpp::RestoreWebState( + const CefRefPtr state) { + shutdown_checker::AssertNotShutdown(); + + cef_browser_host_t* _struct = GetStruct(); + if (CEF_MEMBER_MISSING(_struct, restore_web_state)) + return false; + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + // Verify param: state; type: refptr_same + DCHECK(state.get()); + if (!state.get()) + return false; + + // Execute + int _retval = + _struct->restore_web_state(_struct, CefBinaryValueCToCpp::Unwrap(state)); + + // Return type: bool + return _retval ? true : false; +} + +NO_SANITIZE("cfi-icall") void CefBrowserHostCToCpp::ScrollTo(float x, float y) { + shutdown_checker::AssertNotShutdown(); + + cef_browser_host_t* _struct = GetStruct(); + if (CEF_MEMBER_MISSING(_struct, scroll_to)) + return; + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + // Execute + _struct->scroll_to(_struct, x, y); +} + +NO_SANITIZE("cfi-icall") +void CefBrowserHostCToCpp::ScrollBy(float delta_x, float delta_y) { + shutdown_checker::AssertNotShutdown(); + + cef_browser_host_t* _struct = GetStruct(); + if (CEF_MEMBER_MISSING(_struct, scroll_by)) + return; + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + // Execute + _struct->scroll_by(_struct, delta_x, delta_y); +} + +NO_SANITIZE("cfi-icall") +void CefBrowserHostCToCpp::SlideScroll(float vx, float vy) { + shutdown_checker::AssertNotShutdown(); + + cef_browser_host_t* _struct = GetStruct(); + if (CEF_MEMBER_MISSING(_struct, slide_scroll)) + return; + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + // Execute + _struct->slide_scroll(_struct, vx, vy); +} + +NO_SANITIZE("cfi-icall") void CefBrowserHostCToCpp::SetFileAccess(bool falg) { + shutdown_checker::AssertNotShutdown(); + + cef_browser_host_t* _struct = GetStruct(); + if (CEF_MEMBER_MISSING(_struct, set_file_access)) + return; + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + // Execute + _struct->set_file_access(_struct, falg); +} + +NO_SANITIZE("cfi-icall") void CefBrowserHostCToCpp::SetBlockNetwork(bool falg) { + shutdown_checker::AssertNotShutdown(); + + cef_browser_host_t* _struct = GetStruct(); + if (CEF_MEMBER_MISSING(_struct, set_block_network)) + return; + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + // Execute + _struct->set_block_network(_struct, falg); +} + +NO_SANITIZE("cfi-icall") void CefBrowserHostCToCpp::SetCacheMode(int falg) { + shutdown_checker::AssertNotShutdown(); + + cef_browser_host_t* _struct = GetStruct(); + if (CEF_MEMBER_MISSING(_struct, set_cache_mode)) + return; + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + // Execute + _struct->set_cache_mode(_struct, falg); +} + // CONSTRUCTOR - Do not edit by hand. CefBrowserHostCToCpp::CefBrowserHostCToCpp() {} diff --git a/src/cef/libcef_dll/ctocpp/browser_host_ctocpp.h b/src/cef/libcef_dll/ctocpp/browser_host_ctocpp.h index ece6642e28544..f75f810a9f13e --- a/src/cef/libcef_dll/ctocpp/browser_host_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/browser_host_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7d2cea734649b808710e6c44ee7eab4f5e5b47cc$ +// $hash=29c3bfce4a45f38ec3fd21096e13addeb83f6310$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_BROWSER_HOST_CTOCPP_H_ @@ -129,10 +129,11 @@ class CefBrowserHostCToCpp : public CefCToCppRefCounted message) override; void SetPortMessageCallback( CefString& port_handle, - CefRefPtr callback) override; + CefRefPtr callback) override; void GetHitData(int& type, CefString& extra_data) override; void SetInitialScale(float scale) override; int PageLoadProgress() override; @@ -186,6 +187,15 @@ class CefBrowserHostCToCpp : public CefCToCppRefCounted GetWebState() override; + bool RestoreWebState(const CefRefPtr state) override; + void ScrollTo(float x, float y) override; + void ScrollBy(float delta_x, float delta_y) override; + void SlideScroll(float vx, float vy) override; + void SetFileAccess(bool falg) override; + void SetBlockNetwork(bool falg) override; + void SetCacheMode(int falg) override; }; #endif // CEF_LIBCEF_DLL_CTOCPP_BROWSER_HOST_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/browser_permission_request_delegate_ctocpp.cc b/src/cef/libcef_dll/ctocpp/browser_permission_request_delegate_ctocpp.cc index 378b2e54202dd..2cca93268f1ef --- a/src/cef/libcef_dll/ctocpp/browser_permission_request_delegate_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/browser_permission_request_delegate_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=4a9c34d8dd8e49725dd7288c3a8c3e2a978c977c$ +// $hash=7af372362be16cd5150da026dbbf41c85daeba88$ // #include "libcef_dll/ctocpp/browser_permission_request_delegate_ctocpp.h" @@ -19,10 +19,11 @@ NO_SANITIZE("cfi-icall") void CefBrowserPermissionRequestDelegateCToCpp::AskGeolocationPermission( - const CefString &origin, cef_permission_callback_t callback) { + const CefString& origin, + cef_permission_callback_t callback) { shutdown_checker::AssertNotShutdown(); - cef_browser_permission_request_delegate_t *_struct = GetStruct(); + cef_browser_permission_request_delegate_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, ask_geolocation_permission)) return; @@ -39,10 +40,10 @@ void CefBrowserPermissionRequestDelegateCToCpp::AskGeolocationPermission( NO_SANITIZE("cfi-icall") void CefBrowserPermissionRequestDelegateCToCpp::AbortAskGeolocationPermission( - const CefString &origin) { + const CefString& origin) { shutdown_checker::AssertNotShutdown(); - cef_browser_permission_request_delegate_t *_struct = GetStruct(); + cef_browser_permission_request_delegate_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, abort_ask_geolocation_permission)) return; @@ -59,11 +60,11 @@ void CefBrowserPermissionRequestDelegateCToCpp::AbortAskGeolocationPermission( NO_SANITIZE("cfi-icall") void CefBrowserPermissionRequestDelegateCToCpp:: - AskProtectedMediaIdentifierPermission(const CefString &origin, + AskProtectedMediaIdentifierPermission(const CefString& origin, cef_permission_callback_t callback) { shutdown_checker::AssertNotShutdown(); - cef_browser_permission_request_delegate_t *_struct = GetStruct(); + cef_browser_permission_request_delegate_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, ask_protected_media_identifier_permission)) return; @@ -81,10 +82,10 @@ void CefBrowserPermissionRequestDelegateCToCpp:: NO_SANITIZE("cfi-icall") void CefBrowserPermissionRequestDelegateCToCpp:: - AbortAskProtectedMediaIdentifierPermission(const CefString &origin) { + AbortAskProtectedMediaIdentifierPermission(const CefString& origin) { shutdown_checker::AssertNotShutdown(); - cef_browser_permission_request_delegate_t *_struct = GetStruct(); + cef_browser_permission_request_delegate_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, abort_ask_protected_media_identifier_permission)) return; @@ -103,10 +104,11 @@ void CefBrowserPermissionRequestDelegateCToCpp:: NO_SANITIZE("cfi-icall") void CefBrowserPermissionRequestDelegateCToCpp::AskMIDISysexPermission( - const CefString &origin, cef_permission_callback_t callback) { + const CefString& origin, + cef_permission_callback_t callback) { shutdown_checker::AssertNotShutdown(); - cef_browser_permission_request_delegate_t *_struct = GetStruct(); + cef_browser_permission_request_delegate_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, ask_midisysex_permission)) return; @@ -123,10 +125,10 @@ void CefBrowserPermissionRequestDelegateCToCpp::AskMIDISysexPermission( NO_SANITIZE("cfi-icall") void CefBrowserPermissionRequestDelegateCToCpp::AbortAskMIDISysexPermission( - const CefString &origin) { + const CefString& origin) { shutdown_checker::AssertNotShutdown(); - cef_browser_permission_request_delegate_t *_struct = GetStruct(); + cef_browser_permission_request_delegate_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, abort_ask_midisysex_permission)) return; @@ -143,10 +145,11 @@ void CefBrowserPermissionRequestDelegateCToCpp::AbortAskMIDISysexPermission( NO_SANITIZE("cfi-icall") void CefBrowserPermissionRequestDelegateCToCpp::NotifyGeolocationPermission( - bool value, const CefString &origin) { + bool value, + const CefString& origin) { shutdown_checker::AssertNotShutdown(); - cef_browser_permission_request_delegate_t *_struct = GetStruct(); + cef_browser_permission_request_delegate_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, notify_geolocation_permission)) return; @@ -174,11 +177,11 @@ CefBrowserPermissionRequestDelegateCToCpp:: } template <> -cef_browser_permission_request_delegate_t * +cef_browser_permission_request_delegate_t* CefCToCppRefCounted:: - UnwrapDerived(CefWrapperType type, CefBrowserPermissionRequestDelegate *c) { + UnwrapDerived(CefWrapperType type, CefBrowserPermissionRequestDelegate* c) { NOTREACHED() << "Unexpected class type: " << type; return nullptr; } diff --git a/src/cef/libcef_dll/ctocpp/browser_permission_request_delegate_ctocpp.h b/src/cef/libcef_dll/ctocpp/browser_permission_request_delegate_ctocpp.h index 4b7598dc129c5..39c61973fe3be --- a/src/cef/libcef_dll/ctocpp/browser_permission_request_delegate_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/browser_permission_request_delegate_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c9c5f759ffc22b4c39e35c6273d17966ec357b35$ +// $hash=a2e7c9e77ee45cef4da269e9e613fd4fdef5f9ac$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_BROWSER_PERMISSION_REQUEST_DELEGATE_CTOCPP_H_ @@ -30,23 +30,24 @@ class CefBrowserPermissionRequestDelegateCToCpp : public CefCToCppRefCounted { -public: + public: CefBrowserPermissionRequestDelegateCToCpp(); virtual ~CefBrowserPermissionRequestDelegateCToCpp(); // CefBrowserPermissionRequestDelegate methods. - void AskGeolocationPermission(const CefString &origin, + void AskGeolocationPermission(const CefString& origin, cef_permission_callback_t callback) override; - void AbortAskGeolocationPermission(const CefString &origin) override; + void AbortAskGeolocationPermission(const CefString& origin) override; void AskProtectedMediaIdentifierPermission( - const CefString &origin, cef_permission_callback_t callback) override; - void - AbortAskProtectedMediaIdentifierPermission(const CefString &origin) override; - void AskMIDISysexPermission(const CefString &origin, + const CefString& origin, + cef_permission_callback_t callback) override; + void AbortAskProtectedMediaIdentifierPermission( + const CefString& origin) override; + void AskMIDISysexPermission(const CefString& origin, cef_permission_callback_t callback) override; - void AbortAskMIDISysexPermission(const CefString &origin) override; + void AbortAskMIDISysexPermission(const CefString& origin) override; void NotifyGeolocationPermission(bool value, - const CefString &origin) override; + const CefString& origin) override; }; -#endif // CEF_LIBCEF_DLL_CTOCPP_BROWSER_PERMISSION_REQUEST_DELEGATE_CTOCPP_H_ +#endif // CEF_LIBCEF_DLL_CTOCPP_BROWSER_PERMISSION_REQUEST_DELEGATE_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/browser_process_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/browser_process_handler_ctocpp.cc index 2338c499f1748..c8739c79bde6f --- a/src/cef/libcef_dll/ctocpp/browser_process_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/browser_process_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=3302f28c60da03b9f5ba5fa110523b353765d1a3$ +// $hash=a2e2cd65794078959c9d31ee3a294fb937d6f802$ // #include "libcef_dll/ctocpp/browser_process_handler_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/browser_process_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/browser_process_handler_ctocpp.h index 3871506b1a685..50c763307fbc5 --- a/src/cef/libcef_dll/ctocpp/browser_process_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/browser_process_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7a13d15a99d1c92a757b776bb00d932296012054$ +// $hash=66b5c3e001c23a720ae8a8e6d98afeb2419e5038$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_BROWSER_PROCESS_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/callback_ctocpp.cc index c0030004cbe5b..8c86cd7330e2d --- a/src/cef/libcef_dll/ctocpp/callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ef330e0d61e143966544b8a80f04b72dc32ec4e3$ +// $hash=669523b79dbdfe2fff4015e8a1b247e7f90e62e0$ // #include "libcef_dll/ctocpp/callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/callback_ctocpp.h index f4d7a15e7851f..1e59651494167 --- a/src/cef/libcef_dll/ctocpp/callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=4a884b7737dd5ba552273873e63dd4df51a632b7$ +// $hash=33a36c40703e1a794c2d8365f0ed692bad529e4b$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/client_ctocpp.cc b/src/cef/libcef_dll/ctocpp/client_ctocpp.cc index 5a741e37ed727..f31c0ee080445 --- a/src/cef/libcef_dll/ctocpp/client_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/client_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6c7761f17f60e6c3db928ffc15b373b0c50dfb47$ +// $hash=d090744e28308c8ad6b47906ee231b4fe52fa6a2$ // #include "libcef_dll/ctocpp/client_ctocpp.h" @@ -39,14 +39,14 @@ NO_SANITIZE("cfi-icall") CefRefPtr CefClientCToCpp::GetAudioHandler() { - cef_client_t *_struct = GetStruct(); + cef_client_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, get_audio_handler)) return nullptr; // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Execute - cef_audio_handler_t *_retval = _struct->get_audio_handler(_struct); + cef_audio_handler_t* _retval = _struct->get_audio_handler(_struct); // Return type: refptr_same return CefAudioHandlerCToCpp::Wrap(_retval); @@ -54,14 +54,14 @@ CefRefPtr CefClientCToCpp::GetAudioHandler() { NO_SANITIZE("cfi-icall") CefRefPtr CefClientCToCpp::GetContextMenuHandler() { - cef_client_t *_struct = GetStruct(); + cef_client_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, get_context_menu_handler)) return nullptr; // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Execute - cef_context_menu_handler_t *_retval = + cef_context_menu_handler_t* _retval = _struct->get_context_menu_handler(_struct); // Return type: refptr_same @@ -70,14 +70,14 @@ CefRefPtr CefClientCToCpp::GetContextMenuHandler() { NO_SANITIZE("cfi-icall") CefRefPtr CefClientCToCpp::GetDialogHandler() { - cef_client_t *_struct = GetStruct(); + cef_client_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, get_dialog_handler)) return nullptr; // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Execute - cef_dialog_handler_t *_retval = _struct->get_dialog_handler(_struct); + cef_dialog_handler_t* _retval = _struct->get_dialog_handler(_struct); // Return type: refptr_same return CefDialogHandlerCToCpp::Wrap(_retval); @@ -85,14 +85,14 @@ CefRefPtr CefClientCToCpp::GetDialogHandler() { NO_SANITIZE("cfi-icall") CefRefPtr CefClientCToCpp::GetDisplayHandler() { - cef_client_t *_struct = GetStruct(); + cef_client_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, get_display_handler)) return nullptr; // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Execute - cef_display_handler_t *_retval = _struct->get_display_handler(_struct); + cef_display_handler_t* _retval = _struct->get_display_handler(_struct); // Return type: refptr_same return CefDisplayHandlerCToCpp::Wrap(_retval); @@ -100,14 +100,14 @@ CefRefPtr CefClientCToCpp::GetDisplayHandler() { NO_SANITIZE("cfi-icall") CefRefPtr CefClientCToCpp::GetDownloadHandler() { - cef_client_t *_struct = GetStruct(); + cef_client_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, get_download_handler)) return nullptr; // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Execute - cef_download_handler_t *_retval = _struct->get_download_handler(_struct); + cef_download_handler_t* _retval = _struct->get_download_handler(_struct); // Return type: refptr_same return CefDownloadHandlerCToCpp::Wrap(_retval); @@ -115,14 +115,14 @@ CefRefPtr CefClientCToCpp::GetDownloadHandler() { NO_SANITIZE("cfi-icall") CefRefPtr CefClientCToCpp::GetDragHandler() { - cef_client_t *_struct = GetStruct(); + cef_client_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, get_drag_handler)) return nullptr; // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Execute - cef_drag_handler_t *_retval = _struct->get_drag_handler(_struct); + cef_drag_handler_t* _retval = _struct->get_drag_handler(_struct); // Return type: refptr_same return CefDragHandlerCToCpp::Wrap(_retval); @@ -130,14 +130,14 @@ CefRefPtr CefClientCToCpp::GetDragHandler() { NO_SANITIZE("cfi-icall") CefRefPtr CefClientCToCpp::GetFindHandler() { - cef_client_t *_struct = GetStruct(); + cef_client_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, get_find_handler)) return nullptr; // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Execute - cef_find_handler_t *_retval = _struct->get_find_handler(_struct); + cef_find_handler_t* _retval = _struct->get_find_handler(_struct); // Return type: refptr_same return CefFindHandlerCToCpp::Wrap(_retval); @@ -145,14 +145,14 @@ CefRefPtr CefClientCToCpp::GetFindHandler() { NO_SANITIZE("cfi-icall") CefRefPtr CefClientCToCpp::GetFocusHandler() { - cef_client_t *_struct = GetStruct(); + cef_client_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, get_focus_handler)) return nullptr; // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Execute - cef_focus_handler_t *_retval = _struct->get_focus_handler(_struct); + cef_focus_handler_t* _retval = _struct->get_focus_handler(_struct); // Return type: refptr_same return CefFocusHandlerCToCpp::Wrap(_retval); @@ -160,14 +160,14 @@ CefRefPtr CefClientCToCpp::GetFocusHandler() { NO_SANITIZE("cfi-icall") CefRefPtr CefClientCToCpp::GetFrameHandler() { - cef_client_t *_struct = GetStruct(); + cef_client_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, get_frame_handler)) return nullptr; // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Execute - cef_frame_handler_t *_retval = _struct->get_frame_handler(_struct); + cef_frame_handler_t* _retval = _struct->get_frame_handler(_struct); // Return type: refptr_same return CefFrameHandlerCToCpp::Wrap(_retval); @@ -175,14 +175,14 @@ CefRefPtr CefClientCToCpp::GetFrameHandler() { NO_SANITIZE("cfi-icall") CefRefPtr CefClientCToCpp::GetJSDialogHandler() { - cef_client_t *_struct = GetStruct(); + cef_client_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, get_jsdialog_handler)) return nullptr; // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Execute - cef_jsdialog_handler_t *_retval = _struct->get_jsdialog_handler(_struct); + cef_jsdialog_handler_t* _retval = _struct->get_jsdialog_handler(_struct); // Return type: refptr_same return CefJSDialogHandlerCToCpp::Wrap(_retval); @@ -190,14 +190,14 @@ CefRefPtr CefClientCToCpp::GetJSDialogHandler() { NO_SANITIZE("cfi-icall") CefRefPtr CefClientCToCpp::GetKeyboardHandler() { - cef_client_t *_struct = GetStruct(); + cef_client_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, get_keyboard_handler)) return nullptr; // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Execute - cef_keyboard_handler_t *_retval = _struct->get_keyboard_handler(_struct); + cef_keyboard_handler_t* _retval = _struct->get_keyboard_handler(_struct); // Return type: refptr_same return CefKeyboardHandlerCToCpp::Wrap(_retval); @@ -205,14 +205,14 @@ CefRefPtr CefClientCToCpp::GetKeyboardHandler() { NO_SANITIZE("cfi-icall") CefRefPtr CefClientCToCpp::GetLifeSpanHandler() { - cef_client_t *_struct = GetStruct(); + cef_client_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, get_life_span_handler)) return nullptr; // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Execute - cef_life_span_handler_t *_retval = _struct->get_life_span_handler(_struct); + cef_life_span_handler_t* _retval = _struct->get_life_span_handler(_struct); // Return type: refptr_same return CefLifeSpanHandlerCToCpp::Wrap(_retval); @@ -220,14 +220,14 @@ CefRefPtr CefClientCToCpp::GetLifeSpanHandler() { NO_SANITIZE("cfi-icall") CefRefPtr CefClientCToCpp::GetLoadHandler() { - cef_client_t *_struct = GetStruct(); + cef_client_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, get_load_handler)) return nullptr; // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Execute - cef_load_handler_t *_retval = _struct->get_load_handler(_struct); + cef_load_handler_t* _retval = _struct->get_load_handler(_struct); // Return type: refptr_same return CefLoadHandlerCToCpp::Wrap(_retval); @@ -235,14 +235,14 @@ CefRefPtr CefClientCToCpp::GetLoadHandler() { NO_SANITIZE("cfi-icall") CefRefPtr CefClientCToCpp::GetPrintHandler() { - cef_client_t *_struct = GetStruct(); + cef_client_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, get_print_handler)) return nullptr; // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Execute - cef_print_handler_t *_retval = _struct->get_print_handler(_struct); + cef_print_handler_t* _retval = _struct->get_print_handler(_struct); // Return type: refptr_same return CefPrintHandlerCToCpp::Wrap(_retval); @@ -250,14 +250,14 @@ CefRefPtr CefClientCToCpp::GetPrintHandler() { NO_SANITIZE("cfi-icall") CefRefPtr CefClientCToCpp::GetRenderHandler() { - cef_client_t *_struct = GetStruct(); + cef_client_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, get_render_handler)) return nullptr; // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Execute - cef_render_handler_t *_retval = _struct->get_render_handler(_struct); + cef_render_handler_t* _retval = _struct->get_render_handler(_struct); // Return type: refptr_same return CefRenderHandlerCToCpp::Wrap(_retval); @@ -265,14 +265,14 @@ CefRefPtr CefClientCToCpp::GetRenderHandler() { NO_SANITIZE("cfi-icall") CefRefPtr CefClientCToCpp::GetRequestHandler() { - cef_client_t *_struct = GetStruct(); + cef_client_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, get_request_handler)) return nullptr; // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Execute - cef_request_handler_t *_retval = _struct->get_request_handler(_struct); + cef_request_handler_t* _retval = _struct->get_request_handler(_struct); // Return type: refptr_same return CefRequestHandlerCToCpp::Wrap(_retval); @@ -280,14 +280,14 @@ CefRefPtr CefClientCToCpp::GetRequestHandler() { NO_SANITIZE("cfi-icall") CefRefPtr CefClientCToCpp::GetPermissionRequest() { - cef_client_t *_struct = GetStruct(); + cef_client_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, get_permission_request)) return nullptr; // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Execute - cef_permission_request_t *_retval = _struct->get_permission_request(_struct); + cef_permission_request_t* _retval = _struct->get_permission_request(_struct); // Return type: refptr_same return CefPermissionRequestCToCpp::Wrap(_retval); @@ -295,9 +295,11 @@ CefRefPtr CefClientCToCpp::GetPermissionRequest() { NO_SANITIZE("cfi-icall") bool CefClientCToCpp::OnProcessMessageReceived( - CefRefPtr browser, CefRefPtr frame, - CefProcessId source_process, CefRefPtr message) { - cef_client_t *_struct = GetStruct(); + CefRefPtr browser, + CefRefPtr frame, + CefProcessId source_process, + CefRefPtr message) { + cef_client_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, on_process_message_received)) return false; @@ -327,10 +329,10 @@ bool CefClientCToCpp::OnProcessMessageReceived( NO_SANITIZE("cfi-icall") int CefClientCToCpp::NotifyJavaScriptResult(CefRefPtr args, - const CefString &method, - const CefString &object_name, + const CefString& method, + const CefString& object_name, CefRefPtr result) { - cef_client_t *_struct = GetStruct(); + cef_client_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, notify_java_script_result)) return 0; @@ -371,13 +373,14 @@ CefClientCToCpp::CefClientCToCpp() {} CefClientCToCpp::~CefClientCToCpp() {} template <> -cef_client_t * +cef_client_t* CefCToCppRefCounted::UnwrapDerived( - CefWrapperType type, CefClient *c) { + CefWrapperType type, + CefClient* c) { NOTREACHED() << "Unexpected class type: " << type; return nullptr; } template <> -CefWrapperType CefCToCppRefCounted::kWrapperType = WT_CLIENT; +CefWrapperType CefCToCppRefCounted:: + kWrapperType = WT_CLIENT; diff --git a/src/cef/libcef_dll/ctocpp/client_ctocpp.h b/src/cef/libcef_dll/ctocpp/client_ctocpp.h index 72c58879a1cc4..37f3eb67cc0ea --- a/src/cef/libcef_dll/ctocpp/client_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/client_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7516e646aea8db0ff68ea79041e05ebb9a320cf2$ +// $hash=13d421c7598593f4bee5b3e62cb8aaf348a350f9$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_CLIENT_CTOCPP_H_ @@ -28,7 +28,7 @@ // This class may be instantiated and accessed DLL-side only. class CefClientCToCpp : public CefCToCppRefCounted { -public: + public: CefClientCToCpp(); virtual ~CefClientCToCpp(); @@ -55,9 +55,9 @@ public: CefProcessId source_process, CefRefPtr message) override; int NotifyJavaScriptResult(CefRefPtr args, - const CefString &method, - const CefString &object_name, + const CefString& method, + const CefString& object_name, CefRefPtr result) override; }; -#endif // CEF_LIBCEF_DLL_CTOCPP_CLIENT_CTOCPP_H_ +#endif // CEF_LIBCEF_DLL_CTOCPP_CLIENT_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/command_line_ctocpp.cc b/src/cef/libcef_dll/ctocpp/command_line_ctocpp.cc index a96b067677f06..e7b02e834fad5 --- a/src/cef/libcef_dll/ctocpp/command_line_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/command_line_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=cc3c62b07c8e4d6f019637a0338673ac21ffa017$ +// $hash=2f7f88a79dc5c9bb4c7af27e6abac4b4e7ba3d76$ // #include "libcef_dll/ctocpp/command_line_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/command_line_ctocpp.h b/src/cef/libcef_dll/ctocpp/command_line_ctocpp.h index e11c013b6bf61..7beaa99e038c6 --- a/src/cef/libcef_dll/ctocpp/command_line_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/command_line_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6dffc109a4a5bdc10bda0a03950f1a8b81f964b7$ +// $hash=c91f76be5a60016fa78afe2813b0d4df3bb422e7$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_COMMAND_LINE_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/completion_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/completion_callback_ctocpp.cc index 4b9308d9569e9..302cfe2802419 --- a/src/cef/libcef_dll/ctocpp/completion_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/completion_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f65d432f0ca5891aa466010183e437ba5e2007be$ +// $hash=bc0832e0b26f161d96d699a1922df4144ae6cf2d$ // #include "libcef_dll/ctocpp/completion_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/completion_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/completion_callback_ctocpp.h index a934d50e22740..37956aadac1fb --- a/src/cef/libcef_dll/ctocpp/completion_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/completion_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d8c3f928349e064d8afe7853d4a47c90c1ed0114$ +// $hash=bbdf6c23d87122deb5d3100430547b2c608497a9$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_COMPLETION_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/context_menu_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/context_menu_handler_ctocpp.cc index eea53aa71656c..6d1bd15c9aa41 --- a/src/cef/libcef_dll/ctocpp/context_menu_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/context_menu_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e251b197b3369b44f3d66ce414094ac24ba1db10$ +// $hash=074448a6721865377653c8625a38925aef5f3c7d$ // #include "libcef_dll/ctocpp/context_menu_handler_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/context_menu_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/context_menu_handler_ctocpp.h index d5e0c793ac084..92e77bccbb2e8 --- a/src/cef/libcef_dll/ctocpp/context_menu_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/context_menu_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=533df2bb508d88d0828f0da6284732c2ecbbafab$ +// $hash=0d0bcb30d9e8b5894158c9ecf80fa710e4ce6b7d$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_CONTEXT_MENU_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/context_menu_params_ctocpp.cc b/src/cef/libcef_dll/ctocpp/context_menu_params_ctocpp.cc index c5dd4186ddc9e..18323da16151c --- a/src/cef/libcef_dll/ctocpp/context_menu_params_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/context_menu_params_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=233d530cb984468703b97752bda1178191d4ba75$ +// $hash=bc04acf3a86598987676f33a6d39c10435dded70$ // #include "libcef_dll/ctocpp/context_menu_params_ctocpp.h" @@ -230,7 +230,7 @@ CefContextMenuParams::MediaType CefContextMenuParamsCToCpp::GetMediaType() { NO_SANITIZE("cfi-icall") CefContextMenuParams::MediaStateFlags -CefContextMenuParamsCToCpp::GetMediaStateFlags() { + CefContextMenuParamsCToCpp::GetMediaStateFlags() { shutdown_checker::AssertNotShutdown(); cef_context_menu_params_t* _struct = GetStruct(); @@ -351,7 +351,7 @@ bool CefContextMenuParamsCToCpp::IsSpellCheckEnabled() { NO_SANITIZE("cfi-icall") CefContextMenuParams::EditStateFlags -CefContextMenuParamsCToCpp::GetEditStateFlags() { + CefContextMenuParamsCToCpp::GetEditStateFlags() { shutdown_checker::AssertNotShutdown(); cef_context_menu_params_t* _struct = GetStruct(); @@ -384,6 +384,42 @@ NO_SANITIZE("cfi-icall") bool CefContextMenuParamsCToCpp::IsCustomMenu() { return _retval ? true : false; } +NO_SANITIZE("cfi-icall") +CefContextMenuParams::InputFieldType + CefContextMenuParamsCToCpp::GetInputFieldType() { + shutdown_checker::AssertNotShutdown(); + + cef_context_menu_params_t* _struct = GetStruct(); + if (CEF_MEMBER_MISSING(_struct, get_input_field_type)) + return CM_INPUTFIELDTYPE_NONE; + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + // Execute + cef_context_menu_input_field_type_t _retval = + _struct->get_input_field_type(_struct); + + // Return type: simple + return _retval; +} + +NO_SANITIZE("cfi-icall") +CefContextMenuParams::SourceType CefContextMenuParamsCToCpp::GetSourceType() { + shutdown_checker::AssertNotShutdown(); + + cef_context_menu_params_t* _struct = GetStruct(); + if (CEF_MEMBER_MISSING(_struct, get_source_type)) + return CM_SOURCETYPE_NONE; + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + // Execute + cef_context_menu_source_type_t _retval = _struct->get_source_type(_struct); + + // Return type: simple + return _retval; +} + // CONSTRUCTOR - Do not edit by hand. CefContextMenuParamsCToCpp::CefContextMenuParamsCToCpp() {} diff --git a/src/cef/libcef_dll/ctocpp/context_menu_params_ctocpp.h b/src/cef/libcef_dll/ctocpp/context_menu_params_ctocpp.h index b692a5160bbce..2540013e815c4 --- a/src/cef/libcef_dll/ctocpp/context_menu_params_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/context_menu_params_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=de83ca0067722af09407abc0b7723a8d91d083ad$ +// $hash=fd06aad327c518573e68c645f3facd55fea2da34$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_CONTEXT_MENU_PARAMS_CTOCPP_H_ @@ -56,6 +56,8 @@ class CefContextMenuParamsCToCpp bool IsSpellCheckEnabled() override; EditStateFlags GetEditStateFlags() override; bool IsCustomMenu() override; + InputFieldType GetInputFieldType() override; + SourceType GetSourceType() override; }; #endif // CEF_LIBCEF_DLL_CTOCPP_CONTEXT_MENU_PARAMS_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/cookie_access_filter_ctocpp.cc b/src/cef/libcef_dll/ctocpp/cookie_access_filter_ctocpp.cc index 3156b1db01495..53958890ff8c0 --- a/src/cef/libcef_dll/ctocpp/cookie_access_filter_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/cookie_access_filter_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b1ae8622378ad8661289554e6c542e970850aaed$ +// $hash=d24bf7fb06a84dfbe57aa7bfe49cbb0de242a840$ // #include "libcef_dll/ctocpp/cookie_access_filter_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/cookie_access_filter_ctocpp.h b/src/cef/libcef_dll/ctocpp/cookie_access_filter_ctocpp.h index 0170c33256d11..0da831215c084 --- a/src/cef/libcef_dll/ctocpp/cookie_access_filter_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/cookie_access_filter_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7a3357796fd02da5a233d4dfa6b8c7194ba8f969$ +// $hash=b325a81a438e8e510eb826bc4e6acf5df04281c8$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_COOKIE_ACCESS_FILTER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/cookie_manager_ctocpp.cc b/src/cef/libcef_dll/ctocpp/cookie_manager_ctocpp.cc index 9f8b8ea1acbea..8d8bd262840d1 --- a/src/cef/libcef_dll/ctocpp/cookie_manager_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/cookie_manager_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6e1bd6af22e730b6d6a12a7296414250bf415979$ +// $hash=3a8702e5b54310d93f9f43d60dd4d6d77b83da9d$ // #include "libcef_dll/ctocpp/cookie_manager_ctocpp.h" @@ -28,7 +28,7 @@ CefRefPtr CefCookieManager::GetGlobalManager( // Unverified params: callback // Execute - cef_cookie_manager_t *_retval = cef_cookie_manager_get_global_manager( + cef_cookie_manager_t* _retval = cef_cookie_manager_get_global_manager( CefCompletionCallbackCppToC::Wrap(callback)); // Return type: refptr_same @@ -36,9 +36,9 @@ CefRefPtr CefCookieManager::GetGlobalManager( } NO_SANITIZE("cfi-icall") -bool CefCookieManager::CreateCefCookie(const CefString &url, - const CefString &value, - CefCookie &cef_cookie) { +bool CefCookieManager::CreateCefCookie(const CefString& url, + const CefString& value, + CefCookie& cef_cookie) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Verify param: url; type: string_byref_const @@ -61,7 +61,7 @@ bool CefCookieManager::CreateCefCookie(const CefString &url, // VIRTUAL METHODS - Body may be edited by hand. NO_SANITIZE("cfi-icall") bool CefCookieManagerCToCpp::IsAcceptCookieAllowed() { - cef_cookie_manager_t *_struct = GetStruct(); + cef_cookie_manager_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, is_accept_cookie_allowed)) return false; @@ -76,7 +76,7 @@ NO_SANITIZE("cfi-icall") bool CefCookieManagerCToCpp::IsAcceptCookieAllowed() { NO_SANITIZE("cfi-icall") void CefCookieManagerCToCpp::PutAcceptCookieEnabled(bool accept) { - cef_cookie_manager_t *_struct = GetStruct(); + cef_cookie_manager_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, put_accept_cookie_enabled)) return; @@ -88,7 +88,7 @@ void CefCookieManagerCToCpp::PutAcceptCookieEnabled(bool accept) { NO_SANITIZE("cfi-icall") bool CefCookieManagerCToCpp::IsThirdPartyCookieAllowed() { - cef_cookie_manager_t *_struct = GetStruct(); + cef_cookie_manager_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, is_third_party_cookie_allowed)) return false; @@ -103,7 +103,7 @@ bool CefCookieManagerCToCpp::IsThirdPartyCookieAllowed() { NO_SANITIZE("cfi-icall") void CefCookieManagerCToCpp::PutAcceptThirdPartyCookieEnabled(bool accept) { - cef_cookie_manager_t *_struct = GetStruct(); + cef_cookie_manager_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, put_accept_third_party_cookie_enabled)) return; @@ -115,7 +115,7 @@ void CefCookieManagerCToCpp::PutAcceptThirdPartyCookieEnabled(bool accept) { NO_SANITIZE("cfi-icall") bool CefCookieManagerCToCpp::IsFileURLSchemeCookiesAllowed() { - cef_cookie_manager_t *_struct = GetStruct(); + cef_cookie_manager_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, is_file_urlscheme_cookies_allowed)) return false; @@ -130,7 +130,7 @@ bool CefCookieManagerCToCpp::IsFileURLSchemeCookiesAllowed() { NO_SANITIZE("cfi-icall") void CefCookieManagerCToCpp::PutAcceptFileURLSchemeCookiesEnabled(bool allow) { - cef_cookie_manager_t *_struct = GetStruct(); + cef_cookie_manager_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, put_accept_file_urlscheme_cookies_enabled)) return; @@ -143,7 +143,7 @@ void CefCookieManagerCToCpp::PutAcceptFileURLSchemeCookiesEnabled(bool allow) { NO_SANITIZE("cfi-icall") bool CefCookieManagerCToCpp::VisitAllCookies( CefRefPtr visitor) { - cef_cookie_manager_t *_struct = GetStruct(); + cef_cookie_manager_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, visit_all_cookies)) return false; @@ -164,9 +164,10 @@ bool CefCookieManagerCToCpp::VisitAllCookies( NO_SANITIZE("cfi-icall") bool CefCookieManagerCToCpp::VisitUrlCookies( - const CefString &url, bool includeHttpOnly, + const CefString& url, + bool includeHttpOnly, CefRefPtr visitor) { - cef_cookie_manager_t *_struct = GetStruct(); + cef_cookie_manager_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, visit_url_cookies)) return false; @@ -192,9 +193,10 @@ bool CefCookieManagerCToCpp::VisitUrlCookies( NO_SANITIZE("cfi-icall") bool CefCookieManagerCToCpp::SetCookie( - const CefString &url, const CefCookie &cookie, + const CefString& url, + const CefCookie& cookie, CefRefPtr callback) { - cef_cookie_manager_t *_struct = GetStruct(); + cef_cookie_manager_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, set_cookie)) return false; @@ -216,9 +218,11 @@ bool CefCookieManagerCToCpp::SetCookie( NO_SANITIZE("cfi-icall") bool CefCookieManagerCToCpp::DeleteCookies( - const CefString &url, const CefString &cookie_name, bool is_session, + const CefString& url, + const CefString& cookie_name, + bool is_session, CefRefPtr callback) { - cef_cookie_manager_t *_struct = GetStruct(); + cef_cookie_manager_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, delete_cookies)) return false; @@ -238,7 +242,7 @@ bool CefCookieManagerCToCpp::DeleteCookies( NO_SANITIZE("cfi-icall") bool CefCookieManagerCToCpp::FlushStore( CefRefPtr callback) { - cef_cookie_manager_t *_struct = GetStruct(); + cef_cookie_manager_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, flush_store)) return false; @@ -263,15 +267,17 @@ CefCookieManagerCToCpp::CefCookieManagerCToCpp() {} CefCookieManagerCToCpp::~CefCookieManagerCToCpp() {} template <> -cef_cookie_manager_t * -CefCToCppRefCounted::UnwrapDerived(CefWrapperType type, - CefCookieManager *c) { + CefCookieManager* c) { NOTREACHED() << "Unexpected class type: " << type; return nullptr; } template <> -CefWrapperType CefCToCppRefCounted::kWrapperType = WT_COOKIE_MANAGER; diff --git a/src/cef/libcef_dll/ctocpp/cookie_manager_ctocpp.h b/src/cef/libcef_dll/ctocpp/cookie_manager_ctocpp.h index cfdbc7af723a6..02e2ba430134b --- a/src/cef/libcef_dll/ctocpp/cookie_manager_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/cookie_manager_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f92d6bb66153459fd6906db5e1fe32781dfafa2d$ +// $hash=23d749e39a04142c1e7d09579460dba887d31d9b$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_COOKIE_MANAGER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/cookie_visitor_ctocpp.cc b/src/cef/libcef_dll/ctocpp/cookie_visitor_ctocpp.cc index c915510144dc1..9468de70c0879 --- a/src/cef/libcef_dll/ctocpp/cookie_visitor_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/cookie_visitor_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=46632d6c9d6e3c6891abc90323313bea54d7419e$ +// $hash=708c4aeb30bed97847155c90b86fecc6388b0a60$ // #include "libcef_dll/ctocpp/cookie_visitor_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/cookie_visitor_ctocpp.h b/src/cef/libcef_dll/ctocpp/cookie_visitor_ctocpp.h index 62d00723628ae..25aae27f205f1 --- a/src/cef/libcef_dll/ctocpp/cookie_visitor_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/cookie_visitor_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c1dca55691f6d564ad2a69b38acd141982368895$ +// $hash=1824342f14e23ea975b7faed0406036568d88ba8$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_COOKIE_VISITOR_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/data_base_ctocpp.cc b/src/cef/libcef_dll/ctocpp/data_base_ctocpp.cc index 28b630c8dd5b7..447b0734ffdb5 --- a/src/cef/libcef_dll/ctocpp/data_base_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/data_base_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=3ab167d92ecbdc7c4c52483058038ed50a68231a$ +// $hash=2cf79925fe0507a777cba65aadf5d72f57e38a3c$ // #include "libcef_dll/ctocpp/data_base_ctocpp.h" @@ -90,10 +90,11 @@ void CefDataBaseCToCpp::SaveHttpAuthCredentials(const CefString& host, } NO_SANITIZE("cfi-icall") -void CefDataBaseCToCpp::GetHttpAuthCredentials( - const CefString& host, - const CefString& realm, - std::vector& username_password) { +void CefDataBaseCToCpp::GetHttpAuthCredentials(const CefString& host, + const CefString& realm, + CefString& username, + char* password, + uint32_t passwordSize) { cef_data_base_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, get_http_auth_credentials)) return; @@ -108,29 +109,21 @@ void CefDataBaseCToCpp::GetHttpAuthCredentials( DCHECK(!realm.empty()); if (realm.empty()) return; - - // Translate param: username_password; type: string_vec_byref - cef_string_list_t username_passwordList = cef_string_list_alloc(); - DCHECK(username_passwordList); - if (username_passwordList) - transfer_string_list_contents(username_password, username_passwordList); + // Verify param: password; type: simple_byaddr + DCHECK(password); + if (!password) + return; // Execute - _struct->get_http_auth_credentials(_struct, host.GetStruct(), - realm.GetStruct(), username_passwordList); - - // Restore param:username_password; type: string_vec_byref - if (username_passwordList) { - username_password.clear(); - transfer_string_list_contents(username_passwordList, username_password); - cef_string_list_free(username_passwordList); - } + _struct->get_http_auth_credentials( + _struct, host.GetStruct(), realm.GetStruct(), + username.GetWritableStruct(), password, passwordSize); } NO_SANITIZE("cfi-icall") -bool CefDataBaseCToCpp::ExistPermissionByOrigin(const CefString &origin, +bool CefDataBaseCToCpp::ExistPermissionByOrigin(const CefString& origin, int type) { - cef_data_base_t *_struct = GetStruct(); + cef_data_base_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, exist_permission_by_origin)) return false; @@ -150,9 +143,10 @@ bool CefDataBaseCToCpp::ExistPermissionByOrigin(const CefString &origin, } NO_SANITIZE("cfi-icall") -bool CefDataBaseCToCpp::GetPermissionResultByOrigin(const CefString &origin, - int type, bool &result) { - cef_data_base_t *_struct = GetStruct(); +bool CefDataBaseCToCpp::GetPermissionResultByOrigin(const CefString& origin, + int type, + bool& result) { + cef_data_base_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, get_permission_result_by_origin)) return false; @@ -178,9 +172,10 @@ bool CefDataBaseCToCpp::GetPermissionResultByOrigin(const CefString &origin, } NO_SANITIZE("cfi-icall") -void CefDataBaseCToCpp::SetPermissionByOrigin(const CefString &origin, int type, +void CefDataBaseCToCpp::SetPermissionByOrigin(const CefString& origin, + int type, bool result) { - cef_data_base_t *_struct = GetStruct(); + cef_data_base_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, set_permission_by_origin)) return; @@ -196,9 +191,9 @@ void CefDataBaseCToCpp::SetPermissionByOrigin(const CefString &origin, int type, } NO_SANITIZE("cfi-icall") -void CefDataBaseCToCpp::ClearPermissionByOrigin(const CefString &origin, +void CefDataBaseCToCpp::ClearPermissionByOrigin(const CefString& origin, int type) { - cef_data_base_t *_struct = GetStruct(); + cef_data_base_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, clear_permission_by_origin)) return; @@ -214,7 +209,7 @@ void CefDataBaseCToCpp::ClearPermissionByOrigin(const CefString &origin, } NO_SANITIZE("cfi-icall") void CefDataBaseCToCpp::ClearAllPermission(int type) { - cef_data_base_t *_struct = GetStruct(); + cef_data_base_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, clear_all_permission)) return; @@ -226,8 +221,9 @@ NO_SANITIZE("cfi-icall") void CefDataBaseCToCpp::ClearAllPermission(int type) { NO_SANITIZE("cfi-icall") void CefDataBaseCToCpp::GetOriginsByPermission( - int type, std::vector &origins) { - cef_data_base_t *_struct = GetStruct(); + int type, + std::vector& origins) { + cef_data_base_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, get_origins_by_permission)) return; diff --git a/src/cef/libcef_dll/ctocpp/data_base_ctocpp.h b/src/cef/libcef_dll/ctocpp/data_base_ctocpp.h index 36a158f4d2aa9..41b9a15b369a7 --- a/src/cef/libcef_dll/ctocpp/data_base_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/data_base_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7b5c7ec8ac08f9547744baa38e840cf35a3e7a25$ +// $hash=0a76a650645cbe773c0109fd95ce88ff4c0841e5$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_DATA_BASE_CTOCPP_H_ @@ -41,10 +41,11 @@ class CefDataBaseCToCpp : public CefCToCppRefCounted& username_password) override; + void GetHttpAuthCredentials(const CefString& host, + const CefString& realm, + CefString& username, + char* password, + uint32_t passwordSize) override; bool ExistPermissionByOrigin(const CefString& origin, int type) override; bool GetPermissionResultByOrigin(const CefString& origin, int type, diff --git a/src/cef/libcef_dll/ctocpp/delete_cookies_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/delete_cookies_callback_ctocpp.cc index 4f5301ec811ed..25be285954dae --- a/src/cef/libcef_dll/ctocpp/delete_cookies_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/delete_cookies_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=765b5a3f3e0ac077f2ff72541ae26ca342c4ca78$ +// $hash=55be7ac3ac6c4e07af7c20c920c6c83b7d0a25d3$ // #include "libcef_dll/ctocpp/delete_cookies_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/delete_cookies_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/delete_cookies_callback_ctocpp.h index 90f109ac9e05b..7e7bdaf33bc11 --- a/src/cef/libcef_dll/ctocpp/delete_cookies_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/delete_cookies_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=cd33af6263f686958bccf5907e1c4622950a7a40$ +// $hash=e064baa776ef2fb9b70d51ec556613859a222067$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_DELETE_COOKIES_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/dev_tools_message_observer_ctocpp.cc b/src/cef/libcef_dll/ctocpp/dev_tools_message_observer_ctocpp.cc index 367af2dd9ad49..b7da42aca079b --- a/src/cef/libcef_dll/ctocpp/dev_tools_message_observer_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/dev_tools_message_observer_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=610f96da1baaa48d1aa7fcff8a4c4fb33d2965ab$ +// $hash=dc9df8e6b51991e751cb5f6607db87d3d9b3bb18$ // #include "libcef_dll/ctocpp/dev_tools_message_observer_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/dev_tools_message_observer_ctocpp.h b/src/cef/libcef_dll/ctocpp/dev_tools_message_observer_ctocpp.h index 99eb59beed067..c328e21fdbccb --- a/src/cef/libcef_dll/ctocpp/dev_tools_message_observer_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/dev_tools_message_observer_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=3b8cfdd8e4bc8e1981634fdd6a78f8eb9a23da4b$ +// $hash=13f5ab113bea9ee958f3d92e1c10898fd182c14e$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_DEV_TOOLS_MESSAGE_OBSERVER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/dialog_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/dialog_handler_ctocpp.cc index 2cb31ef5631ed..01d360a03eabd --- a/src/cef/libcef_dll/ctocpp/dialog_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/dialog_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,12 +9,13 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=df2505130721df8255b0d5bd511fb8ef394a7d8e$ +// $hash=2ce0bd2dda4afb008613b357545251c4e498dd53$ // #include "libcef_dll/ctocpp/dialog_handler_ctocpp.h" #include "libcef_dll/cpptoc/browser_cpptoc.h" #include "libcef_dll/cpptoc/file_dialog_callback_cpptoc.h" +#include "libcef_dll/cpptoc/select_popup_callback_cpptoc.h" #include "libcef_dll/shutdown_checker.h" #include "libcef_dll/transfer_util.h" @@ -72,6 +73,59 @@ bool CefDialogHandlerCToCpp::OnFileDialog( return _retval ? true : false; } +NO_SANITIZE("cfi-icall") +void CefDialogHandlerCToCpp::OnSelectPopupMenu( + CefRefPtr browser, + const CefRect& bounds, + int item_height, + double item_font_size, + int selected_item, + const std::vector& menu_items, + bool right_aligned, + bool allow_multiple_selection, + CefRefPtr callback) { + shutdown_checker::AssertNotShutdown(); + + cef_dialog_handler_t* _struct = GetStruct(); + if (CEF_MEMBER_MISSING(_struct, on_select_popup_menu)) + return; + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + // Verify param: browser; type: refptr_diff + DCHECK(browser.get()); + if (!browser.get()) + return; + // Verify param: callback; type: refptr_diff + DCHECK(callback.get()); + if (!callback.get()) + return; + + // Translate param: menu_items; type: simple_vec_byref_const + const size_t menu_itemsCount = menu_items.size(); + cef_select_popup_item_t* menu_itemsList = NULL; + if (menu_itemsCount > 0) { + menu_itemsList = new cef_select_popup_item_t[menu_itemsCount]; + DCHECK(menu_itemsList); + if (menu_itemsList) { + for (size_t i = 0; i < menu_itemsCount; ++i) { + menu_itemsList[i] = menu_items[i]; + } + } + } + + // Execute + _struct->on_select_popup_menu(_struct, CefBrowserCppToC::Wrap(browser), + &bounds, item_height, item_font_size, + selected_item, menu_itemsCount, menu_itemsList, + right_aligned, allow_multiple_selection, + CefSelectPopupCallbackCppToC::Wrap(callback)); + + // Restore param:menu_items; type: simple_vec_byref_const + if (menu_itemsList) + delete[] menu_itemsList; +} + // CONSTRUCTOR - Do not edit by hand. CefDialogHandlerCToCpp::CefDialogHandlerCToCpp() {} diff --git a/src/cef/libcef_dll/ctocpp/dialog_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/dialog_handler_ctocpp.h index 6ebdca55397a2..f3096ae0457b7 --- a/src/cef/libcef_dll/ctocpp/dialog_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/dialog_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=fb268437c35b6a412dc6305ae83798d4d1db56d6$ +// $hash=9d70e8e88a252b29a7157b30e487ce44b6d77404$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_DIALOG_HANDLER_CTOCPP_H_ @@ -44,6 +44,15 @@ class CefDialogHandlerCToCpp int selected_accept_filter, bool capture, CefRefPtr callback) override; + void OnSelectPopupMenu(CefRefPtr browser, + const CefRect& bounds, + int item_height, + double item_font_size, + int selected_item, + const std::vector& menu_items, + bool right_aligned, + bool allow_multiple_selection, + CefRefPtr callback) override; }; #endif // CEF_LIBCEF_DLL_CTOCPP_DIALOG_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/dictionary_value_ctocpp.cc b/src/cef/libcef_dll/ctocpp/dictionary_value_ctocpp.cc index f7263738203fd..de5fa0b770e7f --- a/src/cef/libcef_dll/ctocpp/dictionary_value_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/dictionary_value_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=70aa25f8ab57f0c152666a730aff4247684108f9$ +// $hash=aa3f8a292eeec9a65ab219958a3706b40500faa5$ // #include "libcef_dll/ctocpp/dictionary_value_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/dictionary_value_ctocpp.h b/src/cef/libcef_dll/ctocpp/dictionary_value_ctocpp.h index a0af1d99608b4..ba9843f84957a --- a/src/cef/libcef_dll/ctocpp/dictionary_value_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/dictionary_value_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ad04d2893bd8949c1384a4dcd68c9acb0f2b967d$ +// $hash=68a7aff9f01e57edaeaa53bfbbc4c6121ebb3a1b$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_DICTIONARY_VALUE_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/display_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/display_handler_ctocpp.cc index 1281236ab0c23..8834d04bd513d --- a/src/cef/libcef_dll/ctocpp/display_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/display_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=dcdaebfe8fdc44caf9f4903321577b155b2ec959$ +// $hash=c3f669584e3f282ce2eb05b3aca53e97e0548d8a$ // #include "libcef_dll/ctocpp/display_handler_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/display_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/display_handler_ctocpp.h index b40137e95cf7a..dafe883cd9bd1 --- a/src/cef/libcef_dll/ctocpp/display_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/display_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=dc1b9dda1a8f57d46d2c0049cd62a57dd5f56868$ +// $hash=b242381316d4973e89fe4ae2c9f41e2ef7be2242$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_DISPLAY_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/domdocument_ctocpp.cc b/src/cef/libcef_dll/ctocpp/domdocument_ctocpp.cc index 3506a6b90e091..e1bcbda6790a6 --- a/src/cef/libcef_dll/ctocpp/domdocument_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/domdocument_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e5f17a1d61c8211bcf16be848e8aaf48934c5b0c$ +// $hash=4dddf3528abafd3fce06482308a76df0a056cd3c$ // #include "libcef_dll/ctocpp/domdocument_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/domdocument_ctocpp.h b/src/cef/libcef_dll/ctocpp/domdocument_ctocpp.h index b795fe326dbac..29fe326f855a3 --- a/src/cef/libcef_dll/ctocpp/domdocument_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/domdocument_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=50b7c300f95667c483dcb19c13f274fbc352f7d1$ +// $hash=987816a9b106341068d08f3cd9254c98cf77f6ad$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_DOMDOCUMENT_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/domnode_ctocpp.cc b/src/cef/libcef_dll/ctocpp/domnode_ctocpp.cc index 566e426bf9015..f4b1c0e27a4ee --- a/src/cef/libcef_dll/ctocpp/domnode_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/domnode_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=64846f6de30a56d2aaed093cbfd9959c7cc2f1af$ +// $hash=bc1d300ce01b57d299dff3b67d54508fa827489e$ // #include "libcef_dll/ctocpp/domnode_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/domnode_ctocpp.h b/src/cef/libcef_dll/ctocpp/domnode_ctocpp.h index 4678361566ab3..a16b3109a5788 --- a/src/cef/libcef_dll/ctocpp/domnode_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/domnode_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a824395854fca10143c0329a0f95dcfc837c6d86$ +// $hash=343a5f84d09a6933f005c3915582c73c43bda406$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_DOMNODE_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/domvisitor_ctocpp.cc b/src/cef/libcef_dll/ctocpp/domvisitor_ctocpp.cc index 3ece62f9ed3ad..1361ee52a0b28 --- a/src/cef/libcef_dll/ctocpp/domvisitor_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/domvisitor_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c3351e11fd6ae488bd77aeba4b4c8485f24119ad$ +// $hash=7379b70849292e5b7709d2ff0a4e2541869c86a5$ // #include "libcef_dll/ctocpp/domvisitor_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/domvisitor_ctocpp.h b/src/cef/libcef_dll/ctocpp/domvisitor_ctocpp.h index b1cf8b622addf..0504b52266ade --- a/src/cef/libcef_dll/ctocpp/domvisitor_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/domvisitor_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=950252a2903cd57d097fb9dcd4eacf0761914e7a$ +// $hash=9f8a534b9feef5b972259d972bf30ad838e1a788$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_DOMVISITOR_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/download_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/download_handler_ctocpp.cc index 981d59333f344..6da1c6e272d2c --- a/src/cef/libcef_dll/ctocpp/download_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/download_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c4e47ffd023b528b9c5b658126f4a1d9fd05cf98$ +// $hash=9fc07deae728fc443a569cc273456e5c5b98af4a$ // #include "libcef_dll/ctocpp/download_handler_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/download_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/download_handler_ctocpp.h index a74b923cf19f8..71a554efaf5c9 --- a/src/cef/libcef_dll/ctocpp/download_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/download_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=172a12dd9e68b65afff9eef5b93f0e480beaf904$ +// $hash=2a8f0822ec7ffa38dc5a712c913a48adc216eead$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_DOWNLOAD_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/download_image_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/download_image_callback_ctocpp.cc index 73a483afcb324..e9c3070ecfd63 --- a/src/cef/libcef_dll/ctocpp/download_image_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/download_image_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8568e306d0db860b1cd222f7c6dba344f349cb2d$ +// $hash=b838fd3af2c144711044cae354ea86e336ce39a8$ // #include "libcef_dll/ctocpp/download_image_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/download_image_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/download_image_callback_ctocpp.h index ff4558668f291..5c7b7ccb064e2 --- a/src/cef/libcef_dll/ctocpp/download_image_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/download_image_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=fa13abafcf97f6a71d08ca7ec67d45a71d636603$ +// $hash=c281c09951a9b4f85556d0a9008b2524326254dd$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_DOWNLOAD_IMAGE_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/download_item_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/download_item_callback_ctocpp.cc index 06081331571ee..e4b2d18132cde --- a/src/cef/libcef_dll/ctocpp/download_item_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/download_item_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=092e50c318b7d1c933ffb293ff062df17bfbb736$ +// $hash=c7e4d15ade6e97ad9019c493941a06a5807b3e25$ // #include "libcef_dll/ctocpp/download_item_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/download_item_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/download_item_callback_ctocpp.h index 78eaf83b49c83..0f52a4120b1da --- a/src/cef/libcef_dll/ctocpp/download_item_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/download_item_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=dc38ebb20863207084498e6d14e8a5e8fde59eea$ +// $hash=013ef6edbf734cdf4e6d00ba5b8be6c46284e2ca$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_DOWNLOAD_ITEM_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/download_item_ctocpp.cc b/src/cef/libcef_dll/ctocpp/download_item_ctocpp.cc index 66f136e42f1cb..62e08e36a4ccf --- a/src/cef/libcef_dll/ctocpp/download_item_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/download_item_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=05c6527a7cdeb9495bca9da965956fb3006a7bdd$ +// $hash=b99a604e59d6759cf17a05dbdb8e7dbf6080f43c$ // #include "libcef_dll/ctocpp/download_item_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/download_item_ctocpp.h b/src/cef/libcef_dll/ctocpp/download_item_ctocpp.h index 07900a1549b1b..265c2e8a6a4d8 --- a/src/cef/libcef_dll/ctocpp/download_item_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/download_item_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=800621bf853598aa11673f3c38e5f30858aa1ff1$ +// $hash=30923eaf63fab5b36c95a1a8da4a2e229a794a86$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_DOWNLOAD_ITEM_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/drag_data_ctocpp.cc b/src/cef/libcef_dll/ctocpp/drag_data_ctocpp.cc index fc33a78e534a2..f6fb0e57c20c8 --- a/src/cef/libcef_dll/ctocpp/drag_data_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/drag_data_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=57352ff85ca98fc34a0f2c58afbb1224ce1a1f09$ +// $hash=a9a85999cc0792beae39e7b2796eedf435a88a1b$ // #include "libcef_dll/ctocpp/drag_data_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/drag_data_ctocpp.h b/src/cef/libcef_dll/ctocpp/drag_data_ctocpp.h index 9b903e3b5cf52..c072f5811fec1 --- a/src/cef/libcef_dll/ctocpp/drag_data_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/drag_data_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=0814e8ced30cbbd7c5867464550da973395b385b$ +// $hash=acf7963e32fc361fd12874da55d86e4b0f9090d1$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_DRAG_DATA_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/drag_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/drag_handler_ctocpp.cc index ccf11d8fb5187..1109f595e3ce2 --- a/src/cef/libcef_dll/ctocpp/drag_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/drag_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=83bbaf05bb87f369d819d4202110581c3bbe60a1$ +// $hash=19cc3c5f296c806db31572ecc826788ba6d8e837$ // #include "libcef_dll/ctocpp/drag_handler_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/drag_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/drag_handler_ctocpp.h index 47488db5e3326..153cf4982e17d --- a/src/cef/libcef_dll/ctocpp/drag_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/drag_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=87c40d04da449f1144f962dff8b3e0b5a1d70db7$ +// $hash=a8523e82439b30828b0774d2eff240ea215b96d6$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_DRAG_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/end_tracing_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/end_tracing_callback_ctocpp.cc index 9489292a433c0..523c04b3f5e12 --- a/src/cef/libcef_dll/ctocpp/end_tracing_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/end_tracing_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7f660f5500f6e299ef56d598c71ade363f5581b9$ +// $hash=57b26c7374b16644439f70555241a061fa08c617$ // #include "libcef_dll/ctocpp/end_tracing_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/end_tracing_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/end_tracing_callback_ctocpp.h index 81b82fc18031d..c915803e6a90b --- a/src/cef/libcef_dll/ctocpp/end_tracing_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/end_tracing_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=43c23da2432e1336afcd21889ae744bcc109e3ed$ +// $hash=d798b3255a8ad2aea9d4afbe3492eaad538d8d0a$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_END_TRACING_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/extension_ctocpp.cc b/src/cef/libcef_dll/ctocpp/extension_ctocpp.cc index a891cd0190f33..af426fa3b96ee --- a/src/cef/libcef_dll/ctocpp/extension_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/extension_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=de6b935b77168bd9b44f26643c510f360f8b6ebd$ +// $hash=7bee2237c6ee537f23635d3fc6d1d62ca7eaf5c4$ // #include "libcef_dll/ctocpp/extension_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/extension_ctocpp.h b/src/cef/libcef_dll/ctocpp/extension_ctocpp.h index 5192cba43ed57..b186810837867 --- a/src/cef/libcef_dll/ctocpp/extension_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/extension_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8e52bd30f4ec56b17b163c2daf4981ae55e72993$ +// $hash=07a08b9dd260059e77dfb433f43686cbc5569bea$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_EXTENSION_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/extension_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/extension_handler_ctocpp.cc index b6826310cf3aa..0df341099031c --- a/src/cef/libcef_dll/ctocpp/extension_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/extension_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=befb9e9bd438e431bb55b7c67413d9d7a7b263f2$ +// $hash=f2661cdc6ea68b840409c2fcf84fb31c25e0f1b8$ // #include "libcef_dll/ctocpp/extension_handler_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/extension_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/extension_handler_ctocpp.h index b8bd638ea6643..eab84e7d05997 --- a/src/cef/libcef_dll/ctocpp/extension_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/extension_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=147ef76bff631531a075ac9a2c823d3e9f84c409$ +// $hash=5e432e7dd8e10b681b96bad3694ba2d0bf79fad6$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_EXTENSION_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/file_dialog_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/file_dialog_callback_ctocpp.cc index 3b90ba5a36928..229dfa874e1fa --- a/src/cef/libcef_dll/ctocpp/file_dialog_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/file_dialog_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8fecb808fb6a84d630d1e8c5380a5ffd900b3654$ +// $hash=ae1de0166e8b2c1f50d4ed5da69ae63a5bb8ebaf$ // #include "libcef_dll/ctocpp/file_dialog_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/file_dialog_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/file_dialog_callback_ctocpp.h index f18ffeabcb4f7..b9eacd6adec9c --- a/src/cef/libcef_dll/ctocpp/file_dialog_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/file_dialog_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d84ac439b3372160aa3886b28b3ff81e49f05a6d$ +// $hash=190953cb1d900d253258bbbaae2220512509c3a9$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_FILE_DIALOG_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/find_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/find_handler_ctocpp.cc index a12e2e089c172..47e3104366f05 --- a/src/cef/libcef_dll/ctocpp/find_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/find_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=22af1e946668e89411cc87596b88c8a47880a78a$ +// $hash=fbb70e4dd2af2d9cbc4377c0f62097933f26cea9$ // #include "libcef_dll/ctocpp/find_handler_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/find_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/find_handler_ctocpp.h index ce9cffbae8051..98f75b2d51185 --- a/src/cef/libcef_dll/ctocpp/find_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/find_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d6ed1e4a341c9deecc217c49ecd52f444d18e236$ +// $hash=8b86bd425ab5e9283d8fc8ac96b54740bf495cbb$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_FIND_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/focus_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/focus_handler_ctocpp.cc index 42f46d1d1257f..d12ed78ef9dbd --- a/src/cef/libcef_dll/ctocpp/focus_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/focus_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=fe5dc43b11c24ea7a1e9a1c31846cd433a425a48$ +// $hash=adf870620ee814a41457a906d12265a23cd71bc1$ // #include "libcef_dll/ctocpp/focus_handler_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/focus_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/focus_handler_ctocpp.h index 0c31eca72d2c9..6c0f92203cfd8 --- a/src/cef/libcef_dll/ctocpp/focus_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/focus_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7a41bfc84063e89ae6a9a02ad4252b6145e06d48$ +// $hash=6a454cd9846e772380a72c5429d114f73cc3c1f5$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_FOCUS_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/frame_ctocpp.cc b/src/cef/libcef_dll/ctocpp/frame_ctocpp.cc index 936999f892036..96c1964a67614 --- a/src/cef/libcef_dll/ctocpp/frame_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/frame_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5bfee30715aa6f371b446b195cba6e5e05f7793f$ +// $hash=01a4bfc4420c23325504191dfa18a83e0e6d344f$ // #include "libcef_dll/ctocpp/frame_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/frame_ctocpp.h b/src/cef/libcef_dll/ctocpp/frame_ctocpp.h index a7fd407070320..3fed19753264c --- a/src/cef/libcef_dll/ctocpp/frame_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/frame_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=922843bbc541ce7c7c8e1aa93e23bc7dde770d68$ +// $hash=617aa71107c0089df6f4b832a7dd30c850abc171$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_FRAME_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/frame_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/frame_handler_ctocpp.cc index 370011e23830d..965b4a5dc577c --- a/src/cef/libcef_dll/ctocpp/frame_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/frame_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2c1533712df282ba8ab092a2b42e69296c4d4771$ +// $hash=805b22d1d623b4b536d2aa1f71ad05cc32e23fc2$ // #include "libcef_dll/ctocpp/frame_handler_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/frame_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/frame_handler_ctocpp.h index d15a3f11990cd..be28fb88ae3ed --- a/src/cef/libcef_dll/ctocpp/frame_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/frame_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=caae9971af64aba87b484e5024603dd53c406df0$ +// $hash=a1366f78329888eadf9121d7df819687d82a40c7$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_FRAME_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/geolocation_acess_ctocpp.cc b/src/cef/libcef_dll/ctocpp/geolocation_acess_ctocpp.cc index 8be91dcf1aac8..7fb2625b586f4 --- a/src/cef/libcef_dll/ctocpp/geolocation_acess_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/geolocation_acess_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=3997657ceba0e011684fe481bdcc221dacd24369$ +// $hash=dec8ab50f7084f8ea2bd48d74173c91134bc6d92$ // #include "libcef_dll/ctocpp/geolocation_acess_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/geolocation_acess_ctocpp.h b/src/cef/libcef_dll/ctocpp/geolocation_acess_ctocpp.h index 0ab7994425856..ad8331787663d --- a/src/cef/libcef_dll/ctocpp/geolocation_acess_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/geolocation_acess_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=cfc297c4453970267ed52cecbc2469423ba4540f$ +// $hash=d405020431caf6f891ba21f967b35cc9d08da93a$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_GEOLOCATION_ACESS_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/get_extension_resource_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/get_extension_resource_callback_ctocpp.cc index faee8d512775d..5b0bbf37a1865 --- a/src/cef/libcef_dll/ctocpp/get_extension_resource_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/get_extension_resource_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2747a6d847a7abbc8adcde347308ff7826918884$ +// $hash=de3ebaabf9a63c53433469d01241fd97197d7c60$ // #include "libcef_dll/ctocpp/get_extension_resource_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/get_extension_resource_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/get_extension_resource_callback_ctocpp.h index c0c5289edb963..afebabd4ca880 --- a/src/cef/libcef_dll/ctocpp/get_extension_resource_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/get_extension_resource_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f86929f0ec5dc6292a33e6f4d05b788e503bdad1$ +// $hash=fd92d3650c1f3f04b84d9a0847631463b9e9ca2c$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_GET_EXTENSION_RESOURCE_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/get_images_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/get_images_callback_ctocpp.cc index 2954981876b3f..39ad7b6b7807d --- a/src/cef/libcef_dll/ctocpp/get_images_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/get_images_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a8eda6ac0b338e7a41d207927a67fa2c83045449$ +// $hash=d5ba12d9fa862751e9c07d8b13afb7131c45c365$ // #include "libcef_dll/ctocpp/get_images_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/get_images_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/get_images_callback_ctocpp.h index 97f1d9524e978..8d2c93af6fff1 --- a/src/cef/libcef_dll/ctocpp/get_images_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/get_images_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6708fab47b851dda8fd97a3d425f673186906b4c$ +// $hash=5569d10c20b8f19c8907133c7b21e293ebe9a2bd$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_GET_IMAGES_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/get_origin_usage_or_quota_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/get_origin_usage_or_quota_callback_ctocpp.cc index 584b4d086729b..ea37e4f02f825 --- a/src/cef/libcef_dll/ctocpp/get_origin_usage_or_quota_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/get_origin_usage_or_quota_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=070d1f0064cc25f4e3e13d9b2931a4ba1c8341d4$ +// $hash=ffc3258b25dcb01dccb60e75f4d3f4b10e3224f8$ // #include "libcef_dll/ctocpp/get_origin_usage_or_quota_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/get_origin_usage_or_quota_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/get_origin_usage_or_quota_callback_ctocpp.h index e8dc6f55ed97c..beab5ac78b35b --- a/src/cef/libcef_dll/ctocpp/get_origin_usage_or_quota_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/get_origin_usage_or_quota_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=128e55210f65fe29b0d2d84160fd2a9427bc6429$ +// $hash=5a32e1b78e328e377d937e5f3d53afb869e153d9$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_GET_ORIGIN_USAGE_OR_QUOTA_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/get_origins_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/get_origins_callback_ctocpp.cc index d0240181d2a5c..c834557b5914d --- a/src/cef/libcef_dll/ctocpp/get_origins_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/get_origins_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c81051ff9ec3bd7b14f89c09f00eea970ed14b14$ +// $hash=42082bd4962aa5bd8556918888da73635e4b36c5$ // #include "libcef_dll/ctocpp/get_origins_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/get_origins_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/get_origins_callback_ctocpp.h index b2edbb96bfd1d..0b85d91656698 --- a/src/cef/libcef_dll/ctocpp/get_origins_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/get_origins_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=308fccc205e0e4ac146d6affbe48559dc1a27a5a$ +// $hash=feb219add5c02bf679128a2abdf6817ba47c1b25$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_GET_ORIGINS_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/image_ctocpp.cc b/src/cef/libcef_dll/ctocpp/image_ctocpp.cc index b766c79cd0f5c..ff463fbd992cf --- a/src/cef/libcef_dll/ctocpp/image_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/image_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=33aeaefa103664f5cead6898d2f957d8a9a97a92$ +// $hash=a36ffa56b60291c4fb99a00413950d2315ddfc13$ // #include "libcef_dll/ctocpp/image_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/image_ctocpp.h b/src/cef/libcef_dll/ctocpp/image_ctocpp.h index a234b97b6dcf3..8d635fddafb5d --- a/src/cef/libcef_dll/ctocpp/image_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/image_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=30ebbc8a004b2e371be3ee2bc305858c303f37fd$ +// $hash=13afe421110fa07e94c1724d21302b018a71a633$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_IMAGE_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/java_script_result_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/java_script_result_callback_ctocpp.cc index 7e7ca331e740d..ee92ac0261b44 --- a/src/cef/libcef_dll/ctocpp/java_script_result_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/java_script_result_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d54225cb81f976412f5924f0342241e5e1c15604$ +// $hash=ec746fb1184b4ac8124e90ddcb226035a06bfeb2$ // #include "libcef_dll/ctocpp/java_script_result_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/java_script_result_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/java_script_result_callback_ctocpp.h index b09edef38ac80..6cb9bf41c40d3 --- a/src/cef/libcef_dll/ctocpp/java_script_result_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/java_script_result_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2e761fc082e89fe46754e498234c96e873d519dc$ +// $hash=17a3f0d9b77b19f01a9c147f900dc30016fa9e6e$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_JAVA_SCRIPT_RESULT_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/jsdialog_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/jsdialog_callback_ctocpp.cc index ad5341aba0868..7f674dbf01a84 --- a/src/cef/libcef_dll/ctocpp/jsdialog_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/jsdialog_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8fa9cd400d5a9ecce87183cdbbee8673845b2228$ +// $hash=a328cc485e128abc40fa08e69633f3d6be490ad0$ // #include "libcef_dll/ctocpp/jsdialog_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/jsdialog_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/jsdialog_callback_ctocpp.h index b0a153944757e..a73df8ad32ea1 --- a/src/cef/libcef_dll/ctocpp/jsdialog_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/jsdialog_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8f505c768b727bd821e5d619227533b45fd6029b$ +// $hash=5e91e201bc50f771d1ded89088fffcb0da8d34d7$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_JSDIALOG_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/jsdialog_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/jsdialog_handler_ctocpp.cc index 5293e9098def4..dba10ebfc9efe --- a/src/cef/libcef_dll/ctocpp/jsdialog_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/jsdialog_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=cf3f4ea060216018445b03ed1626f0698c01839b$ +// $hash=c95849f5069d934dcca81e86a11e76931582a22b$ // #include "libcef_dll/ctocpp/jsdialog_handler_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/jsdialog_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/jsdialog_handler_ctocpp.h index 24f690eafad62..740330b350f62 --- a/src/cef/libcef_dll/ctocpp/jsdialog_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/jsdialog_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d486b4a8044df978ea21be7c6a48841ea48d7ad7$ +// $hash=55b3bcb925cfaf44f79c0e03fc55878d748f55ce$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_JSDIALOG_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/keyboard_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/keyboard_handler_ctocpp.cc index c9c167cbcccea..17ab239a26d1a --- a/src/cef/libcef_dll/ctocpp/keyboard_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/keyboard_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d5ba873aeb2b734e753d47420bbe10e290e8658d$ +// $hash=e6cddc00cf20f1abd640865c61a70dd54dc54d95$ // #include "libcef_dll/ctocpp/keyboard_handler_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/keyboard_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/keyboard_handler_ctocpp.h index 48818cf81570a..65c681eba30ce --- a/src/cef/libcef_dll/ctocpp/keyboard_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/keyboard_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ab70636733b9287db1e87f11f8c73610afa35337$ +// $hash=a25080ecb1a098b748d8384bc5af591ea773deff$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_KEYBOARD_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/life_span_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/life_span_handler_ctocpp.cc index 3edea1aa767ae..5b9fe7e624a6d --- a/src/cef/libcef_dll/ctocpp/life_span_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/life_span_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=1c8c2d9b0eff1833a030f2e75515f7d7c60cada4$ +// $hash=873c979fdd4b48e65375437e6a70a900de50840d$ // #include "libcef_dll/ctocpp/life_span_handler_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/life_span_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/life_span_handler_ctocpp.h index d38e48851fd4d..9693f44b28917 --- a/src/cef/libcef_dll/ctocpp/life_span_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/life_span_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=bfe3eba26049a9f15b7922d979395bc7b0ac4055$ +// $hash=580b424b488c3974143484a05df444e91edfca5c$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_LIFE_SPAN_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/list_value_ctocpp.cc b/src/cef/libcef_dll/ctocpp/list_value_ctocpp.cc index 9194d1da62ba1..7fd13d4b65fce --- a/src/cef/libcef_dll/ctocpp/list_value_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/list_value_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=93f45c1e39dc2ba72a6cb44bc3d762f3870f2ef2$ +// $hash=531f5719300934d7a039855559835715de9c765a$ // #include "libcef_dll/ctocpp/list_value_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/list_value_ctocpp.h b/src/cef/libcef_dll/ctocpp/list_value_ctocpp.h index 0ebd5c120dfc9..d09dfb95d8c36 --- a/src/cef/libcef_dll/ctocpp/list_value_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/list_value_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2c6664443a865936b74fcea903f131011736d689$ +// $hash=99b478c698261aa2aaf566b283fc938aacf3b2bf$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_LIST_VALUE_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/load_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/load_handler_ctocpp.cc index 38699d565ae7c..e0bb3339e6564 --- a/src/cef/libcef_dll/ctocpp/load_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/load_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6be01fd6f359ff9960cea2ec422a489673b72bd6$ +// $hash=710979924c3b6f6b6f1479dd75ed0e3c6dd02126$ // #include "libcef_dll/ctocpp/load_handler_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/load_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/load_handler_ctocpp.h index c6795b684e589..cc7e15c185844 --- a/src/cef/libcef_dll/ctocpp/load_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/load_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=1ae727d2a86654472d0312033fe4bd5df06556fe$ +// $hash=12b88b0080727a6c6abf49b8ab17b8c18dc4e2f5$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_LOAD_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/menu_model_ctocpp.cc b/src/cef/libcef_dll/ctocpp/menu_model_ctocpp.cc index 7bf4664867269..ae5d52807f415 --- a/src/cef/libcef_dll/ctocpp/menu_model_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/menu_model_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=16bf2696e26746eddb06f7c6003eec81d3fc1c23$ +// $hash=042362d0195aca3ce86ceea3d2f42e34c1ad2f03$ // #include "libcef_dll/ctocpp/menu_model_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/menu_model_ctocpp.h b/src/cef/libcef_dll/ctocpp/menu_model_ctocpp.h index edd9ef704f59f..10f461e4bdfb2 --- a/src/cef/libcef_dll/ctocpp/menu_model_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/menu_model_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=4cb6a46bc1c8fa0d912c04d58a07afddd250d9b9$ +// $hash=f7d0cf26743b3559f4e826452f3cb2c561dd75d1$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_MENU_MODEL_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/menu_model_delegate_ctocpp.cc b/src/cef/libcef_dll/ctocpp/menu_model_delegate_ctocpp.cc index 407692062f05a..b9f47a865277e --- a/src/cef/libcef_dll/ctocpp/menu_model_delegate_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/menu_model_delegate_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=09421982fe76735de86b67b1f7d8828a1cc36f6e$ +// $hash=9445255c84ab78ee3b9b61cbd10abe5233f0688b$ // #include "libcef_dll/ctocpp/menu_model_delegate_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/menu_model_delegate_ctocpp.h b/src/cef/libcef_dll/ctocpp/menu_model_delegate_ctocpp.h index 6fc6c44150a55..7762f4e8c32b3 --- a/src/cef/libcef_dll/ctocpp/menu_model_delegate_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/menu_model_delegate_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=0dcaca76119b9db970c61a30ba90d841f2fb7186$ +// $hash=6ac8a9990cf50850d8f8716096094d1180215be9$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_MENU_MODEL_DELEGATE_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/navigation_entry_ctocpp.cc b/src/cef/libcef_dll/ctocpp/navigation_entry_ctocpp.cc index 82298bd15996a..98165391165e4 --- a/src/cef/libcef_dll/ctocpp/navigation_entry_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/navigation_entry_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2356b5283bbfa5a587b5db964b281dff6fb8233d$ +// $hash=47dac2be50c91cdd5c314a6d78a64ad90fa6b1a3$ // #include "libcef_dll/ctocpp/navigation_entry_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/navigation_entry_ctocpp.h b/src/cef/libcef_dll/ctocpp/navigation_entry_ctocpp.h index 0514e7bb50365..5e5e6ab1ecdbd --- a/src/cef/libcef_dll/ctocpp/navigation_entry_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/navigation_entry_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=dd86b1cd3bb9fb67f7e7dfdee204fd752e27e410$ +// $hash=a76314c5c7b7732bcc2b87df342cbdf78f36b8d6$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_NAVIGATION_ENTRY_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/navigation_entry_visitor_ctocpp.cc b/src/cef/libcef_dll/ctocpp/navigation_entry_visitor_ctocpp.cc index e9f156b0bdd53..66ecd5a110459 --- a/src/cef/libcef_dll/ctocpp/navigation_entry_visitor_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/navigation_entry_visitor_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=057910c31bf56f3bb5def469638942802300c7d8$ +// $hash=606184483441192c6ede228dd014eca4baa1e2ac$ // #include "libcef_dll/ctocpp/navigation_entry_visitor_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/navigation_entry_visitor_ctocpp.h b/src/cef/libcef_dll/ctocpp/navigation_entry_visitor_ctocpp.h index f619bfc41d302..bcaa2c93351c0 --- a/src/cef/libcef_dll/ctocpp/navigation_entry_visitor_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/navigation_entry_visitor_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=478d39c2ee5c0e2dcd0e0923d47b20bc05e8a3b7$ +// $hash=3dbe29abccbfa1d1cc7014630bbe312d9de42ac8$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_NAVIGATION_ENTRY_VISITOR_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/pdf_print_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/pdf_print_callback_ctocpp.cc index 74720e7fdc612..729223d21001d --- a/src/cef/libcef_dll/ctocpp/pdf_print_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/pdf_print_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=970ecf239bb133f5c62c372762e00ba913e492a2$ +// $hash=296e7ba74dedad13612fea5dfbc09163a5b15872$ // #include "libcef_dll/ctocpp/pdf_print_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/pdf_print_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/pdf_print_callback_ctocpp.h index ba235369d5b27..7abf1c11c7644 --- a/src/cef/libcef_dll/ctocpp/pdf_print_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/pdf_print_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6ec768e5cc0ef58766105bee24c3841367995a1e$ +// $hash=0387fbd8f6ad59dac67959eeded82630a2bba935$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_PDF_PRINT_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/permission_request_ctocpp.cc b/src/cef/libcef_dll/ctocpp/permission_request_ctocpp.cc index 1b5876d57113e..89e5e16bd7371 --- a/src/cef/libcef_dll/ctocpp/permission_request_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/permission_request_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=12f03dbc264ba05a28f5dc8273117ca6c6c74b8b$ +// $hash=62fd641af7c0e8767c775f3e5d0148103822d62d$ // #include "libcef_dll/ctocpp/permission_request_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/permission_request_ctocpp.h b/src/cef/libcef_dll/ctocpp/permission_request_ctocpp.h index 2ed4bcebcafae..d5060b5b50160 --- a/src/cef/libcef_dll/ctocpp/permission_request_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/permission_request_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d3dcf1dc594597e78adcd93c64e185a6223992d1$ +// $hash=8600f1096fac8d37c3506fce7d76157ae067b427$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_PERMISSION_REQUEST_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/post_data_ctocpp.cc b/src/cef/libcef_dll/ctocpp/post_data_ctocpp.cc index 123d5c364a8f0..cdf909ef85077 --- a/src/cef/libcef_dll/ctocpp/post_data_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/post_data_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7a24d4020666f0277e76e190926df2081637a174$ +// $hash=16d0f97a19f6cab36f8a40bb7a5db900bc74c872$ // #include "libcef_dll/ctocpp/post_data_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/post_data_ctocpp.h b/src/cef/libcef_dll/ctocpp/post_data_ctocpp.h index 068d9d84c5b82..7666035c6a12d --- a/src/cef/libcef_dll/ctocpp/post_data_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/post_data_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7f744704ab0c6d50b814469b168b610f74a118d8$ +// $hash=e70d58d7c779528d03b49ead50c162ebf0eb0ca7$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_POST_DATA_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/post_data_element_ctocpp.cc b/src/cef/libcef_dll/ctocpp/post_data_element_ctocpp.cc index ac01ab2ad7355..0bf45f1027433 --- a/src/cef/libcef_dll/ctocpp/post_data_element_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/post_data_element_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=027842b89846614ba6d0e3056db65004bc3a6b06$ +// $hash=21bd5d7adae7aad41bf500eb30bfb917f33f1750$ // #include "libcef_dll/ctocpp/post_data_element_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/post_data_element_ctocpp.h b/src/cef/libcef_dll/ctocpp/post_data_element_ctocpp.h index ac2442ccb16a5..e422be541b1a3 --- a/src/cef/libcef_dll/ctocpp/post_data_element_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/post_data_element_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7f8d7ce807aae88cd94eb0bf8fed88208b052dce$ +// $hash=a81732545889a9d401edb7f5540e0762bb787526$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_POST_DATA_ELEMENT_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/print_dialog_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/print_dialog_callback_ctocpp.cc index 27c6e0b33145c..6bd053f64753f --- a/src/cef/libcef_dll/ctocpp/print_dialog_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/print_dialog_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2e3cda6569368540518b84119205e1e5f6e0d36b$ +// $hash=a251f867872c76ea64f247d745b7eb895f24e477$ // #include "libcef_dll/ctocpp/print_dialog_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/print_dialog_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/print_dialog_callback_ctocpp.h index ffba4100bc864..cf5e9cbe36f38 --- a/src/cef/libcef_dll/ctocpp/print_dialog_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/print_dialog_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7d1df66731aeda9ede696254998eb6531a5d3531$ +// $hash=7c49e07c9ba8bfc8f7620952b19140828a3bf011$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_PRINT_DIALOG_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/print_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/print_handler_ctocpp.cc index b5f02d80bff8b..5bfb4c37d601e --- a/src/cef/libcef_dll/ctocpp/print_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/print_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f81708853d5cb6ee2fb397f401787068b722b060$ +// $hash=d1160c71777c77bffaaef2db26b53d3a4ab269b3$ // #include "libcef_dll/ctocpp/print_handler_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/print_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/print_handler_ctocpp.h index e82154e3e7c62..5e7722f26575b --- a/src/cef/libcef_dll/ctocpp/print_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/print_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=861bf98595a13f8c42a23b5742471332c066b57a$ +// $hash=b1d082ab9bea88f46372a371b68b9b4c25a96ca2$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_PRINT_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/print_job_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/print_job_callback_ctocpp.cc index 072666c9d1f8a..3069f55a35a3d --- a/src/cef/libcef_dll/ctocpp/print_job_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/print_job_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c952b7985eb56fd18e552e4905a5563380277bac$ +// $hash=a3bb609c6cbc5d38d8359a427664780c8e8a5625$ // #include "libcef_dll/ctocpp/print_job_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/print_job_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/print_job_callback_ctocpp.h index 29e7d30de0968..6f7710e1bf53e --- a/src/cef/libcef_dll/ctocpp/print_job_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/print_job_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6e70e242c6ffef77f0c3ceeeb5773f0b8037395e$ +// $hash=6ac2e8d5475582b66e40e297b192bdbdc8acbeed$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_PRINT_JOB_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/print_settings_ctocpp.cc b/src/cef/libcef_dll/ctocpp/print_settings_ctocpp.cc index 04880402b9982..ce25e243fa934 --- a/src/cef/libcef_dll/ctocpp/print_settings_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/print_settings_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=70eeeda85eb67d546066854051f2f921fadcca18$ +// $hash=953bf2909c532598f70a4f7ad09c16d774dad5f8$ // #include "libcef_dll/ctocpp/print_settings_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/print_settings_ctocpp.h b/src/cef/libcef_dll/ctocpp/print_settings_ctocpp.h index 5ce656192a282..3c23fc18fd3be --- a/src/cef/libcef_dll/ctocpp/print_settings_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/print_settings_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e74e75adf68001ef29e441fa1bbac27e3aa5c3c1$ +// $hash=75238f577e768438cead970fa7362e4b04856894$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_PRINT_SETTINGS_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/process_message_ctocpp.cc b/src/cef/libcef_dll/ctocpp/process_message_ctocpp.cc index afa319731a6c6..3e3aa68804d74 --- a/src/cef/libcef_dll/ctocpp/process_message_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/process_message_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7ab779c6c98a1bd2385f14d514304a28ef58717f$ +// $hash=c68e571b03dfbb3e50a989f5e8abde1fe21837e2$ // #include "libcef_dll/ctocpp/process_message_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/process_message_ctocpp.h b/src/cef/libcef_dll/ctocpp/process_message_ctocpp.h index 1b786f5b2ce1e..db214ff09789a --- a/src/cef/libcef_dll/ctocpp/process_message_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/process_message_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=39bf2321370b32cf02bf502529568e935b303550$ +// $hash=ce134ef72dcd3df8303e202db7489cc2920a3ad2$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_PROCESS_MESSAGE_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/read_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/read_handler_ctocpp.cc index 858a1cc301c06..e05dfadd698c0 --- a/src/cef/libcef_dll/ctocpp/read_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/read_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=0332caff5ce6230d2cb2d7663fc0bbfac8e45069$ +// $hash=a0abf42da8392486549644489052218f494ae8dd$ // #include "libcef_dll/ctocpp/read_handler_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/read_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/read_handler_ctocpp.h index a1b88e03fb474..546462a4dcf88 --- a/src/cef/libcef_dll/ctocpp/read_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/read_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f3d43ae771f8e17084fd9397fd4e2bef9471ea73$ +// $hash=d4b05ef2f8edd18da8b5ed9c5d4afe8162f81069$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_READ_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/registration_ctocpp.cc b/src/cef/libcef_dll/ctocpp/registration_ctocpp.cc index fad182ef7bc54..a0b5a00b4f57f --- a/src/cef/libcef_dll/ctocpp/registration_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/registration_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=36f275457b15025ac7b979eca3179cd127f45ffb$ +// $hash=e1eade4ceaefc7079366e8b0d29d499590273e8c$ // #include "libcef_dll/ctocpp/registration_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/registration_ctocpp.h b/src/cef/libcef_dll/ctocpp/registration_ctocpp.h index 00c48e0213577..b60a76fd07dea --- a/src/cef/libcef_dll/ctocpp/registration_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/registration_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=84ca9a25ae345642994cc1b44cd71f90e7406f19$ +// $hash=8b9f37f2e0d395e737bc158d7d4bfb5f5e85e5c4$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_REGISTRATION_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/render_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/render_handler_ctocpp.cc index 0f7259200dd2d..52053ab91a14c --- a/src/cef/libcef_dll/ctocpp/render_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/render_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=4542e0e52791a8d283c997922779ab33d40ad54c$ +// $hash=f2f817e11a4ff708bf3e1be68b75527681387d39$ // #include "libcef_dll/ctocpp/render_handler_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/render_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/render_handler_ctocpp.h index 66d289eea55e9..4b830fb9b0bb6 --- a/src/cef/libcef_dll/ctocpp/render_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/render_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f70633e6b53acb79709008ad6aaa692c77f7d136$ +// $hash=db2cc3ecd0fa1658ae8ce19b1347175a1902daec$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_RENDER_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/render_process_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/render_process_handler_ctocpp.cc index c5c5cc3b2649c..af212bedabe0b --- a/src/cef/libcef_dll/ctocpp/render_process_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/render_process_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a75829d0f47e772086a586f213cfdfe54ff5554c$ +// $hash=7e1d2051125a7c9845153bb1ed978e92c00d101b$ // #include "libcef_dll/ctocpp/render_process_handler_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/render_process_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/render_process_handler_ctocpp.h index b587be7aa25d2..dcf49a67e967b --- a/src/cef/libcef_dll/ctocpp/render_process_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/render_process_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c87a2a5637615d6b7994f80cef17651c73cdb8e2$ +// $hash=1e5030658a4775df8e1eb8bbd54c43cdacf4572a$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_RENDER_PROCESS_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/request_context_ctocpp.cc b/src/cef/libcef_dll/ctocpp/request_context_ctocpp.cc index 50855c12ec282..579120bf14025 --- a/src/cef/libcef_dll/ctocpp/request_context_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/request_context_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=30c4985c5d42f2b4409c2650ded5265209f210f4$ +// $hash=dc0625b92b6258aa5bad4b5407431a7fff11124b$ // #include "libcef_dll/ctocpp/request_context_ctocpp.h" @@ -22,7 +22,6 @@ #include "libcef_dll/ctocpp/data_base_ctocpp.h" #include "libcef_dll/ctocpp/dictionary_value_ctocpp.h" #include "libcef_dll/ctocpp/extension_ctocpp.h" -#include "libcef_dll/ctocpp/media_router_ctocpp.h" #include "libcef_dll/ctocpp/value_ctocpp.h" #include "libcef_dll/ctocpp/web_storage_ctocpp.h" #include "libcef_dll/transfer_util.h" @@ -566,25 +565,6 @@ CefRefPtr CefRequestContextCToCpp::GetExtension( return CefExtensionCToCpp::Wrap(_retval); } -NO_SANITIZE("cfi-icall") -CefRefPtr CefRequestContextCToCpp::GetMediaRouter( - CefRefPtr callback) { - cef_request_context_t* _struct = GetStruct(); - if (CEF_MEMBER_MISSING(_struct, get_media_router)) - return nullptr; - - // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING - - // Unverified params: callback - - // Execute - cef_media_router_t* _retval = _struct->get_media_router( - _struct, CefCompletionCallbackCppToC::Wrap(callback)); - - // Return type: refptr_same - return CefMediaRouterCToCpp::Wrap(_retval); -} - // CONSTRUCTOR - Do not edit by hand. CefRequestContextCToCpp::CefRequestContextCToCpp() {} diff --git a/src/cef/libcef_dll/ctocpp/request_context_ctocpp.h b/src/cef/libcef_dll/ctocpp/request_context_ctocpp.h index a4b3680ddd315..bc46f069c3a57 --- a/src/cef/libcef_dll/ctocpp/request_context_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/request_context_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=caa6b1e4b3ff4716bb47e181b96c9483342b28de$ +// $hash=178710b8193986502c91eff7bbe6cbfe0e158055$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_REQUEST_CONTEXT_CTOCPP_H_ @@ -79,8 +79,6 @@ class CefRequestContextCToCpp bool HasExtension(const CefString& extension_id) override; bool GetExtensions(std::vector& extension_ids) override; CefRefPtr GetExtension(const CefString& extension_id) override; - CefRefPtr GetMediaRouter( - CefRefPtr callback) override; }; #endif // CEF_LIBCEF_DLL_CTOCPP_REQUEST_CONTEXT_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/request_context_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/request_context_handler_ctocpp.cc index fd2bde57aad07..d4ff6e78f085a --- a/src/cef/libcef_dll/ctocpp/request_context_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/request_context_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a57c9c762ed21459113a931ad31387aa1ab2c441$ +// $hash=8a94f1c67a481d85041012d944a85e9a1bcce7c8$ // #include "libcef_dll/ctocpp/request_context_handler_ctocpp.h" @@ -41,15 +41,14 @@ void CefRequestContextHandlerCToCpp::OnRequestContextInitialized( } NO_SANITIZE("cfi-icall") -CefRefPtr -CefRequestContextHandlerCToCpp::GetResourceRequestHandler( - CefRefPtr browser, - CefRefPtr frame, - CefRefPtr request, - bool is_navigation, - bool is_download, - const CefString& request_initiator, - bool& disable_default_handling) { +CefRefPtr CefRequestContextHandlerCToCpp:: + GetResourceRequestHandler(CefRefPtr browser, + CefRefPtr frame, + CefRefPtr request, + bool is_navigation, + bool is_download, + const CefString& request_initiator, + bool& disable_default_handling) { cef_request_context_handler_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, get_resource_request_handler)) return nullptr; diff --git a/src/cef/libcef_dll/ctocpp/request_context_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/request_context_handler_ctocpp.h index aec6839cae6b5..004f130ab8a39 --- a/src/cef/libcef_dll/ctocpp/request_context_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/request_context_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f1c0285ef66144b395f364bf1e6d211634028df7$ +// $hash=8f4c9ab7910a1497890d9bb3bc7aef80e23b7306$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_REQUEST_CONTEXT_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/request_ctocpp.cc b/src/cef/libcef_dll/ctocpp/request_ctocpp.cc index 5626e4c25d07c..85b7fb9ceabbe --- a/src/cef/libcef_dll/ctocpp/request_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/request_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b1dd4486a797ac139f453e02e3a49c74b7568ca8$ +// $hash=0cd351db644cd18b1cde6adf5355d2ceff949827$ // #include "libcef_dll/ctocpp/request_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/request_ctocpp.h b/src/cef/libcef_dll/ctocpp/request_ctocpp.h index ec852c0757a6d..7b3b665425029 --- a/src/cef/libcef_dll/ctocpp/request_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/request_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6a1638068718eb98ce3311395809c7da4c9f7422$ +// $hash=7e87acb36c494058615248f36c7536368d3d5fb5$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_REQUEST_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/request_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/request_handler_ctocpp.cc index 62b1ce741dc2b..8dee0dc3edec7 --- a/src/cef/libcef_dll/ctocpp/request_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/request_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=1622488c5f5a264c0672564c1862e3d64b87e8e8$ +// $hash=f65a730888f266775539eaa278925d619b5a4be2$ // #include "libcef_dll/ctocpp/request_handler_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/request_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/request_handler_ctocpp.h index 75aeadbcda6ee..6c1eb88effee5 --- a/src/cef/libcef_dll/ctocpp/request_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/request_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=da31c462d342652746056a6a1013bcf5f4f5155c$ +// $hash=e407bf6537c825d8fe5e340aa3e29b61f78574ae$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_REQUEST_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/resolve_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/resolve_callback_ctocpp.cc index d348c199a617a..fe697c32c50fe --- a/src/cef/libcef_dll/ctocpp/resolve_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/resolve_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c71d6fd8b0ee493102fdae90612f15b01e4a9f6b$ +// $hash=e8659cb8919878e3ad14e22b9c30b61eae0fe71d$ // #include "libcef_dll/ctocpp/resolve_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/resolve_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/resolve_callback_ctocpp.h index b1f00880bc8a2..f9e115e76f528 --- a/src/cef/libcef_dll/ctocpp/resolve_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/resolve_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=493826dcfb1c8e1b46489225a74332552d591d63$ +// $hash=648f3d66272798ab00f7a97d33126aef193d5fa5$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_RESOLVE_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/resource_bundle_ctocpp.cc b/src/cef/libcef_dll/ctocpp/resource_bundle_ctocpp.cc index 66bc65cc316a9..98cc508a1a452 --- a/src/cef/libcef_dll/ctocpp/resource_bundle_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/resource_bundle_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a62aa669321b0f86ea3508ce31ea5b1a0bc3f9b5$ +// $hash=8ac944f0c572916a56506165359595f4c607a66c$ // #include "libcef_dll/ctocpp/resource_bundle_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/resource_bundle_ctocpp.h b/src/cef/libcef_dll/ctocpp/resource_bundle_ctocpp.h index 08d8f47fc8a7b..9d0444e6cea3a --- a/src/cef/libcef_dll/ctocpp/resource_bundle_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/resource_bundle_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=faa11d38d989eb250f28646485cd2f0d38438807$ +// $hash=e18e48353500f27c27160812032cadc398fe00f9$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_RESOURCE_BUNDLE_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/resource_bundle_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/resource_bundle_handler_ctocpp.cc index 722f909420153..e5d1de8a5b83b --- a/src/cef/libcef_dll/ctocpp/resource_bundle_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/resource_bundle_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=12556834893a7ae50b8f8bef2b71915fa1a141ca$ +// $hash=dd0ca54416131ada6010e1e578eaff359488f11a$ // #include "libcef_dll/ctocpp/resource_bundle_handler_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/resource_bundle_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/resource_bundle_handler_ctocpp.h index 354a15e0781d3..0b427b1fa6b9e --- a/src/cef/libcef_dll/ctocpp/resource_bundle_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/resource_bundle_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ba179fe7fc169637ab6f1727351a81952c82826d$ +// $hash=52b1821c0ed82e859eddbb113d4a73ba2b178548$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_RESOURCE_BUNDLE_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/resource_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/resource_handler_ctocpp.cc index 4396a57db1abc..93baa9b22cf23 --- a/src/cef/libcef_dll/ctocpp/resource_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/resource_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=16d3a6bd2555917b295d7dbb3ccd95ccfc35b111$ +// $hash=8641dd9a90013088eb4840c691effe87c7a38348$ // #include "libcef_dll/ctocpp/resource_handler_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/resource_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/resource_handler_ctocpp.h index ae74e58fd3106..da05687c859bb --- a/src/cef/libcef_dll/ctocpp/resource_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/resource_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2b60744909728ffbff2e846438bf122a61fec5c7$ +// $hash=8cf5fea5fc1d33f8268a4608417a75ef6ee9bf51$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_RESOURCE_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/resource_read_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/resource_read_callback_ctocpp.cc index 1e9523ef77cdd..80ba66ece67a4 --- a/src/cef/libcef_dll/ctocpp/resource_read_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/resource_read_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c251aa59688ffe5c12d2ec3c8a4a896d016e86a0$ +// $hash=4f01fc764e74bb4a40a53b43ddc4e4857e51e4e2$ // #include "libcef_dll/ctocpp/resource_read_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/resource_read_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/resource_read_callback_ctocpp.h index 4a304a20b054c..37b79c96656b9 --- a/src/cef/libcef_dll/ctocpp/resource_read_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/resource_read_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b655936b8ea2584164546d261263876bf9d3f0ac$ +// $hash=aeb2eaecc30bb2498b709af0ec45dd6b5dc9b392$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_RESOURCE_READ_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/resource_request_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/resource_request_handler_ctocpp.cc index 1d8cbac585eac..1a5e9edc413b3 --- a/src/cef/libcef_dll/ctocpp/resource_request_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/resource_request_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=76e8ba6d6c7860c2a1b630dd632f5c647391f564$ +// $hash=7a1e7b377527ff331e4950f3f52c85f2a341517d$ // #include "libcef_dll/ctocpp/resource_request_handler_ctocpp.h" @@ -25,11 +25,10 @@ // VIRTUAL METHODS - Body may be edited by hand. NO_SANITIZE("cfi-icall") -CefRefPtr -CefResourceRequestHandlerCToCpp::GetCookieAccessFilter( - CefRefPtr browser, - CefRefPtr frame, - CefRefPtr request) { +CefRefPtr CefResourceRequestHandlerCToCpp:: + GetCookieAccessFilter(CefRefPtr browser, + CefRefPtr frame, + CefRefPtr request) { cef_resource_request_handler_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, get_cookie_access_filter)) return nullptr; @@ -53,11 +52,11 @@ CefResourceRequestHandlerCToCpp::GetCookieAccessFilter( NO_SANITIZE("cfi-icall") CefResourceRequestHandler::ReturnValue -CefResourceRequestHandlerCToCpp::OnBeforeResourceLoad( - CefRefPtr browser, - CefRefPtr frame, - CefRefPtr request, - CefRefPtr callback) { + CefResourceRequestHandlerCToCpp::OnBeforeResourceLoad( + CefRefPtr browser, + CefRefPtr frame, + CefRefPtr request, + CefRefPtr callback) { cef_resource_request_handler_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, on_before_resource_load)) return RV_CONTINUE; @@ -84,11 +83,10 @@ CefResourceRequestHandlerCToCpp::OnBeforeResourceLoad( } NO_SANITIZE("cfi-icall") -CefRefPtr -CefResourceRequestHandlerCToCpp::GetResourceHandler( - CefRefPtr browser, - CefRefPtr frame, - CefRefPtr request) { +CefRefPtr CefResourceRequestHandlerCToCpp:: + GetResourceHandler(CefRefPtr browser, + CefRefPtr frame, + CefRefPtr request) { cef_resource_request_handler_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, get_resource_handler)) return nullptr; @@ -172,12 +170,11 @@ bool CefResourceRequestHandlerCToCpp::OnResourceResponse( } NO_SANITIZE("cfi-icall") -CefRefPtr -CefResourceRequestHandlerCToCpp::GetResourceResponseFilter( - CefRefPtr browser, - CefRefPtr frame, - CefRefPtr request, - CefRefPtr response) { +CefRefPtr CefResourceRequestHandlerCToCpp:: + GetResourceResponseFilter(CefRefPtr browser, + CefRefPtr frame, + CefRefPtr request, + CefRefPtr response) { cef_resource_request_handler_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, get_resource_response_filter)) return nullptr; diff --git a/src/cef/libcef_dll/ctocpp/resource_request_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/resource_request_handler_ctocpp.h index e2d2aa6596c53..4d2c5cd332121 --- a/src/cef/libcef_dll/ctocpp/resource_request_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/resource_request_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2a3124a23f18f81fe2effd7df7848aa999370f31$ +// $hash=4564ea5efd8c4be32e2df7c98fd70a645eb9f696$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_RESOURCE_REQUEST_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/resource_skip_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/resource_skip_callback_ctocpp.cc index cdafb7bea0301..109e4ce8f41ff --- a/src/cef/libcef_dll/ctocpp/resource_skip_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/resource_skip_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=df7b14a723e4f2b9dd7946fddfbe8dc9652ccb75$ +// $hash=9b1ffc7f2bb483a6657867c8369e56b821b44684$ // #include "libcef_dll/ctocpp/resource_skip_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/resource_skip_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/resource_skip_callback_ctocpp.h index ac22d12ca33cc..5d8a347bbb2d9 --- a/src/cef/libcef_dll/ctocpp/resource_skip_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/resource_skip_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=de37dc0b6e8570fc2f0d1912a5ac9e264ef5d6dc$ +// $hash=ace627f34f6c16512fb0d7a9a4ebb96e9c00c78d$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_RESOURCE_SKIP_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/response_ctocpp.cc b/src/cef/libcef_dll/ctocpp/response_ctocpp.cc index e34c60e857b7c..0c9aa8713cd3e --- a/src/cef/libcef_dll/ctocpp/response_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/response_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ac30aa16fee147cd041b64db7f2743d578dc6384$ +// $hash=85da34bbec6032ab48c11a9c64927c9da40fa5dc$ // #include "libcef_dll/ctocpp/response_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/response_ctocpp.h b/src/cef/libcef_dll/ctocpp/response_ctocpp.h index cb1187f23a55e..00a127929b37c --- a/src/cef/libcef_dll/ctocpp/response_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/response_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8e61de9ab82c665913039fa45903fa8b2213d3c2$ +// $hash=3ec4c709bcd18d24997d554134b1b01e17bbd0fb$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_RESPONSE_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/response_filter_ctocpp.cc b/src/cef/libcef_dll/ctocpp/response_filter_ctocpp.cc index 668cfa6f1d3d1..336567dfd16bc --- a/src/cef/libcef_dll/ctocpp/response_filter_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/response_filter_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ddb4710d1e5bc73df68f132d56661b0d22520ad9$ +// $hash=dc1f2774aa0a5d586afb09a77cd4fdf5022af04a$ // #include "libcef_dll/ctocpp/response_filter_ctocpp.h" @@ -34,13 +34,13 @@ NO_SANITIZE("cfi-icall") bool CefResponseFilterCToCpp::InitFilter() { } NO_SANITIZE("cfi-icall") -CefResponseFilter::FilterStatus CefResponseFilterCToCpp::Filter( - void* data_in, - size_t data_in_size, - size_t& data_in_read, - void* data_out, - size_t data_out_size, - size_t& data_out_written) { +CefResponseFilter::FilterStatus + CefResponseFilterCToCpp::Filter(void* data_in, + size_t data_in_size, + size_t& data_in_read, + void* data_out, + size_t data_out_size, + size_t& data_out_written) { shutdown_checker::AssertNotShutdown(); cef_response_filter_t* _struct = GetStruct(); diff --git a/src/cef/libcef_dll/ctocpp/response_filter_ctocpp.h b/src/cef/libcef_dll/ctocpp/response_filter_ctocpp.h index a1f7a5eff4ecb..a15d97ff0d320 --- a/src/cef/libcef_dll/ctocpp/response_filter_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/response_filter_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=3e7c6b0f991e335db755172d65e2a03e5e00a270$ +// $hash=b9ca51a2ee848580b14c1a06b49b2b9e048ab798$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_RESPONSE_FILTER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/run_context_menu_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/run_context_menu_callback_ctocpp.cc index 4e82c15bcdfa5..c608f07f255d3 --- a/src/cef/libcef_dll/ctocpp/run_context_menu_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/run_context_menu_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=427fe84b74eec6346d7da729cba2fdf52d1c0fd7$ +// $hash=be8368d8aea24196357d54e79c935ad40b5e7d9d$ // #include "libcef_dll/ctocpp/run_context_menu_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/run_context_menu_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/run_context_menu_callback_ctocpp.h index 6e413df2f4957..90d9cd66050e0 --- a/src/cef/libcef_dll/ctocpp/run_context_menu_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/run_context_menu_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ffa640e35d08dd0f9b8c0ea291db190947826915$ +// $hash=7663b13ecb057bba0158685bc34783f37ef2f030$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_RUN_CONTEXT_MENU_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/run_file_dialog_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/run_file_dialog_callback_ctocpp.cc index fb42b0d4cfcda..6999776b45c9c --- a/src/cef/libcef_dll/ctocpp/run_file_dialog_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/run_file_dialog_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=cb29585261ed25ddd2ee1b4b5c890565e72e5d22$ +// $hash=2e7f10559c5c3458ee2a5055d55ec4df6be246cf$ // #include "libcef_dll/ctocpp/run_file_dialog_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/run_file_dialog_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/run_file_dialog_callback_ctocpp.h index 2b4fc7dde8ffc..1d7e8588b7db3 --- a/src/cef/libcef_dll/ctocpp/run_file_dialog_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/run_file_dialog_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=63d2d1da715395296899acc4ed165cf7dae4d78c$ +// $hash=85e5a1624f1ed7c3a154f55edc0682f723374197$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_RUN_FILE_DIALOG_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/run_quick_menu_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/run_quick_menu_callback_ctocpp.cc index 095624f724b13..1e649a0955cfb --- a/src/cef/libcef_dll/ctocpp/run_quick_menu_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/run_quick_menu_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c0d516016a14eeed0c73bde99e2495ae691c2326$ +// $hash=7d0f87f5e909c52e5424e018ff46f806960f7df2$ // #include "libcef_dll/ctocpp/run_quick_menu_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/run_quick_menu_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/run_quick_menu_callback_ctocpp.h index 285335e2c424c..155b0b937cfb1 --- a/src/cef/libcef_dll/ctocpp/run_quick_menu_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/run_quick_menu_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=519977d5976a7486e0fda9d9b9b0d6fd0fd9b44f$ +// $hash=c079137f43167df4c21e63f38cdd8c33f4423445$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_RUN_QUICK_MENU_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/scheme_handler_factory_ctocpp.cc b/src/cef/libcef_dll/ctocpp/scheme_handler_factory_ctocpp.cc index 9be13e699bdee..8f3f3f86d99b8 --- a/src/cef/libcef_dll/ctocpp/scheme_handler_factory_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/scheme_handler_factory_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5e94a999784332a91c40a4608644bf7dc36e0729$ +// $hash=ea86d74aea74e67a896aa51760e61219743a478f$ // #include "libcef_dll/ctocpp/scheme_handler_factory_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/scheme_handler_factory_ctocpp.h b/src/cef/libcef_dll/ctocpp/scheme_handler_factory_ctocpp.h index 8e1d45052d967..6e20d97da3418 --- a/src/cef/libcef_dll/ctocpp/scheme_handler_factory_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/scheme_handler_factory_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ff0cb366799a5abce0f4e43bd98fcaf993fad77d$ +// $hash=8553de031f140b9c850e487863fc91b97633314b$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_SCHEME_HANDLER_FACTORY_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/scheme_registrar_ctocpp.cc b/src/cef/libcef_dll/ctocpp/scheme_registrar_ctocpp.cc index c86d129734cc9..2b548187656ba --- a/src/cef/libcef_dll/ctocpp/scheme_registrar_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/scheme_registrar_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=3f55a43485f2833e5000e7444d57ef47ff7af0e9$ +// $hash=722531dae407df607f2454823d375a34db168075$ // #include "libcef_dll/ctocpp/scheme_registrar_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/scheme_registrar_ctocpp.h b/src/cef/libcef_dll/ctocpp/scheme_registrar_ctocpp.h index 110a6858a3331..8ac7075b830aa --- a/src/cef/libcef_dll/ctocpp/scheme_registrar_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/scheme_registrar_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6c522fb5e064daeea21350a548af4bee6c0a2acf$ +// $hash=a30e0b019ab6b34998563c8bf46f7b0c8089c3ba$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_SCHEME_REGISTRAR_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/select_client_certificate_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/select_client_certificate_callback_ctocpp.cc index fda61b5069f30..1bf872280f115 --- a/src/cef/libcef_dll/ctocpp/select_client_certificate_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/select_client_certificate_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f77cbb1874239eff164c3654befdc0f4fe81fed9$ +// $hash=6fd8a2097b3275a73b28725e5747cc8e5c895a63$ // #include "libcef_dll/ctocpp/select_client_certificate_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/select_client_certificate_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/select_client_certificate_callback_ctocpp.h index 0085926df555e..318fa12d74e73 --- a/src/cef/libcef_dll/ctocpp/select_client_certificate_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/select_client_certificate_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=0de5941ff724adcd6ca8fcb5e1a5266143afa820$ +// $hash=3ab940de86fd7e4fd434758c7064f4eea9a3de47$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_SELECT_CLIENT_CERTIFICATE_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/select_popup_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/select_popup_callback_ctocpp.cc new file mode 100644 index 0000000000000..d45fb69daa75d --- /dev/null +++ b/src/cef/libcef_dll/ctocpp/select_popup_callback_ctocpp.cc @@ -0,0 +1,88 @@ +// 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. +// +// --------------------------------------------------------------------------- +// +// This file was generated by the CEF translator tool. If making changes by +// hand only do so within the body of existing method and function +// implementations. See the translator.README.txt file in the tools directory +// for more information. +// +// $hash=79f5a4ff76eac8f4149c11465623c3b177887128$ +// + +#include "libcef_dll/ctocpp/select_popup_callback_ctocpp.h" +#include "libcef_dll/shutdown_checker.h" + +// VIRTUAL METHODS - Body may be edited by hand. + +NO_SANITIZE("cfi-icall") +void CefSelectPopupCallbackCToCpp::Continue(const std::vector& indices) { + shutdown_checker::AssertNotShutdown(); + + cef_select_popup_callback_t* _struct = GetStruct(); + if (CEF_MEMBER_MISSING(_struct, cont)) + return; + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + // Translate param: indices; type: simple_vec_byref_const + const size_t indicesCount = indices.size(); + int* indicesList = NULL; + if (indicesCount > 0) { + indicesList = new int[indicesCount]; + DCHECK(indicesList); + if (indicesList) { + for (size_t i = 0; i < indicesCount; ++i) { + indicesList[i] = indices[i]; + } + } + } + + // Execute + _struct->cont(_struct, indicesCount, indicesList); + + // Restore param:indices; type: simple_vec_byref_const + if (indicesList) + delete[] indicesList; +} + +NO_SANITIZE("cfi-icall") void CefSelectPopupCallbackCToCpp::Cancel() { + shutdown_checker::AssertNotShutdown(); + + cef_select_popup_callback_t* _struct = GetStruct(); + if (CEF_MEMBER_MISSING(_struct, cancel)) + return; + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + // Execute + _struct->cancel(_struct); +} + +// CONSTRUCTOR - Do not edit by hand. + +CefSelectPopupCallbackCToCpp::CefSelectPopupCallbackCToCpp() {} + +// DESTRUCTOR - Do not edit by hand. + +CefSelectPopupCallbackCToCpp::~CefSelectPopupCallbackCToCpp() { + shutdown_checker::AssertNotShutdown(); +} + +template <> +cef_select_popup_callback_t* CefCToCppRefCounted< + CefSelectPopupCallbackCToCpp, + CefSelectPopupCallback, + cef_select_popup_callback_t>::UnwrapDerived(CefWrapperType type, + CefSelectPopupCallback* c) { + NOTREACHED() << "Unexpected class type: " << type; + return nullptr; +} + +template <> +CefWrapperType CefCToCppRefCounted::kWrapperType = + WT_SELECT_POPUP_CALLBACK; diff --git a/src/cef/libcef_dll/ctocpp/select_popup_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/select_popup_callback_ctocpp.h new file mode 100644 index 0000000000000..aa46a0ef6f8e8 --- /dev/null +++ b/src/cef/libcef_dll/ctocpp/select_popup_callback_ctocpp.h @@ -0,0 +1,43 @@ +// 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. +// +// --------------------------------------------------------------------------- +// +// This file was generated by the CEF translator tool. If making changes by +// hand only do so within the body of existing method and function +// implementations. See the translator.README.txt file in the tools directory +// for more information. +// +// $hash=511a4146e38cfe2e2242f3d79950cf67415fe4d5$ +// + +#ifndef CEF_LIBCEF_DLL_CTOCPP_SELECT_POPUP_CALLBACK_CTOCPP_H_ +#define CEF_LIBCEF_DLL_CTOCPP_SELECT_POPUP_CALLBACK_CTOCPP_H_ +#pragma once + +#if !defined(WRAPPING_CEF_SHARED) +#error This file can be included wrapper-side only +#endif + +#include +#include "include/capi/cef_dialog_handler_capi.h" +#include "include/cef_dialog_handler.h" +#include "libcef_dll/ctocpp/ctocpp_ref_counted.h" + +// Wrap a C structure with a C++ class. +// This class may be instantiated and accessed wrapper-side only. +class CefSelectPopupCallbackCToCpp + : public CefCToCppRefCounted { + public: + CefSelectPopupCallbackCToCpp(); + virtual ~CefSelectPopupCallbackCToCpp(); + + // CefSelectPopupCallback methods. + void Continue(const std::vector& indices) override; + void Cancel() override; +}; + +#endif // CEF_LIBCEF_DLL_CTOCPP_SELECT_POPUP_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/server_ctocpp.cc b/src/cef/libcef_dll/ctocpp/server_ctocpp.cc index 51fe2ead4bd91..ba95ec8e2eaac --- a/src/cef/libcef_dll/ctocpp/server_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/server_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d8cfb6cafc2a9aa0cffe4a998071e8a96b04740b$ +// $hash=31e56774368e5a843a41c99e9446d8d97d6fc9da$ // #include "libcef_dll/ctocpp/server_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/server_ctocpp.h b/src/cef/libcef_dll/ctocpp/server_ctocpp.h index b35a3255ebaa4..b9a038e2f88e0 --- a/src/cef/libcef_dll/ctocpp/server_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/server_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ed13956e5941bbb0885224ef57016cf7f34d389c$ +// $hash=efb9652f9e2a17079ff20457264e8b0ecfd19499$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_SERVER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/server_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/server_handler_ctocpp.cc index b82fd8f5b1cd5..3300e1734bb0f --- a/src/cef/libcef_dll/ctocpp/server_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/server_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a14c40cc86f5fd61d548d981c99c59a559619eda$ +// $hash=eff1ec14b02da387e1504034a7eace1325a4ee94$ // #include "libcef_dll/ctocpp/server_handler_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/server_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/server_handler_ctocpp.h index 08df48f950e4c..fbb9d76162c4a --- a/src/cef/libcef_dll/ctocpp/server_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/server_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b9b38b204c2b9d385ebefb11aa0b45efcd684cbc$ +// $hash=0bed1f616f1ae42a7eb755dba59b329cd600abff$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_SERVER_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/set_cookie_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/set_cookie_callback_ctocpp.cc index 63048eec4be0c..2b8851b9f93a2 --- a/src/cef/libcef_dll/ctocpp/set_cookie_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/set_cookie_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5767c600167159c0ad3f5d10461f1bf107c668cc$ +// $hash=0114a4f38f6355d772659f7a3d83e086ef2079c3$ // #include "libcef_dll/ctocpp/set_cookie_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/set_cookie_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/set_cookie_callback_ctocpp.h index f4ca2b5612faf..067807169e6ad --- a/src/cef/libcef_dll/ctocpp/set_cookie_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/set_cookie_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=83c8143e3d126fca9a02f8e5ffa75bf99d291518$ +// $hash=26be0ed7d7165630ee23b480419768f1fd9b95fe$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_SET_COOKIE_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/sslinfo_ctocpp.cc b/src/cef/libcef_dll/ctocpp/sslinfo_ctocpp.cc index 81512b8b693f3..57eb40cd3ed1f --- a/src/cef/libcef_dll/ctocpp/sslinfo_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/sslinfo_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=67037943cdfae2a56924694d302a4b5697dc9a22$ +// $hash=ca0daba10b2ed5ebb9610092967d60efde837706$ // #include "libcef_dll/ctocpp/sslinfo_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/sslinfo_ctocpp.h b/src/cef/libcef_dll/ctocpp/sslinfo_ctocpp.h index 957fe16ce775c..80ed6f17a515f --- a/src/cef/libcef_dll/ctocpp/sslinfo_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/sslinfo_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=bd6c2733149181808f331fa69f9c6199a43eb730$ +// $hash=d08212eed1df4078ed5bb72dd7fc6d478f476ecb$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_SSLINFO_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/sslstatus_ctocpp.cc b/src/cef/libcef_dll/ctocpp/sslstatus_ctocpp.cc index b0392d95c4ea7..5defe8fee422e --- a/src/cef/libcef_dll/ctocpp/sslstatus_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/sslstatus_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=18492d14d83b0dfd272ddd9dd95a2fc292bf8904$ +// $hash=82f44b0f9739a59e0d9cfad14282998f281dd0a8$ // #include "libcef_dll/ctocpp/sslstatus_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/sslstatus_ctocpp.h b/src/cef/libcef_dll/ctocpp/sslstatus_ctocpp.h index 8b9e5febfb588..c36c525480511 --- a/src/cef/libcef_dll/ctocpp/sslstatus_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/sslstatus_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=75331cb462e0944adffd05e9138561eb1cd68226$ +// $hash=af612f99d0ccc287b152a20b3e9956af223f82e0$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_SSLSTATUS_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/store_web_archive_result_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/store_web_archive_result_callback_ctocpp.cc index 282357f875619..8295518883e1c --- a/src/cef/libcef_dll/ctocpp/store_web_archive_result_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/store_web_archive_result_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=3ea3777da287fb256c81d7659000104b85d99c45$ +// $hash=ef42fcbe56e93182d9f4b5063d55b33ce9086e55$ // #include "libcef_dll/ctocpp/store_web_archive_result_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/store_web_archive_result_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/store_web_archive_result_callback_ctocpp.h index 75369b7e2e97c..9e1fffd6d1020 --- a/src/cef/libcef_dll/ctocpp/store_web_archive_result_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/store_web_archive_result_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ad8ad631ed5942baa7ae146fe31316d0952d3d36$ +// $hash=13d8e7ac8493bcf02b39067e63e0d9fe3e7e8e65$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_STORE_WEB_ARCHIVE_RESULT_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/stream_reader_ctocpp.cc b/src/cef/libcef_dll/ctocpp/stream_reader_ctocpp.cc index 522ebdea8882e..4cf6ae4b55cec --- a/src/cef/libcef_dll/ctocpp/stream_reader_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/stream_reader_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=964179bd73f8b5fa8d8adbd955deb7e720caaca7$ +// $hash=7a5ee0caa0def472edae4f8fee336bf1db392071$ // #include "libcef_dll/ctocpp/stream_reader_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/stream_reader_ctocpp.h b/src/cef/libcef_dll/ctocpp/stream_reader_ctocpp.h index 4faf464409784..1376f71494d90 --- a/src/cef/libcef_dll/ctocpp/stream_reader_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/stream_reader_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e512b79f803ab83f9f67e677ea916dd9f6bb8868$ +// $hash=8a1cd61b67d54a528ac936415fa11ff1936cd628$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_STREAM_READER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/stream_writer_ctocpp.cc b/src/cef/libcef_dll/ctocpp/stream_writer_ctocpp.cc index d11649c31b07c..e4d6690e3af65 --- a/src/cef/libcef_dll/ctocpp/stream_writer_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/stream_writer_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e32b4745b887e33f589cb04e8b46a7317686e4c2$ +// $hash=af95b6ab0679c220a35569ae4dc4c11907d30084$ // #include "libcef_dll/ctocpp/stream_writer_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/stream_writer_ctocpp.h b/src/cef/libcef_dll/ctocpp/stream_writer_ctocpp.h index e091a67d61403..eceb31ac95f3c --- a/src/cef/libcef_dll/ctocpp/stream_writer_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/stream_writer_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=76a03eb8bf25cc337e838994c2bf4fe3f677aa6c$ +// $hash=f1156f9657858024d8d0dc20af0b5f53e82b5d74$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_STREAM_WRITER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/string_visitor_ctocpp.cc b/src/cef/libcef_dll/ctocpp/string_visitor_ctocpp.cc index c1ece7b76fe24..e44f6335b2085 --- a/src/cef/libcef_dll/ctocpp/string_visitor_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/string_visitor_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=97c52e0e29be9e4452825fb57d4014221c537baa$ +// $hash=ae0e93265c6fa1d984a669177c162602f99be475$ // #include "libcef_dll/ctocpp/string_visitor_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/string_visitor_ctocpp.h b/src/cef/libcef_dll/ctocpp/string_visitor_ctocpp.h index c107e783ea44d..53e15edcd50a5 --- a/src/cef/libcef_dll/ctocpp/string_visitor_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/string_visitor_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=470dd514d2a3091216588819ee28296424649b57$ +// $hash=6e693b6dd1a72803aa7243d7cd5de54354338c37$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_STRING_VISITOR_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/task_ctocpp.cc b/src/cef/libcef_dll/ctocpp/task_ctocpp.cc index d621f77995218..3296e28b1794c --- a/src/cef/libcef_dll/ctocpp/task_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/task_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b99582b454aa33c5e9b2fa3f891ed0754621c377$ +// $hash=26d9172375112a2aa89c76d7a371796c5a7b9892$ // #include "libcef_dll/ctocpp/task_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/task_ctocpp.h b/src/cef/libcef_dll/ctocpp/task_ctocpp.h index 0fdb427d2e673..ccd90edb97cc1 --- a/src/cef/libcef_dll/ctocpp/task_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/task_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ec78aa696165cd02a3b7f19e877b89d58518d5ad$ +// $hash=e722a5b9ae2bb6e3d3236a199930600dc3b5e0f8$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_TASK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/task_runner_ctocpp.cc b/src/cef/libcef_dll/ctocpp/task_runner_ctocpp.cc index 89bf91e95c499..5613e36b34f42 --- a/src/cef/libcef_dll/ctocpp/task_runner_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/task_runner_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c4e54b985b45c9cf57f70a3c560fb1d6c5230f9a$ +// $hash=9d367936047c38f9b70488ef5caf6d8ca081bb50$ // #include "libcef_dll/ctocpp/task_runner_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/task_runner_ctocpp.h b/src/cef/libcef_dll/ctocpp/task_runner_ctocpp.h index ecec13d9cf48d..2f33aaffbd2cb --- a/src/cef/libcef_dll/ctocpp/task_runner_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/task_runner_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=795e78c45943dd3c23d95ed1b85e889288f2dcf1$ +// $hash=372cc40047bb36d78f80f4d1edbbba30faad2c7f$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_TASK_RUNNER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/test/translator_test_ctocpp.cc b/src/cef/libcef_dll/ctocpp/test/translator_test_ctocpp.cc index affb998f98792..62491362aa47a --- a/src/cef/libcef_dll/ctocpp/test/translator_test_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/test/translator_test_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a28e85dbec92b031978a0d4c998c9cb1a853c9f8$ +// $hash=fd81a3bbebda49174033f19fe2eafd501b367837$ // #include "libcef_dll/ctocpp/test/translator_test_ctocpp.h" @@ -692,8 +692,8 @@ NO_SANITIZE("cfi-icall") size_t CefTranslatorTestCToCpp::GetPointListSize() { } NO_SANITIZE("cfi-icall") -CefRefPtr -CefTranslatorTestCToCpp::GetRefPtrLibrary(int val) { +CefRefPtr CefTranslatorTestCToCpp:: + GetRefPtrLibrary(int val) { shutdown_checker::AssertNotShutdown(); cef_translator_test_t* _struct = GetStruct(); @@ -735,9 +735,8 @@ int CefTranslatorTestCToCpp::SetRefPtrLibrary( } NO_SANITIZE("cfi-icall") -CefRefPtr -CefTranslatorTestCToCpp::SetRefPtrLibraryAndReturn( - CefRefPtr val) { +CefRefPtr CefTranslatorTestCToCpp:: + SetRefPtrLibraryAndReturn(CefRefPtr val) { shutdown_checker::AssertNotShutdown(); cef_translator_test_t* _struct = GetStruct(); @@ -785,9 +784,9 @@ int CefTranslatorTestCToCpp::SetChildRefPtrLibrary( } NO_SANITIZE("cfi-icall") -CefRefPtr -CefTranslatorTestCToCpp::SetChildRefPtrLibraryAndReturnParent( - CefRefPtr val) { +CefRefPtr CefTranslatorTestCToCpp:: + SetChildRefPtrLibraryAndReturnParent( + CefRefPtr val) { shutdown_checker::AssertNotShutdown(); cef_translator_test_t* _struct = GetStruct(); @@ -937,9 +936,8 @@ int CefTranslatorTestCToCpp::SetRefPtrClient( } NO_SANITIZE("cfi-icall") -CefRefPtr -CefTranslatorTestCToCpp::SetRefPtrClientAndReturn( - CefRefPtr val) { +CefRefPtr CefTranslatorTestCToCpp:: + SetRefPtrClientAndReturn(CefRefPtr val) { shutdown_checker::AssertNotShutdown(); cef_translator_test_t* _struct = GetStruct(); @@ -987,9 +985,9 @@ int CefTranslatorTestCToCpp::SetChildRefPtrClient( } NO_SANITIZE("cfi-icall") -CefRefPtr -CefTranslatorTestCToCpp::SetChildRefPtrClientAndReturnParent( - CefRefPtr val) { +CefRefPtr CefTranslatorTestCToCpp:: + SetChildRefPtrClientAndReturnParent( + CefRefPtr val) { shutdown_checker::AssertNotShutdown(); cef_translator_test_t* _struct = GetStruct(); @@ -1127,8 +1125,8 @@ size_t CefTranslatorTestCToCpp::GetRefPtrClientListSize() { } NO_SANITIZE("cfi-icall") -CefOwnPtr -CefTranslatorTestCToCpp::GetOwnPtrLibrary(int val) { +CefOwnPtr CefTranslatorTestCToCpp:: + GetOwnPtrLibrary(int val) { shutdown_checker::AssertNotShutdown(); cef_translator_test_t* _struct = GetStruct(); @@ -1170,9 +1168,8 @@ int CefTranslatorTestCToCpp::SetOwnPtrLibrary( } NO_SANITIZE("cfi-icall") -CefOwnPtr -CefTranslatorTestCToCpp::SetOwnPtrLibraryAndReturn( - CefOwnPtr val) { +CefOwnPtr CefTranslatorTestCToCpp:: + SetOwnPtrLibraryAndReturn(CefOwnPtr val) { shutdown_checker::AssertNotShutdown(); cef_translator_test_t* _struct = GetStruct(); @@ -1222,9 +1219,9 @@ int CefTranslatorTestCToCpp::SetChildOwnPtrLibrary( } NO_SANITIZE("cfi-icall") -CefOwnPtr -CefTranslatorTestCToCpp::SetChildOwnPtrLibraryAndReturnParent( - CefOwnPtr val) { +CefOwnPtr CefTranslatorTestCToCpp:: + SetChildOwnPtrLibraryAndReturnParent( + CefOwnPtr val) { shutdown_checker::AssertNotShutdown(); cef_translator_test_t* _struct = GetStruct(); @@ -1273,9 +1270,8 @@ int CefTranslatorTestCToCpp::SetOwnPtrClient( } NO_SANITIZE("cfi-icall") -CefOwnPtr -CefTranslatorTestCToCpp::SetOwnPtrClientAndReturn( - CefOwnPtr val) { +CefOwnPtr CefTranslatorTestCToCpp:: + SetOwnPtrClientAndReturn(CefOwnPtr val) { shutdown_checker::AssertNotShutdown(); cef_translator_test_t* _struct = GetStruct(); @@ -1325,9 +1321,9 @@ int CefTranslatorTestCToCpp::SetChildOwnPtrClient( } NO_SANITIZE("cfi-icall") -CefOwnPtr -CefTranslatorTestCToCpp::SetChildOwnPtrClientAndReturnParent( - CefOwnPtr val) { +CefOwnPtr CefTranslatorTestCToCpp:: + SetChildOwnPtrClientAndReturnParent( + CefOwnPtr val) { shutdown_checker::AssertNotShutdown(); cef_translator_test_t* _struct = GetStruct(); diff --git a/src/cef/libcef_dll/ctocpp/test/translator_test_ctocpp.h b/src/cef/libcef_dll/ctocpp/test/translator_test_ctocpp.h index 35da08479b6b4..8384cefe5b8ca --- a/src/cef/libcef_dll/ctocpp/test/translator_test_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/test/translator_test_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=774d22a8a54e71a2511ce6a66491d9563302f0bf$ +// $hash=915917340262b6243b06022fe96cc1e96625cac9$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_TEST_TRANSLATOR_TEST_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_client_child_ctocpp.cc b/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_client_child_ctocpp.cc index 89c9f27dba596..b491fb2541c8f --- a/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_client_child_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_client_child_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6aacf410858db1defe08179c985f4466fca2751f$ +// $hash=aa0f3c0f4378474dbd62f65751378c4402bd591c$ // #include "libcef_dll/ctocpp/test/translator_test_ref_ptr_client_child_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_client_child_ctocpp.h b/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_client_child_ctocpp.h index 944ad33402a0d..d59c50cf4f9a2 --- a/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_client_child_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_client_child_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f3c4158147b008b8fff038ff6f731419a9950c4d$ +// $hash=971a30d8a2814ecdddb08763016621ce94b9da92$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_TEST_TRANSLATOR_TEST_REF_PTR_CLIENT_CHILD_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_client_ctocpp.cc b/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_client_ctocpp.cc index 014e615300eda..720d5e6dc34aa --- a/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_client_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_client_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ca187683ddab3822fcf3d957c76ed27db6e8e433$ +// $hash=06ef08d535f3cc8b9ac7da2cb38711b01c58ca8e$ // #include "libcef_dll/ctocpp/test/translator_test_ref_ptr_client_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_client_ctocpp.h b/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_client_ctocpp.h index 0c06f5828dad6..968847f2b10ca --- a/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_client_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_client_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2e2a98039972801804b3b4d7b1d1220406489ad3$ +// $hash=a083f0198c6c93ee0fccdb262dce8dc567abbf9c$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_TEST_TRANSLATOR_TEST_REF_PTR_CLIENT_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_child_ctocpp.cc b/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_child_ctocpp.cc index 2dd42a1b3e172..3e6da2333e58d --- a/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_child_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_child_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5e599a9605e47372695d89a86eab37827e5971f2$ +// $hash=ed0f0c476f97fffa6f0b29c005508b475268f4c2$ // #include "libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_child_ctocpp.h" @@ -18,10 +18,9 @@ // STATIC METHODS - Body may be edited by hand. NO_SANITIZE("cfi-icall") -CefRefPtr -CefTranslatorTestRefPtrLibraryChildChild::Create(int value, - int other_value, - int other_other_value) { +CefRefPtr< + CefTranslatorTestRefPtrLibraryChildChild> CefTranslatorTestRefPtrLibraryChildChild:: + Create(int value, int other_value, int other_other_value) { shutdown_checker::AssertNotShutdown(); // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING diff --git a/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_child_ctocpp.h b/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_child_ctocpp.h index 91721a654561f..f6a503a2956b1 --- a/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_child_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_child_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=32cd86770e8fac3498f23bff1a0efac7a875997e$ +// $hash=49af27e043172c178c3ef4f37805069e6af739e6$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_TEST_TRANSLATOR_TEST_REF_PTR_LIBRARY_CHILD_CHILD_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_ctocpp.cc b/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_ctocpp.cc index ed17322cde510..17cd2c16deeca --- a/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8559b9fd1e73bb91333d687174f5730e67f1f0f2$ +// $hash=f6e8f53e06ca266f08582a01a75da91669335bb4$ // #include "libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_ctocpp.h" @@ -19,8 +19,9 @@ // STATIC METHODS - Body may be edited by hand. NO_SANITIZE("cfi-icall") -CefRefPtr -CefTranslatorTestRefPtrLibraryChild::Create(int value, int other_value) { +CefRefPtr< + CefTranslatorTestRefPtrLibraryChild> CefTranslatorTestRefPtrLibraryChild:: + Create(int value, int other_value) { shutdown_checker::AssertNotShutdown(); // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING diff --git a/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_ctocpp.h b/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_ctocpp.h index da6b1bcfc8c3c..a5e5b711626ec --- a/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_child_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9d4419c7bdfefd05f890a65b0660459aaf2d09b5$ +// $hash=ef77c876031b14fdee487305c5cfded6a9cb910f$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_TEST_TRANSLATOR_TEST_REF_PTR_LIBRARY_CHILD_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_ctocpp.cc b/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_ctocpp.cc index 9d0f21f5a6257..ba122a70e23ab --- a/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f320ce71f5396e28767dfdb2292c87a8c2396cf8$ +// $hash=9350838bdab0fb5944a83d88f3cdd07485934de3$ // #include "libcef_dll/ctocpp/test/translator_test_ref_ptr_library_ctocpp.h" @@ -20,8 +20,8 @@ // STATIC METHODS - Body may be edited by hand. NO_SANITIZE("cfi-icall") -CefRefPtr -CefTranslatorTestRefPtrLibrary::Create(int value) { +CefRefPtr CefTranslatorTestRefPtrLibrary:: + Create(int value) { shutdown_checker::AssertNotShutdown(); // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING diff --git a/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_ctocpp.h b/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_ctocpp.h index c272ec8dba8df..94ff9da719a4a --- a/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/test/translator_test_ref_ptr_library_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=231daa6fa72550190c115cce1bd560cb6c1bff3d$ +// $hash=9fa8897ee5081b7cd95a6cb791fb69871f61406e$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_TEST_TRANSLATOR_TEST_REF_PTR_LIBRARY_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_client_child_ctocpp.cc b/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_client_child_ctocpp.cc index 2d9a98250d86d..fa073a3022440 --- a/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_client_child_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_client_child_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=fa5ba1bf14400032e49a447b7fe9dbe9cf1ba397$ +// $hash=80f2c8ea70fc27532676263174c3bb9dab73cd7f$ // #include "libcef_dll/ctocpp/test/translator_test_scoped_client_child_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_client_child_ctocpp.h b/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_client_child_ctocpp.h index 7476a3f9cf4a5..36339c17754ef --- a/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_client_child_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_client_child_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=4ab24d3002067939ef0106a8686ca59559b2270e$ +// $hash=ec4bff6137c66581b34dc2ef11beb02276de163a$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_TEST_TRANSLATOR_TEST_SCOPED_CLIENT_CHILD_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_client_ctocpp.cc b/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_client_ctocpp.cc index 3756c08be5082..d07db6f3ca934 --- a/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_client_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_client_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=64d48341c3629153282b16d20e858e8166f6dbbd$ +// $hash=d4be1c7299a237b9c5fc3ef0629e4fc502bd94d5$ // #include "libcef_dll/ctocpp/test/translator_test_scoped_client_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_client_ctocpp.h b/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_client_ctocpp.h index 8ca713b78e3d6..caeaf6941d6fa --- a/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_client_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_client_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d0a9d6ca17834c09fbd63e06ebb38c337dc64f62$ +// $hash=d511f3a8273e4d9c6acff3d183b7bfa84e1385e3$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_TEST_TRANSLATOR_TEST_SCOPED_CLIENT_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_library_child_child_ctocpp.cc b/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_library_child_child_ctocpp.cc index bfeea0faffda6..be5ec972a64a9 --- a/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_library_child_child_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_library_child_child_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=2663f92f7373738d13ee8d194684e6f818afa950$ +// $hash=48599a7413e48d0e2f053aa6fdfdec866387e149$ // #include "libcef_dll/ctocpp/test/translator_test_scoped_library_child_child_ctocpp.h" @@ -17,10 +17,9 @@ // STATIC METHODS - Body may be edited by hand. NO_SANITIZE("cfi-icall") -CefOwnPtr -CefTranslatorTestScopedLibraryChildChild::Create(int value, - int other_value, - int other_other_value) { +CefOwnPtr< + CefTranslatorTestScopedLibraryChildChild> CefTranslatorTestScopedLibraryChildChild:: + Create(int value, int other_value, int other_other_value) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Execute diff --git a/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_library_child_child_ctocpp.h b/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_library_child_child_ctocpp.h index e3e05d1c1a1b2..8b3fd3485db40 --- a/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_library_child_child_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_library_child_child_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d430f8b9888494995d534bac8a61d809acb5fde7$ +// $hash=b6fc182f3444ce3926bff6d2b30d14aeca4cb9ba$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_TEST_TRANSLATOR_TEST_SCOPED_LIBRARY_CHILD_CHILD_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_library_child_ctocpp.cc b/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_library_child_ctocpp.cc index c2d2a73720920..916749490414f --- a/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_library_child_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_library_child_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=cf0153094b5c99af0d2ff0f278da810e13a6d889$ +// $hash=b591e72d8eb23b5ed62a7d877e5a498211fd029f$ // #include "libcef_dll/ctocpp/test/translator_test_scoped_library_child_ctocpp.h" @@ -18,8 +18,9 @@ // STATIC METHODS - Body may be edited by hand. NO_SANITIZE("cfi-icall") -CefOwnPtr -CefTranslatorTestScopedLibraryChild::Create(int value, int other_value) { +CefOwnPtr< + CefTranslatorTestScopedLibraryChild> CefTranslatorTestScopedLibraryChild:: + Create(int value, int other_value) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Execute diff --git a/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_library_child_ctocpp.h b/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_library_child_ctocpp.h index ed77db0d85abf..e4ab2f9ea42ae --- a/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_library_child_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_library_child_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=76f7b6c6e70c1a0e516bb840287553e4163866b7$ +// $hash=954fc390e3b474eedcf0bbb3df41e717c00449d3$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_TEST_TRANSLATOR_TEST_SCOPED_LIBRARY_CHILD_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_library_ctocpp.cc b/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_library_ctocpp.cc index e619944d5e172..2bc97d33bcd92 --- a/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_library_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_library_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a3fd73f0bc089be47e4ebaf9db033d51bebe1498$ +// $hash=75d382a064212122a7aba39519a9ab4bf8e36160$ // #include "libcef_dll/ctocpp/test/translator_test_scoped_library_ctocpp.h" @@ -19,8 +19,8 @@ // STATIC METHODS - Body may be edited by hand. NO_SANITIZE("cfi-icall") -CefOwnPtr -CefTranslatorTestScopedLibrary::Create(int value) { +CefOwnPtr CefTranslatorTestScopedLibrary:: + Create(int value) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Execute diff --git a/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_library_ctocpp.h b/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_library_ctocpp.h index 3ff0bbe1694eb..c40e19efc74b2 --- a/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_library_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/test/translator_test_scoped_library_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=0c47852a4585753b8775a38b380be6f38fe45027$ +// $hash=5fafb4986f557d448f6f234fd49ea899eac81af1$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_TEST_TRANSLATOR_TEST_SCOPED_LIBRARY_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/thread_ctocpp.cc b/src/cef/libcef_dll/ctocpp/thread_ctocpp.cc index 9409fb6c2d5ad..abeaabd45f539 --- a/src/cef/libcef_dll/ctocpp/thread_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/thread_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=207fe292d5fec167e20971c9948d0b183e6b3b20$ +// $hash=20ac33e64e1f0d3ada4403665da43b34c2ae635d$ // #include "libcef_dll/ctocpp/thread_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/thread_ctocpp.h b/src/cef/libcef_dll/ctocpp/thread_ctocpp.h index cfccc6ade380a..5bdc3574ce620 --- a/src/cef/libcef_dll/ctocpp/thread_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/thread_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=44235fe8d735fdbbb7482c647f7779247f43a2f5$ +// $hash=63729fa2f06672498bde63eaa8151b20db9e6fd8$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_THREAD_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/urlrequest_client_ctocpp.cc b/src/cef/libcef_dll/ctocpp/urlrequest_client_ctocpp.cc index 8e6bf46cafb25..4471ec7c1caf5 --- a/src/cef/libcef_dll/ctocpp/urlrequest_client_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/urlrequest_client_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=54962c13fcad1a38aaad37a7dae6744090ebee97$ +// $hash=aff88b737847eb0217c13f396e450ce68c554bb7$ // #include "libcef_dll/ctocpp/urlrequest_client_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/urlrequest_client_ctocpp.h b/src/cef/libcef_dll/ctocpp/urlrequest_client_ctocpp.h index 7cef3061cc6f9..dd081f9c62504 --- a/src/cef/libcef_dll/ctocpp/urlrequest_client_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/urlrequest_client_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=31b2f537bea0b8088a861224b42c313ee87927d6$ +// $hash=50740eddae0ae234cf24d2b73eadcfdb16fcf0f0$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_URLREQUEST_CLIENT_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/urlrequest_ctocpp.cc b/src/cef/libcef_dll/ctocpp/urlrequest_ctocpp.cc index 6acd4a9cd2be2..b754fc9e00288 --- a/src/cef/libcef_dll/ctocpp/urlrequest_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/urlrequest_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d3d0a83754df9a39d8f951ea488dd5417d20e9b2$ +// $hash=eb0b6de22dac921f6fc10121ca33f3dd31ddf6c9$ // #include "libcef_dll/ctocpp/urlrequest_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/urlrequest_ctocpp.h b/src/cef/libcef_dll/ctocpp/urlrequest_ctocpp.h index 5c879dd06436f..7a2bff5eac300 --- a/src/cef/libcef_dll/ctocpp/urlrequest_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/urlrequest_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=896c3b5eea61c12c9101ddc5795ed63125ec3445$ +// $hash=8c953a3dd5cdec5cba6160e848884c2f7c9b3ac6$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_URLREQUEST_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/v8accessor_ctocpp.cc b/src/cef/libcef_dll/ctocpp/v8accessor_ctocpp.cc index 8b6fd3bd718f1..ac60daf2a2712 --- a/src/cef/libcef_dll/ctocpp/v8accessor_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/v8accessor_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c2815712e9960e6850bb646ba0009fe42e8a2624$ +// $hash=5bcd3bf00cfea75a32f61b539fd3232a87b0ccdc$ // #include "libcef_dll/ctocpp/v8accessor_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/v8accessor_ctocpp.h b/src/cef/libcef_dll/ctocpp/v8accessor_ctocpp.h index 6b552a781ea20..45c4de9f41133 --- a/src/cef/libcef_dll/ctocpp/v8accessor_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/v8accessor_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=0c7b83fe013c87d35cf3c944e53ec7afef0ac11a$ +// $hash=1d8a3afd0e6a0344a9c5f6e301b517e5f906c186$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_V8ACCESSOR_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/v8array_buffer_release_callback_ctocpp.cc b/src/cef/libcef_dll/ctocpp/v8array_buffer_release_callback_ctocpp.cc index aa062aa4a61fc..c6f707eb815b2 --- a/src/cef/libcef_dll/ctocpp/v8array_buffer_release_callback_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/v8array_buffer_release_callback_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=04697e01edeb16ce60053867fa2b11d03dec3427$ +// $hash=517e771ec058ffae390f595c0d6d0ff96a24a061$ // #include "libcef_dll/ctocpp/v8array_buffer_release_callback_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/v8array_buffer_release_callback_ctocpp.h b/src/cef/libcef_dll/ctocpp/v8array_buffer_release_callback_ctocpp.h index b1d10766a0916..4a5292531f63a --- a/src/cef/libcef_dll/ctocpp/v8array_buffer_release_callback_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/v8array_buffer_release_callback_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e494919a69c37ed2aa5dcd0f8ddfcbbdafba2ebb$ +// $hash=4f9c4bb702d2824ee94dd334244cd9ba14609025$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_V8ARRAY_BUFFER_RELEASE_CALLBACK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/v8context_ctocpp.cc b/src/cef/libcef_dll/ctocpp/v8context_ctocpp.cc index d6f4bdc054623..476dddcbe9239 --- a/src/cef/libcef_dll/ctocpp/v8context_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/v8context_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8d8c4cf20f877a5eb60b47fb55d938940bb10c82$ +// $hash=ff70a3aece6add8f9947070688135e60258a1f9c$ // #include "libcef_dll/ctocpp/v8context_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/v8context_ctocpp.h b/src/cef/libcef_dll/ctocpp/v8context_ctocpp.h index a261f66cd09c8..7ab4e0bc12a12 --- a/src/cef/libcef_dll/ctocpp/v8context_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/v8context_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b3339627f92d31a68d36574fdd7c85db0842ea63$ +// $hash=c5159f67aa8d77aca23153cf6c35468af27dba14$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_V8CONTEXT_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/v8exception_ctocpp.cc b/src/cef/libcef_dll/ctocpp/v8exception_ctocpp.cc index 374d81edc7d04..6f5e2de514b56 --- a/src/cef/libcef_dll/ctocpp/v8exception_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/v8exception_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=49589f2e4ad8e5598df9411f613dd717fe6a3852$ +// $hash=d3a5834490a381e43d7e56469d850a0dd83b0876$ // #include "libcef_dll/ctocpp/v8exception_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/v8exception_ctocpp.h b/src/cef/libcef_dll/ctocpp/v8exception_ctocpp.h index 3ef82d9064a1f..0256b62f9ec62 --- a/src/cef/libcef_dll/ctocpp/v8exception_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/v8exception_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=4292e466b2740037ad1ce26147fef3138e8d34aa$ +// $hash=ed15db160fa19964fe5c9902c279fa1b44bd0dbe$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_V8EXCEPTION_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/v8handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/v8handler_ctocpp.cc index 47bc30d371f29..78c69c69396b6 --- a/src/cef/libcef_dll/ctocpp/v8handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/v8handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=365e5e2b4e3ced4e615fa504a0cb68c66854fc37$ +// $hash=da3489ef2967a060306d913e06e63759eb7e08d9$ // #include "libcef_dll/ctocpp/v8handler_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/v8handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/v8handler_ctocpp.h index f4acf3ec35a26..cd5a0e42e0d35 --- a/src/cef/libcef_dll/ctocpp/v8handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/v8handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=0207510d301deece41373f5693eaed1a8fd185b8$ +// $hash=442444a8b361b3ce3f599181fe8057d175e1cc20$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_V8HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/v8interceptor_ctocpp.cc b/src/cef/libcef_dll/ctocpp/v8interceptor_ctocpp.cc index 32b52b1f71162..80a18f669acff --- a/src/cef/libcef_dll/ctocpp/v8interceptor_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/v8interceptor_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d466cd3a17a35074eedcb222b9acd2063c297fe2$ +// $hash=12c8d274bc607478d378c501c4c28d6bf61af93b$ // #include "libcef_dll/ctocpp/v8interceptor_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/v8interceptor_ctocpp.h b/src/cef/libcef_dll/ctocpp/v8interceptor_ctocpp.h index f7e646274c0e7..de862c1d32d70 --- a/src/cef/libcef_dll/ctocpp/v8interceptor_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/v8interceptor_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=301ccb6fb65513bc2e6197c7fa1712c5e33f2bcf$ +// $hash=11fbbb5b1de3f96d332ec3653780826677ffcdf2$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_V8INTERCEPTOR_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/v8stack_frame_ctocpp.cc b/src/cef/libcef_dll/ctocpp/v8stack_frame_ctocpp.cc index 009efe1a0814f..809f82da22f39 --- a/src/cef/libcef_dll/ctocpp/v8stack_frame_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/v8stack_frame_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5dad5940fbf85e63683112a937d47dbe52f1b64a$ +// $hash=4b7b77ed27848ada4ef09c9a372d42972e179930$ // #include "libcef_dll/ctocpp/v8stack_frame_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/v8stack_frame_ctocpp.h b/src/cef/libcef_dll/ctocpp/v8stack_frame_ctocpp.h index 0fb8ea2ca6658..474cd1ad6faee --- a/src/cef/libcef_dll/ctocpp/v8stack_frame_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/v8stack_frame_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e088f626fec9b9848e532d704c34ceabb46df3be$ +// $hash=366d110fdfaf3d241c26e9ec276f7c363ecd313f$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_V8STACK_FRAME_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/v8stack_trace_ctocpp.cc b/src/cef/libcef_dll/ctocpp/v8stack_trace_ctocpp.cc index d51002ad6bef9..b7c32ace04fe9 --- a/src/cef/libcef_dll/ctocpp/v8stack_trace_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/v8stack_trace_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=bf78c133604e1535633ac8c93ca153bcefe2718d$ +// $hash=2bd6f8998f43d4212da6b28ac4863763087310ce$ // #include "libcef_dll/ctocpp/v8stack_trace_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/v8stack_trace_ctocpp.h b/src/cef/libcef_dll/ctocpp/v8stack_trace_ctocpp.h index c3b7269bf78ab..1e076ac1321fa --- a/src/cef/libcef_dll/ctocpp/v8stack_trace_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/v8stack_trace_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f2f275b83841463cf102c60380e2b0561f3a749c$ +// $hash=361eefa5a258faf92d09e28787293fa29bbed742$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_V8STACK_TRACE_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/v8value_ctocpp.cc b/src/cef/libcef_dll/ctocpp/v8value_ctocpp.cc index 02607cd3c79ba..b314e53f8ec1a --- a/src/cef/libcef_dll/ctocpp/v8value_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/v8value_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7863f5701d466f8d5a5c91962e14b14b500315a3$ +// $hash=44cb0b037d9dab3bf00531c0bd6e88feb41c6416$ // #include "libcef_dll/ctocpp/v8value_ctocpp.h" @@ -847,8 +847,8 @@ NO_SANITIZE("cfi-icall") int CefV8ValueCToCpp::GetArrayLength() { } NO_SANITIZE("cfi-icall") -CefRefPtr -CefV8ValueCToCpp::GetArrayBufferReleaseCallback() { +CefRefPtr CefV8ValueCToCpp:: + GetArrayBufferReleaseCallback() { cef_v8value_t* _struct = GetStruct(); if (CEF_MEMBER_MISSING(_struct, get_array_buffer_release_callback)) return nullptr; diff --git a/src/cef/libcef_dll/ctocpp/v8value_ctocpp.h b/src/cef/libcef_dll/ctocpp/v8value_ctocpp.h index c8363ea2bb463..c53337a865930 --- a/src/cef/libcef_dll/ctocpp/v8value_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/v8value_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=c9725eb41d50cd0bdbe6f84280e0ed7b62012136$ +// $hash=c8329f6a0ffd01d3e0e3fcb3e07913ac355a508d$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_V8VALUE_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/value_ctocpp.cc b/src/cef/libcef_dll/ctocpp/value_ctocpp.cc index 192c9cfc2eab6..27ca05c2e6b91 --- a/src/cef/libcef_dll/ctocpp/value_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/value_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9f75af2c3d5e4411027b6f26bcc0d31728baed34$ +// $hash=8ef5da831e8fef358361365f434a5719a0829c08$ // #include "libcef_dll/ctocpp/value_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/value_ctocpp.h b/src/cef/libcef_dll/ctocpp/value_ctocpp.h index b03df117330a6..9b31150c63294 --- a/src/cef/libcef_dll/ctocpp/value_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/value_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=4fbbd168e0d26ec54abf2e46808ab98da1900f5c$ +// $hash=80621c9fcd1e112984ddb490da40034e9731d530$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_VALUE_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/views/box_layout_ctocpp.cc b/src/cef/libcef_dll/ctocpp/views/box_layout_ctocpp.cc index b8787d66c02c0..8bb6ef9bd83cf --- a/src/cef/libcef_dll/ctocpp/views/box_layout_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/views/box_layout_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=40ce0ebcedcd5995a5a3147049e5b34c016b8519$ +// $hash=af4061bbf8813e143420ebc4a45b81e43acc6803$ // #include "libcef_dll/ctocpp/views/box_layout_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/views/box_layout_ctocpp.h b/src/cef/libcef_dll/ctocpp/views/box_layout_ctocpp.h index 82879c8cf1be4..6639e642f2cec --- a/src/cef/libcef_dll/ctocpp/views/box_layout_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/views/box_layout_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=0d208d785b4fa84ba2e9f8245911d1a47f5e206c$ +// $hash=c14b6372ec4705cdcbcebc6d7367fe0c3c544001$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_VIEWS_BOX_LAYOUT_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/views/browser_view_ctocpp.cc b/src/cef/libcef_dll/ctocpp/views/browser_view_ctocpp.cc index 3657097b086a7..0df141ea86477 --- a/src/cef/libcef_dll/ctocpp/views/browser_view_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/views/browser_view_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d7787cf791b4b19620257f295112feb3d3c40f24$ +// $hash=fcf1f54e5758c61ccbaea88fc133c88755915eaa$ // #include "libcef_dll/ctocpp/views/browser_view_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/views/browser_view_ctocpp.h b/src/cef/libcef_dll/ctocpp/views/browser_view_ctocpp.h index 88599fe62488b..526b63fdf3480 --- a/src/cef/libcef_dll/ctocpp/views/browser_view_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/views/browser_view_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8744854c12c6ea110a5a6eb4f15ccd5b5867c1d1$ +// $hash=3369ae36dfebd0283661566cf91fa57dbfec29e4$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_VIEWS_BROWSER_VIEW_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/views/browser_view_delegate_ctocpp.cc b/src/cef/libcef_dll/ctocpp/views/browser_view_delegate_ctocpp.cc index 6d3dae0eb3d25..6ba31f51a0278 --- a/src/cef/libcef_dll/ctocpp/views/browser_view_delegate_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/views/browser_view_delegate_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=379974b466cf5b511906b6492c7fa594a26e4d33$ +// $hash=cef68f9f361591f91495436c08d0f5e07738a594$ // #include "libcef_dll/ctocpp/views/browser_view_delegate_ctocpp.h" @@ -75,12 +75,11 @@ void CefBrowserViewDelegateCToCpp::OnBrowserDestroyed( } NO_SANITIZE("cfi-icall") -CefRefPtr -CefBrowserViewDelegateCToCpp::GetDelegateForPopupBrowserView( - CefRefPtr browser_view, - const CefBrowserSettings& settings, - CefRefPtr client, - bool is_devtools) { +CefRefPtr CefBrowserViewDelegateCToCpp:: + GetDelegateForPopupBrowserView(CefRefPtr browser_view, + const CefBrowserSettings& settings, + CefRefPtr client, + bool is_devtools) { shutdown_checker::AssertNotShutdown(); cef_browser_view_delegate_t* _struct = GetStruct(); @@ -141,7 +140,7 @@ bool CefBrowserViewDelegateCToCpp::OnPopupBrowserViewCreated( NO_SANITIZE("cfi-icall") CefBrowserViewDelegate::ChromeToolbarType -CefBrowserViewDelegateCToCpp::GetChromeToolbarType() { + CefBrowserViewDelegateCToCpp::GetChromeToolbarType() { shutdown_checker::AssertNotShutdown(); cef_browser_view_delegate_t* _struct = GetStruct(); @@ -158,8 +157,8 @@ CefBrowserViewDelegateCToCpp::GetChromeToolbarType() { } NO_SANITIZE("cfi-icall") -CefSize CefBrowserViewDelegateCToCpp::GetPreferredSize( - CefRefPtr view) { +CefSize + CefBrowserViewDelegateCToCpp::GetPreferredSize(CefRefPtr view) { shutdown_checker::AssertNotShutdown(); cef_view_delegate_t* _struct = diff --git a/src/cef/libcef_dll/ctocpp/views/browser_view_delegate_ctocpp.h b/src/cef/libcef_dll/ctocpp/views/browser_view_delegate_ctocpp.h index 50666b217f1e4..bc1abf588bf87 --- a/src/cef/libcef_dll/ctocpp/views/browser_view_delegate_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/views/browser_view_delegate_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5aabb450064c183478e8cbcd7b96a9d308bc5c59$ +// $hash=ae219b09b69d7a49f48878a5d2f94b25c9b4150b$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_VIEWS_BROWSER_VIEW_DELEGATE_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/views/button_ctocpp.cc b/src/cef/libcef_dll/ctocpp/views/button_ctocpp.cc index c373691ccefb1..ca0607677ad0f --- a/src/cef/libcef_dll/ctocpp/views/button_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/views/button_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9b1509d1105e3075a13563aa5e892833abcda54a$ +// $hash=b36bf494f49f9a3e0af4388a2c9121c6647b847e$ // #include "libcef_dll/ctocpp/views/button_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/views/button_ctocpp.h b/src/cef/libcef_dll/ctocpp/views/button_ctocpp.h index 452a6d8d9ce76..4f4362ee59448 --- a/src/cef/libcef_dll/ctocpp/views/button_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/views/button_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b09c6865b321dbc52440a306dabdf0357bf41a12$ +// $hash=d6be48f8326ec9e541ace36d0b467cf6b1fbc065$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_VIEWS_BUTTON_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/views/button_delegate_ctocpp.cc b/src/cef/libcef_dll/ctocpp/views/button_delegate_ctocpp.cc index 1e977ec2f6b96..97d9c545e553f --- a/src/cef/libcef_dll/ctocpp/views/button_delegate_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/views/button_delegate_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e7844e97f29fe0bcda8380932ceaa7581539d0e3$ +// $hash=5466f1b16dbdad0fc520275d84d73310bf31e963$ // #include "libcef_dll/ctocpp/views/button_delegate_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/views/button_delegate_ctocpp.h b/src/cef/libcef_dll/ctocpp/views/button_delegate_ctocpp.h index 386a3603d913b..a01a96bde6ba4 --- a/src/cef/libcef_dll/ctocpp/views/button_delegate_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/views/button_delegate_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=3c5fbabd7adf7390101cc03058bdcac3077c26c8$ +// $hash=13140a32b465eaf52f13693cd244a9b47eda5068$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_VIEWS_BUTTON_DELEGATE_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/views/display_ctocpp.cc b/src/cef/libcef_dll/ctocpp/views/display_ctocpp.cc index 9a6477c2e217a..5c8b9ae115139 --- a/src/cef/libcef_dll/ctocpp/views/display_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/views/display_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ba41b36a0cdd335f2a964665576aaf50d8be9c55$ +// $hash=accae5014ef5a4a426a88ae7bed580523b9f336c$ // #include "libcef_dll/ctocpp/views/display_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/views/display_ctocpp.h b/src/cef/libcef_dll/ctocpp/views/display_ctocpp.h index e3e5d5da67f09..5d12545d52d5f --- a/src/cef/libcef_dll/ctocpp/views/display_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/views/display_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=adc1770d93c4e52a56e98f105877cbad5c76194a$ +// $hash=a05d5f989630c0c031cbe9cc04150a6e1e54c4d4$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_VIEWS_DISPLAY_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/views/fill_layout_ctocpp.cc b/src/cef/libcef_dll/ctocpp/views/fill_layout_ctocpp.cc index b8de0a3a702fd..eca2fb2aa320c --- a/src/cef/libcef_dll/ctocpp/views/fill_layout_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/views/fill_layout_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=dafea3abdc32cc7dd8552bbdf5bd2bb32e816c5f$ +// $hash=ef008b233715e98fdf22b4bf4ca1017f010eff85$ // #include "libcef_dll/ctocpp/views/fill_layout_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/views/fill_layout_ctocpp.h b/src/cef/libcef_dll/ctocpp/views/fill_layout_ctocpp.h index f2c36d784ce86..06b0380cf5dd5 --- a/src/cef/libcef_dll/ctocpp/views/fill_layout_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/views/fill_layout_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=effe4fbabbcfadf905b0161c564956213ee435e5$ +// $hash=5d52b0af136f7ac008cb89a29ce65942932b9f64$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_VIEWS_FILL_LAYOUT_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/views/label_button_ctocpp.cc b/src/cef/libcef_dll/ctocpp/views/label_button_ctocpp.cc index b379353b661e3..003451772fa8f --- a/src/cef/libcef_dll/ctocpp/views/label_button_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/views/label_button_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f9884f731b221f0c84234fd775cd480ab9ae9869$ +// $hash=64550f9a864524533748f687a69fc0511096fc3a$ // #include "libcef_dll/ctocpp/views/label_button_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/views/label_button_ctocpp.h b/src/cef/libcef_dll/ctocpp/views/label_button_ctocpp.h index 37078e9a31f8c..d7f20dcd4d445 --- a/src/cef/libcef_dll/ctocpp/views/label_button_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/views/label_button_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=db354914ca0dfe61f4adcc196c25c38b2ad13239$ +// $hash=e54619e16a7a8f21cdeeb4ddfcedf3504c258d35$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_VIEWS_LABEL_BUTTON_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/views/layout_ctocpp.cc b/src/cef/libcef_dll/ctocpp/views/layout_ctocpp.cc index f33604442025e..50d2afb4cffe0 --- a/src/cef/libcef_dll/ctocpp/views/layout_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/views/layout_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6607a4c252dafd39ba695b5d4ecfb14286d70672$ +// $hash=3d1194096844ca83c22e87918069ece5d50385ee$ // #include "libcef_dll/ctocpp/views/layout_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/views/layout_ctocpp.h b/src/cef/libcef_dll/ctocpp/views/layout_ctocpp.h index eeba37dfed67c..6ffa76d339831 --- a/src/cef/libcef_dll/ctocpp/views/layout_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/views/layout_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=383da9e4acb10aa03e8e250505cae2738bbe7fec$ +// $hash=f50cae9c7f44f282497cff43e8b89fc76f60e51b$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_VIEWS_LAYOUT_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/views/menu_button_ctocpp.cc b/src/cef/libcef_dll/ctocpp/views/menu_button_ctocpp.cc index 6070861fd57ac..90700bac26b88 --- a/src/cef/libcef_dll/ctocpp/views/menu_button_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/views/menu_button_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6821e9d7130f828fba356cd7a7980f638c8ecf3e$ +// $hash=69ea7e37a9c8d66f5347571ae8064ccc15c20d2d$ // #include "libcef_dll/ctocpp/views/menu_button_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/views/menu_button_ctocpp.h b/src/cef/libcef_dll/ctocpp/views/menu_button_ctocpp.h index 8e7a98425313b..77293750d9b62 --- a/src/cef/libcef_dll/ctocpp/views/menu_button_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/views/menu_button_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=41f123659afc521684bb6b273ab831944efc4611$ +// $hash=0323c84d6099ab582a71a40f8065013cecc126cd$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_VIEWS_MENU_BUTTON_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/views/menu_button_delegate_ctocpp.cc b/src/cef/libcef_dll/ctocpp/views/menu_button_delegate_ctocpp.cc index 96a1148784c8c..44bacb39825d2 --- a/src/cef/libcef_dll/ctocpp/views/menu_button_delegate_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/views/menu_button_delegate_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=795437425153e56d1c82e30510922399fef0c673$ +// $hash=0bf2d621b4aa5a6dbb14596ddded68005327afa7$ // #include "libcef_dll/ctocpp/views/menu_button_delegate_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/views/menu_button_delegate_ctocpp.h b/src/cef/libcef_dll/ctocpp/views/menu_button_delegate_ctocpp.h index c2d460af8e6fe..f89062917e7a2 --- a/src/cef/libcef_dll/ctocpp/views/menu_button_delegate_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/views/menu_button_delegate_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7f1b296579f263cdcb5ac00105e53c32e2d89f4c$ +// $hash=962c2d2bc800670d19838fa2a34ab4faa8203531$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_VIEWS_MENU_BUTTON_DELEGATE_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/views/menu_button_pressed_lock_ctocpp.cc b/src/cef/libcef_dll/ctocpp/views/menu_button_pressed_lock_ctocpp.cc index 3d9127cafb57c..313832fd141f6 --- a/src/cef/libcef_dll/ctocpp/views/menu_button_pressed_lock_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/views/menu_button_pressed_lock_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=684914b489c5d322b41d61d46f5d387675da2c30$ +// $hash=52df98f1359e9a8e231ec9e2555bc883e1fa84b5$ // #include "libcef_dll/ctocpp/views/menu_button_pressed_lock_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/views/menu_button_pressed_lock_ctocpp.h b/src/cef/libcef_dll/ctocpp/views/menu_button_pressed_lock_ctocpp.h index fed9e9be2f36f..3a2ce082be0a5 --- a/src/cef/libcef_dll/ctocpp/views/menu_button_pressed_lock_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/views/menu_button_pressed_lock_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ea81c8b651b803c0d78b06a850c409da3e632b44$ +// $hash=8c0bc19bcd5b9f53b0ee556fb0117e9a6115eb7f$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_VIEWS_MENU_BUTTON_PRESSED_LOCK_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/views/overlay_controller_ctocpp.cc b/src/cef/libcef_dll/ctocpp/views/overlay_controller_ctocpp.cc index 0ad5892d95db4..a95a482be57b0 --- a/src/cef/libcef_dll/ctocpp/views/overlay_controller_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/views/overlay_controller_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=60978f71bb9089d32a89bed17af584bd83a4678d$ +// $hash=2c07307d7ad63e5a1bc7a223f8135f01d2d967a8$ // #include "libcef_dll/ctocpp/views/overlay_controller_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/views/overlay_controller_ctocpp.h b/src/cef/libcef_dll/ctocpp/views/overlay_controller_ctocpp.h index 2d974bee15e4c..e8c47e0c085ab --- a/src/cef/libcef_dll/ctocpp/views/overlay_controller_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/views/overlay_controller_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7e1c98d4417c831dc850f36bc6ac20d95cd03dab$ +// $hash=a8dd9d8eb796f499231143866c2d8f45e9b25d0c$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_VIEWS_OVERLAY_CONTROLLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/views/panel_ctocpp.cc b/src/cef/libcef_dll/ctocpp/views/panel_ctocpp.cc index b449a3ac83ba1..15191a6f097a6 --- a/src/cef/libcef_dll/ctocpp/views/panel_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/views/panel_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7989301b819a52e8c965774e5c073d5c480a599b$ +// $hash=a96ee723ef03fc68ba5be2ca18eb9865ad7af01d$ // #include "libcef_dll/ctocpp/views/panel_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/views/panel_ctocpp.h b/src/cef/libcef_dll/ctocpp/views/panel_ctocpp.h index 399f001e8ddef..ee6410be3d7cf --- a/src/cef/libcef_dll/ctocpp/views/panel_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/views/panel_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=409d4b16fb5d1dcc66c8553ed2fdd8b6465c8664$ +// $hash=c0c4823d1084bd1ea4f2065e93b51a56718bed87$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_VIEWS_PANEL_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/views/panel_delegate_ctocpp.cc b/src/cef/libcef_dll/ctocpp/views/panel_delegate_ctocpp.cc index 4805de5ec1467..9a81e49b56ce7 --- a/src/cef/libcef_dll/ctocpp/views/panel_delegate_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/views/panel_delegate_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=ed477592fb540c789eef4309e7af5f40319bc4b9$ +// $hash=fd199dc9e98a7880b1f5c057bb0f16934809223d$ // #include "libcef_dll/ctocpp/views/panel_delegate_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/views/panel_delegate_ctocpp.h b/src/cef/libcef_dll/ctocpp/views/panel_delegate_ctocpp.h index b016340e0d2ff..62fd16d8a1c08 --- a/src/cef/libcef_dll/ctocpp/views/panel_delegate_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/views/panel_delegate_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=0a0bf21c7be5169ab5ba891ba25b7b78b317e9aa$ +// $hash=dcad633b9f91da4e5b08cfa8be122b6797211b46$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_VIEWS_PANEL_DELEGATE_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/views/scroll_view_ctocpp.cc b/src/cef/libcef_dll/ctocpp/views/scroll_view_ctocpp.cc index 08c91970b92f4..ef75880e7ef59 --- a/src/cef/libcef_dll/ctocpp/views/scroll_view_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/views/scroll_view_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=177ae72af2cb2658ab48041dfefde9f492e4a5d5$ +// $hash=0d4d7202f3053150bfee7380d3dbc9ef596683f9$ // #include "libcef_dll/ctocpp/views/scroll_view_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/views/scroll_view_ctocpp.h b/src/cef/libcef_dll/ctocpp/views/scroll_view_ctocpp.h index 2182ae958c388..5ceb93da79d1d --- a/src/cef/libcef_dll/ctocpp/views/scroll_view_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/views/scroll_view_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6160a050b665423f41dfea54b38fade96dc2031f$ +// $hash=3a3c2eee1765f8a1d86044eadc75eca9c6fae25f$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_VIEWS_SCROLL_VIEW_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/views/textfield_ctocpp.cc b/src/cef/libcef_dll/ctocpp/views/textfield_ctocpp.cc index 0d8df0d31f1f6..9d5f7749d74cf --- a/src/cef/libcef_dll/ctocpp/views/textfield_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/views/textfield_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=3268a6e6475c3fbddcf6c83016ca3aae1d4a7c4c$ +// $hash=be5f51e38820266a08248e602443902b3e2e3d78$ // #include "libcef_dll/ctocpp/views/textfield_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/views/textfield_ctocpp.h b/src/cef/libcef_dll/ctocpp/views/textfield_ctocpp.h index 95445e66cf0d1..3325a22a06efe --- a/src/cef/libcef_dll/ctocpp/views/textfield_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/views/textfield_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=d96b3c829c698c7919bcaa4dd9b4f94d8800e6dc$ +// $hash=cdc3237fbd889409f8e9aa2116689a3e1c1229c7$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_VIEWS_TEXTFIELD_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/views/textfield_delegate_ctocpp.cc b/src/cef/libcef_dll/ctocpp/views/textfield_delegate_ctocpp.cc index 7e19121bf9d5e..58731eff3ecf4 --- a/src/cef/libcef_dll/ctocpp/views/textfield_delegate_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/views/textfield_delegate_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a7787d39e5f102f937542ace81de0277affab1a4$ +// $hash=a449fb206fdd029cb72f6ad02b87b6285a5b8e1f$ // #include "libcef_dll/ctocpp/views/textfield_delegate_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/views/textfield_delegate_ctocpp.h b/src/cef/libcef_dll/ctocpp/views/textfield_delegate_ctocpp.h index 84a0e4d537958..76d15eee7b299 --- a/src/cef/libcef_dll/ctocpp/views/textfield_delegate_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/views/textfield_delegate_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=63cc6f84be6ad62ccba2b91cc6159275e1cd7dd8$ +// $hash=65dedd950d154a0125b094bb1488e787726545cb$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_VIEWS_TEXTFIELD_DELEGATE_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/views/view_ctocpp.cc b/src/cef/libcef_dll/ctocpp/views/view_ctocpp.cc index 5a552c592b7b8..8bd16caba8be8 --- a/src/cef/libcef_dll/ctocpp/views/view_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/views/view_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=61c3b208f3a1907b483198a0a62ae9b45d9e56a3$ +// $hash=b4edd50d32a796ff0b2eb2a735e2ce2c9ff6e147$ // #include "libcef_dll/ctocpp/views/view_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/views/view_ctocpp.h b/src/cef/libcef_dll/ctocpp/views/view_ctocpp.h index 9e658f064e8ad..65b2cc07dcb64 --- a/src/cef/libcef_dll/ctocpp/views/view_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/views/view_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=8f99bf38ab96b2ffa22f43891d01c61f73aafaf3$ +// $hash=5af9a065bd30e46fad816250442dd6b3d31834fd$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_VIEWS_VIEW_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/views/view_delegate_ctocpp.cc b/src/cef/libcef_dll/ctocpp/views/view_delegate_ctocpp.cc index 3ea7e06109ba4..b54e3db41ab73 --- a/src/cef/libcef_dll/ctocpp/views/view_delegate_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/views/view_delegate_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=394bf2a5f6f5898787c498b91bcf8375099eae47$ +// $hash=9a731e4edfb8ed9c3a03fa56597f02cae87c1972$ // #include "libcef_dll/ctocpp/views/view_delegate_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/views/view_delegate_ctocpp.h b/src/cef/libcef_dll/ctocpp/views/view_delegate_ctocpp.h index ee10966f6a77c..2a8024bf78e9f --- a/src/cef/libcef_dll/ctocpp/views/view_delegate_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/views/view_delegate_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9202d1b2cd26906df4c5574f9f3a1c662ab2e82f$ +// $hash=c433d8e9462e7a948338bfe9192f247fdc253614$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_VIEWS_VIEW_DELEGATE_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/views/window_ctocpp.cc b/src/cef/libcef_dll/ctocpp/views/window_ctocpp.cc index 145fa125d7709..6aa50b21161a8 --- a/src/cef/libcef_dll/ctocpp/views/window_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/views/window_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=a71d84e671749331e5ad99c84ef790f09613b145$ +// $hash=a4c6dd54b71d800640730d4bc5d643c4293d783d$ // #include "libcef_dll/ctocpp/views/window_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/views/window_ctocpp.h b/src/cef/libcef_dll/ctocpp/views/window_ctocpp.h index dfdc0c68677b5..58fd19e326d2e --- a/src/cef/libcef_dll/ctocpp/views/window_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/views/window_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5afd032b23745d114bc95d45139cf5d92a82f89a$ +// $hash=a16d73107ffbbcdb06153c0bfcc5e4ac43bbadb0$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_VIEWS_WINDOW_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/views/window_delegate_ctocpp.cc b/src/cef/libcef_dll/ctocpp/views/window_delegate_ctocpp.cc index 2e71f32ebad07..551ebe1abe203 --- a/src/cef/libcef_dll/ctocpp/views/window_delegate_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/views/window_delegate_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=557b305c33b5975b197bf930cc223f76b3032288$ +// $hash=675b3f340d14d93d1de6b340c862bdce4893a067$ // #include "libcef_dll/ctocpp/views/window_delegate_ctocpp.h" @@ -128,8 +128,8 @@ CefRect CefWindowDelegateCToCpp::GetInitialBounds(CefRefPtr window) { } NO_SANITIZE("cfi-icall") -cef_show_state_t CefWindowDelegateCToCpp::GetInitialShowState( - CefRefPtr window) { +cef_show_state_t + CefWindowDelegateCToCpp::GetInitialShowState(CefRefPtr window) { shutdown_checker::AssertNotShutdown(); cef_window_delegate_t* _struct = GetStruct(); diff --git a/src/cef/libcef_dll/ctocpp/views/window_delegate_ctocpp.h b/src/cef/libcef_dll/ctocpp/views/window_delegate_ctocpp.h index 5071dea81ef78..a4ff6ff2f0fbc --- a/src/cef/libcef_dll/ctocpp/views/window_delegate_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/views/window_delegate_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=e61d67d8295c9fcc3e801bf61f4381434924940c$ +// $hash=0cf526c263eb14e6cc17a0664ffe57ca476c4e81$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_VIEWS_WINDOW_DELEGATE_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/waitable_event_ctocpp.cc b/src/cef/libcef_dll/ctocpp/waitable_event_ctocpp.cc index 175fe0601c11c..a447bf4318252 --- a/src/cef/libcef_dll/ctocpp/waitable_event_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/waitable_event_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=4d16f6afcc06cee186ba3aa5752dc5933e6b57f4$ +// $hash=f090fd5026cecf6e847f27909418f1dd76fec64f$ // #include "libcef_dll/ctocpp/waitable_event_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/waitable_event_ctocpp.h b/src/cef/libcef_dll/ctocpp/waitable_event_ctocpp.h index 8b31f5406be6a..7cd6e03c78c0b --- a/src/cef/libcef_dll/ctocpp/waitable_event_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/waitable_event_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=519f7aab2913629ad5ac8ebcf228abd14b816ade$ +// $hash=ea92b8c5871694e9c32c29a5d554774afe7aa3dd$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_WAITABLE_EVENT_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/web_message_receiver_ctocpp.cc b/src/cef/libcef_dll/ctocpp/web_message_receiver_ctocpp.cc new file mode 100644 index 0000000000000..79426527c8d80 --- /dev/null +++ b/src/cef/libcef_dll/ctocpp/web_message_receiver_ctocpp.cc @@ -0,0 +1,64 @@ +// 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. +// +// --------------------------------------------------------------------------- +// +// This file was generated by the CEF translator tool. If making changes by +// hand only do so within the body of existing method and function +// implementations. See the translator.README.txt file in the tools directory +// for more information. +// +// $hash=d9376a2376082b68ec98decd89eb8100fdf7093c$ +// + +#include "libcef_dll/ctocpp/web_message_receiver_ctocpp.h" +#include "libcef_dll/cpptoc/value_cpptoc.h" +#include "libcef_dll/shutdown_checker.h" + +// VIRTUAL METHODS - Body may be edited by hand. + +NO_SANITIZE("cfi-icall") +void CefWebMessageReceiverCToCpp::OnMessage(CefRefPtr message) { + shutdown_checker::AssertNotShutdown(); + + cef_web_message_receiver_t* _struct = GetStruct(); + if (CEF_MEMBER_MISSING(_struct, on_message)) + return; + + // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING + + // Verify param: message; type: refptr_diff + DCHECK(message.get()); + if (!message.get()) + return; + + // Execute + _struct->on_message(_struct, CefValueCppToC::Wrap(message)); +} + +// CONSTRUCTOR - Do not edit by hand. + +CefWebMessageReceiverCToCpp::CefWebMessageReceiverCToCpp() {} + +// DESTRUCTOR - Do not edit by hand. + +CefWebMessageReceiverCToCpp::~CefWebMessageReceiverCToCpp() { + shutdown_checker::AssertNotShutdown(); +} + +template <> +cef_web_message_receiver_t* CefCToCppRefCounted< + CefWebMessageReceiverCToCpp, + CefWebMessageReceiver, + cef_web_message_receiver_t>::UnwrapDerived(CefWrapperType type, + CefWebMessageReceiver* c) { + NOTREACHED() << "Unexpected class type: " << type; + return nullptr; +} + +template <> +CefWrapperType CefCToCppRefCounted::kWrapperType = + WT_WEB_MESSAGE_RECEIVER; diff --git a/src/cef/libcef_dll/ctocpp/web_message_receiver_ctocpp.h b/src/cef/libcef_dll/ctocpp/web_message_receiver_ctocpp.h new file mode 100644 index 0000000000000..dc06b05f5f4a6 --- /dev/null +++ b/src/cef/libcef_dll/ctocpp/web_message_receiver_ctocpp.h @@ -0,0 +1,43 @@ +// 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. +// +// --------------------------------------------------------------------------- +// +// This file was generated by the CEF translator tool. If making changes by +// hand only do so within the body of existing method and function +// implementations. See the translator.README.txt file in the tools directory +// for more information. +// +// $hash=89209c202ff223f2f20cb3490518bfaceda224ca$ +// + +#ifndef CEF_LIBCEF_DLL_CTOCPP_WEB_MESSAGE_RECEIVER_CTOCPP_H_ +#define CEF_LIBCEF_DLL_CTOCPP_WEB_MESSAGE_RECEIVER_CTOCPP_H_ +#pragma once + +#if !defined(BUILDING_CEF_SHARED) +#error This file can be included DLL-side only +#endif + +#include "include/capi/cef_browser_capi.h" +#include "include/capi/cef_client_capi.h" +#include "include/cef_browser.h" +#include "include/cef_client.h" +#include "libcef_dll/ctocpp/ctocpp_ref_counted.h" + +// Wrap a C structure with a C++ class. +// This class may be instantiated and accessed DLL-side only. +class CefWebMessageReceiverCToCpp + : public CefCToCppRefCounted { + public: + CefWebMessageReceiverCToCpp(); + virtual ~CefWebMessageReceiverCToCpp(); + + // CefWebMessageReceiver methods. + void OnMessage(CefRefPtr message) override; +}; + +#endif // CEF_LIBCEF_DLL_CTOCPP_WEB_MESSAGE_RECEIVER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/web_storage_ctocpp.cc b/src/cef/libcef_dll/ctocpp/web_storage_ctocpp.cc index e7bb033dc83dd..3ba293ae3961b --- a/src/cef/libcef_dll/ctocpp/web_storage_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/web_storage_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=4b81eb5261e185b3360dd7de90e5f97dcb6aef86$ +// $hash=c0cf10fdd538681da58a94edcfce6bc4e093df52$ // #include "libcef_dll/ctocpp/web_storage_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/web_storage_ctocpp.h b/src/cef/libcef_dll/ctocpp/web_storage_ctocpp.h index a929a3b8ec4cd..9d6a97a364811 --- a/src/cef/libcef_dll/ctocpp/web_storage_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/web_storage_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=444c0aee423697f9d2747ae46d11d9f28ad01b3d$ +// $hash=f01cdd91598d151bee833a80f50f550adda82d37$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_WEB_STORAGE_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/write_handler_ctocpp.cc b/src/cef/libcef_dll/ctocpp/write_handler_ctocpp.cc index 4efb2d1a7ccba..c25c75393e306 --- a/src/cef/libcef_dll/ctocpp/write_handler_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/write_handler_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=728e5a2aa03b7884d5001f784dcf6bc6fb79254a$ +// $hash=511240eb698a1c0d5f0f75884aaad8658e5a4987$ // #include "libcef_dll/ctocpp/write_handler_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/write_handler_ctocpp.h b/src/cef/libcef_dll/ctocpp/write_handler_ctocpp.h index b302f19cdadf2..8d95983159c0f --- a/src/cef/libcef_dll/ctocpp/write_handler_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/write_handler_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f6c9ec7aa1916be4cc120149c9e174751fc3ea77$ +// $hash=56728a12a3e14ab71d1dee991a7912d5d3c111f6$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_WRITE_HANDLER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/x509cert_principal_ctocpp.cc b/src/cef/libcef_dll/ctocpp/x509cert_principal_ctocpp.cc index 23a7bb776bc2e..fd860fb5878c1 --- a/src/cef/libcef_dll/ctocpp/x509cert_principal_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/x509cert_principal_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=1799aec02f9d2491056fbf3042b4ba89498adaf4$ +// $hash=43754e6fc947d6f008c9471a7a86218fafa84c82$ // #include "libcef_dll/ctocpp/x509cert_principal_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/x509cert_principal_ctocpp.h b/src/cef/libcef_dll/ctocpp/x509cert_principal_ctocpp.h index c0c47d7efd9bd..ff05ec5fdddf0 --- a/src/cef/libcef_dll/ctocpp/x509cert_principal_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/x509cert_principal_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=5462ba22f05a8e8a05aac6cac9d23004767049db$ +// $hash=26c06425ee3d75470177631cff1348e5dc26f946$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_X509CERT_PRINCIPAL_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/x509certificate_ctocpp.cc b/src/cef/libcef_dll/ctocpp/x509certificate_ctocpp.cc index 5dc3e32e1127f..94927a4cb634f --- a/src/cef/libcef_dll/ctocpp/x509certificate_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/x509certificate_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=b5ab278c54b7ed9046b43a7f362a18ebc8bde146$ +// $hash=db3bb173e77431908f255b12791ced7ecf80bd14$ // #include "libcef_dll/ctocpp/x509certificate_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/x509certificate_ctocpp.h b/src/cef/libcef_dll/ctocpp/x509certificate_ctocpp.h index fd09946157b33..32d8e40eedb73 --- a/src/cef/libcef_dll/ctocpp/x509certificate_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/x509certificate_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=eb95efa4bb7e2ca0696f86390fa32f269eedf9f3$ +// $hash=b4c1192c28884415b9f175cde389237b9c8d33da$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_X509CERTIFICATE_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/xml_reader_ctocpp.cc b/src/cef/libcef_dll/ctocpp/xml_reader_ctocpp.cc index 617f05151baba..ab738e26c20a6 --- a/src/cef/libcef_dll/ctocpp/xml_reader_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/xml_reader_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=9fc59c7d9a9acbf92fde0cfceda151c4936c136b$ +// $hash=e5e2325d96c340e29a99e622df97eb792a5dd776$ // #include "libcef_dll/ctocpp/xml_reader_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/xml_reader_ctocpp.h b/src/cef/libcef_dll/ctocpp/xml_reader_ctocpp.h index 8d60d09b45524..281018604842f --- a/src/cef/libcef_dll/ctocpp/xml_reader_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/xml_reader_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=1f6c29938591312a257cfe1b77de830c90b4a6c3$ +// $hash=5f87c82093a6a16e03df00673d2ff20a9f0490d5$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_XML_READER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/ctocpp/zip_reader_ctocpp.cc b/src/cef/libcef_dll/ctocpp/zip_reader_ctocpp.cc index 381241d341798..7f45c50d2b5a6 --- a/src/cef/libcef_dll/ctocpp/zip_reader_ctocpp.cc +++ b/src/cef/libcef_dll/ctocpp/zip_reader_ctocpp.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=f01ac0e38723b8786f115a14dbca8d4d3d1a57bf$ +// $hash=221ec55fd792b8af2ce239763e909b9c61584a5a$ // #include "libcef_dll/ctocpp/zip_reader_ctocpp.h" diff --git a/src/cef/libcef_dll/ctocpp/zip_reader_ctocpp.h b/src/cef/libcef_dll/ctocpp/zip_reader_ctocpp.h index 5ba83082448f3..ae16c72dce20a --- a/src/cef/libcef_dll/ctocpp/zip_reader_ctocpp.h +++ b/src/cef/libcef_dll/ctocpp/zip_reader_ctocpp.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=995930b1262a99fb14a57dc0af908d292434e00b$ +// $hash=ac375946e782fc0665bfd75850bd1f3ce388f186$ // #ifndef CEF_LIBCEF_DLL_CTOCPP_ZIP_READER_CTOCPP_H_ diff --git a/src/cef/libcef_dll/libcef_dll.cc b/src/cef/libcef_dll/libcef_dll.cc index 10519d315ecd4..74f9e4cd89e2a --- a/src/cef/libcef_dll/libcef_dll.cc +++ b/src/cef/libcef_dll/libcef_dll.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=fa04fba704658b02675380bd63d91005c6757d4e$ +// $hash=b4f718eaa15556b762af4f0e6dbc1b55c8e2d83f$ // #include "include/capi/cef_app_capi.h" @@ -25,7 +25,6 @@ #include "include/capi/cef_task_capi.h" #include "include/capi/cef_trace_capi.h" #include "include/capi/cef_v8_capi.h" -#include "include/capi/cef_web_plugin_capi.h" #include "include/capi/test/cef_test_helpers_capi.h" #include "include/cef_app.h" #include "include/cef_crash_util.h" @@ -40,7 +39,6 @@ #include "include/cef_task.h" #include "include/cef_trace.h" #include "include/cef_v8.h" -#include "include/cef_web_plugin.h" #include "include/test/cef_test_helpers.h" #include "libcef_dll/cpptoc/binary_value_cpptoc.h" #include "libcef_dll/cpptoc/command_line_cpptoc.h" @@ -52,8 +50,6 @@ #include "libcef_dll/ctocpp/scheme_handler_factory_ctocpp.h" #include "libcef_dll/ctocpp/task_ctocpp.h" #include "libcef_dll/ctocpp/v8handler_ctocpp.h" -#include "libcef_dll/ctocpp/web_plugin_info_visitor_ctocpp.h" -#include "libcef_dll/ctocpp/web_plugin_unstable_callback_ctocpp.h" #include "libcef_dll/shutdown_checker.h" #include "libcef_dll/transfer_util.h" @@ -840,69 +836,6 @@ CEF_EXPORT int cef_register_extension(const cef_string_t* extension_name, return _retval; } -CEF_EXPORT void cef_visit_web_plugin_info( - struct _cef_web_plugin_info_visitor_t* visitor) { - // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING - - // Verify param: visitor; type: refptr_diff - DCHECK(visitor); - if (!visitor) - return; - - // Execute - CefVisitWebPluginInfo(CefWebPluginInfoVisitorCToCpp::Wrap(visitor)); -} - -CEF_EXPORT void cef_refresh_web_plugins() { - // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING - - // Execute - CefRefreshWebPlugins(); -} - -CEF_EXPORT void cef_unregister_internal_web_plugin(const cef_string_t* path) { - // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING - - // Verify param: path; type: string_byref_const - DCHECK(path); - if (!path) - return; - - // Execute - CefUnregisterInternalWebPlugin(CefString(path)); -} - -CEF_EXPORT void cef_register_web_plugin_crash(const cef_string_t* path) { - // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING - - // Verify param: path; type: string_byref_const - DCHECK(path); - if (!path) - return; - - // Execute - CefRegisterWebPluginCrash(CefString(path)); -} - -CEF_EXPORT void cef_is_web_plugin_unstable( - const cef_string_t* path, - struct _cef_web_plugin_unstable_callback_t* callback) { - // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING - - // Verify param: path; type: string_byref_const - DCHECK(path); - if (!path) - return; - // Verify param: callback; type: refptr_diff - DCHECK(callback); - if (!callback) - return; - - // Execute - CefIsWebPluginUnstable(CefString(path), - CefWebPluginUnstableCallbackCToCpp::Wrap(callback)); -} - CEF_EXPORT void cef_execute_java_script_with_user_gesture_for_tests( struct _cef_frame_t* frame, const cef_string_t* javascript) { diff --git a/src/cef/libcef_dll/views_stub.cc b/src/cef/libcef_dll/views_stub.cc index 5ebce32154fd5..729624165566b --- a/src/cef/libcef_dll/views_stub.cc +++ b/src/cef/libcef_dll/views_stub.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=892496158fbb51c0534dfbdfd4597daef6b21da7$ +// $hash=4e28ddb86e7157c4f04b43c02080c12b0001c6e0$ // #include "include/views/cef_browser_view.h" diff --git a/src/cef/libcef_dll/wrapper/libcef_dll_dylib.cc b/src/cef/libcef_dll/wrapper/libcef_dll_dylib.cc index e6da9f1dd223b..b7c094e621fe4 --- a/src/cef/libcef_dll/wrapper/libcef_dll_dylib.cc +++ b/src/cef/libcef_dll/wrapper/libcef_dll_dylib.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=7185f14aad39a002663816fe05a4990f76d8ad6f$ +// $hash=577c6334f41f1be591969c7789081b002e86b91c$ // #include @@ -26,7 +26,6 @@ #include "include/capi/cef_file_util_capi.h" #include "include/capi/cef_i18n_util_capi.h" #include "include/capi/cef_image_capi.h" -#include "include/capi/cef_media_router_capi.h" #include "include/capi/cef_menu_model_capi.h" #include "include/capi/cef_origin_whitelist_capi.h" #include "include/capi/cef_parser_capi.h" @@ -49,7 +48,6 @@ #include "include/capi/cef_v8_capi.h" #include "include/capi/cef_values_capi.h" #include "include/capi/cef_waitable_event_capi.h" -#include "include/capi/cef_web_plugin_capi.h" #include "include/capi/cef_web_storage_capi.h" #include "include/capi/cef_xml_reader_capi.h" #include "include/capi/cef_zip_reader_capi.h" @@ -173,14 +171,6 @@ typedef int64 (*cef_now_from_system_trace_time_ptr)(); typedef int (*cef_register_extension_ptr)(const cef_string_t*, const cef_string_t*, struct _cef_v8handler_t*); -typedef void (*cef_visit_web_plugin_info_ptr)( - struct _cef_web_plugin_info_visitor_t*); -typedef void (*cef_refresh_web_plugins_ptr)(); -typedef void (*cef_unregister_internal_web_plugin_ptr)(const cef_string_t*); -typedef void (*cef_register_web_plugin_crash_ptr)(const cef_string_t*); -typedef void (*cef_is_web_plugin_unstable_ptr)( - const cef_string_t*, - struct _cef_web_plugin_unstable_callback_t*); typedef void (*cef_execute_java_script_with_user_gesture_for_tests_ptr)( struct _cef_frame_t*, const cef_string_t*); @@ -209,8 +199,6 @@ typedef int (*cef_cookie_manager_create_cef_cookie_ptr)(const cef_string_t*, typedef struct _cef_data_base_t* (*cef_data_base_get_global_ptr)(); typedef struct _cef_drag_data_t* (*cef_drag_data_create_ptr)(); typedef struct _cef_image_t* (*cef_image_create_ptr)(); -typedef struct _cef_media_router_t* (*cef_media_router_get_global_ptr)( - struct _cef_completion_callback_t*); typedef struct _cef_menu_model_t* (*cef_menu_model_create_ptr)( struct _cef_menu_model_delegate_t*); typedef struct _cef_print_settings_t* (*cef_print_settings_create_ptr)(); @@ -573,11 +561,6 @@ struct libcef_pointers { cef_end_tracing_ptr cef_end_tracing; cef_now_from_system_trace_time_ptr cef_now_from_system_trace_time; cef_register_extension_ptr cef_register_extension; - cef_visit_web_plugin_info_ptr cef_visit_web_plugin_info; - cef_refresh_web_plugins_ptr cef_refresh_web_plugins; - cef_unregister_internal_web_plugin_ptr cef_unregister_internal_web_plugin; - cef_register_web_plugin_crash_ptr cef_register_web_plugin_crash; - cef_is_web_plugin_unstable_ptr cef_is_web_plugin_unstable; cef_execute_java_script_with_user_gesture_for_tests_ptr cef_execute_java_script_with_user_gesture_for_tests; cef_browser_host_create_browser_ptr cef_browser_host_create_browser; @@ -590,7 +573,6 @@ struct libcef_pointers { cef_data_base_get_global_ptr cef_data_base_get_global; cef_drag_data_create_ptr cef_drag_data_create; cef_image_create_ptr cef_image_create; - cef_media_router_get_global_ptr cef_media_router_get_global; cef_menu_model_create_ptr cef_menu_model_create; cef_print_settings_create_ptr cef_print_settings_create; cef_process_message_create_ptr cef_process_message_create; @@ -793,11 +775,6 @@ int libcef_init_pointers(const char* path) { INIT_ENTRY(cef_end_tracing); INIT_ENTRY(cef_now_from_system_trace_time); INIT_ENTRY(cef_register_extension); - INIT_ENTRY(cef_visit_web_plugin_info); - INIT_ENTRY(cef_refresh_web_plugins); - INIT_ENTRY(cef_unregister_internal_web_plugin); - INIT_ENTRY(cef_register_web_plugin_crash); - INIT_ENTRY(cef_is_web_plugin_unstable); INIT_ENTRY(cef_execute_java_script_with_user_gesture_for_tests); INIT_ENTRY(cef_browser_host_create_browser); INIT_ENTRY(cef_browser_host_create_browser_sync); @@ -808,7 +785,6 @@ int libcef_init_pointers(const char* path) { INIT_ENTRY(cef_data_base_get_global); INIT_ENTRY(cef_drag_data_create); INIT_ENTRY(cef_image_create); - INIT_ENTRY(cef_media_router_get_global); INIT_ENTRY(cef_menu_model_create); INIT_ENTRY(cef_print_settings_create); INIT_ENTRY(cef_process_message_create); @@ -1112,8 +1088,8 @@ int cef_create_url(const struct _cef_urlparts_t* parts, cef_string_t* url) { } NO_SANITIZE("cfi-icall") -cef_string_userfree_t cef_format_url_for_security_display( - const cef_string_t* origin_url) { +cef_string_userfree_t + cef_format_url_for_security_display(const cef_string_t* origin_url) { return g_libcef_pointers.cef_format_url_for_security_display(origin_url); } @@ -1246,32 +1222,6 @@ int cef_register_extension(const cef_string_t* extension_name, javascript_code, handler); } -NO_SANITIZE("cfi-icall") -void cef_visit_web_plugin_info(struct _cef_web_plugin_info_visitor_t* visitor) { - g_libcef_pointers.cef_visit_web_plugin_info(visitor); -} - -NO_SANITIZE("cfi-icall") void cef_refresh_web_plugins() { - g_libcef_pointers.cef_refresh_web_plugins(); -} - -NO_SANITIZE("cfi-icall") -void cef_unregister_internal_web_plugin(const cef_string_t* path) { - g_libcef_pointers.cef_unregister_internal_web_plugin(path); -} - -NO_SANITIZE("cfi-icall") -void cef_register_web_plugin_crash(const cef_string_t* path) { - g_libcef_pointers.cef_register_web_plugin_crash(path); -} - -NO_SANITIZE("cfi-icall") -void cef_is_web_plugin_unstable( - const cef_string_t* path, - struct _cef_web_plugin_unstable_callback_t* callback) { - g_libcef_pointers.cef_is_web_plugin_unstable(path, callback); -} - NO_SANITIZE("cfi-icall") void cef_execute_java_script_with_user_gesture_for_tests( struct _cef_frame_t* frame, @@ -1339,12 +1289,6 @@ NO_SANITIZE("cfi-icall") struct _cef_image_t* cef_image_create() { return g_libcef_pointers.cef_image_create(); } -NO_SANITIZE("cfi-icall") -struct _cef_media_router_t* cef_media_router_get_global( - struct _cef_completion_callback_t* callback) { - return g_libcef_pointers.cef_media_router_get_global(callback); -} - NO_SANITIZE("cfi-icall") struct _cef_menu_model_t* cef_menu_model_create( struct _cef_menu_model_delegate_t* delegate) { @@ -1611,46 +1555,54 @@ struct _cef_translator_test_t* cef_translator_test_create() { } NO_SANITIZE("cfi-icall") -struct _cef_translator_test_ref_ptr_library_t* -cef_translator_test_ref_ptr_library_create(int value) { +struct + _cef_translator_test_ref_ptr_library_t* cef_translator_test_ref_ptr_library_create( + int value) { return g_libcef_pointers.cef_translator_test_ref_ptr_library_create(value); } NO_SANITIZE("cfi-icall") -struct _cef_translator_test_ref_ptr_library_child_t* -cef_translator_test_ref_ptr_library_child_create(int value, int other_value) { +struct + _cef_translator_test_ref_ptr_library_child_t* cef_translator_test_ref_ptr_library_child_create( + int value, + int other_value) { return g_libcef_pointers.cef_translator_test_ref_ptr_library_child_create( value, other_value); } NO_SANITIZE("cfi-icall") -struct _cef_translator_test_ref_ptr_library_child_child_t* -cef_translator_test_ref_ptr_library_child_child_create(int value, - int other_value, - int other_other_value) { +struct + _cef_translator_test_ref_ptr_library_child_child_t* cef_translator_test_ref_ptr_library_child_child_create( + int value, + int other_value, + int other_other_value) { return g_libcef_pointers .cef_translator_test_ref_ptr_library_child_child_create( value, other_value, other_other_value); } NO_SANITIZE("cfi-icall") -struct _cef_translator_test_scoped_library_t* -cef_translator_test_scoped_library_create(int value) { +struct + _cef_translator_test_scoped_library_t* cef_translator_test_scoped_library_create( + int value) { return g_libcef_pointers.cef_translator_test_scoped_library_create(value); } NO_SANITIZE("cfi-icall") -struct _cef_translator_test_scoped_library_child_t* -cef_translator_test_scoped_library_child_create(int value, int other_value) { +struct + _cef_translator_test_scoped_library_child_t* cef_translator_test_scoped_library_child_create( + int value, + int other_value) { return g_libcef_pointers.cef_translator_test_scoped_library_child_create( value, other_value); } NO_SANITIZE("cfi-icall") -struct _cef_translator_test_scoped_library_child_child_t* -cef_translator_test_scoped_library_child_child_create(int value, - int other_value, - int other_other_value) { +struct + _cef_translator_test_scoped_library_child_child_t* cef_translator_test_scoped_library_child_child_create( + int value, + int other_value, + int other_other_value) { return g_libcef_pointers .cef_translator_test_scoped_library_child_child_create(value, other_value, other_other_value); diff --git a/src/cef/libcef_dll/wrapper/libcef_dll_wrapper.cc b/src/cef/libcef_dll/wrapper/libcef_dll_wrapper.cc index e406eb7608ae8..4d71c68db6f8c --- a/src/cef/libcef_dll/wrapper/libcef_dll_wrapper.cc +++ b/src/cef/libcef_dll/wrapper/libcef_dll_wrapper.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=180ca5b8f789625a725e004aa6768fd5046a3753$ +// $hash=45e769535f300e227783606b108546a49d9aa953$ // #include "include/capi/cef_app_capi.h" @@ -25,7 +25,6 @@ #include "include/capi/cef_task_capi.h" #include "include/capi/cef_trace_capi.h" #include "include/capi/cef_v8_capi.h" -#include "include/capi/cef_web_plugin_capi.h" #include "include/capi/test/cef_test_helpers_capi.h" #include "include/cef_api_hash.h" #include "include/cef_app.h" @@ -41,7 +40,6 @@ #include "include/cef_task.h" #include "include/cef_trace.h" #include "include/cef_v8.h" -#include "include/cef_web_plugin.h" #include "include/test/cef_test_helpers.h" #include "libcef_dll/cpptoc/app_cpptoc.h" #include "libcef_dll/cpptoc/completion_callback_cpptoc.h" @@ -49,8 +47,6 @@ #include "libcef_dll/cpptoc/scheme_handler_factory_cpptoc.h" #include "libcef_dll/cpptoc/task_cpptoc.h" #include "libcef_dll/cpptoc/v8handler_cpptoc.h" -#include "libcef_dll/cpptoc/web_plugin_info_visitor_cpptoc.h" -#include "libcef_dll/cpptoc/web_plugin_unstable_callback_cpptoc.h" #include "libcef_dll/ctocpp/binary_value_ctocpp.h" #include "libcef_dll/ctocpp/command_line_ctocpp.h" #include "libcef_dll/ctocpp/frame_ctocpp.h" @@ -168,7 +164,7 @@ NO_SANITIZE("cfi-icall") CEF_GLOBAL bool CefCrashReportingEnabled() { NO_SANITIZE("cfi-icall") CEF_GLOBAL -void CefSetCrashKeyValue(const CefString& key, const CefString& value) { + void CefSetCrashKeyValue(const CefString& key, const CefString& value) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Verify param: key; type: string_byref_const @@ -323,10 +319,10 @@ NO_SANITIZE("cfi-icall") CEF_GLOBAL bool CefIsRTL() { NO_SANITIZE("cfi-icall") CEF_GLOBAL -bool CefAddCrossOriginWhitelistEntry(const CefString& source_origin, - const CefString& target_protocol, - const CefString& target_domain, - bool allow_target_subdomains) { + bool CefAddCrossOriginWhitelistEntry(const CefString& source_origin, + const CefString& target_protocol, + const CefString& target_domain, + bool allow_target_subdomains) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Verify param: source_origin; type: string_byref_const @@ -350,10 +346,10 @@ bool CefAddCrossOriginWhitelistEntry(const CefString& source_origin, NO_SANITIZE("cfi-icall") CEF_GLOBAL -bool CefRemoveCrossOriginWhitelistEntry(const CefString& source_origin, - const CefString& target_protocol, - const CefString& target_domain, - bool allow_target_subdomains) { + bool CefRemoveCrossOriginWhitelistEntry(const CefString& source_origin, + const CefString& target_protocol, + const CefString& target_domain, + bool allow_target_subdomains) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Verify param: source_origin; type: string_byref_const @@ -414,7 +410,7 @@ CEF_GLOBAL bool CefCreateURL(const CefURLParts& parts, CefString& url) { NO_SANITIZE("cfi-icall") CEF_GLOBAL CefString -CefFormatUrlForSecurityDisplay(const CefString& origin_url) { + CefFormatUrlForSecurityDisplay(const CefString& origin_url) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Verify param: origin_url; type: string_byref_const @@ -452,8 +448,8 @@ CEF_GLOBAL CefString CefGetMimeType(const CefString& extension) { NO_SANITIZE("cfi-icall") CEF_GLOBAL -void CefGetExtensionsForMimeType(const CefString& mime_type, - std::vector& extensions) { + void CefGetExtensionsForMimeType(const CefString& mime_type, + std::vector& extensions) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Verify param: mime_type; type: string_byref_const @@ -607,8 +603,8 @@ CEF_GLOBAL CefRefPtr CefParseJSONAndReturnError( } NO_SANITIZE("cfi-icall") -CEF_GLOBAL CefString CefWriteJSON(CefRefPtr node, - cef_json_writer_options_t options) { +CEF_GLOBAL CefString + CefWriteJSON(CefRefPtr node, cef_json_writer_options_t options) { // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING // Verify param: node; type: refptr_same @@ -806,73 +802,6 @@ CEF_GLOBAL bool CefRegisterExtension(const CefString& extension_name, return _retval ? true : false; } -NO_SANITIZE("cfi-icall") -CEF_GLOBAL -void CefVisitWebPluginInfo(CefRefPtr visitor) { - // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING - - // Verify param: visitor; type: refptr_diff - DCHECK(visitor.get()); - if (!visitor.get()) - return; - - // Execute - cef_visit_web_plugin_info(CefWebPluginInfoVisitorCppToC::Wrap(visitor)); -} - -NO_SANITIZE("cfi-icall") CEF_GLOBAL void CefRefreshWebPlugins() { - // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING - - // Execute - cef_refresh_web_plugins(); -} - -NO_SANITIZE("cfi-icall") -CEF_GLOBAL void CefUnregisterInternalWebPlugin(const CefString& path) { - // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING - - // Verify param: path; type: string_byref_const - DCHECK(!path.empty()); - if (path.empty()) - return; - - // Execute - cef_unregister_internal_web_plugin(path.GetStruct()); -} - -NO_SANITIZE("cfi-icall") -CEF_GLOBAL void CefRegisterWebPluginCrash(const CefString& path) { - // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING - - // Verify param: path; type: string_byref_const - DCHECK(!path.empty()); - if (path.empty()) - return; - - // Execute - cef_register_web_plugin_crash(path.GetStruct()); -} - -NO_SANITIZE("cfi-icall") -CEF_GLOBAL void CefIsWebPluginUnstable( - const CefString& path, - CefRefPtr callback) { - // AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING - - // Verify param: path; type: string_byref_const - DCHECK(!path.empty()); - if (path.empty()) - return; - // Verify param: callback; type: refptr_diff - DCHECK(callback.get()); - if (!callback.get()) - return; - - // Execute - cef_is_web_plugin_unstable( - path.GetStruct(), CefWebPluginUnstableCallbackCppToC::Wrap(callback)); -} - NO_SANITIZE("cfi-icall") CEF_GLOBAL void CefExecuteJavaScriptWithUserGestureForTests( CefRefPtr frame, diff --git a/src/cef/libcef_dll/wrapper_types.h b/src/cef/libcef_dll/wrapper_types.h index 0ee0abdacc054..1ed052157b775 --- a/src/cef/libcef_dll/wrapper_types.h +++ b/src/cef/libcef_dll/wrapper_types.h @@ -1,4 +1,4 @@ -// Copyright (c) 2022 The Chromium Embedded Framework Authors. All rights +// 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. // @@ -9,7 +9,7 @@ // implementations. See the translator.README.txt file in the tools directory // for more information. // -// $hash=6894c8a307f28f26de4baaf4f541637cef7c8d72$ +// $hash=dfb6a82e093895922f6f06700eb74d9d64493c24$ // #ifndef CEF_LIBCEF_DLL_WRAPPER_TYPES_H_ @@ -84,13 +84,6 @@ enum CefWrapperType { WT_LIFE_SPAN_HANDLER, WT_LIST_VALUE, WT_LOAD_HANDLER, - WT_MEDIA_OBSERVER, - WT_MEDIA_ROUTE, - WT_MEDIA_ROUTE_CREATE_CALLBACK, - WT_MEDIA_ROUTER, - WT_MEDIA_SINK, - WT_MEDIA_SINK_DEVICE_INFO_CALLBACK, - WT_MEDIA_SOURCE, WT_MENU_BUTTON, WT_MENU_BUTTON_DELEGATE, WT_MENU_BUTTON_PRESSED_LOCK, @@ -136,6 +129,7 @@ enum CefWrapperType { WT_SCHEME_REGISTRAR, WT_SCROLL_VIEW, WT_SELECT_CLIENT_CERTIFICATE_CALLBACK, + WT_SELECT_POPUP_CALLBACK, WT_SERVER, WT_SERVER_HANDLER, WT_SET_COOKIE_CALLBACK, @@ -174,9 +168,7 @@ enum CefWrapperType { WT_VIEW, WT_VIEW_DELEGATE, WT_WAITABLE_EVENT, - WT_WEB_PLUGIN_INFO, - WT_WEB_PLUGIN_INFO_VISITOR, - WT_WEB_PLUGIN_UNSTABLE_CALLBACK, + WT_WEB_MESSAGE_RECEIVER, WT_WEB_STORAGE, WT_WINDOW, WT_WINDOW_DELEGATE, diff --git a/src/cef/tools/cef_parser.py b/src/cef/tools/cef_parser.py index d624358ad9ecb..743b663002dc1 --- a/src/cef/tools/cef_parser.py +++ b/src/cef/tools/cef_parser.py @@ -406,7 +406,8 @@ _simpletypes = { 'CefDraggableRegion': ['cef_draggable_region_t', 'CefDraggableRegion()'], 'CefThreadId': ['cef_thread_id_t', 'TID_UI'], 'CefTime': ['cef_time_t', 'CefTime()'], - 'CefAudioParameters': ['cef_audio_parameters_t', 'CefAudioParameters()'] + 'CefAudioParameters': ['cef_audio_parameters_t', 'CefAudioParameters()'], + 'CefSelectPopupItem': ['cef_select_popup_item_t', 'CefSelectPopupItem()'] } diff --git a/src/chrome/app/chrome_command_ids.h b/src/chrome/app/chrome_command_ids.h index a2c827a2bb86b..e0c20edd83d1f --- a/src/chrome/app/chrome_command_ids.h +++ b/src/chrome/app/chrome_command_ids.h @@ -9,6 +9,10 @@ #include "build/build_config.h" #include "build/chromeos_buildflags.h" +#if BUILDFLAG(IS_OHOS) +#include "media/media_buildflags.h" +#endif + // This file lists all the command IDs understood by e.g. the browser. // It is used by Windows RC files, Mac NIB files, and other platforms too. @@ -105,7 +109,9 @@ #define IDC_SAVE_CREDIT_CARD_FOR_PAGE 35008 #define IDC_TRANSLATE_PAGE 35009 #define IDC_MANAGE_PASSWORDS_FOR_PAGE 35010 +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) #define IDC_ROUTE_MEDIA 35011 +#endif #define IDC_WINDOW_MUTE_SITE 35012 #define IDC_WINDOW_PIN_TAB 35013 #define IDC_WINDOW_GROUP_TAB 35014 diff --git a/src/chrome/browser/BUILD.gn b/src/chrome/browser/BUILD.gn index 641f9531a6409..2c25dcbca6062 --- a/src/chrome/browser/BUILD.gn +++ b/src/chrome/browser/BUILD.gn @@ -2430,6 +2430,15 @@ static_library("browser") { "//ui/webui/resources/js/browser_command:mojo_bindings", ] + if (is_ohos && !ohos_enable_media_router) { + allow_circular_includes_from -= [ "//chrome/browser/media/router" ] + deps -= [ + "//chrome/browser/media/router", + "//chrome/browser/media/router:media_router_feature", + "//chrome/browser/media/router/discovery/access_code:access_code_cast_feature", + ] + } + if (is_ohos && safe_browsing_mode == 0) { deps -= [ "//chrome/browser/safe_browsing", @@ -4571,6 +4580,12 @@ static_library("browser") { "//chrome/browser/web_applications/app_service", ] + if (is_ohos && !ohos_enable_media_router) { + allow_circular_includes_from -= + [ "//chrome/browser/media/router/discovery:discovery" ] + deps -= [ "//chrome/browser/media/router/discovery:discovery" ] + } + if (!is_chromeos_ash) { sources += [ "accessibility/soda_installer_impl.cc", @@ -6215,7 +6230,7 @@ static_library("browser") { ] } - if (is_win || is_mac || is_linux || is_chromeos || is_fuchsia || is_ohos) { + if (is_win || is_mac || is_linux || is_chromeos || is_fuchsia) { sources += [ "media/cast_mirroring_service_host.cc", "media/cast_mirroring_service_host.h", @@ -7986,7 +8001,7 @@ static_library("test_support") { } } -if (!is_android) { +if (!is_android && !is_ohos) { static_library("test_support_ui") { testonly = true configs += [ "//build/config:precompiled_headers" ] diff --git a/src/chrome/browser/about_flags.cc b/src/chrome/browser/about_flags.cc index 2825190b68c3c..b953aa57be4a3 --- a/src/chrome/browser/about_flags.cc +++ b/src/chrome/browser/about_flags.cc @@ -224,7 +224,9 @@ #include "components/power_scheduler/power_scheduler_features.h" #include "components/webapps/browser/android/features.h" #else // BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) #include "chrome/browser/media/router/media_router_feature.h" +#endif #include "chrome/browser/web_applications/preinstalled_app_install_features.h" #endif // BUILDFLAG(IS_ANDROID) @@ -3776,6 +3778,7 @@ const FeatureEntry kFeatureEntries[] = { switches::kSyncServiceURL, "https://chrome-sync.sandbox.google.com/chrome-sync/alpha")}, #if !BUILDFLAG(IS_ANDROID) +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) {"media-router-cast-allow-all-ips", flag_descriptions::kMediaRouterCastAllowAllIPsName, flag_descriptions::kMediaRouterCastAllowAllIPsDescription, kOsDesktop, @@ -3790,6 +3793,7 @@ const FeatureEntry kFeatureEntries[] = { flag_descriptions::kAllowAllSitesToInitiateMirroringDescription, kOsDesktop, FEATURE_VALUE_TYPE(media_router::kAllowAllSitesToInitiateMirroring)}, +#endif {"enable-migrate-default-chrome-app-to-web-apps-gsuite", flag_descriptions::kEnableMigrateDefaultChromeAppToWebAppsGSuiteName, flag_descriptions:: @@ -5111,11 +5115,13 @@ const FeatureEntry kFeatureEntries[] = { kEnableWebAuthenticationChromeOSAuthenticatorDescription, kOsCrOS, FEATURE_VALUE_TYPE(device::kWebAuthCrosPlatformAuthenticator)}, #endif +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) #if BUILDFLAG(ENABLE_PDF) {"accessible-pdf-form", flag_descriptions::kAccessiblePDFFormName, flag_descriptions::kAccessiblePDFFormDescription, kOsDesktop, FEATURE_VALUE_TYPE(chrome_pdf::features::kAccessiblePDFForm)}, #endif // BUILDFLAG(ENABLE_PDF) +#endif #if BUILDFLAG(ENABLE_PRINTING) #if BUILDFLAG(IS_MAC) diff --git a/src/chrome/browser/apps/platform_apps/BUILD.gn b/src/chrome/browser/apps/platform_apps/BUILD.gn index b3b61dc65cbb1..f16ba3217636b --- a/src/chrome/browser/apps/platform_apps/BUILD.gn +++ b/src/chrome/browser/apps/platform_apps/BUILD.gn @@ -3,6 +3,9 @@ # found in the LICENSE file. import("//extensions/buildflags/buildflags.gni") +if (is_ohos) { + import("//media/media_options.gni") +} assert(enable_extensions) @@ -76,6 +79,10 @@ source_set("platform_apps") { "//ui/gfx", ] + if (is_ohos && !ohos_enable_media_router) { + deps -= [ "//chrome/browser/media/router/discovery" ] + } + if (is_mac) { deps += [ "//chrome/browser/apps/app_shim" ] } diff --git a/src/chrome/browser/cart/cart_handler.cc b/src/chrome/browser/cart/cart_handler.cc index 0904477a5a2a2..d8cebbe267be8 --- a/src/chrome/browser/cart/cart_handler.cc +++ b/src/chrome/browser/cart/cart_handler.cc @@ -65,6 +65,11 @@ void CartHandler::RestoreRemovedCart(const GURL& cart_url, void CartHandler::GetCartDataCallback(GetMerchantCartsCallback callback, bool success, std::vector res) { + DCHECK(success); + if (!success) { + std::move(callback).Run({}); + return; + } std::vector carts; bool show_discount = cart_service_->IsCartDiscountEnabled(); for (CartDB::KeyAndValue proto_pair : res) { diff --git a/src/chrome/browser/cart/cart_service.cc b/src/chrome/browser/cart/cart_service.cc index 4c74929a3443a..c5d88aefcdf02 --- a/src/chrome/browser/cart/cart_service.cc +++ b/src/chrome/browser/cart/cart_service.cc @@ -679,6 +679,11 @@ bool CartService::ShouldSkip(const GURL& url) { void CartService::OnLoadCarts(CartDB::LoadCallback callback, bool success, std::vector proto_pairs) { + DCHECK(success); + if (!success) { + std::move(callback).Run(success, {}); + return; + } if (cart_features::IsFakeDataEnabled()) { std::sort(proto_pairs.begin(), proto_pairs.end(), CompareTimeStampForProtoPair); diff --git a/src/chrome/browser/chrome_browser_interface_binders.cc b/src/chrome/browser/chrome_browser_interface_binders.cc index 6f5c928372ba1..4a3a2cac19367 --- a/src/chrome/browser/chrome_browser_interface_binders.cc +++ b/src/chrome/browser/chrome_browser_interface_binders.cc @@ -128,8 +128,6 @@ #include "chrome/browser/speech/speech_recognition_client_browser_interface.h" #include "chrome/browser/speech/speech_recognition_client_browser_interface_factory.h" #include "chrome/browser/speech/speech_recognition_service.h" -#include "chrome/browser/ui/webui/access_code_cast/access_code_cast.mojom.h" -#include "chrome/browser/ui/webui/access_code_cast/access_code_cast_ui.h" #include "chrome/browser/ui/webui/app_service_internals/app_service_internals.mojom.h" #include "chrome/browser/ui/webui/app_service_internals/app_service_internals_ui.h" #include "chrome/browser/ui/webui/downloads/downloads.mojom.h" @@ -285,6 +283,11 @@ #include "chrome/browser/ui/webui/chromeos/chromebox_for_meetings/network_settings_dialog.h" #endif +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) +#include "chrome/browser/ui/webui/access_code_cast/access_code_cast.mojom.h" +#include "chrome/browser/ui/webui/access_code_cast/access_code_cast_ui.h" +#endif + namespace chrome { namespace internal { @@ -810,8 +813,10 @@ void PopulateChromeWebUIFrameBinders( ::mojom::app_service_internals::AppServiceInternalsPageHandler, AppServiceInternalsUI>(map); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) RegisterWebUIControllerInterfaceBinder< access_code_cast::mojom::PageHandlerFactory, AccessCodeCastUI>(map); +#endif #endif // BUILDFLAG(IS_ANDROID) #if BUILDFLAG(ENABLE_WEBUI_TAB_STRIP) diff --git a/src/chrome/browser/chrome_content_browser_client.cc b/src/chrome/browser/chrome_content_browser_client.cc index 84df69449342c..01aaad5f9acf4 --- a/src/chrome/browser/chrome_content_browser_client.cc +++ b/src/chrome/browser/chrome_content_browser_client.cc @@ -65,7 +65,6 @@ #include "chrome/browser/lifetime/browser_shutdown.h" #include "chrome/browser/lookalikes/lookalike_url_navigation_throttle.h" #include "chrome/browser/media/audio_service_util.h" -#include "chrome/browser/media/router/media_router_feature.h" #include "chrome/browser/media/webrtc/audio_debug_recordings_handler.h" #include "chrome/browser/media/webrtc/media_capture_devices_dispatcher.h" #include "chrome/browser/media/webrtc/webrtc_logging_controller.h" @@ -199,8 +198,6 @@ #include "components/keep_alive_registry/scoped_keep_alive.h" #include "components/language/core/browser/pref_names.h" #include "components/live_caption/caption_util.h" -#include "components/media_router/browser/presentation/presentation_service_delegate_impl.h" -#include "components/media_router/browser/presentation/receiver_presentation_service_delegate_impl.h" #include "components/metrics/client_info.h" #include "components/metrics_services_manager/metrics_services_manager.h" #include "components/net_log/chrome_net_log.h" @@ -617,6 +614,12 @@ #include "base/win/windows_h_disallowed.h" #endif // defined(_WINDOWS_) +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) +#include "chrome/browser/media/router/media_router_feature.h" +#include "components/media_router/browser/presentation/presentation_service_delegate_impl.h" +#include "components/media_router/browser/presentation/receiver_presentation_service_delegate_impl.h" +#endif + using blink::mojom::EffectiveConnectionType; using blink::web_pref::WebPreferences; using content::BrowserThread; @@ -4090,16 +4093,19 @@ void ChromeContentBrowserClient::OpenURL( content::ControllerPresentationServiceDelegate* ChromeContentBrowserClient::GetControllerPresentationServiceDelegate( content::WebContents* web_contents) { +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) if (media_router::MediaRouterEnabled(web_contents->GetBrowserContext())) { return media_router::PresentationServiceDelegateImpl:: GetOrCreateForWebContents(web_contents); } +#endif return nullptr; } content::ReceiverPresentationServiceDelegate* ChromeContentBrowserClient::GetReceiverPresentationServiceDelegate( content::WebContents* web_contents) { +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) if (media_router::MediaRouterEnabled(web_contents->GetBrowserContext())) { // ReceiverPresentationServiceDelegateImpl exists only for WebContents // created for offscreen presentations. The WebContents must belong to @@ -4110,6 +4116,7 @@ ChromeContentBrowserClient::GetReceiverPresentationServiceDelegate( return impl; } } +#endif return nullptr; } diff --git a/src/chrome/browser/devtools/BUILD.gn b/src/chrome/browser/devtools/BUILD.gn index c2f6d9d299627..d030eaffeee05 --- a/src/chrome/browser/devtools/BUILD.gn +++ b/src/chrome/browser/devtools/BUILD.gn @@ -227,6 +227,10 @@ static_library("devtools") { "device/cast_device_provider.h", ] } + + if (is_ohos && !ohos_enable_media_router) { + deps -= [ "//chrome/browser/media/router:media_router_feature" ] + } } if (is_mac) { @@ -269,6 +273,17 @@ static_library("devtools") { deps += [ "//components/printing/browser/print_to_pdf" ] } sources += rebase_path(_protocol_generated, ".", target_gen_dir) + + if (is_ohos && !ohos_enable_media_router) { + sources -= [ + "protocol/cast_handler.cc", + "protocol/cast_handler.h", + ] + deps -= [ + "//components/media_router/browser", + "//components/media_router/common/mojom:media_router", + ] + } } if (enable_extensions) { diff --git a/src/chrome/browser/devtools/chrome_devtools_session.cc b/src/chrome/browser/devtools/chrome_devtools_session.cc index f75c4555a98c1..cd491e6c63d23 --- a/src/chrome/browser/devtools/chrome_devtools_session.cc +++ b/src/chrome/browser/devtools/chrome_devtools_session.cc @@ -10,7 +10,6 @@ #include "base/strings/string_number_conversions.h" #include "build/chromeos_buildflags.h" #include "chrome/browser/devtools/protocol/browser_handler.h" -#include "chrome/browser/devtools/protocol/cast_handler.h" #include "chrome/browser/devtools/protocol/page_handler.h" #include "chrome/browser/devtools/protocol/security_handler.h" #include "chrome/browser/devtools/protocol/target_handler.h" @@ -24,6 +23,10 @@ #include "chrome/browser/devtools/protocol/window_manager_handler.h" #endif +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) +#include "chrome/browser/devtools/protocol/cast_handler.h" +#endif + ChromeDevToolsSession::ChromeDevToolsSession( content::DevToolsAgentHostClientChannel* channel) : dispatcher_(this), client_channel_(channel) { @@ -34,10 +37,12 @@ ChromeDevToolsSession::ChromeDevToolsSession( agent_host, agent_host->GetWebContents(), &dispatcher_); security_handler_ = std::make_unique( agent_host->GetWebContents(), &dispatcher_); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) if (channel->GetClient()->MayAttachToBrowser()) { cast_handler_ = std::make_unique( agent_host->GetWebContents(), &dispatcher_); } +#endif } target_handler_ = std::make_unique(&dispatcher_); if (channel->GetClient()->MayAttachToBrowser()) { diff --git a/src/chrome/browser/devtools/chrome_devtools_session.h b/src/chrome/browser/devtools/chrome_devtools_session.h index 756d84ed0f7fd..9f8059402345c --- a/src/chrome/browser/devtools/chrome_devtools_session.h +++ b/src/chrome/browser/devtools/chrome_devtools_session.h @@ -14,6 +14,10 @@ #include "chrome/browser/devtools/protocol/protocol.h" #include "content/public/browser/devtools_manager_delegate.h" +#if BUILDFLAG(IS_OHOS) +#include "media/media_buildflags.h" +#endif + namespace content { class DevToolsAgentHostClientChannel; } // namespace content @@ -58,7 +62,9 @@ class ChromeDevToolsSession : public protocol::FrontendChannel { protocol::UberDispatcher dispatcher_; std::unique_ptr browser_handler_; +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) std::unique_ptr cast_handler_; +#endif std::unique_ptr page_handler_; std::unique_ptr security_handler_; std::unique_ptr target_handler_; diff --git a/src/chrome/browser/devtools/devtools_browser_context_manager.cc b/src/chrome/browser/devtools/devtools_browser_context_manager.cc index 1981efe98478f..70b604f64524a --- a/src/chrome/browser/devtools/devtools_browser_context_manager.cc +++ b/src/chrome/browser/devtools/devtools_browser_context_manager.cc @@ -13,6 +13,12 @@ #include "chrome/browser/ui/browser_list.h" #include "chrome/browser/ui/browser_window.h" +namespace { + +const int64_t kDestroyProfileTimeoutSeconds = 60; + +} // namespace + DevToolsBrowserContextManager::DevToolsBrowserContextManager() {} DevToolsBrowserContextManager::~DevToolsBrowserContextManager() = default; @@ -87,7 +93,8 @@ void DevToolsBrowserContextManager::DisposeBrowserContext( if (!has_opened_browser) { otr_profiles_.erase(it); profile->RemoveObserver(this); - ProfileDestroyer::DestroyProfileWhenAppropriate(profile); + ProfileDestroyer::DestroyProfileWhenAppropriateWithTimeout( + profile, base::Seconds(kDestroyProfileTimeoutSeconds)); std::move(callback).Run(true, ""); return; } @@ -133,8 +140,10 @@ void DevToolsBrowserContextManager::OnBrowserRemoved(Browser* browser) { // during the browser tear-down process. base::ThreadTaskRunnerHandle::Get()->PostTask( FROM_HERE, - base::BindOnce(&ProfileDestroyer::DestroyProfileWhenAppropriate, - base::Unretained(otr_profile))); + base::BindOnce( + &ProfileDestroyer::DestroyProfileWhenAppropriateWithTimeout, + base::Unretained(otr_profile), + base::Seconds(kDestroyProfileTimeoutSeconds))); std::move(pending_disposal->second).Run(true, ""); pending_context_disposals_.erase(pending_disposal); diff --git a/src/chrome/browser/devtools/devtools_targets_ui.cc b/src/chrome/browser/devtools/devtools_targets_ui.cc index bc4bc3b0a04b8..3bcad847bc1b3 --- a/src/chrome/browser/devtools/devtools_targets_ui.cc +++ b/src/chrome/browser/devtools/devtools_targets_ui.cc @@ -19,12 +19,18 @@ #include "chrome/browser/devtools/device/devtools_android_bridge.h" #include "chrome/browser/devtools/devtools_window.h" #include "chrome/browser/devtools/serialize_host_descriptions.h" -#include "components/media_router/browser/presentation/local_presentation_manager.h" -#include "components/media_router/browser/presentation/local_presentation_manager_factory.h" #include "content/public/browser/browser_thread.h" #include "content/public/browser/devtools_agent_host.h" #include "content/public/browser/devtools_agent_host_observer.h" +#if BUILDFLAG(IS_OHOS) +#include "media/media_buildflags.h" +#if BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) +#include "components/media_router/browser/presentation/local_presentation_manager.h" +#include "components/media_router/browser/presentation/local_presentation_manager_factory.h" +#endif +#endif + using content::BrowserThread; using content::DevToolsAgentHost; @@ -85,7 +91,9 @@ private: bool AllowDevToolsFor(DevToolsAgentHost* host); Profile* profile_; +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) media_router::LocalPresentationManager* local_presentation_manager_; +#endif std::unique_ptr timer_; base::WeakPtrFactory weak_factory_{this}; }; @@ -93,10 +101,15 @@ private: LocalTargetsUIHandler::LocalTargetsUIHandler(const Callback& callback, Profile* profile) : DevToolsTargetsUIHandler(kTargetSourceLocal, callback), - profile_(profile), + profile_(profile) +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) + , local_presentation_manager_( media_router::LocalPresentationManagerFactory:: GetOrCreateForBrowserContext(profile_)) { +#else + { +#endif DevToolsAgentHost::AddObserver(this); UpdateTargets(); } @@ -150,8 +163,12 @@ void LocalTargetsUIHandler::UpdateTargets() { } bool LocalTargetsUIHandler::AllowDevToolsFor(DevToolsAgentHost* host) { +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) return local_presentation_manager_->IsLocalPresentation( host->GetWebContents()) || +#else + return +#endif (Profile::FromBrowserContext(host->GetBrowserContext()) == profile_ && DevToolsWindow::AllowDevToolsFor(profile_, host->GetWebContents())); } diff --git a/src/chrome/browser/downgrade/buildflags.gni b/src/chrome/browser/downgrade/buildflags.gni index dfee39d9b02a4..1fc6d662d899e --- a/src/chrome/browser/downgrade/buildflags.gni +++ b/src/chrome/browser/downgrade/buildflags.gni @@ -6,5 +6,5 @@ import("//build/config/chromeos/ui_mode.gni") import("//build/config/features.gni") declare_args() { - enable_downgrade_processing = !is_android && !is_chromeos_ash + enable_downgrade_processing = !is_android && !is_chromeos_ash && !is_ohos } diff --git a/src/chrome/browser/download/download_target_determiner.cc b/src/chrome/browser/download/download_target_determiner.cc index 17d5e00128633..d68922c9e5bdb --- a/src/chrome/browser/download/download_target_determiner.cc +++ b/src/chrome/browser/download/download_target_determiner.cc @@ -11,6 +11,7 @@ #include "base/location.h" #include "base/rand_util.h" #include "base/strings/stringprintf.h" +#include "base/strings/utf_string_conversions.h" #include "base/task/post_task.h" #include "base/task/single_thread_task_runner.h" #include "base/task/task_runner_util.h" @@ -61,6 +62,7 @@ #if BUILDFLAG(IS_WIN) #include "chrome/browser/ui/pdf/adobe_reader_info_win.h" +#include "ui/shell_dialogs/select_file_utils_win.h" #endif using content::BrowserThread; @@ -89,6 +91,21 @@ void VisitCountsToVisitedBefore(base::OnceCallback callback, bool g_is_adobe_reader_up_to_date_ = false; #endif +// For the `new_path`, generates a new safe file name if needed. Keep its +// extension if it is empty or matches that of the `old_extension`. Otherwise, +// suggest a new safe extension. +void GenerateSafeFileName(base::FilePath* new_path, + const base::FilePath::StringType& old_extension, + const std::string& mime_type) { + DCHECK(new_path); + if (new_path->Extension().empty() || new_path->Extension() == old_extension) { + net::GenerateSafeFileName(std::string() /*mime_type*/, + false /*ignore_extension*/, new_path); + } else { + net::GenerateSafeFileName(mime_type, true /*ignore_extension*/, new_path); + } +} + } // namespace DownloadTargetDeterminerDelegate::~DownloadTargetDeterminerDelegate() { @@ -404,25 +421,22 @@ void DownloadTargetDeterminer::NotifyExtensionsDone( suggested_path).NormalizePathSeparators()); // If this is a local file, don't allow extensions to override its - // extension. + // name. if (download_->GetURL().SchemeIsFile()) { base::FilePath file_path; net::FileURLToFilePath(download_->GetURL(), &file_path); - new_path = new_path.ReplaceExtension(file_path.Extension()); + base::FilePath file_name = file_path.BaseName(); + // Check if file name is a dir. + if (file_name.BaseName() != file_name.DirName()) + new_path = new_path.DirName().Append(file_name); } else { // If the (Chrome) extension does not suggest an file extension, or if the // suggested extension matches that of the |virtual_path_|, do not // pass a mime type to GenerateSafeFileName so that it does not force the // filename to have an extension or generate a different one. Otherwise, // correct the file extension in case it is wrongly given. - if (new_path.Extension().empty() || - new_path.Extension() == virtual_path_.Extension()) { - net::GenerateSafeFileName(std::string() /*mime_type*/, - false /*ignore_extension*/, &new_path); - } else { - net::GenerateSafeFileName(download_->GetMimeType(), - true /*ignore_extension*/, &new_path); - } + GenerateSafeFileName(&new_path, virtual_path_.Extension(), + download_->GetMimeType()); } virtual_path_ = new_path; create_target_directory_ = true; @@ -534,8 +548,24 @@ DownloadTargetDeterminer::DoRequestConfirmation() { // If there is a non-neutral confirmation reason, prompt the user. if (confirmation_reason_ != DownloadConfirmationReason::NONE) { + base::FilePath sanitized_path = virtual_path_; +#if BUILDFLAG(IS_WIN) + // Windows prompt dialog will resolve all env variables in the file name, + // which may generate unexpected results. Remove env variables from the + // file name first. + std::wstring sanitized_name = ui::RemoveEnvVarFromFileName( + virtual_path_.BaseName().value(), L"%"); + if (sanitized_name.empty()) { + sanitized_name = base::UTF8ToWide( + l10n_util::GetStringUTF8(IDS_DEFAULT_DOWNLOAD_FILENAME)); + } + sanitized_path = + virtual_path_.DirName().Append(base::FilePath(sanitized_name)); + GenerateSafeFileName(&sanitized_path, virtual_path_.Extension(), + download_->GetMimeType()); +#endif // BUILDFLAG(IS_WIN) delegate_->RequestConfirmation( - download_, virtual_path_, confirmation_reason_, + download_, sanitized_path, confirmation_reason_, base::BindRepeating( &DownloadTargetDeterminer::RequestConfirmationDone, weak_ptr_factory_.GetWeakPtr())); diff --git a/src/chrome/browser/download/download_target_determiner_unittest.cc b/src/chrome/browser/download/download_target_determiner_unittest.cc index 0e9fe15f421e7..46559bac29b9d --- a/src/chrome/browser/download/download_target_determiner_unittest.cc +++ b/src/chrome/browser/download/download_target_determiner_unittest.cc @@ -1772,6 +1772,32 @@ TEST_F(DownloadTargetDeterminerTest, NotifyExtensionsDefaultPath) { RunTestCase(test_case, base::FilePath(), item.get()); } +// Test that relative paths returned by extensions are always relative to the +// default downloads path. +TEST_F(DownloadTargetDeterminerTest, NotifyExtensionsLocalFile) { + const DownloadTestCase kNotifyExtensionsTestCases[] = { + {AUTOMATIC, download::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS, + DownloadFileType::NOT_DANGEROUS, +#if BUILDFLAG(IS_WIN) + "file:///usr/local/xyz", +#else + "file:///c:/usr/local/xyz", +#endif // BUILDFLAG(IS_WIN) + "text/plain", FILE_PATH_LITERAL(""), + + FILE_PATH_LITERAL("overridden/xyz"), + DownloadItem::TARGET_DISPOSITION_OVERWRITE, + + EXPECT_CRDOWNLOAD}}; + + base::FilePath overridden_path(FILE_PATH_LITERAL("overridden/foo.txt")); + EXPECT_CALL(*delegate(), NotifyExtensions_(_, _, _)) + .WillRepeatedly(WithArg<2>(ScheduleCallback2( + overridden_path, DownloadPathReservationTracker::UNIQUIFY))); + RunTestCasesWithActiveItem(kNotifyExtensionsTestCases, + std::size(kNotifyExtensionsTestCases)); +} + TEST_F(DownloadTargetDeterminerTest, InitialVirtualPathUnsafe) { const base::FilePath::CharType* kInitialPath = FILE_PATH_LITERAL("some_path/bar.html"); @@ -2433,6 +2459,43 @@ TEST_F(DownloadTargetDeterminerTest, TransientDownloadResumption) { histogram_tester.ExpectTotalCount(kTransientPathValidationHistogram, 1); } +#if BUILDFLAG(IS_WIN) +// Test that env variables will be removed from file name before prompting Save +// As dialog. +TEST_F(DownloadTargetDeterminerTest, TestSanitizeEnvVariable) { + const DownloadTestCase kSaveEnvPathTestCases[] = { + {// 0: File name contains env var delimits. + SAVE_AS, download::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS, + DownloadFileType::NOT_DANGEROUS, "http://example.com/f%oo%.tx%xyz%t", + "text/plain", FILE_PATH_LITERAL(""), + + FILE_PATH_LITERAL("f.txt"), DownloadItem::TARGET_DISPOSITION_PROMPT, + + EXPECT_CRDOWNLOAD}, + + {// 1: File name contains dangerous extensions after removing env var. + SAVE_AS, download::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS, + DownloadFileType::NOT_DANGEROUS, "http://example.com/foo.ln%xyz%k", + "application/octet-stream", FILE_PATH_LITERAL(""), + + FILE_PATH_LITERAL("foo.download"), + DownloadItem::TARGET_DISPOSITION_PROMPT, + + EXPECT_CRDOWNLOAD}, + {// 2: File name is an env var. + SAVE_AS, download::DOWNLOAD_DANGER_TYPE_NOT_DANGEROUS, + DownloadFileType::NOT_DANGEROUS, "http://example.com/%foo.txt%", + "text/plain", FILE_PATH_LITERAL(""), + + FILE_PATH_LITERAL("download"), DownloadItem::TARGET_DISPOSITION_PROMPT, + + EXPECT_CRDOWNLOAD}}; + + RunTestCasesWithActiveItem(kSaveEnvPathTestCases, + std::size(kSaveEnvPathTestCases)); +} +#endif // BUILDFLAG(IS_WIN) + #if BUILDFLAG(ENABLE_PLUGINS) void DummyGetPluginsCallback( diff --git a/src/chrome/browser/extensions/BUILD.gn b/src/chrome/browser/extensions/BUILD.gn index d6da4e22e14b0..743fa2c3d71ae --- a/src/chrome/browser/extensions/BUILD.gn +++ b/src/chrome/browser/extensions/BUILD.gn @@ -938,6 +938,14 @@ static_library("extensions") { "//url", ] + if (is_ohos && !ohos_enable_media_router) { + deps -= [ + "//chrome/browser/media/router", + "//chrome/browser/media/router:media_router_feature", + "//chrome/browser/media/router/discovery", + ] + } + if (is_linux || is_mac || is_win) { sources += [ "api/system_indicator/system_indicator_api.cc", diff --git a/src/chrome/browser/extensions/api/downloads/downloads_api.cc b/src/chrome/browser/extensions/api/downloads/downloads_api.cc index 827aeada1989e..471a9d3799bb7 --- a/src/chrome/browser/extensions/api/downloads/downloads_api.cc +++ b/src/chrome/browser/extensions/api/downloads/downloads_api.cc @@ -1029,19 +1029,19 @@ ExtensionFunction::ResponseAction DownloadsDownloadFunction::Run() { download_params->set_prompt(*options.save_as); if (options.headers.get()) { - for (const downloads::HeaderNameValuePair& name_value : *options.headers) { - if (!net::HttpUtil::IsValidHeaderName(name_value.name)) { + for (const downloads::HeaderNameValuePair& header : *options.headers) { + if (!net::HttpUtil::IsValidHeaderName(header.name)) { return RespondNow(Error(download_extension_errors::kInvalidHeaderName)); } - if (!net::HttpUtil::IsSafeHeader(name_value.name)) { + if (!net::HttpUtil::IsSafeHeader(header.name, header.value)) { return RespondNow( Error(download_extension_errors::kInvalidHeaderUnsafe)); } - if (!net::HttpUtil::IsValidHeaderValue(name_value.value)) { + if (!net::HttpUtil::IsValidHeaderValue(header.value)) { return RespondNow( Error(download_extension_errors::kInvalidHeaderValue)); } - download_params->add_request_header(name_value.name, name_value.value); + download_params->add_request_header(header.name, header.value); } } diff --git a/src/chrome/browser/extensions/api/downloads/downloads_api_browsertest.cc b/src/chrome/browser/extensions/api/downloads/downloads_api_browsertest.cc index 9511f8f5788d8..1ae2b73e33dbb --- a/src/chrome/browser/extensions/api/downloads/downloads_api_browsertest.cc +++ b/src/chrome/browser/extensions/api/downloads/downloads_api_browsertest.cc @@ -2337,7 +2337,7 @@ IN_PROC_BROWSER_TEST_F(DownloadExtensionTest, " \"filename\": {" " \"previous\": \"\"," " \"current\": \"%s\"}}]", - result_id, GetFilename("file").c_str()))); + result_id, GetFilename("file.txt").c_str()))); ASSERT_TRUE(WaitFor(downloads::OnChanged::kEventName, base::StringPrintf( "[{\"id\": %d," diff --git a/src/chrome/browser/pdf/pdf_extension_util.cc b/src/chrome/browser/pdf/pdf_extension_util.cc index f72431f5bc7ba..e307e2b349e65 --- a/src/chrome/browser/pdf/pdf_extension_util.cc +++ b/src/chrome/browser/pdf/pdf_extension_util.cc @@ -28,6 +28,7 @@ namespace pdf_extension_util { namespace { +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) // Tags in the manifest to be replaced. const char kNameTag[] = ""; @@ -160,10 +161,12 @@ void AddPdfViewerStrings(base::Value* dict) { webui::SetLoadTimeDataDefaults(g_browser_process->GetApplicationLocale(), static_cast(dict)); } +#endif // BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) } // namespace std::string GetManifest() { +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) std::string manifest_contents( ui::ResourceBundle::GetSharedInstance().GetRawDataResource( IDR_PDF_MANIFEST)); @@ -173,9 +176,13 @@ std::string GetManifest() { ChromeContentClient::kPDFExtensionPluginName); return manifest_contents; +#else + return ""; +#endif } void AddStrings(PdfViewerContext context, base::Value* dict) { +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) AddCommonStrings(dict); if (context == PdfViewerContext::kPdfViewer || context == PdfViewerContext::kAll) { @@ -185,6 +192,7 @@ void AddStrings(PdfViewerContext context, base::Value* dict) { context == PdfViewerContext::kAll) { // Nothing to do yet, since there are no PrintPreview-only strings. } +#endif } void AddAdditionalData(bool enable_annotations, base::Value* dict) { diff --git a/src/chrome/browser/prefs/browser_prefs.cc b/src/chrome/browser/prefs/browser_prefs.cc index d66d193121be5..90f21d784f98f --- a/src/chrome/browser/prefs/browser_prefs.cc +++ b/src/chrome/browser/prefs/browser_prefs.cc @@ -1038,7 +1038,9 @@ void RegisterLocalState(PrefRegistrySimple* registry) { #else // BUILDFLAG(IS_ANDROID) gcm::RegisterPrefs(registry); IntranetRedirectDetector::RegisterPrefs(registry); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) media_router::RegisterLocalStatePrefs(registry); +#endif metrics::TabStatsTracker::RegisterPrefs(registry); RegisterBrowserPrefs(registry); speech::SodaInstaller::RegisterLocalStatePrefs(registry); @@ -1352,8 +1354,10 @@ void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry, gcm::RegisterProfilePrefs(registry); HatsService::RegisterProfilePrefs(registry); NtpCustomBackgroundService::RegisterProfilePrefs(registry); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) media_router::RegisterAccessCodeProfilePrefs(registry); media_router::RegisterProfilePrefs(registry); +#endif NewTabPageHandler::RegisterProfilePrefs(registry); NewTabPageUI::RegisterProfilePrefs(registry); NewTabUI::RegisterProfilePrefs(registry); diff --git a/src/chrome/browser/profiles/BUILD.gn b/src/chrome/browser/profiles/BUILD.gn index 15f69bdb70c16..5d0e171e4e67b --- a/src/chrome/browser/profiles/BUILD.gn +++ b/src/chrome/browser/profiles/BUILD.gn @@ -5,6 +5,10 @@ import("//build/config/chromeos/ui_mode.gni") import("//extensions/buildflags/buildflags.gni") +if (is_ohos) { + import("//media/media_options.gni") +} + # This target should be the default place for adding public interface things # (ie, non-factory, non-impl). There will likely need to be a :factory or :impl # target (maybe both) for those eventually. @@ -60,6 +64,10 @@ source_set("profile") { if (is_android) { deps += [ "//chrome/browser/profiles/android:jni_headers" ] } + + if (is_ohos && !ohos_enable_media_router) { + deps -= [ "//components/media_router/common" ] + } } if (is_android) { diff --git a/src/chrome/browser/profiles/profile.cc b/src/chrome/browser/profiles/profile.cc index 032300a4c4a0b..1edb5bcfe39b9 --- a/src/chrome/browser/profiles/profile.cc +++ b/src/chrome/browser/profiles/profile.cc @@ -256,6 +256,10 @@ Profile* Profile::FromWebUI(content::WebUI* web_ui) { } void Profile::AddObserver(ProfileObserver* observer) { + // Instrumentation for https://crbug.com/1359689. + CHECK(observer); + CHECK(!observers_.HasObserver(observer)); + observers_.AddObserver(observer); } @@ -364,7 +368,7 @@ void Profile::RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry) { std::string()); #endif -#if !BUILDFLAG(IS_ANDROID) +#if !BUILDFLAG(IS_ANDROID) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) registry->RegisterBooleanPref( media_router::prefs::kMediaRouterCloudServicesPrefSet, false, user_prefs::PrefRegistrySyncable::SYNCABLE_PREF); @@ -461,13 +465,19 @@ void Profile::MaybeSendDestroyedNotification() { TRACE_EVENT1("shutdown", "Profile::MaybeSendDestroyedNotification", "profile", this); - if (!sent_destroyed_notification_) { - sent_destroyed_notification_ = true; + if (sent_destroyed_notification_) + return; + sent_destroyed_notification_ = true; + + // Instrumentation for https://crbug.com/1359689, + auto weak_this = GetWeakPtr(); - NotifyWillBeDestroyed(); + NotifyWillBeDestroyed(); + CHECK(weak_this); - for (auto& observer : observers_) - observer.OnProfileWillBeDestroyed(this); + for (auto& observer : observers_) { + observer.OnProfileWillBeDestroyed(this); + CHECK(weak_this); } } @@ -543,3 +553,7 @@ variations::VariationsClient* Profile::GetVariationsClient() { content::ResourceContext* Profile::GetResourceContext() { return resource_context_.get(); } + +base::WeakPtr Profile::GetWeakPtr() { + return weak_factory_.GetWeakPtr(); +} diff --git a/src/chrome/browser/profiles/profile.h b/src/chrome/browser/profiles/profile.h index febd52df6c971..8053e9909922f --- a/src/chrome/browser/profiles/profile.h +++ b/src/chrome/browser/profiles/profile.h @@ -12,6 +12,7 @@ #include #include "base/memory/scoped_refptr.h" +#include "base/memory/weak_ptr.h" #include "base/observer_list.h" #include "build/build_config.h" #include "build/chromeos_buildflags.h" @@ -501,6 +502,10 @@ class Profile : public content::BrowserContext { virtual bool IsSignedIn() = 0; private: + friend class ProfileDestroyer; + + base::WeakPtr GetWeakPtr(); + // Created on the UI thread, and returned by GetResourceContext(), but // otherwise lives on and is destroyed on the IO thread. // @@ -523,6 +528,8 @@ class Profile : public content::BrowserContext { class ChromeVariationsClient; std::unique_ptr chrome_variations_client_; + + base::WeakPtrFactory weak_factory_{this}; }; // The comparator for profile pointers as key in a map. diff --git a/src/chrome/browser/profiles/profile_destroyer.cc b/src/chrome/browser/profiles/profile_destroyer.cc index cf578009f2a50..70a70f952378a --- a/src/chrome/browser/profiles/profile_destroyer.cc +++ b/src/chrome/browser/profiles/profile_destroyer.cc @@ -44,7 +44,15 @@ enum class ProfileDestructionType { ProfileDestroyer::DestroyerSet* ProfileDestroyer::pending_destroyers_ = nullptr; // static -void ProfileDestroyer::DestroyProfileWhenAppropriate(Profile* const profile) { +void ProfileDestroyer::DestroyProfileWhenAppropriate(Profile* profile) { + DestroyProfileWhenAppropriateWithTimeout(profile, + base::Seconds(kTimerDelaySeconds)); +} + +// static +void ProfileDestroyer::DestroyProfileWhenAppropriateWithTimeout( + Profile* profile, + base::TimeDelta timeout) { TRACE_EVENT("shutdown", "ProfileDestroyer::DestroyProfileWhenAppropriate", [&](perfetto::EventContext ctx) { auto* proto = @@ -73,11 +81,11 @@ void ProfileDestroyer::DestroyProfileWhenAppropriate(Profile* const profile) { // The instance will destroy itself once all (non-spare) render process // hosts referring to it are properly terminated. - new ProfileDestroyer(profile, &profile_hosts); + new ProfileDestroyer(profile, &profile_hosts, timeout); } // static -void ProfileDestroyer::DestroyOffTheRecordProfileNow(Profile* const profile) { +void ProfileDestroyer::DestroyOffTheRecordProfileNow(Profile* profile) { DCHECK(profile); DCHECK(profile->IsOffTheRecord()); TRACE_EVENT( @@ -88,12 +96,6 @@ void ProfileDestroyer::DestroyOffTheRecordProfileNow(Profile* const profile) { proto->set_profile_ptr(reinterpret_cast(profile)); proto->set_otr_profile_id(profile->GetOTRProfileID().ToString()); }); - if (ResetPendingDestroyers(profile)) { - // We want to signal this in debug builds so that we don't lose sight of - // these potential leaks, but we handle it in release so that we don't - // crash or corrupt profile data on disk. - NOTREACHED() << "A render process host wasn't destroyed early enough."; - } DCHECK(profile->GetOriginalProfile()); profile->GetOriginalProfile()->DestroyOffTheRecordProfile(profile); UMA_HISTOGRAM_ENUMERATION("Profile.Destroyer.OffTheRecord", @@ -101,7 +103,7 @@ void ProfileDestroyer::DestroyOffTheRecordProfileNow(Profile* const profile) { } // static -void ProfileDestroyer::DestroyOriginalProfileNow(Profile* const profile) { +void ProfileDestroyer::DestroyOriginalProfileNow(Profile* profile) { DCHECK(profile); DCHECK(!profile->IsOffTheRecord()); TRACE_EVENT("shutdown", "ProfileDestroyer::DestroyOriginalProfileNow", @@ -158,22 +160,11 @@ void ProfileDestroyer::DestroyOriginalProfileNow(Profile* const profile) { #endif // DCHECK_IS_ON() } -bool ProfileDestroyer::ResetPendingDestroyers(Profile* const profile) { - DCHECK(profile); - bool found = false; - if (pending_destroyers_) { - for (auto* i : *pending_destroyers_) { - if (i->profile_ == profile) { - i->profile_ = nullptr; - found = true; - } - } - } - return found; -} - -ProfileDestroyer::ProfileDestroyer(Profile* const profile, HostSet* hosts) - : profile_(profile) { +ProfileDestroyer::ProfileDestroyer(Profile* profile, + HostSet* hosts, + base::TimeDelta timeout) + : profile_(profile->GetWeakPtr()), + timeout_(timeout) { TRACE_EVENT("shutdown", "ProfileDestroyer::ProfileDestroyer", [&](perfetto::EventContext ctx) { auto* proto = @@ -190,7 +181,7 @@ ProfileDestroyer::ProfileDestroyer(Profile* const profile, HostSet* hosts) // If we are going to wait for render process hosts, we don't want to do it // for longer than kTimerDelaySeconds. if (observations_.IsObservingAnySource()) { - timer_.Start(FROM_HERE, base::Seconds(kTimerDelaySeconds), + timer_.Start(FROM_HERE, timeout, base::BindOnce(&ProfileDestroyer::DestroyProfile, weak_ptr_factory_.GetWeakPtr())); } @@ -202,7 +193,7 @@ ProfileDestroyer::~ProfileDestroyer() { auto* proto = ctx.event() ->set_chrome_profile_destroyer(); - proto->set_profile_ptr(reinterpret_cast(profile_)); + proto->set_profile_ptr(reinterpret_cast(profile_.get())); proto->set_host_count_at_destruction( observations_.GetSourcesCount()); }); @@ -210,7 +201,7 @@ ProfileDestroyer::~ProfileDestroyer() { // Check again, in case other render hosts were added while we were // waiting for the previous ones to go away... if (profile_) - DestroyProfileWhenAppropriate(profile_); + DestroyProfileWhenAppropriateWithTimeout(profile_.get(), timeout_); // Don't wait for pending registrations, if any, these hosts are buggy. // Note: this can happen, but if so, it's better to crash here than wait @@ -240,7 +231,7 @@ void ProfileDestroyer::RenderProcessHostDestroyed( [&](perfetto::EventContext ctx) { auto* proto = ctx.event() ->set_chrome_profile_destroyer(); - proto->set_profile_ptr(reinterpret_cast(profile_)); + proto->set_profile_ptr(reinterpret_cast(profile_.get())); proto->set_render_process_host_ptr(reinterpret_cast(host)); }); observations_.RemoveObservation(host); @@ -262,7 +253,7 @@ void ProfileDestroyer::DestroyProfile() { DCHECK(profile_->IsOffTheRecord()); DCHECK(profile_->GetOriginalProfile()); - profile_->GetOriginalProfile()->DestroyOffTheRecordProfile(profile_); + profile_->GetOriginalProfile()->DestroyOffTheRecordProfile(profile_.get()); #if BUILDFLAG(IS_ANDROID) // It is possible on Android platform that more than one destroyer @@ -281,7 +272,7 @@ void ProfileDestroyer::DestroyProfile() { // static ProfileDestroyer::HostSet ProfileDestroyer::GetHostsForProfile( - void* const profile_ptr, + void* profile_ptr, bool include_spare_rph) { HostSet hosts; for (content::RenderProcessHost::iterator iter( diff --git a/src/chrome/browser/profiles/profile_destroyer.h b/src/chrome/browser/profiles/profile_destroyer.h index 2492ccadf9bb3..444fcfe2b1d0d --- a/src/chrome/browser/profiles/profile_destroyer.h +++ b/src/chrome/browser/profiles/profile_destroyer.h @@ -15,6 +15,7 @@ #include "content/public/browser/render_process_host.h" #include "content/public/browser/render_process_host_observer.h" +class DevToolsBrowserContextManager; class Profile; class ProfileImpl; @@ -26,7 +27,7 @@ class ProfileDestroyer : public content::RenderProcessHostObserver { // for dependent renderer process hosts to destroy. // Ownership of the profile is passed to profile destroyer and the profile // should not be used after this call. - static void DestroyProfileWhenAppropriate(Profile* const profile); + static void DestroyProfileWhenAppropriate(Profile* profile); ProfileDestroyer(const ProfileDestroyer&) = delete; ProfileDestroyer& operator=(const ProfileDestroyer&) = delete; @@ -37,7 +38,18 @@ class ProfileDestroyer : public content::RenderProcessHostObserver { friend class base::RefCounted; - ProfileDestroyer(Profile* const profile, HostSet* hosts); + // For custom timeout, see DestroyProfileWhenAppropriateWithTimeout. + friend class DevToolsBrowserContextManager; + + // Same as DestroyProfileWhenAppropriate, but configures how long to wait + // for render process hosts to be destroyed. Intended for testing/automation + // scenarios, where default timeout is too short. + static void DestroyProfileWhenAppropriateWithTimeout(Profile* profile, + base::TimeDelta timeout); + + ProfileDestroyer(Profile* profile, + HostSet* hosts, + base::TimeDelta timeout); ~ProfileDestroyer() override; // content::RenderProcessHostObserver override. @@ -52,20 +64,15 @@ class ProfileDestroyer : public content::RenderProcessHostObserver { // // If |include_spare_rph| is true, include spare render process hosts in the // output. - static HostSet GetHostsForProfile(void* const profile_ptr, + static HostSet GetHostsForProfile(void* profile_ptr, bool include_spare_rph = false); // Destroys an Original (non-off-the-record) profile immediately. - static void DestroyOriginalProfileNow(Profile* const profile); + static void DestroyOriginalProfileNow(Profile* profile); // Destroys an OffTheRecord profile immediately and removes it from all // pending destroyers. - static void DestroyOffTheRecordProfileNow(Profile* const profile); - - // Reset pending destroyers whose target profile matches the given one - // to make it stop attempting to destroy it. Returns true if any object - // object was found to match and get reset. - static bool ResetPendingDestroyers(Profile* const profile); + static void DestroyOffTheRecordProfileNow(Profile* profile); // We need access to all pending destroyers so we can cancel them. static DestroyerSet* pending_destroyers_; @@ -77,9 +84,27 @@ class ProfileDestroyer : public content::RenderProcessHostObserver { content::RenderProcessHostObserver> observations_{this}; - // The profile being destroyed. If it is set to NULL, it is a signal from - // another instance of ProfileDestroyer that this instance is canceled. - Profile* profile_; + // The profile being destroyed. + // + // Note: Ownership model of the Profile is not consistent. As a result, this + // variable sometimes represent ownership over the Profile, but sometimes + // this is just a weak reference, and the Profile might be destroyed outside + // of the ProfileDestroyer. + // + // [Regular profile] + // Owned by the ProfileManager. Ownership is transferred. + // + // [OTR profile] + // Owned by the original profile. Owner is NOT transferred. This is a weak + // pointer. Deleting the original Profile will delete its OTR profile under + // the hood. + // + // [Independent profile] + // It depends on the component. Most likely, the ownership is transferred. + base::WeakPtr profile_; + + // Force-destruction timeout. + const base::TimeDelta timeout_; base::WeakPtrFactory weak_ptr_factory_{this}; }; diff --git a/src/chrome/browser/profiles/profile_destroyer_unittest.cc b/src/chrome/browser/profiles/profile_destroyer_unittest.cc index 25885bcb42fde..5bee467a8cb68 --- a/src/chrome/browser/profiles/profile_destroyer_unittest.cc +++ b/src/chrome/browser/profiles/profile_destroyer_unittest.cc @@ -115,6 +115,33 @@ TEST_P(ProfileDestroyerTest, DelayedOTRProfileDestruction) { EXPECT_TRUE(IsOTRProfileDestroyed()); } +TEST_P(ProfileDestroyerTest, RenderProcessAddedAfterDestroyRequested) { + if (!IsScopedProfileKeepAliveSupported()) + return; + CreateOriginalProfile(); + + content::RenderProcessHost* render_process_host_1 = + CreatedRendererProcessHost(original_profile()); + StopKeepingAliveOriginalProfile(); + + ProfileDestroyer::DestroyProfileWhenAppropriate(original_profile()); + + EXPECT_TRUE(original_profile()); + content::RenderProcessHost* render_process_host_2 = + CreatedRendererProcessHost(original_profile()); + + base::RunLoop().RunUntilIdle(); + EXPECT_TRUE(original_profile()); // Waiting for 2 processes to be released + + render_process_host_1->Cleanup(); + base::RunLoop().RunUntilIdle(); + EXPECT_TRUE(original_profile()); // Waiting for 1 process to be released. + + render_process_host_2->Cleanup(); + base::RunLoop().RunUntilIdle(); + EXPECT_FALSE(original_profile()); // Destroyed. +} + INSTANTIATE_TEST_SUITE_P(AllOTRProfileTypes, ProfileDestroyerTest, /*is_primary_otr=*/testing::Bool()); diff --git a/src/chrome/browser/renderer_context_menu/render_view_context_menu.cc b/src/chrome/browser/renderer_context_menu/render_view_context_menu.cc index ca285d877f557..bf81be4f66fde --- a/src/chrome/browser/renderer_context_menu/render_view_context_menu.cc +++ b/src/chrome/browser/renderer_context_menu/render_view_context_menu.cc @@ -118,8 +118,6 @@ #include "components/guest_view/browser/guest_view_base.h" #include "components/language/core/browser/language_model_manager.h" #include "components/lens/lens_features.h" -#include "components/media_router/browser/media_router_dialog_controller.h" -#include "components/media_router/browser/media_router_metrics.h" #include "components/omnibox/browser/autocomplete_classifier.h" #include "components/omnibox/browser/autocomplete_match.h" #include "components/password_manager/content/browser/content_password_manager_driver.h" @@ -265,6 +263,11 @@ #include "ui/aura/window.h" #endif +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) +#include "components/media_router/browser/media_router_dialog_controller.h" +#include "components/media_router/browser/media_router_metrics.h" +#endif + using base::UserMetricsAction; using blink::ContextMenuData; using blink::ContextMenuDataEditFlags; @@ -377,7 +380,9 @@ const std::map& GetIdcToUmaMap(UmaEnumIdLookupType type) { {IDC_WRITING_DIRECTION_LTR, 64}, {IDC_WRITING_DIRECTION_RTL, 65}, {IDC_CONTENT_CONTEXT_LOAD_IMAGE, 66}, +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) {IDC_ROUTE_MEDIA, 68}, +#endif {IDC_CONTENT_CONTEXT_COPYLINKTEXT, 69}, {IDC_CONTENT_CONTEXT_OPENLINKINPROFILE, 70}, {IDC_OPEN_LINK_IN_PROFILE_FIRST, 71}, @@ -1820,10 +1825,12 @@ void RenderViewContextMenu::AppendPrintItem() { } void RenderViewContextMenu::AppendMediaRouterItem() { +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) if (media_router::MediaRouterEnabled(browser_context_)) { menu_model_.AddItemWithStringId(IDC_ROUTE_MEDIA, IDS_MEDIA_ROUTER_MENU_ITEM_TITLE); } +#endif } void RenderViewContextMenu::AppendRotationItems() { @@ -2392,8 +2399,10 @@ bool RenderViewContextMenu::IsCommandIdEnabled(int id) const { case IDC_CONTENT_CONTEXT_SHOWALLSAVEDPASSWORDS: return true; +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) case IDC_ROUTE_MEDIA: return IsRouteMediaEnabled(); +#endif case IDC_CONTENT_CONTEXT_EXIT_FULLSCREEN: return true; @@ -2653,9 +2662,11 @@ void RenderViewContextMenu::ExecuteCommand(int id, int event_flags) { ExecPrint(); break; +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) case IDC_ROUTE_MEDIA: ExecRouteMedia(); break; +#endif case IDC_CONTENT_CONTEXT_EXIT_FULLSCREEN: ExecExitFullscreen(); @@ -3152,6 +3163,7 @@ RenderViewContextMenu::CreateDataEndpoint(bool notify_if_restricted) const { return nullptr; } +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) bool RenderViewContextMenu::IsRouteMediaEnabled() const { if (!media_router::MediaRouterEnabled(browser_context_)) return false; @@ -3173,6 +3185,7 @@ bool RenderViewContextMenu::IsRouteMediaEnabled() const { web_modal::WebContentsModalDialogManager::FromWebContents(web_contents); return !manager || !manager->IsDialogActive(); } +#endif bool RenderViewContextMenu::IsOpenLinkOTREnabled() const { if (browser_context_->IsOffTheRecord() || !params_.link_url.is_valid()) @@ -3492,6 +3505,7 @@ void RenderViewContextMenu::ExecPrint() { #endif // BUILDFLAG(ENABLE_PRINTING) } +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) void RenderViewContextMenu::ExecRouteMedia() { media_router::MediaRouterDialogController* dialog_controller = media_router::MediaRouterDialogController::GetOrCreateForWebContents( @@ -3504,6 +3518,7 @@ void RenderViewContextMenu::ExecRouteMedia() { media_router::MediaRouterMetrics::RecordMediaRouterDialogOrigin( media_router::MediaRouterDialogOpenOrigin::CONTEXTUAL_MENU); } +#endif void RenderViewContextMenu::ExecTranslate() { ChromeTranslateClient* chrome_translate_client = diff --git a/src/chrome/browser/renderer_context_menu/render_view_context_menu.h b/src/chrome/browser/renderer_context_menu/render_view_context_menu.h index c97a1ecb08579..ff70715bdfa69 --- a/src/chrome/browser/renderer_context_menu/render_view_context_menu.h +++ b/src/chrome/browser/renderer_context_menu/render_view_context_menu.h @@ -43,6 +43,10 @@ #include "chrome/browser/extensions/menu_manager.h" #endif +#if BUILDFLAG(IS_OHOS) +#include "media/media_buildflags.h" +#endif + class AccessibilityLabelsMenuObserver; class ClickToCallContextMenuObserver; class LinkToTextMenuObserver; @@ -265,7 +269,9 @@ class RenderViewContextMenu bool IsPasteAndMatchStyleEnabled() const; bool IsPrintPreviewEnabled() const; bool IsQRCodeGeneratorEnabled() const; +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) bool IsRouteMediaEnabled() const; +#endif bool IsOpenLinkOTREnabled() const; bool IsSearchWebForEnabled() const; bool IsRegionSearchEnabled() const; @@ -295,7 +301,9 @@ class RenderViewContextMenu void ExecReloadPackagedApp(); void ExecRestartPackagedApp(); void ExecPrint(); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) void ExecRouteMedia(); +#endif void ExecTranslate(); void ExecLanguageSettings(int event_flags); void ExecProtocolHandlerSettings(int event_flags); diff --git a/src/chrome/browser/renderer_preferences_util.cc b/src/chrome/browser/renderer_preferences_util.cc index 0162bd7c17b75..1443ff32fe341 --- a/src/chrome/browser/renderer_preferences_util.cc +++ b/src/chrome/browser/renderer_preferences_util.cc @@ -189,7 +189,7 @@ void UpdateFromSystemSettings(blink::RendererPreferences* prefs, #endif #if BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || BUILDFLAG(IS_ANDROID) || \ - BUILDFLAG(IS_WIN) + BUILDFLAG(IS_WIN) || BUILDFLAG(IS_OHOS) content::UpdateFontRendererPreferencesFromSystemSettings(prefs); #endif diff --git a/src/chrome/browser/resources_integrity.cc b/src/chrome/browser/resources_integrity.cc index 8120999d71990..4d85649e98cd4 --- a/src/chrome/browser/resources_integrity.cc +++ b/src/chrome/browser/resources_integrity.cc @@ -28,6 +28,10 @@ #include "chrome/app/packed_resources_integrity.h" // nogncheck #endif +#if BUILDFLAG(IS_OHOS) +#include "ui/base/buildflags.h" +#endif + namespace { bool CheckResourceIntegrityInternal( @@ -109,8 +113,10 @@ void CheckPakFileIntegrity() { kSha256_resources_pak; base::span chrome_100_hash = kSha256_chrome_100_percent_pak; +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_HIDPI) base::span chrome_200_hash = kSha256_chrome_200_percent_pak; +#endif #endif // BUILDFLAG(IS_WIN) scoped_refptr task_runner = @@ -126,9 +132,11 @@ void CheckPakFileIntegrity() { chrome_100_hash, task_runner, base::BindOnce(&ReportPakIntegrity, "SafeBrowsing.PakIntegrity.Chrome100")); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_HIDPI) CheckResourceIntegrity( resources_pack_path.DirName().AppendASCII("chrome_200_percent.pak"), chrome_200_hash, task_runner, base::BindOnce(&ReportPakIntegrity, "SafeBrowsing.PakIntegrity.Chrome200")); +#endif } diff --git a/src/chrome/browser/sharing_hub/sharing_hub_model.cc b/src/chrome/browser/sharing_hub/sharing_hub_model.cc index 3e116f24acc80..c3b3359d72874 --- a/src/chrome/browser/sharing_hub/sharing_hub_model.cc +++ b/src/chrome/browser/sharing_hub/sharing_hub_model.cc @@ -180,6 +180,7 @@ void SharingHubModel::PopulateFirstPartyActions() { &kQrcodeGeneratorIcon, true, gfx::ImageSkia(), "SharingHubDesktop.QRCodeSelected"}); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) if (media_router::MediaRouterEnabled(context_)) { first_party_action_list_.push_back( {IDC_ROUTE_MEDIA, @@ -187,6 +188,7 @@ void SharingHubModel::PopulateFirstPartyActions() { &vector_icons::kMediaRouterIdleIcon, true, gfx::ImageSkia(), "SharingHubDesktop.CastSelected"}); } +#endif first_party_action_list_.push_back( {IDC_SAVE_PAGE, diff --git a/src/chrome/browser/speech/speech_recognition_client_browser_interface.cc b/src/chrome/browser/speech/speech_recognition_client_browser_interface.cc index ad3c36877ac38..5f038360aa0d5 --- a/src/chrome/browser/speech/speech_recognition_client_browser_interface.cc +++ b/src/chrome/browser/speech/speech_recognition_client_browser_interface.cc @@ -6,6 +6,7 @@ #include +#include "base/feature_list.h" #include "chrome/browser/profiles/profile.h" #include "components/live_caption/pref_names.h" #include "components/prefs/pref_change_registrar.h" @@ -60,6 +61,10 @@ void SpeechRecognitionClientBrowserInterface:: void SpeechRecognitionClientBrowserInterface::OnSodaInstalled() { NotifyObservers(profile_prefs_->GetBoolean(prefs::kLiveCaptionEnabled)); + + if (base::FeatureList::IsEnabled(media::kLiveCaptionMultiLanguage)) { + OnSpeechRecognitionLanguageChanged(); + } } void SpeechRecognitionClientBrowserInterface:: diff --git a/src/chrome/browser/speech/speech_recognition_service_browsertest.cc b/src/chrome/browser/speech/speech_recognition_service_browsertest.cc index 98e0bb8fa321f..b1b2c7bf2887c --- a/src/chrome/browser/speech/speech_recognition_service_browsertest.cc +++ b/src/chrome/browser/speech/speech_recognition_service_browsertest.cc @@ -5,11 +5,13 @@ #include #include "base/files/file_util.h" +#include "base/files/scoped_temp_dir.h" #include "base/notreached.h" #include "base/path_service.h" #include "base/sync_socket.h" #include "base/test/metrics/histogram_tester.h" #include "base/test/scoped_feature_list.h" +#include "base/threading/thread_restrictions.h" #include "base/timer/timer.h" #include "build/build_config.h" #include "chrome/browser/browser_process.h" @@ -264,7 +266,7 @@ void SpeechRecognitionServiceTest::LaunchService() { speech_recognition_client_receiver_.BindNewPipeAndPassRemote(), media::mojom::SpeechRecognitionOptions::New( media::mojom::SpeechRecognitionMode::kCaption, - /*enable_formatting=*/true, "en-US"), + /*enable_formatting=*/true, kUsEnglishLocale), base::BindOnce( [](bool* p_is_multichannel_supported, base::RunLoop* run_loop, bool is_multichannel_supported) { @@ -296,7 +298,7 @@ void SpeechRecognitionServiceTest::LaunchServiceWithAudioSourceFetcher() { speech_recognition_client_receiver_.BindNewPipeAndPassRemote(), media::mojom::SpeechRecognitionOptions::New( media::mojom::SpeechRecognitionMode::kIme, - /*enable_formatting=*/false, "en-US"), + /*enable_formatting=*/false, kUsEnglishLocale), base::BindOnce( [](bool* p_is_multichannel_supported, base::RunLoop* run_loop, bool is_multichannel_supported) { @@ -502,4 +504,51 @@ IN_PROC_BROWSER_TEST_F(SpeechRecognitionServiceTest, CreateAudioSourceFetcher) { base::RunLoop().RunUntilIdle(); } +IN_PROC_BROWSER_TEST_F(SpeechRecognitionServiceTest, CompromisedRenderer) { + // Create temporary SODA files. + SetUpPrefs(); + base::ScopedAllowBlockingForTesting allow_blocking; + base::FilePath config_dir = + GetSodaLanguagePacksDirectory() + .AppendASCII(kUsEnglishLocale) + .Append("1.1.1") + .Append(kSodaLanguagePackDirectoryRelativePath); + base::CreateDirectory(config_dir); + ASSERT_TRUE(base::PathExists(config_dir)); + base::FilePath config_file_path = config_dir.Append("config_file"); + ASSERT_EQ(base::WriteFile(config_file_path, nullptr, 0), 0); + ASSERT_TRUE(base::PathExists(config_file_path)); + g_browser_process->local_state()->SetFilePath(prefs::kSodaEnUsConfigPath, + config_file_path); + + // Launch the Speech Recognition service. + auto* browser_context = + static_cast(browser()->profile()); + auto* service = new ChromeSpeechRecognitionService(browser_context); + service->BindSpeechRecognitionContext( + speech_recognition_context_.BindNewPipeAndPassReceiver()); + + // Bind the recognizer pipes used to send audio and receive results. + auto run_loop = std::make_unique(); + speech_recognition_context_->BindRecognizer( + speech_recognition_recognizer_.BindNewPipeAndPassReceiver(), + speech_recognition_client_receiver_.BindNewPipeAndPassRemote(), + media::mojom::SpeechRecognitionOptions::New( + media::mojom::SpeechRecognitionMode::kCaption, + /*enable_formatting=*/true, kUsEnglishLocale, + /*is_server_based=*/false, + media::mojom::RecognizerClientType::kLiveCaption), + base::BindOnce([](base::RunLoop* run_loop, + bool is_multichannel_supported) { run_loop->Quit(); }, + run_loop.get())); + run_loop->Run(); + + // Simulate a compromised renderer by changing the language and immediately + // resetting the recognizer and verify that the subsequent callbacks do not + // cause any crashes. + speech_recognition_recognizer_->OnLanguageChanged(kUsEnglishLocale); + speech_recognition_recognizer_.reset(); + base::RunLoop().RunUntilIdle(); +} + } // namespace speech diff --git a/src/chrome/browser/sync/test/integration/sync_integration_tests_sources.gni b/src/chrome/browser/sync/test/integration/sync_integration_tests_sources.gni index 2133f32e032f0..87adf4f305c40 --- a/src/chrome/browser/sync/test/integration/sync_integration_tests_sources.gni +++ b/src/chrome/browser/sync/test/integration/sync_integration_tests_sources.gni @@ -14,7 +14,7 @@ sync_integration_tests_sources = [ "../browser/sync/test/integration/sync_exponential_backoff_test.cc", ] -if (!is_android) { +if (!is_android && !is_ohos) { sync_integration_tests_sources += [ "../browser/sync/test/integration/enable_disable_test.cc", "../browser/sync/test/integration/local_sync_test.cc", diff --git a/src/chrome/browser/ui/BUILD.gn b/src/chrome/browser/ui/BUILD.gn index fc40fde277432..ed82927f6ed13 --- a/src/chrome/browser/ui/BUILD.gn +++ b/src/chrome/browser/ui/BUILD.gn @@ -667,6 +667,14 @@ static_library("ui") { "//v8:v8_version", ] + if (is_ohos && !ohos_enable_media_router) { + deps -= [ + "//chrome/browser/media/router:media_router_feature", + "//chrome/browser/media/router/discovery/access_code:access_code_cast_feature", + "//chrome/browser/media/router/discovery/access_code:discovery_resources_proto", + ] + } + if (is_ohos && safe_browsing_mode == 0) { deps -= [ "//components/safe_browsing/content/browser:client_side_detection" ] @@ -1690,6 +1698,80 @@ static_library("ui") { ] } + if (is_ohos && !ohos_enable_media_router) { + sources -= [ + "media_router/cast_dialog_controller.h", + "media_router/cast_dialog_model.cc", + "media_router/cast_dialog_model.h", + "media_router/cast_modes_with_media_sources.cc", + "media_router/cast_modes_with_media_sources.h", + "media_router/cloud_services_dialog.h", + "media_router/media_cast_mode.cc", + "media_router/media_cast_mode.h", + "media_router/media_router_ui.cc", + "media_router/media_router_ui.h", + "media_router/media_router_ui_helper.cc", + "media_router/media_router_ui_helper.h", + "media_router/media_router_ui_service.cc", + "media_router/media_router_ui_service.h", + "media_router/media_router_ui_service_factory.cc", + "media_router/media_router_ui_service_factory.h", + "media_router/media_sink_with_cast_modes.cc", + "media_router/media_sink_with_cast_modes.h", + "media_router/presentation_receiver_window.h", + "media_router/presentation_receiver_window_controller.cc", + "media_router/presentation_receiver_window_controller.h", + "media_router/presentation_receiver_window_delegate.h", + "media_router/query_result_manager.cc", + "media_router/query_result_manager.h", + "media_router/ui_media_sink.cc", + "media_router/ui_media_sink.h", + "toolbar/media_router_action_controller.cc", + "toolbar/media_router_action_controller.h", + "toolbar/media_router_contextual_menu.cc", + "toolbar/media_router_contextual_menu.h", + "webui/access_code_cast/access_code_cast_handler.cc", + "webui/access_code_cast/access_code_cast_handler.h", + "webui/access_code_cast/access_code_cast_ui.cc", + "webui/access_code_cast/access_code_cast_ui.h", + "webui/media_router/media_router_internals_ui.cc", + "webui/media_router/media_router_internals_ui.h", + "webui/media_router/media_router_internals_webui_message_handler.cc", + "webui/media_router/media_router_internals_webui_message_handler.h", + "webui/media_router/web_contents_display_observer.h", + ] + } + + if (is_ohos) { + sources -= [ + "global_media_controls/cast_media_notification_item.cc", + "global_media_controls/cast_media_notification_item.h", + "global_media_controls/cast_media_notification_producer.cc", + "global_media_controls/cast_media_notification_producer.h", + "global_media_controls/cast_media_session_controller.cc", + "global_media_controls/cast_media_session_controller.h", + "global_media_controls/media_item_ui_device_selector_delegate.h", + "global_media_controls/media_notification_device_monitor.cc", + "global_media_controls/media_notification_device_monitor.h", + "global_media_controls/media_notification_device_provider.h", + "global_media_controls/media_notification_device_provider_impl.cc", + "global_media_controls/media_notification_device_provider_impl.h", + "global_media_controls/media_notification_service.cc", + "global_media_controls/media_notification_service.h", + "global_media_controls/media_notification_service_factory.cc", + "global_media_controls/media_notification_service_factory.h", + "global_media_controls/media_toolbar_button_controller.cc", + "global_media_controls/media_toolbar_button_controller.h", + "global_media_controls/media_toolbar_button_controller_delegate.cc", + "global_media_controls/media_toolbar_button_controller_delegate.h", + "global_media_controls/media_toolbar_button_observer.h", + "global_media_controls/presentation_request_notification_item.cc", + "global_media_controls/presentation_request_notification_item.h", + "global_media_controls/presentation_request_notification_producer.cc", + "global_media_controls/presentation_request_notification_producer.h", + ] + } + deps += [ "//base", "//build:chromeos_buildflags", @@ -1770,6 +1852,16 @@ static_library("ui") { allow_circular_includes_from += [ "//chrome/browser/media/router" ] + if (is_ohos && !ohos_enable_media_router) { + deps -= [ + "//chrome/browser/media/router", + "//chrome/browser/media/router/discovery:discovery", + "//chrome/browser/ui/webui/access_code_cast:mojo_bindings", + "//components/media_router/common/mojom:media_router", + ] + allow_circular_includes_from -= [ "//chrome/browser/media/router" ] + } + if (use_ozone && !is_chromeos_ash) { deps += [ "//ui/base:features", @@ -4862,6 +4954,58 @@ static_library("ui") { allow_circular_includes_from += [ "//chrome/browser/ui/views" ] + if (is_ohos && !ohos_enable_media_router) { + sources -= [ + "views/media_router/cast_dialog_access_code_cast_button.cc", + "views/media_router/cast_dialog_access_code_cast_button.h", + "views/media_router/cast_dialog_helper.cc", + "views/media_router/cast_dialog_helper.h", + "views/media_router/cast_dialog_metrics.cc", + "views/media_router/cast_dialog_metrics.h", + "views/media_router/cast_dialog_no_sinks_view.cc", + "views/media_router/cast_dialog_no_sinks_view.h", + "views/media_router/cast_dialog_sink_button.cc", + "views/media_router/cast_dialog_sink_button.h", + "views/media_router/cast_dialog_view.cc", + "views/media_router/cast_dialog_view.h", + "views/media_router/cast_toolbar_button.cc", + "views/media_router/cast_toolbar_button.h", + "views/media_router/media_remoting_dialog_view.cc", + "views/media_router/media_remoting_dialog_view.h", + "views/media_router/media_router_dialog_controller_views.cc", + "views/media_router/media_router_dialog_controller_views.h", + "views/media_router/presentation_receiver_window_factory.cc", + "views/media_router/presentation_receiver_window_frame.cc", + "views/media_router/presentation_receiver_window_frame.h", + "views/media_router/presentation_receiver_window_view.cc", + "views/media_router/presentation_receiver_window_view.h", + "views/media_router/web_contents_display_observer_view.cc", + "views/media_router/web_contents_display_observer_view.h", + ] + } + + if (is_ohos) { + sources -= [ + "views/global_media_controls/media_dialog_view.cc", + "views/global_media_controls/media_dialog_view.h", + "views/global_media_controls/media_dialog_view_observer.h", + "views/global_media_controls/media_item_ui_device_selector_observer.h", + "views/global_media_controls/media_item_ui_device_selector_view.cc", + "views/global_media_controls/media_item_ui_device_selector_view.h", + "views/global_media_controls/media_item_ui_footer_view.cc", + "views/global_media_controls/media_item_ui_footer_view.h", + "views/global_media_controls/media_item_ui_legacy_cast_footer_view.cc", + "views/global_media_controls/media_item_ui_legacy_cast_footer_view.h", + "views/global_media_controls/media_notification_device_entry_ui.cc", + "views/global_media_controls/media_notification_device_entry_ui.h", + "views/global_media_controls/media_toolbar_button_contextual_menu.cc", + "views/global_media_controls/media_toolbar_button_contextual_menu.h", + "views/global_media_controls/media_toolbar_button_view.cc", + "views/global_media_controls/media_toolbar_button_view.h", + ] + deps -= [ "//components/global_media_controls" ] + } + if (is_linux || is_chromeos_lacros || is_ohos) { sources += [ "views/chrome_views_delegate_linux.cc", @@ -5118,8 +5262,6 @@ static_library("ui") { "extensions/extension_message_bubble_bridge.h", "extensions/extension_message_bubble_factory.cc", "extensions/extension_message_bubble_factory.h", - "extensions/extension_removal_watcher.cc", - "extensions/extension_removal_watcher.h", "extensions/extension_settings_overridden_dialog.cc", "extensions/extension_settings_overridden_dialog.h", "extensions/extensions_container.h", @@ -5481,7 +5623,7 @@ static_library("test_support") { } } - if (!is_android) { + if (!is_android && !is_ohos) { sources += [ "exclusive_access/exclusive_access_test.cc", "exclusive_access/exclusive_access_test.h", diff --git a/src/chrome/browser/ui/android/device_dialog/usb_chooser_dialog_android.cc b/src/chrome/browser/ui/android/device_dialog/usb_chooser_dialog_android.cc index 1beca9af2ca1f..049a85ab09a53 --- a/src/chrome/browser/ui/android/device_dialog/usb_chooser_dialog_android.cc +++ b/src/chrome/browser/ui/android/device_dialog/usb_chooser_dialog_android.cc @@ -19,6 +19,7 @@ #include "chrome/browser/ssl/security_state_tab_helper.h" #include "chrome/browser/vr/vr_tab_helper.h" #include "chrome/common/url_constants.h" +#include "components/permissions/permission_util.h" #include "components/security_state/core/security_state.h" #include "components/url_formatter/elide_url.h" #include "content/public/browser/render_frame_host.h" @@ -27,11 +28,44 @@ #include "ui/android/window_android.h" #include "url/gurl.h" +namespace { + +UsbChooserDialogAndroid::CreateJavaDialogCallback +GetCreateJavaUsbChooserDialogCallback() { + return base::BindOnce(&Java_UsbChooserDialog_create); +} + +} // namespace + // static std::unique_ptr UsbChooserDialogAndroid::Create( content::RenderFrameHost* render_frame_host, std::unique_ptr controller, base::OnceClosure on_close) { + return CreateInternal(render_frame_host, std::move(controller), + std::move(on_close), + GetCreateJavaUsbChooserDialogCallback()); +} + +// static +std::unique_ptr +UsbChooserDialogAndroid::CreateForTesting( + content::RenderFrameHost* render_frame_host, + std::unique_ptr controller, + base::OnceClosure on_close, + CreateJavaDialogCallback create_java_dialog_callback) { + return CreateInternal(render_frame_host, std::move(controller), + std::move(on_close), + std::move(create_java_dialog_callback)); +} + +// static +std::unique_ptr +UsbChooserDialogAndroid::CreateInternal( + content::RenderFrameHost* render_frame_host, + std::unique_ptr controller, + base::OnceClosure on_close, + CreateJavaDialogCallback create_java_dialog_callback) { content::WebContents* web_contents = content::WebContents::FromRenderFrameHost(render_frame_host); @@ -46,10 +80,14 @@ std::unique_ptr UsbChooserDialogAndroid::Create( base::android::ScopedJavaLocalRef window_android = web_contents->GetNativeView()->GetWindowAndroid()->GetJavaObject(); JNIEnv* env = base::android::AttachCurrentThread(); + // Permission delegation means the permission request should be + // attributed to the main frame. + const auto origin = url::Origin::Create( + permissions::PermissionUtil::GetLastCommittedOriginAsURL( + render_frame_host->GetMainFrame())); base::android::ScopedJavaLocalRef origin_string = base::android::ConvertUTF16ToJavaString( - env, url_formatter::FormatOriginForSecurityDisplay( - render_frame_host->GetLastCommittedOrigin())); + env, url_formatter::FormatOriginForSecurityDisplay(origin)); SecurityStateTabHelper* helper = SecurityStateTabHelper::FromWebContents(web_contents); DCHECK(helper); @@ -64,9 +102,11 @@ std::unique_ptr UsbChooserDialogAndroid::Create( auto dialog = std::make_unique(std::move(controller), std::move(on_close)); - dialog->java_dialog_.Reset(Java_UsbChooserDialog_create( - env, window_android, origin_string, helper->GetSecurityLevel(), - j_profile_android, reinterpret_cast(dialog.get()))); + + dialog->java_dialog_.Reset( + std::move(create_java_dialog_callback) + .Run(env, window_android, origin_string, helper->GetSecurityLevel(), + j_profile_android, reinterpret_cast(dialog.get()))); if (dialog->java_dialog_.is_null()) return nullptr; diff --git a/src/chrome/browser/ui/android/device_dialog/usb_chooser_dialog_android.h b/src/chrome/browser/ui/android/device_dialog/usb_chooser_dialog_android.h index a76c71f651c19..d2aa1f641f7be --- a/src/chrome/browser/ui/android/device_dialog/usb_chooser_dialog_android.h +++ b/src/chrome/browser/ui/android/device_dialog/usb_chooser_dialog_android.h @@ -9,6 +9,9 @@ #include #include +#include "base/android/jni_android.h" +#include "base/android/jni_int_wrapper.h" +#include "base/android/jni_string.h" #include "base/android/scoped_java_ref.h" #include "base/callback.h" #include "components/permissions/chooser_controller.h" @@ -21,6 +24,16 @@ class RenderFrameHost; // options. class UsbChooserDialogAndroid : public permissions::ChooserController::View { public: + // The callback type for creating the java dialog object. + using CreateJavaDialogCallback = + base::OnceCallback( + JNIEnv*, + const base::android::JavaRef&, + const base::android::JavaRef&, + JniIntWrapper, + const base::android::JavaRef&, + jlong)>; + // Creates and shows the dialog. Will return nullptr if the dialog was not // displayed. Otherwise |on_close| will be called when the user closes the // dialog. @@ -29,6 +42,13 @@ class UsbChooserDialogAndroid : public permissions::ChooserController::View { std::unique_ptr controller, base::OnceClosure on_close); + static std::unique_ptr CreateForTesting( + content::RenderFrameHost* render_frame_host, + std::unique_ptr controller, + base::OnceClosure on_close, + UsbChooserDialogAndroid::CreateJavaDialogCallback + create_java_dialog_callback); + explicit UsbChooserDialogAndroid( std::unique_ptr controller, base::OnceClosure on_close); @@ -56,6 +76,13 @@ class UsbChooserDialogAndroid : public permissions::ChooserController::View { // Called when the chooser dialog is closed. void Cancel(); + static std::unique_ptr CreateInternal( + content::RenderFrameHost* render_frame_host, + std::unique_ptr controller, + base::OnceClosure on_close, + UsbChooserDialogAndroid::CreateJavaDialogCallback + create_java_dialog_callback); + std::unique_ptr controller_; base::OnceClosure on_close_; diff --git a/src/chrome/browser/ui/android/device_dialog/usb_chooser_dialog_android_unittest.cc b/src/chrome/browser/ui/android/device_dialog/usb_chooser_dialog_android_unittest.cc new file mode 100644 index 0000000000000..c7aed7a2b370a --- /dev/null +++ b/src/chrome/browser/ui/android/device_dialog/usb_chooser_dialog_android_unittest.cc @@ -0,0 +1,63 @@ +// Copyright 2022 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "chrome/browser/ui/android/device_dialog/usb_chooser_dialog_android.h" + +#include + +#include "base/test/bind.h" +#include "base/test/mock_callback.h" +#include "chrome/browser/ssl/security_state_tab_helper.h" +#include "chrome/browser/usb/usb_chooser_controller.h" +#include "chrome/test/base/chrome_render_view_host_test_harness.h" +#include "content/public/browser/web_contents.h" +#include "content/public/test/navigation_simulator.h" +#include "services/device/public/mojom/usb_enumeration_options.mojom.h" +#include "testing/gmock/include/gmock/gmock.h" +#include "testing/gtest/include/gtest/gtest.h" +#include "ui/android/window_android.h" + +namespace { + +using UsbChooserDialogAndroidTest = ChromeRenderViewHostTestHarness; +using testing::_; + +TEST_F(UsbChooserDialogAndroidTest, FrameTree) { + NavigateAndCommit(GURL("https://main-frame.com")); + content::RenderFrameHost* subframe = + content::NavigationSimulator::NavigateAndCommitFromDocument( + GURL("https://sub-frame.com"), + content::RenderFrameHostTester::For(main_rfh()) + ->AppendChild("subframe")); + + auto controller = std::make_unique( + main_rfh(), std::vector(), + base::BindLambdaForTesting( + [](device::mojom::UsbDeviceInfoPtr usb_device_info) {})); + + content::WebContents* web_contents = + content::WebContents::FromRenderFrameHost(main_rfh()); + std::unique_ptr window = + ui::WindowAndroid::CreateForTesting(); + window.get()->get()->AddChild(web_contents->GetNativeView()); + SecurityStateTabHelper::CreateForWebContents(web_contents); + + base::MockCallback + mock_callback; + auto origin_predicate = + [&](const base::android::JavaRef& java_string) { + return base::android::ConvertJavaStringToUTF16( + base::android::AttachCurrentThread(), java_string) == + u"https://main-frame.com"; + }; + EXPECT_CALL(mock_callback, Run(/*env=*/_, /*window_android=*/_, + testing::Truly(origin_predicate), + /*security_level=*/_, /*profile=*/_, + /*native_usb_chooser_dialog_ptr=*/_)); + UsbChooserDialogAndroid::CreateForTesting(subframe, std::move(controller), + base::BindLambdaForTesting([]() {}), + mock_callback.Get()); +} + +} // namespace diff --git a/src/chrome/browser/ui/browser.cc b/src/chrome/browser/ui/browser.cc index f2d36a884b278..79952ed2d9c32 --- a/src/chrome/browser/ui/browser.cc +++ b/src/chrome/browser/ui/browser.cc @@ -3044,6 +3044,7 @@ bool Browser::ShouldCreateBackgroundContents( content::SiteInstance* source_site_instance, const GURL& opener_url, const std::string& frame_name) { +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_BACKGROUND_CONTENTS) extensions::ExtensionSystem* extension_system = extensions::ExtensionSystem::Get(profile_); @@ -3076,6 +3077,9 @@ bool Browser::ShouldCreateBackgroundContents( } return true; +#else + return false; +#endif } BackgroundContents* Browser::CreateBackgroundContents( @@ -3087,6 +3091,7 @@ BackgroundContents* Browser::CreateBackgroundContents( const GURL& target_url, const content::StoragePartitionId& partition_id, content::SessionStorageNamespace* session_storage_namespace) { +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_BACKGROUND_CONTENTS) BackgroundContentsService* service = BackgroundContentsServiceFactory::GetForProfile(profile_); const Extension* extension = extensions::ExtensionRegistry::Get(profile_) @@ -3130,4 +3135,7 @@ BackgroundContents* Browser::CreateBackgroundContents( std::string()); // No extra headers. return contents; +#else + return nullptr; +#endif } diff --git a/src/chrome/browser/ui/browser_command_controller.cc b/src/chrome/browser/ui/browser_command_controller.cc index cc53da3a0b32e..914b3d8092382 --- a/src/chrome/browser/ui/browser_command_controller.cc +++ b/src/chrome/browser/ui/browser_command_controller.cc @@ -815,9 +815,11 @@ bool BrowserCommandController::ExecuteCommandWithDisposition( case IDC_DISTILL_PAGE: ToggleDistilledView(browser_); break; +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) case IDC_ROUTE_MEDIA: RouteMediaInvokedFromAppMenu(browser_); break; +#endif case IDC_WINDOW_MUTE_SITE: MuteSite(browser_); break; @@ -1595,8 +1597,10 @@ void BrowserCommandController::UpdateCommandsForMediaRouter() { if (is_locked_fullscreen_) return; +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) command_updater_.UpdateCommandEnabled(IDC_ROUTE_MEDIA, CanRouteMedia(browser_)); +#endif } void BrowserCommandController::UpdateCommandsForTabKeyboardFocus( diff --git a/src/chrome/browser/ui/browser_commands.cc b/src/chrome/browser/ui/browser_commands.cc index 6a314d34c2c90..4c7158dd052ec --- a/src/chrome/browser/ui/browser_commands.cc +++ b/src/chrome/browser/ui/browser_commands.cc @@ -31,7 +31,6 @@ #include "chrome/browser/download/download_prefs.h" #include "chrome/browser/favicon/favicon_utils.h" #include "chrome/browser/lifetime/application_lifetime.h" -#include "chrome/browser/media/router/media_router_feature.h" #include "chrome/browser/prefs/incognito_mode_prefs.h" #include "chrome/browser/profiles/profile.h" #include "chrome/browser/sessions/session_service.h" @@ -105,8 +104,6 @@ #include "components/find_in_page/find_tab_helper.h" #include "components/find_in_page/find_types.h" #include "components/google/core/common/google_util.h" -#include "components/media_router/browser/media_router_dialog_controller.h" // nogncheck -#include "components/media_router/browser/media_router_metrics.h" #include "components/omnibox/browser/omnibox_prefs.h" #include "components/prefs/pref_service.h" #include "components/reading_list/core/reading_list_entry.h" @@ -175,6 +172,12 @@ #include "chromeos/lacros/lacros_service.h" #endif +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) +#include "chrome/browser/media/router/media_router_feature.h" +#include "components/media_router/browser/media_router_dialog_controller.h" // nogncheck +#include "components/media_router/browser/media_router_metrics.h" +#endif + namespace { const char kOsOverrideForTabletSite[] = "Linux; Android 9; Chrome tablet"; @@ -1402,13 +1405,18 @@ bool CanBasicPrint(Browser* browser) { #endif // BUILDFLAG(ENABLE_PRINTING) bool CanRouteMedia(Browser* browser) { +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) // Do not allow user to open Media Router dialog when there is already an // active modal dialog. This avoids overlapping dialogs. return media_router::MediaRouterEnabled(browser->profile()) && !IsShowingWebContentsModalDialog(browser); +#else + return false; +#endif } void RouteMediaInvokedFromAppMenu(Browser* browser) { +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) DCHECK(CanRouteMedia(browser)); media_router::MediaRouterDialogController* dialog_controller = @@ -1419,6 +1427,7 @@ void RouteMediaInvokedFromAppMenu(Browser* browser) { dialog_controller->ShowMediaRouterDialog( media_router::MediaRouterDialogOpenOrigin::APP_MENU); +#endif } void CutCopyPaste(Browser* browser, int command_id) { diff --git a/src/chrome/browser/ui/browser_dialogs.h b/src/chrome/browser/ui/browser_dialogs.h index 4ffe538bc96f2..0811352da29f7 --- a/src/chrome/browser/ui/browser_dialogs.h +++ b/src/chrome/browser/ui/browser_dialogs.h @@ -496,7 +496,7 @@ void ShowExtensionInstallFrictionDialog( // Returns a OnceClosure that client code can call to close the device chooser. // This OnceClosure references the actual dialog as a WeakPtr, so it's safe to // call at any point. -#if defined(TOOLKIT_VIEWS) +#if defined(TOOLKIT_VIEWS) || BUILDFLAG(IS_OHOS) base::OnceClosure ShowDeviceChooserDialog( content::RenderFrameHost* owner, std::unique_ptr controller); diff --git a/src/chrome/browser/ui/extensions/extension_installed_waiter.cc b/src/chrome/browser/ui/extensions/extension_installed_waiter.cc index 6e11b9036b1d8..8d70116a9b0ed --- a/src/chrome/browser/ui/extensions/extension_installed_waiter.cc +++ b/src/chrome/browser/ui/extensions/extension_installed_waiter.cc @@ -40,15 +40,13 @@ ExtensionInstalledWaiter::ExtensionInstalledWaiter( done_callback_(std::move(done_callback)) { extension_registry_observation_.Observe( extensions::ExtensionRegistry::Get(browser->profile())); - removal_watcher_ = std::make_unique( - browser, extension, - base::BindOnce(&ExtensionInstalledWaiter::OnExtensionRemoved, - weak_factory_.GetWeakPtr())); + BrowserList::AddObserver(this); } ExtensionInstalledWaiter::~ExtensionInstalledWaiter() { if (done_callback_ && g_giving_up_callback) g_giving_up_callback->Run(); + BrowserList::RemoveObserver(this); } void ExtensionInstalledWaiter::RunCallbackIfExtensionInstalled() { @@ -79,6 +77,15 @@ void ExtensionInstalledWaiter::OnExtensionLoaded( weak_factory_.GetWeakPtr())); } -void ExtensionInstalledWaiter::OnExtensionRemoved() { - delete this; +void ExtensionInstalledWaiter::OnExtensionUnloaded( + content::BrowserContext* browser_context, + const extensions::Extension* extension, + extensions::UnloadedExtensionReason reason) { + if (extension == extension_.get()) + delete this; +} + +void ExtensionInstalledWaiter::OnBrowserClosing(Browser* browser) { + if (browser == browser_) + delete this; } diff --git a/src/chrome/browser/ui/extensions/extension_installed_waiter.h b/src/chrome/browser/ui/extensions/extension_installed_waiter.h index 880c832c18451..9dbb2c88c839b --- a/src/chrome/browser/ui/extensions/extension_installed_waiter.h +++ b/src/chrome/browser/ui/extensions/extension_installed_waiter.h @@ -9,7 +9,7 @@ #include "base/memory/raw_ptr.h" #include "base/memory/weak_ptr.h" #include "base/scoped_observation.h" -#include "chrome/browser/ui/extensions/extension_removal_watcher.h" +#include "chrome/browser/ui/browser_list_observer.h" #include "extensions/browser/extension_registry.h" #include "extensions/browser/extension_registry_observer.h" @@ -17,7 +17,8 @@ class Browser; // ExtensionInstalledWaiter is used to wait for a given extension to be // installed in a given browser's profile. -class ExtensionInstalledWaiter : public extensions::ExtensionRegistryObserver { +class ExtensionInstalledWaiter : public extensions::ExtensionRegistryObserver, + public BrowserListObserver { public: // Wait until both: // 1. |extension| is installed into |browser| @@ -57,8 +58,12 @@ class ExtensionInstalledWaiter : public extensions::ExtensionRegistryObserver { // ExtensionRegistryObserver: void OnExtensionLoaded(content::BrowserContext* browser_context, const extensions::Extension* extension) override; + void OnExtensionUnloaded(content::BrowserContext* browser_context, + const extensions::Extension* extension, + extensions::UnloadedExtensionReason reason) override; - void OnExtensionRemoved(); + // BrowserListObserver: + void OnBrowserClosing(Browser* browser) override; const scoped_refptr extension_; const raw_ptr browser_; @@ -68,8 +73,6 @@ class ExtensionInstalledWaiter : public extensions::ExtensionRegistryObserver { extensions::ExtensionRegistryObserver> extension_registry_observation_{this}; - std::unique_ptr removal_watcher_; - base::WeakPtrFactory weak_factory_{this}; }; diff --git a/src/chrome/browser/ui/extensions/extension_removal_watcher.cc b/src/chrome/browser/ui/extensions/extension_removal_watcher.cc deleted file mode 100644 index 4ef1045c2dce7..0000000000000 --- a/src/chrome/browser/ui/extensions/extension_removal_watcher.cc +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright 2019 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 "chrome/browser/ui/extensions/extension_removal_watcher.h" - -#include "chrome/browser/profiles/profile.h" -#include "chrome/browser/ui/browser.h" -#include "chrome/browser/ui/browser_list.h" - -ExtensionRemovalWatcher::ExtensionRemovalWatcher( - Browser* browser, - scoped_refptr extension, - base::OnceClosure callback) - : browser_(browser), extension_(extension), callback_(std::move(callback)) { - extension_registry_observation_.Observe( - extensions::ExtensionRegistry::Get(browser->profile())); - BrowserList::AddObserver(this); -} - -ExtensionRemovalWatcher::~ExtensionRemovalWatcher() { - BrowserList::RemoveObserver(this); -} - -void ExtensionRemovalWatcher::OnBrowserClosing(Browser* browser) { - if (browser == browser_ && callback_) - std::move(callback_).Run(); -} - -void ExtensionRemovalWatcher::OnExtensionUnloaded( - content::BrowserContext* browser_context, - const extensions::Extension* extension, - extensions::UnloadedExtensionReason reason) { - if (extension == extension_.get() && callback_) - std::move(callback_).Run(); -} diff --git a/src/chrome/browser/ui/extensions/extension_removal_watcher.h b/src/chrome/browser/ui/extensions/extension_removal_watcher.h deleted file mode 100644 index 5e75053387f49..0000000000000 --- a/src/chrome/browser/ui/extensions/extension_removal_watcher.h +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2019 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. - -#ifndef CHROME_BROWSER_UI_EXTENSIONS_EXTENSION_REMOVAL_WATCHER_H_ -#define CHROME_BROWSER_UI_EXTENSIONS_EXTENSION_REMOVAL_WATCHER_H_ - -#include "base/callback.h" -#include "base/memory/raw_ptr.h" -#include "base/memory/weak_ptr.h" -#include "base/scoped_observation.h" -#include "chrome/browser/ui/browser_list_observer.h" -#include "extensions/browser/extension_registry.h" -#include "extensions/browser/extension_registry_observer.h" - -// ExtensionRemovalWatcher watches a browser and an extension for either: -// 1) The browser being closed, or -// 2) The extension being uninstalled from the browser's profile -// and in either case, invokes the provided callback. -class ExtensionRemovalWatcher : public BrowserListObserver, - public extensions::ExtensionRegistryObserver { - public: - ExtensionRemovalWatcher(Browser* browser, - scoped_refptr extension, - base::OnceClosure callback); - ~ExtensionRemovalWatcher() override; - - private: - // ExtensionRegistryObserver: - void OnExtensionUnloaded(content::BrowserContext* browser_context, - const extensions::Extension* extension, - extensions::UnloadedExtensionReason reason) override; - - // BrowserListObserver: - void OnBrowserClosing(Browser* browser) override; - - raw_ptr browser_; - const scoped_refptr extension_; - base::OnceClosure callback_; - - base::ScopedObservation - extension_registry_observation_{this}; -}; - -#endif // CHROME_BROWSER_UI_EXTENSIONS_EXTENSION_REMOVAL_WATCHER_H_ diff --git a/src/chrome/browser/ui/passwords/well_known_change_password_navigation_throttle.cc b/src/chrome/browser/ui/passwords/well_known_change_password_navigation_throttle.cc index ffca56c51d2d9..f8a525304e2ca --- a/src/chrome/browser/ui/passwords/well_known_change_password_navigation_throttle.cc +++ b/src/chrome/browser/ui/passwords/well_known_change_password_navigation_throttle.cc @@ -135,13 +135,11 @@ WellKnownChangePasswordNavigationThrottle::WillProcessResponse() { // PostTask because the Throttle needs to be deferred before the status code // is set. After setting the status code Resume() can be called synchronous // and thereby before the throttle is deferred. This would result in a crash. - // Unretained is safe because the NavigationThrottle is deferred and can only - // be continued after the callback finished. base::SequencedTaskRunnerHandle::Get()->PostTask( FROM_HERE, base::BindOnce( &WellKnownChangePasswordState::SetChangePasswordResponseCode, - base::Unretained(&well_known_change_password_state_), + weak_ptr_factory_.GetWeakPtr(), navigation_handle()->GetResponseHeaders()->response_code())); return NavigationThrottle::DEFER; } diff --git a/src/chrome/browser/ui/passwords/well_known_change_password_navigation_throttle.h b/src/chrome/browser/ui/passwords/well_known_change_password_navigation_throttle.h index 10817f7efee69..d5727c6c442c1 --- a/src/chrome/browser/ui/passwords/well_known_change_password_navigation_throttle.h +++ b/src/chrome/browser/ui/passwords/well_known_change_password_navigation_throttle.h @@ -66,6 +66,8 @@ class WellKnownChangePasswordNavigationThrottle well_known_change_password_state_{this}; ukm::SourceId source_id_ = ukm::kInvalidSourceId; raw_ptr affiliation_service_ = nullptr; + base::WeakPtrFactory + weak_ptr_factory_{&well_known_change_password_state_}; }; #endif // CHROME_BROWSER_UI_PASSWORDS_WELL_KNOWN_CHANGE_PASSWORD_NAVIGATION_THROTTLE_H_ diff --git a/src/chrome/browser/ui/toolbar/app_menu_model.cc b/src/chrome/browser/ui/toolbar/app_menu_model.cc index 1ce8183547bb2..a54f7f372e53a --- a/src/chrome/browser/ui/toolbar/app_menu_model.cc +++ b/src/chrome/browser/ui/toolbar/app_menu_model.cc @@ -60,7 +60,6 @@ #include "components/dom_distiller/content/browser/uma_helper.h" #include "components/dom_distiller/core/dom_distiller_features.h" #include "components/dom_distiller/core/url_utils.h" -#include "components/media_router/browser/media_router_metrics.h" #include "components/prefs/pref_service.h" #include "components/profile_metrics/browser_profile_type.h" #include "components/signin/public/base/signin_metrics.h" @@ -104,6 +103,10 @@ #include "content/public/browser/gpu_data_manager.h" #endif +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) +#include "components/media_router/browser/media_router_metrics.h" +#endif + using base::UserMetricsAction; using content::WebContents; @@ -483,6 +486,7 @@ void AppMenuModel::LogMenuMetrics(int command_id) { LogMenuAction(MENU_ACTION_PRINT); break; +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) case IDC_ROUTE_MEDIA: if (!uma_action_recorded_) UMA_HISTOGRAM_MEDIUM_TIMES("WrenchMenu.TimeToAction.Cast", delta); @@ -492,6 +496,7 @@ void AppMenuModel::LogMenuMetrics(int command_id) { media_router::MediaRouterMetrics::RecordMediaRouterDialogOrigin( media_router::MediaRouterDialogOpenOrigin::APP_MENU); break; +#endif // Edit menu. case IDC_CUT: @@ -826,8 +831,10 @@ void AppMenuModel::Build() { AddItemWithStringId(IDC_PRINT, IDS_PRINT); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) if (media_router::MediaRouterEnabled(browser()->profile())) AddItemWithStringId(IDC_ROUTE_MEDIA, IDS_MEDIA_ROUTER_MENU_ITEM_TITLE); +#endif AddItemWithStringId(IDC_FIND, IDS_FIND); diff --git a/src/chrome/browser/ui/views/chrome_browser_main_extra_parts_views.cc b/src/chrome/browser/ui/views/chrome_browser_main_extra_parts_views.cc index dab357db218ba..366c1d7373c6f --- a/src/chrome/browser/ui/views/chrome_browser_main_extra_parts_views.cc +++ b/src/chrome/browser/ui/views/chrome_browser_main_extra_parts_views.cc @@ -16,11 +16,9 @@ #include "chrome/browser/ui/views/chrome_layout_provider.h" #include "chrome/browser/ui/views/chrome_views_delegate.h" #include "chrome/browser/ui/views/devtools_process_observer.h" -#include "chrome/browser/ui/views/media_router/media_router_dialog_controller_views.h" #include "chrome/browser/ui/views/relaunch_notification/relaunch_notification_controller.h" #include "chrome/common/chrome_paths.h" #include "components/constrained_window/constrained_window_views.h" -#include "components/media_router/browser/media_router_dialog_controller.h" #include "components/ui_devtools/connector_delegate.h" #include "components/ui_devtools/switches.h" #include "components/ui_devtools/views/devtools_server_util.h" @@ -53,6 +51,11 @@ #include "ui/base/l10n/l10n_util.h" #endif // BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS_LACROS) +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) +#include "chrome/browser/ui/views/media_router/media_router_dialog_controller_views.h" +#include "components/media_router/browser/media_router_dialog_controller.h" +#endif + namespace { // Owned by ChromeBrowserMainParts. @@ -121,6 +124,7 @@ void ChromeBrowserMainExtraPartsViews::PreProfileInit() { CreateUiDevTools(); } +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) media_router::MediaRouterDialogController::SetGetOrCreate( base::BindRepeating([](content::WebContents* web_contents) { DCHECK(web_contents); @@ -133,6 +137,7 @@ void ChromeBrowserMainExtraPartsViews::PreProfileInit() { web_contents); return controller; })); +#endif // TODO(crbug.com/1052397): Revisit the macro expression once build flag switch // of lacros-chrome is complete. diff --git a/src/chrome/browser/ui/views/send_tab_to_self/send_tab_to_self_bubble_view_impl.h b/src/chrome/browser/ui/views/send_tab_to_self/send_tab_to_self_bubble_view_impl.h index ad96a6657884c..0766b94173ce6 --- a/src/chrome/browser/ui/views/send_tab_to_self/send_tab_to_self_bubble_view_impl.h +++ b/src/chrome/browser/ui/views/send_tab_to_self/send_tab_to_self_bubble_view_impl.h @@ -11,10 +11,16 @@ #include #include "base/memory/raw_ptr.h" -#include "chrome/browser/ui/media_router/cast_dialog_controller.h" #include "chrome/browser/ui/send_tab_to_self/send_tab_to_self_bubble_view.h" #include "chrome/browser/ui/views/location_bar/location_bar_bubble_delegate_view.h" +#if BUILDFLAG(IS_OHOS) +#include "media/media_buildflags.h" +#if BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) +#include "chrome/browser/ui/media_router/cast_dialog_controller.h" +#endif +#endif + namespace content { class WebContents; } // namespace content diff --git a/src/chrome/browser/ui/views/toolbar/toolbar_view.cc b/src/chrome/browser/ui/views/toolbar/toolbar_view.cc index 4a3121cedf083..41b6d132fdcc9 --- a/src/chrome/browser/ui/views/toolbar/toolbar_view.cc +++ b/src/chrome/browser/ui/views/toolbar/toolbar_view.cc @@ -47,10 +47,7 @@ #include "chrome/browser/ui/views/frame/browser_non_client_frame_view.h" #include "chrome/browser/ui/views/frame/browser_view.h" #include "chrome/browser/ui/views/frame/top_container_background.h" -#include "chrome/browser/ui/views/global_media_controls/media_toolbar_button_contextual_menu.h" -#include "chrome/browser/ui/views/global_media_controls/media_toolbar_button_view.h" #include "chrome/browser/ui/views/location_bar/star_view.h" -#include "chrome/browser/ui/views/media_router/cast_toolbar_button.h" #include "chrome/browser/ui/views/page_action/page_action_icon_container.h" #include "chrome/browser/ui/views/page_action/page_action_icon_controller.h" #include "chrome/browser/ui/views/send_tab_to_self/send_tab_to_self_toolbar_icon_view.h" @@ -130,6 +127,12 @@ #include "chrome/browser/ui/views/side_search/side_search_browser_controller.h" #endif // BUILDFLAG(ENABLE_SIDE_SEARCH) +#if !BUILDFLAG(IS_OHOS) +#include "chrome/browser/ui/views/media_router/cast_toolbar_button.h" +#include "chrome/browser/ui/views/global_media_controls/media_toolbar_button_contextual_menu.h" +#include "chrome/browser/ui/views/global_media_controls/media_toolbar_button_view.h" +#endif + using base::UserMetricsAction; using content::WebContents; @@ -255,6 +258,7 @@ void ToolbarView::Init() { extensions_container = std::make_unique(browser_); } +#if !BUILDFLAG(IS_OHOS) std::unique_ptr cast; if (media_router::MediaRouterEnabled(browser_->profile())) cast = media_router::CastToolbarButton::Create(browser_); @@ -264,6 +268,7 @@ void ToolbarView::Init() { media_button = std::make_unique( browser_view_, MediaToolbarButtonContextualMenu::Create(browser_)); } +#endif std::unique_ptr download_button; if (base::FeatureList::IsEnabled(features::kDownloadBubble)) { @@ -345,11 +350,13 @@ void ToolbarView::Init() { } } +#if !BUILDFLAG(IS_OHOS) if (cast) cast_ = AddChildView(std::move(cast)); if (media_button) media_button_ = AddChildView(std::move(media_button)); +#endif if (download_button) download_button_ = AddChildView(std::move(download_button)); diff --git a/src/chrome/browser/ui/web_applications/web_app_menu_model.cc b/src/chrome/browser/ui/web_applications/web_app_menu_model.cc index 29e159f5d7fba..9818769d99528 --- a/src/chrome/browser/ui/web_applications/web_app_menu_model.cc +++ b/src/chrome/browser/ui/web_applications/web_app_menu_model.cc @@ -144,8 +144,10 @@ void WebAppMenuModel::Build() { AddSeparator(ui::UPPER_SEPARATOR); AddItemWithStringId(IDC_PRINT, IDS_PRINT); AddItemWithStringId(IDC_FIND, IDS_FIND); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) if (media_router::MediaRouterEnabled(browser()->profile())) AddItemWithStringId(IDC_ROUTE_MEDIA, IDS_MEDIA_ROUTER_MENU_ITEM_TITLE); +#endif AddSeparator(ui::LOWER_SEPARATOR); CreateCutCopyPasteMenu(); } diff --git a/src/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc b/src/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc index 63b3cd6439765..33e2a3c8cc7bc --- a/src/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc +++ b/src/chrome/browser/ui/webui/chrome_web_ui_controller_factory.cc @@ -120,9 +120,7 @@ #include "components/feed/buildflags.h" #include "components/feed/feed_feature_list.h" #else // BUILDFLAG(IS_ANDROID) -#include "chrome/browser/media/router/media_router_feature.h" #include "chrome/browser/ui/ui_features.h" -#include "chrome/browser/ui/webui/access_code_cast/access_code_cast_ui.h" #include "chrome/browser/ui/webui/app_service_internals/app_service_internals_ui.h" #include "chrome/browser/ui/webui/bookmarks/bookmarks_ui.h" #include "chrome/browser/ui/webui/commander/commander_ui.h" @@ -135,7 +133,6 @@ #include "chrome/browser/ui/webui/image_editor/image_editor_ui.h" #include "chrome/browser/ui/webui/inspect_ui.h" #include "chrome/browser/ui/webui/management/management_ui.h" -#include "chrome/browser/ui/webui/media_router/media_router_internals_ui.h" #include "chrome/browser/ui/webui/new_tab_page/new_tab_page_ui.h" #include "chrome/browser/ui/webui/new_tab_page_third_party/new_tab_page_third_party_ui.h" #include "chrome/browser/ui/webui/ntp/new_tab_ui.h" @@ -368,6 +365,12 @@ #include "chrome/browser/ui/webui/chromeos/chromebox_for_meetings/network_settings_dialog.h" #endif // BUILDFLAG(PLATFORM_CFM) +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) +#include "chrome/browser/media/router/media_router_feature.h" +#include "chrome/browser/ui/webui/access_code_cast/access_code_cast_ui.h" +#include "chrome/browser/ui/webui/media_router/media_router_internals_ui.h" +#endif + using content::WebUI; using content::WebUIController; using ui::WebDialogUI; @@ -791,10 +794,12 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui, return &NewWebUI; if (url.host_piece() == chrome::kChromeUISystemInfoHost) return &NewWebUI; +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) if (base::FeatureList::IsEnabled(features::kAccessCodeCastUI)) { if (url.host_piece() == chrome::kChromeUIAccessCodeCastHost) return &NewWebUI; } +#endif if (base::FeatureList::IsEnabled(features::kSupportTool) && url.host_piece() == chrome::kChromeUISupportToolHost) return &NewWebUI; @@ -1126,11 +1131,13 @@ WebUIFactoryFunction GetWebUIFactoryFunction(WebUI* web_ui, base::FeatureList::IsEnabled(features::kChromeWhatsNewUI)) { return &NewWebUI; } +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(OHOS_ENABLE_MEDIA_ROUTER) if (url.host_piece() == chrome::kChromeUIMediaRouterInternalsHost && media_router::MediaRouterEnabled(profile)) { return &NewWebUI; } #endif +#endif #if BUILDFLAG(IS_WIN) || BUILDFLAG(IS_LINUX) || BUILDFLAG(IS_CHROMEOS) || \ BUILDFLAG(IS_ANDROID) if (url.host_piece() == chrome::kChromeUISandboxHost) { diff --git a/src/chrome/browser/ui/webui/signin/inline_login_handler_impl.cc b/src/chrome/browser/ui/webui/signin/inline_login_handler_impl.cc index 6da1ddc58bbeb..862b04e73138e --- a/src/chrome/browser/ui/webui/signin/inline_login_handler_impl.cc +++ b/src/chrome/browser/ui/webui/signin/inline_login_handler_impl.cc @@ -421,11 +421,13 @@ void InlineSigninHelper::OnClientOAuthSuccessAndBrowserOpened( // Display a confirmation dialog to the user. base::RecordAction( base::UserMetricsAction("Signin_Show_UntrustedSigninPrompt")); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_ONE_CLICK_SIGNIN) Browser* browser = chrome::FindLastActiveWithProfile(profile_); browser->window()->ShowOneClickSigninConfirmation( base::UTF8ToUTF16(email_), base::BindOnce(&InlineSigninHelper::UntrustedSigninConfirmed, base::Unretained(this), result.refresh_token)); +#endif return; } CreateSyncStarter(result.refresh_token); diff --git a/src/chrome/browser/ui/webui/webui_util.cc b/src/chrome/browser/ui/webui/webui_util.cc index 3298b3d3c809f..90f3088dca459 --- a/src/chrome/browser/ui/webui/webui_util.cc +++ b/src/chrome/browser/ui/webui/webui_util.cc @@ -21,7 +21,7 @@ #include "base/enterprise_util.h" #endif -#if defined(TOOLKIT_VIEWS) +#if defined(TOOLKIT_VIEWS) || BUILDFLAG(IS_OHOS) #include "chrome/browser/ui/browser.h" #include "chrome/browser/ui/browser_finder.h" #include "chrome/browser/ui/browser_window.h" @@ -66,7 +66,7 @@ bool IsEnterpriseManaged() { #endif } -#if defined(TOOLKIT_VIEWS) +#if defined(TOOLKIT_VIEWS) || BUILDFLAG(IS_OHOS) ui::NativeTheme* GetNativeTheme(content::WebContents* web_contents) { ui::NativeTheme* native_theme = nullptr; diff --git a/src/chrome/browser/ui/webui/webui_util.h b/src/chrome/browser/ui/webui/webui_util.h index afa3e78ed2834..c0778ec6cd453 --- a/src/chrome/browser/ui/webui/webui_util.h +++ b/src/chrome/browser/ui/webui/webui_util.h @@ -39,7 +39,7 @@ void SetupWebUIDataSource(content::WebUIDataSource* source, // false. bool IsEnterpriseManaged(); -#if defined(TOOLKIT_VIEWS) +#if defined(TOOLKIT_VIEWS) || BUILDFLAG(IS_OHOS) // Returns whether WebContents should use dark mode colors depending on the // theme. ui::NativeTheme* GetNativeTheme(content::WebContents* web_contents); diff --git a/src/chrome/chrome_paks.gni b/src/chrome/chrome_paks.gni index 8a56f21945249..38e26e4a14994 --- a/src/chrome/chrome_paks.gni +++ b/src/chrome/chrome_paks.gni @@ -58,7 +58,7 @@ template("chrome_repack_percent") { deps += invoker.deps } - if (toolkit_views || is_ohos) { + if (toolkit_views) { sources += [ "$root_gen_dir/ui/views/resources/views_resources_${percent}_percent.pak" ] deps += [ "//ui/views/resources" ] } @@ -143,7 +143,7 @@ template("chrome_extra_paks") { deps += [ "//ohos_nweb_ex/overrides/ui/resources" ] } - if (!is_android) { + if (!is_android && !is_ohos) { # New paks should be added here by default. sources += [ "$root_gen_dir/chrome/access_code_cast_resources.pak", @@ -326,7 +326,7 @@ template("chrome_extra_paks") { sources += [ "$root_gen_dir/chrome/webui_js_error_resources.pak" ] deps += [ "//chrome/browser/resources/webui_js_error:resources" ] } - if (!is_android && !is_chromeos_ash) { + if (!is_android && !is_chromeos_ash && !is_ohos) { sources += [ "$root_gen_dir/chrome/apps_resources.pak", "$root_gen_dir/chrome/profile_picker_resources.pak", diff --git a/src/chrome/common/BUILD.gn b/src/chrome/common/BUILD.gn index 140e1b3256b95..78e10e95bdae8 --- a/src/chrome/common/BUILD.gn +++ b/src/chrome/common/BUILD.gn @@ -249,6 +249,10 @@ static_library("common") { "//components/page_load_metrics/common:common", ] + if (is_ohos && !ohos_enable_media_router) { + public_deps -= [ "//components/cast_certificate" ] + } + if (enable_pdf) { deps += [ "//components/pdf/common" ] } diff --git a/src/chrome/common/features.gni b/src/chrome/common/features.gni index c453fe0c0d203..9d69a1f9b2ccb --- a/src/chrome/common/features.gni +++ b/src/chrome/common/features.gni @@ -33,8 +33,9 @@ declare_args() { builtin_cert_verifier_policy_supported = is_mac # Enables support for background apps. - enable_background_contents = !is_android && !is_chromecast - enable_background_mode = !is_android && !is_chromecast && !is_chromeos + enable_background_contents = !is_android && !is_chromecast && !is_ohos + enable_background_mode = + !is_android && !is_chromecast && !is_chromeos && !is_ohos # Enable the printing system dialog for platforms that support printing # and have a system dialog. @@ -53,7 +54,7 @@ declare_args() { enable_one_click_signin = is_win || is_mac || is_fuchsia || ((is_linux || is_chromeos_lacros) && !is_chromecast) - enable_service_discovery = (enable_mdns && !is_android) || is_mac + enable_service_discovery = (enable_mdns && !is_android && !is_ohos) || is_mac # Enables use of the session service, which is enabled by default. # Android stores them separately on the Java side. diff --git a/src/chrome/services/speech/speech_recognition_recognizer_impl.cc b/src/chrome/services/speech/speech_recognition_recognizer_impl.cc index db205242046fb..14026f5c8f820 --- a/src/chrome/services/speech/speech_recognition_recognizer_impl.cc +++ b/src/chrome/services/speech/speech_recognition_recognizer_impl.cc @@ -12,6 +12,9 @@ #include "base/files/file_path.h" #include "base/files/file_util.h" #include "base/metrics/histogram_functions.h" +#include "base/task/task_runner.h" +#include "base/task/task_traits.h" +#include "base/task/thread_pool.h" #include "build/build_config.h" #include "build/chromeos_buildflags.h" #include "chrome/services/speech/soda/proto/soda_api.pb.h" @@ -190,7 +193,6 @@ SpeechRecognitionRecognizerImpl::SpeechRecognitionRecognizerImpl( &SpeechRecognitionRecognizerImpl::OnRecognitionStoppedCallback, weak_factory_.GetWeakPtr())); - // Unretained is safe because |this| owns the mojo::Remote. client_remote_.set_disconnect_handler( base::BindOnce(&SpeechRecognitionRecognizerImpl::OnClientHostDisconnected, weak_factory_.GetWeakPtr())); @@ -300,13 +302,40 @@ void SpeechRecognitionRecognizerImpl::OnLanguageChanged( if (language_code == language_ || language_code == LanguageCode::kNone) return; - language_ = language_component_config.value().language_code; - base::FilePath config_path = GetLatestSodaLanguagePackDirectory(language); - if (base::PathExists(config_path)) { + if (!task_runner_) { + task_runner_ = base::ThreadPool::CreateSequencedTaskRunner( + {base::MayBlock(), base::TaskPriority::BEST_EFFORT, + base::TaskShutdownBehavior::SKIP_ON_SHUTDOWN}); + } + + // Changing the language requires a blocking call to check if the language + // pack exists on the device. + scoped_refptr current_task_runner = + base::SequencedTaskRunnerHandle::Get(); + + base::FilePath config_file_path = + GetLatestSodaLanguagePackDirectory(language); + + task_runner_->PostTaskAndReplyWithResult( + FROM_HERE, + base::BindOnce( + [](base::FilePath config_path) { + return base::PathExists(config_path); + }, + config_file_path), + base::BindOnce(&SpeechRecognitionRecognizerImpl::ResetSodaWithNewLanguage, + weak_factory_.GetWeakPtr(), config_file_path, + language_code)); +} + +void SpeechRecognitionRecognizerImpl::ResetSodaWithNewLanguage( + base::FilePath config_path, + speech::LanguageCode language_code, + bool config_exists) { + if (config_exists) { config_path_ = config_path; + language_ = language_code; ResetSoda(); - } else { - NOTREACHED(); } } diff --git a/src/chrome/services/speech/speech_recognition_recognizer_impl.h b/src/chrome/services/speech/speech_recognition_recognizer_impl.h index c3eea81ba6765..8855af66632ba --- a/src/chrome/services/speech/speech_recognition_recognizer_impl.h +++ b/src/chrome/services/speech/speech_recognition_recognizer_impl.h @@ -106,6 +106,9 @@ class SpeechRecognitionRecognizerImpl private: void OnLanguageChanged(const std::string& language) final; + void ResetSodaWithNewLanguage(base::FilePath config_path, + speech::LanguageCode language_code, + bool config_exists); void RecordDuration(); // Called as a response to sending a SpeechRecognitionEvent to the client @@ -145,6 +148,8 @@ class SpeechRecognitionRecognizerImpl // Whether the client is still requesting speech recognition. bool is_client_requesting_speech_recognition_ = true; + scoped_refptr task_runner_; + base::WeakPtrFactory weak_factory_{this}; }; diff --git a/src/chrome/test/BUILD.gn b/src/chrome/test/BUILD.gn index 5203504a20461..52e28622b8f98 --- a/src/chrome/test/BUILD.gn +++ b/src/chrome/test/BUILD.gn @@ -4958,6 +4958,7 @@ test("unit_tests") { "../browser/search/contextual_search_policy_handler_android_unittest.cc", "../browser/translate/android/translate_bridge_unittest.cc", "../browser/ui/android/autofill/save_card_message_controller_android_unittest.cc", + "../browser/ui/android/device_dialog/usb_chooser_dialog_android_unittest.cc", "../browser/ui/android/tab_model/tab_model_list_unittest.cc", "../browser/ui/android/toolbar/location_bar_model_android_unittest.cc", ] @@ -5875,6 +5876,7 @@ test("unit_tests") { "//components/webapk:proto", "//components/webapps/browser", "//content/public/android:content_java", + "//ui/android", "//ui/events/devices:test_support", ] if (use_v8_context_snapshot) { @@ -8007,7 +8009,11 @@ static_library("test_support_unit") { } } -if (!is_android) { +if (is_ohos) { + group("test_support_ui") {} +} + +if (!is_android && !is_ohos) { static_library("test_support_ui") { defines = [] testonly = true diff --git a/src/chrome/test/data/extensions/api_test/socket/api/multicast.js b/src/chrome/test/data/extensions/api_test/socket/api/multicast.js index 2447a82ebf4eb..3e86952e5b2b0 --- a/src/chrome/test/data/extensions/api_test/socket/api/multicast.js +++ b/src/chrome/test/data/extensions/api_test/socket/api/multicast.js @@ -163,8 +163,7 @@ function testMulticast() { var canceller = waitForMessage(serverSocketId, function (cancelled) { clearTimeout(recvTimeout); if (cancelled) { - socket.destroy(serverSocketId); - chrome.test.succeed(); + leaveGroupAndDisconnect(serverSocketId); } else { chrome.test.fail("Received message after leaving the group"); socket.destroy(serverSocketId); @@ -173,9 +172,20 @@ function testMulticast() { testSendMessage(request); recvTimeout = setTimeout(function () { canceller(); + }, 2000); + }); + } + + function leaveGroupAndDisconnect(serverSocketId) { + socket.joinGroup(serverSocketId, kMulticastAddress, function (result) { + chrome.test.assertNoLastError(); + chrome.test.assertEq(0, result, "Join group failed."); + socket.leaveGroup(serverSocketId, kMulticastAddress, () => { + chrome.test.assertEq(0, result, "Leave group failed."); socket.destroy(serverSocketId); chrome.test.succeed(); - }, 2000); + }); + socket.disconnect(serverSocketId); }); } @@ -195,4 +205,4 @@ function testMulticast() { } testMulticastSettings(); -} \ No newline at end of file +} diff --git a/src/components/feedback/feedback_data.cc b/src/components/feedback/feedback_data.cc index 89e262835f095..5c14825e15a71 --- a/src/components/feedback/feedback_data.cc +++ b/src/components/feedback/feedback_data.cc @@ -34,7 +34,14 @@ const char kHistogramsAttachmentName[] = "histograms.zip"; FeedbackData::FeedbackData(base::WeakPtr uploader, TracingManager* tracing_manager) - : uploader_(std::move(uploader)), tracing_manager_(tracing_manager) {} + : uploader_(std::move(uploader)) { + // If tracing is enabled, the tracing manager should have been created before + // sending the report. If it is created after this point, then the tracing is + // not relevant to this report. + if (tracing_manager) { + tracing_manager_ = base::AsWeakPtr(tracing_manager); + } +} FeedbackData::~FeedbackData() = default; diff --git a/src/components/feedback/feedback_data.h b/src/components/feedback/feedback_data.h index 72e0ba52a1b0a..5332def682812 --- a/src/components/feedback/feedback_data.h +++ b/src/components/feedback/feedback_data.h @@ -124,7 +124,7 @@ class FeedbackData : public FeedbackCommon { std::string attached_file_uuid_ GUARDED_BY_CONTEXT(sequence_checker_); std::string screenshot_uuid_ GUARDED_BY_CONTEXT(sequence_checker_); - const raw_ptr tracing_manager_ = nullptr; // Not owned. + base::WeakPtr tracing_manager_; int trace_id_ GUARDED_BY_CONTEXT(sequence_checker_) = 0; int pending_op_count_ GUARDED_BY_CONTEXT(sequence_checker_) = 1; diff --git a/src/components/feedback/tracing_manager.h b/src/components/feedback/tracing_manager.h index 8cfce38f088b0..548ff25b307bf --- a/src/components/feedback/tracing_manager.h +++ b/src/components/feedback/tracing_manager.h @@ -7,6 +7,7 @@ #include "base/callback.h" #include "base/memory/scoped_refptr.h" +#include "base/memory/weak_ptr.h" namespace base { class RefCountedString; @@ -24,7 +25,7 @@ using TraceDataCallback = // of the performance data. That data can then be requested via GetTraceData(). // When the data is no longer needed, it should be discarded via // DiscardTraceData(). -class TracingManager { +class TracingManager : public base::SupportsWeakPtr { public: virtual ~TracingManager(); diff --git a/src/components/nacl/features.gni b/src/components/nacl/features.gni index a2547a2cd6d70..8e3a1c6cd99f0 --- a/src/components/nacl/features.gni +++ b/src/components/nacl/features.gni @@ -14,7 +14,7 @@ declare_args() { checkout_nacl && target_os != "ios" && !is_android && !is_fuchsia && !is_chromecast && current_cpu != "mipsel" && current_cpu != "mips64el" && target_cpu != "arm64" && !(is_win && host_os != "win") && - !(is_mac && (host_os != "mac" || target_cpu != "x64")) + !(is_mac && (host_os != "mac" || target_cpu != "x64")) && !is_ohos } assert(!(is_win && host_os != "win") || !enable_nacl, diff --git a/src/components/offline_pages/buildflags/features.gni b/src/components/offline_pages/buildflags/features.gni index 09b6a0e609e98..2c8c75b1f4f50 --- a/src/components/offline_pages/buildflags/features.gni +++ b/src/components/offline_pages/buildflags/features.gni @@ -5,7 +5,7 @@ declare_args() { # Whether to enable OfflinePages support. Currently user-visible features # are Android-only. - enable_offline_pages = is_android || is_ohos + enable_offline_pages = is_android # This enables test API for locally-built harness which is used for quality # evaluations. Requires setting this variable manually at local environment. diff --git a/src/components/optimization_guide/features.gni b/src/components/optimization_guide/features.gni index e8b4ffc271710..01821481f82b6 --- a/src/components/optimization_guide/features.gni +++ b/src/components/optimization_guide/features.gni @@ -8,7 +8,7 @@ declare_args() { # This enables build with TFLite library. # Currently only available for Desktop and Android. build_with_tflite_lib = is_android || (is_win && target_cpu != "arm64") || - is_linux || is_mac || is_chromeos || is_fuchsia || is_ohos + is_linux || is_mac || is_chromeos || is_fuchsia # You can set the variable 'build_with_internal_optimization_guide' to true # even in a developer build in args.gn. Setting this variable explicitly to true will @@ -25,5 +25,5 @@ declare_args() { # Android and iOS should just work but are not included in the set we release for, so we do # not needlessly increase the binary. build_with_internal_optimization_guide = - is_chrome_branded && !is_android && !is_ios && !is_fuchsia + is_chrome_branded && !is_android && !is_ios && !is_fuchsia && !is_ohos } diff --git a/src/components/pdf/renderer/pdf_accessibility_tree.cc b/src/components/pdf/renderer/pdf_accessibility_tree.cc index da26cbc03503a..a1acc80c53ea6 --- a/src/components/pdf/renderer/pdf_accessibility_tree.cc +++ b/src/components/pdf/renderer/pdf_accessibility_tree.cc @@ -665,9 +665,11 @@ class PdfAccessibilityTreeBuilder { ax::mojom::Role::kPdfActionableHighlight, ax::mojom::Restriction::kReadOnly, render_accessibility_, nodes_); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) highlight_node->AddStringAttribute( ax::mojom::StringAttribute::kRoleDescription, l10n_util::GetStringUTF8(IDS_AX_ROLE_DESCRIPTION_PDF_HIGHLIGHT)); +#endif highlight_node->AddStringAttribute(ax::mojom::StringAttribute::kName, std::string()); highlight_node->relative_bounds.bounds = highlight.bounds; @@ -683,9 +685,11 @@ class PdfAccessibilityTreeBuilder { CreateNode(ax::mojom::Role::kNote, ax::mojom::Restriction::kReadOnly, render_accessibility_, nodes_); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) popup_note_node->AddStringAttribute( ax::mojom::StringAttribute::kRoleDescription, l10n_util::GetStringUTF8(IDS_AX_ROLE_DESCRIPTION_PDF_POPUP_NOTE)); +#endif popup_note_node->relative_bounds.bounds = highlight.bounds; ui::AXNodeData* static_popup_note_text_node = CreateNode( @@ -1330,9 +1334,11 @@ void PdfAccessibilityTree::SetAccessibilityDocInfo( doc_node_ = CreateNode(ax::mojom::Role::kPdfRoot, ax::mojom::Restriction::kReadOnly, render_accessibility, &nodes_); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) doc_node_->AddStringAttribute(ax::mojom::StringAttribute::kName, l10n_util::GetPluralStringFUTF8( IDS_PDF_DOCUMENT_PAGE_COUNT, page_count_)); +#endif // Because all of the coordinates are expressed relative to the // doc's coordinates, the origin of the doc must be (0, 0). Its @@ -1371,9 +1377,11 @@ void PdfAccessibilityTree::SetAccessibilityPageInfo( ui::AXNodeData* page_node = CreateNode(ax::mojom::Role::kRegion, ax::mojom::Restriction::kReadOnly, render_accessibility, &nodes_); +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) page_node->AddStringAttribute( ax::mojom::StringAttribute::kName, l10n_util::GetPluralStringFUTF8(IDS_PDF_PAGE_INDEX, page_index + 1)); +#endif page_node->AddBoolAttribute(ax::mojom::BoolAttribute::kIsPageBreakingObject, true); diff --git a/src/components/pdf/renderer/pepper_pdf_host.cc b/src/components/pdf/renderer/pepper_pdf_host.cc index c76d903481aca..32582622ef95a --- a/src/components/pdf/renderer/pepper_pdf_host.cc +++ b/src/components/pdf/renderer/pepper_pdf_host.cc @@ -123,7 +123,9 @@ int32_t PepperPDFHost::OnHostMsgDidStartLoading( if (!render_frame) return PP_ERROR_FAILED; +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) render_frame->PluginDidStartLoading(); +#endif return PP_OK; } @@ -133,7 +135,9 @@ int32_t PepperPDFHost::OnHostMsgDidStopLoading( if (!render_frame) return PP_ERROR_FAILED; +#if BUILDFLAG(IS_OHOS) && BUILDFLAG(ENABLE_PLUGINS) render_frame->PluginDidStopLoading(); +#endif return PP_OK; } diff --git a/src/components/permissions/BUILD.gn b/src/components/permissions/BUILD.gn index 8cbc3d9fbf84e..6f78734a9f607 --- a/src/components/permissions/BUILD.gn +++ b/src/components/permissions/BUILD.gn @@ -258,7 +258,11 @@ source_set("unit_tests") { ] } if (is_android) { - sources += [ "android/permission_dialog_delegate_unittest.cc" ] + sources += [ + "android/bluetooth_chooser_android_unittest.cc", + "android/bluetooth_scanning_prompt_android_unittest.cc", + "android/permission_dialog_delegate_unittest.cc" + ] } deps = [ ":permissions", @@ -271,6 +275,7 @@ source_set("unit_tests") { "//components/content_settings/core/browser", "//components/keyed_service/content", "//components/prefs:test_support", + "//components/security_state/core", "//components/strings:components_strings_grit", "//components/ukm:test_support", "//components/ukm/content", @@ -289,6 +294,7 @@ source_set("unit_tests") { "//components/location/android:location_settings_dialog_enums_java", "//components/location/android:test_support", "//components/permissions/android:test_support", + "//ui/android", ] } } diff --git a/src/components/permissions/android/bluetooth_chooser_android.cc b/src/components/permissions/android/bluetooth_chooser_android.cc index 3ed0cbeccca6d..95d2580846d51 --- a/src/components/permissions/android/bluetooth_chooser_android.cc +++ b/src/components/permissions/android/bluetooth_chooser_android.cc @@ -6,10 +6,12 @@ #include "base/android/jni_android.h" #include "base/android/jni_string.h" +#include "base/functional/bind.h" #include "base/strings/utf_string_conversions.h" #include "components/permissions/android/bluetooth_chooser_android_delegate.h" #include "components/permissions/android/jni_headers/BluetoothChooserDialog_jni.h" #include "components/permissions/constants.h" +#include "components/permissions/permission_util.h" #include "components/url_formatter/elide_url.h" #include "content/public/browser/render_frame_host.h" #include "ui/android/window_android.h" @@ -22,14 +24,28 @@ using base::android::ScopedJavaLocalRef; namespace permissions { +namespace { + +BluetoothChooserAndroid::CreateJavaDialogCallback +GetCreateJavaBluetoothChooserDialogCallback() { + return base::BindOnce(&Java_BluetoothChooserDialog_create); +} + +} // namespace + BluetoothChooserAndroid::BluetoothChooserAndroid( content::RenderFrameHost* frame, const EventHandler& event_handler, - std::unique_ptr delegate) + std::unique_ptr delegate, + CreateJavaDialogCallback create_java_dialog_callback) : web_contents_(content::WebContents::FromRenderFrameHost(frame)), event_handler_(event_handler), delegate_(std::move(delegate)) { - const url::Origin origin = frame->GetLastCommittedOrigin(); + // Permission delegation means the permission request should be attributed to + // the main frame. + const url::Origin origin = url::Origin::Create( + permissions::PermissionUtil::GetLastCommittedOriginAsURL( + frame->GetMainFrame())); DCHECK(!origin.opaque()); ScopedJavaLocalRef window_android = @@ -40,12 +56,22 @@ BluetoothChooserAndroid::BluetoothChooserAndroid( ScopedJavaLocalRef origin_string = base::android::ConvertUTF16ToJavaString( env, url_formatter::FormatOriginForSecurityDisplay(origin)); - java_dialog_.Reset(Java_BluetoothChooserDialog_create( - env, window_android, origin_string, - delegate_->GetSecurityLevel(web_contents_), delegate_->GetJavaObject(), - reinterpret_cast(this))); + java_dialog_.Reset(std::move(create_java_dialog_callback) + .Run(env, window_android, origin_string, + delegate_->GetSecurityLevel(web_contents_), + delegate_->GetJavaObject(), + reinterpret_cast(this))); } +BluetoothChooserAndroid::BluetoothChooserAndroid( + content::RenderFrameHost* frame, + const EventHandler& event_handler, + std::unique_ptr delegate) + : BluetoothChooserAndroid(frame, + event_handler, + std::move(delegate), + GetCreateJavaBluetoothChooserDialogCallback()) {} + BluetoothChooserAndroid::~BluetoothChooserAndroid() { if (!java_dialog_.is_null()) { Java_BluetoothChooserDialog_closeDialog(AttachCurrentThread(), diff --git a/src/components/permissions/android/bluetooth_chooser_android.h b/src/components/permissions/android/bluetooth_chooser_android.h index 687c9501fd78d..1c3250d673275 --- a/src/components/permissions/android/bluetooth_chooser_android.h +++ b/src/components/permissions/android/bluetooth_chooser_android.h @@ -7,7 +7,11 @@ #include +#include "base/android/jni_android.h" +#include "base/android/jni_int_wrapper.h" +#include "base/android/jni_string.h" #include "base/android/scoped_java_ref.h" +#include "base/memory/ptr_util.h" #include "base/memory/raw_ptr.h" #include "content/public/browser/bluetooth_chooser.h" #include "content/public/browser/web_contents.h" @@ -20,6 +24,16 @@ class BluetoothChooserAndroidDelegate; // options. class BluetoothChooserAndroid : public content::BluetoothChooser { public: + // The callback type for creating the java dialog object. + using CreateJavaDialogCallback = + base::OnceCallback( + JNIEnv*, + const base::android::JavaRef&, + const base::android::JavaRef&, + JniIntWrapper, + const base::android::JavaRef&, + jlong)>; + // Both frame and event_handler must outlive the BluetoothChooserAndroid. BluetoothChooserAndroid( content::RenderFrameHost* frame, @@ -52,8 +66,26 @@ class BluetoothChooserAndroid : public content::BluetoothChooser { void ShowBluetoothAdapterOffLink(JNIEnv* env); void ShowNeedLocationPermissionLink(JNIEnv* env); + static std::unique_ptr CreateForTesting( + content::RenderFrameHost* frame, + const EventHandler& event_handler, + std::unique_ptr delegate, + CreateJavaDialogCallback create_java_dialog_callback) { + // Using `new` to access a non-public constructor. + return base::WrapUnique( + new BluetoothChooserAndroid(frame, event_handler, std::move(delegate), + std::move(create_java_dialog_callback))); + } + private: + BluetoothChooserAndroid( + content::RenderFrameHost* frame, + const EventHandler& event_handler, + std::unique_ptr delegate, + CreateJavaDialogCallback create_java_dialog_callback); + void OpenURL(const char* url); + base::android::ScopedJavaGlobalRef java_dialog_; raw_ptr web_contents_; diff --git a/src/components/permissions/android/bluetooth_chooser_android_unittest.cc b/src/components/permissions/android/bluetooth_chooser_android_unittest.cc new file mode 100644 index 0000000000000..4eb6b6fe92048 --- /dev/null +++ b/src/components/permissions/android/bluetooth_chooser_android_unittest.cc @@ -0,0 +1,75 @@ +// Copyright 2022 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "components/permissions/android/bluetooth_chooser_android.h" + +#include + +#include "base/test/bind.h" +#include "base/test/mock_callback.h" +#include "components/permissions/android/bluetooth_chooser_android_delegate.h" +#include "components/security_state/core/security_state.h" +#include "content/public/browser/web_contents.h" +#include "content/public/test/navigation_simulator.h" +#include "content/public/test/test_renderer_host.h" +#include "testing/gmock/include/gmock/gmock.h" +#include "testing/gtest/include/gtest/gtest.h" +#include "ui/android/window_android.h" + +namespace permissions { + +namespace { + +using BluetoothChooserAndroidTest = content::RenderViewHostTestHarness; +using testing::_; + +class FakeBluetoothChooserAndroidDelegate + : public BluetoothChooserAndroidDelegate { + base::android::ScopedJavaLocalRef GetJavaObject() override { + return base::android::ScopedJavaLocalRef(); + } + security_state::SecurityLevel GetSecurityLevel( + content::WebContents* web_contents) override { + return security_state::NONE; + } +}; + +TEST_F(BluetoothChooserAndroidTest, FrameTree) { + NavigateAndCommit(GURL("https://main-frame.com")); + content::RenderFrameHost* subframe = + content::NavigationSimulator::NavigateAndCommitFromDocument( + GURL("https://sub-frame.com"), + content::RenderFrameHostTester::For(main_rfh()) + ->AppendChild("subframe")); + + content::WebContents* web_contents = + content::WebContents::FromRenderFrameHost(main_rfh()); + std::unique_ptr window = + ui::WindowAndroid::CreateForTesting(); + window.get()->get()->AddChild(web_contents->GetNativeView()); + + base::MockCallback + mock_callback; + auto origin_predicate = + [&](const base::android::JavaRef& java_string) { + return base::android::ConvertJavaStringToUTF16( + base::android::AttachCurrentThread(), java_string) == + u"https://main-frame.com"; + }; + EXPECT_CALL(mock_callback, Run(/*env=*/_, /*window_android=*/_, + testing::Truly(origin_predicate), + /*security_level=*/_, /*delegate=*/_, + /*native_bluetooth_chooser_dialog_ptr=*/_)); + + BluetoothChooserAndroid::CreateForTesting( + subframe, + base::BindLambdaForTesting([](content::BluetoothChooserEvent evt, + const std::string& opt_device_id) {}), + std::make_unique(), + mock_callback.Get()); +} + +} // namespace + +} // namespace permissions diff --git a/src/components/permissions/android/bluetooth_scanning_prompt_android.cc b/src/components/permissions/android/bluetooth_scanning_prompt_android.cc index 2a40064829da5..66d1ba0505c58 --- a/src/components/permissions/android/bluetooth_scanning_prompt_android.cc +++ b/src/components/permissions/android/bluetooth_scanning_prompt_android.cc @@ -9,6 +9,7 @@ #include "base/strings/utf_string_conversions.h" #include "components/permissions/android/bluetooth_scanning_prompt_android_delegate.h" #include "components/permissions/android/jni_headers/BluetoothScanningPermissionDialog_jni.h" +#include "components/permissions/permission_util.h" #include "components/url_formatter/elide_url.h" #include "content/public/browser/render_frame_host.h" #include "ui/android/window_android.h" @@ -22,14 +23,28 @@ using base::android::ScopedJavaLocalRef; namespace permissions { +namespace { + +BluetoothScanningPromptAndroid::CreateJavaDialogCallback +GetCreateJavaBluetoothScanningPromptCallback() { + return base::BindOnce(&Java_BluetoothScanningPermissionDialog_create); +} + +} // namespace + BluetoothScanningPromptAndroid::BluetoothScanningPromptAndroid( content::RenderFrameHost* frame, const content::BluetoothScanningPrompt::EventHandler& event_handler, - std::unique_ptr delegate) + std::unique_ptr delegate, + CreateJavaDialogCallback create_java_dialog_callback) : web_contents_(content::WebContents::FromRenderFrameHost(frame)), event_handler_(event_handler), delegate_(std::move(delegate)) { - const url::Origin origin = frame->GetLastCommittedOrigin(); + // Permission delegation means the permission request should be attributed to + // the main frame. + const url::Origin origin = url::Origin::Create( + permissions::PermissionUtil::GetLastCommittedOriginAsURL( + frame->GetMainFrame())); DCHECK(!origin.opaque()); ScopedJavaLocalRef window_android = @@ -39,12 +54,23 @@ BluetoothScanningPromptAndroid::BluetoothScanningPromptAndroid( JNIEnv* env = AttachCurrentThread(); ScopedJavaLocalRef origin_string = ConvertUTF16ToJavaString( env, url_formatter::FormatUrlForSecurityDisplay(origin.GetURL())); - java_dialog_.Reset(Java_BluetoothScanningPermissionDialog_create( - env, window_android, origin_string, - delegate_->GetSecurityLevel(web_contents_), delegate_->GetJavaObject(), - reinterpret_cast(this))); + java_dialog_.Reset(std::move(create_java_dialog_callback) + .Run(env, window_android, origin_string, + delegate_->GetSecurityLevel(web_contents_), + delegate_->GetJavaObject(), + reinterpret_cast(this))); } +BluetoothScanningPromptAndroid::BluetoothScanningPromptAndroid( + content::RenderFrameHost* frame, + const content::BluetoothScanningPrompt::EventHandler& event_handler, + std::unique_ptr delegate) + : BluetoothScanningPromptAndroid( + frame, + event_handler, + std::move(delegate), + GetCreateJavaBluetoothScanningPromptCallback()) {} + BluetoothScanningPromptAndroid::~BluetoothScanningPromptAndroid() { if (!java_dialog_.is_null()) { Java_BluetoothScanningPermissionDialog_closeDialog(AttachCurrentThread(), diff --git a/src/components/permissions/android/bluetooth_scanning_prompt_android.h b/src/components/permissions/android/bluetooth_scanning_prompt_android.h index 0e3ff03a8239f..1c5ba073da63c --- a/src/components/permissions/android/bluetooth_scanning_prompt_android.h +++ b/src/components/permissions/android/bluetooth_scanning_prompt_android.h @@ -5,6 +5,9 @@ #ifndef COMPONENTS_PERMISSIONS_ANDROID_BLUETOOTH_SCANNING_PROMPT_ANDROID_H_ #define COMPONENTS_PERMISSIONS_ANDROID_BLUETOOTH_SCANNING_PROMPT_ANDROID_H_ +#include "base/android/jni_android.h" +#include "base/android/jni_int_wrapper.h" +#include "base/android/jni_string.h" #include "base/android/scoped_java_ref.h" #include "base/memory/raw_ptr.h" #include "content/public/browser/bluetooth_scanning_prompt.h" @@ -19,6 +22,16 @@ class BluetoothScanningPromptAndroidDelegate; // devices. This implementation is for Android. class BluetoothScanningPromptAndroid : public content::BluetoothScanningPrompt { public: + // The callback type for creating the java dialog object. + using CreateJavaDialogCallback = + base::OnceCallback( + JNIEnv*, + const base::android::JavaRef&, + const base::android::JavaRef&, + JniIntWrapper, + const base::android::JavaRef&, + jlong)>; + BluetoothScanningPromptAndroid( content::RenderFrameHost* frame, const content::BluetoothScanningPrompt::EventHandler& event_handler, @@ -39,7 +52,24 @@ class BluetoothScanningPromptAndroid : public content::BluetoothScanningPrompt { // Report the dialog's result. void OnDialogFinished(JNIEnv* env, jint event_type); + static std::unique_ptr CreateForTesting( + content::RenderFrameHost* frame, + const EventHandler& event_handler, + std::unique_ptr delegate, + CreateJavaDialogCallback create_java_dialog_callback) { + // Using `new` to access a non-public constructor. + return base::WrapUnique(new BluetoothScanningPromptAndroid( + frame, event_handler, std::move(delegate), + std::move(create_java_dialog_callback))); + } + private: + BluetoothScanningPromptAndroid( + content::RenderFrameHost* frame, + const content::BluetoothScanningPrompt::EventHandler& event_handler, + std::unique_ptr delegate, + CreateJavaDialogCallback create_java_dialog_callback); + base::android::ScopedJavaGlobalRef java_dialog_; raw_ptr web_contents_; diff --git a/src/components/permissions/android/bluetooth_scanning_prompt_android_unittest.cc b/src/components/permissions/android/bluetooth_scanning_prompt_android_unittest.cc new file mode 100644 index 0000000000000..9e2c645b890d8 --- /dev/null +++ b/src/components/permissions/android/bluetooth_scanning_prompt_android_unittest.cc @@ -0,0 +1,77 @@ +// Copyright 2022 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "components/permissions/android/bluetooth_scanning_prompt_android.h" + +#include + +#include "base/test/bind.h" +#include "base/test/mock_callback.h" +#include "components/permissions/android/bluetooth_scanning_prompt_android_delegate.h" +#include "components/security_state/core/security_state.h" +#include "content/public/browser/bluetooth_scanning_prompt.h" +#include "content/public/browser/web_contents.h" +#include "content/public/test/navigation_simulator.h" +#include "content/public/test/test_renderer_host.h" +#include "testing/gmock/include/gmock/gmock.h" +#include "testing/gtest/include/gtest/gtest.h" +#include "ui/android/window_android.h" + +namespace permissions { + +namespace { + +using BluetoothScanningPromptAndroidTest = content::RenderViewHostTestHarness; +using testing::_; + +class FakeBluetoothChooserAndroidDelegate + : public BluetoothScanningPromptAndroidDelegate { + base::android::ScopedJavaLocalRef GetJavaObject() override { + return base::android::ScopedJavaLocalRef(); + } + security_state::SecurityLevel GetSecurityLevel( + content::WebContents* web_contents) override { + return security_state::NONE; + } +}; + +TEST_F(BluetoothScanningPromptAndroidTest, FrameTree) { + NavigateAndCommit(GURL("https://main-frame.com")); + content::RenderFrameHost* subframe = + content::NavigationSimulator::NavigateAndCommitFromDocument( + GURL("https://sub-frame.com"), + content::RenderFrameHostTester::For(main_rfh()) + ->AppendChild("subframe")); + + content::WebContents* web_contents = + content::WebContents::FromRenderFrameHost(main_rfh()); + std::unique_ptr window = + ui::WindowAndroid::CreateForTesting(); + window.get()->get()->AddChild(web_contents->GetNativeView()); + + base::MockCallback + mock_callback; + auto origin_predicate = + [&](const base::android::JavaRef& java_string) { + return base::android::ConvertJavaStringToUTF16( + base::android::AttachCurrentThread(), java_string) == + u"https://main-frame.com"; + }; + EXPECT_CALL( + mock_callback, + Run(/*env=*/_, /*window_android=*/_, testing::Truly(origin_predicate), + /*security_level=*/_, /*delegate=*/_, + /*native_bluetooth_scanning_prompt_dialog_ptr=*/_)); + + BluetoothScanningPromptAndroid::CreateForTesting( + subframe, + base::BindLambdaForTesting( + [](content::BluetoothScanningPrompt::Event evt) {}), + std::make_unique(), + mock_callback.Get()); +} + +} // namespace + +} // namespace permissions diff --git a/src/content/app/content_main_runner_impl.cc b/src/content/app/content_main_runner_impl.cc index 7cd3565f08e99..4c81b8037ef2a --- a/src/content/app/content_main_runner_impl.cc +++ b/src/content/app/content_main_runner_impl.cc @@ -95,6 +95,7 @@ #include "media/media_buildflags.h" #include "mojo/core/embedder/embedder.h" #include "mojo/public/cpp/bindings/self_owned_receiver.h" +#include "mojo/public/cpp/bindings/sync_call_restrictions.h" #include "mojo/public/cpp/platform/platform_channel.h" #include "mojo/public/cpp/system/dynamic_library_support.h" #include "mojo/public/cpp/system/invitation.h" @@ -1043,6 +1044,11 @@ int ContentMainRunnerImpl::RunBrowser(MainFunctionParams main_params, if (is_browser_main_loop_started_) return -1; + if (!base::CommandLine::ForCurrentProcess()->HasSwitch( + switches::kSingleProcess)) { + mojo::SyncCallRestrictions::DisableSyncCallInterrupts(); + } + bool should_start_minimal_browser = start_minimal_browser; if (!mojo_ipc_support_) { if (delegate_->ShouldCreateFeatureList()) { diff --git a/src/content/browser/BUILD.gn b/src/content/browser/BUILD.gn index 01159a5247e86..81479f4fb3688 --- a/src/content/browser/BUILD.gn +++ b/src/content/browser/BUILD.gn @@ -1573,6 +1573,8 @@ source_set("browser") { "renderer_host/navigation_entry_impl.h", "renderer_host/navigation_entry_restore_context_impl.cc", "renderer_host/navigation_entry_restore_context_impl.h", + "renderer_host/navigation_policy_container_builder.cc", + "renderer_host/navigation_policy_container_builder.h", "renderer_host/navigation_request.cc", "renderer_host/navigation_request.h", "renderer_host/navigation_request_info.cc", @@ -1598,8 +1600,6 @@ source_set("browser") { "renderer_host/page_lifecycle_state_manager.h", "renderer_host/policy_container_host.cc", "renderer_host/policy_container_host.h", - "renderer_host/policy_container_navigation_bundle.cc", - "renderer_host/policy_container_navigation_bundle.h", "renderer_host/private_network_access_util.cc", "renderer_host/private_network_access_util.h", "renderer_host/recently_destroyed_hosts.cc", @@ -2928,6 +2928,17 @@ source_set("browser") { if (is_ohos) { sources -= [ "media/session/audio_focus_delegate_default.cc" ] + sources += [ + "font_unique_name_lookup/font_unique_name_lookup.cc", + "font_unique_name_lookup/font_unique_name_lookup.h", + "font_unique_name_lookup/font_unique_name_lookup_service.cc", + "font_unique_name_lookup/font_unique_name_lookup_service.h", + ] + + deps += [ + "//build/config/freetype", + "//third_party/blink/public/common:font_unique_name_table_proto", + ] } deps += [ diff --git a/src/content/browser/browser_main_loop.cc b/src/content/browser/browser_main_loop.cc index 6e779e2475886..a522662120ec9 --- a/src/content/browser/browser_main_loop.cc +++ b/src/content/browser/browser_main_loop.cc @@ -172,6 +172,10 @@ #include "ui/gl/gl_surface.h" #endif +#if BUILDFLAG(IS_OHOS) +#include "content/browser/font_unique_name_lookup/font_unique_name_lookup.h" +#endif + #if BUILDFLAG(IS_MAC) #include "base/mac/scoped_nsautorelease_pool.h" #include "content/browser/renderer_host/browser_compositor_view_mac.h" @@ -1409,6 +1413,12 @@ void BrowserMainLoop::PostCreateThreadsImpl() { } #endif +#if BUILDFLAG(IS_OHOS) + if (base::FeatureList::IsEnabled(features::kFontSrcLocalMatching)) { + FontUniqueNameLookup::GetInstance(); + } +#endif + #if defined(ENABLE_IPC_FUZZER) SetFileUrlPathAliasForIpcFuzzer(); #endif diff --git a/src/content/browser/browser_url_handler_impl.cc b/src/content/browser/browser_url_handler_impl.cc index 90aa546acd198..68a16b1ba229d --- a/src/content/browser/browser_url_handler_impl.cc +++ b/src/content/browser/browser_url_handler_impl.cc @@ -33,7 +33,12 @@ static bool HandleViewSource(GURL* url, BrowserContext* browser_context) { url::kHttpsScheme, kChromeUIScheme, url::kFileScheme, + #if BUILDFLAG(IS_OHOS) + url::kFileSystemScheme, + url::kResourcesScheme + #else url::kFileSystemScheme + #endif }; // Merge all the schemes for which view-source is allowed by default, with diff --git a/src/content/browser/file_system_access/file_system_access_directory_handle_impl.cc b/src/content/browser/file_system_access/file_system_access_directory_handle_impl.cc index 1775dc49414ca..a7503d4b64c53 --- a/src/content/browser/file_system_access/file_system_access_directory_handle_impl.cc +++ b/src/content/browser/file_system_access/file_system_access_directory_handle_impl.cc @@ -438,10 +438,16 @@ namespace { bool IsShellIntegratedExtension(const base::FilePath::StringType& extension) { base::FilePath::StringType extension_lower = base::ToLowerASCII(extension); - // .lnk files may be used to execute arbitrary code (see - // https://nvd.nist.gov/vuln/detail/CVE-2010-2568). - if (extension_lower == FILE_PATH_LITERAL("lnk")) + // .lnk and .scf files may be used to execute arbitrary code (see + // https://nvd.nist.gov/vuln/detail/CVE-2010-2568 and + // https://crbug.com/1227995, respectively). '.url' files can be used to read + // arbitrary files (see https://crbug.com/1307930 and + // https://crbug.com/1354518). + if (extension_lower == FILE_PATH_LITERAL("lnk") || + extension_lower == FILE_PATH_LITERAL("scf") || + extension_lower == FILE_PATH_LITERAL("url")) { return true; + } // Setting a file's extension to a CLSID may conceal its actual file type on // some Windows versions (see https://nvd.nist.gov/vuln/detail/CVE-2004-0420). diff --git a/src/content/browser/file_system_access/file_system_access_directory_handle_impl_unittest.cc b/src/content/browser/file_system_access/file_system_access_directory_handle_impl_unittest.cc index aeeb3d84b0b78..0804886d4140d --- a/src/content/browser/file_system_access/file_system_access_directory_handle_impl_unittest.cc +++ b/src/content/browser/file_system_access/file_system_access_directory_handle_impl_unittest.cc @@ -140,6 +140,7 @@ TEST_F(FileSystemAccessDirectoryHandleImplTest, IsSafePathComponent) { "My Computer.{20D04FE0-3AEA-1069-A2D8-08002B30309D}", "a\\a", "a.lnk", + "a.url", "a/a", "C:\\", "C:/", @@ -195,8 +196,8 @@ TEST_F(FileSystemAccessDirectoryHandleImplTest, GetEntries) { constexpr const char* kSafeNames[] = {"a", "a.txt", "My Computer", "lnk.txt", "a.local"}; constexpr const char* kUnsafeNames[] = { - "con", "con.zip", "NUL", "a.", - "a\"a", "a . .", "a.lnk", "My Computer.{a}", + "con", "con.zip", "NUL", "a.", "a\"a", "a . .", + "a.lnk", "My Computer.{a}", "a.url", }; for (const char* name : kSafeNames) { ASSERT_TRUE(base::WriteFile(dir_.GetPath().AppendASCII(name), "data")) diff --git a/src/content/browser/font_unique_name_lookup/font_unique_name_lookup.cc b/src/content/browser/font_unique_name_lookup/font_unique_name_lookup.cc index 078ab88405614..c1914e9d800e5 --- a/src/content/browser/font_unique_name_lookup/font_unique_name_lookup.cc +++ b/src/content/browser/font_unique_name_lookup/font_unique_name_lookup.cc @@ -34,8 +34,14 @@ namespace { // counting up after the dash "-1", "-2", etc. const char kFingerprintSuffixForceUpdateCache[] = "-1"; const char kProtobufFilename[] = "font_unique_name_table.pb"; +#if BUILDFLAG(IS_OHOS) +// This may be add continue. +static const char* const kOhosFontPaths[] = { + "/system/fonts"}; +#else static const char* const kAndroidFontPaths[] = { "/system/fonts", "/vendor/fonts", "/product/fonts"}; +#endif bool IsRelevantNameRecord(const FT_SfntName& sfnt_name) { if (sfnt_name.name_id != TT_NAME_ID_FULL_NAME && @@ -316,18 +322,27 @@ base::FilePath FontUniqueNameLookup::TableCacheFilePath() { } std::string FontUniqueNameLookup::GetAndroidBuildFingerprint() const { +#if BUILDFLAG(IS_OHOS) + // Here temporary return kFingerprintSuffixForceUpdateCache. + return std::string(kFingerprintSuffixForceUpdateCache); +#else return android_build_fingerprint_for_testing_.size() ? android_build_fingerprint_for_testing_ : std::string(base::android::BuildInfo::GetInstance() ->android_build_fp()) + std::string(kFingerprintSuffixForceUpdateCache); +#endif } std::vector FontUniqueNameLookup::GetFontFilePaths() const { if (font_file_paths_for_testing_.size()) return font_file_paths_for_testing_; std::vector font_files; +#if BUILDFLAG(IS_OHOS) + for (const char* font_dir_path : kOhosFontPaths) { +#else for (const char* font_dir_path : kAndroidFontPaths) { +#endif base::FileEnumerator files_enumerator( base::MakeAbsoluteFilePath(base::FilePath(font_dir_path)), true, base::FileEnumerator::FILES); diff --git a/src/content/browser/loader/file_url_loader_factory.cc b/src/content/browser/loader/file_url_loader_factory.cc index 60e2fbd563708..700ecae500997 --- a/src/content/browser/loader/file_url_loader_factory.cc +++ b/src/content/browser/loader/file_url_loader_factory.cc @@ -64,6 +64,10 @@ #include "base/win/shortcut.h" #endif +#if BUILDFLAG(IS_OHOS) +#include "ohos_adapter_helper.h" +#endif + namespace content { namespace { @@ -773,6 +777,261 @@ class FileURLLoader : public network::mojom::URLLoader { uint64_t total_bytes_written_ = 0; }; +#if BUILDFLAG(IS_OHOS) +class ResourceURLLoader : public network::mojom::URLLoader { + public: + static void CreateAndStart( + const base::FilePath& profile_path, + const network::ResourceRequest& request, + network::mojom::FetchResponseType response_type, + mojo::PendingReceiver loader, + mojo::PendingRemote client_remote, + std::unique_ptr observer, + scoped_refptr extra_response_headers) { + auto* resource_url_loader = new ResourceURLLoader; + resource_url_loader->Start(profile_path, request, response_type, + std::move(loader), std::move(client_remote), + std::move(observer), + std::move(extra_response_headers)); + } + + ResourceURLLoader(const ResourceURLLoader&) = delete; + ResourceURLLoader& operator=(const ResourceURLLoader&) = delete; + + // network::mojom::URLLoader: + void FollowRedirect( + const std::vector& removed_headers, + const net::HttpRequestHeaders& modified_headers, + const net::HttpRequestHeaders& modified_cors_exempt_headers, + const absl::optional& new_url) override {} + void SetPriority(net::RequestPriority priority, + int32_t intra_priority_value) override {} + void PauseReadingBodyFromNet() override {} + void ResumeReadingBodyFromNet() override {} + + private: + ResourceURLLoader() = default; + ~ResourceURLLoader() override = default; + + void Start(const base::FilePath& profile_path, + const network::ResourceRequest& request, + network::mojom::FetchResponseType response_type, + mojo::PendingReceiver loader, + mojo::PendingRemote client_remote, + std::unique_ptr observer, + scoped_refptr extra_response_headers) { + auto head = network::mojom::URLResponseHead::New(); + head->request_start = base::TimeTicks::Now(); + head->response_start = base::TimeTicks::Now(); + head->response_type = response_type; + head->headers = extra_response_headers; + receiver_.Bind(std::move(loader)); + receiver_.set_disconnect_handler(base::BindOnce( + &ResourceURLLoader::OnMojoDisconnect, base::Unretained(this))); + client_.Bind(std::move(client_remote)); + + if (!request.url.SchemeIs(url::kResourcesScheme) || + !base::CommandLine::ForCurrentProcess()->HasSwitch( + switches::kOhosHapPath)) { + LOG(ERROR) << "url scheme error or kOhosHapPath not exist"; + OnClientComplete(net::ERR_FAILED, std::move(observer)); + return; + } + std::string hapPath = + base::CommandLine::ForCurrentProcess()->GetSwitchValueASCII( + switches::kOhosHapPath); + std::string resourcesPath = "resources/"; + resourcesPath = resourcesPath + request.url.host() + request.url.path(); + LOG(INFO) << "ResourceURLLoader url: " << request.url.spec() + << ", path: " << resourcesPath; + mojo::ScopedDataPipeProducerHandle producer_handle; + mojo::ScopedDataPipeConsumerHandle consumer_handle; + if (mojo::CreateDataPipe(kDefaultFileUrlPipeSize, producer_handle, + consumer_handle) != MOJO_RESULT_OK) { + OnClientComplete(net::ERR_FAILED, std::move(observer)); + return; + } + if (observer) + observer->OnStart(); + size_t length = 0; + std::unique_ptr data; + auto resourceInstance = + OHOS::NWeb::OhosAdapterHelper::GetInstance().GetResourceAdapter( + hapPath); + mojo::DataPipeProducer::DataSource::ReadResult read_result; + if (!resourceInstance->GetRawFileData(resourcesPath, length, data, false)) { + LOG(ERROR) << "ResourceURLLoader GetRawFileData failed"; + read_result.result = MOJO_RESULT_NOT_FOUND; + if (observer) { + observer->OnRead(base::span(), &read_result); + observer->OnDone(); + } + client_->OnComplete(network::URLLoaderCompletionStatus( + ConvertMojoResultToNetError(read_result.result))); + client_.reset(); + MaybeDeleteSelf(); + return; + } + LOG(INFO) << "GetRawFileData length: " << length; + read_result.result = MOJO_RESULT_OK; + read_result.bytes_read = + length > net::kMaxBytesToSniff ? net::kMaxBytesToSniff : length; + std::vector initial_read_buffer; + char* dataPtr = reinterpret_cast(data.get()); + initial_read_buffer.insert(initial_read_buffer.end(), dataPtr, + dataPtr + length); + if (observer) + observer->OnRead(base::span(initial_read_buffer), &read_result); + + uint64_t initial_read_size = read_result.bytes_read; + std::string range_header; + net::HttpByteRange byte_range; + if (request.headers.GetHeader(net::HttpRequestHeaders::kRange, + &range_header)) { + // Handle a simple Range header for a single range. + std::vector ranges; + bool fail = false; + if (net::HttpUtil::ParseRangeHeader(range_header, &ranges) && + ranges.size() == 1) { + byte_range = ranges[0]; + if (!byte_range.ComputeBounds(length)) { + fail = true; + } + } else { + fail = true; + } + if (fail) { + OnClientComplete(net::ERR_REQUEST_RANGE_NOT_SATISFIABLE, + std::move(observer)); + return; + } + } + uint64_t first_byte_to_send = 0; + uint64_t total_bytes_to_send = length; + if (byte_range.IsValid()) { + first_byte_to_send = byte_range.first_byte_position(); + total_bytes_to_send = + byte_range.last_byte_position() - first_byte_to_send + 1; + } + total_bytes_written_ = total_bytes_to_send; + head->content_length = base::saturated_cast(total_bytes_to_send); + + if (first_byte_to_send < initial_read_size) { + uint32_t write_size = std::min( + static_cast(initial_read_size - first_byte_to_send), + static_cast(total_bytes_to_send)); + const uint32_t expected_write_size = write_size; + MojoResult result = + producer_handle->WriteData(&initial_read_buffer[first_byte_to_send], + &write_size, MOJO_WRITE_DATA_FLAG_NONE); + if (result != MOJO_RESULT_OK || write_size != expected_write_size) { + OnFileWritten(std::move(observer), nullptr, result); + LOG(ERROR) << "ResourceURLLoader WriteData failed"; + return; + } + // Discount the bytes we just sent from the total range. + first_byte_to_send = initial_read_size; + total_bytes_to_send -= write_size; + } + const base::FilePath::CharType* resource_file_path = + FILE_PATH_LITERAL(resourcesPath.c_str()); + if (!net::GetMimeTypeFromFile(base::FilePath(resource_file_path), + &head->mime_type)) { + std::string new_type; + net::SniffMimeType( + base::StringPiece(initial_read_buffer.data(), read_result.bytes_read), + request.url, head->mime_type, + GetContentClient()->browser()->ForceSniffingFileUrlsForHtml() + ? net::ForceSniffFileUrlsForHtml::kEnabled + : net::ForceSniffFileUrlsForHtml::kDisabled, + &new_type); + head->mime_type.assign(new_type); + head->did_mime_sniff = true; + } + if (!head->headers) { + head->headers = + base::MakeRefCounted("HTTP/1.1 200 OK"); + } + LOG(INFO) << "ResourceURLLoader AddHeader mime_type " << head->mime_type; + head->headers->AddHeader(net::HttpRequestHeaders::kContentType, + head->mime_type); + client_->OnReceiveResponse(std::move(head), + mojo::ScopedDataPipeConsumerHandle()); + client_->OnStartLoadingResponseBody(std::move(consumer_handle)); + LOG(INFO) << "total_bytes_to_send: " << total_bytes_to_send; + if (total_bytes_to_send == 0) { + // There's definitely no more data, so we're already done. + OnFileWritten(std::move(observer), nullptr, MOJO_RESULT_OK); + return; + } + if (observer) + observer->OnSeekComplete(first_byte_to_send); + data_producer_ = + std::make_unique(std::move(producer_handle)); + base::StringPiece string_piece((char*)data.get() + first_byte_to_send, + total_bytes_to_send); + data_producer_->Write( + std::make_unique( + string_piece, mojo::StringDataSource::AsyncWritingMode:: + STRING_STAYS_VALID_UNTIL_COMPLETION), + base::BindOnce(&ResourceURLLoader::OnFileWritten, + base::Unretained(this), nullptr, std::move(data))); + } + + void OnMojoDisconnect() { + data_producer_.reset(); + receiver_.reset(); + client_.reset(); + MaybeDeleteSelf(); + } + + void OnClientComplete(net::Error net_error, + std::unique_ptr observer) { + client_->OnComplete(network::URLLoaderCompletionStatus(net_error)); + client_.reset(); + if (observer) { + if (net_error != net::OK) { + mojo::DataPipeProducer::DataSource::ReadResult result; + result.result = ConvertNetErrorToMojoResult(net_error); + observer->OnRead(base::span(), &result); + } + observer->OnDone(); + } + MaybeDeleteSelf(); + } + + void MaybeDeleteSelf() { + if (!receiver_.is_bound() && !client_.is_bound()) + delete this; + } + + void OnFileWritten(std::unique_ptr observer, + std::unique_ptr write_data, + MojoResult result) { + data_producer_.reset(); + if (observer) + observer->OnDone(); + + if (result == MOJO_RESULT_OK) { + network::URLLoaderCompletionStatus status(net::OK); + status.encoded_data_length = total_bytes_written_; + status.encoded_body_length = total_bytes_written_; + status.decoded_body_length = total_bytes_written_; + client_->OnComplete(status); + } else { + client_->OnComplete(network::URLLoaderCompletionStatus(net::ERR_FAILED)); + } + client_.reset(); + MaybeDeleteSelf(); + } + + std::unique_ptr data_producer_; + mojo::Receiver receiver_{this}; + mojo::Remote client_; + + uint64_t total_bytes_written_ = 0; +}; +#endif } // namespace FileURLLoaderFactory::FileURLLoaderFactory( @@ -857,6 +1116,17 @@ void FileURLLoaderFactory::CreateLoaderAndStartInternal( return; } +#if BUILDFLAG(IS_OHOS) + if (request.url.SchemeIs(url::kResourcesScheme)) { + task_runner_->PostTask( + FROM_HERE, base::BindOnce(&ResourceURLLoader::CreateAndStart, + profile_path_, request, response_type, + std::move(loader), std::move(client), + std::unique_ptr(), + nullptr /* extra_response_headers */)); + return; + } +#endif // Check file path just after all CORS flag checks are handled. base::FilePath file_path; if (!net::FileURLToFilePath(request.url, &file_path)) { diff --git a/src/content/browser/loader/navigation_url_loader_impl.cc b/src/content/browser/loader/navigation_url_loader_impl.cc index 868661c86c39a..e1a8bf0382fb2 --- a/src/content/browser/loader/navigation_url_loader_impl.cc +++ b/src/content/browser/loader/navigation_url_loader_impl.cc @@ -1350,6 +1350,13 @@ NavigationURLLoaderImpl::NavigationURLLoaderImpl( browser_context_->GetPath(), browser_context_->GetSharedCorsOriginAccessList(), file_factory_priority)); +#if BUILDFLAG(IS_OHOS) + non_network_url_loader_factories_.emplace( + url::kResourcesScheme, FileURLLoaderFactory::Create( + browser_context_->GetPath(), + browser_context_->GetSharedCorsOriginAccessList(), + file_factory_priority)); +#endif #if BUILDFLAG(IS_ANDROID) non_network_url_loader_factories_.emplace(url::kContentScheme, @@ -1550,6 +1557,7 @@ void NavigationURLLoaderImpl::BindNonNetworkURLLoaderFactoryReceiver( mojo::PendingReceiver factory_receiver) { auto it = non_network_url_loader_factories_.find(url.scheme()); if (it != non_network_url_loader_factories_.end()) { + LOG(INFO) << "BindNonNetworkURLLoaderFactoryReceiver scheme: " << url.scheme(); mojo::Remote remote( std::move(it->second)); remote->Clone(std::move(factory_receiver)); @@ -1586,7 +1594,11 @@ void NavigationURLLoaderImpl:: // non-http factory that allows DevTools intereception. For comparison all // non-WebUI cases in RFHI::CommitNavigation allow DevTools // interception. Let's try to be more consistent / less ad-hoc. +#if BUILDFLAG(IS_OHOS) + if (url.SchemeIs(url::kFileScheme) || url.SchemeIs(url::kResourcesScheme)) { +#else if (url.SchemeIs(url::kFileScheme)) { +#endif if (frame_tree_node) { // May be nullptr in some unit tests. devtools_instrumentation::WillCreateURLLoaderFactory( frame, /*is_navigation=*/true, /*is_download=*/false, diff --git a/src/content/browser/log_console_message.cc b/src/content/browser/log_console_message.cc index 8b9c6c2b48357..ebb548c9f74b5 --- a/src/content/browser/log_console_message.cc +++ b/src/content/browser/log_console_message.cc @@ -35,9 +35,11 @@ void LogConsoleMessage(blink::mojom::ConsoleMessageLevel log_level, if (!base::FeatureList::IsEnabled(features::kLogJsConsoleMessages)) return; +#if !BUILDFLAG(IS_OHOS) logging::LogMessage("CONSOLE", line_number, resolved_level).stream() << "\"" << message << "\", source: " << source_id << " (" << line_number << ")"; +#endif } } // namespace content diff --git a/src/content/browser/media/session/audio_focus_delegate_ohos.cc b/src/content/browser/media/session/audio_focus_delegate_ohos.cc index fefdd09118293..e490242c76b98 --- a/src/content/browser/media/session/audio_focus_delegate_ohos.cc +++ b/src/content/browser/media/session/audio_focus_delegate_ohos.cc @@ -7,6 +7,7 @@ #include "audio_renderer_adapter.h" #include "audio_system_manager_adapter.h" #include "content/browser/media/session/media_session_impl.h" +#include "content/public/common/content_switches.h" #include "media/base/media_switches.h" #include "ohos_adapter_helper.h" @@ -43,6 +44,12 @@ AudioFocusDelegateOHOS::~AudioFocusDelegateOHOS() {} AudioFocusDelegate::AudioFocusResult AudioFocusDelegateOHOS::RequestAudioFocus( media_session::mojom::AudioFocusType audio_focus_type) { + base::CommandLine* command_line = base::CommandLine::ForCurrentProcess(); + bool hasEnhanceFlag = command_line->HasSwitch(::switches::kOhosHanceSurface); + if (hasEnhanceFlag) { + LOG(ERROR) << "audio focus is not support in enhance"; + return AudioFocusDelegate::AudioFocusResult::kSuccess; + } int32_t ret = OhosAdapterHelper::GetInstance() .GetAudioSystemManager() .RequestAudioFocus(kAudioInterrupt); diff --git a/src/content/browser/renderer_host/input/input_router_impl.cc b/src/content/browser/renderer_host/input/input_router_impl.cc index 610c8e7c92f15..5edac43d07f0d --- a/src/content/browser/renderer_host/input/input_router_impl.cc +++ b/src/content/browser/renderer_host/input/input_router_impl.cc @@ -143,7 +143,12 @@ void InputRouterImpl::SendGestureEvent( #if BUILDFLAG(IS_OHOS) if (gesture_event.event.GetType() == WebInputEvent::Type::kGestureFlingStart) { - client_->GetWidgetInputHandler()->StartFling(); + LOG(INFO) << "InputRouterImpl::SendGestureEvent type=kGestureFlingStart"; + client_->GetWidgetInputHandler()->TryStartFling(); + } else if (gesture_event.event.GetType() == + WebInputEvent::Type::kGestureScrollEnd) { + LOG(INFO) << "InputRouterImpl::SendGestureEvent type=kGestureScrollEnd"; + client_->GetWidgetInputHandler()->TryFinishFling(); } #endif if (gesture_event_queue_.PassToFlingController(gesture_event)) { diff --git a/src/content/browser/renderer_host/policy_container_navigation_bundle.cc b/src/content/browser/renderer_host/navigation_policy_container_builder.cc similarity index 69% rename from src/content/browser/renderer_host/policy_container_navigation_bundle.cc rename to src/content/browser/renderer_host/navigation_policy_container_builder.cc index ec600e3f2ccfe..dca936c7c4baa --- a/src/content/browser/renderer_host/policy_container_navigation_bundle.cc +++ b/src/content/browser/renderer_host/navigation_policy_container_builder.cc @@ -2,7 +2,7 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#include "content/browser/renderer_host/policy_container_navigation_bundle.h" +#include "content/browser/renderer_host/navigation_policy_container_builder.h" #include @@ -75,7 +75,7 @@ std::unique_ptr GetHistoryPolicies( } // namespace -PolicyContainerNavigationBundle::PolicyContainerNavigationBundle( +NavigationPolicyContainerBuilder::NavigationPolicyContainerBuilder( RenderFrameHostImpl* parent, const blink::LocalFrameToken* initiator_frame_token, const FrameNavigationEntry* history_entry) @@ -84,36 +84,36 @@ PolicyContainerNavigationBundle::PolicyContainerNavigationBundle( history_policies_(GetHistoryPolicies(history_entry)), delivered_policies_(std::make_unique()) {} -PolicyContainerNavigationBundle::~PolicyContainerNavigationBundle() = default; +NavigationPolicyContainerBuilder::~NavigationPolicyContainerBuilder() = default; const PolicyContainerPolicies* -PolicyContainerNavigationBundle::InitiatorPolicies() const { +NavigationPolicyContainerBuilder::InitiatorPolicies() const { return initiator_policies_.get(); } -const PolicyContainerPolicies* PolicyContainerNavigationBundle::ParentPolicies() +const PolicyContainerPolicies* NavigationPolicyContainerBuilder::ParentPolicies() const { return parent_policies_.get(); } const PolicyContainerPolicies* -PolicyContainerNavigationBundle::HistoryPolicies() const { +NavigationPolicyContainerBuilder::HistoryPolicies() const { return history_policies_.get(); } -void PolicyContainerNavigationBundle::SetIPAddressSpace( +void NavigationPolicyContainerBuilder::SetIPAddressSpace( network::mojom::IPAddressSpace address_space) { DCHECK(!HasComputedPolicies()); delivered_policies_->ip_address_space = address_space; } -void PolicyContainerNavigationBundle::SetIsOriginPotentiallyTrustworthy( +void NavigationPolicyContainerBuilder::SetIsOriginPotentiallyTrustworthy( bool value) { DCHECK(!HasComputedPolicies()); delivered_policies_->is_web_secure_context = value; } -void PolicyContainerNavigationBundle::AddContentSecurityPolicy( +void NavigationPolicyContainerBuilder::AddContentSecurityPolicy( network::mojom::ContentSecurityPolicyPtr policy) { DCHECK(!HasComputedPolicies()); DCHECK(policy); @@ -121,21 +121,21 @@ void PolicyContainerNavigationBundle::AddContentSecurityPolicy( delivered_policies_->content_security_policies.push_back(std::move(policy)); } -void PolicyContainerNavigationBundle::AddContentSecurityPolicies( +void NavigationPolicyContainerBuilder::AddContentSecurityPolicies( std::vector policies) { DCHECK(!HasComputedPolicies()); delivered_policies_->AddContentSecurityPolicies(std::move(policies)); } -void PolicyContainerNavigationBundle::SetCrossOriginOpenerPolicy( +void NavigationPolicyContainerBuilder::SetCrossOriginOpenerPolicy( network::CrossOriginOpenerPolicy coop) { DCHECK(!HasComputedPolicies()); delivered_policies_->cross_origin_opener_policy = coop; } -void PolicyContainerNavigationBundle::SetCrossOriginEmbedderPolicy( +void NavigationPolicyContainerBuilder::SetCrossOriginEmbedderPolicy( network::CrossOriginEmbedderPolicy coep) { DCHECK(!HasComputedPolicies()); @@ -143,13 +143,13 @@ void PolicyContainerNavigationBundle::SetCrossOriginEmbedderPolicy( } const PolicyContainerPolicies& -PolicyContainerNavigationBundle::DeliveredPoliciesForTesting() const { +NavigationPolicyContainerBuilder::DeliveredPoliciesForTesting() const { DCHECK(!HasComputedPolicies()); return *delivered_policies_; } -void PolicyContainerNavigationBundle::ComputePoliciesForError() { +void NavigationPolicyContainerBuilder::ComputePoliciesForError() { // The decision to commit an error page can happen after receiving the // response for a regular document. It overrides any previous attempt to // |ComputePolicies()|. @@ -172,7 +172,7 @@ void PolicyContainerNavigationBundle::ComputePoliciesForError() { DCHECK(HasComputedPolicies()); } -void PolicyContainerNavigationBundle::ComputeIsWebSecureContext() { +void NavigationPolicyContainerBuilder::ComputeIsWebSecureContext() { DCHECK(!HasComputedPolicies()); if (!parent_policies_) { @@ -186,7 +186,7 @@ void PolicyContainerNavigationBundle::ComputeIsWebSecureContext() { } std::unique_ptr -PolicyContainerNavigationBundle::IncorporateDeliveredPolicies( +NavigationPolicyContainerBuilder::IncorporateDeliveredPolicies( const GURL& url, std::unique_ptr policies) { // Delivered content security policies must be appended. @@ -203,7 +203,7 @@ PolicyContainerNavigationBundle::IncorporateDeliveredPolicies( } std::unique_ptr -PolicyContainerNavigationBundle::ComputeInheritedPolicies(const GURL& url) { +NavigationPolicyContainerBuilder::ComputeInheritedPolicies(const GURL& url) { DCHECK(HasLocalScheme(url)) << "No inheritance allowed for non-local schemes"; if (url.IsAboutSrcdoc()) { @@ -220,42 +220,59 @@ PolicyContainerNavigationBundle::ComputeInheritedPolicies(const GURL& url) { } std::unique_ptr -PolicyContainerNavigationBundle::ComputeFinalPolicies(const GURL& url) { +NavigationPolicyContainerBuilder::ComputeFinalPolicies(const GURL& url) { + std::unique_ptr policies; // Policies are either inherited from another document for local scheme, or // directly set from the delivered response. - if (!HasLocalScheme(url)) - return delivered_policies_->Clone(); - - // For a local scheme, history policies should not incorporate delivered ones - // as this may lead to duplication of some policies already stored in history. - // For example, consider the following HTML: - // - The navigation should fail. This text should be visible. - - - diff --git a/src/third_party/blink/web_tests/http/tests/security/frameNavigation/sandbox-ALLOWED-top-navigation-with-two-flags-expected.txt b/src/third_party/blink/web_tests/http/tests/security/frameNavigation/sandbox-ALLOWED-top-navigation-with-two-flags-expected.txt deleted file mode 100644 index 9968bd11ac101..0000000000000 --- a/src/third_party/blink/web_tests/http/tests/security/frameNavigation/sandbox-ALLOWED-top-navigation-with-two-flags-expected.txt +++ /dev/null @@ -1,3 +0,0 @@ -localhost - -PASSED: Navigation succeeded. diff --git a/src/third_party/blink/web_tests/http/tests/security/frameNavigation/sandbox-ALLOWED-top-navigation-with-two-flags.html b/src/third_party/blink/web_tests/http/tests/security/frameNavigation/sandbox-ALLOWED-top-navigation-with-two-flags.html deleted file mode 100644 index 4a497cfbcfb8a..0000000000000 --- a/src/third_party/blink/web_tests/http/tests/security/frameNavigation/sandbox-ALLOWED-top-navigation-with-two-flags.html +++ /dev/null @@ -1,28 +0,0 @@ - - - - - - -

This tests that an iframe in sandbox with both 'allow-top-navigation' and 'allow-top-navigation-by-user-activation' - can navigate the top level page with a user gesture: Basically the later flag is ignored.

-

DOMAIN

- - - diff --git a/src/third_party/blink/web_tests/http/tests/security/frameNavigation/sandbox-ALLOWED-top-navigation-with-user-gesture-expected.txt b/src/third_party/blink/web_tests/http/tests/security/frameNavigation/sandbox-ALLOWED-top-navigation-with-user-gesture-expected.txt deleted file mode 100644 index 9968bd11ac101..0000000000000 --- a/src/third_party/blink/web_tests/http/tests/security/frameNavigation/sandbox-ALLOWED-top-navigation-with-user-gesture-expected.txt +++ /dev/null @@ -1,3 +0,0 @@ -localhost - -PASSED: Navigation succeeded. diff --git a/src/third_party/blink/web_tests/http/tests/security/frameNavigation/sandbox-ALLOWED-top-navigation-with-user-gesture.html b/src/third_party/blink/web_tests/http/tests/security/frameNavigation/sandbox-ALLOWED-top-navigation-with-user-gesture.html deleted file mode 100644 index f2d93da4dc64a..0000000000000 --- a/src/third_party/blink/web_tests/http/tests/security/frameNavigation/sandbox-ALLOWED-top-navigation-with-user-gesture.html +++ /dev/null @@ -1,28 +0,0 @@ - - - - - - -

This tests that an iframe in sandbox with 'allow-top-navigation-by-user-activation' - can navigate the top level page, if it is trigged by a user gesture.

-

DOMAIN

- - - diff --git a/src/third_party/blink/web_tests/http/tests/security/frameNavigation/sandbox-DENIED-cross-origin-top-navigation-expected.txt b/src/third_party/blink/web_tests/http/tests/security/frameNavigation/sandbox-DENIED-cross-origin-top-navigation-expected.txt deleted file mode 100644 index 0700a107dc2e0..0000000000000 --- a/src/third_party/blink/web_tests/http/tests/security/frameNavigation/sandbox-DENIED-cross-origin-top-navigation-expected.txt +++ /dev/null @@ -1,6 +0,0 @@ -CONSOLE ERROR: Unsafe attempt to initiate navigation for frame with origin 'http://127.0.0.1:8000' from frame with URL 'https://localhost:8443/security/frameNavigation/resources/failed-top-navigation.html'. The frame attempting navigation of the top-level window is sandboxed and is not allowed to navigate since its ancestor frame with origin 'http://localhost:8080' is unable to navigate the top frame. - - -This tests that an iframe in sandbox with 'allow-top-navigation' can't navigate the top level page if its ancestor can't. - -DOMAIN diff --git a/src/third_party/blink/web_tests/http/tests/security/frameNavigation/sandbox-DENIED-cross-origin-top-navigation-nested-sandbox-expected.txt b/src/third_party/blink/web_tests/http/tests/security/frameNavigation/sandbox-DENIED-cross-origin-top-navigation-nested-sandbox-expected.txt deleted file mode 100644 index e2d0b476cfa88..0000000000000 --- a/src/third_party/blink/web_tests/http/tests/security/frameNavigation/sandbox-DENIED-cross-origin-top-navigation-nested-sandbox-expected.txt +++ /dev/null @@ -1,6 +0,0 @@ -CONSOLE ERROR: Unsafe attempt to initiate navigation for frame with origin 'http://127.0.0.1:8000' from frame with URL 'https://localhost:8443/security/frameNavigation/resources/failed-top-navigation.html'. The frame attempting navigation of the top-level window is sandboxed and is not allowed to navigate since its ancestor frame with origin 'null' is unable to navigate the top frame. - - -This tests that an iframe in a nested sandbox with 'allow-top-navigation' can't navigate the top level page if its ancestor can't. - -DOMAIN diff --git a/src/third_party/blink/web_tests/http/tests/security/frameNavigation/sandbox-DENIED-cross-origin-top-navigation-nested-sandbox.html b/src/third_party/blink/web_tests/http/tests/security/frameNavigation/sandbox-DENIED-cross-origin-top-navigation-nested-sandbox.html deleted file mode 100644 index 183f4c49cf825..0000000000000 --- a/src/third_party/blink/web_tests/http/tests/security/frameNavigation/sandbox-DENIED-cross-origin-top-navigation-nested-sandbox.html +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - - -

This tests that an iframe in a nested sandbox with 'allow-top-navigation' - can't navigate the top level page if its ancestor can't.

-

DOMAIN

- - - - diff --git a/src/third_party/blink/web_tests/http/tests/security/frameNavigation/sandbox-DENIED-cross-origin-top-navigation.html b/src/third_party/blink/web_tests/http/tests/security/frameNavigation/sandbox-DENIED-cross-origin-top-navigation.html deleted file mode 100644 index d174414760739..0000000000000 --- a/src/third_party/blink/web_tests/http/tests/security/frameNavigation/sandbox-DENIED-cross-origin-top-navigation.html +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - - -

This tests that an iframe in sandbox with 'allow-top-navigation' - can't navigate the top level page if its ancestor can't.

-

DOMAIN

- - - - diff --git a/src/third_party/blink/web_tests/wpt_internal/fenced_frame/anchor-focus.https.html b/src/third_party/blink/web_tests/wpt_internal/fenced_frame/anchor-focus.https.html new file mode 100644 index 0000000000000..82794d4666d21 --- /dev/null +++ b/src/third_party/blink/web_tests/wpt_internal/fenced_frame/anchor-focus.https.html @@ -0,0 +1,47 @@ + +Anchor based focusing across a fenced frame boundary + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/third_party/blink/web_tests/wpt_internal/fenced_frame/script-focus.https.html b/src/third_party/blink/web_tests/wpt_internal/fenced_frame/script-focus.https.html new file mode 100644 index 0000000000000..14eae553efc1a --- /dev/null +++ b/src/third_party/blink/web_tests/wpt_internal/fenced_frame/script-focus.https.html @@ -0,0 +1,205 @@ + +Test Script-Based Focus for Fenced Frames + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/third_party/crashpad/crashpad/util/linux/ptrace_client.cc b/src/third_party/crashpad/crashpad/util/linux/ptrace_client.cc index 9a34722ae2b53..d2b6638099450 --- a/src/third_party/crashpad/crashpad/util/linux/ptrace_client.cc +++ b/src/third_party/crashpad/crashpad/util/linux/ptrace_client.cc @@ -331,6 +331,11 @@ ssize_t PtraceClient::ReadUpTo(VMAddress address, size_t size, void* buffer) { return total_read; } + if (static_cast(bytes_read) > size) { + LOG(ERROR) << "invalid size " << bytes_read; + return -1; + } + if (!LoggingReadFileExactly(sock_, buffer_c, bytes_read)) { return -1; } diff --git a/src/third_party/devtools-frontend/src/front_end/core/host/ResourceLoader.ts b/src/third_party/devtools-frontend/src/front_end/core/host/ResourceLoader.ts index e4798d1a02a01..1623c308e2312 --- a/src/third_party/devtools-frontend/src/front_end/core/host/ResourceLoader.ts +++ b/src/third_party/devtools-frontend/src/front_end/core/host/ResourceLoader.ts @@ -105,9 +105,10 @@ export let load = function( arg0: boolean, arg1: { [x: string]: string, }, - arg2: string, arg3: LoadErrorDescription) => void): void { + arg2: string, arg3: LoadErrorDescription) => void, + allowRemoteFilePaths: boolean): void { const stream = new Common.StringOutputStream.StringOutputStream(); - loadAsStream(url, headers, stream, mycallback); + loadAsStream(url, headers, stream, mycallback, allowRemoteFilePaths); function mycallback( success: boolean, headers: { @@ -233,6 +234,15 @@ const loadXHR = (url: string): Promise => { }); }; +function canBeRemoteFilePath(url: string): boolean { + try { + const urlObject = new URL(url); + return urlObject.protocol === 'file:' && urlObject.host !== ''; + } catch (exception) { + return false; + } +} + export const loadAsStream = function( url: string, headers: { [x: string]: string, @@ -242,7 +252,8 @@ export const loadAsStream = function( ((arg0: boolean, arg1: { [x: string]: string, }, - arg2: LoadErrorDescription) => void)): void { + arg2: LoadErrorDescription) => void), + allowRemoteFilePaths?: boolean): void { const streamId = _bindOutputStream(stream); const parsedURL = new Common.ParsedURL.ParsedURL(url); if (parsedURL.isDataURL()) { @@ -250,6 +261,19 @@ export const loadAsStream = function( return; } + if (!allowRemoteFilePaths && canBeRemoteFilePath(url)) { + // Remote file paths can cause security problems, see crbug.com/1342722. + if (callback) { + callback(/* success */ false, /* headers */ {}, { + statusCode: 400, // BAD_REQUEST + netError: -20, // BLOCKED_BY_CLIENT + netErrorName: 'net::BLOCKED_BY_CLIENT', + message: 'Loading from a remote file path is prohibited for security reasons.', + }); + } + return; + } + const rawHeaders = []; if (headers) { for (const key in headers) { diff --git a/src/third_party/devtools-frontend/src/front_end/core/i18n/DevToolsLocale.ts b/src/third_party/devtools-frontend/src/front_end/core/i18n/DevToolsLocale.ts index ca742c9476dbe..589133b13533f --- a/src/third_party/devtools-frontend/src/front_end/core/i18n/DevToolsLocale.ts +++ b/src/third_party/devtools-frontend/src/front_end/core/i18n/DevToolsLocale.ts @@ -55,6 +55,10 @@ export class DevToolsLocale { return devToolsLocaleInstance as DevToolsLocale; } + static removeInstance(): void { + devToolsLocaleInstance = null; + } + forceFallbackLocale(): void { // Locale is 'readonly', this is the only case where we want to forceably // overwrite the locale. diff --git a/src/third_party/devtools-frontend/src/front_end/core/i18n/locales/en-US.json b/src/third_party/devtools-frontend/src/front_end/core/i18n/locales/en-US.json index 71fb5dab8441c..2bfc75c6aef02 --- a/src/third_party/devtools-frontend/src/front_end/core/i18n/locales/en-US.json +++ b/src/third_party/devtools-frontend/src/front_end/core/i18n/locales/en-US.json @@ -692,6 +692,9 @@ "core/sdk/sdk-meta.ts | enableNetworkRequestBlocking": { "message": "Enable network request blocking" }, + "core/sdk/sdk-meta.ts | enableRemoteFileLoading": { + "message": "Allow DevTools to load resources, such as source maps, from remote file paths. Disabled by default for security reasons." + }, "core/sdk/sdk-meta.ts | enableWebpFormat": { "message": "Enable WebP format" }, diff --git a/src/third_party/devtools-frontend/src/front_end/core/i18n/locales/en-XL.json b/src/third_party/devtools-frontend/src/front_end/core/i18n/locales/en-XL.json index b4cab385aae68..299cf99653c59 --- a/src/third_party/devtools-frontend/src/front_end/core/i18n/locales/en-XL.json +++ b/src/third_party/devtools-frontend/src/front_end/core/i18n/locales/en-XL.json @@ -692,6 +692,9 @@ "core/sdk/sdk-meta.ts | enableNetworkRequestBlocking": { "message": "Êńâb́l̂é n̂ét̂ẃôŕk̂ ŕêq́ûéŝt́ b̂ĺôćk̂ín̂ǵ" }, + "core/sdk/sdk-meta.ts | enableRemoteFileLoading": { + "message": "Âĺl̂óŵ DevTools t́ô ĺôád̂ ŕêśôúr̂ćêś, ŝúĉh́ âś ŝóûŕĉé m̂áp̂ś, f̂ŕôḿ r̂ém̂ót̂é f̂íl̂é p̂át̂h́ŝ. D́îśâb́l̂éd̂ b́ŷ d́êf́âúl̂t́ f̂ór̂ śêćûŕît́ŷ ŕêáŝón̂ś." + }, "core/sdk/sdk-meta.ts | enableWebpFormat": { "message": "Êńâb́l̂é WebP f̂ór̂ḿât́" }, diff --git a/src/third_party/devtools-frontend/src/front_end/core/sdk/NetworkManager.ts b/src/third_party/devtools-frontend/src/front_end/core/sdk/NetworkManager.ts index 51504a3685397..3313544f1201c --- a/src/third_party/devtools-frontend/src/front_end/core/sdk/NetworkManager.ts +++ b/src/third_party/devtools-frontend/src/front_end/core/sdk/NetworkManager.ts @@ -1442,10 +1442,13 @@ export class MultitargetNetworkManager extends Common.ObjectWrapper.ObjectWrappe headers['Cache-Control'] = 'no-cache'; } + const allowRemoteFilePaths = + Common.Settings.Settings.instance().moduleSetting('network.enable-remote-file-loading').get(); + return new Promise( resolve => Host.ResourceLoader.load(url, headers, (success, _responseHeaders, content, errorDescription) => { resolve({success, content, errorDescription}); - })); + }, allowRemoteFilePaths)); } } diff --git a/src/third_party/devtools-frontend/src/front_end/core/sdk/sdk-meta.ts b/src/third_party/devtools-frontend/src/front_end/core/sdk/sdk-meta.ts index 51965731f4158..1808d192246e9 --- a/src/third_party/devtools-frontend/src/front_end/core/sdk/sdk-meta.ts +++ b/src/third_party/devtools-frontend/src/front_end/core/sdk/sdk-meta.ts @@ -314,6 +314,11 @@ const UIStrings = { * emulates that the webpage is in auto dark mode. */ emulateAutoDarkMode: 'Emulate auto dark mode', + /** + * @description Label of a checkbox in the DevTools settings UI. + */ + enableRemoteFileLoading: + 'Allow `DevTools` to load resources, such as source maps, from remote file paths. Disabled by default for security reasons.', }; const str_ = i18n.i18n.registerUIStrings('core/sdk/sdk-meta.ts', UIStrings); const i18nLazyString = i18n.i18n.getLazilyComputedLocalizedString.bind(undefined, str_); @@ -1033,3 +1038,12 @@ Common.Settings.registerSettingExtension({ storageType: Common.Settings.SettingStorageType.Session, defaultValue: false, }); + +Common.Settings.registerSettingExtension({ + category: Common.Settings.SettingCategory.SOURCES, + storageType: Common.Settings.SettingStorageType.Synced, + title: i18nLazyString(UIStrings.enableRemoteFileLoading), + settingName: 'network.enable-remote-file-loading', + settingType: Common.Settings.SettingType.BOOLEAN, + defaultValue: false, +}); diff --git a/src/third_party/devtools-frontend/src/front_end/panels/timeline/TimelineLoader.ts b/src/third_party/devtools-frontend/src/front_end/panels/timeline/TimelineLoader.ts index c00d1e4099e84..87f38defe9107 --- a/src/third_party/devtools-frontend/src/front_end/panels/timeline/TimelineLoader.ts +++ b/src/third_party/devtools-frontend/src/front_end/panels/timeline/TimelineLoader.ts @@ -79,17 +79,8 @@ export class TimelineLoader implements Common.StringOutputStream.OutputStream { static loadFromEvents(events: SDK.TracingManager.EventPayload[], client: Client): TimelineLoader { const loader = new TimelineLoader(client); - window.setTimeout(async () => { - const eventsPerChunk = 5000; - client.loadingStarted(); - for (let i = 0; i < events.length; i += eventsPerChunk) { - const chunk = events.slice(i, i + eventsPerChunk); - (loader.tracingModel as SDK.TracingModel.TracingModel).addEvents(chunk); - client.loadingProgress((i + chunk.length) / events.length); - await new Promise(r => window.setTimeout(r)); // Yield event loop to paint. - } - void loader.close(); + void loader.addEvents(events); }); return loader; @@ -97,10 +88,39 @@ export class TimelineLoader implements Common.StringOutputStream.OutputStream { static loadFromURL(url: string, client: Client): TimelineLoader { const loader = new TimelineLoader(client); - Host.ResourceLoader.loadAsStream(url, null, loader); + const stream = new Common.StringOutputStream.StringOutputStream(); + client.loadingStarted(); + + const allowRemoteFilePaths = + Common.Settings.Settings.instance().moduleSetting('network.enable-remote-file-loading').get(); + Host.ResourceLoader.loadAsStream(url, null, stream, finishedCallback, allowRemoteFilePaths); + + function finishedCallback( + success: boolean, _headers: {[x: string]: string}, + errorDescription: Host.ResourceLoader.LoadErrorDescription): void { + if (!success) { + return loader.reportErrorAndCancelLoading(errorDescription.message); + } + const txt = stream.data(); + const events = JSON.parse(txt); + void loader.addEvents(events); + } + return loader; } + async addEvents(events: SDK.TracingManager.EventPayload[]): Promise { + this.client?.loadingStarted(); + const eventsPerChunk = 5000; + for (let i = 0; i < events.length; i += eventsPerChunk) { + const chunk = events.slice(i, i + eventsPerChunk); + (this.tracingModel as SDK.TracingModel.TracingModel).addEvents(chunk); + this.client?.loadingProgress((i + chunk.length) / events.length); + await new Promise(r => window.setTimeout(r)); // Yield event loop to paint. + } + void this.close(); + } + cancel(): void { this.tracingModel = null; this.backingStorage.reset(); diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/core/sdk/PageResourceLoader_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/core/sdk/PageResourceLoader_test.ts index 70d667decad2b..c072b3195ca08 --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/core/sdk/PageResourceLoader_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/core/sdk/PageResourceLoader_test.ts @@ -4,9 +4,12 @@ const {assert} = chai; -import type * as Host from '../../../../../front_end/core/host/host.js'; +import * as Common from '../../../../../front_end/core/common/common.js'; +import * as Host from '../../../../../front_end/core/host/host.js'; import * as SDK from '../../../../../front_end/core/sdk/sdk.js'; +import * as Platform from '../../../../../front_end/core/platform/platform.js'; import type * as Protocol from '../../../../../front_end/generated/protocol.js'; +import {describeWithEnvironment, describeWithLocale} from '../../helpers/EnvironmentHelpers.js'; interface LoadResult { success: boolean; @@ -14,7 +17,13 @@ interface LoadResult { errorDescription: Host.ResourceLoader.LoadErrorDescription; } -describe('PageResourceLoader', () => { +const initiator = { + target: null, + frameId: '123' as Protocol.Page.FrameId, + initiatorUrl: '' +}; + +describeWithLocale('PageResourceLoader', () => { const loads: Array<{url: string}> = []; const load = (url: string): Promise => { loads.push({url}); @@ -26,8 +35,6 @@ describe('PageResourceLoader', () => { }); }; - const initiator = {target: null, frameId: '123' as Protocol.Page.FrameId, initiatorUrl: ''}; - beforeEach(() => { loads.length = 0; }); @@ -120,3 +127,85 @@ describe('PageResourceLoader', () => { assert.isTrue(resources.every(x => x.success)); }); }); + +// Loading via host bindings requires the settings infra to be booted. +describeWithEnvironment('PageResourceLoader', () => { + it('blocks UNC file paths with the default setting', async () => { + if (!Host.Platform.isWin()) { + return; + } + + const loader = SDK.PageResourceLoader.PageResourceLoader.instance( + {forceNew: true, loadOverride: null, maxConcurrentLoads: 1, loadTimeout: 30_000}); + + const message = + await loader + .loadResource('file:////127.0.0.1/share/source-map.js.map' as Platform.DevToolsPath.UrlString, initiator) + .catch(e => e.message); + + assert.include(message, 'remote file'); + }); + + it('blocks remote file paths with the default setting', async () => { + const loader = SDK.PageResourceLoader.PageResourceLoader.instance( + {forceNew: true, loadOverride: null, maxConcurrentLoads: 1, loadTimeout: 30_000}); + + const message = + await loader.loadResource('file://host/source-map.js.map' as Platform.DevToolsPath.UrlString, initiator) + .catch(e => e.message); + + assert.include(message, 'remote file'); + }); + + it('blocks UNC file paths with a backslash on Windows with the default setting', async () => { + if (!Host.Platform.isWin()) { + return; + } + + const loader = SDK.PageResourceLoader.PageResourceLoader.instance( + {forceNew: true, loadOverride: null, maxConcurrentLoads: 1, loadTimeout: 30_000}); + + const message = + await loader + .loadResource('file:///\\127.0.0.1/share/source-map.js.map' as Platform.DevToolsPath.UrlString, initiator) + .catch(e => e.message); + + assert.include(message, 'remote file'); + }); + + it('allows remote file paths with the setting enabled', async () => { + const loader = SDK.PageResourceLoader.PageResourceLoader.instance( + {forceNew: true, loadOverride: null, maxConcurrentLoads: 1, loadTimeout: 30_000}); + sinon.stub(Host.InspectorFrontendHost.InspectorFrontendHostInstance, 'loadNetworkResource') + .callsFake((_url, _headers, streamId, callback) => { + Host.ResourceLoader.streamWrite(streamId, 'content of the source map'); + callback({statusCode: 200}); + }); + + Common.Settings.Settings.instance().moduleSetting('network.enable-remote-file-loading').set(true); + const response = + await loader.loadResource('file://host/source-map.js.map' as Platform.DevToolsPath.UrlString, initiator); + + assert.strictEqual(response.content, 'content of the source map'); + }); + + it('allows UNC paths on Windows with the setting enabled', async () => { + if (!Host.Platform.isWin()) { + return; + } + + const loader = SDK.PageResourceLoader.PageResourceLoader.instance( + {forceNew: true, loadOverride: null, maxConcurrentLoads: 1, loadTimeout: 30_000}); + sinon.stub(Host.InspectorFrontendHost.InspectorFrontendHostInstance, 'loadNetworkResource') + .callsFake((_url, _headers, streamId, callback) => { + Host.ResourceLoader.streamWrite(streamId, 'content of the source map'); + callback({statusCode: 200}); + }); + + Common.Settings.Settings.instance().moduleSetting('network.enable-remote-file-loading').set(true); + const response = await loader.loadResource( + 'file:////127.0.0.1/share/source-map.js.map' as Platform.DevToolsPath.UrlString, initiator); + + assert.strictEqual(response.content, 'content of the source map'); + }); +}); diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/core/sdk/ServerTiming_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/core/sdk/ServerTiming_test.ts index d3c9ca762a25e..c30c5d30a2bda --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/core/sdk/ServerTiming_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/core/sdk/ServerTiming_test.ts @@ -5,6 +5,7 @@ const {assert} = chai; import * as SDK from '../../../../../front_end/core/sdk/sdk.js'; +import {describeWithLocale} from '../../helpers/EnvironmentHelpers.js'; describe('ServerTiming', () => { it('can be instantiated correctly', () => { @@ -15,7 +16,7 @@ describe('ServerTiming', () => { }); }); -describe('SDK.ServerTiming.ServerTiming.createFromHeaderValue', () => { +describeWithLocale('SDK.ServerTiming.ServerTiming.createFromHeaderValue', () => { it('parses headers correctly', () => { // A real-world-like example with some edge cases. const actual = SDK.ServerTiming.ServerTiming.createFromHeaderValue( diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/helpers/EnvironmentHelpers.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/helpers/EnvironmentHelpers.ts index d67800bfdd23e..940e78e39dc2a --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/helpers/EnvironmentHelpers.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/helpers/EnvironmentHelpers.ts @@ -48,25 +48,7 @@ const REGISTERED_EXPERIMENTS = [ ]; export async function initializeGlobalVars({reset = true} = {}) { - // Expose the locale. - i18n.DevToolsLocale.DevToolsLocale.instance({ - create: true, - data: { - navigatorLanguage: 'en-US', - settingLanguage: 'en-US', - lookupClosestDevToolsLocale: () => 'en-US', - }, - }); - - // Load the strings from the resource file. - const locale = i18n.DevToolsLocale.DevToolsLocale.instance().locale; - // proxied call. - try { - await i18n.i18n.fetchAndRegisterLocaleData(locale); - } catch (error) { - // eslint-disable-next-line no-console - console.warn('EnvironmentHelper: Loading en-US locale failed', error.message); - } + await initializeGlobalLocaleVars(); // Create the appropriate settings needed to boot. const settings = [ @@ -150,6 +132,9 @@ export async function initializeGlobalVars({reset = true} = {}) { Common.Settings.SettingCategory.APPEARANCE, 'uiTheme', 'systemPreferred', Common.Settings.SettingType.ENUM), createSettingValue( Common.Settings.SettingCategory.APPEARANCE, 'language', 'en-US', Common.Settings.SettingType.ENUM), + createSettingValue( + Common.Settings.SettingCategory.SOURCES, 'network.enable-remote-file-loading', false, + Common.Settings.SettingType.BOOLEAN), ]; Common.Settings.registerSettingsForTest(settings, reset); @@ -185,6 +170,7 @@ export async function deinitializeGlobalVars() { Root.Runtime.experiments.clearForTest(); // Remove instances. + await deinitializeGlobalLocaleVars(); SDK.TargetManager.TargetManager.removeInstance(); Root.Runtime.Runtime.removeInstance(); Common.Settings.Settings.removeInstance(); @@ -210,6 +196,40 @@ export function describeWithEnvironment(title: string, fn: (this: Mocha.Suite) = }); } +export async function initializeGlobalLocaleVars() { + // Expose the locale. + i18n.DevToolsLocale.DevToolsLocale.instance({ + create: true, + data: { + navigatorLanguage: 'en-US', + settingLanguage: 'en-US', + lookupClosestDevToolsLocale: () => 'en-US', + }, + }); + + // Load the strings from the resource file. + const locale = i18n.DevToolsLocale.DevToolsLocale.instance().locale; + // proxied call. + try { + await i18n.i18n.fetchAndRegisterLocaleData(locale); + } catch (error) { + // eslint-disable-next-line no-console + console.warn('EnvironmentHelper: Loading en-US locale failed', error.message); + } +} + +export function deinitializeGlobalLocaleVars() { + i18n.DevToolsLocale.DevToolsLocale.removeInstance(); +} + +export function describeWithLocale(title: string, fn: (this: Mocha.Suite) => void) { + return describe(`locale-${title}`, () => { + before(async () => await initializeGlobalLocaleVars()); + after(deinitializeGlobalLocaleVars); + describe(title, fn); + }); +} + export function createFakeSetting(name: string, defaultValue: T): Common.Settings.Setting { const storage = new Common.Settings.SettingsStorage({}, Common.Settings.NOOP_STORAGE, 'test'); return new Common.Settings.Setting(name, defaultValue, new Common.ObjectWrapper.ObjectWrapper(), storage); diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/models/har/HARWriter_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/models/har/HARWriter_test.ts index 27fd0f46921f5..7c6c9a374dc3b --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/models/har/HARWriter_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/models/har/HARWriter_test.ts @@ -9,6 +9,7 @@ import * as SDK from '../../../../../front_end/core/sdk/sdk.js'; import * as UI from '../../../../../front_end/ui/legacy/legacy.js'; import * as HAR from '../../../../../front_end/models/har/har.js'; import type * as Protocol from '../../../../../front_end/generated/protocol.js'; +import {describeWithLocale} from '../../helpers/EnvironmentHelpers.js'; const simulateRequestWithStartTime = (startTime: number): SDK.NetworkRequest.NetworkRequest => { const requestId = 'r0' as Protocol.Network.RequestId; @@ -18,7 +19,7 @@ const simulateRequestWithStartTime = (startTime: number): SDK.NetworkRequest.Net return request; }; -describe('HARWriter', () => { +describeWithLocale('HARWriter', () => { it('can correctly sort exported requests logs', async () => { const req1Time = new Date(2020, 0, 3); const req2Time = new Date(2020, 1, 3); diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/application/ServiceWorkerUpdateCycleView_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/application/ServiceWorkerUpdateCycleView_test.ts index db346b014fa37..30aa50e1fe083 --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/application/ServiceWorkerUpdateCycleView_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/application/ServiceWorkerUpdateCycleView_test.ts @@ -7,10 +7,11 @@ const {assert} = chai; import type * as SDKModule from '../../../../../front_end/core/sdk/sdk.js'; import * as Resources from '../../../../../front_end/panels/application/application.js'; import * as Protocol from '../../../../../front_end/generated/protocol.js'; +import {describeWithLocale} from '../../helpers/EnvironmentHelpers.js'; import View = Resources.ServiceWorkerUpdateCycleView; -describe('ServiceWorkerUpdateCycleView', () => { +describeWithLocale('ServiceWorkerUpdateCycleView', () => { let versionId = 0; let SDK: typeof SDKModule; before(async () => { diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/application/components/EndpointsGrid_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/application/components/EndpointsGrid_test.ts index 99e9e8fb39f5e..e2f98b8e87b83 --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/application/components/EndpointsGrid_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/application/components/EndpointsGrid_test.ts @@ -6,6 +6,7 @@ import * as ApplicationComponents from '../../../../../../front_end/panels/appli import * as DataGrid from '../../../../../../front_end/ui/components/data_grid/data_grid.js'; import * as Coordinator from '../../../../../../front_end/ui/components/render_coordinator/render_coordinator.js'; import {assertShadowRoot, getElementWithinComponent, renderElementIntoDOM} from '../../../helpers/DOMHelpers.js'; +import {describeWithLocale} from '../../../helpers/EnvironmentHelpers.js'; import {getHeaderCells, getValuesOfAllBodyRows} from '../../../ui/components/DataGridHelpers.js'; const {assert} = chai; @@ -38,7 +39,7 @@ const getHeaderText = (cell: HTMLTableCellElement): string|null => { cell.querySelector('devtools-resources-endpoints-grid-status-header')?.shadowRoot?.textContent?.trim() || null; }; -describe('EndpointsGrid', async () => { +describeWithLocale('EndpointsGrid', async () => { it('displays placeholder text if no data', async () => { const component = new ApplicationComponents.EndpointsGrid.EndpointsGrid(); renderElementIntoDOM(component); diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/application/components/OriginTrialTreeView_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/application/components/OriginTrialTreeView_test.ts index 476dd2cc7f43f..2e2e3febbee82 --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/application/components/OriginTrialTreeView_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/application/components/OriginTrialTreeView_test.ts @@ -7,6 +7,7 @@ import * as ApplicationComponents from '../../../../../../front_end/panels/appli import * as Coordinator from '../../../../../../front_end/ui/components/render_coordinator/render_coordinator.js'; import * as TreeOutline from '../../../../../../front_end/ui/components/tree_outline/tree_outline.js'; import {assertElement, assertShadowRoot, getElementWithinComponent, renderElementIntoDOM, stripLitHtmlCommentNodes} from '../../../helpers/DOMHelpers.js'; +import {describeWithLocale} from '../../../helpers/EnvironmentHelpers.js'; const coordinator = Coordinator.RenderCoordinator.RenderCoordinator.instance(); @@ -204,7 +205,7 @@ async function waitForRenderedTreeNodeCount(shadowRoot: ShadowRoot, expectedNode }); } -describe('OriginTrialTreeView', () => { +describeWithLocale('OriginTrialTreeView', () => { it('renders trial names as root tree nodes', async () => { const {shadowRoot} = await renderOriginTrialTreeViewTreeOutline({ trials: [ diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/application/components/StackTrace_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/application/components/StackTrace_test.ts index 570f29a5e451f..0256dc4c788bf --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/application/components/StackTrace_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/application/components/StackTrace_test.ts @@ -8,6 +8,7 @@ import * as ExpandableList from '../../../../../../front_end/ui/components/expan import * as Components from '../../../../../../front_end/ui/legacy/components/utils/utils.js'; import type * as Protocol from '../../../../../../front_end/generated/protocol.js'; import {assertElement, assertShadowRoot, dispatchClickEvent, getCleanTextContentFromElements, getElementWithinComponent, getElementsWithinComponent, renderElementIntoDOM} from '../../../helpers/DOMHelpers.js'; +import {describeWithLocale} from '../../../helpers/EnvironmentHelpers.js'; const {assert} = chai; @@ -40,7 +41,7 @@ function mockBuildStackTraceRows( const fakeScriptId = '1' as Protocol.Runtime.ScriptId; -describe('StackTrace', () => { +describeWithLocale('StackTrace', () => { it('does not generate rows when there is no data', () => { const component = new ApplicationComponents.StackTrace.StackTrace(); const rows = component.createRowTemplates(); diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/application/components/TrustTokensView_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/application/components/TrustTokensView_test.ts index ecef6ea6f9186..97bbfe2bdb1be --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/application/components/TrustTokensView_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/application/components/TrustTokensView_test.ts @@ -8,6 +8,7 @@ import * as Coordinator from '../../../../../../front_end/ui/components/render_c import type * as Protocol from '../../../../../../front_end/generated/protocol.js'; import {assertElement, assertShadowRoot, dispatchClickEvent, getElementWithinComponent, renderElementIntoDOM} from '../../../helpers/DOMHelpers.js'; import {getCellByIndexes, getValuesOfAllBodyRows} from '../../../ui/components/DataGridHelpers.js'; +import {describeWithLocale} from '../../../helpers/EnvironmentHelpers.js'; const coordinator = Coordinator.RenderCoordinator.RenderCoordinator.instance(); @@ -35,7 +36,7 @@ function getInternalDataGridShadowRoot(component: ApplicationComponents.TrustTok return dataGrid.shadowRoot; } -describe('TrustTokensView', () => { +describeWithLocale('TrustTokensView', () => { it('renders trust token data', async () => { const component = await renderTrustTokensView([ {issuerOrigin: 'foo.com', count: 42}, diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/elements/components/AccessibilityTreeNode_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/elements/components/AccessibilityTreeNode_test.ts index f677eb6e05d1a..4425fc4a8a966 --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/elements/components/AccessibilityTreeNode_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/elements/components/AccessibilityTreeNode_test.ts @@ -5,10 +5,11 @@ import * as ElementsComponents from '../../../../../../front_end/panels/elements/components/components.js'; import * as Coordinator from '../../../../../../front_end/ui/components/render_coordinator/render_coordinator.js'; import {assertShadowRoot, renderElementIntoDOM} from '../../../helpers/DOMHelpers.js'; +import {describeWithLocale} from '../../../helpers/EnvironmentHelpers.js'; const coordinator = Coordinator.RenderCoordinator.RenderCoordinator.instance(); -describe('AccessibilityTreeNode', () => { +describeWithLocale('AccessibilityTreeNode', () => { it('renders role and name correctly for unignored nodes', async () => { const component = new ElementsComponents.AccessibilityTreeNode.AccessibilityTreeNode(); renderElementIntoDOM(component); diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/elements/components/LayoutPane_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/elements/components/LayoutPane_test.ts index 6a11386234a04..11d7571a6fb80 --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/elements/components/LayoutPane_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/elements/components/LayoutPane_test.ts @@ -5,10 +5,11 @@ import * as Common from '../../../../../../front_end/core/common/common.js'; import * as ElementsComponents from '../../../../../../front_end/panels/elements/components/components.js'; import {assertElement, assertShadowRoot, getEventPromise, renderElementIntoDOM} from '../../../helpers/DOMHelpers.js'; +import {describeWithLocale} from '../../../helpers/EnvironmentHelpers.js'; const {assert} = chai; -describe('LayoutPane', async () => { +describeWithLocale('LayoutPane', async () => { function queryLabels(component: HTMLElement, selector: string) { assertShadowRoot(component.shadowRoot); return Array.from(component.shadowRoot.querySelectorAll(selector)).map(label => { diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/elements/components/StylePropertyEditor_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/elements/components/StylePropertyEditor_test.ts index bf8b02367840e..7c37b78806923 --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/elements/components/StylePropertyEditor_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/elements/components/StylePropertyEditor_test.ts @@ -4,10 +4,11 @@ import * as ElementsComponents from '../../../../../../front_end/panels/elements/components/components.js'; import {assertElement, assertShadowRoot, getEventPromise, renderElementIntoDOM} from '../../../helpers/DOMHelpers.js'; +import {describeWithLocale} from '../../../helpers/EnvironmentHelpers.js'; const {assert} = chai; -describe('StylePropertyEditor', async () => { +describeWithLocale('StylePropertyEditor', async () => { function assertValues(component: HTMLElement, values: string[]) { assertShadowRoot(component.shadowRoot); const propertyElements = component.shadowRoot.querySelectorAll('.property'); diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/issues/GenericIssue_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/issues/GenericIssue_test.ts index 17731d050b3d7..9c05056dfca7e --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/issues/GenericIssue_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/issues/GenericIssue_test.ts @@ -8,8 +8,9 @@ import * as IssuesManager from '../../../../../front_end/models/issues_manager/i import type * as SDK from '../../../../../front_end/core/sdk/sdk.js'; import {MockIssuesModel} from '../../models/issues_manager/MockIssuesModel.js'; import * as Protocol from '../../../../../front_end/generated/protocol.js'; +import {describeWithLocale} from '../../helpers/EnvironmentHelpers.js'; -describe('GenericIssue', async () => { +describeWithLocale('GenericIssue', async () => { const mockModel = new MockIssuesModel([]) as unknown as SDK.IssuesModel.IssuesModel; function createProtocolIssueWithoutDetails(): Protocol.Audits.InspectorIssue { diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/network/components/RequestTrustTokensView_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/network/components/RequestTrustTokensView_test.ts index 4bad3af24c994..5818b66c1c5b3 --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/network/components/RequestTrustTokensView_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/network/components/RequestTrustTokensView_test.ts @@ -6,10 +6,11 @@ import {assertNotNullOrUndefined} from '../../../../../../front_end/core/platfor import * as Protocol from '../../../../../../front_end/generated/protocol.js'; import * as NetworkComponents from '../../../../../../front_end/panels/network/components/components.js'; import {getElementsWithinComponent, getElementWithinComponent, renderElementIntoDOM} from '../../../helpers/DOMHelpers.js'; +import {describeWithLocale} from '../../../helpers/EnvironmentHelpers.js'; const {assert} = chai; -describe('RequestTrustTokensView', () => { +describeWithLocale('RequestTrustTokensView', () => { const mockId = 'mockId' as Protocol.Network.RequestId; const renderRequestTrustTokensView = () => { diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/settings/emulation/components/UserAgentClientHintsForm_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/settings/emulation/components/UserAgentClientHintsForm_test.ts index 577cf7d306f9c..802270f0329d0 --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/settings/emulation/components/UserAgentClientHintsForm_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/settings/emulation/components/UserAgentClientHintsForm_test.ts @@ -4,10 +4,11 @@ import * as EmulationComponents from '../../../../../../../front_end/panels/settings/emulation/components/components.js'; import * as Buttons from '../../../../../../../front_end/ui/components/buttons/buttons.js'; import {getElementsWithinComponent, getElementWithinComponent, getEventPromise, renderElementIntoDOM} from '../../../../helpers/DOMHelpers.js'; +import {describeWithLocale} from '../../../../helpers/EnvironmentHelpers.js'; const {assert} = chai; -describe('UserAgentClientHintsForm', () => { +describeWithLocale('UserAgentClientHintsForm', () => { const testMetaData = { brands: [ { diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/timeline/components/WebVitalsTimeline_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/timeline/components/WebVitalsTimeline_test.ts index 42534f5f955ee..28a6391bf00b8 --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/timeline/components/WebVitalsTimeline_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/panels/timeline/components/WebVitalsTimeline_test.ts @@ -3,10 +3,11 @@ // found in the LICENSE file. import * as TimelineComponents from '../../../../../../front_end/panels/timeline/components/components.js'; +import {describeWithLocale} from '../../../helpers/EnvironmentHelpers.js'; const {assert} = chai; -describe('WebVitalsTimeline', () => { +describeWithLocale('WebVitalsTimeline', () => { it('should instantiate without problems', () => { const node = new TimelineComponents.WebVitalsTimeline.WebVitalsTimeline(); assert.instanceOf(node, TimelineComponents.WebVitalsTimeline.WebVitalsTimeline); diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/ListWidget_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/ListWidget_test.ts index b9ca80afdc02f..c917a10fef72d --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/ListWidget_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/ListWidget_test.ts @@ -5,8 +5,9 @@ const {assert} = chai; import * as UI from '../../../../front_end/ui/legacy/legacy.js'; +import {describeWithLocale} from '../helpers/EnvironmentHelpers.js'; -describe('ListWidget', () => { +describeWithLocale('ListWidget', () => { it('Cancel button triggers on mouse click event', () => { const editor = new UI.ListWidget.Editor(); document.body.appendChild(editor.element); diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/Linkifier_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/Linkifier_test.ts index a65ca46e7a867..8e26ffab83110 --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/Linkifier_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/Linkifier_test.ts @@ -4,13 +4,14 @@ import * as Linkifier from '../../../../../front_end/ui/components/linkifier/linkifier.js'; import * as Coordinator from '../../../../../front_end/ui/components/render_coordinator/render_coordinator.js'; +import {describeWithLocale} from '../../helpers/EnvironmentHelpers.js'; const coordinator = Coordinator.RenderCoordinator.RenderCoordinator.instance(); import {assertElement, assertShadowRoot, dispatchClickEvent, getEventPromise, renderElementIntoDOM} from '../../helpers/DOMHelpers.js'; const {assert} = chai; -describe('Linkifier', () => { +describeWithLocale('Linkifier', () => { it('renders a link when given a URL', async () => { const component = new Linkifier.Linkifier.Linkifier(); component.data = { diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/SurveyLink_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/SurveyLink_test.ts index c69af412b7c14..5ebe0bb59ad57 --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/SurveyLink_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/SurveyLink_test.ts @@ -8,6 +8,7 @@ import * as SurveyLink from '../../../../../front_end/ui/components/survey_link/ import * as Common from '../../../../../front_end/core/common/common.js'; import {assertNotNullOrUndefined} from '../../../../../front_end/core/platform/platform.js'; import {assertShadowRoot, renderElementIntoDOM} from '../../helpers/DOMHelpers.js'; +import {describeWithLocale} from '../../helpers/EnvironmentHelpers.js'; function canShowSuccessfulCallback(trigger: string, callback: SurveyLink.SurveyLink.CanShowSurveyCallback) { callback({canShowSurvey: true}); @@ -24,7 +25,7 @@ function showFailureCallback(trigger: string, callback: SurveyLink.SurveyLink.Sh const empty = Common.UIString.LocalizedEmptyString; -describe('SurveyLink', async () => { +describeWithLocale('SurveyLink', async () => { it('shows no link when canShowSurvey is still pending', () => { const link = new SurveyLink.SurveyLink.SurveyLink(); link.data = {trigger: 'test trigger', promptText: empty, canShowSurvey: () => {}, showSurvey: () => {}}; diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/diff_view/BUILD.gn b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/diff_view/BUILD.gn index 583f97bcc8c3b..5e9f4b2bf187d --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/diff_view/BUILD.gn +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/diff_view/BUILD.gn @@ -11,5 +11,6 @@ ts_library("diff_view") { deps = [ "../../../../../../front_end/third_party/diff:bundle", "../../../../../../front_end/ui/components/diff_view:bundle", + "../../../helpers", ] } diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/diff_view/DiffView_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/diff_view/DiffView_test.ts index 5b4f9c23d9386..8223642fbeffc --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/diff_view/DiffView_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/diff_view/DiffView_test.ts @@ -6,6 +6,7 @@ const {assert} = chai; import * as DiffView from '../../../../../../front_end/ui/components/diff_view/diff_view.js'; import * as Diff from '../../../../../../front_end/third_party/diff/diff.js'; +import {describeWithLocale} from '../../../helpers/EnvironmentHelpers.js'; function buildDiff(original: string, updated: string): Promise { const diff = Diff.Diff.DiffWrapper.lineDiff(original.split('\n'), updated.split('\n')); @@ -35,7 +36,7 @@ function text(elt: Node): string { return ''; } -describe('DiffView', () => { +describeWithLocale('DiffView', () => { it('renders the proper content', async () => { const output = await simpleDiff(); const lines = Array.from(output.querySelectorAll('.diff-line-content')); diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/issue_counter/IssueCounter_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/issue_counter/IssueCounter_test.ts index ed74e953e3ec4..4ba96593820d1 --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/issue_counter/IssueCounter_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/issue_counter/IssueCounter_test.ts @@ -7,6 +7,7 @@ import * as IssuesManager from '../../../../../../front_end/models/issues_manage import * as IconButton from '../../../../../../front_end/ui/components/icon_button/icon_button.js'; import * as IssueCounter from '../../../../../../front_end/ui/components/issue_counter/issue_counter.js'; import {assertElement, assertElements, assertShadowRoot, renderElementIntoDOM} from '../../../helpers/DOMHelpers.js'; +import {describeWithLocale} from '../../../helpers/EnvironmentHelpers.js'; import {MockIssuesManager} from '../../../models/issues_manager/MockIssuesManager.js'; const {assert} = chai; @@ -50,7 +51,7 @@ export const extractButton = (shadowRoot: ShadowRoot): HTMLButtonElement => { return button; }; -describe('IssueCounter', () => { +describeWithLocale('IssueCounter', () => { describe('with omitting zero-count issue kinds', () => { it('renders correctly', () => { const issuesManager = new MockIssuesManager([]); @@ -216,7 +217,7 @@ describe('IssueCounter', () => { }); }); -describe('getIssueCountsEnumeration', () => { +describeWithLocale('getIssueCountsEnumeration', () => { it('formats issue counts correctly', () => { const issuesManager = new MockIssuesManager([]); const string = IssueCounter.IssueCounter.getIssueCountsEnumeration( diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/issue_counter/IssueLinkIcon_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/issue_counter/IssueLinkIcon_test.ts index 498dfb23f694a..6e3237c1ce027 --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/issue_counter/IssueLinkIcon_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/issue_counter/IssueLinkIcon_test.ts @@ -8,6 +8,7 @@ import * as IconButton from '../../../../../../front_end/ui/components/icon_butt import * as IssueCounter from '../../../../../../front_end/ui/components/issue_counter/issue_counter.js'; import * as Coordinator from '../../../../../../front_end/ui/components/render_coordinator/render_coordinator.js'; import {assertElement, assertShadowRoot, renderElementIntoDOM} from '../../../helpers/DOMHelpers.js'; +import {describeWithLocale} from '../../../helpers/EnvironmentHelpers.js'; import type * as Protocol from '../../../../../../front_end/generated/protocol.js'; import * as IssuesManager from '../../../../../../front_end/models/issues_manager/issues_manager.js'; @@ -92,7 +93,7 @@ class MockIssueResolver { } } -describe('IssueLinkIcon', () => { +describeWithLocale('IssueLinkIcon', () => { const issueId = 'issue1' as Protocol.Audits.IssueId; const defaultIcon = {iconName: 'issue-questionmark-icon', color: 'var(--color-text-secondary)'}; const breakingChangeIcon = diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/linear_memory_inspector/LinearMemoryInspector_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/linear_memory_inspector/LinearMemoryInspector_test.ts index f1a916cb9431e..adc899ad2a420 --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/linear_memory_inspector/LinearMemoryInspector_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/linear_memory_inspector/LinearMemoryInspector_test.ts @@ -4,6 +4,7 @@ import * as LinearMemoryInspectorModule from '../../../../../../front_end/ui/components/linear_memory_inspector/linear_memory_inspector.js'; import {dispatchClickEvent, getElementsWithinComponent, getElementWithinComponent, getEventPromise, renderElementIntoDOM} from '../../../helpers/DOMHelpers.js'; +import {describeWithLocale} from '../../../helpers/EnvironmentHelpers.js'; import {NAVIGATOR_ADDRESS_SELECTOR, NAVIGATOR_HISTORY_BUTTON_SELECTOR, NAVIGATOR_PAGE_BUTTON_SELECTOR} from './LinearMemoryNavigator_test.js'; import {ENDIANNESS_SELECTOR} from './LinearMemoryValueInterpreter_test.js'; @@ -16,7 +17,7 @@ const NAVIGATOR_SELECTOR = 'devtools-linear-memory-inspector-navigator'; const VIEWER_SELECTOR = 'devtools-linear-memory-inspector-viewer'; const INTERPRETER_SELECTOR = 'devtools-linear-memory-inspector-interpreter'; -describe('LinearMemoryInspector', () => { +describeWithLocale('LinearMemoryInspector', () => { function getViewer(component: LinearMemoryInspectorModule.LinearMemoryInspector.LinearMemoryInspector) { return getElementWithinComponent( component, VIEWER_SELECTOR, LinearMemoryInspectorModule.LinearMemoryViewer.LinearMemoryViewer); diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/linear_memory_inspector/LinearMemoryNavigator_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/linear_memory_inspector/LinearMemoryNavigator_test.ts index ff712a3c2e142..a0838fc4f4bc1 --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/linear_memory_inspector/LinearMemoryNavigator_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/linear_memory_inspector/LinearMemoryNavigator_test.ts @@ -4,6 +4,7 @@ import * as LinearMemoryInspector from '../../../../../../front_end/ui/components/linear_memory_inspector/linear_memory_inspector.js'; import {assertElement, assertElements, assertShadowRoot, getElementsWithinComponent, getElementWithinComponent, getEventPromise, renderElementIntoDOM} from '../../../helpers/DOMHelpers.js'; +import {describeWithLocale} from '../../../helpers/EnvironmentHelpers.js'; const {assert} = chai; @@ -12,7 +13,7 @@ export const NAVIGATOR_PAGE_BUTTON_SELECTOR = '[data-button=pagenavigation]'; export const NAVIGATOR_HISTORY_BUTTON_SELECTOR = '[data-button=historynavigation]'; export const NAVIGATOR_REFRESH_BUTTON_SELECTOR = '[data-button=refreshrequested]'; -describe('LinearMemoryNavigator', () => { +describeWithLocale('LinearMemoryNavigator', () => { let component: LinearMemoryInspector.LinearMemoryNavigator.LinearMemoryNavigator; beforeEach(renderNavigator); diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/linear_memory_inspector/LinearMemoryValueInterpreter_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/linear_memory_inspector/LinearMemoryValueInterpreter_test.ts index ad0f05f4ae589..47d086133878c --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/linear_memory_inspector/LinearMemoryValueInterpreter_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/linear_memory_inspector/LinearMemoryValueInterpreter_test.ts @@ -4,6 +4,7 @@ import * as LinearMemoryInspector from '../../../../../../front_end/ui/components/linear_memory_inspector/linear_memory_inspector.js'; import {getElementWithinComponent, getEventPromise, renderElementIntoDOM} from '../../../helpers/DOMHelpers.js'; +import {describeWithLocale} from '../../../helpers/EnvironmentHelpers.js'; const {assert} = chai; @@ -30,7 +31,7 @@ function clickSettingsButton( settingsButton.click(); } -describe('LinearMemoryValueInterpreter', () => { +describeWithLocale('LinearMemoryValueInterpreter', () => { function setUpComponent() { const buffer = new Uint8Array([34, 234, 12, 3]).buffer; const component = new LinearMemoryInspector.LinearMemoryValueInterpreter.LinearMemoryValueInterpreter(); diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/linear_memory_inspector/ValueInterpreterDisplay_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/linear_memory_inspector/ValueInterpreterDisplay_test.ts index 375c549d59be2..ed97e54e12a18 --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/linear_memory_inspector/ValueInterpreterDisplay_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/linear_memory_inspector/ValueInterpreterDisplay_test.ts @@ -4,12 +4,13 @@ import * as LinearMemoryInspector from '../../../../../../front_end/ui/components/linear_memory_inspector/linear_memory_inspector.js'; import {dispatchClickEvent, getElementsWithinComponent, getElementWithinComponent, getEventPromise, renderElementIntoDOM} from '../../../helpers/DOMHelpers.js'; +import {describeWithLocale} from '../../../helpers/EnvironmentHelpers.js'; export const DISPLAY_JUMP_TO_POINTER_BUTTON_SELECTOR = '[data-jump]'; const {assert} = chai; -describe('ValueInterpreterDisplay', () => { +describeWithLocale('ValueInterpreterDisplay', () => { const combinationsForNumbers = [ {endianness: LinearMemoryInspector.ValueInterpreterDisplayUtils.Endianness.Little, signed: true}, {endianness: LinearMemoryInspector.ValueInterpreterDisplayUtils.Endianness.Little, signed: false}, diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/linear_memory_inspector/ValueInterpreterSettings_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/linear_memory_inspector/ValueInterpreterSettings_test.ts index c69ceb8c2e5d7..54e11960df30e --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/linear_memory_inspector/ValueInterpreterSettings_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/linear_memory_inspector/ValueInterpreterSettings_test.ts @@ -4,6 +4,7 @@ import * as LinearMemoryInspector from '../../../../../../front_end/ui/components/linear_memory_inspector/linear_memory_inspector.js'; import {assertElement, getElementsWithinComponent, getEventPromise, renderElementIntoDOM} from '../../../helpers/DOMHelpers.js'; +import {describeWithLocale} from '../../../helpers/EnvironmentHelpers.js'; const {assert} = chai; @@ -11,7 +12,7 @@ const SETTINGS_INPUT_SELECTOR = '[data-input]'; const SETTINGS_TITLE_SELECTOR = '[data-title]'; const SETTINGS_LABEL_SELECTOR = '.type-label'; -describe('ValueInterpreterSettings', () => { +describeWithLocale('ValueInterpreterSettings', () => { function setUpComponent() { const component = new LinearMemoryInspector.ValueInterpreterSettings.ValueInterpreterSettings(); const data = { diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/panel_feedback/feedback_button_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/panel_feedback/feedback_button_test.ts index 2934702e4af4f..234794fdaff6f --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/panel_feedback/feedback_button_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/panel_feedback/feedback_button_test.ts @@ -6,10 +6,11 @@ import * as Host from '../../../../../../front_end/core/host/host.js'; import * as PanelFeedback from '../../../../../../front_end/ui/components/panel_feedback/panel_feedback.js'; import * as Coordinator from '../../../../../../front_end/ui/components/render_coordinator/render_coordinator.js'; import {assertElement, assertShadowRoot, dispatchClickEvent, renderElementIntoDOM} from '../../../helpers/DOMHelpers.js'; +import {describeWithLocale} from '../../../helpers/EnvironmentHelpers.js'; const coordinator = Coordinator.RenderCoordinator.RenderCoordinator.instance(); -describe('Feedback button', () => { +describeWithLocale('Feedback button', () => { it('calls out to the Host API to open the link in a new tab', async () => { const openInNewTabStub = sinon.stub(Host.InspectorFrontendHost.InspectorFrontendHostInstance, 'openInNewTab'); const component = new PanelFeedback.FeedbackButton.FeedbackButton(); diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/panel_feedback/panel_feedback_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/panel_feedback/panel_feedback_test.ts index 5c0176e4aad0f..bf4c5d66ce5d6 --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/panel_feedback/panel_feedback_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/panel_feedback/panel_feedback_test.ts @@ -5,10 +5,11 @@ import * as PanelFeedback from '../../../../../../front_end/ui/components/panel_feedback/panel_feedback.js'; import * as Coordinator from '../../../../../../front_end/ui/components/render_coordinator/render_coordinator.js'; import {assertShadowRoot, renderElementIntoDOM} from '../../../helpers/DOMHelpers.js'; +import {describeWithLocale} from '../../../helpers/EnvironmentHelpers.js'; const coordinator = Coordinator.RenderCoordinator.RenderCoordinator.instance(); -describe('Panel Feedback', () => { +describeWithLocale('Panel Feedback', () => { async function renderFeedbackComponent(): Promise { const component = new PanelFeedback.PanelFeedback.PanelFeedback(); component.data = { diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/panel_feedback/preview_toggle_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/panel_feedback/preview_toggle_test.ts index 8b5038463b26d..adb40c741a21e --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/panel_feedback/preview_toggle_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/panel_feedback/preview_toggle_test.ts @@ -6,10 +6,11 @@ import * as Root from '../../../../../../front_end/core/root/root.js'; import * as PanelFeedback from '../../../../../../front_end/ui/components/panel_feedback/panel_feedback.js'; import * as Coordinator from '../../../../../../front_end/ui/components/render_coordinator/render_coordinator.js'; import {assertElement, assertShadowRoot, dispatchClickEvent, renderElementIntoDOM} from '../../../helpers/DOMHelpers.js'; +import {describeWithLocale} from '../../../helpers/EnvironmentHelpers.js'; const coordinator = Coordinator.RenderCoordinator.RenderCoordinator.instance(); -describe('Preview toggle', () => { +describeWithLocale('Preview toggle', () => { it('calls out correctly to enable experiment', async () => { const isEnabledStub = sinon.stub(Root.Runtime.experiments, 'isEnabled'); isEnabledStub.callsFake(() => false); diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/request_link_icon/RequestLinkIcon_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/request_link_icon/RequestLinkIcon_test.ts index 68ab1f8ccad36..7a032572abf66 --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/request_link_icon/RequestLinkIcon_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/components/request_link_icon/RequestLinkIcon_test.ts @@ -11,6 +11,7 @@ import * as IconButton from '../../../../../../front_end/ui/components/icon_butt import {assertElement, assertShadowRoot, renderElementIntoDOM} from '../../../helpers/DOMHelpers.js'; import * as Coordinator from '../../../../../../front_end/ui/components/render_coordinator/render_coordinator.js'; import type * as Protocol from '../../../../../../front_end/generated/protocol.js'; +import {describeWithLocale} from '../../../helpers/EnvironmentHelpers.js'; const {assert} = chai; @@ -104,7 +105,7 @@ class MockRequestResolver { } } -describe('RequestLinkIcon', () => { +describeWithLocale('RequestLinkIcon', () => { const requestId1 = 'r1' as Protocol.Network.RequestId; const requestId2 = 'r2' as Protocol.Network.RequestId; diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/legacy/SuggestBox_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/legacy/SuggestBox_test.ts index c59fc7963de8d..91032a4043e87 --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/legacy/SuggestBox_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/legacy/SuggestBox_test.ts @@ -3,6 +3,7 @@ // found in the LICENSE file. import * as UI from '../../../../../front_end/ui/legacy/legacy.js'; +import {describeWithLocale} from '../../helpers/EnvironmentHelpers.js'; const {assert} = chai; @@ -34,7 +35,7 @@ class MockSuggestBoxDelegate implements UI.SuggestBox.SuggestBoxDelegate { const createKeyEvent = (key: string) => new KeyboardEvent('keydown', {bubbles: true, cancelable: true, key}); -describe('SuggestBox', () => { +describeWithLocale('SuggestBox', () => { let delegate: MockSuggestBoxDelegate; let div: HTMLElement; let suggestBox: UI.SuggestBox.SuggestBox; diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/legacy/components/inline_editor/CSSVarSwatch_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/legacy/components/inline_editor/CSSVarSwatch_test.ts index 5e46665edae83..33b8d32083f3e --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/legacy/components/inline_editor/CSSVarSwatch_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/legacy/components/inline_editor/CSSVarSwatch_test.ts @@ -5,6 +5,7 @@ import {assertNotNullOrUndefined} from '../../../../../../../front_end/core/platform/platform.js'; import * as InlineEditor from '../../../../../../../front_end/ui/legacy/components/inline_editor/inline_editor.js'; import {assertShadowRoot, renderElementIntoDOM} from '../../../../helpers/DOMHelpers.js'; +import {describeWithLocale} from '../../../../helpers/EnvironmentHelpers.js'; const {assert} = chai; @@ -31,7 +32,7 @@ function assertSwatch(swatch: InlineEditor.CSSVarSwatch.CSSVarSwatch, expected: assert.strictEqual(link.textContent, expected.varText, 'The link has the right text content'); } -describe('CSSVarSwatch', () => { +describeWithLocale('CSSVarSwatch', () => { it('can be instantiated successfully', () => { const component = new InlineEditor.CSSVarSwatch.CSSVarSwatch(); renderElementIntoDOM(component); diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/legacy/components/inline_editor/ColorSwatch_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/legacy/components/inline_editor/ColorSwatch_test.ts index db01f257c71dc..2d60353cb2837 --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/legacy/components/inline_editor/ColorSwatch_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/legacy/components/inline_editor/ColorSwatch_test.ts @@ -6,6 +6,7 @@ import * as Common from '../../../../../../../front_end/core/common/common.js'; import {assertNotNullOrUndefined} from '../../../../../../../front_end/core/platform/platform.js'; import * as InlineEditor from '../../../../../../../front_end/ui/legacy/components/inline_editor/inline_editor.js'; import {assertElement, assertShadowRoot, dispatchClickEvent, renderElementIntoDOM} from '../../../../helpers/DOMHelpers.js'; +import {describeWithLocale} from '../../../../helpers/EnvironmentHelpers.js'; const {assert} = chai; @@ -45,7 +46,7 @@ function getClickTarget(swatch: InlineEditor.ColorSwatch.ColorSwatch) { return swatch.shadowRoot.querySelector('.color-swatch-inner') as HTMLElement; } -describe('ColorSwatch', () => { +describeWithLocale('ColorSwatch', () => { it('accepts colors as text', () => { const swatch = createSwatch('red'); diff --git a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/legacy/components/perf_ui/PieChart_test.ts b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/legacy/components/perf_ui/PieChart_test.ts index aac10c6ecc8b8..5604dcd6d1917 --- a/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/legacy/components/perf_ui/PieChart_test.ts +++ b/src/third_party/devtools-frontend/src/test/unittests/front_end/ui/legacy/components/perf_ui/PieChart_test.ts @@ -5,6 +5,7 @@ import {assertNotNullOrUndefined} from '../../../../../../../front_end/core/platform/platform.js'; import * as PerfUI from '../../../../../../../front_end/ui/legacy/components/perf_ui/perf_ui.js'; import {assertShadowRoot, renderElementIntoDOM} from '../../../../helpers/DOMHelpers.js'; +import {describeWithLocale} from '../../../../helpers/EnvironmentHelpers.js'; const {assert} = chai; @@ -26,7 +27,7 @@ const testChartNoLegendData = { slices: [{value: 75, color: 'crimson', title: 'Filling'}, {value: 25, color: 'burlywood', title: 'Crust'}], }; -describe('PieChart', () => { +describeWithLocale('PieChart', () => { describe('with legend', () => { it('is labelled by the chart name', () => { const chart = new PerfUI.PieChart.PieChart(); diff --git a/src/third_party/icu/BUILD.gn b/src/third_party/icu/BUILD.gn index daf8b97df5346..482e5b7db65c5 --- a/src/third_party/icu/BUILD.gn +++ b/src/third_party/icu/BUILD.gn @@ -364,7 +364,7 @@ if (is_android && enable_java_templates) { } } -if (is_android) { +if (is_android || is_ohos) { # Use android_small for now to keep the size till we decide to switch to the new one. data_dir = "android_small" } else if (is_ios) { diff --git a/src/third_party/libphonenumber/BUILD.gn b/src/third_party/libphonenumber/BUILD.gn index 3386fcafbb5ba..7d492055be972 --- a/src/third_party/libphonenumber/BUILD.gn +++ b/src/third_party/libphonenumber/BUILD.gn @@ -2,6 +2,7 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. +import("//testing/libfuzzer/fuzzer_test.gni") import("//testing/test.gni") import("//third_party/protobuf/proto_library.gni") @@ -116,3 +117,16 @@ test("libphonenumber_unittests") { "//third_party/icu", ] } + +fuzzer_test("libphonenumber_fuzzer") { + sources = [ "libphonenumber_fuzzer.cc" ] + deps = [ + ":libphonenumber", + "//third_party/abseil-cpp:absl", + ] +} + +fuzzer_test("charntorune_fuzzer") { + sources = [ "charntorune_fuzzer.cc" ] + deps = [ ":libphonenumber" ] +} diff --git a/src/third_party/libphonenumber/README.chromium b/src/third_party/libphonenumber/README.chromium index e50686688b07f..c4a4e2c789f92 --- a/src/third_party/libphonenumber/README.chromium +++ b/src/third_party/libphonenumber/README.chromium @@ -19,6 +19,8 @@ Additional files, not in the original library: BUILD.gn README.chromium LICENSE # Taken from https://github.com/googlei18n/libphonenumber/ + charntorune_fuzzer.cc + libphonenumber_fuzzer.cc phonenumber_api.h The library is mapped through the DEPS file into the Chromium sources root diff --git a/src/third_party/libphonenumber/charntorune_fuzzer.cc b/src/third_party/libphonenumber/charntorune_fuzzer.cc new file mode 100644 index 0000000000000..82a6d8a2b86b6 --- /dev/null +++ b/src/third_party/libphonenumber/charntorune_fuzzer.cc @@ -0,0 +1,15 @@ +// Copyright 2022 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include + +#include + +#include "third_party/libphonenumber/dist/cpp/src/phonenumbers/utf/utf.h" + +extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { + Rune rune; + charntorune(&rune, reinterpret_cast(data), size); + return 0; +} \ No newline at end of file diff --git a/src/third_party/libphonenumber/libphonenumber_fuzzer.cc b/src/third_party/libphonenumber/libphonenumber_fuzzer.cc new file mode 100644 index 0000000000000..7fc0391a921bb --- /dev/null +++ b/src/third_party/libphonenumber/libphonenumber_fuzzer.cc @@ -0,0 +1,22 @@ +// Copyright 2022 The Chromium Authors +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include + +#include + +#include "third_party/libphonenumber/phonenumber_api.h" + +using ::i18n::phonenumbers::PhoneNumber; +using ::i18n::phonenumbers::PhoneNumberUtil; + +extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) { + std::string input(reinterpret_cast(data), size); + + PhoneNumber parsed_number; + PhoneNumberUtil* phone_number_util = PhoneNumberUtil::GetInstance(); + phone_number_util->Parse(input, "US", &parsed_number); + + return 0; +} \ No newline at end of file diff --git a/src/third_party/tflite_support/README.chromium b/src/third_party/tflite_support/README.chromium index 4995893eb475d..4f931abde86d9 --- a/src/third_party/tflite_support/README.chromium +++ b/src/third_party/tflite_support/README.chromium @@ -35,6 +35,7 @@ is a no-op in chromium builds and upsets clang. only available on POSIX systems. 11) Run clang-format. 12) Remove an unneeded static initializer. +13) Remove whitespace tokenizer since it uses the unsafe function `chartorune`. Update Process: 1) Clone the tflite-support github repo at the desired commit into src/ diff --git a/src/third_party/tflite_support/patches/0014-remove-whitespace-tokenizer.patch b/src/third_party/tflite_support/patches/0014-remove-whitespace-tokenizer.patch new file mode 100644 index 0000000000000..d488455d929b6 --- /dev/null +++ b/src/third_party/tflite_support/patches/0014-remove-whitespace-tokenizer.patch @@ -0,0 +1,776 @@ +From 3e2574d49dd6a93efef8de6c5256a428c9d9c784 Mon Sep 17 00:00:00 2001 +From: Robert Ogden +Date: Mon, 17 Oct 2022 13:09:01 -0700 +Subject: [PATCH] remove whitespace tokenizer + +--- + .../custom_ops/kernel/whitespace_tokenizer.cc | 227 ------------------ + .../custom_ops/kernel/whitespace_tokenizer.h | 31 --- + .../whitespace_tokenizer_op_resolver.cc | 32 --- + .../kernel/whitespace_tokenizer_op_resolver.h | 34 --- + ...hitespace_tokenizer_op_resolver_wrapper.cc | 29 --- + .../kernel/whitespace_tokenizer_test.cc | 189 --------------- + .../kernel/whitespace_tokenizer_test.py | 167 ------------- + 7 files changed, 709 deletions(-) + delete mode 100644 third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer.cc + delete mode 100644 third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer.h + delete mode 100644 third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_op_resolver.cc + delete mode 100644 third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_op_resolver.h + delete mode 100644 third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_op_resolver_wrapper.cc + delete mode 100644 third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_test.cc + delete mode 100644 third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_test.py + +diff --git a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer.cc b/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer.cc +deleted file mode 100644 +index 8096a5008bd12..0000000000000 +--- a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer.cc ++++ /dev/null +@@ -1,227 +0,0 @@ +-/* Copyright 2020 The TensorFlow Authors. All Rights Reserved. +- +-Licensed under the Apache License, Version 2.0 (the "License"); +-you may not use this file except in compliance with the License. +-You may obtain a copy of the License at +- +- http://www.apache.org/licenses/LICENSE-2.0 +- +-Unless required by applicable law or agreed to in writing, software +-distributed under the License is distributed on an "AS IS" BASIS, +-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +-See the License for the specific language governing permissions and +-limitations under the License. +-==============================================================================*/ +- +-#include "tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer.h" +- +-#include +-#include +-#include +- +-#include "libutf/utf.h" +-#include "tensorflow/lite/context.h" +-#include "tensorflow/lite/kernels/kernel_util.h" +-#include "tensorflow/lite/string_util.h" +- +-constexpr int kInput = 0; +-constexpr int kOutputValues = 0; +-constexpr int kOutputRowSplitsStart = 1; +- +-namespace tflite { +-namespace ops { +-namespace custom { +-namespace whitespace_tokenizer { +- +-// This TFLite op implements a whitespace tokenizer, and can output the +-// tokens as either a padded tensor or a ragged tensor. +-// +-// If we're outputting a padded tensor, our outputs are: +-// * A string tensor +-// +-// If we're outputting a ragged tensor, our outputs are: +-// * A string tensor (the innermost values of the ragged tensor) +-// * N int64 tensors (the row_splits of the ragged tensor, where N is the +-// rank of the input tensor) +- +-inline bool OutputIsPaddedTensor(TfLiteNode* node) { +- return NumOutputs(node) == 1; +-} +- +-inline int charntorune(Rune* r, const char* s, int n) { +- const int bytes_read = chartorune(r, const_cast(s)); +- if (bytes_read > n) { +- *r = Runeerror; +- return 0; +- } +- return bytes_read; +-} +- +-std::vector> Tokenize(StringRef str) { +- const char* p = str.str; +- int n = str.len; +- +- std::vector> tokens; +- const char* start = nullptr; +- while (n > 0) { +- Rune r; +- int c = charntorune(&r, p, n); +- if (r == Runeerror) +- break; +- +- if (isspacerune(r)) { +- if (start != nullptr) { +- tokens.push_back({start, p - start}); +- } +- start = nullptr; +- } else { +- if (start == nullptr) { +- start = p; +- } +- } +- +- p += c; +- n -= c; +- } +- if (start != nullptr) { +- tokens.push_back({start, p - start}); +- } +- +- return tokens; +-} +- +-TfLiteStatus WritePaddedOutput( +- const std::vector>>& list_of_tokens, +- const TfLiteTensor* input, +- TfLiteTensor* output_values) { +- TfLiteIntArray* output_shape = TfLiteIntArrayCreate(NumDimensions(input) + 1); +- for (int i = 0; i < NumDimensions(input); ++i) { +- output_shape->data[i] = SizeOfDimension(input, i); +- } +- +- size_t max_tokens = 0; +- for (const auto& tokens : list_of_tokens) { +- max_tokens = std::max(max_tokens, tokens.size()); +- } +- +- output_shape->data[NumDimensions(input)] = max_tokens; +- DynamicBuffer buffer; +- for (const auto& tokens : list_of_tokens) { +- for (const auto& token : tokens) { +- buffer.AddString(token.first, token.second); +- } +- for (int i = tokens.size(); i < max_tokens; ++i) { +- buffer.AddString(nullptr, 0); +- } +- } +- buffer.WriteToTensor(output_values, output_shape); +- return kTfLiteOk; +-} +- +-TfLiteStatus WriteRaggedOutput( +- const std::vector>>& list_of_tokens, +- const TfLiteTensor* input, +- TfLiteTensor* output_values, +- std::vector nested_row_splits) { +- // The outer dimensions of the ragged tensor are all non-ragged. +- for (int i = 0; i < nested_row_splits.size() - 1; ++i) { +- int row_splits_step = SizeOfDimension(input, i + 1); +- TfLiteTensor* row_splits = nested_row_splits[i]; +- for (int j = 0; j < SizeOfDimension(row_splits, 0); ++j) { +- row_splits->data.i64[j] = j * row_splits_step; +- } +- } +- +- // Generate the innermost row_splits and values tensors. +- TfLiteTensor* row_splits = nested_row_splits.back(); +- TfLiteIntArray* output_shape = TfLiteIntArrayCreate(1); +- DynamicBuffer buffer; +- int token_index = 0; +- int row_splits_index = 0; +- for (const auto& tokens : list_of_tokens) { +- row_splits->data.i64[row_splits_index] = token_index; +- for (const auto& token : tokens) { +- buffer.AddString(token.first, token.second); +- ++token_index; +- } +- ++row_splits_index; +- } +- row_splits->data.i64[row_splits_index] = token_index; +- output_shape->data[0] = token_index; +- buffer.WriteToTensor(output_values, output_shape); +- return kTfLiteOk; +-} +- +-TfLiteStatus Prepare(TfLiteContext* context, TfLiteNode* node) { +- TfLiteTensor* output_values = GetOutput(context, node, kOutputValues); +- SetTensorToDynamic(output_values); +- +- if (OutputIsPaddedTensor(node)) { +- return kTfLiteOk; +- } +- +- const TfLiteTensor* input = GetInput(context, node, kInput); +- TF_LITE_ENSURE(context, NumDimensions(input) == +- (NumOutputs(node) - kOutputRowSplitsStart)); +- +- // Resize the row_splits tensors. We're just adding a ragged inner +- // dimension to the shape of the input tensor, so the size of the +- // row_splits tensors can be calculated using the input tensor's shape. +- int input_size = 1; +- for (int i = 0; i < NumDimensions(input); ++i) { +- input_size *= SizeOfDimension(input, i); +- +- TfLiteIntArray* row_splits_shape = TfLiteIntArrayCreate(1); +- row_splits_shape->data[0] = input_size + 1; +- TfLiteTensor* row_splits = +- GetOutput(context, node, kOutputRowSplitsStart + i); +- TF_LITE_ENSURE_STATUS( +- context->ResizeTensor(context, row_splits, row_splits_shape)); +- } +- +- return kTfLiteOk; +-} +- +-TfLiteStatus Eval(TfLiteContext* context, TfLiteNode* node) { +- const TfLiteTensor* input = GetInput(context, node, kInput); +- int input_size = 1; +- for (int i = 0; i < NumDimensions(input); ++i) { +- input_size *= SizeOfDimension(input, i); +- } +- +- std::vector>> list_of_tokens; +- list_of_tokens.reserve(input_size); +- for (int i = 0; i < input_size; ++i) { +- list_of_tokens.emplace_back(Tokenize(GetString(input, i))); +- } +- +- TfLiteTensor* output_values = GetOutput(context, node, kOutputValues); +- TF_LITE_ENSURE(context, IsDynamicTensor(output_values)); +- +- if (OutputIsPaddedTensor(node)) { +- return WritePaddedOutput(list_of_tokens, input, output_values); +- } +- +- std::vector nested_row_splits; +- nested_row_splits.reserve(NumDimensions(input)); +- for (int i = 0; i < NumDimensions(input); ++i) { +- TfLiteTensor* output_row_splits = +- GetOutput(context, node, kOutputRowSplitsStart + i); +- nested_row_splits.push_back(output_row_splits); +- } +- return WriteRaggedOutput(list_of_tokens, input, output_values, +- nested_row_splits); +-} +- +-} // namespace whitespace_tokenizer +- +-TfLiteRegistration* Register_tftext_WhitespaceTokenizer() { +- static TfLiteRegistration r = {nullptr, nullptr, +- whitespace_tokenizer::Prepare, +- whitespace_tokenizer::Eval}; +- return &r; +-} +- +-} // namespace custom +-} // namespace ops +-} // namespace tflite +diff --git a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer.h b/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer.h +deleted file mode 100644 +index b190248087d20..0000000000000 +--- a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer.h ++++ /dev/null +@@ -1,31 +0,0 @@ +-/* Copyright 2020 The TensorFlow Authors. All Rights Reserved. +- +-Licensed under the Apache License, Version 2.0 (the "License"); +-you may not use this file except in compliance with the License. +-You may obtain a copy of the License at +- +- http://www.apache.org/licenses/LICENSE-2.0 +- +-Unless required by applicable law or agreed to in writing, software +-distributed under the License is distributed on an "AS IS" BASIS, +-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +-See the License for the specific language governing permissions and +-limitations under the License. +-==============================================================================*/ +- +-#ifndef TENSORFLOW_LITE_SUPPORT_CUSTOM_OPS_KERNEL_WHITESPACE_TOKENIZER_H_ +-#define TENSORFLOW_LITE_SUPPORT_CUSTOM_OPS_KERNEL_WHITESPACE_TOKENIZER_H_ +- +-#include "tensorflow/lite/context.h" +- +-namespace tflite { +-namespace ops { +-namespace custom { +- +-TfLiteRegistration* Register_tftext_WhitespaceTokenizer(); +- +-} // namespace custom +-} // namespace ops +-} // namespace tflite +- +-#endif // TENSORFLOW_LITE_SUPPORT_CUSTOM_OPS_KERNEL_WHITESPACE_TOKENIZER_H_ +diff --git a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_op_resolver.cc b/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_op_resolver.cc +deleted file mode 100644 +index 6166bc149bc00..0000000000000 +--- a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_op_resolver.cc ++++ /dev/null +@@ -1,32 +0,0 @@ +-/* Copyright 2020 The TensorFlow Authors. All Rights Reserved. +- +-Licensed under the Apache License, Version 2.0 (the "License"); +-you may not use this file except in compliance with the License. +-You may obtain a copy of the License at +- +- http://www.apache.org/licenses/LICENSE-2.0 +- +-Unless required by applicable law or agreed to in writing, software +-distributed under the License is distributed on an "AS IS" BASIS, +-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +-See the License for the specific language governing permissions and +-limitations under the License. +-==============================================================================*/ +- +-#include "tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_op_resolver.h" +- +-#include "tensorflow/lite/mutable_op_resolver.h" +-#include "tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer.h" +- +-namespace tflite { +-namespace ops { +-namespace custom { +- +-void AddWhitespaceTokenizerCustomOp(MutableOpResolver* resolver) { +- resolver->AddCustom("tftext:WhitespaceTokenizer", +- Register_tftext_WhitespaceTokenizer()); +-} +- +-} // namespace custom +-} // namespace ops +-} // namespace tflite +diff --git a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_op_resolver.h b/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_op_resolver.h +deleted file mode 100644 +index 4f57d8d8010cb..0000000000000 +--- a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_op_resolver.h ++++ /dev/null +@@ -1,34 +0,0 @@ +-/* Copyright 2020 The TensorFlow Authors. All Rights Reserved. +- +-Licensed under the Apache License, Version 2.0 (the "License"); +-you may not use this file except in compliance with the License. +-You may obtain a copy of the License at +- +- http://www.apache.org/licenses/LICENSE-2.0 +- +-Unless required by applicable law or agreed to in writing, software +-distributed under the License is distributed on an "AS IS" BASIS, +-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +-See the License for the specific language governing permissions and +-limitations under the License. +-==============================================================================*/ +- +-#ifndef TENSORFLOW_LITE_SUPPORT_CUSTOM_OPS_KERNEL_WHITESPACE_TOKENIZER_OP_RESOLVER_H_ +-#define TENSORFLOW_LITE_SUPPORT_CUSTOM_OPS_KERNEL_WHITESPACE_TOKENIZER_OP_RESOLVER_H_ +- +-#include "tensorflow/lite/mutable_op_resolver.h" +- +-namespace tflite { +-namespace ops { +-namespace custom { +- +-// Adds the WhitespaceTokenizer custom op to an op resolver. +-// This function can be loaded using dlopen. Since C++ function names get +-// mangled, declare this function as extern C, so its name is unchanged. +-extern "C" void AddWhitespaceTokenizerCustomOp(MutableOpResolver* resolver); +- +-} // namespace custom +-} // namespace ops +-} // namespace tflite +- +-#endif // LETENSORFLOW_LITE_SUPPORT_CUSTOM_OPS_KERNEL_WHITESPACE_TOKENIZER_OP_RESOLVER_H_ +diff --git a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_op_resolver_wrapper.cc b/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_op_resolver_wrapper.cc +deleted file mode 100644 +index 03d3ba899395a..0000000000000 +--- a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_op_resolver_wrapper.cc ++++ /dev/null +@@ -1,29 +0,0 @@ +-/* Copyright 2020 The TensorFlow Authors. All Rights Reserved. +- +-Licensed under the Apache License, Version 2.0 (the "License"); +-you may not use this file except in compliance with the License. +-You may obtain a copy of the License at +- +- http://www.apache.org/licenses/LICENSE-2.0 +- +-Unless required by applicable law or agreed to in writing, software +-distributed under the License is distributed on an "AS IS" BASIS, +-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +-See the License for the specific language governing permissions and +-limitations under the License. +-==============================================================================*/ +- +-#include "pybind11/pybind11.h" +-#include "tensorflow/lite/mutable_op_resolver.h" +-#include "tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_op_resolver.h" +- +-PYBIND11_MODULE(_pywrap_whitespace_tokenizer_op_resolver, m) { +- m.doc() = "_pywrap_whitespace_tokenizer_op_resolver"; +- m.def( +- "AddWhitespaceTokenizerCustomOp", +- [](uintptr_t resolver) { +- tflite::ops::custom::AddWhitespaceTokenizerCustomOp( +- reinterpret_cast(resolver)); +- }, +- "Op registerer function for the tftext:WhitespaceTokenizer custom op."); +-} +diff --git a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_test.cc b/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_test.cc +deleted file mode 100644 +index 4654e46c4a270..0000000000000 +--- a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_test.cc ++++ /dev/null +@@ -1,189 +0,0 @@ +-/* Copyright 2020 The TensorFlow Authors. All Rights Reserved. +- +-Licensed under the Apache License, Version 2.0 (the "License"); +-you may not use this file except in compliance with the License. +-You may obtain a copy of the License at +- +- http://www.apache.org/licenses/LICENSE-2.0 +- +-Unless required by applicable law or agreed to in writing, software +-distributed under the License is distributed on an "AS IS" BASIS, +-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +-See the License for the specific language governing permissions and +-limitations under the License. +-==============================================================================*/ +- +-#include "tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer.h" +- +-#include +-#include +- +-#include +-#include +-#include "tensorflow/lite/kernels/test_util.h" +-#include "tensorflow/lite/schema/schema_generated.h" +-#include "tensorflow/lite/string_util.h" +- +-namespace tflite { +-namespace ops { +-namespace custom { +-namespace whitespace_tokenizer { +-namespace test { +-namespace { +- +-using ::testing::ElementsAre; +-using ::testing::ElementsAreArray; +- +-} // namespace +- +-enum OutputType { PADDED, RAGGED }; +- +-class WhitespaceTokenizerModel : public SingleOpModel { +- public: +- WhitespaceTokenizerModel(OutputType output_type, +- const std::vector& input_values, +- const std::vector& input_shape) +- : input_shape_(input_shape) { +- input_ = AddInput(TensorType_STRING); +- output_values_ = AddOutput(TensorType_STRING); +- if (output_type == RAGGED) { +- for (int i = 0; i < input_shape_.size(); ++i) { +- output_row_splits_.push_back(AddOutput(TensorType_INT64)); +- } +- } +- SetCustomOp("WhitespaceTokenizer", {}, Register_tftext_WhitespaceTokenizer); +- +- BuildInterpreter({input_shape}); +- PopulateStringTensor(input_, input_values); +- Invoke(); +- } +- +- std::vector GetValuesTensorShape() { +- return GetTensorShape(output_values_); +- } +- +- std::vector ExtractValuesTensorVector() { +- std::vector r; +- TfLiteTensor* tensor = interpreter_->tensor(output_values_); +- int n = GetStringCount(tensor); +- for (int i = 0; i < n; ++i) { +- StringRef ref = GetString(tensor, i); +- r.emplace_back(ref.str, ref.len); +- } +- return r; +- } +- +- void CheckRowSplits(const std::vector& token_counts) { +- int size = 1; +- for (int i = 0; i < input_shape_.size(); ++i) { +- size *= input_shape_[i]; +- EXPECT_THAT(GetTensorShape(output_row_splits_[i]), ElementsAre(size + 1)) +- << "row_splits " << i << " has the wrong shape"; +- +- std::vector expected_values(size + 1); +- if (i == input_shape_.size() - 1) { +- ASSERT_EQ(token_counts.size(), size); +- +- int index = 0; +- expected_values[0] = index; +- for (int j = 0; j < size; ++j) { +- index += token_counts[j]; +- expected_values[j + 1] = index; +- } +- } else { +- for (int j = 0; j <= size; ++j) { +- expected_values[j] = j * input_shape_[i + 1]; +- } +- } +- EXPECT_THAT(ExtractVector(output_row_splits_[i]), +- ElementsAreArray(expected_values)) +- << "row_splits " << i << " has an incorrect value/index"; +- } +- } +- +- private: +- int input_; +- std::vector input_shape_; +- int output_values_; +- std::vector output_row_splits_; +-}; // namespace test +- +-TEST(WhitespaceTokenizerTest, SingleStringPaddedOutput) { +- WhitespaceTokenizerModel m(PADDED, {"this is a test"}, {1}); +- EXPECT_THAT(m.GetValuesTensorShape(), ElementsAre(1, 4)); +- EXPECT_THAT(m.ExtractValuesTensorVector(), +- ElementsAre("this", "is", "a", "test")); +-} +- +-TEST(WhitespaceTokenizerTest, SingleStringRaggedOutput) { +- WhitespaceTokenizerModel m(RAGGED, {"this is a test"}, {1}); +- m.CheckRowSplits({4}); +- EXPECT_THAT(m.ExtractValuesTensorVector(), +- ElementsAre("this", "is", "a", "test")); +-} +- +-TEST(WhitespaceTokenizerTest, VectorPaddedOutput) { +- WhitespaceTokenizerModel m(PADDED, +- {"this is a test", // +- "three token sentence", // +- "many more tokens than that sentence"}, +- {3}); +- EXPECT_THAT(m.GetValuesTensorShape(), ElementsAre(3, 6)); +- EXPECT_THAT( +- m.ExtractValuesTensorVector(), +- ElementsAre("this", "is", "a", "test", "", "", // +- "three", "token", "sentence", "", "", "", // +- "many", "more", "tokens", "than", "that", "sentence")); +-} +- +-TEST(WhitespaceTokenizerTest, VectorRaggedOutput) { +- WhitespaceTokenizerModel m(RAGGED, +- {"this is a test", // +- "three token sentence", // +- "many more tokens than that sentence"}, +- {3}); +- m.CheckRowSplits({4, 3, 6}); +- EXPECT_THAT( +- m.ExtractValuesTensorVector(), +- ElementsAre("this", "is", "a", "test", // +- "three", "token", "sentence", // +- "many", "more", "tokens", "than", "that", "sentence")); +-} +- +-TEST(WhitespaceTokenizerTest, MatrixPaddedOutput) { +- WhitespaceTokenizerModel m(PADDED, +- {"a b c", "d e f", // +- "g h", "i j k l", // +- "m", "n o p q r"}, +- {3, 2}); +- EXPECT_THAT(m.GetValuesTensorShape(), ElementsAre(3, 2, 5)); +- EXPECT_THAT(m.ExtractValuesTensorVector(), +- ElementsAre("a", "b", "c", "", "", // +- "d", "e", "f", "", "", // +- "g", "h", "", "", "", // +- "i", "j", "k", "l", "", // +- "m", "", "", "", "", // +- "n", "o", "p", "q", "r")); +-} +- +-TEST(WhitespaceTokenizerTest, MatrixRAGGEDOutput) { +- WhitespaceTokenizerModel m(RAGGED, +- {"a b c", "d e f", // +- "g h", "i j k l", // +- "m", "n o p q r"}, +- {3, 2}); +- m.CheckRowSplits({3, 3, 2, 4, 1, 5}); +- EXPECT_THAT(m.ExtractValuesTensorVector(), +- ElementsAre("a", "b", "c", // +- "d", "e", "f", // +- "g", "h", // +- "i", "j", "k", "l", // +- "m", // +- "n", "o", "p", "q", "r")); +-} +- +-} // namespace test +-} // namespace whitespace_tokenizer +-} // namespace custom +-} // namespace ops +-} // namespace tflite +diff --git a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_test.py b/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_test.py +deleted file mode 100644 +index 70de237a22dad..0000000000000 +--- a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_test.py ++++ /dev/null +@@ -1,167 +0,0 @@ +-# Copyright 2020 The TensorFlow Authors. All Rights Reserved. +-# +-# Licensed under the Apache License, Version 2.0 (the "License"); +-# you may not use this file except in compliance with the License. +-# You may obtain a copy of the License at +-# +-# http://www.apache.org/licenses/LICENSE-2.0 +-# +-# Unless required by applicable law or agreed to in writing, software +-# distributed under the License is distributed on an "AS IS" BASIS, +-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +-# See the License for the specific language governing permissions and +-# limitations under the License. +-# ============================================================================== +-"""Tests for tensorflow_lite_support.custom_ops.kernel.whitespace_tokenizer.""" +- +-import os +-import sys +-import timeit +- +-from absl import logging +-from absl.testing import parameterized +-import numpy as np +-import tensorflow as tf +-import tensorflow_text as tf_text +-# pylint: disable=g-direct-tensorflow-import +-from tensorflow.lite.python import interpreter as interpreter_wrapper +-from tensorflow.python.platform import resource_loader +- +-# Force loaded shared object symbols to be globally visible. This is needed so +-# that the interpreter_wrapper, in one .so file, can see the op resolver +-# in a different .so file. Note that this may already be set by default. +-# pylint: disable=g-import-not-at-top,g-bad-import-order,unused-import +-if hasattr(sys, 'setdlopenflags') and hasattr(sys, 'getdlopenflags'): +- sys.setdlopenflags(sys.getdlopenflags() | os.RTLD_GLOBAL) +-from tensorflow_lite_support.custom_ops.kernel import _pywrap_whitespace_tokenizer_op_resolver +- +-TEST_CASES = [ +- ['this is a test'], +- ['extra spaces in here'], +- ['a four token sentence', 'a five token sentence thing.'], +- [['a multi dimensional test case', 'a b c d', 'e f g'], +- ['h i j', 'k l m 2 3', 'n o p'], ['q r s 0 1', 't u v', 'w x y z']], +-] +- +-INVOKES_FOR_SINGLE_OP_BENCHMARK = 1000 +-INVOKES_FOR_FLEX_DELEGATE_BENCHMARK = 10 +- +- +-@tf.function +-def _call_whitespace_tokenizer_to_tensor(test_case): +- tokenizer = tf_text.WhitespaceTokenizer() +- return tokenizer.tokenize(test_case).to_tensor() +- +- +-@tf.function +-def _call_whitespace_tokenizer_to_ragged(test_case): +- tokenizer = tf_text.WhitespaceTokenizer() +- return tokenizer.tokenize(test_case) +- +- +-class WhitespaceTokenizerTest(parameterized.TestCase): +- +- @parameterized.parameters([t] for t in TEST_CASES) +- def testToTensorEquivalence(self, test_case): +- tf_output = _call_whitespace_tokenizer_to_tensor(test_case) +- +- model_filename = resource_loader.get_path_to_datafile( +- 'testdata/whitespace_tokenizer_to_tensor.tflite') +- with open(model_filename, 'rb') as file: +- model = file.read() +- interpreter = interpreter_wrapper.InterpreterWithCustomOps( +- model_content=model, +- custom_op_registerers=['AddWhitespaceTokenizerCustomOp']) +- +- np_test_case = np.array(test_case, dtype=np.str) +- interpreter.resize_tensor_input(0, np_test_case.shape) +- interpreter.allocate_tensors() +- interpreter.set_tensor(interpreter.get_input_details()[0]['index'], +- np_test_case) +- interpreter.invoke() +- tflite_output = interpreter.get_tensor( +- interpreter.get_output_details()[0]['index']) +- +- self.assertEqual(tf_output.numpy().tolist(), tflite_output.tolist()) +- +- @parameterized.parameters([t] for t in TEST_CASES) +- def testToRaggedEquivalence(self, test_case): +- tf_output = _call_whitespace_tokenizer_to_ragged(test_case) +- +- np_test_case = np.array(test_case, dtype=np.str) +- rank = len(np_test_case.shape) +- +- model_filename = resource_loader.get_path_to_datafile( +- 'testdata/whitespace_tokenizer_to_ragged_{}d_input.tflite'.format(rank)) +- with open(model_filename, 'rb') as file: +- model = file.read() +- interpreter = interpreter_wrapper.InterpreterWithCustomOps( +- model_content=model, +- custom_op_registerers=['AddWhitespaceTokenizerCustomOp']) +- interpreter.resize_tensor_input(0, np_test_case.shape) +- interpreter.allocate_tensors() +- interpreter.set_tensor(interpreter.get_input_details()[0]['index'], +- np_test_case) +- interpreter.invoke() +- +- # Traverse the nested row_splits/values of the ragged tensor. +- for i in range(rank): +- tflite_output_cur_row_splits = interpreter.get_tensor( +- interpreter.get_output_details()[1 + i]['index']) +- self.assertEqual(tf_output.row_splits.numpy().tolist(), +- tflite_output_cur_row_splits.tolist()) +- tf_output = tf_output.values +- +- tflite_output_values = interpreter.get_tensor( +- interpreter.get_output_details()[0]['index']) +- self.assertEqual(tf_output.numpy().tolist(), tflite_output_values.tolist()) +- +- def testSingleOpLatency(self): +- model_filename = resource_loader.get_path_to_datafile( +- 'testdata/whitespace_tokenizer_to_tensor.tflite') +- with open(model_filename, 'rb') as file: +- model = file.read() +- interpreter = interpreter_wrapper.InterpreterWithCustomOps( +- model_content=model, +- custom_op_registerers=['AddWhitespaceTokenizerCustomOp']) +- +- latency = 0.0 +- for test_case in TEST_CASES: +- np_test_case = np.array(test_case, dtype=np.str) +- interpreter.resize_tensor_input(0, np_test_case.shape) +- interpreter.allocate_tensors() +- interpreter.set_tensor(interpreter.get_input_details()[0]['index'], +- np_test_case) +- start_time = timeit.default_timer() +- for _ in range(INVOKES_FOR_SINGLE_OP_BENCHMARK): +- interpreter.invoke() +- latency = latency + timeit.default_timer() - start_time +- +- latency = latency / (INVOKES_FOR_SINGLE_OP_BENCHMARK * len(TEST_CASES)) +- logging.info('Latency: %fms', latency * 1000.0) +- +- def testFlexDelegateLatency(self): +- model_filename = resource_loader.get_path_to_datafile( +- 'testdata/whitespace_tokenizer_flex_delegate.tflite') +- with open(model_filename, 'rb') as file: +- model = file.read() +- interpreter = interpreter_wrapper.Interpreter(model_content=model) +- +- latency = 0.0 +- for test_case in TEST_CASES: +- np_test_case = np.array(test_case, dtype=np.str) +- interpreter.resize_tensor_input(0, np_test_case.shape) +- interpreter.allocate_tensors() +- interpreter.set_tensor(interpreter.get_input_details()[0]['index'], +- np_test_case) +- start_time = timeit.default_timer() +- for _ in range(INVOKES_FOR_FLEX_DELEGATE_BENCHMARK): +- interpreter.invoke() +- latency = latency + timeit.default_timer() - start_time +- +- latency = latency / (INVOKES_FOR_FLEX_DELEGATE_BENCHMARK * len(TEST_CASES)) +- logging.info('Latency: %fms', latency * 1000.0) +- +- +-if __name__ == '__main__': +- tf.test.main() +-- +2.38.0.413.g74048e4d9e-goog + diff --git a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer.cc b/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer.cc deleted file mode 100644 index 8096a5008bd12..0000000000000 --- a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer.cc +++ /dev/null @@ -1,227 +0,0 @@ -/* Copyright 2020 The TensorFlow Authors. All Rights Reserved. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -==============================================================================*/ - -#include "tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer.h" - -#include -#include -#include - -#include "libutf/utf.h" -#include "tensorflow/lite/context.h" -#include "tensorflow/lite/kernels/kernel_util.h" -#include "tensorflow/lite/string_util.h" - -constexpr int kInput = 0; -constexpr int kOutputValues = 0; -constexpr int kOutputRowSplitsStart = 1; - -namespace tflite { -namespace ops { -namespace custom { -namespace whitespace_tokenizer { - -// This TFLite op implements a whitespace tokenizer, and can output the -// tokens as either a padded tensor or a ragged tensor. -// -// If we're outputting a padded tensor, our outputs are: -// * A string tensor -// -// If we're outputting a ragged tensor, our outputs are: -// * A string tensor (the innermost values of the ragged tensor) -// * N int64 tensors (the row_splits of the ragged tensor, where N is the -// rank of the input tensor) - -inline bool OutputIsPaddedTensor(TfLiteNode* node) { - return NumOutputs(node) == 1; -} - -inline int charntorune(Rune* r, const char* s, int n) { - const int bytes_read = chartorune(r, const_cast(s)); - if (bytes_read > n) { - *r = Runeerror; - return 0; - } - return bytes_read; -} - -std::vector> Tokenize(StringRef str) { - const char* p = str.str; - int n = str.len; - - std::vector> tokens; - const char* start = nullptr; - while (n > 0) { - Rune r; - int c = charntorune(&r, p, n); - if (r == Runeerror) - break; - - if (isspacerune(r)) { - if (start != nullptr) { - tokens.push_back({start, p - start}); - } - start = nullptr; - } else { - if (start == nullptr) { - start = p; - } - } - - p += c; - n -= c; - } - if (start != nullptr) { - tokens.push_back({start, p - start}); - } - - return tokens; -} - -TfLiteStatus WritePaddedOutput( - const std::vector>>& list_of_tokens, - const TfLiteTensor* input, - TfLiteTensor* output_values) { - TfLiteIntArray* output_shape = TfLiteIntArrayCreate(NumDimensions(input) + 1); - for (int i = 0; i < NumDimensions(input); ++i) { - output_shape->data[i] = SizeOfDimension(input, i); - } - - size_t max_tokens = 0; - for (const auto& tokens : list_of_tokens) { - max_tokens = std::max(max_tokens, tokens.size()); - } - - output_shape->data[NumDimensions(input)] = max_tokens; - DynamicBuffer buffer; - for (const auto& tokens : list_of_tokens) { - for (const auto& token : tokens) { - buffer.AddString(token.first, token.second); - } - for (int i = tokens.size(); i < max_tokens; ++i) { - buffer.AddString(nullptr, 0); - } - } - buffer.WriteToTensor(output_values, output_shape); - return kTfLiteOk; -} - -TfLiteStatus WriteRaggedOutput( - const std::vector>>& list_of_tokens, - const TfLiteTensor* input, - TfLiteTensor* output_values, - std::vector nested_row_splits) { - // The outer dimensions of the ragged tensor are all non-ragged. - for (int i = 0; i < nested_row_splits.size() - 1; ++i) { - int row_splits_step = SizeOfDimension(input, i + 1); - TfLiteTensor* row_splits = nested_row_splits[i]; - for (int j = 0; j < SizeOfDimension(row_splits, 0); ++j) { - row_splits->data.i64[j] = j * row_splits_step; - } - } - - // Generate the innermost row_splits and values tensors. - TfLiteTensor* row_splits = nested_row_splits.back(); - TfLiteIntArray* output_shape = TfLiteIntArrayCreate(1); - DynamicBuffer buffer; - int token_index = 0; - int row_splits_index = 0; - for (const auto& tokens : list_of_tokens) { - row_splits->data.i64[row_splits_index] = token_index; - for (const auto& token : tokens) { - buffer.AddString(token.first, token.second); - ++token_index; - } - ++row_splits_index; - } - row_splits->data.i64[row_splits_index] = token_index; - output_shape->data[0] = token_index; - buffer.WriteToTensor(output_values, output_shape); - return kTfLiteOk; -} - -TfLiteStatus Prepare(TfLiteContext* context, TfLiteNode* node) { - TfLiteTensor* output_values = GetOutput(context, node, kOutputValues); - SetTensorToDynamic(output_values); - - if (OutputIsPaddedTensor(node)) { - return kTfLiteOk; - } - - const TfLiteTensor* input = GetInput(context, node, kInput); - TF_LITE_ENSURE(context, NumDimensions(input) == - (NumOutputs(node) - kOutputRowSplitsStart)); - - // Resize the row_splits tensors. We're just adding a ragged inner - // dimension to the shape of the input tensor, so the size of the - // row_splits tensors can be calculated using the input tensor's shape. - int input_size = 1; - for (int i = 0; i < NumDimensions(input); ++i) { - input_size *= SizeOfDimension(input, i); - - TfLiteIntArray* row_splits_shape = TfLiteIntArrayCreate(1); - row_splits_shape->data[0] = input_size + 1; - TfLiteTensor* row_splits = - GetOutput(context, node, kOutputRowSplitsStart + i); - TF_LITE_ENSURE_STATUS( - context->ResizeTensor(context, row_splits, row_splits_shape)); - } - - return kTfLiteOk; -} - -TfLiteStatus Eval(TfLiteContext* context, TfLiteNode* node) { - const TfLiteTensor* input = GetInput(context, node, kInput); - int input_size = 1; - for (int i = 0; i < NumDimensions(input); ++i) { - input_size *= SizeOfDimension(input, i); - } - - std::vector>> list_of_tokens; - list_of_tokens.reserve(input_size); - for (int i = 0; i < input_size; ++i) { - list_of_tokens.emplace_back(Tokenize(GetString(input, i))); - } - - TfLiteTensor* output_values = GetOutput(context, node, kOutputValues); - TF_LITE_ENSURE(context, IsDynamicTensor(output_values)); - - if (OutputIsPaddedTensor(node)) { - return WritePaddedOutput(list_of_tokens, input, output_values); - } - - std::vector nested_row_splits; - nested_row_splits.reserve(NumDimensions(input)); - for (int i = 0; i < NumDimensions(input); ++i) { - TfLiteTensor* output_row_splits = - GetOutput(context, node, kOutputRowSplitsStart + i); - nested_row_splits.push_back(output_row_splits); - } - return WriteRaggedOutput(list_of_tokens, input, output_values, - nested_row_splits); -} - -} // namespace whitespace_tokenizer - -TfLiteRegistration* Register_tftext_WhitespaceTokenizer() { - static TfLiteRegistration r = {nullptr, nullptr, - whitespace_tokenizer::Prepare, - whitespace_tokenizer::Eval}; - return &r; -} - -} // namespace custom -} // namespace ops -} // namespace tflite diff --git a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer.h b/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer.h deleted file mode 100644 index b190248087d20..0000000000000 --- a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer.h +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2020 The TensorFlow Authors. All Rights Reserved. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -==============================================================================*/ - -#ifndef TENSORFLOW_LITE_SUPPORT_CUSTOM_OPS_KERNEL_WHITESPACE_TOKENIZER_H_ -#define TENSORFLOW_LITE_SUPPORT_CUSTOM_OPS_KERNEL_WHITESPACE_TOKENIZER_H_ - -#include "tensorflow/lite/context.h" - -namespace tflite { -namespace ops { -namespace custom { - -TfLiteRegistration* Register_tftext_WhitespaceTokenizer(); - -} // namespace custom -} // namespace ops -} // namespace tflite - -#endif // TENSORFLOW_LITE_SUPPORT_CUSTOM_OPS_KERNEL_WHITESPACE_TOKENIZER_H_ diff --git a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_op_resolver.cc b/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_op_resolver.cc deleted file mode 100644 index 6166bc149bc00..0000000000000 --- a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_op_resolver.cc +++ /dev/null @@ -1,32 +0,0 @@ -/* Copyright 2020 The TensorFlow Authors. All Rights Reserved. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -==============================================================================*/ - -#include "tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_op_resolver.h" - -#include "tensorflow/lite/mutable_op_resolver.h" -#include "tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer.h" - -namespace tflite { -namespace ops { -namespace custom { - -void AddWhitespaceTokenizerCustomOp(MutableOpResolver* resolver) { - resolver->AddCustom("tftext:WhitespaceTokenizer", - Register_tftext_WhitespaceTokenizer()); -} - -} // namespace custom -} // namespace ops -} // namespace tflite diff --git a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_op_resolver.h b/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_op_resolver.h deleted file mode 100644 index 4f57d8d8010cb..0000000000000 --- a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_op_resolver.h +++ /dev/null @@ -1,34 +0,0 @@ -/* Copyright 2020 The TensorFlow Authors. All Rights Reserved. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -==============================================================================*/ - -#ifndef TENSORFLOW_LITE_SUPPORT_CUSTOM_OPS_KERNEL_WHITESPACE_TOKENIZER_OP_RESOLVER_H_ -#define TENSORFLOW_LITE_SUPPORT_CUSTOM_OPS_KERNEL_WHITESPACE_TOKENIZER_OP_RESOLVER_H_ - -#include "tensorflow/lite/mutable_op_resolver.h" - -namespace tflite { -namespace ops { -namespace custom { - -// Adds the WhitespaceTokenizer custom op to an op resolver. -// This function can be loaded using dlopen. Since C++ function names get -// mangled, declare this function as extern C, so its name is unchanged. -extern "C" void AddWhitespaceTokenizerCustomOp(MutableOpResolver* resolver); - -} // namespace custom -} // namespace ops -} // namespace tflite - -#endif // LETENSORFLOW_LITE_SUPPORT_CUSTOM_OPS_KERNEL_WHITESPACE_TOKENIZER_OP_RESOLVER_H_ diff --git a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_op_resolver_wrapper.cc b/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_op_resolver_wrapper.cc deleted file mode 100644 index 03d3ba899395a..0000000000000 --- a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_op_resolver_wrapper.cc +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright 2020 The TensorFlow Authors. All Rights Reserved. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -==============================================================================*/ - -#include "pybind11/pybind11.h" -#include "tensorflow/lite/mutable_op_resolver.h" -#include "tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_op_resolver.h" - -PYBIND11_MODULE(_pywrap_whitespace_tokenizer_op_resolver, m) { - m.doc() = "_pywrap_whitespace_tokenizer_op_resolver"; - m.def( - "AddWhitespaceTokenizerCustomOp", - [](uintptr_t resolver) { - tflite::ops::custom::AddWhitespaceTokenizerCustomOp( - reinterpret_cast(resolver)); - }, - "Op registerer function for the tftext:WhitespaceTokenizer custom op."); -} diff --git a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_test.cc b/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_test.cc deleted file mode 100644 index 4654e46c4a270..0000000000000 --- a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_test.cc +++ /dev/null @@ -1,189 +0,0 @@ -/* Copyright 2020 The TensorFlow Authors. All Rights Reserved. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -==============================================================================*/ - -#include "tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer.h" - -#include -#include - -#include -#include -#include "tensorflow/lite/kernels/test_util.h" -#include "tensorflow/lite/schema/schema_generated.h" -#include "tensorflow/lite/string_util.h" - -namespace tflite { -namespace ops { -namespace custom { -namespace whitespace_tokenizer { -namespace test { -namespace { - -using ::testing::ElementsAre; -using ::testing::ElementsAreArray; - -} // namespace - -enum OutputType { PADDED, RAGGED }; - -class WhitespaceTokenizerModel : public SingleOpModel { - public: - WhitespaceTokenizerModel(OutputType output_type, - const std::vector& input_values, - const std::vector& input_shape) - : input_shape_(input_shape) { - input_ = AddInput(TensorType_STRING); - output_values_ = AddOutput(TensorType_STRING); - if (output_type == RAGGED) { - for (int i = 0; i < input_shape_.size(); ++i) { - output_row_splits_.push_back(AddOutput(TensorType_INT64)); - } - } - SetCustomOp("WhitespaceTokenizer", {}, Register_tftext_WhitespaceTokenizer); - - BuildInterpreter({input_shape}); - PopulateStringTensor(input_, input_values); - Invoke(); - } - - std::vector GetValuesTensorShape() { - return GetTensorShape(output_values_); - } - - std::vector ExtractValuesTensorVector() { - std::vector r; - TfLiteTensor* tensor = interpreter_->tensor(output_values_); - int n = GetStringCount(tensor); - for (int i = 0; i < n; ++i) { - StringRef ref = GetString(tensor, i); - r.emplace_back(ref.str, ref.len); - } - return r; - } - - void CheckRowSplits(const std::vector& token_counts) { - int size = 1; - for (int i = 0; i < input_shape_.size(); ++i) { - size *= input_shape_[i]; - EXPECT_THAT(GetTensorShape(output_row_splits_[i]), ElementsAre(size + 1)) - << "row_splits " << i << " has the wrong shape"; - - std::vector expected_values(size + 1); - if (i == input_shape_.size() - 1) { - ASSERT_EQ(token_counts.size(), size); - - int index = 0; - expected_values[0] = index; - for (int j = 0; j < size; ++j) { - index += token_counts[j]; - expected_values[j + 1] = index; - } - } else { - for (int j = 0; j <= size; ++j) { - expected_values[j] = j * input_shape_[i + 1]; - } - } - EXPECT_THAT(ExtractVector(output_row_splits_[i]), - ElementsAreArray(expected_values)) - << "row_splits " << i << " has an incorrect value/index"; - } - } - - private: - int input_; - std::vector input_shape_; - int output_values_; - std::vector output_row_splits_; -}; // namespace test - -TEST(WhitespaceTokenizerTest, SingleStringPaddedOutput) { - WhitespaceTokenizerModel m(PADDED, {"this is a test"}, {1}); - EXPECT_THAT(m.GetValuesTensorShape(), ElementsAre(1, 4)); - EXPECT_THAT(m.ExtractValuesTensorVector(), - ElementsAre("this", "is", "a", "test")); -} - -TEST(WhitespaceTokenizerTest, SingleStringRaggedOutput) { - WhitespaceTokenizerModel m(RAGGED, {"this is a test"}, {1}); - m.CheckRowSplits({4}); - EXPECT_THAT(m.ExtractValuesTensorVector(), - ElementsAre("this", "is", "a", "test")); -} - -TEST(WhitespaceTokenizerTest, VectorPaddedOutput) { - WhitespaceTokenizerModel m(PADDED, - {"this is a test", // - "three token sentence", // - "many more tokens than that sentence"}, - {3}); - EXPECT_THAT(m.GetValuesTensorShape(), ElementsAre(3, 6)); - EXPECT_THAT( - m.ExtractValuesTensorVector(), - ElementsAre("this", "is", "a", "test", "", "", // - "three", "token", "sentence", "", "", "", // - "many", "more", "tokens", "than", "that", "sentence")); -} - -TEST(WhitespaceTokenizerTest, VectorRaggedOutput) { - WhitespaceTokenizerModel m(RAGGED, - {"this is a test", // - "three token sentence", // - "many more tokens than that sentence"}, - {3}); - m.CheckRowSplits({4, 3, 6}); - EXPECT_THAT( - m.ExtractValuesTensorVector(), - ElementsAre("this", "is", "a", "test", // - "three", "token", "sentence", // - "many", "more", "tokens", "than", "that", "sentence")); -} - -TEST(WhitespaceTokenizerTest, MatrixPaddedOutput) { - WhitespaceTokenizerModel m(PADDED, - {"a b c", "d e f", // - "g h", "i j k l", // - "m", "n o p q r"}, - {3, 2}); - EXPECT_THAT(m.GetValuesTensorShape(), ElementsAre(3, 2, 5)); - EXPECT_THAT(m.ExtractValuesTensorVector(), - ElementsAre("a", "b", "c", "", "", // - "d", "e", "f", "", "", // - "g", "h", "", "", "", // - "i", "j", "k", "l", "", // - "m", "", "", "", "", // - "n", "o", "p", "q", "r")); -} - -TEST(WhitespaceTokenizerTest, MatrixRAGGEDOutput) { - WhitespaceTokenizerModel m(RAGGED, - {"a b c", "d e f", // - "g h", "i j k l", // - "m", "n o p q r"}, - {3, 2}); - m.CheckRowSplits({3, 3, 2, 4, 1, 5}); - EXPECT_THAT(m.ExtractValuesTensorVector(), - ElementsAre("a", "b", "c", // - "d", "e", "f", // - "g", "h", // - "i", "j", "k", "l", // - "m", // - "n", "o", "p", "q", "r")); -} - -} // namespace test -} // namespace whitespace_tokenizer -} // namespace custom -} // namespace ops -} // namespace tflite diff --git a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_test.py b/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_test.py deleted file mode 100644 index b6a1a67d74ba2..0000000000000 --- a/src/third_party/tflite_support/src/tensorflow_lite_support/custom_ops/kernel/whitespace_tokenizer_test.py +++ /dev/null @@ -1,168 +0,0 @@ -# Copyright 2020 The TensorFlow Authors. All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============================================================================== -# Lint as: python3 -"""Tests for tensorflow_lite_support.custom_ops.kernel.whitespace_tokenizer.""" - -import os -import sys -import timeit - -from absl import logging -from absl.testing import parameterized -import numpy as np -import tensorflow as tf -import tensorflow_text as tf_text -# pylint: disable=g-direct-tensorflow-import -from tensorflow.lite.python import interpreter as interpreter_wrapper -from tensorflow.python.platform import resource_loader - -# Force loaded shared object symbols to be globally visible. This is needed so -# that the interpreter_wrapper, in one .so file, can see the op resolver -# in a different .so file. Note that this may already be set by default. -# pylint: disable=g-import-not-at-top,g-bad-import-order,unused-import -if hasattr(sys, 'setdlopenflags') and hasattr(sys, 'getdlopenflags'): - sys.setdlopenflags(sys.getdlopenflags() | os.RTLD_GLOBAL) -from tensorflow_lite_support.custom_ops.kernel import _pywrap_whitespace_tokenizer_op_resolver - -TEST_CASES = [ - ['this is a test'], - ['extra spaces in here'], - ['a four token sentence', 'a five token sentence thing.'], - [['a multi dimensional test case', 'a b c d', 'e f g'], - ['h i j', 'k l m 2 3', 'n o p'], ['q r s 0 1', 't u v', 'w x y z']], -] - -INVOKES_FOR_SINGLE_OP_BENCHMARK = 1000 -INVOKES_FOR_FLEX_DELEGATE_BENCHMARK = 10 - - -@tf.function -def _call_whitespace_tokenizer_to_tensor(test_case): - tokenizer = tf_text.WhitespaceTokenizer() - return tokenizer.tokenize(test_case).to_tensor() - - -@tf.function -def _call_whitespace_tokenizer_to_ragged(test_case): - tokenizer = tf_text.WhitespaceTokenizer() - return tokenizer.tokenize(test_case) - - -class WhitespaceTokenizerTest(parameterized.TestCase): - - @parameterized.parameters([t] for t in TEST_CASES) - def testToTensorEquivalence(self, test_case): - tf_output = _call_whitespace_tokenizer_to_tensor(test_case) - - model_filename = resource_loader.get_path_to_datafile( - 'testdata/whitespace_tokenizer_to_tensor.tflite') - with open(model_filename, 'rb') as file: - model = file.read() - interpreter = interpreter_wrapper.InterpreterWithCustomOps( - model_content=model, - custom_op_registerers=['AddWhitespaceTokenizerCustomOp']) - - np_test_case = np.array(test_case, dtype=np.str) - interpreter.resize_tensor_input(0, np_test_case.shape) - interpreter.allocate_tensors() - interpreter.set_tensor(interpreter.get_input_details()[0]['index'], - np_test_case) - interpreter.invoke() - tflite_output = interpreter.get_tensor( - interpreter.get_output_details()[0]['index']) - - self.assertEqual(tf_output.numpy().tolist(), tflite_output.tolist()) - - @parameterized.parameters([t] for t in TEST_CASES) - def testToRaggedEquivalence(self, test_case): - tf_output = _call_whitespace_tokenizer_to_ragged(test_case) - - np_test_case = np.array(test_case, dtype=np.str) - rank = len(np_test_case.shape) - - model_filename = resource_loader.get_path_to_datafile( - 'testdata/whitespace_tokenizer_to_ragged_{}d_input.tflite'.format(rank)) - with open(model_filename, 'rb') as file: - model = file.read() - interpreter = interpreter_wrapper.InterpreterWithCustomOps( - model_content=model, - custom_op_registerers=['AddWhitespaceTokenizerCustomOp']) - interpreter.resize_tensor_input(0, np_test_case.shape) - interpreter.allocate_tensors() - interpreter.set_tensor(interpreter.get_input_details()[0]['index'], - np_test_case) - interpreter.invoke() - - # Traverse the nested row_splits/values of the ragged tensor. - for i in range(rank): - tflite_output_cur_row_splits = interpreter.get_tensor( - interpreter.get_output_details()[1 + i]['index']) - self.assertEqual(tf_output.row_splits.numpy().tolist(), - tflite_output_cur_row_splits.tolist()) - tf_output = tf_output.values - - tflite_output_values = interpreter.get_tensor( - interpreter.get_output_details()[0]['index']) - self.assertEqual(tf_output.numpy().tolist(), tflite_output_values.tolist()) - - def testSingleOpLatency(self): - model_filename = resource_loader.get_path_to_datafile( - 'testdata/whitespace_tokenizer_to_tensor.tflite') - with open(model_filename, 'rb') as file: - model = file.read() - interpreter = interpreter_wrapper.InterpreterWithCustomOps( - model_content=model, - custom_op_registerers=['AddWhitespaceTokenizerCustomOp']) - - latency = 0.0 - for test_case in TEST_CASES: - np_test_case = np.array(test_case, dtype=np.str) - interpreter.resize_tensor_input(0, np_test_case.shape) - interpreter.allocate_tensors() - interpreter.set_tensor(interpreter.get_input_details()[0]['index'], - np_test_case) - start_time = timeit.default_timer() - for _ in range(INVOKES_FOR_SINGLE_OP_BENCHMARK): - interpreter.invoke() - latency = latency + timeit.default_timer() - start_time - - latency = latency / (INVOKES_FOR_SINGLE_OP_BENCHMARK * len(TEST_CASES)) - logging.info('Latency: %fms', latency * 1000.0) - - def testFlexDelegateLatency(self): - model_filename = resource_loader.get_path_to_datafile( - 'testdata/whitespace_tokenizer_flex_delegate.tflite') - with open(model_filename, 'rb') as file: - model = file.read() - interpreter = interpreter_wrapper.Interpreter(model_content=model) - - latency = 0.0 - for test_case in TEST_CASES: - np_test_case = np.array(test_case, dtype=np.str) - interpreter.resize_tensor_input(0, np_test_case.shape) - interpreter.allocate_tensors() - interpreter.set_tensor(interpreter.get_input_details()[0]['index'], - np_test_case) - start_time = timeit.default_timer() - for _ in range(INVOKES_FOR_FLEX_DELEGATE_BENCHMARK): - interpreter.invoke() - latency = latency + timeit.default_timer() - start_time - - latency = latency / (INVOKES_FOR_FLEX_DELEGATE_BENCHMARK * len(TEST_CASES)) - logging.info('Latency: %fms', latency * 1000.0) - - -if __name__ == '__main__': - tf.test.main() diff --git a/src/tools/metrics/histograms/enums.xml b/src/tools/metrics/histograms/enums.xml index 6c9de291ba594..9b5cd62a72864 --- a/src/tools/metrics/histograms/enums.xml +++ b/src/tools/metrics/histograms/enums.xml @@ -8455,6 +8455,7 @@ Called by update_bad_message_reasons.py.--> + diff --git a/src/ui/base/clipboard/ohos/clipboard_ohos.cc b/src/ui/base/clipboard/ohos/clipboard_ohos.cc index ac7413b89d5ab..78f813d437643 --- a/src/ui/base/clipboard/ohos/clipboard_ohos.cc +++ b/src/ui/base/clipboard/ohos/clipboard_ohos.cc @@ -6,6 +6,7 @@ #include "ui/base/clipboard/ohos/clipboard_ohos_read_data.h" #include "base/check_op.h" +#include "base/command_line.h" #include "base/containers/contains.h" #include "base/feature_list.h" #include "base/files/file_util.h" @@ -16,6 +17,7 @@ #include "base/synchronization/lock.h" #include "content/public/browser/browser_task_traits.h" #include "content/public/browser/browser_thread.h" +#include "content/public/common/content_switches.h" #include "skia/ext/skia_utils_base.h" #include "third_party/skia/include/core/SkBitmap.h" #include "ui/base/clipboard/clipboard_constants.h" @@ -29,6 +31,7 @@ #include "base/logging.h" #include "ohos_adapter_helper.h" +#include "ohos_resource_adapter.h" #include #include @@ -45,6 +48,10 @@ namespace { const std::string kImgTagPattern = ""; const std::string kImgTagSrcPattern = "src=*\"([^\"]+)"; const std::string kImgTagSrcHead = "src=\""; +const std::string kResourcePathPrefix = "resources/"; +const std::string kResourceResavePathPrefix = + "/data/storage/el2/base/cache/resource_resave/"; + using InstanceRegistry = std::set>; InstanceRegistry* GetInstanceRegistry() { static base::NoDestructor registry; @@ -71,6 +78,14 @@ bool IsRegisteredInstance(const Clipboard* clipboard) { return base::Contains(*GetInstanceRegistry(), clipboard); } +std::string RemoveFileSchemePerfix(const std::string img_src) { + GURL img_url(img_src); + if (img_url.SchemeIsFile()) { + return img_url.path(); + } + return img_src; +} + std::string GetImgLocalPath(const char* img_src) { if (!img_src) { return ""; @@ -80,9 +95,12 @@ std::string GetImgLocalPath(const char* img_src) { img_url.SchemeIsBlob()) { return ""; } + if (img_url.SchemeIsOhosResource()) { + return std::string(img_src); + } if (img_url.SchemeIsFile() && base::PathExists(base::FilePath(img_url.path()))) { - return img_url.path(); + return std::string(img_src); } if (base::PathExists(base::FilePath(img_src))) { return std::string(img_src); @@ -126,6 +144,12 @@ class ClipboardOHOSInternal { .GetPasteBoard() .AddPasteboardChangedObserver(observer_); observer_->SetClipboardInternal(this); + std::string hapPath = + base::CommandLine::ForCurrentProcess()->GetSwitchValueASCII( + switches::kOhosHapPath); + resource_adapter_ = + OHOS::NWeb::OhosAdapterHelper::GetInstance().GetResourceAdapter( + hapPath); } ~ClipboardOHOSInternal() { @@ -320,7 +344,6 @@ class ClipboardOHOSInternal { std::make_shared(currentData->markup_data()); if (record->SetHtmlText(html)) { LOG(INFO) << "set html to record success"; - } else { LOG(ERROR) << "set html to record failed"; } @@ -348,8 +371,13 @@ class ClipboardOHOSInternal { std::vector offset_list( offset_data, offset_data + it->second.size() * sizeof(int)); custom_data.insert(std::make_pair(it->first, offset_list)); - if (uri_record->SetUri(it->first) && + std::string resave_path = it->first; + if (!ResaveResourceImg(it->first, resave_path)) { + continue; + } + if (uri_record->SetUri(RemoveFileSchemePerfix(resave_path)) && uri_record->SetCustomData(custom_data)) { + LOG(ERROR) << it->first; result_list.push_back(uri_record); } else { LOG(ERROR) << "WriteHTML extra record failed"; @@ -405,6 +433,43 @@ class ClipboardOHOSInternal { return allFormat & static_cast(format); } + bool ResaveResourceImg(const std::string& img_src, std::string& resave_path) { + GURL resource_img_src(img_src); + if (!resource_img_src.SchemeIsOhosResource()) { + LOG(INFO) << "no need to resave"; + return true; + } + + std::string img_path = + kResourcePathPrefix + resource_img_src.host() + resource_img_src.path(); + if (!resource_adapter_ || !resource_adapter_->IsRawFileExist(img_path)) { + LOG(ERROR) << "resource_adapter is nullptr or " << img_path + << " is not exists"; + return false; + } + std::unique_ptr data; + size_t length = 0; + if (!resource_adapter_->GetRawFileData(img_path, length, data, false)) { + LOG(ERROR) << "read " << img_path << " failed"; + return false; + } + LOG(INFO) << img_path << " length:" << length; + base::FilePath resave_root_path(kResourceResavePathPrefix); + resave_root_path = resave_root_path.Append(base::FilePath(img_path)); + LOG(ERROR) << "resave_root_path dir:" << resave_root_path.DirName(); + if (!base::DirectoryExists(resave_root_path.DirName()) && + !base::CreateDirectory(resave_root_path.DirName())) { + return false; + } + resave_path = resave_root_path.AsUTF8Unsafe(); + if (base::WriteFile(resave_root_path, reinterpret_cast(data.get()), + length) != length) { + LOG(ERROR) << "resave img resource failed"; + return false; + } + return true; + } + // Current ClipboardData. std::unique_ptr data_; @@ -413,6 +478,7 @@ class ClipboardOHOSInternal { std::shared_ptr observer_; ClipboardState state_ = ClipboardState::kOutOfDate; std::shared_ptr read_data_ = nullptr; + std::unique_ptr resource_adapter_ = nullptr; }; class ClipboardDataBuilder { @@ -533,7 +599,6 @@ class ClipboardDataBuilder { std::map>& img_src_set, int offset) { std::string img_path = GetImgLocalPath(img_src); - // LOG(ERROR) << "AddImgUrlToSet:" << img_path; if (!img_path.empty()) { std::map>::iterator iter = img_src_set.find(img_path); diff --git a/src/ui/base/clipboard/ohos/clipboard_ohos_read_data.cc b/src/ui/base/clipboard/ohos/clipboard_ohos_read_data.cc index 9983b83565535..dfc10c51d7ac3 --- a/src/ui/base/clipboard/ohos/clipboard_ohos_read_data.cc +++ b/src/ui/base/clipboard/ohos/clipboard_ohos_read_data.cc @@ -10,12 +10,21 @@ #include "base/files/file_util.h" #include "base/logging.h" #include "third_party/icu/source/i18n/unicode/regex.h" +#include "url/gurl.h" using namespace OHOS::NWeb; namespace ui { const std::string kImgPasteboardDir = "/data/storage/el2/base/cache/pasteboard"; +std::string RemoveFileSchemePerfix(const std::string& img_src) { + GURL img_url(img_src); + if (img_url.SchemeIsFile()) { + return img_url.path(); + } + return img_src; +} + ClipboardOhosReadData::ClipboardOhosReadData(PasteRecordList& record_list) : record_list_(record_list) { is_in_app_ = OhosAdapterHelper::GetInstance().GetPasteBoard().IsLocalPaste(); @@ -28,6 +37,7 @@ ClipboardOhosReadData::ClipboardOhosReadData(PasteRecordList& record_list) if (!new_uri) { continue; } + LOG(INFO) << "new_uri:" << *new_uri; int fd = OhosAdapterHelper::GetInstance().GetPasteBoard().OpenRemoteUri( *new_uri); if (fd > 0) { @@ -41,11 +51,12 @@ void ClipboardOhosReadData::SaveImgFile(const std::string& old_uri, std::string& new_uri, uint32_t token_id) { base::FilePath pasteboard_root_path(kImgPasteboardDir); + std::string old_uri_without_prefix = RemoveFileSchemePerfix(old_uri); base::FilePath dest_file_dir_path( pasteboard_root_path.Append(std::to_string(token_id)) - .Append(base::FilePath(old_uri).DirName())); - base::FilePath new_file_path( - dest_file_dir_path.Append(base::FilePath(old_uri).BaseName())); + .Append(base::FilePath(old_uri_without_prefix).DirName())); + base::FilePath new_file_path(dest_file_dir_path.Append( + base::FilePath(old_uri_without_prefix).BaseName())); if (!base::DirectoryExists(dest_file_dir_path) && !base::CreateDirectory(dest_file_dir_path)) { return; @@ -60,7 +71,7 @@ void ClipboardOhosReadData::SaveImgFile(const std::string& old_uri, base::File::Flags::FLAG_WRITE); if (old_file.IsValid() && new_file.IsValid()) { if (base::CopyFileContents(old_file, new_file)) { - new_uri = new_file_path.AsUTF8Unsafe(); + new_uri = "file://" + new_file_path.AsUTF8Unsafe(); } else { LOG(ERROR) << "SaveImgFile copy file failed"; } diff --git a/src/ui/base/resource/data_pack.cc b/src/ui/base/resource/data_pack.cc index fcbe2e4ce0c46..7db34fe6d77d7 --- a/src/ui/base/resource/data_pack.cc +++ b/src/ui/base/resource/data_pack.cc @@ -25,6 +25,13 @@ #include "net/filter/gzip_header.h" #include "third_party/zlib/google/compression_utils.h" +#if BUILDFLAG(IS_OHOS) +#include +#include "base/command_line.h" +#include "content/public/common/content_switches.h" +#include "ohos_adapter_helper.h" +#endif + // For details of the file layout, see // http://dev.chromium.org/developers/design-documents/linuxresourcesandlocalizedstrings @@ -173,6 +180,38 @@ bool MmapHasGzipHeader(const base::MemoryMappedFile* mmap) { return header_status == net::GZipHeader::COMPLETE_HEADER; } +#if BUILDFLAG(IS_OHOS) +std::unordered_map kPakFileNameHapMap = { + {ui::ResourceScaleFactor::kScaleFactorNone, + "resources/rawfile/resources.pak"}, + {ui::ResourceScaleFactor::k100Percent, + "resources/rawfile/chrome_100_percent.pak"}, + {ui::ResourceScaleFactor::k200Percent, + "resources/rawfile/chrome_200_percent.pak"}}; + +bool IsPathFromHap(ui::ResourceScaleFactor factor, + const base::FilePath& path, + std::string& pathHap) { + if (!base::CommandLine::ForCurrentProcess()->HasSwitch(switches::kOhosHapPath)) { + LOG(INFO) << "not has switch kOhosHapPath, hap is decompress"; + return false; + } + auto iter = kPakFileNameHapMap.find(factor); + if (iter == kPakFileNameHapMap.end()) { + LOG(ERROR) << "kPakFileNameHapMap not find path: " << path; + return false; + } + std::string pathStr = path.MaybeAsASCII(); + if (pathStr.find("zh-CN.pak") != std::string::npos) { + pathHap = "resources/rawfile/locales/zh-CN.pak"; + } else if (pathStr.find("en-US.pak") != std::string::npos) { + pathHap = "resources/rawfile/locales/en-US.pak"; + } else { + pathHap = iter->second; + } + return true; +} +#endif } // namespace namespace ui { @@ -278,10 +317,46 @@ DataPack::DataPack(ResourceScaleFactor resource_scale_factor) static_assert(sizeof(Alias) == 4, "size of Alias must be 4"); } -DataPack::~DataPack() { -} +DataPack::~DataPack() {} bool DataPack::LoadFromPath(const base::FilePath& path) { +#if BUILDFLAG(IS_OHOS) + std::string pathHap; + if (IsPathFromHap(resource_scale_factor_, path, pathHap)) { + size_t length = 0; + std::unique_ptr data; + auto resourceInstance = + OHOS::NWeb::OhosAdapterHelper::GetInstance().GetResourceAdapter(); + if (!resourceInstance->GetRawFileData(pathHap, length, data, true)) { + LOG(ERROR) << "DataPack::LoadFromPath couldn't data file: " + << pathHap.c_str(); + return false; + } + + LOG(INFO) << "DataPack::LoadFromPath " << pathHap.c_str() + << ", data file length: " << length; + std::unique_ptr mmap = + std::make_unique(); + mmap->SetDataAndLength(data, length); + if (MmapHasGzipHeader(mmap.get())) { + base::StringPiece compressed(reinterpret_cast(mmap->data()), + mmap->length()); + std::string data; + if (!compression::GzipUncompress(compressed, &data)) { + LOG(ERROR) << "Failed to unzip compressed datapack: " + << pathHap.c_str(); + LogDataPackError(UNZIP_FAILED); + return false; + } + return LoadImpl(std::make_unique(std::move(data))); + } + return LoadImpl(std::make_unique(std::move(mmap))); + } + if (!base::PathExists(path)) { + LOG(ERROR) << "LoadFromPath file not exist"; + return false; + } +#endif std::unique_ptr mmap = std::make_unique(); // Open the file for reading; allowing other consumers to also open it for @@ -502,9 +577,9 @@ void DataPack::CheckForDuplicateResources( if (GetScaleForResourceScaleFactor(handle->GetResourceScaleFactor()) != resource_scale) continue; - DCHECK(!handle->HasResource(resource_id)) << "Duplicate resource " - << resource_id << " with scale " - << resource_scale; + DCHECK(!handle->HasResource(resource_id)) + << "Duplicate resource " << resource_id << " with scale " + << resource_scale; } } } diff --git a/src/ui/base/resource/resource_bundle.cc b/src/ui/base/resource/resource_bundle.cc index 9bc3c67f22f7d..bc4f7dc73fae4 --- a/src/ui/base/resource/resource_bundle.cc +++ b/src/ui/base/resource/resource_bundle.cc @@ -68,6 +68,12 @@ #undef LoadBitmap #endif +#if BUILDFLAG(IS_OHOS) +#include "base/command_line.h" +#include "content/public/common/content_switches.h" +#include "ohos_adapter_helper.h" +#endif + namespace ui { namespace { @@ -366,6 +372,14 @@ void ResourceBundle::LoadSecondaryLocaleDataWithPakFileRegion( #if !BUILDFLAG(IS_ANDROID) // static bool ResourceBundle::LocaleDataPakExists(const std::string& locale) { +#if BUILDFLAG(IS_OHOS) + if (base::CommandLine::ForCurrentProcess()->HasSwitch(switches::kOhosHapPath)) { + if (locale == "zh-CN" || locale == "en-US" || locale == "resources" || + locale == "chrome_100_percent" || locale == "chrome_200_percent") { + return true; + } + } +#endif const auto path = GetLocaleFilePath(locale); return !path.empty() && base::PathExists(path); } diff --git a/src/ui/base/ui_features.gni b/src/ui/base/ui_features.gni index 44c1552b35e4c..febd84e679d21 --- a/src/ui/base/ui_features.gni +++ b/src/ui/base/ui_features.gni @@ -32,4 +32,4 @@ declare_args() { has_platform_accessibility_support = has_native_accessibility || is_android || is_fuchsia -enable_hidpi = !is_android +enable_hidpi = !is_android && !is_ohos diff --git a/src/ui/gl/gl_surface_egl_ohos.cc b/src/ui/gl/gl_surface_egl_ohos.cc index a8c5763683753..bc457f2923daa --- a/src/ui/gl/gl_surface_egl_ohos.cc +++ b/src/ui/gl/gl_surface_egl_ohos.cc @@ -3,6 +3,7 @@ // found in the LICENSE file. #include "ui/gl/gl_surface_egl_ohos.h" +#include "content/public/common/content_switches.h" #include #include @@ -25,11 +26,29 @@ namespace gl { scoped_refptr NativeViewGLSurfaceEGLOhos::CreateNativeViewGLSurfaceEGLOhos( gfx::AcceleratedWidget widget) { - NativeWindow* window = - (NativeWindow*)NWebNativeWindowTracker::Instance().GetNativeWindow( + base::CommandLine* command_line = base::CommandLine::ForCurrentProcess(); + if (command_line->HasSwitch(::switches::kOhosHanceSurface)) { + LOG(INFO) << "CreateNativeViewGLSurfaceEGLOhos:: enhance surface"; + WindowsSurfaceInfo* surfaceInfo = + (WindowsSurfaceInfo*)NWebNativeWindowTracker::Instance().GetNativeWindow( widget); - return scoped_refptr( - new NativeViewGLSurfaceEGLOhos(EGLNativeWindowType(window))); + if (surfaceInfo != nullptr) { + LOG(INFO) << "clear surface from NWEB"; + eglDestroySurface(surfaceInfo->display, surfaceInfo->surface); + eglDestroyContext(surfaceInfo->display, surfaceInfo->context); + + return scoped_refptr( + new NativeViewGLSurfaceEGLOhos(EGLNativeWindowType(surfaceInfo->window))); + } + } else { + LOG(INFO) << "CreateNativeViewGLSurfaceEGLOhos:: normal surface"; + NativeWindow* window = + (NativeWindow*)NWebNativeWindowTracker::Instance().GetNativeWindow( + widget); + return scoped_refptr( + new NativeViewGLSurfaceEGLOhos(EGLNativeWindowType(window))); + } + return nullptr; } NativeViewGLSurfaceEGLOhos::NativeViewGLSurfaceEGLOhos( @@ -54,9 +73,8 @@ gfx::SwapResult NativeViewGLSurfaceEGLOhos::SwapBuffers( void NativeViewGLSurfaceEGLOhos::FrameCounter::Start() { std::weak_ptr frame_counter_weak(shared_from_this()); std::thread frame_stat_thread([frame_counter_weak]() { - while (!frame_counter_weak.expired()) { + while (auto frame_counter = frame_counter_weak.lock()) { { - auto frame_counter = frame_counter_weak.lock(); std::unique_lock lk(frame_counter->frame_stat_mtx_); int64_t curr_time = GetNowTime(); if (frame_counter->last_time_ == 0) { diff --git a/src/ui/gl/gl_surface_egl_ohos.h b/src/ui/gl/gl_surface_egl_ohos.h index c1c1f00eac9a0..07a6b74e8355b --- a/src/ui/gl/gl_surface_egl_ohos.h +++ b/src/ui/gl/gl_surface_egl_ohos.h @@ -10,8 +10,15 @@ #include #include "ui/gl/gl_export.h" #include "ui/gl/gl_surface_egl.h" +#include "ui/gl/gl_bindings.h" namespace gl { +typedef struct WindowsSurfaceInfoTag { + void* window; + EGLDisplay display; + EGLContext context; + EGLSurface surface; +} WindowsSurfaceInfo; class GL_EXPORT NativeViewGLSurfaceEGLOhos : public NativeViewGLSurfaceEGL { public: diff --git a/src/ui/gl/gl_surface_presentation_helper.cc b/src/ui/gl/gl_surface_presentation_helper.cc index 1f62bff66f200..7db2fb73f3148 --- a/src/ui/gl/gl_surface_presentation_helper.cc +++ b/src/ui/gl/gl_surface_presentation_helper.cc @@ -96,7 +96,11 @@ bool GLSurfacePresentationHelper::GetFrameTimestampInfoIfAvailable( int64_t start = 0; int64_t end = 0; frame.timer->GetStartEndTimestamps(&start, &end); +#if BUILDFLAG(IS_OHOS) + *timestamp = base::TimeTicks::Now(); +#else *timestamp = base::TimeTicks() + base::Microseconds(start); +#endif } else { if (!frame.fence->HasCompleted()) return false; diff --git a/src/ui/views/BUILD.gn b/src/ui/views/BUILD.gn index 28f6dff93dec7..d884bc549a58f --- a/src/ui/views/BUILD.gn +++ b/src/ui/views/BUILD.gn @@ -15,7 +15,13 @@ import("//ui/views/features.gni") assert(toolkit_views || is_ohos) config("flags") { - defines = [ "TOOLKIT_VIEWS=1" ] + if (is_ohos) { + if (toolkit_views) { + defines = [ "TOOLKIT_VIEWS=1" ] + } + } else { + defines = [ "TOOLKIT_VIEWS=1" ] + } } aggregate_vector_icons("views_vector_icons") { diff --git a/src/ui/views/accessibility/ax_aura_obj_cache.cc b/src/ui/views/accessibility/ax_aura_obj_cache.cc index af4c6b5c39686..7313a9caff32a --- a/src/ui/views/accessibility/ax_aura_obj_cache.cc +++ b/src/ui/views/accessibility/ax_aura_obj_cache.cc @@ -74,6 +74,11 @@ AXAuraObjWrapper* AXAuraObjCache::GetOrCreate(View* view) { // Avoid problems with transient focus events. https://crbug.com/729449 if (!view->GetWidget()) return nullptr; + + DCHECK(view_to_id_map_.find(view) != view_to_id_map_.end() || + // This is either a new view or we're erroneously here during ~View. + view->life_cycle_state() == View::LifeCycleState::kAlive); + return CreateInternal(view, &view_to_id_map_); } diff --git a/src/ui/views/accessibility/ax_aura_obj_cache.h b/src/ui/views/accessibility/ax_aura_obj_cache.h index db6c31a89d023..223f13dd2b6e3 --- a/src/ui/views/accessibility/ax_aura_obj_cache.h +++ b/src/ui/views/accessibility/ax_aura_obj_cache.h @@ -88,9 +88,6 @@ class VIEWS_EXPORT AXAuraObjCache : public aura::client::FocusChangeObserver { // Get the object that has focus. AXAuraObjWrapper* GetFocus(); - // Send a notification that the focused view may have changed. - void OnFocusedViewChanged(); - // Tell our delegate to fire an event on a given object. void FireEvent(AXAuraObjWrapper* aura_obj, ax::mojom::Event event_type); @@ -122,6 +119,9 @@ class VIEWS_EXPORT AXAuraObjCache : public aura::client::FocusChangeObserver { View* GetFocusedView(); + // Send a notification that the focused view may have changed. + void OnFocusedViewChanged(); + // aura::client::FocusChangeObserver override. void OnWindowFocused(aura::Window* gained_focus, aura::Window* lost_focus) override; diff --git a/src/ui/views/accessibility/ax_aura_obj_cache_unittest.cc b/src/ui/views/accessibility/ax_aura_obj_cache_unittest.cc index 037ad6437c2a2..ccdab6ebd0075 --- a/src/ui/views/accessibility/ax_aura_obj_cache_unittest.cc +++ b/src/ui/views/accessibility/ax_aura_obj_cache_unittest.cc @@ -106,15 +106,12 @@ class ViewBlurObserver : public ViewObserver { observation_.Observe(view); } - // This is fired while the view is being destroyed, after the cache entry is - // removed by the AXWidgetObjWrapper. Re-create the cache entry so we can - // test that it will also be removed. void OnViewBlurred(View* view) override { ASSERT_FALSE(was_called()); observation_.Reset(); - ASSERT_EQ(cache_->GetID(view), 0); - cache_->GetOrCreate(view); + // The cache entry gets deleted in + // AXViewObjWrapper::OnViewIsDeleting which occurs later in ~View. } bool was_called() { return !observation_.IsObserving(); } diff --git a/src/ui/views/accessibility/ax_widget_obj_wrapper.cc b/src/ui/views/accessibility/ax_widget_obj_wrapper.cc index 7aba1f32a1d9e..7169dafa3fbf6 --- a/src/ui/views/accessibility/ax_widget_obj_wrapper.cc +++ b/src/ui/views/accessibility/ax_widget_obj_wrapper.cc @@ -20,7 +20,6 @@ AXWidgetObjWrapper::AXWidgetObjWrapper(AXAuraObjCache* aura_obj_cache, : AXAuraObjWrapper(aura_obj_cache), widget_(widget) { DCHECK(widget->GetNativeView()); widget_observation_.Observe(widget); - widget_removals_observation_.Observe(widget); } AXWidgetObjWrapper::~AXWidgetObjWrapper() = default; @@ -78,14 +77,4 @@ void AXWidgetObjWrapper::OnWidgetClosing(Widget* widget) { aura_obj_cache_->Remove(widget); } -void AXWidgetObjWrapper::OnWidgetVisibilityChanged(Widget*, bool) { - // If a widget changes visibility it may affect what's focused, in particular - // when a widget that contains the focused view gets hidden. - aura_obj_cache_->OnFocusedViewChanged(); -} - -void AXWidgetObjWrapper::OnWillRemoveView(Widget* widget, View* view) { - aura_obj_cache_->RemoveViewSubtree(view); -} - } // namespace views diff --git a/src/ui/views/accessibility/ax_widget_obj_wrapper.h b/src/ui/views/accessibility/ax_widget_obj_wrapper.h index 53f3c600a0a26..6ec90e291d8fc --- a/src/ui/views/accessibility/ax_widget_obj_wrapper.h +++ b/src/ui/views/accessibility/ax_widget_obj_wrapper.h @@ -16,15 +16,12 @@ #include "ui/views/accessibility/ax_aura_obj_wrapper.h" #include "ui/views/widget/widget.h" #include "ui/views/widget/widget_observer.h" -#include "ui/views/widget/widget_removals_observer.h" namespace views { class AXAuraObjCache; // Describes a |Widget| for use with other AX classes. -class AXWidgetObjWrapper : public AXAuraObjWrapper, - public WidgetObserver, - public WidgetRemovalsObserver { +class AXWidgetObjWrapper : public AXAuraObjWrapper, public WidgetObserver { public: // |aura_obj_cache| must outlive this object. AXWidgetObjWrapper(AXAuraObjCache* aura_obj_cache, Widget* widget); @@ -43,10 +40,6 @@ class AXWidgetObjWrapper : public AXAuraObjWrapper, void OnWidgetDestroying(Widget* widget) override; void OnWidgetDestroyed(Widget* widget) override; void OnWidgetClosing(Widget* widget) override; - void OnWidgetVisibilityChanged(Widget*, bool) override; - - // WidgetRemovalsObserver overrides. - void OnWillRemoveView(Widget* widget, View* view) override; private: raw_ptr widget_; @@ -54,11 +47,6 @@ class AXWidgetObjWrapper : public AXAuraObjWrapper, const ui::AXUniqueId unique_id_; base::ScopedObservation widget_observation_{this}; - base::ScopedObservation - widget_removals_observation_{this}; }; } // namespace views diff --git a/src/ui/views/accessibility/ax_window_obj_wrapper.cc b/src/ui/views/accessibility/ax_window_obj_wrapper.cc index 4fa02617f6fdb..7ccad9445a396 --- a/src/ui/views/accessibility/ax_window_obj_wrapper.cc +++ b/src/ui/views/accessibility/ax_window_obj_wrapper.cc @@ -281,19 +281,15 @@ void AXWindowObjWrapper::OnCaretBoundsChanged( } void AXWindowObjWrapper::OnWindowDestroyed(aura::Window* window) { + if (is_root_window_) + aura_obj_cache_->OnRootWindowObjDestroyed(window_); + aura_obj_cache_->Remove(window, nullptr); } void AXWindowObjWrapper::OnWindowDestroying(aura::Window* window) { - if (window == window_) - window_destroying_ = true; - - Widget* widget = GetWidgetForWindow(window); - if (widget) - aura_obj_cache_->Remove(widget); - - if (is_root_window_) - aura_obj_cache_->OnRootWindowObjDestroyed(window_); + DCHECK_EQ(window, window_); + window_destroying_ = true; } void AXWindowObjWrapper::OnWindowHierarchyChanged( diff --git a/src/ui/views/bubble/bubble_dialog_delegate_view.cc b/src/ui/views/bubble/bubble_dialog_delegate_view.cc index b0d39d93fbb05..6453c06d13fe9 --- a/src/ui/views/bubble/bubble_dialog_delegate_view.cc +++ b/src/ui/views/bubble/bubble_dialog_delegate_view.cc @@ -35,6 +35,7 @@ #include "ui/views/view_class_properties.h" #include "ui/views/widget/widget.h" #include "ui/views/widget/widget_observer.h" +#include "ui/views/window/dialog_client_view.h" #if BUILDFLAG(IS_WIN) #include "ui/base/win/shell.h" @@ -709,6 +710,16 @@ void BubbleDialogDelegate::OnAnchorBoundsChanged() { // TODO(pbos): Reconsider whether to update the anchor when the view isn't // drawn. SizeToContents(); + + // We will not accept input event a short time after anchored view changed. + UpdateInputProtectorsTimeStamp(); +} + +void BubbleDialogDelegate::UpdateInputProtectorsTimeStamp() { + if (auto* dialog = GetDialogClientView()) + dialog->UpdateInputProtectorTimeStamp(); + + GetBubbleFrameView()->UpdateInputProtectorTimeStamp(); } gfx::Rect BubbleDialogDelegate::GetBubbleBounds() { diff --git a/src/ui/views/bubble/bubble_dialog_delegate_view.h b/src/ui/views/bubble/bubble_dialog_delegate_view.h index 77012f1360ad9..fb0c7a27d8576 --- a/src/ui/views/bubble/bubble_dialog_delegate_view.h +++ b/src/ui/views/bubble/bubble_dialog_delegate_view.h @@ -140,6 +140,10 @@ class VIEWS_EXPORT BubbleDialogDelegate : public DialogDelegate { // normally, do not call this. void OnAnchorBoundsChanged(); + // Call this method to update view shown time stamp of underneath input + // protectors. + void UpdateInputProtectorsTimeStamp(); + ////////////////////////////////////////////////////////////////////////////// // Miscellaneous bubble behaviors: // diff --git a/src/ui/views/bubble/bubble_frame_view.cc b/src/ui/views/bubble/bubble_frame_view.cc index 01426297ebb61..feca2ab55844d --- a/src/ui/views/bubble/bubble_frame_view.cc +++ b/src/ui/views/bubble/bubble_frame_view.cc @@ -692,6 +692,10 @@ gfx::Rect BubbleFrameView::GetUpdatedWindowBounds( return bubble_border_->GetBounds(anchor_rect, size); } +void BubbleFrameView::UpdateInputProtectorTimeStamp() { + input_protector_.UpdateViewShownTimeStamp(); +} + void BubbleFrameView::ResetViewShownTimeStampForTesting() { input_protector_.ResetForTesting(); } diff --git a/src/ui/views/bubble/bubble_frame_view.h b/src/ui/views/bubble/bubble_frame_view.h index f1a77ab30951c..a5cbbd9382e30 --- a/src/ui/views/bubble/bubble_frame_view.h +++ b/src/ui/views/bubble/bubble_frame_view.h @@ -166,6 +166,10 @@ class VIEWS_EXPORT BubbleFrameView : public NonClientFrameView { View* GetHeaderViewForTesting() const { return header_view_; } + // Update the |view_shown_time_stamp_| of input protector. A short time + // from this point onward, input event will be ignored. + void UpdateInputProtectorTimeStamp(); + // Resets the time when view has been shown. Tests may need to call this // method if they use events that could be otherwise treated as unintended. // See IsPossiblyUnintendedInteraction(). @@ -202,6 +206,8 @@ class VIEWS_EXPORT BubbleFrameView : public NonClientFrameView { IgnorePossiblyUnintendedClicksClose); FRIEND_TEST_ALL_PREFIXES(BubbleFrameViewTest, IgnorePossiblyUnintendedClicksMinimize); + FRIEND_TEST_ALL_PREFIXES(BubbleFrameViewTest, + IgnorePossiblyUnintendedClicksAnchorBoundsChanged); FRIEND_TEST_ALL_PREFIXES(BubbleDelegateTest, CloseReasons); FRIEND_TEST_ALL_PREFIXES(BubbleDialogDelegateViewTest, CloseMethods); FRIEND_TEST_ALL_PREFIXES(BubbleDialogDelegateViewTest, CreateDelegate); diff --git a/src/ui/views/bubble/bubble_frame_view_unittest.cc b/src/ui/views/bubble/bubble_frame_view_unittest.cc index ccb485eb3ffc8..33f6a6829e0fe --- a/src/ui/views/bubble/bubble_frame_view_unittest.cc +++ b/src/ui/views/bubble/bubble_frame_view_unittest.cc @@ -30,11 +30,10 @@ #include "ui/views/test/views_test_base.h" #include "ui/views/widget/widget.h" #include "ui/views/widget/widget_delegate.h" +#include "ui/views/window/dialog_client_view.h" namespace views { -using BubbleFrameViewTest = ViewsTestBase; - namespace { constexpr BubbleBorder::Arrow kArrow = BubbleBorder::TOP_LEFT; @@ -147,6 +146,18 @@ class TestBubbleFrameView : public BubbleFrameView { } // namespace +class BubbleFrameViewTest : public ViewsTestBase { + public: + BubbleFrameViewTest() + : views::ViewsTestBase( + base::test::TaskEnvironment::TimeSource::MOCK_TIME) {} + + BubbleFrameViewTest(const BubbleFrameViewTest&) = delete; + BubbleFrameViewTest& operator=(const BubbleFrameViewTest&) = delete; + + ~BubbleFrameViewTest() override = default; +}; + TEST_F(BubbleFrameViewTest, GetBoundsForClientView) { TestBubbleFrameView frame(this); EXPECT_EQ(kArrow, frame.GetBorderArrow()); @@ -1303,6 +1314,46 @@ TEST_F(BubbleFrameViewTest, IgnorePossiblyUnintendedClicksMinimize) { EXPECT_TRUE(bubble->IsMinimized()); } +// Ensures that clicks are ignored for short time after anchor view bounds +// changed. +TEST_F(BubbleFrameViewTest, IgnorePossiblyUnintendedClicksAnchorBoundsChanged) { + auto delegate_unique = std::make_unique(); + TestBubbleDialogDelegateView* const delegate = delegate_unique.get(); + TestAnchor anchor(CreateParams(Widget::InitParams::TYPE_WINDOW)); + delegate->SetAnchorView(anchor.widget().GetContentsView()); + delegate->SetCanMinimize(true); + Widget* bubble = + BubbleDialogDelegateView::CreateBubble(std::move(delegate_unique)); + bubble->Show(); + ui::MouseEvent mouse_event(ui::ET_MOUSE_PRESSED, gfx::Point(), gfx::Point(), + ui::EventTimeForNow(), ui::EF_NONE, ui::EF_NONE); + BubbleFrameView* frame = delegate->GetBubbleFrameView(); + test::ButtonTestApi(frame->minimize_).NotifyClick(mouse_event); + auto* widget = delegate->GetWidget(); + auto* dialog = delegate->GetDialogClientView(); + auto* ok_button = dialog->ok_button(); + test::ButtonTestApi(ok_button).NotifyClick(mouse_event); + EXPECT_FALSE(bubble->IsMinimized()); + EXPECT_FALSE(widget->IsClosed()); + + task_environment()->FastForwardBy( + base::Milliseconds(GetDoubleClickInterval())); + anchor.widget().SetBounds(gfx::Rect(10, 10, 100, 100)); + + ui::MouseEvent mouse_event_1(ui::ET_MOUSE_PRESSED, gfx::Point(), gfx::Point(), + ui::EventTimeForNow(), ui::EF_NONE, ui::EF_NONE); + test::ButtonTestApi(ok_button).NotifyClick(mouse_event_1); + test::ButtonTestApi(frame->minimize_).NotifyClick(mouse_event_1); + EXPECT_FALSE(widget->IsClosed()); + EXPECT_FALSE(bubble->IsMinimized()); + + test::ButtonTestApi(ok_button).NotifyClick(ui::MouseEvent( + ui::ET_MOUSE_PRESSED, gfx::Point(), gfx::Point(), + ui::EventTimeForNow() + base::Milliseconds(GetDoubleClickInterval()), + ui::EF_NONE, ui::EF_NONE)); + EXPECT_TRUE(widget->IsClosed()); +} + // Ensures that layout is correct when the progress indicator is visible. TEST_F(BubbleFrameViewTest, LayoutWithProgressIndicator) { auto delegate_unique = std::make_unique(); diff --git a/src/ui/views/input_event_activation_protector.cc b/src/ui/views/input_event_activation_protector.cc index fd907009fb29d..94b8e47228d49 --- a/src/ui/views/input_event_activation_protector.cc +++ b/src/ui/views/input_event_activation_protector.cc @@ -14,6 +14,14 @@ void InputEventActivationProtector::VisibilityChanged(bool is_visible) { view_shown_time_stamp_ = base::TimeTicks::Now(); } +void InputEventActivationProtector::UpdateViewShownTimeStamp() { + // The UI was never shown, ignore. + if (view_shown_time_stamp_ == base::TimeTicks()) + return; + + view_shown_time_stamp_ = base::TimeTicks::Now(); +} + bool InputEventActivationProtector::IsPossiblyUnintendedInteraction( const ui::Event& event) { if (view_shown_time_stamp_ == base::TimeTicks()) { diff --git a/src/ui/views/input_event_activation_protector.h b/src/ui/views/input_event_activation_protector.h index 42ffd02397599..7426d0dc5318a --- a/src/ui/views/input_event_activation_protector.h +++ b/src/ui/views/input_event_activation_protector.h @@ -30,6 +30,11 @@ class VIEWS_EXPORT InputEventActivationProtector { // method must be called when the visibility of the view is changed. void VisibilityChanged(bool is_visible); + // Updates the |view_shown_time_stamp_| if needed. This function will be + // called when we want to reset back the input protector to "initial shown" + // state, basically under some certain view's proprieties changed events. + void UpdateViewShownTimeStamp(); + // Returns true if the event is a mouse, touch, or pointer event that took // place within the double-click time interval after |view_shown_time_stamp_|. bool IsPossiblyUnintendedInteraction(const ui::Event& event); diff --git a/src/ui/views/view.cc b/src/ui/views/view.cc index 99d9510a9647d..8ac4f139f09c9 --- a/src/ui/views/view.cc +++ b/src/ui/views/view.cc @@ -224,6 +224,8 @@ View::View() { } View::~View() { + life_cycle_state_ = LifeCycleState::kDestroying; + if (parent_) parent_->RemoveChildView(this); diff --git a/src/ui/views/view.h b/src/ui/views/view.h index be4a0c8ad6695..59d51e1ce0a36 --- a/src/ui/views/view.h +++ b/src/ui/views/view.h @@ -1415,6 +1415,16 @@ class VIEWS_EXPORT View : public ui::LayerDelegate, void RemoveObserver(ViewObserver* observer); bool HasObserver(const ViewObserver* observer) const; + // http://crbug.com/1162949 : Instrumentation that indicates if this is alive. + // Callers should not depend on this as it is meant to be temporary. + enum class LifeCycleState : uint32_t { + kAlive = 0x600D600D, + kDestroying = 0x90141013, + kDestroyed = 0xBAADBAAD, + }; + + LifeCycleState life_cycle_state() const { return life_cycle_state_; } + protected: // Used to track a drag. RootView passes this into // ProcessMousePressed/Dragged. @@ -1666,12 +1676,6 @@ class VIEWS_EXPORT View : public ui::LayerDelegate, FRIEND_TEST_ALL_PREFIXES(ViewTest, PaintWithMovedViewUsesCacheInRTL); FRIEND_TEST_ALL_PREFIXES(ViewTest, PaintWithUnknownInvalidation); - // http://crbug.com/1162949 : Instrumentation that indicates if this is alive. - enum class LifeCycleState : uint32_t { - kAlive = 0x600D600D, - kDestroyed = 0xBAADBAAD, - }; - // This is the default view layout. It is a very simple version of FillLayout, // which merely sets the bounds of the children to the content bounds. The // actual FillLayout isn't used here because it supports a couple of features diff --git a/src/ui/views/window/dialog_client_view.cc b/src/ui/views/window/dialog_client_view.cc index 283ee15d15bec..ad9d0862043de --- a/src/ui/views/window/dialog_client_view.cc +++ b/src/ui/views/window/dialog_client_view.cc @@ -225,6 +225,10 @@ void DialogClientView::OnThemeChanged() { } } +void DialogClientView::UpdateInputProtectorTimeStamp() { + input_protector_.UpdateViewShownTimeStamp(); +} + void DialogClientView::ResetViewShownTimeStampForTesting() { input_protector_.ResetForTesting(); } diff --git a/src/ui/views/window/dialog_client_view.h b/src/ui/views/window/dialog_client_view.h index 016f2531876e8..abff481b0470c --- a/src/ui/views/window/dialog_client_view.h +++ b/src/ui/views/window/dialog_client_view.h @@ -63,6 +63,10 @@ class VIEWS_EXPORT DialogClientView : public ClientView, public DialogObserver { const ViewHierarchyChangedDetails& details) override; void OnThemeChanged() override; + // Update the |view_shown_time_stamp_| of input protector. A short time + // from this point onward, input event will be ignored. + void UpdateInputProtectorTimeStamp(); + void set_minimum_size(const gfx::Size& size) { minimum_size_ = size; } // Resets the time when view has been shown. Tests may need to call this diff --git a/src/ui/views/window/dialog_delegate.cc b/src/ui/views/window/dialog_delegate.cc index ba01196119858..b8d7b52bb490d --- a/src/ui/views/window/dialog_delegate.cc +++ b/src/ui/views/window/dialog_delegate.cc @@ -275,12 +275,8 @@ const DialogClientView* DialogDelegate::GetDialogClientView() const { } DialogClientView* DialogDelegate::GetDialogClientView() { - if (!GetWidget()) - return nullptr; - views::View* client_view = GetWidget()->client_view(); - return client_view->GetClassName() == DialogClientView::kViewClassName - ? static_cast(client_view) - : nullptr; + return const_cast( + const_cast(this)->GetDialogClientView()); } BubbleFrameView* DialogDelegate::GetBubbleFrameView() const { diff --git a/src/ui/views/window/dialog_delegate.h b/src/ui/views/window/dialog_delegate.h index edfda090a20a3..b5c54aa3753b2 --- a/src/ui/views/window/dialog_delegate.h +++ b/src/ui/views/window/dialog_delegate.h @@ -172,6 +172,13 @@ class VIEWS_EXPORT DialogDelegate : public WidgetDelegate { // will only be created when use_custom_frame() is true. BubbleFrameView* GetBubbleFrameView() const; + // A helper for accessing the DialogClientView object contained by this + // delegate's Window. This function can return nullptr if the |client_view| is + // a DialogClientView subclass which also has metadata or overrides + // GetClassName(). + const DialogClientView* GetDialogClientView() const; + DialogClientView* GetDialogClientView(); + // Helpers for accessing parts of the DialogClientView without needing to know // about DialogClientView. Do not call these before OnWidgetInitialized(). views::LabelButton* GetOkButton() const; @@ -310,11 +317,6 @@ class VIEWS_EXPORT DialogDelegate : public WidgetDelegate { std::unique_ptr DisownFootnoteView(); private: - // A helper for accessing the DialogClientView object contained by this - // delegate's Window. - const DialogClientView* GetDialogClientView() const; - DialogClientView* GetDialogClientView(); - // Runs a close callback, ensuring that at most one close callback is ever // run. void RunCloseCallback(base::OnceClosure callback); diff --git a/src/url/gurl.h b/src/url/gurl.h index 86a340a8c5554..54acb99ba6a7e --- a/src/url/gurl.h +++ b/src/url/gurl.h @@ -248,6 +248,13 @@ class COMPONENT_EXPORT(URL) GURL { return SchemeIs(url::kFileSystemScheme); } +#if BUILDFLAG(IS_OHOS) + // Resource URLs for ohos system + bool SchemeIsOhosResource() const { + return SchemeIs(url::kResourcesScheme); + } +#endif + // Returns true if the scheme indicates a network connection that uses TLS or // some other cryptographic protocol (e.g. QUIC) for security. // diff --git a/src/url/url_constants.cc b/src/url/url_constants.cc index 96850982c936e..7644f04e61c10 --- a/src/url/url_constants.cc +++ b/src/url/url_constants.cc @@ -55,6 +55,9 @@ const char16_t kWsScheme16[] = u"ws"; const char kWssScheme[] = "wss"; const char16_t kWssScheme16[] = u"wss"; +const char kResourcesScheme[] = "resource"; +const char16_t kResourcesScheme16[] = u"resource"; + const char kStandardSchemeSeparator[] = "://"; const char16_t kStandardSchemeSeparator16[] = u"://"; diff --git a/src/url/url_constants.h b/src/url/url_constants.h index 17226664244e8..6bddf8da75520 --- a/src/url/url_constants.h +++ b/src/url/url_constants.h @@ -59,6 +59,9 @@ COMPONENT_EXPORT(URL) extern const char16_t kWsScheme16[]; COMPONENT_EXPORT(URL) extern const char kWssScheme[]; COMPONENT_EXPORT(URL) extern const char16_t kWssScheme16[]; +COMPONENT_EXPORT(URL) extern const char kResourcesScheme[]; +COMPONENT_EXPORT(URL) extern const char16_t kResourcesScheme16[]; + // Used to separate a standard scheme and the hostname: "://". COMPONENT_EXPORT(URL) extern const char kStandardSchemeSeparator[]; COMPONENT_EXPORT(URL) extern const char16_t kStandardSchemeSeparator16[]; diff --git a/src/url/url_util.cc b/src/url/url_util.cc index 0fe4e301c7fda..ddfa2127ece5f --- a/src/url/url_util.cc +++ b/src/url/url_util.cc @@ -47,6 +47,7 @@ struct SchemeRegistry { {kWsScheme, SCHEME_WITH_HOST_PORT_AND_USER_INFORMATION}, // WebSocket. {kFileSystemScheme, SCHEME_WITHOUT_AUTHORITY}, {kQuicTransportScheme, SCHEME_WITH_HOST_AND_PORT}, + {kResourcesScheme, SCHEME_WITH_HOST}, }; // Schemes that are allowed for referrers. @@ -69,7 +70,7 @@ struct SchemeRegistry { // Schemes that normal pages cannot link to or access (i.e., with the same // security rules as those applied to "file" URLs). std::vector local_schemes = { - kFileScheme, + kFileScheme, kResourcesScheme, }; // Schemes that cause pages loaded with them to not have access to pages @@ -89,7 +90,7 @@ struct SchemeRegistry { // Schemes that can be used by web to store data (local storage, etc). std::vector web_storage_schemes = { - kHttpsScheme, kHttpScheme, kFileScheme, kFtpScheme, kWssScheme, kWsScheme, + kHttpsScheme, kHttpScheme, kFileScheme, kFtpScheme, kWssScheme, kWsScheme, kResourcesScheme }; // Schemes that can bypass the Content-Security-Policy (CSP) checks. diff --git a/src/v8/gni/v8.gni b/src/v8/gni/v8.gni index 19f5eeed262c8..974492a827e97 --- a/src/v8/gni/v8.gni +++ b/src/v8/gni/v8.gni @@ -87,7 +87,7 @@ declare_args() { # Enable advanced BigInt algorithms, costing about 10-30 KB binary size # depending on platform. Disabled on Android to save binary size. - v8_advanced_bigint_algorithms = !is_android + v8_advanced_bigint_algorithms = !is_android && !is_ohos } if (v8_use_external_startup_data == "") { @@ -139,7 +139,8 @@ if (is_debug && !v8_optimized_debug) { # TODO(crbug.com/621335) Rework this so that we don't have the confusion # between "optimize_speed" and "optimize_max". - if (((is_posix && !is_android) || is_fuchsia) && !using_sanitizer) { + if (((is_posix && !is_android && !is_ohos) || is_fuchsia) && + !using_sanitizer) { v8_add_configs += [ "//build/config/compiler:optimize_speed" ] } else { v8_add_configs += [ "//build/config/compiler:optimize_max" ] diff --git a/src/v8/src/ast/scopes.cc b/src/v8/src/ast/scopes.cc index 3d5d92ae8b306..971ca2e1d31c4 --- a/src/v8/src/ast/scopes.cc +++ b/src/v8/src/ast/scopes.cc @@ -840,9 +840,8 @@ void DeclarationScope::AddLocal(Variable* var) { } void Scope::Snapshot::Reparent(DeclarationScope* new_parent) { - DCHECK(!IsCleared()); - DCHECK_EQ(new_parent, outer_scope_and_calls_eval_.GetPointer()->inner_scope_); - DCHECK_EQ(new_parent->outer_scope_, outer_scope_and_calls_eval_.GetPointer()); + DCHECK_EQ(new_parent, outer_scope_->inner_scope_); + DCHECK_EQ(new_parent->outer_scope_, outer_scope_); DCHECK_EQ(new_parent, new_parent->GetClosureScope()); DCHECK_NULL(new_parent->inner_scope_); DCHECK(new_parent->unresolved_list_.is_empty()); @@ -867,12 +866,11 @@ void Scope::Snapshot::Reparent(DeclarationScope* new_parent) { new_parent->sibling_ = top_inner_scope_; } - Scope* outer_scope = outer_scope_and_calls_eval_.GetPointer(); - new_parent->unresolved_list_.MoveTail(&outer_scope->unresolved_list_, + new_parent->unresolved_list_.MoveTail(&outer_scope_->unresolved_list_, top_unresolved_); // Move temporaries allocated for complex parameter initializers. - DeclarationScope* outer_closure = outer_scope->GetClosureScope(); + DeclarationScope* outer_closure = outer_scope_->GetClosureScope(); for (auto it = top_local_; it != outer_closure->locals()->end(); ++it) { Variable* local = *it; DCHECK_EQ(VariableMode::kTemporary, local->mode()); @@ -884,16 +882,10 @@ void Scope::Snapshot::Reparent(DeclarationScope* new_parent) { outer_closure->locals_.Rewind(top_local_); // Move eval calls since Snapshot's creation into new_parent. - if (outer_scope_and_calls_eval_->calls_eval_) { - new_parent->RecordDeclarationScopeEvalCall(); - new_parent->inner_scope_calls_eval_ = true; + if (outer_scope_->calls_eval_) { + new_parent->RecordEvalCall(); + declaration_scope_->sloppy_eval_can_extend_vars_ = false; } - - // We are in the arrow function case. The calls eval we may have recorded - // is intended for the inner scope and we should simply restore the - // original "calls eval" flag of the outer scope. - RestoreEvalFlag(); - Clear(); } void Scope::ReplaceOuterScope(Scope* outer) { @@ -2510,6 +2502,9 @@ void Scope::AllocateVariablesRecursively() { this->ForEach([](Scope* scope) -> Iteration { DCHECK(!scope->already_resolved_); if (WasLazilyParsed(scope)) return Iteration::kContinue; + if (scope->sloppy_eval_can_extend_vars_) { + scope->num_heap_slots_ = Context::MIN_CONTEXT_EXTENDED_SLOTS; + } DCHECK_EQ(scope->ContextHeaderLength(), scope->num_heap_slots_); // Allocate variables for this scope. diff --git a/src/v8/src/ast/scopes.h b/src/v8/src/ast/scopes.h index dd1a693255551..de11f6e69e717 --- a/src/v8/src/ast/scopes.h +++ b/src/v8/src/ast/scopes.h @@ -107,12 +107,6 @@ class V8_EXPORT_PRIVATE Scope : public NON_EXPORTED_BASE(ZoneObject) { class Snapshot final { public: - Snapshot() - : outer_scope_and_calls_eval_(nullptr, false), - top_unresolved_(), - top_local_() { - DCHECK(IsCleared()); - } inline explicit Snapshot(Scope* scope); // Disallow copy and move. @@ -120,45 +114,31 @@ class V8_EXPORT_PRIVATE Scope : public NON_EXPORTED_BASE(ZoneObject) { Snapshot(Snapshot&&) = delete; ~Snapshot() { - // If we're still active, there was no arrow function. In that case outer - // calls eval if it already called eval before this snapshot started, or - // if the code during the snapshot called eval. - if (!IsCleared() && outer_scope_and_calls_eval_.GetPayload()) { - RestoreEvalFlag(); + // Restore eval flags from before the scope was active. + if (sloppy_eval_can_extend_vars_) { + declaration_scope_->sloppy_eval_can_extend_vars_ = true; } - } - - void RestoreEvalFlag() { - if (outer_scope_and_calls_eval_.GetPayload()) { - // This recreates both calls_eval and sloppy_eval_can_extend_vars. - outer_scope_and_calls_eval_.GetPointer()->RecordEvalCall(); + if (calls_eval_) { + outer_scope_->calls_eval_ = true; } } void Reparent(DeclarationScope* new_parent); - bool IsCleared() const { - return outer_scope_and_calls_eval_.GetPointer() == nullptr; - } - - void Clear() { - outer_scope_and_calls_eval_.SetPointer(nullptr); -#ifdef DEBUG - outer_scope_and_calls_eval_.SetPayload(false); - top_inner_scope_ = nullptr; - top_local_ = base::ThreadedList::Iterator(); - top_unresolved_ = UnresolvedList::Iterator(); -#endif - } private: - // During tracking calls_eval caches whether the outer scope called eval. - // Upon move assignment we store whether the new inner scope calls eval into - // the move target calls_eval bit, and restore calls eval on the outer - // scope. - PointerWithPayload outer_scope_and_calls_eval_; + Scope* outer_scope_; + Scope* declaration_scope_; Scope* top_inner_scope_; UnresolvedList::Iterator top_unresolved_; base::ThreadedList::Iterator top_local_; + // While the scope is active, the scope caches the flag values for + // outer_scope_ / declaration_scope_ they can be used to know what happened + // while parsing the arrow head. If this turns out to be an arrow head, new + // values on the respective scopes will be cleared and moved to the inner + // scope. Otherwise the cached flags will be merged with the flags from the + // arrow head. + bool calls_eval_; + bool sloppy_eval_can_extend_vars_; }; enum class DeserializationMode { kIncludingVariables, kScopesOnly }; @@ -884,8 +864,8 @@ class V8_EXPORT_PRIVATE DeclarationScope : public Scope { void RecordDeclarationScopeEvalCall() { calls_eval_ = true; - // If this isn't a sloppy eval, we don't care about it. - if (language_mode() != LanguageMode::kSloppy) return; + // The caller already checked whether we're in sloppy mode. + CHECK(is_sloppy(language_mode())); // Sloppy eval in script scopes can only introduce global variables anyway, // so we don't care that it calls sloppy eval. @@ -919,7 +899,6 @@ class V8_EXPORT_PRIVATE DeclarationScope : public Scope { } sloppy_eval_can_extend_vars_ = true; - num_heap_slots_ = Context::MIN_CONTEXT_EXTENDED_SLOTS; } bool sloppy_eval_can_extend_vars() const { @@ -1337,7 +1316,9 @@ class V8_EXPORT_PRIVATE DeclarationScope : public Scope { void Scope::RecordEvalCall() { calls_eval_ = true; - GetDeclarationScope()->RecordDeclarationScopeEvalCall(); + if (is_sloppy(language_mode())) { + GetDeclarationScope()->RecordDeclarationScopeEvalCall(); + } RecordInnerScopeEvalCall(); // The eval contents might access "super" (if it's inside a function that // binds super). @@ -1350,14 +1331,18 @@ void Scope::RecordEvalCall() { } Scope::Snapshot::Snapshot(Scope* scope) - : outer_scope_and_calls_eval_(scope, scope->calls_eval_), + : outer_scope_(scope), + declaration_scope_(scope->GetDeclarationScope()), top_inner_scope_(scope->inner_scope_), top_unresolved_(scope->unresolved_list_.end()), - top_local_(scope->GetClosureScope()->locals_.end()) { - // Reset in order to record eval calls during this Snapshot's lifetime. - outer_scope_and_calls_eval_.GetPointer()->calls_eval_ = false; - outer_scope_and_calls_eval_.GetPointer()->sloppy_eval_can_extend_vars_ = - false; + top_local_(scope->GetClosureScope()->locals_.end()), + calls_eval_(outer_scope_->calls_eval_), + sloppy_eval_can_extend_vars_( + declaration_scope_->sloppy_eval_can_extend_vars_) { + // Reset in order to record (sloppy) eval calls during this Snapshot's + // lifetime. + outer_scope_->calls_eval_ = false; + declaration_scope_->sloppy_eval_can_extend_vars_ = false; } class ModuleScope final : public DeclarationScope { diff --git a/src/v8/src/compiler/access-info.cc b/src/v8/src/compiler/access-info.cc index 2356ba2cb8cf6..9424860b7676b --- a/src/v8/src/compiler/access-info.cc +++ b/src/v8/src/compiler/access-info.cc @@ -477,9 +477,15 @@ PropertyAccessInfo AccessInfoFactory::ComputeDataFieldAccessInfo( map, descriptor, details_representation)); } else if (details_representation.IsHeapObject()) { if (descriptors_field_type->IsNone()) { - // Store is not safe if the field type was cleared. - if (access_mode == AccessMode::kStore) { - return Invalid(); + switch (access_mode) { + case AccessMode::kStore: + case AccessMode::kStoreInLiteral: + case AccessMode::kDefine: + // Store is not safe if the field type was cleared. + return Invalid(); + case AccessMode::kLoad: + case AccessMode::kHas: + break; } // The field type was cleared by the GC, so we don't know anything diff --git a/src/v8/src/compiler/compilation-dependencies.cc b/src/v8/src/compiler/compilation-dependencies.cc index 6f5514289b764..62bd0f8c46d1e --- a/src/v8/src/compiler/compilation-dependencies.cc +++ b/src/v8/src/compiler/compilation-dependencies.cc @@ -35,7 +35,8 @@ namespace compiler { V(Protector) \ V(PrototypeProperty) \ V(StableMap) \ - V(Transition) + V(Transition) \ + V(ObjectSlotValue) CompilationDependencies::CompilationDependencies(JSHeapBroker* broker, Zone* zone) @@ -863,6 +864,42 @@ class ProtectorDependency final : public CompilationDependency { const PropertyCellRef cell_; }; +// Check that an object slot will not change during compilation. +class ObjectSlotValueDependency final : public CompilationDependency { + public: + explicit ObjectSlotValueDependency(const HeapObjectRef& object, int offset, + const ObjectRef& value) + : CompilationDependency(kObjectSlotValue), + object_(object.object()), + offset_(offset), + value_(value.object()) {} + + bool IsValid() const override { + PtrComprCageBase cage_base = GetPtrComprCageBase(*object_); + Object current_value = + offset_ == HeapObject::kMapOffset + ? object_->map() + : TaggedField::Relaxed_Load(cage_base, *object_, offset_); + return *value_ == current_value; + } + void Install(PendingDependencies* deps) const override {} + + private: + size_t Hash() const override { + return base::hash_combine(object_.address(), offset_, value_.address()); + } + + bool Equals(const CompilationDependency* that) const override { + const ObjectSlotValueDependency* const zat = that->AsObjectSlotValue(); + return object_->address() == zat->object_->address() && + offset_ == zat->offset_ && value_.address() == zat->value_.address(); + } + + Handle object_; + int offset_; + Handle value_; +}; + class ElementsKindDependency final : public CompilationDependency { public: ElementsKindDependency(const AllocationSiteRef& site, ElementsKind kind) @@ -1110,6 +1147,12 @@ void CompilationDependencies::DependOnElementsKind( } } +void CompilationDependencies::DependOnObjectSlotValue( + const HeapObjectRef& object, int offset, const ObjectRef& value) { + RecordDependency( + zone_->New(object, offset, value)); +} + void CompilationDependencies::DependOnOwnConstantElement( const JSObjectRef& holder, uint32_t index, const ObjectRef& element) { RecordDependency( diff --git a/src/v8/src/compiler/compilation-dependencies.h b/src/v8/src/compiler/compilation-dependencies.h index aa8ff7b82abd2..c6a18c400fe75 --- a/src/v8/src/compiler/compilation-dependencies.h +++ b/src/v8/src/compiler/compilation-dependencies.h @@ -93,6 +93,10 @@ class V8_EXPORT_PRIVATE CompilationDependencies : public ZoneObject { // Record the assumption that {site}'s {ElementsKind} doesn't change. void DependOnElementsKind(const AllocationSiteRef& site); + // Check that an object slot will not change during compilation. + void DependOnObjectSlotValue(const HeapObjectRef& object, int offset, + const ObjectRef& value); + void DependOnOwnConstantElement(const JSObjectRef& holder, uint32_t index, const ObjectRef& element); diff --git a/src/v8/src/compiler/effect-control-linearizer.cc b/src/v8/src/compiler/effect-control-linearizer.cc index bb932732c9692..e1ee380a68785 --- a/src/v8/src/compiler/effect-control-linearizer.cc +++ b/src/v8/src/compiler/effect-control-linearizer.cc @@ -5527,6 +5527,8 @@ Node* EffectControlLinearizer::LowerLoadFieldByIndex(Node* node) { auto if_double = __ MakeDeferredLabel(); auto done = __ MakeLabel(MachineRepresentation::kTagged); + auto loaded_field = __ MakeLabel(MachineRepresentation::kTagged); + auto done_double = __ MakeLabel(MachineRepresentation::kFloat64); // Check if field is a mutable double field. __ GotoIfNot(__ IntPtrEqual(__ WordAnd(index, one), zero), &if_double); @@ -5543,8 +5545,8 @@ Node* EffectControlLinearizer::LowerLoadFieldByIndex(Node* node) { Node* offset = __ IntAdd(__ WordShl(index, __ IntPtrConstant(kTaggedSizeLog2 - 1)), __ IntPtrConstant(JSObject::kHeaderSize - kHeapObjectTag)); - Node* result = __ Load(MachineType::AnyTagged(), object, offset); - __ Goto(&done, result); + Node* field = __ Load(MachineType::AnyTagged(), object, offset); + __ Goto(&loaded_field, field); } // The field is located in the properties backing store of {object}. @@ -5558,8 +5560,8 @@ Node* EffectControlLinearizer::LowerLoadFieldByIndex(Node* node) { __ IntPtrConstant(kTaggedSizeLog2 - 1)), __ IntPtrConstant((FixedArray::kHeaderSize - kTaggedSize) - kHeapObjectTag)); - Node* result = __ Load(MachineType::AnyTagged(), properties, offset); - __ Goto(&done, result); + Node* field = __ Load(MachineType::AnyTagged(), properties, offset); + __ Goto(&loaded_field, field); } } @@ -5567,9 +5569,6 @@ Node* EffectControlLinearizer::LowerLoadFieldByIndex(Node* node) { // architectures, or a mutable HeapNumber. __ Bind(&if_double); { - auto loaded_field = __ MakeLabel(MachineRepresentation::kTagged); - auto done_double = __ MakeLabel(MachineRepresentation::kFloat64); - index = __ WordSar(index, one); // Check if field is in-object or out-of-object. @@ -5597,27 +5596,27 @@ Node* EffectControlLinearizer::LowerLoadFieldByIndex(Node* node) { Node* field = __ Load(MachineType::AnyTagged(), properties, offset); __ Goto(&loaded_field, field); } + } - __ Bind(&loaded_field); - { - Node* field = loaded_field.PhiAt(0); - // We may have transitioned in-place away from double, so check that - // this is a HeapNumber -- otherwise the load is fine and we don't need - // to copy anything anyway. - __ GotoIf(ObjectIsSmi(field), &done, field); - Node* field_map = __ LoadField(AccessBuilder::ForMap(), field); - __ GotoIfNot(__ TaggedEqual(field_map, __ HeapNumberMapConstant()), &done, - field); - - Node* value = __ LoadField(AccessBuilder::ForHeapNumberValue(), field); - __ Goto(&done_double, value); - } + __ Bind(&loaded_field); + { + Node* field = loaded_field.PhiAt(0); + // We may have transitioned in-place away from double, so check that + // this is a HeapNumber -- otherwise the load is fine and we don't need + // to copy anything anyway. + __ GotoIf(ObjectIsSmi(field), &done, field); + Node* field_map = __ LoadField(AccessBuilder::ForMap(), field); + __ GotoIfNot(__ TaggedEqual(field_map, __ HeapNumberMapConstant()), &done, + field); - __ Bind(&done_double); - { - Node* result = AllocateHeapNumberWithValue(done_double.PhiAt(0)); - __ Goto(&done, result); - } + Node* value = __ LoadField(AccessBuilder::ForHeapNumberValue(), field); + __ Goto(&done_double, value); + } + + __ Bind(&done_double); + { + Node* result = AllocateHeapNumberWithValue(done_double.PhiAt(0)); + __ Goto(&done, result); } __ Bind(&done); diff --git a/src/v8/src/compiler/js-create-lowering.cc b/src/v8/src/compiler/js-create-lowering.cc index fab65507ea056..25a2ec03d2f4a --- a/src/v8/src/compiler/js-create-lowering.cc +++ b/src/v8/src/compiler/js-create-lowering.cc @@ -1677,6 +1677,10 @@ base::Optional JSCreateLowering::TryAllocateFastLiteral( // Now that we hold the migration lock, get the current map. MapRef boilerplate_map = boilerplate.map(); + // Protect against concurrent changes to the boilerplate object by checking + // for an identical value at the end of the compilation. + dependencies()->DependOnObjectSlotValue(boilerplate, HeapObject::kMapOffset, + boilerplate_map); { base::Optional current_boilerplate_map = boilerplate.map_direct_read(); @@ -1841,10 +1845,18 @@ base::Optional JSCreateLowering::TryAllocateFastLiteralElements( boilerplate.elements(kRelaxedLoad); if (!maybe_boilerplate_elements.has_value()) return {}; FixedArrayBaseRef boilerplate_elements = maybe_boilerplate_elements.value(); + // Protect against concurrent changes to the boilerplate object by checking + // for an identical value at the end of the compilation. + dependencies()->DependOnObjectSlotValue( + boilerplate, JSObject::kElementsOffset, boilerplate_elements); // Empty or copy-on-write elements just store a constant. int const elements_length = boilerplate_elements.length(); MapRef elements_map = boilerplate_elements.map(); + // Protect against concurrent changes to the boilerplate object by checking + // for an identical value at the end of the compilation. + dependencies()->DependOnObjectSlotValue(boilerplate_elements, + HeapObject::kMapOffset, elements_map); if (boilerplate_elements.length() == 0 || elements_map.IsFixedCowArrayMap()) { if (allocation == AllocationType::kOld && !boilerplate.IsElementsTenured(boilerplate_elements)) { diff --git a/src/v8/src/wasm/graph-builder-interface.cc b/src/v8/src/wasm/graph-builder-interface.cc index 61a3bc57c9651..25e7b0252f57a --- a/src/v8/src/wasm/graph-builder-interface.cc +++ b/src/v8/src/wasm/graph-builder-interface.cc @@ -87,6 +87,7 @@ class WasmGraphBuildingInterface { struct TryInfo : public ZoneObject { SsaEnv* catch_env; TFNode* exception = nullptr; + bool first_catch = true; bool might_throw() const { return exception != nullptr; } @@ -865,6 +866,10 @@ class WasmGraphBuildingInterface { TFNode* exception = block->try_info->exception; SetEnv(block->try_info->catch_env); + if (block->try_info->first_catch) { + LoadContextIntoSsa(ssa_env_); + block->try_info->first_catch = false; + } TFNode* if_catch = nullptr; TFNode* if_no_catch = nullptr; @@ -942,6 +947,9 @@ class WasmGraphBuildingInterface { } SetEnv(block->try_info->catch_env); + if (block->try_info->first_catch) { + LoadContextIntoSsa(ssa_env_); + } } void AtomicOp(FullDecoder* decoder, WasmOpcode opcode,