mirror of
https://bitbucket.org/chromiumembedded/cef
synced 2025-06-05 21:39:12 +02:00
Compare commits
44 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
21130e0144 | ||
|
91e8c06f29 | ||
|
749b4d4340 | ||
|
fcd259c3e0 | ||
|
a61da9b80c | ||
|
9cc8df1534 | ||
|
aa348cb3de | ||
|
75c3bf0480 | ||
|
a8d552a01b | ||
|
89aff51c04 | ||
|
4e9a80a23d | ||
|
557c3ad6e7 | ||
|
521608d3c2 | ||
|
d1d2d6a532 | ||
|
419ffdb122 | ||
|
5dbfe13ac8 | ||
|
061204d5be | ||
|
cf87de98bc | ||
|
ed5af5272d | ||
|
be022e26bc | ||
|
096e3eb30d | ||
|
7bcc232ecf | ||
|
30c8e3634d | ||
|
82da225a9f | ||
|
e43eab3229 | ||
|
6355aaf33b | ||
|
e53bff712a | ||
|
b854992ae6 | ||
|
5042d71408 | ||
|
695ee2a041 | ||
|
cf8b7db4b4 | ||
|
5d8c6799fc | ||
|
bd368f5d3a | ||
|
87a04aba03 | ||
|
df4dddee0b | ||
|
eb63f9e7ae | ||
|
29b5999fd7 | ||
|
5707889555 | ||
|
ecdfd467f8 | ||
|
e5334a5a18 | ||
|
e5c4b27366 | ||
|
c18545a7f5 | ||
|
dc9e64308a | ||
|
b8e1c6a59d |
10
BUILD.gn
10
BUILD.gn
@@ -801,6 +801,7 @@ source_set("libcef_static") {
|
||||
"libcef/browser/views/view_util.cc",
|
||||
"libcef/browser/views/view_util.h",
|
||||
"libcef/browser/views/view_view.h",
|
||||
"libcef/browser/views/widget_destruction_observer.h",
|
||||
"libcef/browser/views/window_impl.cc",
|
||||
"libcef/browser/views/window_impl.h",
|
||||
"libcef/browser/views/window_view.cc",
|
||||
@@ -1156,6 +1157,8 @@ source_set("libcef_static") {
|
||||
"//chrome/app/chrome_main_mac.h",
|
||||
"//chrome/app/chrome_main_mac.mm",
|
||||
]
|
||||
|
||||
configs += [ "//build/config/compiler:enable_arc" ]
|
||||
}
|
||||
|
||||
if (ozone_platform_x11) {
|
||||
@@ -1351,9 +1354,10 @@ make_pack_header("resources") {
|
||||
"$root_gen_dir/content/browser/tracing/grit/tracing_resources.h",
|
||||
"$root_gen_dir/content/browser/webrtc/resources/grit/webrtc_internals_resources.h",
|
||||
"$root_gen_dir/content/grit/content_resources.h",
|
||||
"$root_gen_dir/content/grit/dev_ui_content_resources.h",
|
||||
"$root_gen_dir/content/grit/gpu_resources.h",
|
||||
"$root_gen_dir/content/grit/histograms_resources.h",
|
||||
"$root_gen_dir/content/grit/process_resources.h",
|
||||
"$root_gen_dir/content/grit/service_worker_resources.h",
|
||||
"$root_gen_dir/extensions/grit/extensions_browser_resources.h",
|
||||
"$root_gen_dir/extensions/grit/extensions_renderer_resources.h",
|
||||
"$root_gen_dir/extensions/grit/extensions_resources.h",
|
||||
@@ -1379,10 +1383,11 @@ make_pack_header("resources") {
|
||||
"//content/browser/devtools:devtools_resources",
|
||||
"//content/browser/resources/gpu:resources",
|
||||
"//content/browser/resources/histograms:resources",
|
||||
"//content/browser/resources/process:resources",
|
||||
"//content/browser/resources/service_worker:resources",
|
||||
"//content/browser/tracing:resources",
|
||||
"//content/browser/webrtc/resources",
|
||||
"//content:content_resources",
|
||||
"//content:dev_ui_content_resources",
|
||||
"//extensions:extensions_browser_resources",
|
||||
"//extensions:extensions_renderer_resources",
|
||||
"//extensions:extensions_resources_grd",
|
||||
@@ -1602,6 +1607,7 @@ if (is_mac) {
|
||||
|
||||
configs += [
|
||||
":libcef_autogen_config",
|
||||
"//build/config/compiler:enable_arc",
|
||||
]
|
||||
|
||||
# We don't link the framework so just use the path from the main executable.
|
||||
|
@@ -7,6 +7,6 @@
|
||||
# https://bitbucket.org/chromiumembedded/cef/wiki/BranchesAndBuilding
|
||||
|
||||
{
|
||||
'chromium_checkout': 'refs/tags/114.0.5735.201',
|
||||
'depot_tools_checkout': '7ee8e6c7cb'
|
||||
'chromium_checkout': 'refs/tags/115.0.5790.173',
|
||||
'depot_tools_checkout': '6d0c235dae'
|
||||
}
|
||||
|
@@ -8,7 +8,6 @@
|
||||
'include/base/cef_atomic_flag.h',
|
||||
'include/base/cef_atomic_ref_count.h',
|
||||
'include/base/cef_auto_reset.h',
|
||||
'include/base/cef_basictypes.h',
|
||||
'include/base/cef_bind.h',
|
||||
'include/base/cef_build.h',
|
||||
'include/base/cef_callback.h',
|
||||
@@ -55,6 +54,7 @@
|
||||
'include/internal/cef_time.h',
|
||||
'include/internal/cef_trace_event_internal.h',
|
||||
'include/internal/cef_types.h',
|
||||
'include/internal/cef_types_content_settings.h',
|
||||
'include/internal/cef_types_geometry.h',
|
||||
],
|
||||
'includes_capi': [
|
||||
|
@@ -1,86 +0,0 @@
|
||||
// Copyright (c) 2014 Marshall A. Greenblatt. Portions copyright (c) 2012
|
||||
// Google Inc. 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.
|
||||
|
||||
#ifndef CEF_INCLUDE_BASE_CEF_BASICTYPES_H_
|
||||
#define CEF_INCLUDE_BASE_CEF_BASICTYPES_H_
|
||||
#pragma once
|
||||
|
||||
#include <limits.h> // For UINT_MAX
|
||||
#include <stddef.h> // For size_t
|
||||
|
||||
#include "include/base/cef_build.h"
|
||||
|
||||
// The NSPR system headers define 64-bit as |long| when possible, except on
|
||||
// Mac OS X. In order to not have typedef mismatches, we do the same on LP64.
|
||||
//
|
||||
// On Mac OS X, |long long| is used for 64-bit types for compatibility with
|
||||
// <inttypes.h> format macros even in the LP64 model.
|
||||
#if defined(__LP64__) && !defined(OS_MAC) && !defined(OS_OPENBSD)
|
||||
typedef long int64;
|
||||
typedef unsigned long uint64;
|
||||
#else
|
||||
typedef long long int64;
|
||||
typedef unsigned long long uint64;
|
||||
#endif
|
||||
|
||||
// TODO: Remove these type guards. These are to avoid conflicts with
|
||||
// obsolete/protypes.h in the Gecko SDK.
|
||||
#ifndef _INT32
|
||||
#define _INT32
|
||||
typedef int int32;
|
||||
#endif
|
||||
|
||||
// TODO: Remove these type guards. These are to avoid conflicts with
|
||||
// obsolete/protypes.h in the Gecko SDK.
|
||||
#ifndef _UINT32
|
||||
#define _UINT32
|
||||
typedef unsigned int uint32;
|
||||
#endif
|
||||
|
||||
#ifndef _INT16
|
||||
#define _INT16
|
||||
typedef short int16;
|
||||
#endif
|
||||
|
||||
#ifndef _UINT16
|
||||
#define _UINT16
|
||||
typedef unsigned short uint16;
|
||||
#endif
|
||||
|
||||
// UTF-16 character type.
|
||||
#ifndef char16
|
||||
#if defined(WCHAR_T_IS_UTF16)
|
||||
typedef wchar_t char16;
|
||||
#elif defined(WCHAR_T_IS_UTF32)
|
||||
typedef unsigned short char16;
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#endif // CEF_INCLUDE_BASE_CEF_BASICTYPES_H_
|
@@ -253,7 +253,7 @@
|
||||
// The compiler thinks std::string::const_iterator and "const char*" are
|
||||
// equivalent types.
|
||||
#define STD_STRING_ITERATOR_IS_CHAR_POINTER
|
||||
// The compiler thinks std::u16string::const_iterator and "char16*" are
|
||||
// The compiler thinks std::u16string::const_iterator and "char16_t*" are
|
||||
// equivalent types.
|
||||
#define BASE_STRING16_ITERATOR_IS_CHAR16_POINTER
|
||||
#endif
|
||||
|
@@ -723,6 +723,13 @@ std::ostream& operator<<(std::ostream& out, const wchar_t* wstr);
|
||||
inline std::ostream& operator<<(std::ostream& out, const std::wstring& wstr) {
|
||||
return out << wstr.c_str();
|
||||
}
|
||||
#if defined(WCHAR_T_IS_UTF32)
|
||||
std::ostream& operator<<(std::ostream& out, const char16_t* wstr);
|
||||
#elif defined(WCHAR_T_IS_UTF16)
|
||||
inline std::ostream& operator<<(std::ostream& out, const char16_t* wstr) {
|
||||
return operator<<(out, reinterpret_cast<const wchar_t*>(wstr));
|
||||
}
|
||||
#endif
|
||||
|
||||
// The NOTIMPLEMENTED() macro annotates codepaths which have
|
||||
// not been implemented yet.
|
||||
|
@@ -43,7 +43,6 @@
|
||||
// If the Chromium implementation diverges the below implementation should be
|
||||
// updated to match.
|
||||
|
||||
#include "include/base/cef_basictypes.h"
|
||||
#include "include/base/cef_build.h"
|
||||
#include "include/internal/cef_thread_internal.h"
|
||||
|
||||
|
@@ -145,14 +145,6 @@
|
||||
/// free(str); // Trace system now has dangling pointer
|
||||
/// </pre>
|
||||
///
|
||||
/// To avoid this issue with the |name| and |arg_name| parameters, use the
|
||||
/// TRACE_EVENT_COPY_XXX overloads of the macros at additional runtime
|
||||
/// overhead.
|
||||
///
|
||||
/// Notes: The category must always be in a long-lived char* (i.e. static
|
||||
/// const). The |arg_values|, when used, are always deep copied with
|
||||
/// the _COPY macros.
|
||||
///
|
||||
///
|
||||
/// Thread Safety:
|
||||
/// All macros are thread safe and can be used from any process.
|
||||
@@ -179,15 +171,15 @@
|
||||
/// - category and name strings must have application lifetime (statics or
|
||||
/// literals). They may not include " chars.
|
||||
///
|
||||
#define TRACE_EVENT0(category, name) \
|
||||
cef_trace_event_begin(category, name, NULL, 0, NULL, 0, false); \
|
||||
#define TRACE_EVENT0(category, name) \
|
||||
cef_trace_event_begin(category, name, NULL, 0, NULL, 0); \
|
||||
CEF_INTERNAL_TRACE_END_ON_SCOPE_CLOSE(category, name)
|
||||
#define TRACE_EVENT1(category, name, arg1_name, arg1_val) \
|
||||
cef_trace_event_begin(category, name, arg1_name, arg1_val, NULL, 0, false); \
|
||||
#define TRACE_EVENT1(category, name, arg1_name, arg1_val) \
|
||||
cef_trace_event_begin(category, name, arg1_name, arg1_val, NULL, 0); \
|
||||
CEF_INTERNAL_TRACE_END_ON_SCOPE_CLOSE(category, name)
|
||||
#define TRACE_EVENT2(category, name, arg1_name, arg1_val, arg2_name, arg2_val) \
|
||||
cef_trace_event_begin(category, name, arg1_name, arg1_val, arg2_name, \
|
||||
arg2_val, false); \
|
||||
arg2_val); \
|
||||
CEF_INTERNAL_TRACE_END_ON_SCOPE_CLOSE(category, name)
|
||||
|
||||
// Implementation detail: trace event macros create temporary variable names.
|
||||
@@ -211,21 +203,13 @@
|
||||
/// literals). They may not include " chars.
|
||||
///
|
||||
#define TRACE_EVENT_INSTANT0(category, name) \
|
||||
cef_trace_event_instant(category, name, NULL, 0, NULL, 0, false)
|
||||
cef_trace_event_instant(category, name, NULL, 0, NULL, 0)
|
||||
#define TRACE_EVENT_INSTANT1(category, name, arg1_name, arg1_val) \
|
||||
cef_trace_event_instant(category, name, arg1_name, arg1_val, NULL, 0, false)
|
||||
cef_trace_event_instant(category, name, arg1_name, arg1_val, NULL, 0)
|
||||
#define TRACE_EVENT_INSTANT2(category, name, arg1_name, arg1_val, arg2_name, \
|
||||
arg2_val) \
|
||||
cef_trace_event_instant(category, name, arg1_name, arg1_val, arg2_name, \
|
||||
arg2_val, false)
|
||||
#define TRACE_EVENT_COPY_INSTANT0(category, name) \
|
||||
cef_trace_event_instant(category, name, NULL, 0, NULL, 0, true)
|
||||
#define TRACE_EVENT_COPY_INSTANT1(category, name, arg1_name, arg1_val) \
|
||||
cef_trace_event_instant(category, name, arg1_name, arg1_val, NULL, 0, true)
|
||||
#define TRACE_EVENT_COPY_INSTANT2(category, name, arg1_name, arg1_val, \
|
||||
arg2_name, arg2_val) \
|
||||
cef_trace_event_instant(category, name, arg1_name, arg1_val, arg2_name, \
|
||||
arg2_val, true)
|
||||
arg2_val)
|
||||
|
||||
///
|
||||
/// Records a single BEGIN event called "name" immediately, with 0, 1 or 2
|
||||
@@ -235,21 +219,13 @@
|
||||
/// literals). They may not include " chars.
|
||||
///
|
||||
#define TRACE_EVENT_BEGIN0(category, name) \
|
||||
cef_trace_event_begin(category, name, NULL, 0, NULL, 0, false)
|
||||
cef_trace_event_begin(category, name, NULL, 0, NULL, 0)
|
||||
#define TRACE_EVENT_BEGIN1(category, name, arg1_name, arg1_val) \
|
||||
cef_trace_event_begin(category, name, arg1_name, arg1_val, NULL, 0, false)
|
||||
cef_trace_event_begin(category, name, arg1_name, arg1_val, NULL, 0)
|
||||
#define TRACE_EVENT_BEGIN2(category, name, arg1_name, arg1_val, arg2_name, \
|
||||
arg2_val) \
|
||||
cef_trace_event_begin(category, name, arg1_name, arg1_val, arg2_name, \
|
||||
arg2_val, false)
|
||||
#define TRACE_EVENT_COPY_BEGIN0(category, name) \
|
||||
cef_trace_event_begin(category, name, NULL, 0, NULL, 0, true)
|
||||
#define TRACE_EVENT_COPY_BEGIN1(category, name, arg1_name, arg1_val) \
|
||||
cef_trace_event_begin(category, name, arg1_name, arg1_val, NULL, 0, true)
|
||||
#define TRACE_EVENT_COPY_BEGIN2(category, name, arg1_name, arg1_val, \
|
||||
arg2_name, arg2_val) \
|
||||
cef_trace_event_begin(category, name, arg1_name, arg1_val, arg2_name, \
|
||||
arg2_val, true)
|
||||
arg2_val)
|
||||
|
||||
///
|
||||
/// Records a single END event for "name" immediately. If the category
|
||||
@@ -258,21 +234,12 @@
|
||||
/// literals). They may not include " chars.
|
||||
///
|
||||
#define TRACE_EVENT_END0(category, name) \
|
||||
cef_trace_event_end(category, name, NULL, 0, NULL, 0, false)
|
||||
cef_trace_event_end(category, name, NULL, 0, NULL, 0)
|
||||
#define TRACE_EVENT_END1(category, name, arg1_name, arg1_val) \
|
||||
cef_trace_event_end(category, name, arg1_name, arg1_val, NULL, 0, false)
|
||||
cef_trace_event_end(category, name, arg1_name, arg1_val, NULL, 0)
|
||||
#define TRACE_EVENT_END2(category, name, arg1_name, arg1_val, arg2_name, \
|
||||
arg2_val) \
|
||||
cef_trace_event_end(category, name, arg1_name, arg1_val, arg2_name, \
|
||||
arg2_val, false)
|
||||
#define TRACE_EVENT_COPY_END0(category, name) \
|
||||
cef_trace_event_end(category, name, NULL, 0, NULL, 0, true)
|
||||
#define TRACE_EVENT_COPY_END1(category, name, arg1_name, arg1_val) \
|
||||
cef_trace_event_end(category, name, arg1_name, arg1_val, NULL, 0, true)
|
||||
#define TRACE_EVENT_COPY_END2(category, name, arg1_name, arg1_val, arg2_name, \
|
||||
arg2_val) \
|
||||
cef_trace_event_end(category, name, arg1_name, arg1_val, arg2_name, \
|
||||
arg2_val, true)
|
||||
cef_trace_event_end(category, name, arg1_name, arg1_val, arg2_name, arg2_val)
|
||||
|
||||
///
|
||||
/// Records the value of a counter called "name" immediately. Value
|
||||
@@ -281,9 +248,7 @@
|
||||
/// literals). They may not include " chars.
|
||||
///
|
||||
#define TRACE_COUNTER1(category, name, value) \
|
||||
cef_trace_counter(category, name, NULL, value, NULL, 0, false)
|
||||
#define TRACE_COPY_COUNTER1(category, name, value) \
|
||||
cef_trace_counter(category, name, NULL, value, NULL, 0, true)
|
||||
cef_trace_counter(category, name, NULL, value, NULL, 0)
|
||||
|
||||
///
|
||||
/// Records the values of a multi-parted counter called "name" immediately.
|
||||
@@ -295,11 +260,7 @@
|
||||
#define TRACE_COUNTER2(category, name, value1_name, value1_val, value2_name, \
|
||||
value2_val) \
|
||||
cef_trace_counter(category, name, value1_name, value1_val, value2_name, \
|
||||
value2_val, false)
|
||||
#define TRACE_COPY_COUNTER2(category, name, value1_name, value1_val, \
|
||||
value2_name, value2_val) \
|
||||
cef_trace_counter(category, name, value1_name, value1_val, value2_name, \
|
||||
value2_val, true)
|
||||
value2_val)
|
||||
|
||||
///
|
||||
/// Records the value of a counter called "name" immediately. Value
|
||||
@@ -312,9 +273,7 @@
|
||||
/// on two different processes will not collide.
|
||||
///
|
||||
#define TRACE_COUNTER_ID1(category, name, id, value) \
|
||||
cef_trace_counter_id(category, name, id, NULL, value, NULL, 0, false)
|
||||
#define TRACE_COPY_COUNTER_ID1(category, name, id, value) \
|
||||
cef_trace_counter_id(category, name, id, NULL, value, NULL, 0, true)
|
||||
cef_trace_counter_id(category, name, id, NULL, value, NULL, 0)
|
||||
|
||||
///
|
||||
/// Records the values of a multi-parted counter called "name" immediately.
|
||||
@@ -330,11 +289,7 @@
|
||||
#define TRACE_COUNTER_ID2(category, name, id, value1_name, value1_val, \
|
||||
value2_name, value2_val) \
|
||||
cef_trace_counter_id(category, name, id, value1_name, value1_val, \
|
||||
value2_name, value2_val, false)
|
||||
#define TRACE_COPY_COUNTER_ID2(category, name, id, value1_name, value1_val, \
|
||||
value2_name, value2_val) \
|
||||
cef_trace_counter_id(category, name, id, value1_name, value1_val, \
|
||||
value2_name, value2_val, true)
|
||||
value2_name, value2_val)
|
||||
|
||||
///
|
||||
/// Records a single ASYNC_BEGIN event called "name" immediately, with 0, 1 or 2
|
||||
@@ -355,23 +310,13 @@
|
||||
/// args.
|
||||
///
|
||||
#define TRACE_EVENT_ASYNC_BEGIN0(category, name, id) \
|
||||
cef_trace_event_async_begin(category, name, id, NULL, 0, NULL, 0, false)
|
||||
#define TRACE_EVENT_ASYNC_BEGIN1(category, name, id, arg1_name, arg1_val) \
|
||||
cef_trace_event_async_begin(category, name, id, arg1_name, arg1_val, NULL, \
|
||||
0, false)
|
||||
cef_trace_event_async_begin(category, name, id, NULL, 0, NULL, 0)
|
||||
#define TRACE_EVENT_ASYNC_BEGIN1(category, name, id, arg1_name, arg1_val) \
|
||||
cef_trace_event_async_begin(category, name, id, arg1_name, arg1_val, NULL, 0)
|
||||
#define TRACE_EVENT_ASYNC_BEGIN2(category, name, id, arg1_name, arg1_val, \
|
||||
arg2_name, arg2_val) \
|
||||
cef_trace_event_async_begin(category, name, id, arg1_name, arg1_val, \
|
||||
arg2_name, arg2_val, false)
|
||||
#define TRACE_EVENT_COPY_ASYNC_BEGIN0(category, name, id) \
|
||||
cef_trace_event_async_begin(category, name, id, NULL, 0, NULL, 0, true)
|
||||
#define TRACE_EVENT_COPY_ASYNC_BEGIN1(category, name, id, arg1_name, arg1_val) \
|
||||
cef_trace_event_async_begin(category, name, id, arg1_name, arg1_val, NULL, \
|
||||
0, true)
|
||||
#define TRACE_EVENT_COPY_ASYNC_BEGIN2(category, name, id, arg1_name, arg1_val, \
|
||||
arg2_name, arg2_val) \
|
||||
cef_trace_event_async_begin(category, name, id, arg1_name, arg1_val, \
|
||||
arg2_name, arg2_val, true)
|
||||
arg2_name, arg2_val)
|
||||
|
||||
///
|
||||
/// Records a single ASYNC_STEP_INTO event for |step| immediately. If the
|
||||
@@ -382,17 +327,10 @@
|
||||
/// ASYNC_STEP_PAST events.
|
||||
///
|
||||
#define TRACE_EVENT_ASYNC_STEP_INTO0(category, name, id, step) \
|
||||
cef_trace_event_async_step_into(category, name, id, step, NULL, 0, false)
|
||||
cef_trace_event_async_step_into(category, name, id, step, NULL, 0)
|
||||
#define TRACE_EVENT_ASYNC_STEP_INTO1(category, name, id, step, arg1_name, \
|
||||
arg1_val) \
|
||||
cef_trace_event_async_step_into(category, name, id, step, arg1_name, \
|
||||
arg1_val, false)
|
||||
#define TRACE_EVENT_COPY_ASYNC_STEP_INTO0(category, name, id, step) \
|
||||
cef_trace_event_async_step_into(category, name, id, step, NULL, 0, true)
|
||||
#define TRACE_EVENT_COPY_ASYNC_STEP_INTO1(category, name, id, step, arg1_name, \
|
||||
arg1_val) \
|
||||
cef_trace_event_async_step_into(category, name, id, step, arg1_name, \
|
||||
arg1_val, true)
|
||||
cef_trace_event_async_step_into(category, name, id, step, arg1_name, arg1_val)
|
||||
|
||||
///
|
||||
/// Records a single ASYNC_STEP_PAST event for |step| immediately. If the
|
||||
@@ -403,40 +341,23 @@
|
||||
/// ASYNC_STEP_INTO events.
|
||||
///
|
||||
#define TRACE_EVENT_ASYNC_STEP_PAST0(category, name, id, step) \
|
||||
cef_trace_event_async_step_past(category, name, id, step, NULL, 0, false)
|
||||
cef_trace_event_async_step_past(category, name, id, step, NULL, 0)
|
||||
#define TRACE_EVENT_ASYNC_STEP_PAST1(category, name, id, step, arg1_name, \
|
||||
arg1_val) \
|
||||
cef_trace_event_async_step_past(category, name, id, step, arg1_name, \
|
||||
arg1_val, false)
|
||||
#define TRACE_EVENT_COPY_ASYNC_STEP_PAST0(category, name, id, step) \
|
||||
cef_trace_event_async_step_past(category, name, id, step, NULL, 0, true)
|
||||
#define TRACE_EVENT_COPY_ASYNC_STEP_PAST1(category, name, id, step, arg1_name, \
|
||||
arg1_val) \
|
||||
cef_trace_event_async_step_past(category, name, id, step, arg1_name, \
|
||||
arg1_val, true)
|
||||
cef_trace_event_async_step_past(category, name, id, step, arg1_name, arg1_val)
|
||||
|
||||
///
|
||||
/// Records a single ASYNC_END event for "name" immediately. If the category
|
||||
/// is not enabled, then this does nothing.
|
||||
///
|
||||
#define TRACE_EVENT_ASYNC_END0(category, name, id) \
|
||||
cef_trace_event_async_end(category, name, id, NULL, 0, NULL, 0, false)
|
||||
#define TRACE_EVENT_ASYNC_END1(category, name, id, arg1_name, arg1_val) \
|
||||
cef_trace_event_async_end(category, name, id, arg1_name, arg1_val, NULL, 0, \
|
||||
false)
|
||||
cef_trace_event_async_end(category, name, id, NULL, 0, NULL, 0)
|
||||
#define TRACE_EVENT_ASYNC_END1(category, name, id, arg1_name, arg1_val) \
|
||||
cef_trace_event_async_end(category, name, id, arg1_name, arg1_val, NULL, 0)
|
||||
#define TRACE_EVENT_ASYNC_END2(category, name, id, arg1_name, arg1_val, \
|
||||
arg2_name, arg2_val) \
|
||||
cef_trace_event_async_end(category, name, id, arg1_name, arg1_val, \
|
||||
arg2_name, arg2_val, false)
|
||||
#define TRACE_EVENT_COPY_ASYNC_END0(category, name, id) \
|
||||
cef_trace_event_async_end(category, name, id, NULL, 0, NULL, 0, true)
|
||||
#define TRACE_EVENT_COPY_ASYNC_END1(category, name, id, arg1_name, arg1_val) \
|
||||
cef_trace_event_async_end(category, name, id, arg1_name, arg1_val, NULL, 0, \
|
||||
true)
|
||||
#define TRACE_EVENT_COPY_ASYNC_END2(category, name, id, arg1_name, arg1_val, \
|
||||
arg2_name, arg2_val) \
|
||||
cef_trace_event_async_end(category, name, id, arg1_name, arg1_val, \
|
||||
arg2_name, arg2_val, true)
|
||||
arg2_name, arg2_val)
|
||||
|
||||
namespace cef_trace_event {
|
||||
|
||||
@@ -448,7 +369,7 @@ class CefTraceEndOnScopeClose {
|
||||
CefTraceEndOnScopeClose(const char* category, const char* name)
|
||||
: category_(category), name_(name) {}
|
||||
~CefTraceEndOnScopeClose() {
|
||||
cef_trace_event_end(category_, name_, NULL, 0, NULL, 0, false);
|
||||
cef_trace_event_end(category_, name_, NULL, 0, NULL, 0);
|
||||
}
|
||||
|
||||
private:
|
||||
|
@@ -33,7 +33,7 @@
|
||||
// by hand. See the translator.README.txt file in the tools directory for
|
||||
// more information.
|
||||
//
|
||||
// $hash=936274d5539f225ff7adb7e0acba517fd9a8e2f8$
|
||||
// $hash=932c3ecb22fd26322d96d0e01459122aadafd302$
|
||||
//
|
||||
|
||||
#ifndef CEF_INCLUDE_CAPI_CEF_AUDIO_HANDLER_CAPI_H_
|
||||
@@ -93,7 +93,7 @@ typedef struct _cef_audio_handler_t {
|
||||
struct _cef_browser_t* browser,
|
||||
const float** data,
|
||||
int frames,
|
||||
int64 pts);
|
||||
int64_t pts);
|
||||
|
||||
///
|
||||
/// Called on the UI thread when the stream has stopped. OnAudioSteamStopped
|
||||
|
@@ -33,7 +33,7 @@
|
||||
// by hand. See the translator.README.txt file in the tools directory for
|
||||
// more information.
|
||||
//
|
||||
// $hash=7254c050cd7db2ff7d40a1f54c99e941dc592692$
|
||||
// $hash=683d7bff8da04826eee83c7e23cf9c5a701ae265$
|
||||
//
|
||||
|
||||
#ifndef CEF_INCLUDE_CAPI_CEF_BROWSER_CAPI_H_
|
||||
@@ -167,7 +167,7 @@ typedef struct _cef_browser_t {
|
||||
///
|
||||
struct _cef_frame_t*(CEF_CALLBACK* get_frame_byident)(
|
||||
struct _cef_browser_t* self,
|
||||
int64 identifier);
|
||||
int64_t identifier);
|
||||
|
||||
///
|
||||
/// Returns the frame with the specified name, or NULL if not found.
|
||||
@@ -185,7 +185,7 @@ typedef struct _cef_browser_t {
|
||||
///
|
||||
void(CEF_CALLBACK* get_frame_identifiers)(struct _cef_browser_t* self,
|
||||
size_t* identifiersCount,
|
||||
int64* identifiers);
|
||||
int64_t* identifiers);
|
||||
|
||||
///
|
||||
/// Returns the names of all existing frames.
|
||||
@@ -424,7 +424,7 @@ typedef struct _cef_browser_host_t {
|
||||
struct _cef_browser_host_t* self,
|
||||
const cef_string_t* image_url,
|
||||
int is_favicon,
|
||||
uint32 max_image_size,
|
||||
uint32_t max_image_size,
|
||||
int bypass_cache,
|
||||
struct _cef_download_image_callback_t* callback);
|
||||
|
||||
|
@@ -33,7 +33,7 @@
|
||||
// by hand. See the translator.README.txt file in the tools directory for
|
||||
// more information.
|
||||
//
|
||||
// $hash=4ef8b73a5218531b370fdd76c23153a1f83b7f7b$
|
||||
// $hash=a146316e075450f0a6f37cb45d14e15e0ac7be08$
|
||||
//
|
||||
|
||||
#ifndef CEF_INCLUDE_CAPI_CEF_BROWSER_PROCESS_HANDLER_CAPI_H_
|
||||
@@ -121,7 +121,7 @@ typedef struct _cef_browser_process_handler_t {
|
||||
///
|
||||
void(CEF_CALLBACK* on_schedule_message_pump_work)(
|
||||
struct _cef_browser_process_handler_t* self,
|
||||
int64 delay_ms);
|
||||
int64_t delay_ms);
|
||||
|
||||
///
|
||||
/// Return the default client for use with a newly created browser window. If
|
||||
|
@@ -33,7 +33,7 @@
|
||||
// by hand. See the translator.README.txt file in the tools directory for
|
||||
// more information.
|
||||
//
|
||||
// $hash=5c6e0b9e37b8103a182f200fccdf5973104fcd70$
|
||||
// $hash=22cfd717df9032a01214d9abfe3e0e51949b3319$
|
||||
//
|
||||
|
||||
#ifndef CEF_INCLUDE_CAPI_CEF_CRASH_UTIL_CAPI_H_
|
||||
@@ -90,7 +90,7 @@ extern "C" {
|
||||
/// If "AppName" is set on Windows then crash report information (metrics,
|
||||
/// database and dumps) will be stored locally on disk under the
|
||||
/// "C:\Users\[CurrentUser]\AppData\Local\[AppName]\User Data" folder. On other
|
||||
/// platforms the cef_settings_t.user_data_path value will be used.
|
||||
/// platforms the cef_settings_t.root_cache_path value will be used.
|
||||
///
|
||||
/// If "ExternalHandler" is set on Windows then the specified exe will be
|
||||
/// launched as the crashpad-handler instead of re-launching the main process
|
||||
|
@@ -33,7 +33,7 @@
|
||||
// by hand. See the translator.README.txt file in the tools directory for
|
||||
// more information.
|
||||
//
|
||||
// $hash=d9e9f4b914ae2d3b1ed83ae0d9e2e46e9e736af5$
|
||||
// $hash=c4ecfde5d6791400c4b3fd466e7d3676d51cf8d8$
|
||||
//
|
||||
|
||||
#ifndef CEF_INCLUDE_CAPI_CEF_DOWNLOAD_ITEM_CAPI_H_
|
||||
@@ -90,7 +90,7 @@ typedef struct _cef_download_item_t {
|
||||
///
|
||||
/// Returns a simple speed estimate in bytes/s.
|
||||
///
|
||||
int64(CEF_CALLBACK* get_current_speed)(struct _cef_download_item_t* self);
|
||||
int64_t(CEF_CALLBACK* get_current_speed)(struct _cef_download_item_t* self);
|
||||
|
||||
///
|
||||
/// Returns the rough percent complete or -1 if the receive total size is
|
||||
@@ -101,12 +101,12 @@ typedef struct _cef_download_item_t {
|
||||
///
|
||||
/// Returns the total number of bytes.
|
||||
///
|
||||
int64(CEF_CALLBACK* get_total_bytes)(struct _cef_download_item_t* self);
|
||||
int64_t(CEF_CALLBACK* get_total_bytes)(struct _cef_download_item_t* self);
|
||||
|
||||
///
|
||||
/// Returns the number of received bytes.
|
||||
///
|
||||
int64(CEF_CALLBACK* get_received_bytes)(struct _cef_download_item_t* self);
|
||||
int64_t(CEF_CALLBACK* get_received_bytes)(struct _cef_download_item_t* self);
|
||||
|
||||
///
|
||||
/// Returns the time that the download started.
|
||||
@@ -129,7 +129,7 @@ typedef struct _cef_download_item_t {
|
||||
///
|
||||
/// Returns the unique identifier for this download.
|
||||
///
|
||||
uint32(CEF_CALLBACK* get_id)(struct _cef_download_item_t* self);
|
||||
uint32_t(CEF_CALLBACK* get_id)(struct _cef_download_item_t* self);
|
||||
|
||||
///
|
||||
/// Returns the URL.
|
||||
|
@@ -33,7 +33,7 @@
|
||||
// by hand. See the translator.README.txt file in the tools directory for
|
||||
// more information.
|
||||
//
|
||||
// $hash=5bed8359f09a821f4b5ec8ebfad0aa5720bf39f9$
|
||||
// $hash=1ad87e4addc2f05497671bc59dc7fd315e0603f3$
|
||||
//
|
||||
|
||||
#ifndef CEF_INCLUDE_CAPI_CEF_FRAME_CAPI_H_
|
||||
@@ -181,7 +181,7 @@ typedef struct _cef_frame_t {
|
||||
/// Returns the globally unique identifier for this frame or < 0 if the
|
||||
/// underlying frame does not yet exist.
|
||||
///
|
||||
int64(CEF_CALLBACK* get_identifier)(struct _cef_frame_t* self);
|
||||
int64_t(CEF_CALLBACK* get_identifier)(struct _cef_frame_t* self);
|
||||
|
||||
///
|
||||
/// Returns the parent of this frame or NULL if this is the main (top-level)
|
||||
|
@@ -33,7 +33,7 @@
|
||||
// by hand. See the translator.README.txt file in the tools directory for
|
||||
// more information.
|
||||
//
|
||||
// $hash=bc44eb70b7f0b48e0646825e919cb9996ac99781$
|
||||
// $hash=012d76416d19b590f29c013c44ceec1674593022$
|
||||
//
|
||||
|
||||
#ifndef CEF_INCLUDE_CAPI_CEF_PERMISSION_HANDLER_CAPI_H_
|
||||
@@ -66,7 +66,7 @@ typedef struct _cef_media_access_callback_t {
|
||||
/// OnRequestMediaAccessPermission.
|
||||
///
|
||||
void(CEF_CALLBACK* cont)(struct _cef_media_access_callback_t* self,
|
||||
uint32 allowed_permissions);
|
||||
uint32_t allowed_permissions);
|
||||
|
||||
///
|
||||
/// Cancel the media access request.
|
||||
@@ -119,7 +119,7 @@ typedef struct _cef_permission_handler_t {
|
||||
struct _cef_browser_t* browser,
|
||||
struct _cef_frame_t* frame,
|
||||
const cef_string_t* requesting_origin,
|
||||
uint32 requested_permissions,
|
||||
uint32_t requested_permissions,
|
||||
struct _cef_media_access_callback_t* callback);
|
||||
|
||||
///
|
||||
@@ -136,9 +136,9 @@ typedef struct _cef_permission_handler_t {
|
||||
int(CEF_CALLBACK* on_show_permission_prompt)(
|
||||
struct _cef_permission_handler_t* self,
|
||||
struct _cef_browser_t* browser,
|
||||
uint64 prompt_id,
|
||||
uint64_t prompt_id,
|
||||
const cef_string_t* requesting_origin,
|
||||
uint32 requested_permissions,
|
||||
uint32_t requested_permissions,
|
||||
struct _cef_permission_prompt_callback_t* callback);
|
||||
|
||||
///
|
||||
@@ -153,7 +153,7 @@ typedef struct _cef_permission_handler_t {
|
||||
void(CEF_CALLBACK* on_dismiss_permission_prompt)(
|
||||
struct _cef_permission_handler_t* self,
|
||||
struct _cef_browser_t* browser,
|
||||
uint64 prompt_id,
|
||||
uint64_t prompt_id,
|
||||
cef_permission_request_result_t result);
|
||||
} cef_permission_handler_t;
|
||||
|
||||
|
@@ -33,7 +33,7 @@
|
||||
// by hand. See the translator.README.txt file in the tools directory for
|
||||
// more information.
|
||||
//
|
||||
// $hash=3339290cad3a77c8b0b07d422f0faf902a047838$
|
||||
// $hash=241f8b8ba0a4555f8ad8ed1d60345ae83d4d62f4$
|
||||
//
|
||||
|
||||
#ifndef CEF_INCLUDE_CAPI_CEF_REQUEST_CAPI_H_
|
||||
@@ -214,7 +214,7 @@ typedef struct _cef_request_t {
|
||||
/// in the browser process to track a single request across multiple
|
||||
/// callbacks.
|
||||
///
|
||||
uint64(CEF_CALLBACK* get_identifier)(struct _cef_request_t* self);
|
||||
uint64_t(CEF_CALLBACK* get_identifier)(struct _cef_request_t* self);
|
||||
} cef_request_t;
|
||||
|
||||
///
|
||||
|
@@ -33,7 +33,7 @@
|
||||
// by hand. See the translator.README.txt file in the tools directory for
|
||||
// more information.
|
||||
//
|
||||
// $hash=c2a6265e8e9acce475a8b5755a8c58b97b495207$
|
||||
// $hash=1c3c3dfb4bde6cd45278c6a80fbc53f624017c44$
|
||||
//
|
||||
|
||||
#ifndef CEF_INCLUDE_CAPI_CEF_REQUEST_CONTEXT_CAPI_H_
|
||||
@@ -46,6 +46,7 @@
|
||||
#include "include/capi/cef_extension_handler_capi.h"
|
||||
#include "include/capi/cef_media_router_capi.h"
|
||||
#include "include/capi/cef_preference_capi.h"
|
||||
#include "include/capi/cef_values_capi.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
@@ -301,6 +302,72 @@ typedef struct _cef_request_context_t {
|
||||
struct _cef_media_router_t*(CEF_CALLBACK* get_media_router)(
|
||||
struct _cef_request_context_t* self,
|
||||
struct _cef_completion_callback_t* callback);
|
||||
|
||||
///
|
||||
/// Returns the current value for |content_type| that applies for the
|
||||
/// specified URLs. If both URLs are NULL the default value will be returned.
|
||||
/// Returns nullptr if no value is configured. Must be called on the browser
|
||||
/// process UI thread.
|
||||
///
|
||||
struct _cef_value_t*(CEF_CALLBACK* get_website_setting)(
|
||||
struct _cef_request_context_t* self,
|
||||
const cef_string_t* requesting_url,
|
||||
const cef_string_t* top_level_url,
|
||||
cef_content_setting_types_t content_type);
|
||||
|
||||
///
|
||||
/// Sets the current value for |content_type| for the specified URLs in the
|
||||
/// default scope. If both URLs are NULL, and the context is not incognito,
|
||||
/// the default value will be set. Pass nullptr for |value| to remove the
|
||||
/// default value for this content type.
|
||||
///
|
||||
/// WARNING: Incorrect usage of this function may cause instability or
|
||||
/// security issues in Chromium. Make sure that you first understand the
|
||||
/// potential impact of any changes to |content_type| by reviewing the related
|
||||
/// source code in Chromium. For example, if you plan to modify
|
||||
/// CEF_CONTENT_SETTING_TYPE_POPUPS, first review and understand the usage of
|
||||
/// ContentSettingsType::POPUPS in Chromium:
|
||||
/// https://source.chromium.org/search?q=ContentSettingsType::POPUPS
|
||||
///
|
||||
void(CEF_CALLBACK* set_website_setting)(
|
||||
struct _cef_request_context_t* self,
|
||||
const cef_string_t* requesting_url,
|
||||
const cef_string_t* top_level_url,
|
||||
cef_content_setting_types_t content_type,
|
||||
struct _cef_value_t* value);
|
||||
|
||||
///
|
||||
/// Returns the current value for |content_type| that applies for the
|
||||
/// specified URLs. If both URLs are NULL the default value will be returned.
|
||||
/// Returns CEF_CONTENT_SETTING_VALUE_DEFAULT if no value is configured. Must
|
||||
/// be called on the browser process UI thread.
|
||||
///
|
||||
cef_content_setting_values_t(CEF_CALLBACK* get_content_setting)(
|
||||
struct _cef_request_context_t* self,
|
||||
const cef_string_t* requesting_url,
|
||||
const cef_string_t* top_level_url,
|
||||
cef_content_setting_types_t content_type);
|
||||
|
||||
///
|
||||
/// Sets the current value for |content_type| for the specified URLs in the
|
||||
/// default scope. If both URLs are NULL, and the context is not incognito,
|
||||
/// the default value will be set. Pass CEF_CONTENT_SETTING_VALUE_DEFAULT for
|
||||
/// |value| to use the default value for this content type.
|
||||
///
|
||||
/// WARNING: Incorrect usage of this function may cause instability or
|
||||
/// security issues in Chromium. Make sure that you first understand the
|
||||
/// potential impact of any changes to |content_type| by reviewing the related
|
||||
/// source code in Chromium. For example, if you plan to modify
|
||||
/// CEF_CONTENT_SETTING_TYPE_POPUPS, first review and understand the usage of
|
||||
/// ContentSettingsType::POPUPS in Chromium:
|
||||
/// https://source.chromium.org/search?q=ContentSettingsType::POPUPS
|
||||
///
|
||||
void(CEF_CALLBACK* set_content_setting)(
|
||||
struct _cef_request_context_t* self,
|
||||
const cef_string_t* requesting_url,
|
||||
const cef_string_t* top_level_url,
|
||||
cef_content_setting_types_t content_type,
|
||||
cef_content_setting_values_t value);
|
||||
} cef_request_context_t;
|
||||
|
||||
///
|
||||
|
@@ -33,7 +33,7 @@
|
||||
// by hand. See the translator.README.txt file in the tools directory for
|
||||
// more information.
|
||||
//
|
||||
// $hash=93e5c4f5e93f56b63b5944208300669dcecba972$
|
||||
// $hash=ca5c224b373452158904b0f859f126f36c927f93$
|
||||
//
|
||||
|
||||
#ifndef CEF_INCLUDE_CAPI_CEF_RESOURCE_HANDLER_CAPI_H_
|
||||
@@ -67,7 +67,7 @@ typedef struct _cef_resource_skip_callback_t {
|
||||
/// 0 the request will fail with ERR_REQUEST_RANGE_NOT_SATISFIABLE.
|
||||
///
|
||||
void(CEF_CALLBACK* cont)(struct _cef_resource_skip_callback_t* self,
|
||||
int64 bytes_skipped);
|
||||
int64_t bytes_skipped);
|
||||
} cef_resource_skip_callback_t;
|
||||
|
||||
///
|
||||
@@ -146,7 +146,7 @@ typedef struct _cef_resource_handler_t {
|
||||
///
|
||||
void(CEF_CALLBACK* get_response_headers)(struct _cef_resource_handler_t* self,
|
||||
struct _cef_response_t* response,
|
||||
int64* response_length,
|
||||
int64_t* response_length,
|
||||
cef_string_t* redirectUrl);
|
||||
|
||||
///
|
||||
@@ -159,8 +159,8 @@ typedef struct _cef_resource_handler_t {
|
||||
/// function will be called in sequence but not from a dedicated thread.
|
||||
///
|
||||
int(CEF_CALLBACK* skip)(struct _cef_resource_handler_t* self,
|
||||
int64 bytes_to_skip,
|
||||
int64* bytes_skipped,
|
||||
int64_t bytes_to_skip,
|
||||
int64_t* bytes_skipped,
|
||||
struct _cef_resource_skip_callback_t* callback);
|
||||
|
||||
///
|
||||
|
@@ -33,7 +33,7 @@
|
||||
// by hand. See the translator.README.txt file in the tools directory for
|
||||
// more information.
|
||||
//
|
||||
// $hash=70d6b393cbdc96a75864911d7ca3568cc8dcdebf$
|
||||
// $hash=757155e6dbceef47938fd562f7f5f48a609ce288$
|
||||
//
|
||||
|
||||
#ifndef CEF_INCLUDE_CAPI_CEF_RESOURCE_REQUEST_HANDLER_CAPI_H_
|
||||
@@ -188,7 +188,7 @@ typedef struct _cef_resource_request_handler_t {
|
||||
struct _cef_request_t* request,
|
||||
struct _cef_response_t* response,
|
||||
cef_urlrequest_status_t status,
|
||||
int64 received_content_length);
|
||||
int64_t received_content_length);
|
||||
|
||||
///
|
||||
/// Called on the IO thread to handle requests for URLs with an unknown
|
||||
|
@@ -33,7 +33,7 @@
|
||||
// by hand. See the translator.README.txt file in the tools directory for
|
||||
// more information.
|
||||
//
|
||||
// $hash=64e9ebc0e01acca0333ca3419e379d4053892270$
|
||||
// $hash=d0563a0850f6118c850ab01c553142d2e890703e$
|
||||
//
|
||||
|
||||
#ifndef CEF_INCLUDE_CAPI_CEF_SERVER_CAPI_H_
|
||||
@@ -153,7 +153,7 @@ typedef struct _cef_server_t {
|
||||
int connection_id,
|
||||
int response_code,
|
||||
const cef_string_t* content_type,
|
||||
int64 content_length,
|
||||
int64_t content_length,
|
||||
cef_string_multimap_t extra_headers);
|
||||
|
||||
///
|
||||
@@ -203,7 +203,7 @@ typedef struct _cef_server_t {
|
||||
/// server lifespan.
|
||||
///
|
||||
CEF_EXPORT void cef_server_create(const cef_string_t* address,
|
||||
uint16 port,
|
||||
uint16_t port,
|
||||
int backlog,
|
||||
struct _cef_server_handler_t* handler);
|
||||
|
||||
|
@@ -33,7 +33,7 @@
|
||||
// by hand. See the translator.README.txt file in the tools directory for
|
||||
// more information.
|
||||
//
|
||||
// $hash=bbb4153d5d7325ac9a410d7f85a8d47eadcfaf6e$
|
||||
// $hash=5632e62f83aac60e62db9d7f308563fed3285c65$
|
||||
//
|
||||
|
||||
#ifndef CEF_INCLUDE_CAPI_CEF_STREAM_CAPI_H_
|
||||
@@ -70,13 +70,13 @@ typedef struct _cef_read_handler_t {
|
||||
/// failure.
|
||||
///
|
||||
int(CEF_CALLBACK* seek)(struct _cef_read_handler_t* self,
|
||||
int64 offset,
|
||||
int64_t offset,
|
||||
int whence);
|
||||
|
||||
///
|
||||
/// Return the current offset position.
|
||||
///
|
||||
int64(CEF_CALLBACK* tell)(struct _cef_read_handler_t* self);
|
||||
int64_t(CEF_CALLBACK* tell)(struct _cef_read_handler_t* self);
|
||||
|
||||
///
|
||||
/// Return non-zero if at end of file.
|
||||
@@ -115,13 +115,13 @@ typedef struct _cef_stream_reader_t {
|
||||
/// failure.
|
||||
///
|
||||
int(CEF_CALLBACK* seek)(struct _cef_stream_reader_t* self,
|
||||
int64 offset,
|
||||
int64_t offset,
|
||||
int whence);
|
||||
|
||||
///
|
||||
/// Return the current offset position.
|
||||
///
|
||||
int64(CEF_CALLBACK* tell)(struct _cef_stream_reader_t* self);
|
||||
int64_t(CEF_CALLBACK* tell)(struct _cef_stream_reader_t* self);
|
||||
|
||||
///
|
||||
/// Return non-zero if at end of file.
|
||||
@@ -178,13 +178,13 @@ typedef struct _cef_write_handler_t {
|
||||
/// failure.
|
||||
///
|
||||
int(CEF_CALLBACK* seek)(struct _cef_write_handler_t* self,
|
||||
int64 offset,
|
||||
int64_t offset,
|
||||
int whence);
|
||||
|
||||
///
|
||||
/// Return the current offset position.
|
||||
///
|
||||
int64(CEF_CALLBACK* tell)(struct _cef_write_handler_t* self);
|
||||
int64_t(CEF_CALLBACK* tell)(struct _cef_write_handler_t* self);
|
||||
|
||||
///
|
||||
/// Flush the stream.
|
||||
@@ -223,13 +223,13 @@ typedef struct _cef_stream_writer_t {
|
||||
/// failure.
|
||||
///
|
||||
int(CEF_CALLBACK* seek)(struct _cef_stream_writer_t* self,
|
||||
int64 offset,
|
||||
int64_t offset,
|
||||
int whence);
|
||||
|
||||
///
|
||||
/// Return the current offset position.
|
||||
///
|
||||
int64(CEF_CALLBACK* tell)(struct _cef_stream_writer_t* self);
|
||||
int64_t(CEF_CALLBACK* tell)(struct _cef_stream_writer_t* self);
|
||||
|
||||
///
|
||||
/// Flush the stream.
|
||||
|
@@ -33,7 +33,7 @@
|
||||
// by hand. See the translator.README.txt file in the tools directory for
|
||||
// more information.
|
||||
//
|
||||
// $hash=273a6abfd4ac030701be00c45811c19e74e128bd$
|
||||
// $hash=fc609ce5aa3bc51e5cef1f9174dbfc5cff0a0689$
|
||||
//
|
||||
|
||||
#ifndef CEF_INCLUDE_CAPI_CEF_TASK_CAPI_H_
|
||||
@@ -114,7 +114,7 @@ typedef struct _cef_task_runner_t {
|
||||
///
|
||||
int(CEF_CALLBACK* post_delayed_task)(struct _cef_task_runner_t* self,
|
||||
struct _cef_task_t* task,
|
||||
int64 delay_ms);
|
||||
int64_t delay_ms);
|
||||
} cef_task_runner_t;
|
||||
|
||||
///
|
||||
@@ -149,7 +149,7 @@ CEF_EXPORT int cef_post_task(cef_thread_id_t threadId, cef_task_t* task);
|
||||
///
|
||||
CEF_EXPORT int cef_post_delayed_task(cef_thread_id_t threadId,
|
||||
cef_task_t* task,
|
||||
int64 delay_ms);
|
||||
int64_t delay_ms);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
@@ -33,7 +33,7 @@
|
||||
// by hand. See the translator.README.txt file in the tools directory for
|
||||
// more information.
|
||||
//
|
||||
// $hash=8d275bd73854b2b8d5a7a5bc55fa737e020705ee$
|
||||
// $hash=28e2d2d86dffdfdad0f275a444656a0638b44d0e$
|
||||
//
|
||||
|
||||
#ifndef CEF_INCLUDE_CAPI_CEF_TRACE_CAPI_H_
|
||||
@@ -109,7 +109,7 @@ CEF_EXPORT int cef_end_tracing(const cef_string_t* tracing_file,
|
||||
/// high-res time. Can be used by clients to synchronize with the time
|
||||
/// information in trace events.
|
||||
///
|
||||
CEF_EXPORT int64 cef_now_from_system_trace_time(void);
|
||||
CEF_EXPORT int64_t cef_now_from_system_trace_time(void);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
@@ -33,7 +33,7 @@
|
||||
// by hand. See the translator.README.txt file in the tools directory for
|
||||
// more information.
|
||||
//
|
||||
// $hash=91c121d4353a80d7fff3ef582c5a56ac86e0a34c$
|
||||
// $hash=b038ad859f1dad2d8ba63589da118898350b309c$
|
||||
//
|
||||
|
||||
#ifndef CEF_INCLUDE_CAPI_CEF_URLREQUEST_CAPI_H_
|
||||
@@ -158,8 +158,8 @@ typedef struct _cef_urlrequest_client_t {
|
||||
///
|
||||
void(CEF_CALLBACK* on_upload_progress)(struct _cef_urlrequest_client_t* self,
|
||||
struct _cef_urlrequest_t* request,
|
||||
int64 current,
|
||||
int64 total);
|
||||
int64_t current,
|
||||
int64_t total);
|
||||
|
||||
///
|
||||
/// Notifies the client of download progress. |current| denotes the number of
|
||||
@@ -169,8 +169,8 @@ typedef struct _cef_urlrequest_client_t {
|
||||
void(CEF_CALLBACK* on_download_progress)(
|
||||
struct _cef_urlrequest_client_t* self,
|
||||
struct _cef_urlrequest_t* request,
|
||||
int64 current,
|
||||
int64 total);
|
||||
int64_t current,
|
||||
int64_t total);
|
||||
|
||||
///
|
||||
/// Called when some part of the response is read. |data| contains the current
|
||||
|
@@ -33,7 +33,7 @@
|
||||
// by hand. See the translator.README.txt file in the tools directory for
|
||||
// more information.
|
||||
//
|
||||
// $hash=0d787ac7676ba90d3a1fe68d5e2494b985b1db0e$
|
||||
// $hash=42de7c0e6f5ec529d9182fe4cbf2c1edfacd7392$
|
||||
//
|
||||
|
||||
#ifndef CEF_INCLUDE_CAPI_CEF_V8_CAPI_H_
|
||||
@@ -474,12 +474,12 @@ typedef struct _cef_v8value_t {
|
||||
///
|
||||
/// Return an int value.
|
||||
///
|
||||
int32(CEF_CALLBACK* get_int_value)(struct _cef_v8value_t* self);
|
||||
int32_t(CEF_CALLBACK* get_int_value)(struct _cef_v8value_t* self);
|
||||
|
||||
///
|
||||
/// Return an unsigned int value.
|
||||
///
|
||||
uint32(CEF_CALLBACK* get_uint_value)(struct _cef_v8value_t* self);
|
||||
uint32_t(CEF_CALLBACK* get_uint_value)(struct _cef_v8value_t* self);
|
||||
|
||||
///
|
||||
/// Return a double value.
|
||||
@@ -764,12 +764,12 @@ CEF_EXPORT cef_v8value_t* cef_v8value_create_bool(int value);
|
||||
///
|
||||
/// Create a new cef_v8value_t object of type int.
|
||||
///
|
||||
CEF_EXPORT cef_v8value_t* cef_v8value_create_int(int32 value);
|
||||
CEF_EXPORT cef_v8value_t* cef_v8value_create_int(int32_t value);
|
||||
|
||||
///
|
||||
/// Create a new cef_v8value_t object of type unsigned int.
|
||||
///
|
||||
CEF_EXPORT cef_v8value_t* cef_v8value_create_uint(uint32 value);
|
||||
CEF_EXPORT cef_v8value_t* cef_v8value_create_uint(uint32_t value);
|
||||
|
||||
///
|
||||
/// Create a new cef_v8value_t object of type double.
|
||||
|
@@ -33,7 +33,7 @@
|
||||
// by hand. See the translator.README.txt file in the tools directory for
|
||||
// more information.
|
||||
//
|
||||
// $hash=683d592a2405ada0a9c46c004f003d640a3298ad$
|
||||
// $hash=be3741396459ccf1337f319965ba1dc509142536$
|
||||
//
|
||||
|
||||
#ifndef CEF_INCLUDE_CAPI_CEF_WAITABLE_EVENT_CAPI_H_
|
||||
@@ -96,7 +96,7 @@ typedef struct _cef_waitable_event_t {
|
||||
/// called on the browser process UI or IO threads.
|
||||
///
|
||||
int(CEF_CALLBACK* timed_wait)(struct _cef_waitable_event_t* self,
|
||||
int64 max_ms);
|
||||
int64_t max_ms);
|
||||
} cef_waitable_event_t;
|
||||
|
||||
///
|
||||
|
@@ -33,7 +33,7 @@
|
||||
// by hand. See the translator.README.txt file in the tools directory for
|
||||
// more information.
|
||||
//
|
||||
// $hash=7a541729b4ac664b22cdea625f19f1dba1b6a685$
|
||||
// $hash=a4b62b20f30552fef5d522bdd00ebf9a8f12464c$
|
||||
//
|
||||
|
||||
#ifndef CEF_INCLUDE_CAPI_CEF_X509_CERTIFICATE_CAPI_H_
|
||||
@@ -93,13 +93,6 @@ typedef struct _cef_x509cert_principal_t {
|
||||
cef_string_userfree_t(CEF_CALLBACK* get_country_name)(
|
||||
struct _cef_x509cert_principal_t* self);
|
||||
|
||||
///
|
||||
/// Retrieve the list of street addresses.
|
||||
///
|
||||
void(CEF_CALLBACK* get_street_addresses)(
|
||||
struct _cef_x509cert_principal_t* self,
|
||||
cef_string_list_t addresses);
|
||||
|
||||
///
|
||||
/// Retrieve the list of organization names.
|
||||
///
|
||||
@@ -113,13 +106,6 @@ typedef struct _cef_x509cert_principal_t {
|
||||
void(CEF_CALLBACK* get_organization_unit_names)(
|
||||
struct _cef_x509cert_principal_t* self,
|
||||
cef_string_list_t names);
|
||||
|
||||
///
|
||||
/// Retrieve the list of domain components.
|
||||
///
|
||||
void(CEF_CALLBACK* get_domain_components)(
|
||||
struct _cef_x509cert_principal_t* self,
|
||||
cef_string_list_t components);
|
||||
} cef_x509cert_principal_t;
|
||||
|
||||
///
|
||||
|
@@ -33,7 +33,7 @@
|
||||
// by hand. See the translator.README.txt file in the tools directory for
|
||||
// more information.
|
||||
//
|
||||
// $hash=83debac545c04a630270665b391f52b15484b5d3$
|
||||
// $hash=d082d724164cb0b1da12d49b080c599934f08b9d$
|
||||
//
|
||||
|
||||
#ifndef CEF_INCLUDE_CAPI_CEF_ZIP_READER_CAPI_H_
|
||||
@@ -95,7 +95,7 @@ typedef struct _cef_zip_reader_t {
|
||||
///
|
||||
/// Returns the uncompressed size of the file.
|
||||
///
|
||||
int64(CEF_CALLBACK* get_file_size)(struct _cef_zip_reader_t* self);
|
||||
int64_t(CEF_CALLBACK* get_file_size)(struct _cef_zip_reader_t* self);
|
||||
|
||||
///
|
||||
/// Returns the last modified timestamp for the file.
|
||||
@@ -126,7 +126,7 @@ typedef struct _cef_zip_reader_t {
|
||||
///
|
||||
/// Returns the current offset in the uncompressed file contents.
|
||||
///
|
||||
int64(CEF_CALLBACK* tell)(struct _cef_zip_reader_t* self);
|
||||
int64_t(CEF_CALLBACK* tell)(struct _cef_zip_reader_t* self);
|
||||
|
||||
///
|
||||
/// Returns true (1) if at end of the file contents.
|
||||
|
@@ -33,7 +33,7 @@
|
||||
// by hand. See the translator.README.txt file in the tools directory for
|
||||
// more information.
|
||||
//
|
||||
// $hash=df532eb91caf9de44b077abdf00620dd2508402b$
|
||||
// $hash=f5731d0fffb953f1269b63b478a89bb6b842ac94$
|
||||
//
|
||||
|
||||
#ifndef CEF_INCLUDE_CAPI_TEST_CEF_TEST_SERVER_CAPI_H_
|
||||
@@ -104,7 +104,7 @@ typedef struct _cef_test_server_t {
|
||||
/// started. The server will continue running until Stop is called.
|
||||
///
|
||||
CEF_EXPORT cef_test_server_t* cef_test_server_create_and_start(
|
||||
uint16 port,
|
||||
uint16_t port,
|
||||
int https_server,
|
||||
cef_test_cert_type_t https_cert_type,
|
||||
struct _cef_test_server_handler_t* handler);
|
||||
|
@@ -33,7 +33,7 @@
|
||||
// by hand. See the translator.README.txt file in the tools directory for
|
||||
// more information.
|
||||
//
|
||||
// $hash=7674d3af52dd4272b454b2028e7a4ee72fb3c9ff$
|
||||
// $hash=2e9acfffaf1dbc70f0c76fcf58a5190326b131ba$
|
||||
//
|
||||
|
||||
#ifndef CEF_INCLUDE_CAPI_VIEWS_CEF_DISPLAY_CAPI_H_
|
||||
@@ -63,7 +63,7 @@ typedef struct _cef_display_t {
|
||||
///
|
||||
/// Returns the unique identifier for this Display.
|
||||
///
|
||||
int64(CEF_CALLBACK* get_id)(struct _cef_display_t* self);
|
||||
int64_t(CEF_CALLBACK* get_id)(struct _cef_display_t* self);
|
||||
|
||||
///
|
||||
/// Returns this Display's device pixel scale factor. This specifies how much
|
||||
|
@@ -33,7 +33,7 @@
|
||||
// by hand. See the translator.README.txt file in the tools directory for
|
||||
// more information.
|
||||
//
|
||||
// $hash=04aa6e193cc5d5658c0ef28a42c0777c0a955409$
|
||||
// $hash=d53c4a0a7e731a56a0edcb9d705c76b0a2770155$
|
||||
//
|
||||
|
||||
#ifndef CEF_INCLUDE_CAPI_VIEWS_CEF_WINDOW_CAPI_H_
|
||||
@@ -51,6 +51,8 @@
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
struct _cef_browser_view_t;
|
||||
|
||||
///
|
||||
/// A Window is a top-level Window/widget in the Views hierarchy. By default it
|
||||
/// will have a non-client area with title bar, icon and buttons that supports
|
||||
@@ -69,6 +71,21 @@ typedef struct _cef_window_t {
|
||||
///
|
||||
void(CEF_CALLBACK* show)(struct _cef_window_t* self);
|
||||
|
||||
///
|
||||
/// Show the Window as a browser modal dialog relative to |browser_view|. A
|
||||
/// parent Window must be returned via
|
||||
/// cef_window_delegate_t::get_parent_window() and |browser_view| must belong
|
||||
/// to that parent Window. While this Window is visible, |browser_view| will
|
||||
/// be disabled while other controls in the parent Window remain enabled.
|
||||
/// Navigating or destroying the |browser_view| will close this Window
|
||||
/// automatically. Alternately, use show() and return true (1) from
|
||||
/// cef_window_delegate_t::is_window_modal_dialog() for a window modal dialog
|
||||
/// where all controls in the parent Window are disabled.
|
||||
///
|
||||
void(CEF_CALLBACK* show_as_browser_modal_dialog)(
|
||||
struct _cef_window_t* self,
|
||||
struct _cef_browser_view_t* browser_view);
|
||||
|
||||
///
|
||||
/// Hide the Window.
|
||||
///
|
||||
@@ -286,7 +303,7 @@ typedef struct _cef_window_t {
|
||||
///
|
||||
void(CEF_CALLBACK* send_key_press)(struct _cef_window_t* self,
|
||||
int key_code,
|
||||
uint32 event_flags);
|
||||
uint32_t event_flags);
|
||||
|
||||
///
|
||||
/// Simulate a mouse move. The mouse cursor will be moved to the specified
|
||||
|
@@ -33,7 +33,7 @@
|
||||
// by hand. See the translator.README.txt file in the tools directory for
|
||||
// more information.
|
||||
//
|
||||
// $hash=7201d268e16fc89f255b6ccd00d043f34fe77584$
|
||||
// $hash=61099a1ba8b16a5e46f5a80d326d1f9bfc99317d$
|
||||
//
|
||||
|
||||
#ifndef CEF_INCLUDE_CAPI_VIEWS_CEF_WINDOW_DELEGATE_CAPI_H_
|
||||
@@ -110,6 +110,18 @@ typedef struct _cef_window_delegate_t {
|
||||
int* is_menu,
|
||||
int* can_activate_menu);
|
||||
|
||||
///
|
||||
/// Return true (1) if |window| should be created as a window modal dialog.
|
||||
/// Only called when a Window is returned via get_parent_window() with
|
||||
/// |is_menu| set to false (0). All controls in the parent Window will be
|
||||
/// disabled while |window| is visible. This functionality is not supported by
|
||||
/// all Linux window managers. Alternately, use
|
||||
/// cef_window_t::show_as_browser_modal_dialog() for a browser modal dialog
|
||||
/// that works on all platforms.
|
||||
///
|
||||
int(CEF_CALLBACK* is_window_modal_dialog)(struct _cef_window_delegate_t* self,
|
||||
struct _cef_window_t* window);
|
||||
|
||||
///
|
||||
/// Return the initial bounds for |window| in density independent pixel (DIP)
|
||||
/// coordinates. If this function returns an NULL CefRect then
|
||||
|
@@ -42,13 +42,13 @@
|
||||
// way that may cause binary incompatibility with other builds. The universal
|
||||
// hash value will change if any platform is affected whereas the platform hash
|
||||
// values will change only if that particular platform is affected.
|
||||
#define CEF_API_HASH_UNIVERSAL "eb6257d3e4894dd51617d20588b7f0c3c8717301"
|
||||
#define CEF_API_HASH_UNIVERSAL "9c9fbc9d59a544c8e0c2f0cbed4b6622f2786f1c"
|
||||
#if defined(OS_WIN)
|
||||
#define CEF_API_HASH_PLATFORM "3c99a150153b982d4d8b1a19e33b66a1d93fec21"
|
||||
#define CEF_API_HASH_PLATFORM "240e06747f2ea2d7d4a3071042d45cf80d170420"
|
||||
#elif defined(OS_MAC)
|
||||
#define CEF_API_HASH_PLATFORM "b63aacf68a1fda1164948c24bab4f74abe046137"
|
||||
#define CEF_API_HASH_PLATFORM "cd4a815153a919ad30b95c659688b564823d92fc"
|
||||
#elif defined(OS_LINUX)
|
||||
#define CEF_API_HASH_PLATFORM "b12c839a3ea0dcb9705e543fc17fd3c1d9fa1e7c"
|
||||
#define CEF_API_HASH_PLATFORM "4c372cb13e3446b2a54aaaea51b0d47ba7766152"
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
@@ -87,7 +87,7 @@ class CefAudioHandler : public virtual CefBaseRefCounted {
|
||||
virtual void OnAudioStreamPacket(CefRefPtr<CefBrowser> browser,
|
||||
const float** data,
|
||||
int frames,
|
||||
int64 pts) = 0;
|
||||
int64_t pts) = 0;
|
||||
|
||||
///
|
||||
/// Called on the UI thread when the stream has stopped. OnAudioSteamStopped
|
||||
|
@@ -170,7 +170,7 @@ class CefBrowser : public virtual CefBaseRefCounted {
|
||||
/// Returns the frame with the specified identifier, or NULL if not found.
|
||||
///
|
||||
/*--cef(capi_name=get_frame_byident)--*/
|
||||
virtual CefRefPtr<CefFrame> GetFrame(int64 identifier) = 0;
|
||||
virtual CefRefPtr<CefFrame> GetFrame(int64_t identifier) = 0;
|
||||
|
||||
///
|
||||
/// Returns the frame with the specified name, or NULL if not found.
|
||||
@@ -188,7 +188,7 @@ class CefBrowser : public virtual CefBaseRefCounted {
|
||||
/// Returns the identifiers of all existing frames.
|
||||
///
|
||||
/*--cef(count_func=identifiers:GetFrameCount)--*/
|
||||
virtual void GetFrameIdentifiers(std::vector<int64>& identifiers) = 0;
|
||||
virtual void GetFrameIdentifiers(std::vector<int64_t>& identifiers) = 0;
|
||||
|
||||
///
|
||||
/// Returns the names of all existing frames.
|
||||
@@ -456,7 +456,7 @@ class CefBrowserHost : public virtual CefBaseRefCounted {
|
||||
/*--cef()--*/
|
||||
virtual void DownloadImage(const CefString& image_url,
|
||||
bool is_favicon,
|
||||
uint32 max_image_size,
|
||||
uint32_t max_image_size,
|
||||
bool bypass_cache,
|
||||
CefRefPtr<CefDownloadImageCallback> callback) = 0;
|
||||
|
||||
|
@@ -111,7 +111,7 @@ class CefBrowserProcessHandler : public virtual CefBaseRefCounted {
|
||||
/// pending scheduled call should be cancelled.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual void OnScheduleMessagePumpWork(int64 delay_ms) {}
|
||||
virtual void OnScheduleMessagePumpWork(int64_t delay_ms) {}
|
||||
|
||||
///
|
||||
/// Return the default client for use with a newly created browser window. If
|
||||
|
@@ -82,7 +82,7 @@
|
||||
/// If "AppName" is set on Windows then crash report information (metrics,
|
||||
/// database and dumps) will be stored locally on disk under the
|
||||
/// "C:\Users\[CurrentUser]\AppData\Local\[AppName]\User Data" folder. On other
|
||||
/// platforms the cef_settings_t.user_data_path value will be used.
|
||||
/// platforms the cef_settings_t.root_cache_path value will be used.
|
||||
///
|
||||
/// If "ExternalHandler" is set on Windows then the specified exe will be
|
||||
/// launched as the crashpad-handler instead of re-launching the main process
|
||||
|
@@ -87,7 +87,7 @@ class CefDownloadItem : public virtual CefBaseRefCounted {
|
||||
/// Returns a simple speed estimate in bytes/s.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual int64 GetCurrentSpeed() = 0;
|
||||
virtual int64_t GetCurrentSpeed() = 0;
|
||||
|
||||
///
|
||||
/// Returns the rough percent complete or -1 if the receive total size is
|
||||
@@ -100,13 +100,13 @@ class CefDownloadItem : public virtual CefBaseRefCounted {
|
||||
/// Returns the total number of bytes.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual int64 GetTotalBytes() = 0;
|
||||
virtual int64_t GetTotalBytes() = 0;
|
||||
|
||||
///
|
||||
/// Returns the number of received bytes.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual int64 GetReceivedBytes() = 0;
|
||||
virtual int64_t GetReceivedBytes() = 0;
|
||||
|
||||
///
|
||||
/// Returns the time that the download started.
|
||||
@@ -130,7 +130,7 @@ class CefDownloadItem : public virtual CefBaseRefCounted {
|
||||
/// Returns the unique identifier for this download.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual uint32 GetId() = 0;
|
||||
virtual uint32_t GetId() = 0;
|
||||
|
||||
///
|
||||
/// Returns the URL.
|
||||
|
@@ -184,7 +184,7 @@ class CefFrame : public virtual CefBaseRefCounted {
|
||||
/// underlying frame does not yet exist.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual int64 GetIdentifier() = 0;
|
||||
virtual int64_t GetIdentifier() = 0;
|
||||
|
||||
///
|
||||
/// Returns the parent of this frame or NULL if this is the main (top-level)
|
||||
|
@@ -57,7 +57,7 @@ class CefMediaAccessCallback : public virtual CefBaseRefCounted {
|
||||
/// OnRequestMediaAccessPermission.
|
||||
///
|
||||
/*--cef(capi_name=cont)--*/
|
||||
virtual void Continue(uint32 allowed_permissions) = 0;
|
||||
virtual void Continue(uint32_t allowed_permissions) = 0;
|
||||
|
||||
///
|
||||
/// Cancel the media access request.
|
||||
@@ -104,7 +104,7 @@ class CefPermissionHandler : public virtual CefBaseRefCounted {
|
||||
CefRefPtr<CefBrowser> browser,
|
||||
CefRefPtr<CefFrame> frame,
|
||||
const CefString& requesting_origin,
|
||||
uint32 requested_permissions,
|
||||
uint32_t requested_permissions,
|
||||
CefRefPtr<CefMediaAccessCallback> callback) {
|
||||
return false;
|
||||
}
|
||||
@@ -123,9 +123,9 @@ class CefPermissionHandler : public virtual CefBaseRefCounted {
|
||||
/*--cef()--*/
|
||||
virtual bool OnShowPermissionPrompt(
|
||||
CefRefPtr<CefBrowser> browser,
|
||||
uint64 prompt_id,
|
||||
uint64_t prompt_id,
|
||||
const CefString& requesting_origin,
|
||||
uint32 requested_permissions,
|
||||
uint32_t requested_permissions,
|
||||
CefRefPtr<CefPermissionPromptCallback> callback) {
|
||||
return false;
|
||||
}
|
||||
@@ -142,7 +142,7 @@ class CefPermissionHandler : public virtual CefBaseRefCounted {
|
||||
/*--cef()--*/
|
||||
virtual void OnDismissPermissionPrompt(
|
||||
CefRefPtr<CefBrowser> browser,
|
||||
uint64 prompt_id,
|
||||
uint64_t prompt_id,
|
||||
cef_permission_request_result_t result) {}
|
||||
};
|
||||
|
||||
|
@@ -217,7 +217,7 @@ class CefRequest : public virtual CefBaseRefCounted {
|
||||
/// browser process to track a single request across multiple callbacks.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual uint64 GetIdentifier() = 0;
|
||||
virtual uint64_t GetIdentifier() = 0;
|
||||
};
|
||||
|
||||
///
|
||||
|
@@ -46,6 +46,7 @@
|
||||
#include "include/cef_extension_handler.h"
|
||||
#include "include/cef_media_router.h"
|
||||
#include "include/cef_preference.h"
|
||||
#include "include/cef_values.h"
|
||||
|
||||
class CefRequestContextHandler;
|
||||
class CefSchemeHandlerFactory;
|
||||
@@ -314,6 +315,72 @@ class CefRequestContext : public CefPreferenceManager {
|
||||
/*--cef(optional_param=callback)--*/
|
||||
virtual CefRefPtr<CefMediaRouter> GetMediaRouter(
|
||||
CefRefPtr<CefCompletionCallback> callback) = 0;
|
||||
|
||||
///
|
||||
/// Returns the current value for |content_type| that applies for the
|
||||
/// specified URLs. If both URLs are empty the default value will be returned.
|
||||
/// Returns nullptr if no value is configured. Must be called on the browser
|
||||
/// process UI thread.
|
||||
///
|
||||
/*--cef(optional_param=requesting_url,optional_param=top_level_url)--*/
|
||||
virtual CefRefPtr<CefValue> GetWebsiteSetting(
|
||||
const CefString& requesting_url,
|
||||
const CefString& top_level_url,
|
||||
cef_content_setting_types_t content_type) = 0;
|
||||
|
||||
///
|
||||
/// Sets the current value for |content_type| for the specified URLs in the
|
||||
/// default scope. If both URLs are empty, and the context is not incognito,
|
||||
/// the default value will be set. Pass nullptr for |value| to remove the
|
||||
/// default value for this content type.
|
||||
///
|
||||
/// WARNING: Incorrect usage of this method may cause instability or security
|
||||
/// issues in Chromium. Make sure that you first understand the potential
|
||||
/// impact of any changes to |content_type| by reviewing the related source
|
||||
/// code in Chromium. For example, if you plan to modify
|
||||
/// CEF_CONTENT_SETTING_TYPE_POPUPS, first review and understand the usage of
|
||||
/// ContentSettingsType::POPUPS in Chromium:
|
||||
/// https://source.chromium.org/search?q=ContentSettingsType::POPUPS
|
||||
///
|
||||
/*--cef(optional_param=requesting_url,optional_param=top_level_url,
|
||||
optional_param=value)--*/
|
||||
virtual void SetWebsiteSetting(const CefString& requesting_url,
|
||||
const CefString& top_level_url,
|
||||
cef_content_setting_types_t content_type,
|
||||
CefRefPtr<CefValue> value) = 0;
|
||||
|
||||
///
|
||||
/// Returns the current value for |content_type| that applies for the
|
||||
/// specified URLs. If both URLs are empty the default value will be returned.
|
||||
/// Returns CEF_CONTENT_SETTING_VALUE_DEFAULT if no value is configured. Must
|
||||
/// be called on the browser process UI thread.
|
||||
///
|
||||
/*--cef(optional_param=requesting_url,optional_param=top_level_url,
|
||||
default_retval=CEF_CONTENT_SETTING_VALUE_DEFAULT)--*/
|
||||
virtual cef_content_setting_values_t GetContentSetting(
|
||||
const CefString& requesting_url,
|
||||
const CefString& top_level_url,
|
||||
cef_content_setting_types_t content_type) = 0;
|
||||
|
||||
///
|
||||
/// Sets the current value for |content_type| for the specified URLs in the
|
||||
/// default scope. If both URLs are empty, and the context is not incognito,
|
||||
/// the default value will be set. Pass CEF_CONTENT_SETTING_VALUE_DEFAULT for
|
||||
/// |value| to use the default value for this content type.
|
||||
///
|
||||
/// WARNING: Incorrect usage of this method may cause instability or security
|
||||
/// issues in Chromium. Make sure that you first understand the potential
|
||||
/// impact of any changes to |content_type| by reviewing the related source
|
||||
/// code in Chromium. For example, if you plan to modify
|
||||
/// CEF_CONTENT_SETTING_TYPE_POPUPS, first review and understand the usage of
|
||||
/// ContentSettingsType::POPUPS in Chromium:
|
||||
/// https://source.chromium.org/search?q=ContentSettingsType::POPUPS
|
||||
///
|
||||
/*--cef(optional_param=requesting_url,optional_param=top_level_url)--*/
|
||||
virtual void SetContentSetting(const CefString& requesting_url,
|
||||
const CefString& top_level_url,
|
||||
cef_content_setting_types_t content_type,
|
||||
cef_content_setting_values_t value) = 0;
|
||||
};
|
||||
|
||||
#endif // CEF_INCLUDE_CEF_REQUEST_CONTEXT_H_
|
||||
|
@@ -58,7 +58,7 @@ class CefResourceSkipCallback : public virtual CefBaseRefCounted {
|
||||
/// <= 0 the request will fail with ERR_REQUEST_RANGE_NOT_SATISFIABLE.
|
||||
///
|
||||
/*--cef(capi_name=cont)--*/
|
||||
virtual void Continue(int64 bytes_skipped) = 0;
|
||||
virtual void Continue(int64_t bytes_skipped) = 0;
|
||||
};
|
||||
|
||||
///
|
||||
@@ -136,7 +136,7 @@ class CefResourceHandler : public virtual CefBaseRefCounted {
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual void GetResponseHeaders(CefRefPtr<CefResponse> response,
|
||||
int64& response_length,
|
||||
int64_t& response_length,
|
||||
CefString& redirectUrl) = 0;
|
||||
|
||||
///
|
||||
@@ -149,8 +149,8 @@ class CefResourceHandler : public virtual CefBaseRefCounted {
|
||||
/// method will be called in sequence but not from a dedicated thread.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual bool Skip(int64 bytes_to_skip,
|
||||
int64& bytes_skipped,
|
||||
virtual bool Skip(int64_t bytes_to_skip,
|
||||
int64_t& bytes_skipped,
|
||||
CefRefPtr<CefResourceSkipCallback> callback) {
|
||||
bytes_skipped = -2;
|
||||
return false;
|
||||
|
@@ -187,7 +187,7 @@ class CefResourceRequestHandler : public virtual CefBaseRefCounted {
|
||||
CefRefPtr<CefRequest> request,
|
||||
CefRefPtr<CefResponse> response,
|
||||
URLRequestStatus status,
|
||||
int64 received_content_length) {}
|
||||
int64_t received_content_length) {}
|
||||
|
||||
///
|
||||
/// Called on the IO thread to handle requests for URLs with an unknown
|
||||
|
@@ -74,7 +74,7 @@ class CefServer : public CefBaseRefCounted {
|
||||
///
|
||||
/*--cef()--*/
|
||||
static void CreateServer(const CefString& address,
|
||||
uint16 port,
|
||||
uint16_t port,
|
||||
int backlog,
|
||||
CefRefPtr<CefServerHandler> handler);
|
||||
|
||||
@@ -170,7 +170,7 @@ class CefServer : public CefBaseRefCounted {
|
||||
virtual void SendHttpResponse(int connection_id,
|
||||
int response_code,
|
||||
const CefString& content_type,
|
||||
int64 content_length,
|
||||
int64_t content_length,
|
||||
const HeaderMap& extra_headers) = 0;
|
||||
|
||||
///
|
||||
|
@@ -58,13 +58,13 @@ class CefReadHandler : public virtual CefBaseRefCounted {
|
||||
/// failure.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual int Seek(int64 offset, int whence) = 0;
|
||||
virtual int Seek(int64_t offset, int whence) = 0;
|
||||
|
||||
///
|
||||
/// Return the current offset position.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual int64 Tell() = 0;
|
||||
virtual int64_t Tell() = 0;
|
||||
|
||||
///
|
||||
/// Return non-zero if at end of file.
|
||||
@@ -119,13 +119,13 @@ class CefStreamReader : public virtual CefBaseRefCounted {
|
||||
/// failure.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual int Seek(int64 offset, int whence) = 0;
|
||||
virtual int Seek(int64_t offset, int whence) = 0;
|
||||
|
||||
///
|
||||
/// Return the current offset position.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual int64 Tell() = 0;
|
||||
virtual int64_t Tell() = 0;
|
||||
|
||||
///
|
||||
/// Return non-zero if at end of file.
|
||||
@@ -161,13 +161,13 @@ class CefWriteHandler : public virtual CefBaseRefCounted {
|
||||
/// failure.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual int Seek(int64 offset, int whence) = 0;
|
||||
virtual int Seek(int64_t offset, int whence) = 0;
|
||||
|
||||
///
|
||||
/// Return the current offset position.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual int64 Tell() = 0;
|
||||
virtual int64_t Tell() = 0;
|
||||
|
||||
///
|
||||
/// Flush the stream.
|
||||
@@ -215,13 +215,13 @@ class CefStreamWriter : public virtual CefBaseRefCounted {
|
||||
/// failure.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual int Seek(int64 offset, int whence) = 0;
|
||||
virtual int Seek(int64_t offset, int whence) = 0;
|
||||
|
||||
///
|
||||
/// Return the current offset position.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual int64 Tell() = 0;
|
||||
virtual int64_t Tell() = 0;
|
||||
|
||||
///
|
||||
/// Flush the stream.
|
||||
|
@@ -118,7 +118,7 @@ class CefTaskRunner : public virtual CefBaseRefCounted {
|
||||
/// specified delay.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual bool PostDelayedTask(CefRefPtr<CefTask> task, int64 delay_ms) = 0;
|
||||
virtual bool PostDelayedTask(CefRefPtr<CefTask> task, int64_t delay_ms) = 0;
|
||||
};
|
||||
|
||||
///
|
||||
@@ -143,6 +143,6 @@ bool CefPostTask(CefThreadId threadId, CefRefPtr<CefTask> task);
|
||||
/*--cef()--*/
|
||||
bool CefPostDelayedTask(CefThreadId threadId,
|
||||
CefRefPtr<CefTask> task,
|
||||
int64 delay_ms);
|
||||
int64_t delay_ms);
|
||||
|
||||
#endif // CEF_INCLUDE_CEF_TASK_H_
|
||||
|
@@ -106,6 +106,6 @@ bool CefEndTracing(const CefString& tracing_file,
|
||||
/// information in trace events.
|
||||
///
|
||||
/*--cef()--*/
|
||||
int64 CefNowFromSystemTraceTime();
|
||||
int64_t CefNowFromSystemTraceTime();
|
||||
|
||||
#endif // CEF_INCLUDE_CEF_TRACE_H_
|
||||
|
@@ -152,8 +152,8 @@ class CefURLRequestClient : public virtual CefBaseRefCounted {
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual void OnUploadProgress(CefRefPtr<CefURLRequest> request,
|
||||
int64 current,
|
||||
int64 total) = 0;
|
||||
int64_t current,
|
||||
int64_t total) = 0;
|
||||
|
||||
///
|
||||
/// Notifies the client of download progress. |current| denotes the number of
|
||||
@@ -162,8 +162,8 @@ class CefURLRequestClient : public virtual CefBaseRefCounted {
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual void OnDownloadProgress(CefRefPtr<CefURLRequest> request,
|
||||
int64 current,
|
||||
int64 total) = 0;
|
||||
int64_t current,
|
||||
int64_t total) = 0;
|
||||
|
||||
///
|
||||
/// Called when some part of the response is read. |data| contains the current
|
||||
|
@@ -459,13 +459,13 @@ class CefV8Value : public virtual CefBaseRefCounted {
|
||||
/// Create a new CefV8Value object of type int.
|
||||
///
|
||||
/*--cef()--*/
|
||||
static CefRefPtr<CefV8Value> CreateInt(int32 value);
|
||||
static CefRefPtr<CefV8Value> CreateInt(int32_t value);
|
||||
|
||||
///
|
||||
/// Create a new CefV8Value object of type unsigned int.
|
||||
///
|
||||
/*--cef()--*/
|
||||
static CefRefPtr<CefV8Value> CreateUInt(uint32 value);
|
||||
static CefRefPtr<CefV8Value> CreateUInt(uint32_t value);
|
||||
|
||||
///
|
||||
/// Create a new CefV8Value object of type double.
|
||||
@@ -648,13 +648,13 @@ class CefV8Value : public virtual CefBaseRefCounted {
|
||||
/// Return an int value.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual int32 GetIntValue() = 0;
|
||||
virtual int32_t GetIntValue() = 0;
|
||||
|
||||
///
|
||||
/// Return an unsigned int value.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual uint32 GetUIntValue() = 0;
|
||||
virtual uint32_t GetUIntValue() = 0;
|
||||
|
||||
///
|
||||
/// Return a double value.
|
||||
|
@@ -103,7 +103,7 @@ class CefWaitableEvent : public CefBaseRefCounted {
|
||||
/// called on the browser process UI or IO threads.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual bool TimedWait(int64 max_ms) = 0;
|
||||
virtual bool TimedWait(int64_t max_ms) = 0;
|
||||
};
|
||||
|
||||
#endif // CEF_INCLUDE_CEF_WAITABLE_EVENT_H_
|
||||
|
@@ -81,12 +81,6 @@ class CefX509CertPrincipal : public virtual CefBaseRefCounted {
|
||||
/*--cef()--*/
|
||||
virtual CefString GetCountryName() = 0;
|
||||
|
||||
///
|
||||
/// Retrieve the list of street addresses.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual void GetStreetAddresses(std::vector<CefString>& addresses) = 0;
|
||||
|
||||
///
|
||||
/// Retrieve the list of organization names.
|
||||
///
|
||||
@@ -98,12 +92,6 @@ class CefX509CertPrincipal : public virtual CefBaseRefCounted {
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual void GetOrganizationUnitNames(std::vector<CefString>& names) = 0;
|
||||
|
||||
///
|
||||
/// Retrieve the list of domain components.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual void GetDomainComponents(std::vector<CefString>& components) = 0;
|
||||
};
|
||||
|
||||
///
|
||||
|
@@ -96,7 +96,7 @@ class CefZipReader : public virtual CefBaseRefCounted {
|
||||
/// Returns the uncompressed size of the file.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual int64 GetFileSize() = 0;
|
||||
virtual int64_t GetFileSize() = 0;
|
||||
|
||||
///
|
||||
/// Returns the last modified timestamp for the file.
|
||||
@@ -128,7 +128,7 @@ class CefZipReader : public virtual CefBaseRefCounted {
|
||||
/// Returns the current offset in the uncompressed file contents.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual int64 Tell() = 0;
|
||||
virtual int64_t Tell() = 0;
|
||||
|
||||
///
|
||||
/// Returns true if at end of the file contents.
|
||||
|
@@ -74,7 +74,7 @@ typedef cef_string_userfree_utf8_t cef_string_userfree_t;
|
||||
#define cef_string_to_wide cef_string_utf8_to_wide
|
||||
#define cef_string_from_wide cef_string_wide_to_utf8
|
||||
#elif defined(CEF_STRING_TYPE_UTF16)
|
||||
typedef char16 cef_char_t;
|
||||
typedef char16_t cef_char_t;
|
||||
typedef cef_string_userfree_utf16_t cef_string_userfree_t;
|
||||
typedef cef_string_utf16_t cef_string_t;
|
||||
#define cef_string_set cef_string_utf16_set
|
||||
|
@@ -33,7 +33,18 @@
|
||||
|
||||
#include <stddef.h>
|
||||
|
||||
#include "include/base/cef_basictypes.h"
|
||||
#ifdef __clang__
|
||||
// On macOS, <uchar.h> is only available with Xcode 14.3+.
|
||||
#if __has_include(<uchar.h>)
|
||||
#include <uchar.h>
|
||||
#elif !defined(__cplusplus)
|
||||
#include <stdint.h>
|
||||
typedef uint_least16_t char16_t;
|
||||
#endif
|
||||
#else
|
||||
#include <uchar.h>
|
||||
#endif
|
||||
|
||||
#include "include/internal/cef_export.h"
|
||||
|
||||
///
|
||||
@@ -70,9 +81,9 @@ typedef struct _cef_string_utf8_t {
|
||||
} cef_string_utf8_t;
|
||||
|
||||
typedef struct _cef_string_utf16_t {
|
||||
char16* str;
|
||||
char16_t* str;
|
||||
size_t length;
|
||||
void (*dtor)(char16* str);
|
||||
void (*dtor)(char16_t* str);
|
||||
} cef_string_utf16_t;
|
||||
|
||||
///
|
||||
@@ -89,7 +100,7 @@ CEF_EXPORT int cef_string_utf8_set(const char* src,
|
||||
size_t src_len,
|
||||
cef_string_utf8_t* output,
|
||||
int copy);
|
||||
CEF_EXPORT int cef_string_utf16_set(const char16* src,
|
||||
CEF_EXPORT int cef_string_utf16_set(const char16_t* src,
|
||||
size_t src_len,
|
||||
cef_string_utf16_t* output,
|
||||
int copy);
|
||||
@@ -141,14 +152,14 @@ CEF_EXPORT int cef_string_utf8_to_wide(const char* src,
|
||||
CEF_EXPORT int cef_string_wide_to_utf16(const wchar_t* src,
|
||||
size_t src_len,
|
||||
cef_string_utf16_t* output);
|
||||
CEF_EXPORT int cef_string_utf16_to_wide(const char16* src,
|
||||
CEF_EXPORT int cef_string_utf16_to_wide(const char16_t* src,
|
||||
size_t src_len,
|
||||
cef_string_wide_t* output);
|
||||
|
||||
CEF_EXPORT int cef_string_utf8_to_utf16(const char* src,
|
||||
size_t src_len,
|
||||
cef_string_utf16_t* output);
|
||||
CEF_EXPORT int cef_string_utf16_to_utf8(const char16* src,
|
||||
CEF_EXPORT int cef_string_utf16_to_utf8(const char16_t* src,
|
||||
size_t src_len,
|
||||
cef_string_utf8_t* output);
|
||||
|
||||
@@ -198,10 +209,10 @@ CEF_EXPORT void cef_string_userfree_utf16_free(cef_string_userfree_utf16_t str);
|
||||
/// may change the length of the string in some cases.
|
||||
///
|
||||
|
||||
CEF_EXPORT int cef_string_utf16_to_lower(const char16* src,
|
||||
CEF_EXPORT int cef_string_utf16_to_lower(const char16_t* src,
|
||||
size_t src_len,
|
||||
cef_string_utf16_t* output);
|
||||
CEF_EXPORT int cef_string_utf16_to_upper(const char16* src,
|
||||
CEF_EXPORT int cef_string_utf16_to_upper(const char16_t* src,
|
||||
size_t src_len,
|
||||
cef_string_utf16_t* output);
|
||||
|
||||
|
@@ -115,7 +115,7 @@ struct CefStringTraitsWide {
|
||||
static inline bool from_string16(const std::u16string::value_type* data,
|
||||
size_t length,
|
||||
struct_type* s) {
|
||||
return cef_string_utf16_to_wide(reinterpret_cast<const char16*>(data),
|
||||
return cef_string_utf16_to_wide(reinterpret_cast<const char16_t*>(data),
|
||||
length, s)
|
||||
? true
|
||||
: false;
|
||||
@@ -213,7 +213,7 @@ struct CefStringTraitsUTF8 {
|
||||
static inline bool from_string16(const std::u16string::value_type* data,
|
||||
size_t length,
|
||||
struct_type* s) {
|
||||
return cef_string_utf16_to_utf8(reinterpret_cast<const char16*>(data),
|
||||
return cef_string_utf16_to_utf8(reinterpret_cast<const char16_t*>(data),
|
||||
length, s)
|
||||
? true
|
||||
: false;
|
||||
@@ -227,7 +227,7 @@ struct CefStringTraitsUTF8 {
|
||||
/// Traits implementation for utf16 character strings.
|
||||
///
|
||||
struct CefStringTraitsUTF16 {
|
||||
typedef char16 char_type;
|
||||
typedef char16_t char_type;
|
||||
typedef cef_string_utf16_t struct_type;
|
||||
typedef cef_string_userfree_utf16_t userfree_struct_type;
|
||||
|
||||
@@ -290,12 +290,15 @@ struct CefStringTraitsUTF16 {
|
||||
}
|
||||
#else // WCHAR_T_IS_UTF32
|
||||
static inline std::wstring to_wstring(const struct_type* s) {
|
||||
return std::wstring(s->str, s->length);
|
||||
return std::wstring(reinterpret_cast<wchar_t*>(s->str), s->length);
|
||||
}
|
||||
static inline bool from_wstring(const std::wstring::value_type* data,
|
||||
size_t length,
|
||||
struct_type* s) {
|
||||
return cef_string_utf16_set(data, length, s, true) ? true : false;
|
||||
return cef_string_utf16_set(reinterpret_cast<const char16_t*>(data), length,
|
||||
s, true)
|
||||
? true
|
||||
: false;
|
||||
}
|
||||
#endif // WCHAR_T_IS_UTF32
|
||||
static inline bool from_wstring(const std::wstring& str, struct_type* s) {
|
||||
@@ -308,7 +311,7 @@ struct CefStringTraitsUTF16 {
|
||||
static inline bool from_string16(const std::u16string::value_type* data,
|
||||
size_t length,
|
||||
struct_type* s) {
|
||||
return cef_string_utf16_set(reinterpret_cast<const char16*>(data), length,
|
||||
return cef_string_utf16_set(reinterpret_cast<const char16_t*>(data), length,
|
||||
s, true)
|
||||
? true
|
||||
: false;
|
||||
@@ -412,15 +415,6 @@ class CefStringBase {
|
||||
FromString16(src, length);
|
||||
}
|
||||
}
|
||||
#if defined(WCHAR_T_IS_UTF32)
|
||||
CefStringBase(const char16* src, size_t length = 0)
|
||||
: string_(NULL), owner_(false) {
|
||||
if (src) {
|
||||
FromString16(reinterpret_cast<const std::u16string::value_type*>(src),
|
||||
length);
|
||||
}
|
||||
}
|
||||
#endif // WCHAR_T_IS_UTF32
|
||||
|
||||
///
|
||||
/// Create a new string from an existing character array. If |copy| is true
|
||||
@@ -826,12 +820,6 @@ class CefStringBase {
|
||||
FromString16(str);
|
||||
return *this;
|
||||
}
|
||||
#if defined(WCHAR_T_IS_UTF32)
|
||||
CefStringBase& operator=(const char16* str) {
|
||||
FromString16(reinterpret_cast<const std::u16string::value_type*>(str));
|
||||
return *this;
|
||||
}
|
||||
#endif // WCHAR_T_IS_UTF32
|
||||
#if defined(USING_CHROMIUM_INCLUDES)
|
||||
// The base::FilePath constructor is marked as explicit so provide the
|
||||
// conversion here for convenience.
|
||||
|
@@ -35,8 +35,9 @@
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <stdint.h>
|
||||
#include <time.h>
|
||||
#include "include/base/cef_basictypes.h"
|
||||
|
||||
#include "include/internal/cef_export.h"
|
||||
|
||||
///
|
||||
@@ -47,7 +48,7 @@ extern "C" {
|
||||
/// This is equivalent of Chromium `base::Time` (see base/time/time.h).
|
||||
///
|
||||
typedef struct _cef_basetime_t {
|
||||
int64 val;
|
||||
int64_t val;
|
||||
} cef_basetime_t;
|
||||
|
||||
///
|
||||
|
@@ -45,77 +45,66 @@ extern "C" {
|
||||
// may not include "(quotes) chars.
|
||||
// - |argX_name|, |argX_val|, |valueX_name|, |valeX_val| are optional parameters
|
||||
// and represent pairs of name and values of arguments
|
||||
// - |copy| is used to avoid memory scoping issues with the |name| and
|
||||
// |arg_name| parameters by copying them
|
||||
// - |id| is used to disambiguate counters with the same name, or match async
|
||||
// trace events
|
||||
|
||||
CEF_EXPORT void cef_trace_event_instant(const char* category,
|
||||
const char* name,
|
||||
const char* arg1_name,
|
||||
uint64 arg1_val,
|
||||
uint64_t arg1_val,
|
||||
const char* arg2_name,
|
||||
uint64 arg2_val,
|
||||
int copy);
|
||||
uint64_t arg2_val);
|
||||
CEF_EXPORT void cef_trace_event_begin(const char* category,
|
||||
const char* name,
|
||||
const char* arg1_name,
|
||||
uint64 arg1_val,
|
||||
uint64_t arg1_val,
|
||||
const char* arg2_name,
|
||||
uint64 arg2_val,
|
||||
int copy);
|
||||
uint64_t arg2_val);
|
||||
CEF_EXPORT void cef_trace_event_end(const char* category,
|
||||
const char* name,
|
||||
const char* arg1_name,
|
||||
uint64 arg1_val,
|
||||
uint64_t arg1_val,
|
||||
const char* arg2_name,
|
||||
uint64 arg2_val,
|
||||
int copy);
|
||||
uint64_t arg2_val);
|
||||
CEF_EXPORT void cef_trace_counter(const char* category,
|
||||
const char* name,
|
||||
const char* value1_name,
|
||||
uint64 value1_val,
|
||||
uint64_t value1_val,
|
||||
const char* value2_name,
|
||||
uint64 value2_val,
|
||||
int copy);
|
||||
uint64_t value2_val);
|
||||
CEF_EXPORT void cef_trace_counter_id(const char* category,
|
||||
const char* name,
|
||||
uint64 id,
|
||||
uint64_t id,
|
||||
const char* value1_name,
|
||||
uint64 value1_val,
|
||||
uint64_t value1_val,
|
||||
const char* value2_name,
|
||||
uint64 value2_val,
|
||||
int copy);
|
||||
uint64_t value2_val);
|
||||
CEF_EXPORT void cef_trace_event_async_begin(const char* category,
|
||||
const char* name,
|
||||
uint64 id,
|
||||
uint64_t id,
|
||||
const char* arg1_name,
|
||||
uint64 arg1_val,
|
||||
uint64_t arg1_val,
|
||||
const char* arg2_name,
|
||||
uint64 arg2_val,
|
||||
int copy);
|
||||
uint64_t arg2_val);
|
||||
CEF_EXPORT void cef_trace_event_async_step_into(const char* category,
|
||||
const char* name,
|
||||
uint64 id,
|
||||
uint64 step,
|
||||
uint64_t id,
|
||||
uint64_t step,
|
||||
const char* arg1_name,
|
||||
uint64 arg1_val,
|
||||
int copy);
|
||||
uint64_t arg1_val);
|
||||
CEF_EXPORT void cef_trace_event_async_step_past(const char* category,
|
||||
const char* name,
|
||||
uint64 id,
|
||||
uint64 step,
|
||||
uint64_t id,
|
||||
uint64_t step,
|
||||
const char* arg1_name,
|
||||
uint64 arg1_val,
|
||||
int copy);
|
||||
uint64_t arg1_val);
|
||||
CEF_EXPORT void cef_trace_event_async_end(const char* category,
|
||||
const char* name,
|
||||
uint64 id,
|
||||
uint64_t id,
|
||||
const char* arg1_name,
|
||||
uint64 arg1_val,
|
||||
uint64_t arg1_val,
|
||||
const char* arg2_name,
|
||||
uint64 arg2_val,
|
||||
int copy);
|
||||
uint64_t arg2_val);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
@@ -31,10 +31,14 @@
|
||||
#define CEF_INCLUDE_INTERNAL_CEF_TYPES_H_
|
||||
#pragma once
|
||||
|
||||
#include "include/base/cef_basictypes.h"
|
||||
#include <limits.h>
|
||||
#include <stddef.h>
|
||||
#include <stdint.h>
|
||||
|
||||
#include "include/internal/cef_string.h"
|
||||
#include "include/internal/cef_string_list.h"
|
||||
#include "include/internal/cef_time.h"
|
||||
#include "include/internal/cef_types_content_settings.h"
|
||||
#include "include/internal/cef_types_geometry.h"
|
||||
|
||||
// Bring in platform-specific definitions.
|
||||
@@ -48,7 +52,7 @@
|
||||
|
||||
// 32-bit ARGB color value, not premultiplied. The color components are always
|
||||
// in a known order. Equivalent to the SkColor type.
|
||||
typedef uint32 cef_color_t;
|
||||
typedef uint32_t cef_color_t;
|
||||
|
||||
// Return the alpha byte from a cef_color_t value.
|
||||
#define CefColorGetA(color) (((color) >> 24) & 0xFF)
|
||||
@@ -65,17 +69,18 @@ typedef uint32 cef_color_t;
|
||||
(static_cast<unsigned>(a) << 24) | (static_cast<unsigned>(r) << 16) | \
|
||||
(static_cast<unsigned>(g) << 8) | (static_cast<unsigned>(b) << 0))
|
||||
|
||||
// Return an int64 value with the specified low and high int32 component values.
|
||||
#define CefInt64Set(int32_low, int32_high) \
|
||||
static_cast<int64>((static_cast<uint32>(int32_low)) | \
|
||||
(static_cast<int64>(static_cast<int32>(int32_high))) \
|
||||
<< 32)
|
||||
// Return an int64_t value with the specified low and high int32_t component
|
||||
// values.
|
||||
#define CefInt64Set(int32_low, int32_high) \
|
||||
static_cast<int64_t>( \
|
||||
(static_cast<uint32_t>(int32_low)) | \
|
||||
(static_cast<int64_t>(static_cast<int32_t>(int32_high))) << 32)
|
||||
|
||||
// Return the low int32 value from an int64 value.
|
||||
#define CefInt64GetLow(int64_val) static_cast<int32>(int64_val)
|
||||
// Return the high int32 value from an int64 value.
|
||||
// Return the low int32_t value from an int64_t value.
|
||||
#define CefInt64GetLow(int64_val) static_cast<int32_t>(int64_val)
|
||||
// Return the high int32_t value from an int64_t value.
|
||||
#define CefInt64GetHigh(int64_val) \
|
||||
static_cast<int32>((static_cast<int64>(int64_val) >> 32) & 0xFFFFFFFFL)
|
||||
static_cast<int32_t>((static_cast<int64_t>(int64_val) >> 32) & 0xFFFFFFFFL)
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
@@ -255,24 +260,16 @@ typedef struct _cef_settings_t {
|
||||
/// The root directory that all CefSettings.cache_path and
|
||||
/// CefRequestContextSettings.cache_path values must have in common. If this
|
||||
/// value is empty and CefSettings.cache_path is non-empty then it will
|
||||
/// default to the CefSettings.cache_path value. If this value is non-empty
|
||||
/// then it must be an absolute path. Failure to set this value correctly may
|
||||
/// result in the sandbox blocking read/write access to the cache_path
|
||||
/// directory.
|
||||
///
|
||||
cef_string_t root_cache_path;
|
||||
|
||||
///
|
||||
/// The location where user data such as the Widevine CDM module and spell
|
||||
/// checking dictionary files will be stored on disk. If this value is empty
|
||||
/// then the default platform-specific user data directory will be used
|
||||
/// default to the CefSettings.cache_path value. If both values are empty
|
||||
/// then the default platform-specific directory will be used
|
||||
/// ("~/.config/cef_user_data" directory on Linux, "~/Library/Application
|
||||
/// Support/CEF/User Data" directory on MacOS, "AppData\Local\CEF\User Data"
|
||||
/// directory under the user profile directory on Windows). If this value is
|
||||
/// non-empty then it must be an absolute path. When using the Chrome runtime
|
||||
/// this value will be ignored in favor of the |root_cache_path| value.
|
||||
/// non-empty then it must be an absolute path. Failure to set this value
|
||||
/// correctly may result in the sandbox blocking read/write access to certain
|
||||
/// files.
|
||||
///
|
||||
cef_string_t user_data_path;
|
||||
cef_string_t root_cache_path;
|
||||
|
||||
///
|
||||
/// To persist session cookies (cookies without an expiry date or validity
|
||||
@@ -1778,7 +1775,7 @@ typedef struct _cef_mouse_event_t {
|
||||
/// Bit flags describing any pressed modifier keys. See
|
||||
/// cef_event_flags_t for values.
|
||||
///
|
||||
uint32 modifiers;
|
||||
uint32_t modifiers;
|
||||
} cef_mouse_event_t;
|
||||
|
||||
///
|
||||
@@ -1856,7 +1853,7 @@ typedef struct _cef_touch_event_t {
|
||||
/// Bit flags describing any pressed modifier keys. See
|
||||
/// cef_event_flags_t for values.
|
||||
///
|
||||
uint32 modifiers;
|
||||
uint32_t modifiers;
|
||||
|
||||
///
|
||||
/// The device type that caused the event.
|
||||
@@ -2069,7 +2066,7 @@ typedef struct _cef_key_event_t {
|
||||
/// Bit flags describing any pressed modifier keys. See
|
||||
/// cef_event_flags_t for values.
|
||||
///
|
||||
uint32 modifiers;
|
||||
uint32_t modifiers;
|
||||
|
||||
///
|
||||
/// The Windows key code for the key event. This value is used by the DOM
|
||||
@@ -2094,13 +2091,13 @@ typedef struct _cef_key_event_t {
|
||||
///
|
||||
/// The character generated by the keystroke.
|
||||
///
|
||||
char16 character;
|
||||
char16_t character;
|
||||
|
||||
///
|
||||
/// Same as |character| but unmodified by any concurrently-held modifiers
|
||||
/// (except shift). This is useful for working out shortcut keys.
|
||||
///
|
||||
char16 unmodified_character;
|
||||
char16_t unmodified_character;
|
||||
|
||||
///
|
||||
/// True if the focus is currently on an editable field on the page. This is
|
||||
@@ -3289,7 +3286,8 @@ typedef enum {
|
||||
CEF_CPAIT_VIRTUAL_CARD_MANUAL_FALLBACK,
|
||||
CEF_CPAIT_ZOOM,
|
||||
CEF_CPAIT_SAVE_IBAN,
|
||||
CEF_CPAIT_MAX_VALUE = CEF_CPAIT_SAVE_IBAN,
|
||||
CEF_CPAIT_MANDATORY_REAUTH,
|
||||
CEF_CPAIT_MAX_VALUE = CEF_CPAIT_MANDATORY_REAUTH,
|
||||
} cef_chrome_page_action_icon_type_t;
|
||||
|
||||
///
|
||||
@@ -3346,7 +3344,7 @@ typedef struct _cef_touch_handle_state_t {
|
||||
/// Combination of cef_touch_handle_state_flags_t values indicating what state
|
||||
/// is set.
|
||||
///
|
||||
uint32 flags;
|
||||
uint32_t flags;
|
||||
|
||||
///
|
||||
/// Enabled state. Only set if |flags| contains CEF_THS_FLAG_ENABLED.
|
||||
|
368
include/internal/cef_types_content_settings.h
Normal file
368
include/internal/cef_types_content_settings.h
Normal file
@@ -0,0 +1,368 @@
|
||||
// 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
|
||||
// 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.
|
||||
|
||||
#ifndef CEF_INCLUDE_INTERNAL_CEF_TYPES_CONTENT_SETTINGS_H_
|
||||
#define CEF_INCLUDE_INTERNAL_CEF_TYPES_CONTENT_SETTINGS_H_
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
///
|
||||
/// Supported content setting types. Some types are platform-specific or only
|
||||
/// supported with the Chrome runtime. Should be kept in sync with Chromium's
|
||||
/// ContentSettingsType type.
|
||||
///
|
||||
typedef enum {
|
||||
CEF_CONTENT_SETTING_TYPE_COOKIES = 0,
|
||||
CEF_CONTENT_SETTING_TYPE_IMAGES,
|
||||
CEF_CONTENT_SETTING_TYPE_JAVASCRIPT,
|
||||
|
||||
/// This setting governs both popups and unwanted redirects like tab-unders
|
||||
/// and framebusting.
|
||||
CEF_CONTENT_SETTING_TYPE_POPUPS,
|
||||
|
||||
CEF_CONTENT_SETTING_TYPE_GEOLOCATION,
|
||||
CEF_CONTENT_SETTING_TYPE_NOTIFICATIONS,
|
||||
CEF_CONTENT_SETTING_TYPE_AUTO_SELECT_CERTIFICATE,
|
||||
CEF_CONTENT_SETTING_TYPE_MIXEDSCRIPT,
|
||||
CEF_CONTENT_SETTING_TYPE_MEDIASTREAM_MIC,
|
||||
CEF_CONTENT_SETTING_TYPE_MEDIASTREAM_CAMERA,
|
||||
CEF_CONTENT_SETTING_TYPE_PROTOCOL_HANDLERS,
|
||||
CEF_CONTENT_SETTING_TYPE_DEPRECATED_PPAPI_BROKER,
|
||||
CEF_CONTENT_SETTING_TYPE_AUTOMATIC_DOWNLOADS,
|
||||
CEF_CONTENT_SETTING_TYPE_MIDI_SYSEX,
|
||||
CEF_CONTENT_SETTING_TYPE_SSL_CERT_DECISIONS,
|
||||
CEF_CONTENT_SETTING_TYPE_PROTECTED_MEDIA_IDENTIFIER,
|
||||
CEF_CONTENT_SETTING_TYPE_APP_BANNER,
|
||||
CEF_CONTENT_SETTING_TYPE_SITE_ENGAGEMENT,
|
||||
CEF_CONTENT_SETTING_TYPE_DURABLE_STORAGE,
|
||||
CEF_CONTENT_SETTING_TYPE_USB_CHOOSER_DATA,
|
||||
CEF_CONTENT_SETTING_TYPE_BLUETOOTH_GUARD,
|
||||
CEF_CONTENT_SETTING_TYPE_BACKGROUND_SYNC,
|
||||
CEF_CONTENT_SETTING_TYPE_AUTOPLAY,
|
||||
CEF_CONTENT_SETTING_TYPE_IMPORTANT_SITE_INFO,
|
||||
CEF_CONTENT_SETTING_TYPE_PERMISSION_AUTOBLOCKER_DATA,
|
||||
CEF_CONTENT_SETTING_TYPE_ADS,
|
||||
|
||||
/// Website setting which stores metadata for the subresource filter to aid in
|
||||
/// decisions for whether or not to show the UI.
|
||||
CEF_CONTENT_SETTING_TYPE_ADS_DATA,
|
||||
|
||||
/// This is special-cased in the permissions layer to always allow, and as
|
||||
/// such doesn't have associated prefs data.
|
||||
CEF_CONTENT_SETTING_TYPE_MIDI,
|
||||
|
||||
/// This content setting type is for caching password protection service's
|
||||
/// verdicts of each origin.
|
||||
CEF_CONTENT_SETTING_TYPE_PASSWORD_PROTECTION,
|
||||
|
||||
/// Website setting which stores engagement data for media related to a
|
||||
/// specific origin.
|
||||
CEF_CONTENT_SETTING_TYPE_MEDIA_ENGAGEMENT,
|
||||
|
||||
/// Content setting which stores whether or not the site can play audible
|
||||
/// sound. This will not block playback but instead the user will not hear it.
|
||||
CEF_CONTENT_SETTING_TYPE_SOUND,
|
||||
|
||||
/// Website setting which stores the list of client hints that the origin
|
||||
/// requested the browser to remember. The browser is expected to send all
|
||||
/// client hints in the HTTP request headers for every resource requested
|
||||
/// from that origin.
|
||||
CEF_CONTENT_SETTING_TYPE_CLIENT_HINTS,
|
||||
|
||||
/// Generic Sensor API covering ambient-light-sensor, accelerometer, gyroscope
|
||||
/// and magnetometer are all mapped to a single content_settings_type.
|
||||
/// Setting for the Generic Sensor API covering ambient-light-sensor,
|
||||
/// accelerometer, gyroscope and magnetometer. These are all mapped to a
|
||||
/// single ContentSettingsType.
|
||||
CEF_CONTENT_SETTING_TYPE_SENSORS,
|
||||
|
||||
/// Content setting which stores whether or not the user has granted the site
|
||||
/// permission to respond to accessibility events, which can be used to
|
||||
/// provide a custom accessibility experience. Requires explicit user consent
|
||||
/// because some users may not want sites to know they're using assistive
|
||||
/// technology.
|
||||
CEF_CONTENT_SETTING_TYPE_ACCESSIBILITY_EVENTS,
|
||||
|
||||
/// Used to store whether to allow a website to install a payment handler.
|
||||
CEF_CONTENT_SETTING_TYPE_PAYMENT_HANDLER,
|
||||
|
||||
/// Content setting which stores whether to allow sites to ask for permission
|
||||
/// to access USB devices. If this is allowed specific device permissions are
|
||||
/// stored under USB_CHOOSER_DATA.
|
||||
CEF_CONTENT_SETTING_TYPE_USB_GUARD,
|
||||
|
||||
/// Nothing is stored in this setting at present. Please refer to
|
||||
/// BackgroundFetchPermissionContext for details on how this permission
|
||||
/// is ascertained.
|
||||
CEF_CONTENT_SETTING_TYPE_BACKGROUND_FETCH,
|
||||
|
||||
/// Website setting which stores the amount of times the user has dismissed
|
||||
/// intent picker UI without explicitly choosing an option.
|
||||
CEF_CONTENT_SETTING_TYPE_INTENT_PICKER_DISPLAY,
|
||||
|
||||
/// Used to store whether to allow a website to detect user active/idle state.
|
||||
CEF_CONTENT_SETTING_TYPE_IDLE_DETECTION,
|
||||
|
||||
/// Setting for enabling auto-select of all screens for getDisplayMediaSet.
|
||||
CEF_CONTENT_SETTING_TYPE_GET_DISPLAY_MEDIA_SET_SELECT_ALL_SCREENS,
|
||||
|
||||
/// Content settings for access to serial ports. The "guard" content setting
|
||||
/// stores whether to allow sites to ask for permission to access a port. The
|
||||
/// permissions granted to access particular ports are stored in the "chooser
|
||||
/// data" website setting.
|
||||
CEF_CONTENT_SETTING_TYPE_SERIAL_GUARD,
|
||||
CEF_CONTENT_SETTING_TYPE_SERIAL_CHOOSER_DATA,
|
||||
|
||||
/// Nothing is stored in this setting at present. Please refer to
|
||||
/// PeriodicBackgroundSyncPermissionContext for details on how this permission
|
||||
/// is ascertained.
|
||||
/// This content setting is not registered because it does not require access
|
||||
/// to any existing providers.
|
||||
CEF_CONTENT_SETTING_TYPE_PERIODIC_BACKGROUND_SYNC,
|
||||
|
||||
/// Content setting which stores whether to allow sites to ask for permission
|
||||
/// to do Bluetooth scanning.
|
||||
CEF_CONTENT_SETTING_TYPE_BLUETOOTH_SCANNING,
|
||||
|
||||
/// Content settings for access to HID devices. The "guard" content setting
|
||||
/// stores whether to allow sites to ask for permission to access a device.
|
||||
/// The permissions granted to access particular devices are stored in the
|
||||
/// "chooser data" website setting.
|
||||
CEF_CONTENT_SETTING_TYPE_HID_GUARD,
|
||||
CEF_CONTENT_SETTING_TYPE_HID_CHOOSER_DATA,
|
||||
|
||||
/// Wake Lock API, which has two lock types: screen and system locks.
|
||||
/// Currently, screen locks do not need any additional permission, and system
|
||||
/// locks are always denied while the right UI is worked out.
|
||||
CEF_CONTENT_SETTING_TYPE_WAKE_LOCK_SCREEN,
|
||||
CEF_CONTENT_SETTING_TYPE_WAKE_LOCK_SYSTEM,
|
||||
|
||||
/// Legacy SameSite cookie behavior. This disables SameSite=Lax-by-default,
|
||||
/// SameSite=None requires Secure, and Schemeful Same-Site, forcing the
|
||||
/// legacy behavior wherein 1) cookies that don't specify SameSite are treated
|
||||
/// as SameSite=None, 2) SameSite=None cookies are not required to be Secure,
|
||||
/// and 3) schemeful same-site is not active.
|
||||
///
|
||||
/// This will also be used to revert to legacy behavior when future changes
|
||||
/// in cookie handling are introduced.
|
||||
CEF_CONTENT_SETTING_TYPE_LEGACY_COOKIE_ACCESS,
|
||||
|
||||
/// Content settings which stores whether to allow sites to ask for permission
|
||||
/// to save changes to an original file selected by the user through the
|
||||
/// File System Access API.
|
||||
CEF_CONTENT_SETTING_TYPE_FILE_SYSTEM_WRITE_GUARD,
|
||||
|
||||
/// Used to store whether to allow a website to exchange data with NFC
|
||||
/// devices.
|
||||
CEF_CONTENT_SETTING_TYPE_NFC,
|
||||
|
||||
/// Website setting to store permissions granted to access particular
|
||||
/// Bluetooth devices.
|
||||
CEF_CONTENT_SETTING_TYPE_BLUETOOTH_CHOOSER_DATA,
|
||||
|
||||
/// Full access to the system clipboard (sanitized read without user gesture,
|
||||
/// and unsanitized read and write with user gesture).
|
||||
CEF_CONTENT_SETTING_TYPE_CLIPBOARD_READ_WRITE,
|
||||
|
||||
/// This is special-cased in the permissions layer to always allow, and as
|
||||
/// such doesn't have associated prefs data.
|
||||
CEF_CONTENT_SETTING_TYPE_CLIPBOARD_SANITIZED_WRITE,
|
||||
|
||||
/// This content setting type is for caching safe browsing real time url
|
||||
/// check's verdicts of each origin.
|
||||
CEF_CONTENT_SETTING_TYPE_SAFE_BROWSING_URL_CHECK_DATA,
|
||||
|
||||
/// Used to store whether a site is allowed to request AR or VR sessions with
|
||||
/// the WebXr Device API.
|
||||
CEF_CONTENT_SETTING_TYPE_VR,
|
||||
CEF_CONTENT_SETTING_TYPE_AR,
|
||||
|
||||
/// Content setting which stores whether to allow site to open and read files
|
||||
/// and directories selected through the File System Access API.
|
||||
CEF_CONTENT_SETTING_TYPE_FILE_SYSTEM_READ_GUARD,
|
||||
|
||||
/// Access to first party storage in a third-party context. Exceptions are
|
||||
/// scoped to the combination of requesting/top-level origin, and are managed
|
||||
/// through the Storage Access API. For the time being, this content setting
|
||||
/// exists in parallel to third-party cookie rules stored in COOKIES.
|
||||
CEF_CONTENT_SETTING_TYPE_STORAGE_ACCESS,
|
||||
|
||||
/// Content setting which stores whether to allow a site to control camera
|
||||
/// movements. It does not give access to camera.
|
||||
CEF_CONTENT_SETTING_TYPE_CAMERA_PAN_TILT_ZOOM,
|
||||
|
||||
/// Content setting for Screen Enumeration and Screen Detail functionality.
|
||||
/// Permits access to detailed multi-screen information, like size and
|
||||
/// position. Permits placing fullscreen and windowed content on specific
|
||||
/// screens. See also: https://w3c.github.io/window-placement
|
||||
CEF_CONTENT_SETTING_TYPE_WINDOW_MANAGEMENT,
|
||||
|
||||
/// Stores whether to allow insecure websites to make local network requests.
|
||||
/// See also: https://wicg.github.io/local-network-access
|
||||
/// Set through enterprise policies only.
|
||||
CEF_CONTENT_SETTING_TYPE_INSECURE_LOCAL_NETWORK,
|
||||
|
||||
/// Content setting which stores whether or not a site can access low-level
|
||||
/// locally installed font data using the Local Fonts Access API.
|
||||
CEF_CONTENT_SETTING_TYPE_LOCAL_FONTS,
|
||||
|
||||
/// Stores per-origin state for permission auto-revocation (for all permission
|
||||
/// types).
|
||||
CEF_CONTENT_SETTING_TYPE_PERMISSION_AUTOREVOCATION_DATA,
|
||||
|
||||
/// Stores per-origin state of the most recently selected directory for the
|
||||
/// use by the File System Access API.
|
||||
CEF_CONTENT_SETTING_TYPE_FILE_SYSTEM_LAST_PICKED_DIRECTORY,
|
||||
|
||||
/// Controls access to the getDisplayMedia API when {preferCurrentTab: true}
|
||||
/// is specified.
|
||||
CEF_CONTENT_SETTING_TYPE_DISPLAY_CAPTURE,
|
||||
|
||||
/// Website setting to store permissions metadata granted to paths on the
|
||||
/// local file system via the File System Access API.
|
||||
/// |FILE_SYSTEM_WRITE_GUARD| is the corresponding "guard" setting.
|
||||
CEF_CONTENT_SETTING_TYPE_FILE_SYSTEM_ACCESS_CHOOSER_DATA,
|
||||
|
||||
/// Stores a grant that allows a relying party to send a request for identity
|
||||
/// information to specified identity providers, potentially through any
|
||||
/// anti-tracking measures that would otherwise prevent it. This setting is
|
||||
/// associated with the relying party's origin.
|
||||
CEF_CONTENT_SETTING_TYPE_FEDERATED_IDENTITY_SHARING,
|
||||
|
||||
/// Whether to use the v8 optimized JIT for running JavaScript on the page.
|
||||
CEF_CONTENT_SETTING_TYPE_JAVASCRIPT_JIT,
|
||||
|
||||
/// Content setting which stores user decisions to allow loading a site over
|
||||
/// HTTP. Entries are added by hostname when a user bypasses the HTTPS-First
|
||||
/// Mode interstitial warning when a site does not support HTTPS. Allowed
|
||||
/// hosts are exact hostname matches -- subdomains of a host on the allowlist
|
||||
/// must be separately allowlisted.
|
||||
CEF_CONTENT_SETTING_TYPE_HTTP_ALLOWED,
|
||||
|
||||
/// Stores metadata related to form fill, such as e.g. whether user data was
|
||||
/// autofilled on a specific website.
|
||||
CEF_CONTENT_SETTING_TYPE_FORMFILL_METADATA,
|
||||
|
||||
/// Setting to indicate that there is an active federated sign-in session
|
||||
/// between a specified relying party and a specified identity provider for
|
||||
/// a specified account. When this is present it allows access to session
|
||||
/// management capabilities between the sites. This setting is associated
|
||||
/// with the relying party's origin.
|
||||
CEF_CONTENT_SETTING_TYPE_FEDERATED_IDENTITY_ACTIVE_SESSION,
|
||||
|
||||
/// Setting to indicate whether Chrome should automatically apply darkening to
|
||||
/// web content.
|
||||
CEF_CONTENT_SETTING_TYPE_AUTO_DARK_WEB_CONTENT,
|
||||
|
||||
/// Setting to indicate whether Chrome should request the desktop view of a
|
||||
/// site instead of the mobile one.
|
||||
CEF_CONTENT_SETTING_TYPE_REQUEST_DESKTOP_SITE,
|
||||
|
||||
/// Setting to indicate whether browser should allow signing into a website
|
||||
/// via the browser FedCM API.
|
||||
CEF_CONTENT_SETTING_TYPE_FEDERATED_IDENTITY_API,
|
||||
|
||||
/// Stores notification interactions per origin for the past 90 days.
|
||||
/// Interactions per origin are pre-aggregated over seven-day windows: A
|
||||
/// notification interaction or display is assigned to the last Monday
|
||||
/// midnight in local time.
|
||||
CEF_CONTENT_SETTING_TYPE_NOTIFICATION_INTERACTIONS,
|
||||
|
||||
/// Website setting which stores the last reduced accept language negotiated
|
||||
/// for a given origin, to be used on future visits to the origin.
|
||||
CEF_CONTENT_SETTING_TYPE_REDUCED_ACCEPT_LANGUAGE,
|
||||
|
||||
/// Website setting which is used for NotificationPermissionReviewService to
|
||||
/// store origin blocklist from review notification permissions feature.
|
||||
CEF_CONTENT_SETTING_TYPE_NOTIFICATION_PERMISSION_REVIEW,
|
||||
|
||||
/// Website setting to store permissions granted to access particular devices
|
||||
/// in private network.
|
||||
CEF_CONTENT_SETTING_TYPE_PRIVATE_NETWORK_GUARD,
|
||||
CEF_CONTENT_SETTING_TYPE_PRIVATE_NETWORK_CHOOSER_DATA,
|
||||
|
||||
/// Website setting which stores whether the browser has observed the user
|
||||
/// signing into an identity-provider based on observing the IdP-SignIn-Status
|
||||
/// HTTP header.
|
||||
CEF_CONTENT_SETTING_TYPE_FEDERATED_IDENTITY_IDENTITY_PROVIDER_SIGNIN_STATUS,
|
||||
|
||||
/// Website setting which is used for UnusedSitePermissionsService to
|
||||
/// store revoked permissions of unused sites from unused site permissions
|
||||
/// feature.
|
||||
CEF_CONTENT_SETTING_TYPE_REVOKED_UNUSED_SITE_PERMISSIONS,
|
||||
|
||||
/// Similar to STORAGE_ACCESS, but applicable at the page-level rather than
|
||||
/// being specific to a frame.
|
||||
CEF_CONTENT_SETTING_TYPE_TOP_LEVEL_STORAGE_ACCESS,
|
||||
|
||||
/// Setting to indicate whether user has opted in to allowing auto re-authn
|
||||
/// via the FedCM API.
|
||||
CEF_CONTENT_SETTING_TYPE_FEDERATED_IDENTITY_AUTO_REAUTHN_PERMISSION,
|
||||
|
||||
/// Website setting which stores whether the user has explicitly registered
|
||||
/// a website as an identity-provider.
|
||||
CEF_CONTENT_SETTING_TYPE_FEDERATED_IDENTITY_IDENTITY_PROVIDER_REGISTRATION,
|
||||
|
||||
/// Content setting which is used to indicate whether anti-abuse functionality
|
||||
/// should be enabled.
|
||||
CEF_CONTENT_SETTING_TYPE_ANTI_ABUSE,
|
||||
|
||||
/// Content setting used to indicate whether third-party storage partitioning
|
||||
/// should be enabled.
|
||||
CEF_CONTENT_SETTING_TYPE_THIRD_PARTY_STORAGE_PARTITIONING,
|
||||
|
||||
/// Used to indicate whether HTTPS-First Mode is enabled on the hostname.
|
||||
CEF_CONTENT_SETTING_TYPE_HTTPS_ENFORCED,
|
||||
|
||||
CEF_CONTENT_SETTING_TYPE_NUM_TYPES,
|
||||
} cef_content_setting_types_t;
|
||||
|
||||
///
|
||||
/// Supported content setting values. Should be kept in sync with Chromium's
|
||||
/// ContentSetting type.
|
||||
///
|
||||
typedef enum {
|
||||
CEF_CONTENT_SETTING_VALUE_DEFAULT = 0,
|
||||
CEF_CONTENT_SETTING_VALUE_ALLOW,
|
||||
CEF_CONTENT_SETTING_VALUE_BLOCK,
|
||||
CEF_CONTENT_SETTING_VALUE_ASK,
|
||||
CEF_CONTENT_SETTING_VALUE_SESSION_ONLY,
|
||||
CEF_CONTENT_SETTING_VALUE_DETECT_IMPORTANT_CONTENT,
|
||||
|
||||
CEF_CONTENT_SETTING_VALUE_NUM_VALUES
|
||||
} cef_content_setting_values_t;
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif // CEF_INCLUDE_INTERNAL_CEF_TYPES_CONTENT_SETTINGS_H_
|
@@ -364,7 +364,6 @@ struct CefSettingsTraits {
|
||||
cef_string_clear(&s->main_bundle_path);
|
||||
cef_string_clear(&s->cache_path);
|
||||
cef_string_clear(&s->root_cache_path);
|
||||
cef_string_clear(&s->user_data_path);
|
||||
cef_string_clear(&s->user_agent);
|
||||
cef_string_clear(&s->user_agent_product);
|
||||
cef_string_clear(&s->locale);
|
||||
@@ -397,8 +396,6 @@ struct CefSettingsTraits {
|
||||
&target->cache_path, copy);
|
||||
cef_string_set(src->root_cache_path.str, src->root_cache_path.length,
|
||||
&target->root_cache_path, copy);
|
||||
cef_string_set(src->user_data_path.str, src->user_data_path.length,
|
||||
&target->user_data_path, copy);
|
||||
target->persist_session_cookies = src->persist_session_cookies;
|
||||
target->persist_user_preferences = src->persist_user_preferences;
|
||||
|
||||
|
@@ -86,7 +86,7 @@ class CefTestServer : public CefBaseRefCounted {
|
||||
///
|
||||
/*--cef()--*/
|
||||
static CefRefPtr<CefTestServer> CreateAndStart(
|
||||
uint16 port,
|
||||
uint16_t port,
|
||||
bool https_server,
|
||||
cef_test_cert_type_t https_cert_type,
|
||||
CefRefPtr<CefTestServerHandler> handler);
|
||||
|
@@ -123,7 +123,7 @@ class CefDisplay : public CefBaseRefCounted {
|
||||
/// Returns the unique identifier for this Display.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual int64 GetID() = 0;
|
||||
virtual int64_t GetID() = 0;
|
||||
|
||||
///
|
||||
/// Returns this Display's device pixel scale factor. This specifies how much
|
||||
|
@@ -45,6 +45,8 @@
|
||||
#include "include/views/cef_panel.h"
|
||||
#include "include/views/cef_window_delegate.h"
|
||||
|
||||
class CefBrowserView;
|
||||
|
||||
///
|
||||
/// A Window is a top-level Window/widget in the Views hierarchy. By default it
|
||||
/// will have a non-client area with title bar, icon and buttons that supports
|
||||
@@ -68,6 +70,20 @@ class CefWindow : public CefPanel {
|
||||
/*--cef()--*/
|
||||
virtual void Show() = 0;
|
||||
|
||||
///
|
||||
/// Show the Window as a browser modal dialog relative to |browser_view|. A
|
||||
/// parent Window must be returned via CefWindowDelegate::GetParentWindow()
|
||||
/// and |browser_view| must belong to that parent Window. While this Window is
|
||||
/// visible, |browser_view| will be disabled while other controls in the
|
||||
/// parent Window remain enabled. Navigating or destroying the |browser_view|
|
||||
/// will close this Window automatically. Alternately, use Show() and return
|
||||
/// true from CefWindowDelegate::IsWindowModalDialog() for a window modal
|
||||
/// dialog where all controls in the parent Window are disabled.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual void ShowAsBrowserModalDialog(
|
||||
CefRefPtr<CefBrowserView> browser_view) = 0;
|
||||
|
||||
///
|
||||
/// Hide the Window.
|
||||
///
|
||||
@@ -300,7 +316,7 @@ class CefWindow : public CefPanel {
|
||||
/// primarily for testing purposes.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual void SendKeyPress(int key_code, uint32 event_flags) = 0;
|
||||
virtual void SendKeyPress(int key_code, uint32_t event_flags) = 0;
|
||||
|
||||
///
|
||||
/// Simulate a mouse move. The mouse cursor will be moved to the specified
|
||||
|
@@ -99,6 +99,19 @@ class CefWindowDelegate : public CefPanelDelegate {
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
///
|
||||
/// Return true if |window| should be created as a window modal dialog. Only
|
||||
/// called when a Window is returned via GetParentWindow() with |is_menu| set
|
||||
/// to false. All controls in the parent Window will be disabled while
|
||||
/// |window| is visible. This functionality is not supported by all Linux
|
||||
/// window managers. Alternately, use CefWindow::ShowAsBrowserModalDialog()
|
||||
/// for a browser modal dialog that works on all platforms.
|
||||
///
|
||||
/*--cef()--*/
|
||||
virtual bool IsWindowModalDialog(CefRefPtr<CefWindow> window) {
|
||||
return false;
|
||||
}
|
||||
|
||||
///
|
||||
/// Return the initial bounds for |window| in density independent pixel (DIP)
|
||||
/// coordinates. If this method returns an empty CefRect then
|
||||
|
@@ -61,15 +61,15 @@ class CefByteReadHandler : public CefReadHandler {
|
||||
|
||||
// CefReadHandler methods.
|
||||
virtual size_t Read(void* ptr, size_t size, size_t n) override;
|
||||
virtual int Seek(int64 offset, int whence) override;
|
||||
virtual int64 Tell() override;
|
||||
virtual int Seek(int64_t offset, int whence) override;
|
||||
virtual int64_t Tell() override;
|
||||
virtual int Eof() override;
|
||||
virtual bool MayBlock() override { return false; }
|
||||
|
||||
private:
|
||||
const unsigned char* bytes_;
|
||||
int64 size_;
|
||||
int64 offset_;
|
||||
int64_t size_;
|
||||
int64_t offset_;
|
||||
CefRefPtr<CefBaseRefCounted> source_;
|
||||
|
||||
base::Lock lock_;
|
||||
|
@@ -109,9 +109,9 @@ bool CefPostTask(CefThreadId threadId, const base::RepeatingClosure& closure);
|
||||
///
|
||||
bool CefPostDelayedTask(CefThreadId threadId,
|
||||
base::OnceClosure closure,
|
||||
int64 delay_ms);
|
||||
int64_t delay_ms);
|
||||
bool CefPostDelayedTask(CefThreadId threadId,
|
||||
const base::RepeatingClosure& closure,
|
||||
int64 delay_ms);
|
||||
int64_t delay_ms);
|
||||
|
||||
#endif // CEF_INCLUDE_WRAPPER_CEF_CLOSURE_TASK_H_
|
||||
|
@@ -177,7 +177,7 @@
|
||||
// 8. Handle the query in your Handler::OnQuery implementation and execute the
|
||||
// appropriate callback either immediately or asynchronously.
|
||||
//
|
||||
// void MyHandler::OnQuery(int64 query_id,
|
||||
// void MyHandler::OnQuery(int64_t query_id,
|
||||
// CefRefPtr<CefBrowser> browser,
|
||||
// CefRefPtr<CefFrame> frame,
|
||||
// const CefString& request,
|
||||
@@ -269,7 +269,7 @@ class CefMessageRouterBrowserSide
|
||||
///
|
||||
virtual bool OnQuery(CefRefPtr<CefBrowser> browser,
|
||||
CefRefPtr<CefFrame> frame,
|
||||
int64 query_id,
|
||||
int64_t query_id,
|
||||
const CefString& request,
|
||||
bool persistent,
|
||||
CefRefPtr<Callback> callback) {
|
||||
@@ -287,7 +287,7 @@ class CefMessageRouterBrowserSide
|
||||
///
|
||||
virtual void OnQueryCanceled(CefRefPtr<CefBrowser> browser,
|
||||
CefRefPtr<CefFrame> frame,
|
||||
int64 query_id) {}
|
||||
int64_t query_id) {}
|
||||
|
||||
virtual ~Handler() {}
|
||||
};
|
||||
|
@@ -361,7 +361,7 @@ class CefResourceManager
|
||||
ProviderEntryList providers_;
|
||||
|
||||
// Map of response ID to pending CefResourceHandler object.
|
||||
using PendingHandlersMap = std::map<uint64, CefRefPtr<CefResourceHandler>>;
|
||||
using PendingHandlersMap = std::map<uint64_t, CefRefPtr<CefResourceHandler>>;
|
||||
PendingHandlersMap pending_handlers_;
|
||||
|
||||
UrlFilter url_filter_;
|
||||
|
@@ -68,7 +68,7 @@ class CefStreamResourceHandler : public CefResourceHandler {
|
||||
bool& handle_request,
|
||||
CefRefPtr<CefCallback> callback) override;
|
||||
void GetResponseHeaders(CefRefPtr<CefResponse> response,
|
||||
int64& response_length,
|
||||
int64_t& response_length,
|
||||
CefString& redirectUrl) override;
|
||||
bool Read(void* data_out,
|
||||
int bytes_to_read,
|
||||
|
@@ -32,6 +32,7 @@
|
||||
#include "chrome/browser/ui/color/chrome_color_mixers.h"
|
||||
#include "chrome/browser/ui/javascript_dialogs/chrome_javascript_app_modal_dialog_view_factory.h"
|
||||
#include "chrome/browser/ui/ui_features.h"
|
||||
#include "chrome/common/chrome_paths.h"
|
||||
#include "chrome/common/chrome_switches.h"
|
||||
#include "components/constrained_window/constrained_window_views.h"
|
||||
#include "content/public/browser/gpu_data_manager.h"
|
||||
@@ -58,6 +59,7 @@
|
||||
|
||||
#if BUILDFLAG(IS_WIN)
|
||||
#include "base/enterprise_util.h"
|
||||
#include "base/files/file_util.h"
|
||||
#include "chrome/browser/chrome_browser_main_win.h"
|
||||
#include "chrome/browser/win/parental_controls.h"
|
||||
#endif
|
||||
@@ -82,7 +84,6 @@
|
||||
#include "base/path_service.h"
|
||||
#include "chrome/browser/themes/theme_service_aura_linux.h"
|
||||
#include "chrome/browser/ui/views/theme_profile_key.h"
|
||||
#include "chrome/common/chrome_paths.h"
|
||||
#include "chrome/grit/chromium_strings.h"
|
||||
#include "components/os_crypt/sync/key_storage_config_linux.h"
|
||||
#include "libcef/browser/printing/print_dialog_linux.h"
|
||||
@@ -241,6 +242,10 @@ void AlloyBrowserMainParts::PostCreateMainMessageLoop() {
|
||||
DCHECK(!config->user_data_path.empty());
|
||||
OSCrypt::SetConfig(std::move(config));
|
||||
#endif // BUILDFLAG(IS_LINUX)
|
||||
|
||||
#if BUILDFLAG(IS_WIN)
|
||||
base::SetExtraNoExecuteAllowedPath(chrome::DIR_USER_DATA);
|
||||
#endif
|
||||
}
|
||||
|
||||
int AlloyBrowserMainParts::PreCreateThreads() {
|
||||
|
@@ -300,11 +300,11 @@ void BindNetworkHintsHandler(
|
||||
predictors::NetworkHintsHandlerImpl::Create(frame_host, std::move(receiver));
|
||||
}
|
||||
|
||||
base::FilePath GetRootCachePath() {
|
||||
// The CefContext::ValidateCachePath method enforces the requirement that all
|
||||
// cache_path values be either equal to or a child of root_cache_path.
|
||||
return base::FilePath(
|
||||
CefString(&CefContext::Get()->settings().root_cache_path));
|
||||
base::FilePath GetUserDataPath() {
|
||||
base::FilePath user_data_path;
|
||||
base::PathService::Get(chrome::DIR_USER_DATA, &user_data_path);
|
||||
DCHECK(!user_data_path.empty());
|
||||
return user_data_path;
|
||||
}
|
||||
|
||||
const extensions::Extension* GetEnabledExtensionFromSiteURL(
|
||||
@@ -506,35 +506,7 @@ void AlloyContentBrowserClient::SiteInstanceGotProcess(
|
||||
}
|
||||
|
||||
extensions::ProcessMap::Get(context)->Insert(
|
||||
extension->id(), site_instance->GetProcess()->GetID(),
|
||||
site_instance->GetId());
|
||||
}
|
||||
|
||||
void AlloyContentBrowserClient::SiteInstanceDeleting(
|
||||
content::SiteInstance* site_instance) {
|
||||
if (!extensions::ExtensionsEnabled()) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!site_instance->HasProcess()) {
|
||||
return;
|
||||
}
|
||||
|
||||
auto context = site_instance->GetBrowserContext();
|
||||
auto registry = extensions::ExtensionRegistry::Get(context);
|
||||
if (!registry) {
|
||||
return;
|
||||
}
|
||||
|
||||
auto extension = registry->enabled_extensions().GetExtensionOrAppByURL(
|
||||
site_instance->GetSiteURL());
|
||||
if (!extension) {
|
||||
return;
|
||||
}
|
||||
|
||||
extensions::ProcessMap::Get(context)->Remove(
|
||||
extension->id(), site_instance->GetProcess()->GetID(),
|
||||
site_instance->GetId());
|
||||
extension->id(), site_instance->GetProcess()->GetID());
|
||||
}
|
||||
|
||||
void AlloyContentBrowserClient::BindHostReceiverForRenderer(
|
||||
@@ -1176,9 +1148,9 @@ bool AlloyContentBrowserClient::ConfigureNetworkContextParams(
|
||||
network_context_params->cookieable_schemes =
|
||||
cef_context->GetCookieableSchemes();
|
||||
|
||||
// TODO(cef): Remove this and add required NetworkIsolationKeys,
|
||||
// TODO(cef): Remove this and add required NetworkAnonymizationKey,
|
||||
// this is currently not the case and this was not required pre M84.
|
||||
network_context_params->require_network_isolation_key = false;
|
||||
network_context_params->require_network_anonymization_key = false;
|
||||
|
||||
return true;
|
||||
}
|
||||
@@ -1187,19 +1159,7 @@ bool AlloyContentBrowserClient::ConfigureNetworkContextParams(
|
||||
// directories that are not returned by this method.
|
||||
std::vector<base::FilePath>
|
||||
AlloyContentBrowserClient::GetNetworkContextsParentDirectory() {
|
||||
base::FilePath user_data_path;
|
||||
base::PathService::Get(chrome::DIR_USER_DATA, &user_data_path);
|
||||
DCHECK(!user_data_path.empty());
|
||||
|
||||
const auto& root_cache_path = GetRootCachePath();
|
||||
|
||||
// root_cache_path may sometimes be empty or a child of user_data_path, so
|
||||
// only return the one path in that case.
|
||||
if (root_cache_path.empty() || user_data_path.IsParent(root_cache_path)) {
|
||||
return {user_data_path};
|
||||
}
|
||||
|
||||
return {user_data_path, root_cache_path};
|
||||
return {GetUserDataPath()};
|
||||
}
|
||||
|
||||
bool AlloyContentBrowserClient::HandleExternalProtocol(
|
||||
@@ -1310,7 +1270,7 @@ void AlloyContentBrowserClient::RegisterBrowserInterfaceBindersForServiceWorker(
|
||||
|
||||
base::FilePath
|
||||
AlloyContentBrowserClient::GetSandboxedStorageServiceDataDirectory() {
|
||||
return GetRootCachePath();
|
||||
return GetUserDataPath();
|
||||
}
|
||||
|
||||
std::string AlloyContentBrowserClient::GetProduct() {
|
||||
@@ -1318,7 +1278,7 @@ std::string AlloyContentBrowserClient::GetProduct() {
|
||||
}
|
||||
|
||||
std::string AlloyContentBrowserClient::GetChromeProduct() {
|
||||
return version_info::GetProductNameAndVersionForUserAgent();
|
||||
return std::string(version_info::GetProductNameAndVersionForUserAgent());
|
||||
}
|
||||
|
||||
std::string AlloyContentBrowserClient::GetUserAgent() {
|
||||
@@ -1340,18 +1300,8 @@ AlloyContentBrowserClient::GetWebContentsViewDelegate(
|
||||
}
|
||||
|
||||
blink::UserAgentMetadata AlloyContentBrowserClient::GetUserAgentMetadata() {
|
||||
blink::UserAgentMetadata metadata;
|
||||
|
||||
metadata.brand_version_list = {blink::UserAgentBrandVersion{
|
||||
version_info::GetProductName(), version_info::GetMajorVersionNumber()}};
|
||||
metadata.full_version = version_info::GetVersionNumber();
|
||||
metadata.platform = version_info::GetOSType();
|
||||
|
||||
// TODO(mkwst): Poke at BuildUserAgentFromProduct to split out these pieces.
|
||||
metadata.architecture = "";
|
||||
metadata.model = "";
|
||||
|
||||
return metadata;
|
||||
return embedder_support::GetUserAgentMetadata(
|
||||
g_browser_process->local_state());
|
||||
}
|
||||
|
||||
base::flat_set<std::string>
|
||||
|
@@ -65,7 +65,6 @@ class AlloyContentBrowserClient : public content::ContentBrowserClient {
|
||||
bool IsWebUIAllowedToMakeNetworkRequests(const url::Origin& origin) override;
|
||||
bool IsHandledURL(const GURL& url) override;
|
||||
void SiteInstanceGotProcess(content::SiteInstance* site_instance) override;
|
||||
void SiteInstanceDeleting(content::SiteInstance* site_instance) override;
|
||||
void BindHostReceiverForRenderer(
|
||||
content::RenderProcessHost* render_process_host,
|
||||
mojo::GenericPendingReceiver receiver) override;
|
||||
|
@@ -16,6 +16,7 @@
|
||||
#include "libcef/common/extensions/extensions_util.h"
|
||||
|
||||
#include "base/command_line.h"
|
||||
#include "base/path_service.h"
|
||||
#include "chrome/browser/component_updater/chrome_component_updater_configurator.h"
|
||||
#include "chrome/browser/net/system_network_context_manager.h"
|
||||
#include "chrome/browser/permissions/chrome_permissions_client.h"
|
||||
@@ -24,6 +25,7 @@
|
||||
#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 "chrome/common/chrome_paths.h"
|
||||
#include "components/component_updater/component_updater_service.h"
|
||||
#include "components/component_updater/timer_update_scheduler.h"
|
||||
#include "components/net_log/chrome_net_log.h"
|
||||
@@ -172,6 +174,12 @@ ChromeBrowserProcessAlloy::network_quality_tracker() {
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
embedder_support::OriginTrialsSettingsStorage*
|
||||
ChromeBrowserProcessAlloy::GetOriginTrialsSettingsStorage() {
|
||||
DCHECK(false);
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
ProfileManager* ChromeBrowserProcessAlloy::profile_manager() {
|
||||
DCHECK(context_initialized_);
|
||||
return profile_manager_.get();
|
||||
@@ -180,16 +188,15 @@ ProfileManager* ChromeBrowserProcessAlloy::profile_manager() {
|
||||
PrefService* ChromeBrowserProcessAlloy::local_state() {
|
||||
DCHECK(initialized_);
|
||||
if (!local_state_) {
|
||||
// Use a location that is shared by all request contexts.
|
||||
const CefSettings& settings = CefContext::Get()->settings();
|
||||
const base::FilePath& root_cache_path =
|
||||
base::FilePath(CefString(&settings.root_cache_path));
|
||||
base::FilePath user_data_path;
|
||||
base::PathService::Get(chrome::DIR_USER_DATA, &user_data_path);
|
||||
DCHECK(!user_data_path.empty());
|
||||
|
||||
// Used for very early NetworkService initialization.
|
||||
// Always persist preferences for this PrefService if possible because it
|
||||
// contains the cookie encryption key on Windows.
|
||||
local_state_ =
|
||||
browser_prefs::CreatePrefService(nullptr /* profile */, root_cache_path,
|
||||
browser_prefs::CreatePrefService(nullptr /* profile */, user_data_path,
|
||||
true /* persist_user_preferences */);
|
||||
}
|
||||
return local_state_.get();
|
||||
|
@@ -57,6 +57,8 @@ class ChromeBrowserProcessAlloy : public BrowserProcess {
|
||||
metrics::MetricsService* metrics_service() override;
|
||||
SystemNetworkContextManager* system_network_context_manager() override;
|
||||
network::NetworkQualityTracker* network_quality_tracker() override;
|
||||
embedder_support::OriginTrialsSettingsStorage*
|
||||
GetOriginTrialsSettingsStorage() override;
|
||||
ProfileManager* profile_manager() override;
|
||||
PrefService* local_state() override;
|
||||
scoped_refptr<network::SharedURLLoaderFactory> shared_url_loader_factory()
|
||||
|
@@ -28,6 +28,7 @@
|
||||
#include "content/public/browser/download_request_utils.h"
|
||||
#include "content/public/browser/file_select_listener.h"
|
||||
#include "content/public/browser/navigation_entry.h"
|
||||
#include "ui/base/resource/resource_scale_factor.h"
|
||||
#include "ui/gfx/image/image_skia.h"
|
||||
#include "ui/shell_dialogs/select_file_policy.h"
|
||||
|
||||
@@ -315,7 +316,7 @@ void CefBrowserHostBase::StartDownload(const CefString& url) {
|
||||
void CefBrowserHostBase::DownloadImage(
|
||||
const CefString& image_url,
|
||||
bool is_favicon,
|
||||
uint32 max_image_size,
|
||||
uint32_t max_image_size,
|
||||
bool bypass_cache,
|
||||
CefRefPtr<CefDownloadImageCallback> callback) {
|
||||
if (!CEF_CURRENTLY_ON_UIT()) {
|
||||
@@ -340,11 +341,12 @@ void CefBrowserHostBase::DownloadImage(
|
||||
return;
|
||||
}
|
||||
|
||||
const float scale = ui::GetScaleForMaxSupportedResourceScaleFactor();
|
||||
web_contents->DownloadImage(
|
||||
gurl, is_favicon, gfx::Size(max_image_size, max_image_size),
|
||||
max_image_size * gfx::ImageSkia::GetMaxSupportedScale(), bypass_cache,
|
||||
max_image_size * scale, bypass_cache,
|
||||
base::BindOnce(
|
||||
[](uint32 max_image_size,
|
||||
[](uint32_t max_image_size,
|
||||
CefRefPtr<CefDownloadImageCallback> callback, int id,
|
||||
int http_status_code, const GURL& image_url,
|
||||
const std::vector<SkBitmap>& bitmaps,
|
||||
@@ -763,7 +765,7 @@ CefRefPtr<CefFrame> CefBrowserHostBase::GetFocusedFrame() {
|
||||
return GetFrame(CefFrameHostImpl::kFocusedFrameId);
|
||||
}
|
||||
|
||||
CefRefPtr<CefFrame> CefBrowserHostBase::GetFrame(int64 identifier) {
|
||||
CefRefPtr<CefFrame> CefBrowserHostBase::GetFrame(int64_t identifier) {
|
||||
if (identifier == CefFrameHostImpl::kInvalidFrameId) {
|
||||
return nullptr;
|
||||
} else if (identifier == CefFrameHostImpl::kMainFrameId) {
|
||||
@@ -794,7 +796,8 @@ size_t CefBrowserHostBase::GetFrameCount() {
|
||||
return browser_info_->GetAllFrames().size();
|
||||
}
|
||||
|
||||
void CefBrowserHostBase::GetFrameIdentifiers(std::vector<int64>& identifiers) {
|
||||
void CefBrowserHostBase::GetFrameIdentifiers(
|
||||
std::vector<int64_t>& identifiers) {
|
||||
if (identifiers.size() > 0) {
|
||||
identifiers.clear();
|
||||
}
|
||||
|
@@ -179,7 +179,7 @@ class CefBrowserHostBase : public CefBrowserHost,
|
||||
void StartDownload(const CefString& url) override;
|
||||
void DownloadImage(const CefString& image_url,
|
||||
bool is_favicon,
|
||||
uint32 max_image_size,
|
||||
uint32_t max_image_size,
|
||||
bool bypass_cache,
|
||||
CefRefPtr<CefDownloadImageCallback> callback) override;
|
||||
void Print() override;
|
||||
@@ -225,10 +225,10 @@ class CefBrowserHostBase : public CefBrowserHost,
|
||||
bool IsPopup() override;
|
||||
CefRefPtr<CefFrame> GetMainFrame() override;
|
||||
CefRefPtr<CefFrame> GetFocusedFrame() override;
|
||||
CefRefPtr<CefFrame> GetFrame(int64 identifier) override;
|
||||
CefRefPtr<CefFrame> GetFrame(int64_t identifier) override;
|
||||
CefRefPtr<CefFrame> GetFrame(const CefString& name) override;
|
||||
size_t GetFrameCount() override;
|
||||
void GetFrameIdentifiers(std::vector<int64>& identifiers) override;
|
||||
void GetFrameIdentifiers(std::vector<int64_t>& identifiers) override;
|
||||
void GetFrameNames(std::vector<CefString>& names) override;
|
||||
|
||||
// CefBrowserContentsDelegate::Observer methods:
|
||||
|
@@ -408,7 +408,7 @@ void CefBrowserPlatformDelegate::StopFinding(bool clearSelection) {
|
||||
|
||||
// static
|
||||
int CefBrowserPlatformDelegate::TranslateWebEventModifiers(
|
||||
uint32 cef_modifiers) {
|
||||
uint32_t cef_modifiers) {
|
||||
int result = 0;
|
||||
// Set modifiers based on key state.
|
||||
if (cef_modifiers & EVENTFLAG_CAPS_LOCK_ON) {
|
||||
|
@@ -379,7 +379,7 @@ class CefBrowserPlatformDelegate {
|
||||
CefBrowserPlatformDelegate();
|
||||
virtual ~CefBrowserPlatformDelegate();
|
||||
|
||||
static int TranslateWebEventModifiers(uint32 cef_modifiers);
|
||||
static int TranslateWebEventModifiers(uint32_t cef_modifiers);
|
||||
|
||||
// Not owned by this object.
|
||||
content::WebContents* web_contents_ = nullptr;
|
||||
|
@@ -462,7 +462,6 @@ bool CefContext::Initialize(const CefMainArgs& args,
|
||||
"browser_subprocess_path");
|
||||
NormalizePathAndSet(settings_.framework_dir_path, "framework_dir_path");
|
||||
NormalizePathAndSet(settings_.main_bundle_path, "main_bundle_path");
|
||||
NormalizePathAndSet(settings_.user_data_path, "user_data_path");
|
||||
NormalizePathAndSet(settings_.resources_dir_path, "resources_dir_path");
|
||||
NormalizePathAndSet(settings_.locales_dir_path, "locales_dir_path");
|
||||
|
||||
|
@@ -50,7 +50,7 @@ cef_download_interrupt_reason_t CefDownloadItemImpl::GetInterruptReason() {
|
||||
const_value().GetLastReason());
|
||||
}
|
||||
|
||||
int64 CefDownloadItemImpl::GetCurrentSpeed() {
|
||||
int64_t CefDownloadItemImpl::GetCurrentSpeed() {
|
||||
CEF_VALUE_VERIFY_RETURN(false, 0);
|
||||
return const_value().CurrentSpeed();
|
||||
}
|
||||
@@ -60,12 +60,12 @@ int CefDownloadItemImpl::GetPercentComplete() {
|
||||
return const_value().PercentComplete();
|
||||
}
|
||||
|
||||
int64 CefDownloadItemImpl::GetTotalBytes() {
|
||||
int64_t CefDownloadItemImpl::GetTotalBytes() {
|
||||
CEF_VALUE_VERIFY_RETURN(false, 0);
|
||||
return const_value().GetTotalBytes();
|
||||
}
|
||||
|
||||
int64 CefDownloadItemImpl::GetReceivedBytes() {
|
||||
int64_t CefDownloadItemImpl::GetReceivedBytes() {
|
||||
CEF_VALUE_VERIFY_RETURN(false, 0);
|
||||
return const_value().GetReceivedBytes();
|
||||
}
|
||||
@@ -85,7 +85,7 @@ CefString CefDownloadItemImpl::GetFullPath() {
|
||||
return const_value().GetFullPath().value();
|
||||
}
|
||||
|
||||
uint32 CefDownloadItemImpl::GetId() {
|
||||
uint32_t CefDownloadItemImpl::GetId() {
|
||||
CEF_VALUE_VERIFY_RETURN(false, 0);
|
||||
return const_value().GetId();
|
||||
}
|
||||
|
@@ -29,14 +29,14 @@ class CefDownloadItemImpl
|
||||
bool IsCanceled() override;
|
||||
bool IsInterrupted() override;
|
||||
cef_download_interrupt_reason_t GetInterruptReason() override;
|
||||
int64 GetCurrentSpeed() override;
|
||||
int64_t GetCurrentSpeed() override;
|
||||
int GetPercentComplete() override;
|
||||
int64 GetTotalBytes() override;
|
||||
int64 GetReceivedBytes() override;
|
||||
int64_t GetTotalBytes() override;
|
||||
int64_t GetReceivedBytes() override;
|
||||
CefBaseTime GetStartTime() override;
|
||||
CefBaseTime GetEndTime() override;
|
||||
CefString GetFullPath() override;
|
||||
uint32 GetId() override;
|
||||
uint32_t GetId() override;
|
||||
CefString GetURL() override;
|
||||
CefString GetOriginalUrl() override;
|
||||
CefString GetSuggestedFileName() override;
|
||||
|
@@ -45,7 +45,7 @@ CefRefPtr<CefDownloadHandler> GetDownloadHandler(
|
||||
class CefBeforeDownloadCallbackImpl : public CefBeforeDownloadCallback {
|
||||
public:
|
||||
CefBeforeDownloadCallbackImpl(const base::WeakPtr<DownloadManager>& manager,
|
||||
uint32 download_id,
|
||||
uint32_t download_id,
|
||||
const base::FilePath& suggested_name,
|
||||
content::DownloadTargetCallback callback)
|
||||
: manager_(manager),
|
||||
@@ -81,7 +81,7 @@ class CefBeforeDownloadCallbackImpl : public CefBeforeDownloadCallback {
|
||||
|
||||
private:
|
||||
static void GenerateFilename(base::WeakPtr<DownloadManager> manager,
|
||||
uint32 download_id,
|
||||
uint32_t download_id,
|
||||
const base::FilePath& suggested_name,
|
||||
const base::FilePath& download_path,
|
||||
bool show_dialog,
|
||||
@@ -117,7 +117,7 @@ class CefBeforeDownloadCallbackImpl : public CefBeforeDownloadCallback {
|
||||
}
|
||||
|
||||
static void ChooseDownloadPath(base::WeakPtr<DownloadManager> manager,
|
||||
uint32 download_id,
|
||||
uint32_t download_id,
|
||||
const base::FilePath& suggested_path,
|
||||
bool show_dialog,
|
||||
content::DownloadTargetCallback callback) {
|
||||
@@ -188,7 +188,7 @@ class CefBeforeDownloadCallbackImpl : public CefBeforeDownloadCallback {
|
||||
}
|
||||
|
||||
base::WeakPtr<DownloadManager> manager_;
|
||||
uint32 download_id_;
|
||||
uint32_t download_id_;
|
||||
base::FilePath suggested_name_;
|
||||
content::DownloadTargetCallback callback_;
|
||||
|
||||
@@ -200,7 +200,7 @@ class CefDownloadItemCallbackImpl : public CefDownloadItemCallback {
|
||||
public:
|
||||
explicit CefDownloadItemCallbackImpl(
|
||||
const base::WeakPtr<DownloadManager>& manager,
|
||||
uint32 download_id)
|
||||
uint32_t download_id)
|
||||
: manager_(manager), download_id_(download_id) {}
|
||||
|
||||
CefDownloadItemCallbackImpl(const CefDownloadItemCallbackImpl&) = delete;
|
||||
@@ -265,7 +265,7 @@ class CefDownloadItemCallbackImpl : public CefDownloadItemCallback {
|
||||
}
|
||||
|
||||
base::WeakPtr<DownloadManager> manager_;
|
||||
uint32 download_id_;
|
||||
uint32_t download_id_;
|
||||
|
||||
IMPLEMENT_REFCOUNTING(CefDownloadItemCallbackImpl);
|
||||
};
|
||||
@@ -416,7 +416,7 @@ bool CefDownloadManagerDelegate::DetermineDownloadTarget(
|
||||
|
||||
void CefDownloadManagerDelegate::GetNextId(
|
||||
content::DownloadIdCallback callback) {
|
||||
static uint32 next_id = DownloadItem::kInvalidId + 1;
|
||||
static uint32_t next_id = DownloadItem::kInvalidId + 1;
|
||||
std::move(callback).Run(next_id++);
|
||||
}
|
||||
|
||||
|
@@ -98,7 +98,7 @@ class CefGetExtensionLoadFileCallbackImpl
|
||||
|
||||
// Move to the end of the stream.
|
||||
stream->Seek(0, SEEK_END);
|
||||
const int64 size = stream->Tell();
|
||||
const int64_t size = stream->Tell();
|
||||
if (size == 0) {
|
||||
LOG(WARNING) << "Extension resource " << file << " is empty.";
|
||||
return nullptr;
|
||||
@@ -111,7 +111,7 @@ class CefGetExtensionLoadFileCallbackImpl
|
||||
stream->Seek(0, SEEK_SET);
|
||||
|
||||
// Read all stream contents into the string.
|
||||
int64 read, offset = 0;
|
||||
int64_t read, offset = 0;
|
||||
do {
|
||||
read =
|
||||
static_cast<int>(stream->Read(&(*result)[offset], 1, size - offset));
|
||||
|
@@ -473,7 +473,7 @@ void CefExtensionSystem::InstallUpdate(
|
||||
|
||||
void CefExtensionSystem::PerformActionBasedOnOmahaAttributes(
|
||||
const std::string& extension_id,
|
||||
const base::Value& attributes) {
|
||||
const base::Value::Dict& attributes) {
|
||||
DCHECK(false);
|
||||
}
|
||||
|
||||
|
@@ -108,7 +108,7 @@ class CefExtensionSystem : public ExtensionSystem {
|
||||
InstallUpdateCallback install_update_callback) override;
|
||||
void PerformActionBasedOnOmahaAttributes(
|
||||
const std::string& extension_id,
|
||||
const base::Value& attributes) override;
|
||||
const base::Value::Dict& attributes) override;
|
||||
bool FinishDelayedInstallationIfReady(const std::string& extension_id,
|
||||
bool install_immediately) override;
|
||||
|
||||
|
@@ -193,13 +193,13 @@ CefString CefFrameHostImpl::GetName() {
|
||||
return name_;
|
||||
}
|
||||
|
||||
int64 CefFrameHostImpl::GetIdentifier() {
|
||||
int64_t CefFrameHostImpl::GetIdentifier() {
|
||||
base::AutoLock lock_scope(state_lock_);
|
||||
return frame_id_;
|
||||
}
|
||||
|
||||
CefRefPtr<CefFrame> CefFrameHostImpl::GetParent() {
|
||||
int64 parent_frame_id;
|
||||
int64_t parent_frame_id;
|
||||
|
||||
{
|
||||
base::AutoLock lock_scope(state_lock_);
|
||||
@@ -574,7 +574,7 @@ const ui::PageTransition CefFrameHostImpl::kPageTransitionExplicit =
|
||||
static_cast<ui::PageTransition>(ui::PAGE_TRANSITION_TYPED |
|
||||
ui::PAGE_TRANSITION_FROM_ADDRESS_BAR);
|
||||
|
||||
int64 CefFrameHostImpl::GetFrameId() const {
|
||||
int64_t CefFrameHostImpl::GetFrameId() const {
|
||||
base::AutoLock lock_scope(state_lock_);
|
||||
return is_main_frame_ ? kMainFrameId : frame_id_;
|
||||
}
|
||||
|
@@ -65,7 +65,7 @@ class CefFrameHostImpl : public CefFrame, public cef::mojom::BrowserFrame {
|
||||
bool IsMain() override;
|
||||
bool IsFocused() override;
|
||||
CefString GetName() override;
|
||||
int64 GetIdentifier() override;
|
||||
int64_t GetIdentifier() override;
|
||||
CefRefPtr<CefFrame> GetParent() override;
|
||||
CefString GetURL() override;
|
||||
CefRefPtr<CefBrowser> GetBrowser() override;
|
||||
@@ -156,7 +156,7 @@ class CefFrameHostImpl : public CefFrame, public cef::mojom::BrowserFrame {
|
||||
static const ui::PageTransition kPageTransitionExplicit;
|
||||
|
||||
private:
|
||||
int64 GetFrameId() const;
|
||||
int64_t GetFrameId() const;
|
||||
scoped_refptr<CefBrowserInfo> GetBrowserInfo() const;
|
||||
CefRefPtr<CefBrowserHostBase> GetBrowserHostBase() const;
|
||||
|
||||
@@ -176,12 +176,12 @@ class CefFrameHostImpl : public CefFrame, public cef::mojom::BrowserFrame {
|
||||
// The following members may be read/modified from any thread. All access must
|
||||
// be protected by |state_lock_|.
|
||||
mutable base::Lock state_lock_;
|
||||
int64 frame_id_;
|
||||
int64_t frame_id_;
|
||||
scoped_refptr<CefBrowserInfo> browser_info_;
|
||||
bool is_focused_;
|
||||
CefString url_;
|
||||
CefString name_;
|
||||
int64 parent_frame_id_;
|
||||
int64_t parent_frame_id_;
|
||||
|
||||
// The following members are only accessed on the UI thread.
|
||||
content::RenderFrameHost* render_frame_host_ = nullptr;
|
||||
|
@@ -273,8 +273,8 @@ void CefMainRunner::Shutdown(base::OnceClosure shutdown_on_ui_thread,
|
||||
void CefMainRunner::RunMessageLoop() {
|
||||
base::RunLoop run_loop;
|
||||
|
||||
DCHECK(quit_when_idle_callback_.is_null());
|
||||
quit_when_idle_callback_ = run_loop.QuitWhenIdleClosure();
|
||||
DCHECK(quit_callback_.is_null());
|
||||
quit_callback_ = run_loop.QuitClosure();
|
||||
|
||||
main_delegate_->BeforeMainMessageLoopRun(&run_loop);
|
||||
|
||||
@@ -283,11 +283,11 @@ void CefMainRunner::RunMessageLoop() {
|
||||
}
|
||||
|
||||
void CefMainRunner::QuitMessageLoop() {
|
||||
if (!quit_when_idle_callback_.is_null()) {
|
||||
if (!quit_callback_.is_null()) {
|
||||
if (main_delegate_->HandleMainMessageLoopQuit()) {
|
||||
return;
|
||||
}
|
||||
std::move(quit_when_idle_callback_).Run();
|
||||
std::move(quit_callback_).Run();
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -89,7 +89,7 @@ class CefMainRunner : public CefMainRunnerHandler {
|
||||
std::unique_ptr<CefUIThread> ui_thread_;
|
||||
|
||||
// Used to quit the current base::RunLoop.
|
||||
base::OnceClosure quit_when_idle_callback_;
|
||||
base::OnceClosure quit_callback_;
|
||||
};
|
||||
|
||||
#endif // CEF_LIBCEF_BROWSER_MAIN_RUNNER_H_
|
||||
|
@@ -229,7 +229,7 @@ base::TimeTicks CefBrowserPlatformDelegateNativeAura::GetEventTimeStamp() {
|
||||
|
||||
// static
|
||||
int CefBrowserPlatformDelegateNativeAura::TranslateUiEventModifiers(
|
||||
uint32 cef_modifiers) {
|
||||
uint32_t cef_modifiers) {
|
||||
int result = 0;
|
||||
// Set modifiers based on key state.
|
||||
if (cef_modifiers & EVENTFLAG_CAPS_LOCK_ON) {
|
||||
@@ -273,7 +273,7 @@ int CefBrowserPlatformDelegateNativeAura::TranslateUiEventModifiers(
|
||||
|
||||
// static
|
||||
int CefBrowserPlatformDelegateNativeAura::TranslateUiChangedButtonFlags(
|
||||
uint32 cef_modifiers) {
|
||||
uint32_t cef_modifiers) {
|
||||
int result = 0;
|
||||
if (cef_modifiers & EVENTFLAG_LEFT_MOUSE_BUTTON) {
|
||||
result |= ui::EF_LEFT_MOUSE_BUTTON;
|
||||
|
@@ -75,8 +75,8 @@ class CefBrowserPlatformDelegateNativeAura
|
||||
base::OnceClosure GetWidgetDeleteCallback();
|
||||
|
||||
static base::TimeTicks GetEventTimeStamp();
|
||||
static int TranslateUiEventModifiers(uint32 cef_modifiers);
|
||||
static int TranslateUiChangedButtonFlags(uint32 cef_modifiers);
|
||||
static int TranslateUiEventModifiers(uint32_t cef_modifiers);
|
||||
static int TranslateUiChangedButtonFlags(uint32_t cef_modifiers);
|
||||
|
||||
// Widget hosting the web contents. It will be deleted automatically when the
|
||||
// associated root window is destroyed.
|
||||
|
@@ -7,6 +7,12 @@
|
||||
|
||||
#include "libcef/browser/native/browser_platform_delegate_native.h"
|
||||
|
||||
#if defined(__OBJC__)
|
||||
@class CefWindowDelegate;
|
||||
#else
|
||||
class CefWindowDelegate;
|
||||
#endif
|
||||
|
||||
namespace content {
|
||||
class RenderWidgetHostViewMac;
|
||||
}
|
||||
@@ -67,7 +73,9 @@ class CefBrowserPlatformDelegateNativeMac
|
||||
content::RenderWidgetHostViewMac* GetHostView() const;
|
||||
|
||||
// True if the host window has been created.
|
||||
bool host_window_created_;
|
||||
bool host_window_created_ = false;
|
||||
|
||||
CefWindowDelegate* __strong window_delegate_;
|
||||
};
|
||||
|
||||
#endif // CEF_LIBCEF_BROWSER_NATIVE_BROWSER_PLATFORM_DELEGATE_NATIVE_MAC_H_
|
||||
|
@@ -7,6 +7,7 @@
|
||||
#import <Cocoa/Cocoa.h>
|
||||
#import <CoreServices/CoreServices.h>
|
||||
|
||||
#include "include/internal/cef_types_mac.h"
|
||||
#include "libcef/browser/alloy/alloy_browser_host_impl.h"
|
||||
#include "libcef/browser/context.h"
|
||||
#include "libcef/browser/native/javascript_dialog_runner_mac.h"
|
||||
@@ -28,6 +29,10 @@
|
||||
#include "ui/events/keycodes/keyboard_codes_posix.h"
|
||||
#include "ui/gfx/geometry/rect.h"
|
||||
|
||||
#if !defined(__has_feature) || !__has_feature(objc_arc)
|
||||
#error "This file requires ARC support."
|
||||
#endif
|
||||
|
||||
// Wrapper NSView for the native view. Necessary to destroy the browser when
|
||||
// the view is deleted.
|
||||
@interface CefBrowserHostView : NSView {
|
||||
@@ -49,8 +54,6 @@
|
||||
// PlatformCreateWindow().
|
||||
static_cast<AlloyBrowserHostImpl*>(browser_)->WindowDestroyed();
|
||||
}
|
||||
|
||||
[super dealloc];
|
||||
}
|
||||
|
||||
@end
|
||||
@@ -59,7 +62,7 @@
|
||||
@interface CefWindowDelegate : NSObject <NSWindowDelegate> {
|
||||
@private
|
||||
CefBrowserHostBase* browser_; // weak
|
||||
NSWindow* window_;
|
||||
NSWindow* __strong window_;
|
||||
}
|
||||
- (id)initWithWindow:(NSWindow*)window andBrowser:(CefBrowserHostBase*)browser;
|
||||
@end
|
||||
@@ -70,16 +73,12 @@
|
||||
if (self = [super init]) {
|
||||
window_ = window;
|
||||
browser_ = browser;
|
||||
|
||||
[window_ setDelegate:self];
|
||||
}
|
||||
return self;
|
||||
}
|
||||
|
||||
- (void)dealloc {
|
||||
[[NSNotificationCenter defaultCenter] removeObserver:self];
|
||||
|
||||
[super dealloc];
|
||||
}
|
||||
|
||||
- (BOOL)windowShouldClose:(id)window {
|
||||
@@ -88,6 +87,11 @@
|
||||
return NO;
|
||||
}
|
||||
|
||||
// For an NSWindow object, the default is to be released on |close|. We
|
||||
// instead want it to remain valid until all strong references are released
|
||||
// via |cleanup:| and |BrowserDestroyed|.
|
||||
((NSWindow*)window).releasedWhenClosed = NO;
|
||||
|
||||
// Clean ourselves up after clearing the stack of anything that might have the
|
||||
// window on it.
|
||||
[self performSelectorOnMainThread:@selector(cleanup:)
|
||||
@@ -100,7 +104,7 @@
|
||||
|
||||
- (void)cleanup:(id)window {
|
||||
[window_ setDelegate:nil];
|
||||
[self release];
|
||||
window_ = nil;
|
||||
}
|
||||
|
||||
@end
|
||||
@@ -239,16 +243,16 @@ void GetNSBoundsInDisplay(const gfx::Rect& dip_bounds,
|
||||
CefBrowserPlatformDelegateNativeMac::CefBrowserPlatformDelegateNativeMac(
|
||||
const CefWindowInfo& window_info,
|
||||
SkColor background_color)
|
||||
: CefBrowserPlatformDelegateNative(window_info, background_color),
|
||||
host_window_created_(false) {}
|
||||
: CefBrowserPlatformDelegateNative(window_info, background_color) {}
|
||||
|
||||
void CefBrowserPlatformDelegateNativeMac::BrowserDestroyed(
|
||||
CefBrowserHostBase* browser) {
|
||||
CefBrowserPlatformDelegateNative::BrowserDestroyed(browser);
|
||||
|
||||
if (host_window_created_) {
|
||||
// Release the reference added in CreateHostWindow().
|
||||
// Release the references added in CreateHostWindow().
|
||||
browser->Release();
|
||||
window_delegate_ = nil;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -285,12 +289,15 @@ bool CefBrowserPlatformDelegateNativeMac::CreateHostWindow() {
|
||||
defer:NO];
|
||||
|
||||
// Create the delegate for control and browser window events.
|
||||
[[CefWindowDelegate alloc] initWithWindow:new_window andBrowser:browser_];
|
||||
// Add a reference that will be released in BrowserDestroyed().
|
||||
window_delegate_ = [[CefWindowDelegate alloc] initWithWindow:new_window
|
||||
andBrowser:browser_];
|
||||
[new_window setDelegate:window_delegate_];
|
||||
|
||||
parent_view = [new_window contentView];
|
||||
browser_view_rect = [parent_view bounds];
|
||||
|
||||
window_info_.parent_view = parent_view;
|
||||
window_info_.parent_view = CAST_NSVIEW_TO_CEF_WINDOW_HANDLE(parent_view);
|
||||
|
||||
// Make the content view for the window have a layer. This will make all
|
||||
// sub-views have layers. This is necessary to ensure correct layer
|
||||
@@ -314,7 +321,6 @@ bool CefBrowserPlatformDelegateNativeMac::CreateHostWindow() {
|
||||
[parent_view addSubview:browser_view];
|
||||
[browser_view setAutoresizingMask:(NSViewWidthSizable | NSViewHeightSizable)];
|
||||
[browser_view setNeedsDisplay:YES];
|
||||
[browser_view release];
|
||||
|
||||
// Parent the WebContents to the browser view.
|
||||
const NSRect bounds = [browser_view bounds];
|
||||
@@ -324,7 +330,7 @@ bool CefBrowserPlatformDelegateNativeMac::CreateHostWindow() {
|
||||
[native_view setAutoresizingMask:(NSViewWidthSizable | NSViewHeightSizable)];
|
||||
[native_view setNeedsDisplay:YES];
|
||||
|
||||
window_info_.view = browser_view;
|
||||
window_info_.view = CAST_NSVIEW_TO_CEF_WINDOW_HANDLE(browser_view);
|
||||
|
||||
if (new_window != nil && !window_info_.hidden) {
|
||||
// Show the window.
|
||||
@@ -461,7 +467,7 @@ void CefBrowserPlatformDelegate::HandleExternalProtocol(const GURL& url) {}
|
||||
|
||||
CefEventHandle CefBrowserPlatformDelegateNativeMac::GetEventHandle(
|
||||
const content::NativeWebKeyboardEvent& event) const {
|
||||
return event.os_event;
|
||||
return CAST_NSEVENT_TO_CEF_EVENT_HANDLE(event.os_event);
|
||||
}
|
||||
|
||||
std::unique_ptr<CefJavaScriptDialogRunner>
|
||||
@@ -507,11 +513,12 @@ CefBrowserPlatformDelegateNativeMac::TranslateWebKeyEvent(
|
||||
}
|
||||
|
||||
NSString* charactersIgnoringModifiers =
|
||||
[[[NSString alloc] initWithCharacters:&key_event.unmodified_character
|
||||
length:1] autorelease];
|
||||
NSString* characters =
|
||||
[[[NSString alloc] initWithCharacters:&key_event.character
|
||||
length:1] autorelease];
|
||||
[[NSString alloc] initWithCharacters:reinterpret_cast<const unichar*>(
|
||||
&key_event.unmodified_character)
|
||||
length:1];
|
||||
NSString* characters = [[NSString alloc]
|
||||
initWithCharacters:reinterpret_cast<const unichar*>(&key_event.character)
|
||||
length:1];
|
||||
|
||||
NSEvent* synthetic_event =
|
||||
[NSEvent keyEventWithType:event_type
|
||||
|
@@ -2,11 +2,15 @@
|
||||
// Use of this source code is governed by a BSD-style license that can be found
|
||||
// in the LICENSE file.
|
||||
|
||||
#include "include/internal/cef_types_mac.h"
|
||||
#include "libcef/browser/native/cursor_util.h"
|
||||
|
||||
#import "base/mac/scoped_nsobject.h"
|
||||
#import "ui/base/cocoa/cursor_utils.h"
|
||||
|
||||
#if !defined(__has_feature) || !__has_feature(objc_arc)
|
||||
#error "This file requires ARC support."
|
||||
#endif
|
||||
|
||||
namespace cursor_util {
|
||||
|
||||
namespace {
|
||||
@@ -15,14 +19,16 @@ class ScopedCursorHandleImpl : public ScopedCursorHandle {
|
||||
public:
|
||||
explicit ScopedCursorHandleImpl(NSCursor* native_cursor) {
|
||||
if (native_cursor) {
|
||||
cursor_.reset([native_cursor retain]);
|
||||
cursor_ = native_cursor;
|
||||
}
|
||||
}
|
||||
|
||||
cef_cursor_handle_t GetCursorHandle() override { return cursor_.get(); }
|
||||
cef_cursor_handle_t GetCursorHandle() override {
|
||||
return CAST_NSCURSOR_TO_CEF_CURSOR_HANDLE(cursor_);
|
||||
}
|
||||
|
||||
private:
|
||||
base::scoped_nsobject<NSCursor> cursor_;
|
||||
NSCursor* __strong cursor_;
|
||||
};
|
||||
|
||||
} // namespace
|
||||
|
@@ -10,7 +10,6 @@
|
||||
#include "libcef/browser/javascript_dialog_runner.h"
|
||||
|
||||
#include "base/functional/callback.h"
|
||||
#include "base/mac/scoped_nsobject.h"
|
||||
#include "base/memory/weak_ptr.h"
|
||||
|
||||
#if __OBJC__
|
||||
@@ -40,7 +39,7 @@ class CefJavaScriptDialogRunnerMac : public CefJavaScriptDialogRunner {
|
||||
private:
|
||||
DialogClosedCallback callback_;
|
||||
|
||||
base::scoped_nsobject<CefJavaScriptDialogHelper> helper_;
|
||||
CefJavaScriptDialogHelper* __strong helper_;
|
||||
|
||||
// Must be the last member.
|
||||
base::WeakPtrFactory<CefJavaScriptDialogRunnerMac> weak_ptr_factory_;
|
||||
|
@@ -12,12 +12,16 @@
|
||||
#include "base/strings/utf_string_conversions.h"
|
||||
#include "components/url_formatter/elide_url.h"
|
||||
|
||||
#if !defined(__has_feature) || !__has_feature(objc_arc)
|
||||
#error "This file requires ARC support."
|
||||
#endif
|
||||
|
||||
// Helper object that receives the notification that the dialog/sheet is
|
||||
// going away. Is responsible for cleaning itself up.
|
||||
@interface CefJavaScriptDialogHelper : NSObject <NSAlertDelegate> {
|
||||
@private
|
||||
base::scoped_nsobject<NSAlert> alert_;
|
||||
NSTextField* textField_; // WEAK; owned by alert_
|
||||
NSAlert* __strong alert_;
|
||||
NSTextField* __weak textField_;
|
||||
|
||||
// Copies of the fields in CefJavaScriptDialog because they're private.
|
||||
CefJavaScriptDialogRunner::DialogClosedCallback callback_;
|
||||
@@ -46,18 +50,20 @@
|
||||
}
|
||||
|
||||
- (NSAlert*)alert {
|
||||
alert_.reset([[NSAlert alloc] init]);
|
||||
alert_ = [[NSAlert alloc] init];
|
||||
return alert_;
|
||||
}
|
||||
|
||||
- (NSTextField*)textField {
|
||||
textField_ = [[NSTextField alloc] initWithFrame:NSMakeRect(0, 0, 300, 22)];
|
||||
[[textField_ cell] setLineBreakMode:NSLineBreakByTruncatingTail];
|
||||
[alert_ setAccessoryView:textField_];
|
||||
[[alert_ window] setInitialFirstResponder:textField_];
|
||||
[textField_ release];
|
||||
NSTextField* textField =
|
||||
[[NSTextField alloc] initWithFrame:NSMakeRect(0, 0, 300, 22)];
|
||||
textField.cell.lineBreakMode = NSLineBreakByTruncatingTail;
|
||||
|
||||
return textField_;
|
||||
alert_.accessoryView = textField;
|
||||
alert_.window.initialFirstResponder = textField;
|
||||
|
||||
textField_ = textField;
|
||||
return textField;
|
||||
}
|
||||
|
||||
- (void)alertDidEnd:(NSAlert*)alert
|
||||
@@ -70,15 +76,15 @@
|
||||
bool success = returnCode == NSAlertFirstButtonReturn;
|
||||
std::u16string input;
|
||||
if (textField_) {
|
||||
input = base::SysNSStringToUTF16([textField_ stringValue]);
|
||||
input = base::SysNSStringToUTF16(textField_.stringValue);
|
||||
}
|
||||
|
||||
std::move(callback_).Run(success, input);
|
||||
}
|
||||
|
||||
- (void)cancel {
|
||||
[NSApp endSheet:[alert_ window]];
|
||||
alert_.reset();
|
||||
[NSApp endSheet:alert_.window];
|
||||
alert_ = nil;
|
||||
}
|
||||
|
||||
@end
|
||||
@@ -97,26 +103,26 @@ void CefJavaScriptDialogRunnerMac::Run(
|
||||
const std::u16string& message_text,
|
||||
const std::u16string& default_prompt_text,
|
||||
DialogClosedCallback callback) {
|
||||
DCHECK(!helper_.get());
|
||||
DCHECK(!helper_);
|
||||
callback_ = std::move(callback);
|
||||
|
||||
bool text_field = message_type == content::JAVASCRIPT_DIALOG_TYPE_PROMPT;
|
||||
bool one_button = message_type == content::JAVASCRIPT_DIALOG_TYPE_ALERT;
|
||||
|
||||
helper_.reset([[CefJavaScriptDialogHelper alloc]
|
||||
helper_ = [[CefJavaScriptDialogHelper alloc]
|
||||
initHelperWithCallback:base::BindOnce(
|
||||
&CefJavaScriptDialogRunnerMac::DialogClosed,
|
||||
weak_ptr_factory_.GetWeakPtr())]);
|
||||
weak_ptr_factory_.GetWeakPtr())];
|
||||
|
||||
// Show the modal dialog.
|
||||
NSAlert* alert = [helper_ alert];
|
||||
NSTextField* field = nil;
|
||||
if (text_field) {
|
||||
field = [helper_ textField];
|
||||
[field setStringValue:base::SysUTF16ToNSString(default_prompt_text)];
|
||||
field.stringValue = base::SysUTF16ToNSString(default_prompt_text);
|
||||
}
|
||||
[alert setDelegate:helper_];
|
||||
[alert setInformativeText:base::SysUTF16ToNSString(message_text)];
|
||||
alert.delegate = helper_;
|
||||
alert.informativeText = base::SysUTF16ToNSString(message_text);
|
||||
|
||||
std::u16string label;
|
||||
switch (message_type) {
|
||||
@@ -137,12 +143,12 @@ void CefJavaScriptDialogRunnerMac::Run(
|
||||
label += u" - " + display_url;
|
||||
}
|
||||
|
||||
[alert setMessageText:base::SysUTF16ToNSString(label)];
|
||||
alert.messageText = base::SysUTF16ToNSString(label);
|
||||
|
||||
[alert addButtonWithTitle:@"OK"];
|
||||
if (!one_button) {
|
||||
NSButton* other = [alert addButtonWithTitle:@"Cancel"];
|
||||
[other setKeyEquivalent:@"\e"];
|
||||
other.keyEquivalent = @"\e";
|
||||
}
|
||||
|
||||
// Calling beginSheetModalForWindow:nil is wrong API usage. For now work
|
||||
@@ -168,21 +174,21 @@ void CefJavaScriptDialogRunnerMac::Run(
|
||||
void CefJavaScriptDialogRunnerMac::Handle(
|
||||
bool accept,
|
||||
const std::u16string* prompt_override) {
|
||||
if (helper_.get()) {
|
||||
if (helper_) {
|
||||
DialogClosed(accept, prompt_override ? *prompt_override : std::u16string());
|
||||
}
|
||||
}
|
||||
|
||||
void CefJavaScriptDialogRunnerMac::Cancel() {
|
||||
if (helper_.get()) {
|
||||
if (helper_) {
|
||||
[helper_ cancel];
|
||||
helper_.reset(nil);
|
||||
helper_ = nil;
|
||||
}
|
||||
}
|
||||
|
||||
void CefJavaScriptDialogRunnerMac::DialogClosed(
|
||||
bool success,
|
||||
const std::u16string& user_input) {
|
||||
helper_.reset(nil);
|
||||
helper_ = nil;
|
||||
std::move(callback_).Run(success, user_input);
|
||||
}
|
||||
|
@@ -8,8 +8,6 @@
|
||||
|
||||
#include "libcef/browser/menu_runner.h"
|
||||
|
||||
#include "base/mac/scoped_nsobject.h"
|
||||
|
||||
#if __OBJC__
|
||||
@class MenuControllerCocoa;
|
||||
#else
|
||||
@@ -28,7 +26,7 @@ class CefMenuRunnerMac : public CefMenuRunner {
|
||||
void CancelContextMenu() override;
|
||||
|
||||
private:
|
||||
base::scoped_nsobject<MenuControllerCocoa> menu_controller_;
|
||||
MenuControllerCocoa* __strong menu_controller_;
|
||||
};
|
||||
|
||||
#endif // CEF_LIBCEF_BROWSER_NATIVE_MENU_RUNNER_MAC_H_
|
||||
|
@@ -11,6 +11,10 @@
|
||||
#import "ui/base/cocoa/menu_controller.h"
|
||||
#include "ui/gfx/geometry/point.h"
|
||||
|
||||
#if !defined(__has_feature) || !__has_feature(objc_arc)
|
||||
#error "This file requires ARC support."
|
||||
#endif
|
||||
|
||||
CefMenuRunnerMac::CefMenuRunnerMac() {}
|
||||
|
||||
CefMenuRunnerMac::~CefMenuRunnerMac() {}
|
||||
@@ -20,17 +24,12 @@ bool CefMenuRunnerMac::RunContextMenu(
|
||||
CefMenuModelImpl* model,
|
||||
const content::ContextMenuParams& params) {
|
||||
// Create a menu controller based on the model.
|
||||
menu_controller_.reset([[MenuControllerCocoa alloc]
|
||||
initWithModel:model->model()
|
||||
delegate:nil
|
||||
useWithPopUpButtonCell:NO]);
|
||||
MenuControllerCocoa* menu_controller =
|
||||
[[MenuControllerCocoa alloc] initWithModel:model->model()
|
||||
delegate:nil
|
||||
useWithPopUpButtonCell:NO];
|
||||
|
||||
// Keep the menu controller alive (by adding an additional retain) until after
|
||||
// the menu has been dismissed. Otherwise it will crash if the browser is
|
||||
// destroyed (and consequently the menu controller is destroyed) while the
|
||||
// menu is still pending.
|
||||
base::scoped_nsobject<MenuControllerCocoa> menu_controller_ref(
|
||||
menu_controller_);
|
||||
menu_controller_ = menu_controller;
|
||||
|
||||
// Make sure events can be pumped while the menu is up.
|
||||
base::CurrentThread::ScopedAllowApplicationTasksInNativeNestedLoop allow;
|
||||
@@ -86,7 +85,7 @@ bool CefMenuRunnerMac::RunContextMenu(
|
||||
}
|
||||
|
||||
void CefMenuRunnerMac::CancelContextMenu() {
|
||||
if (menu_controller_.get()) {
|
||||
[menu_controller_ cancel];
|
||||
if (menu_controller_) {
|
||||
menu_controller_ = nil;
|
||||
}
|
||||
}
|
||||
|
@@ -70,7 +70,7 @@ class RedirectHandler : public CefResourceHandler {
|
||||
}
|
||||
|
||||
void GetResponseHeaders(CefRefPtr<CefResponse> response,
|
||||
int64& response_length,
|
||||
int64_t& response_length,
|
||||
CefString& redirectUrl) override {
|
||||
response_length = 0;
|
||||
redirectUrl = url_.spec();
|
||||
@@ -111,7 +111,7 @@ class InternalHandler : public CefResourceHandler {
|
||||
}
|
||||
|
||||
void GetResponseHeaders(CefRefPtr<CefResponse> response,
|
||||
int64& response_length,
|
||||
int64_t& response_length,
|
||||
CefString& redirectUrl) override {
|
||||
response_length = size_;
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user