237 Commits

Author SHA1 Message Date
Jesper Papmehl-Dufay
019611c764 macOS: Add support for building clients with ARC enabled (fixes issue ).
Under ARC (Automatic Reference Counting), assigning to an Objective-C
pointer has different semantics than assigning to a void* pointer.
This makes it dangerous to treat the same memory address as an
Objective-C pointer in some cases and as a "regular C pointer" in
other cases.

This change removes the conditional type defines and instead uses
void* everywhere. Explicit type casting in combination with ARC
annotations makes it safe to get typed Objective-C pointers from the
void* pointers.

This change enables ARC by default in the CEF binary distribution CMake
configuration for the cefclient and cefsimple sample applications. It can be
disabled by adding `-DOPTION_USE_ARC=Off` to the CMake command line.

ARC is not supported when building Chromium due to the substantial
number of changes that would be required in the Chromium code base.
2019-04-23 17:17:56 +00:00
santosh mahto
491253fa03 Linux: Add support for ozone builds (fixes issue ).
Ozone builds can run with different platform backends (Wayland, X11, etc). Usage of the Views framework is required, and the cefclient sample application is not supported.

Example usage:

$ export GN_DEFINES="use_ozone=true"
$ cd /path/to/chromium/src/cef
$ ./cef_create_projects.sh
$ cd /path/to/chromium/src
$ ninja -C out/Release_GN_x64 cefsimple
$ ./out/Release_GN_x64/cefsimple --use-views --ozone-platform=wayland

Binary distributions can be created by passing the `--ozone` flag to make_distrib.py.
2019-04-23 17:00:14 +00:00
Marshall Greenblatt
07863c0d46 Use net/base/net_error_list.h to populate the cef_errorcode_t enum (fixes issue ) 2019-04-16 12:07:33 -04:00
Daniel Nitsche
879911b721 Update to Chromium version 75.0.3749.0 () 2019-04-16 14:38:48 +00:00
Marshall Greenblatt
b65f336f81 Enforce cache_path requirements for NetworkService (see issue ).
This change adds a new CefSettings.root_cache_path value that must be either
equal to or a parent directory of all CefSettings.cache_path and
CefRequestContextSettings.cache_path values. The sandbox may block read/write
access from the NetworkService to directories that do not meet this requirement.

To test: Run cefclient with a combination of the following flags:

--cache-path=c:\temp\cache
  Cache data should be persisted to the specified directory.

--request-context-per-browser
  A separate numbered cache directory should be created underneath the
  cache-path directory for each new browser instance.

--enable-network-service --disable-extensions
  Same tests, but with NetworkService enabled.

Known issues:
- When NetworkService is enabled a C:\temp\cache\cache\Cache directory is
  created (should be C:\temp\cache\Cache).
2019-03-24 16:47:00 -04:00
Mike Wiedenbauer
58e1149c71 Add ability to capture audio output to buffer (issue ) 2019-03-07 17:09:54 -05:00
Riku Palomäki
7b5d30e9a9 Add pen support for OSR (issue ) 2019-03-07 22:06:54 +00:00
Felix Bruns
4cbcb4615a Add 'UR_FLAG_DISABLE_CACHE' and support for equivalent 'Cache-Control: no-store' (issue ) 2019-03-07 22:05:36 +00:00
Branko Čibej
34db87563e Linux: Add support for setting the initial window title (issue ). 2019-02-27 19:18:16 +00:00
Riku Palomäki
5f615a95bc Add multi-touch support for OSR (issue ) 2019-02-26 11:51:33 -05:00
Riku Palomäki
379fb8d39e Add CefRenderHandler::OnVirtualKeyboardRequested (issue ) 2019-02-26 16:49:41 +00:00
Alexander Guettler
c72d57aa60 Replace AddCustomScheme bool arguments with int using bit flags 2019-02-26 16:45:12 +00:00
Marshall Greenblatt
995dd0ba19 Suppress ERROR messages with log-severity=disable (issue )
Also expose FATAL severity level.
2019-01-29 14:53:46 -05:00
Alexander Guettler
1a86240c93 Update to Chromium version 73.0.3665.0 () 2019-01-18 11:25:51 +01:00
Greg Wessels
713eebcafc Add support for shared texture and external BeginFrame in OSR mode (issue )
- Add CefWindowInfo::shared_texture_enabled and
  CefRenderHandler::OnAcceleratedPaint for shared texture support. Currently
  only supported on Windows (D3D11).
- Add CefWindowInfo::external_begin_frame_enabled and
  CefBrowserHost::SendExternalBeginFrame for external begin frame support.
2018-09-26 13:10:49 +02:00
Marshall Greenblatt
3a91ccd940 Add TS_PROCESS_OOM termination status (issue ) 2018-09-24 10:50:01 +02:00
Marshall Greenblatt
8aa4b7aaae Linux: Add multi-threaded message loop support (issue ) 2018-09-20 15:17:35 +02:00
Marshall Greenblatt
9229cdd0eb Remove CefSettings.single_process. This mode is not supported and CefSettings makes it too easy to enable. The command-line flag still exists. 2018-07-09 13:31:32 -04:00
Marshall Greenblatt
a3c55f1d26 Update to Chromium revision 9ef2aa86 () 2018-05-04 10:50:26 +02:00
Mike Wiedenbauer
90863b8c5d Add ability to stop CefURLRequest on redirect (issue ) 2018-04-10 13:05:18 -04:00
Marshall Greenblatt
7a59914f97 Update to Chromium revision 66afc5e5 () 2018-03-22 16:56:23 -04:00
Marshall Greenblatt
ac86b61139 Remove geolocation API support (issue ) 2018-02-12 18:51:11 -05:00
Mario Pistrich
552a3bf353 Add log level to CefDisplayHandler::OnConsoleMessage (issue ) 2017-12-18 18:36:56 -05:00
Marshall Greenblatt
facee1f750 - Add cache awareness to CefURLRequest (issue )
- Properly set referer values on server requests (issue )
2017-11-17 17:14:05 -05:00
Marshall Greenblatt
9cff99dc4e Add support for loading extensions (issue )
- Add CefRequestContext::LoadExtension, CefExtension, CefExtensionHandler and
  related methods/interfaces.
- Add chrome://extensions-support that lists supported Chrome APIs.
- Add CefBrowserHost::SetAutoResizeEnabled and CefDisplayHandler::OnAutoResize
  to support browser resize based on preferred web contents size.
- views: Add support for custom CefMenuButton popups.
- cefclient: Run with `--load-extension=set_page_color` command-line flag for
  an extension loading example. Add `--use-views` on Windows and Linux for an
  even better example.
2017-08-25 18:40:32 -04:00
Marshall Greenblatt
f229796a39 Update to Chromium revision ff259bab () 2017-07-28 18:30:34 -04:00
Marshall Greenblatt
943ffb217b macOS: Fix error: unknown type name 'size_t' 2017-06-05 15:38:49 +03:00
Marshall Greenblatt
5c79944b31 Update to Chromium revision d483fb77 ()
- CefLifeSpanHandler::OnBeforePopup is now called on the UI thread.
- Remove CefBrowserSettings.javascript_open_windows which is no
  longer supported.
2017-06-02 05:55:23 -07:00
Marshall Greenblatt
31d9407ee2 Apply clang-format to all C, C++ and ObjC files (issue ) 2017-05-18 12:30:05 +02:00
Marshall Greenblatt
eea39b8413 Windows: Fix wrong calling convention with gcc compiler (issue 1209) 2017-05-10 16:26:11 -04:00
Marshall Greenblatt
77097ffab7 Remove the CefSettings.context_safety_implementation option (issue ).
The default hash implementation will now always be used.
2017-05-09 15:29:27 -04:00
Marshall Greenblatt
10fccbd6cf Windows: Fix VS2008 compile error (issue ) 2017-04-26 12:15:59 -04:00
Marshall Greenblatt
3f71138d64 Update to Chromium revision a106f0ab ()
- Remove CefWindowInfo.transparent_painting_enabled. Set
  CefBrowserSettings.background_color to an opaque or transparent
  value instead.
2017-04-24 15:14:47 -04:00
Marshall Greenblatt
e7ac0d0ff5 Add PDF print scale factor setting (issue ) 2017-03-16 17:47:40 -04:00
Marshall Greenblatt
54647945f1 Update to Chromium revision 939b32ee () 2017-03-08 13:33:05 -08:00
Marshall Greenblatt
d2f48f6e08 Windows: Fix VS2010 compile error 2017-02-28 15:41:31 -05:00
Marshall Greenblatt
70f51c972a Fix configuration of CefSettings.framework_dir_path (issue ) 2017-02-28 14:40:03 -05:00
Marshall Greenblatt
8fa8af357b views: Support styling of menus (issue ) 2017-02-28 12:17:47 -05:00
Marshall Greenblatt
16125bdbbd views: Support accelerators in MenuButton label (issue ) 2017-02-23 12:47:20 -08:00
Marshall Greenblatt
0afcb82ee6 Rename CefBase to CefBaseRefCounted (issue ) 2017-02-09 17:50:59 -05:00
Marshall Greenblatt
07ba48b082 Add support for non-ref-counted interface classes (issue ) 2017-02-09 17:50:46 -05:00
Marshall Greenblatt
dda50912ed macOS: Allow configuration of framework path (issue ) 2017-01-26 19:14:56 -05:00
Marshall Greenblatt
12aeeb13f7 Update to Chromium revision 3a87aecc () 2016-11-29 16:56:29 -05:00
Marshall Greenblatt
c6881fe145 Add option to enable/disable net security expiration (issue )
- Net security (CT, HSTS) expiration based on build age is now
  disabled by default.
- Add new enable_net_security_expiration option to CefSettings and
  CefRequestContextSettings.
2016-11-18 16:11:40 -05:00
Marshall Greenblatt
18d56feac0 Add CefThread interface (issue ) 2016-11-14 11:30:15 -05:00
Marshall Greenblatt
659e5af870 Fix cef_time_t.year documentation (issue ) 2016-11-04 17:07:54 -04:00
Marshall Greenblatt
cdd2a40469 Change index parameter type from int to size_t (issue ) 2016-11-04 15:26:35 -04:00
Marshall Greenblatt
d6b17a8fb5 Standardize IME callbacks for off-screen rendering (issue ) 2016-11-03 21:02:36 -04:00
Marshall Greenblatt
a1fc6f1ad0 Add CefRegisterWidevineCdm function and remove component updater support (issue )
Mac: Check in widevinecdmadapter.plugin binary until Widevine GN build errors are resolved (https://crbug.com/626436).
2016-10-17 14:16:31 -04:00
Marshall Greenblatt
10c1fd6b8d Add API for SSL status and certificate retrieval (issue ) 2016-09-02 13:01:33 +03:00