* build: add GIT_CACHE_PATH
The merge at https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1105473 was to specify git cache entirely from the environment variable [and] removal of the general --cache-dir option from gclient
* docs: document GIT_CACHE_PATH in GN build
* fix: try to fix appveyor-gn env syntax
* chore: bump libcc
* build: gn: commit patches after they have been applied
It prevents a hooks run failure when `gclient sync` is called
for a second time. Error message:
```
error: ui/latency/ui_latency_export.h: already exists in working directory
latency_info.patch failed to apply
```
* build: add config to build Electron for tests
* build: run nightly linux builds for the 3-0-x branch
* build: gn: update CI config for linux builds
- run GN debug and testing builds for PRs (as FYI)
- do not run tests for GN debug builds
- run GN release builds nightly
* build: gn: run testing builds on CI instead of release on Windows
Should save some time since release builds set 'official_build=true'
which make the builds take much more time.
* build: gn: use testing config to run CI jobs on Mac
Tests should run faster for testing builds.
* fix: use OOIF for webview tag
* fix: do not call GetNativeView for webview
* fix: OOIPF webview's WebContents is managed by embedder frame
* fix: guest view can not be focused
* fix: clear zoom controller when guest is destroyed
* fix: implement the webview resize event
The webview is no longer a browser plugin with the resize event, use
ResizeObserver instead.
* test: disable failed tests due to OOPIF webview
* fix: embedder can be destroyed earlier than guest
This happens when embedder is manually destroyed.
* fix: don't double attach
* fix: recreate iframe when webview is reattached
* fix: resize event may happen very early
* test: some tests are working after OOPIF webview
* chore: remove unused browser plugin webview code
* fix: get embedder via closure
When the "destroyed" event is emitted, the entry in guestInstances would be
cleared.
* chore: rename browserPluginNode to internalElement
* test: make the visibilityState test more robust
* chore: guestinstance can not work with OOPIF webview
* fix: element could be detached before got response from browser