* Update to Chromium 68.0.3440.128 and Node 10.10.0
* update v8, ffmpeg, chromium, crashpad, boringssl, and webrtc patches
* fix SSL_get_tlsext_status_type patch
* pass encryption_modes_supported to CdmInfo
* kNoSandbox moved into service_manager
* bump CHROME_VERSION_STRING
TODO: automatically pull in the real chrome version
* PathService -> base::PathService
* net::X509Certificate::Equals -> net::X509Certificate::EqualsExcludingChain
* use content::ChildProcessTerminationInfo
* GetHandle() -> GetProcess().Handle()
* ScopedNestableTaskAllower doesn't take an argument
* net::HttpAuthCache::ClearEntriesAddedWithin -> ClearAllEntries
* std::unique_ptr<WebContents>
* blink::WebFullscreenOptions
* OnAudioStateChanged doesn't take a WebContents
* content::RESULT_CODE_NORMAL_EXIT -> service_manager::RESULT_CODE_NORMAL_EXIT
* MessageLoopCurrent
* WasResized -> SynchronizeVisualProperties
* SetTimeStamp takes a base::TimeTicks
* ExecuteScriptInIsolatedWorld is single-script only
* DispatchNonPersistentCloseEvent takes a callback now
* expose URLRequestContextGetter::{Add,Remove}Observer
* test: remove no longer existing Chromium test deps
cc_blink_unittests has been removed in
https://chromium-review.googlesource.com/1053765
mojo_common_unittests has been removed in
https://chromium-review.googlesource.com/1028000
* SetFdLimit -> IncreaseFdLimitTo
NOTE: the behaviour of this API has changed slightly, and we should
mention that in the notes.
* MessageLoop::QuitWhenIdleClosure -> RunLoop::QuitCurrentWhenIdleClosureDeprecated
* certificate_transparency moved out of net/
pending a clearer decision about what to do with CT
in the mean time, copy CreateLogVerifiersForKnownLogs from deleted chromium source
* add secure_origin_whitelist to chrome source list
NOTE: is this something we actually want? cc @deepak1556
* DrainBackgroundTasks -> DrainTasks
* use new node options parser
* fix disable_scroll_begin_dcheck.patch
* ViewsDelegate::CreateWebContents went away
see 1031314
* kZygoteProcess moved into service_manager
* test: minor improvements to the Node spec
- reformat some parts
- better failures reporting with `expect`
- skip some tests instead of marking them as passed
* chromium removed *_posix.cc from the source filters
* test: fix :electron_tests compilation
* better crash diagnostics in ffmpeg test
* fix: enable back a DCHECK in viz::ServerSharedBitmapManager
Fixes#14327.
Backports https://chromium-review.googlesource.com/802574.
* chore: update linux sysroots
* chore: remove obsolete "install-sysroot.py" script
* test: fix frame-subscriber test on Mac
* disable OSR for now
* test: make before-input-event test more robust
* test: make run-as-node --inspect test more robust on windows
* roll node to v10.11.0
* avoid duplicate files when building a zip
* disable failing assert in beginFrameSubscription dirty-rectangle test
* experiment with is_cfi = false
* fix: build torque with x64 toolchain
Co-Authored-By: Alexey Kuzmin <github@alexeykuzmin.com>
* test: disable the "app.relaunch" test on Linux
* chore: bump node to get header tar file
* chore: bump node to fix tar.py line endings
* chore: fix cpplint 'include_what_you_use' warnings
Typically by including <memory>, <utility> etc.
* chore: fix 'static/global string constant' warning
Use C style strings instead of std::string.
Style guide forbids non-trivial static / global variables. https://google.github.io/styleguide/cppguide.html#Static_and_Global_Variables
/home/charles/electron/electron-gn/src/electron/script/cpplint.js
* refactor: remove global string variables.
Fix 'global string variables are not permitted' linter warnings
by using the base::NoDestructor<> wrapper to make it explicit that
these variables are never destroyed.
The style guide's take on globals with nontrivial destructors:
https://google.github.io/styleguide/cppguide.html#Static_and_Global_Variables
* fix: initializer error introduced in last commit
* fix: remove WIP file that was included by accident
* fix: include order
* fix: include order
* fix: include order
* fix: include order, again
* feat: deprecate default value of nodeIntegration
* Use DeprecationStatus::Stable as the default instead of shadowing
* change wording of deprecations
* chore: also deprecate kWebviewTag and kContextIsolation
* chore: do as we preach, lets be secure-by-default in the default app
* add new native_mate converters for base::Value
* fix converter swapping
* remove createDeepCopy from browser/api
* replace missing ListValue converter
* convert bulk of remaining createDeepCopy instances
* convert last remaining instances of createDeepCopy
* incremental progress and helper methods for value conversion
* convert Get and add template function for GetString
* final DictionaryValue method conversions
* remove usage of base::DictionaryValue in web_contents_preferences
* use IsEnabled helper where possible
* Update atom_api_web_view_manager.cc
* Persist defaults to webPreferences object to JS land can read the inferred values instead of just user defined values
* Test inherited default propogation
* Refactor to remove coupling from fetching values and defaults
* Test description type
* Fix up tests
* This is to enable more browser-like behavior so that users who run third-party code
will not be DOS'ed with alerts and confirms. This is already handled like this
in most major browsers so this will greatly help these developers
Chromium already includes the necessary plumbing to manage the
visibility properties and `visibilitychange` event so this gets rid of
most of our custom logic for `BrowserWindow` and `BrowserView`.
Note that `webview` remains unchanged and is still affected by the issues
listed below.
User facing changes:
- The `document` visibility properties and `visibilitychange` event are
now also updated/fired in response to occlusion changes on macOS. In
other words, `document.visibilityState` will now be `hidden` on macOS
if the window is occluded by another window.
- Previously, `visibilitychange` was also fired by *both* Electron and
Chromium in some cases (e.g. when hiding the window). Now it is only
fired by Chromium so you no longer get duplicate events.
- The visiblity state of `BrowserWindow`s created with `{ show: false }`
is now initially `visible` until the window is shown and hidden.
- The visibility state of `BrowserWindow`s with `backgroundThrottling`
disabled is now permanently `visible`.
This should also fix#6860 (but not for `webview`).