Commit Graph

2422 Commits

Author SHA1 Message Date
Marshall Greenblatt
f38ce3409c Don't use NotificationStateLock for GetMainFrame (see issue #2421)
This causes a race related to |notification_state_lock_| assignment when
GetMainFrame is called from multiple threads. GetMainFrame doesn't
trigger any notifications so it shouldn't need that lock. Instead, only
use NotificationStateLock on the UI thread.
2021-09-16 20:06:16 +03:00
Marshall Greenblatt
bda9e30ec9 Remove usage of FrameTreeNode IDs (see issue #2421)
With the introduction of prerendering in Chromium it is now possible for
RenderFrameHosts (RFH) to move between FrameTrees. As a consequence we can no
longer rely on FrameTreeNode IDs to uniquely identify a RFH over its lifespan.
We must now switch to using GlobalRenderFrameHostId (child_id, frame_routing_id)
instead for that purpose. Additionally, we simplify existing code by using the
GlobalRenderFrameHostId struct in all places that previously used a
(render_process_id, render_frame_id) pair, since these concepts are equivalent.

See https://crbug.com/1179502#c8 for additional background.
2021-09-16 20:06:16 +03:00
CEF Spotify
a8ffe4b9f1 Update to Chromium version 93.0.4577.82 2021-09-15 08:43:20 +00:00
CEF Spotify
9e254face2 Update to Chromium version 93.0.4577.63 2021-09-01 21:30:32 +00:00
CEF Spotify
f6bc8313a6 Update to Chromium version 93.0.4577.58 2021-08-25 21:08:49 +00:00
Marshall Greenblatt
da15ac5867 Linux: Pass log-file to zygote subprocesses
This fixes a DCHECK(!log_file.empty()) due to commit 2ecf6f1.
2021-08-24 12:22:37 -04:00
Marshall Greenblatt
293645e049 Update to Chromium version 93.0.4577.51 2021-08-23 21:12:57 -04:00
Marshall Greenblatt
9117d6a394 Fix ExecuteJavaScript failure with null CefRenderProcessHandler (see issue #2421)
When CefApp::GetRenderProcessHandler returned null
CefRenderFrameObserver::DidCreateScriptContext was returning early (not
calling CefFrameImpl::OnContextCreated) and consequently queued actions
such as JavaScript were never executed.
2021-08-18 18:06:27 -04:00
Marshall Greenblatt
3a8409fde7 Remove unicode character from cef_bind_internal.h
This can cause compile errors on non-English Windows versions.
2021-08-16 13:26:22 -04:00
Marshall Greenblatt
860bf38e47 Update to Chromium version 93.0.4577.42 2021-08-13 17:53:35 -04:00
Marshall Greenblatt
33482208b6 Fix duplicate log-file entry on sub-process command-line 2021-08-11 13:27:58 -04:00
Marshall Greenblatt
b4cf6e54de Linux: Update user data path docs (see issue #3149) 2021-08-11 13:16:17 -04:00
Marshall Greenblatt
64221256a0 Mac: Update CFBundleIdentifier for the CEF framework 2021-08-11 12:42:52 -04:00
Marshall Greenblatt
6a52098b62 widevine: Fix ARM compile error due to unused variable (see issue #3149)
alloy_browser_main.cc:223:17: error: unused variable 'cus' [-Werror,-Wunused-variable]
    auto* const cus = g_browser_process->component_updater();
2021-08-10 12:07:23 -04:00
Marshall Greenblatt
5a0b3ea937 widevine: Use component updater with the Alloy runtime (fixes issue #3149)
Widevine CDM binaries will be downloaded on supported platforms shortly after
application startup. Widevine support will then become available within a few
seconds after successful installation on Windows or after the next application
restart on other platforms. The CDM files will be downloaded to a "WidevineCdm"
directory inside the `CefSettings.user_data_path` directory.

Pass the `--disable-component-update` command-line flag to disable Widevine
download and installation. Pass the `--component-updater=fast-update` command-
line flag to force Widevine download immediately after application startup.

See the related issue for additional usage details.
2021-08-09 21:28:39 -04:00
CEF Spotify
e747782ece Update to Chromium version 93.0.4577.25 2021-08-05 15:32:06 +00:00
Marshall Greenblatt
2565243720 chrome: Fix AssertBlockingAllowed() with disk-based Profile creation (see issue #2969) 2021-08-04 15:20:57 -04:00
Marshall Greenblatt
4994313a5b views: Fix multiple issues with hide-frame (fixes issue #3168) 2021-08-04 14:35:41 -04:00
Marshall Greenblatt
a20b5f35ef Mac: ceftests: Fix component build error due to unresolved symbols 2021-07-30 13:33:33 -04:00
Marshall Greenblatt
0ae112ea32 Win/Mac: Generate build configs for the native host architecture by default (see issue #2773, see issue #2981)
When building on an ARM64 host the ARM64 configs (arm64) will be generated by
default and the AMD64 configs (x86,x64) will only be generated if the
CEF_ENABLE_AMD64=1 env variable is set.

When building on an AMD64 host the AMD64 configs (x86,x64) will be generated by
default and the ARM64 configs (arm64) will only be generated if the
CEF_ENABLE_ARM64=1 env variable is set.
2021-07-30 13:33:26 -04:00
CEF Spotify
6ebdfec451 Update to Chromium version 93.0.4577.18 2021-07-30 17:29:40 +00:00
Marshall Greenblatt
98fe2d01e1 Update depot_tools to fix https://crbug.com/1234506 2021-07-29 22:17:13 +00:00
Marshall Greenblatt
2d46bb789e Update to Chromium version 93.0.4577.15 2021-07-28 21:29:46 -04:00
Marshall Greenblatt
0cfa65b48c Fix gclient vpython3 install error on automated builders (see https://crbug.com/1231439) 2021-07-28 12:13:16 -04:00
Marshall Greenblatt
6f819707b0 chrome: Linux: Fix ceftest DraggableRegionsTest.DraggableRegions failure (see issue #2969) 2021-07-27 19:03:21 -04:00
Marshall Greenblatt
92ec2dcbdd Fix ceftest failures with BackForwardCache enabled (see issue #2421)
When BackForwardCache is enabled the old RFH tree may be cached instead of being
immediately deleted as a result of main frame navigation. If a RFH is cached
then delivery of the CefFrameHandler::OnFrameDetached callback will be delayed
until the the RFH is ejected from the cache (possibly not occurring until the
browser is destroyed). This change in OnFrameDetached timing was causing
FrameHandlerTest.OrderSubCrossOrigin* to fail, and the inclusion of cached
frames in CefBrowserInfo::GetAllFrames was causing
FrameTest.NestedIframesDiffOrigin to fail.

BackForwardCache is currently being tested via field trials (see
https://crbug.com/1171298) and can be explicitly disabled using the
`--disable-back-forward-cache` or `--disable-features=BackForwardCache`
command-line flags.
2021-07-27 19:03:21 -04:00
Marshall Greenblatt
645b62257c chrome: Fix potential UAF of ChromeBrowserContext and Profile (see issue #2969) 2021-07-27 19:03:21 -04:00
Marshall Greenblatt
b4ea0496e7 Update to Chromium version 93.0.4577.0 (#902210) 2021-07-27 19:03:09 -04:00
campersau
1ffa5528b3 Windows: cefclient: Map Shift+Ctrl+Alt to Shift+AltGr for OSR (see issue #3026) 2021-07-19 15:55:43 +00:00
Vladislav
2be59f6edd Translate additional CEF modifiers to EF_* flags (see issue #2597) 2021-07-19 15:52:36 +00:00
Marshall Greenblatt
103fe12b72 Linux: Fix SchemeHandlerTest.Custom*StandardNoResponse test failures 2021-06-24 20:55:29 -04:00
Marshall Greenblatt
7efac13ac1 gtest: Add plugin for TeamCity integration
Automatically report unit tests to the TeamCity server if run within TeamCity.
See tests/gtest/teamcity/README.cef for details.

To test: Set the TEAMCITY_PROJECT_NAME environment variable and run ceftests.
2021-06-24 17:00:21 -04:00
Marshall Greenblatt
50f627b07e cmake: Windows: Fix ceftests ARM64 unresolved external symbol GetDeviceCaps (see issue #2773, see issue #3140) 2021-06-23 13:27:42 -04:00
Marshall Greenblatt
28c9e9db35 Update distribution build requirements (see issue #3140) 2021-06-23 13:00:34 -04:00
Marshall Greenblatt
9efd3dc8ee Fix compile errors with VS2019 v16.9.3 and GCC v7.5.0 (see issue #3140) 2021-06-23 13:00:34 -04:00
Marshall Greenblatt
529b91bc6e tests: Convert usage of base::Bind to Once or Repeating (see issue #3140) 2021-06-19 17:19:32 -04:00
Marshall Greenblatt
ed1840ddb5 wrapper: Convert usage of base::Bind to Once or Repeating (see issue #3140) 2021-06-19 15:35:12 -04:00
Marshall Greenblatt
cc2759d07e Add base::OnceClosure support in cef_closure_task.h (see issue #3140) 2021-06-18 14:19:11 -04:00
Marshall Greenblatt
3545e20b01 ceftests: Don't use base::Bind in object constructor (see issue #3140)
Fixes the following error:
[FATAL:cef_bind_internal.h(868)] Check failed: receiver->HasAtLeastOneRef().
base::Bind{Once,Repeating}() refuses to create the first reference to ref-counted
objects. That typically happens around PostTask() in their constructor, and such
objects can be destroyed before `new` returns if the task resolves fast enough.
2021-06-18 13:42:32 -04:00
Marshall Greenblatt
6a1c641f75 Rename 'subtle' namespace to fix duplicate symbol errors (see issue #3140) 2021-06-18 13:42:32 -04:00
Marshall Greenblatt
17fc2b3e3b Various fixes related to the C++11/14 update (see issue #3140)
- Convert scoped_ptr to std::unique_ptr from <memory>
- Convert arraysize to base::size from include/base/cef_cxx17_backports.h
- Convert NULL to nullptr
- Include include/base/cef_callback.h instead of include/base/cef_bind.h
- Implicit conversion of CefRefPtr<T> or scoped_refptr<T> to T* is gone;
  use .get() instead

See the issue for additional details.
2021-06-18 13:42:31 -04:00
Marshall Greenblatt
5d438ced79 cmake: Update to -std=c++14 (see issue #3140) 2021-06-17 20:47:13 -04:00
Marshall Greenblatt
43f9baa23a Update include/base headers for C++11/14 (see issue #3140)
See the issue for update guidelines.
2021-06-17 20:47:12 -04:00
Marshall Greenblatt
6d80ec69d7 Replace OVERRIDE with override (see issue #3140) 2021-06-17 16:16:53 -04:00
Matthew Isaacs
9c7367bd4e widevine: Add arm64 arch manifest value (see issue #2981) 2021-06-17 14:07:27 +00:00
Marshall Greenblatt
de66fb9406 alloy: Fix link click navigation in PDF files (fixes issue #3143)
This change adds a minimal implementation of the |tabs.update| extension API and
modifies StreamsPrivateAPI::SendExecuteMimeTypeHandlerEvent to return a valid
|streamInfo.tabId| value as required by the navigateInCurrentTab implementation
in chrome/browser/resources/pdf/browser_api.js.
2021-06-16 16:05:31 -04:00
Alex Maitland
1d02cd2be0 Expose certificate error codes to OnLoadError 2021-06-16 15:59:46 +00:00
Marshall Greenblatt
b7ef08ca84 widevine: Fix VP9 version string for v4.10.2209.0 (fixes issue #3138) 2021-06-14 14:47:17 -04:00
Marshall Greenblatt
2432333f98 Windows: Allow non-component Debug official sandbox builds (see issue #2679) 2021-06-11 20:54:30 -04:00
Marshall Greenblatt
571911730a Use Chromium code for cookie date validity check (fixes issue #2927) 2021-06-11 12:37:08 -04:00