Commit graph

157 commits

Author SHA1 Message Date
Cheng Zhao
dd5b8769be fix: use OOPIF for webview tag (#13869)
* 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
2018-08-16 15:57:40 -07:00
Milan Burda
9a1ad2b93f fix: ipcRemote.sendSync regression after moving away from JSON for return values (#13941) 2018-08-09 19:45:10 +10:00
Cheng Zhao
305e3aad40
refactor: remove private webContents.getId() API (#13674) 2018-07-23 18:08:36 +09:00
Cheng Zhao
9d6f1a372e
fix: create WebContents for webview on request (#13713) 2018-07-21 11:11:28 +09:00
John Kleinschmidt
613b03c3c7 build: disable found-in-page event test
On Windows release builds, the found-in-page event test causes the test suite to hang.  If the test is run individually, it works fine, but running it as part of the whole test suite causes the test suite to hang.  This works around the issue in #13704 by temporarily disabling that test.
2018-07-18 14:59:46 -04:00
PalmerAL
ffc15e02a6 fix: add native function to create preload script (#13032)
* add native function to create preload script

* add tests

* fix formatting

* fix tests

* rerun CI
2018-07-13 11:17:11 +09:00
Shelley Vohr
fa0704665f
test: temporarily disable failing specs (#13470) 2018-06-27 14:15:24 -07:00
Alexey Kuzmin
f4039d82c3 spec: rewrite and enable a webview's disableguestresize attr test (#13428) 2018-06-26 08:38:04 -07:00
Aleksei Kuzmin
5151a04613 spec: slightly rewrite webview tests 2018-06-19 13:27:49 +02:00
Aleksei Kuzmin
8f4d6a1995 Rewrite and enable one of the webview tests 2018-06-19 11:49:46 +10:00
Aleksei Kuzmin
de6a5de914 Disable all failing tests 2018-06-19 11:49:45 +10:00
Aleksei Kuzmin
417fe29dc0 Fix the media events test
Playing a media now requires a user gesture.
See https://goo.gl/xX8pDD.
2018-06-19 11:49:45 +10:00
Aleksei Kuzmin
c786abf1e9 Add gfx:PointF support to mate::Converter
It's needed by atom_api_screen, BuildPrototype function on Windows.
2018-06-19 11:49:45 +10:00
Aleksei Kuzmin
9b9a818c43 FIXME: Disable one of the <webview> tag tests. 2018-06-19 11:49:44 +10:00
Aleksei Kuzmin
7e4c0b304b Enable a few tests 2018-06-19 11:49:44 +10:00
Aleksei Kuzmin
32ff2ff8fb FIXME: Disable some of <webview> tag tests 2018-06-19 11:49:44 +10:00
deepak1556
7b47d69efe Remove did-get-response-details and did-get-redirect-request events
https://chromium-review.googlesource.com/c/chromium/src/+/805008
https://chromium-review.googlesource.com/c/chromium/src/+/786320
2018-06-19 11:49:41 +10:00
Alexey Kuzmin
0d5e98a201 Slightly rewrite <webview> tag tests (#13122) 2018-06-01 10:56:48 +02:00
Alexey Kuzmin
fc34076c2b Refactor <webview> tag tests (#12886) 2018-05-14 17:00:49 -05:00
Alexey Kuzmin
d5dfb19508 Update some tests (#12917)
* Use Chai for webview tests

* Slightly rewrite one of the <webview> tests

"dom-ready event" > "throws a custom error..."

* Use Chai for BrowserWindow tests

* Rewrite BrowserWindow.addDevToolsExtension tests
2018-05-14 13:17:31 -05:00
Nitish Sakhawalkar
2579071b98 Deprecate did-get-response-details and did-get-redirect-request (#12615)
* Deprecate webContents events did-get-response-details and did-get-redirect-request.

* Update guest view files

* Update webview tag docs and update specs

* Update deprecate.event function

* Update comment

* Update more

* Update documentation for other deprecated event
2018-04-23 14:46:12 -05:00
Robo
65e8199a93 Enable plznavigate aka browser side navigation (#12535)
* enable plznavigate code path

* AtomBrowserClient::GetGeolocationApiKey returns the right default

* use IsLoadingToDifferentDocument to identify top level navigation in mainFrame

* use candidate site instance when available

* spec: don't test httpReferrer option for file origin

* update libcc ref

* affinity: only group same site in this mode

* plznavigate: don't emit did-get-response-details event for blob scheme
2018-04-06 16:22:52 +09:00
Nitish Sakhawalkar
524f56354c Fix webview resize test 2018-03-20 10:13:16 +03:00
Cheng Zhao
d598aa1a67
Merge pull request #11300 from electron/external-devtools
Add API to set arbitrary WebContents as devtools
2017-12-05 10:35:49 +09:00
Cheng Zhao
ea9771702b spec: setDevToolsWebContents 2017-12-01 10:35:23 +09:00
John Kleinschmidt
0ef8f58090 Remove Travis references 2017-11-30 15:39:32 -05:00
Zeke Sikelianos
c1728720a7
Merge pull request #11256 from electron/fix-11244
Enable "<webview> tag found-in-page event emits when a request is made"
2017-11-30 10:48:00 -08:00
Cheng Zhao
1c0ea0286e
Merge pull request #11235 from electron/standard-10
infra: Upgrade to StandardJS 10
2017-11-27 15:42:52 +09:00
deepak1556
084292f3ab fix: focus the webview as a temp workaround 2017-11-25 20:18:01 +05:30
Aleksei Kuzmin
3e9f9429d1 Enable "<webview> tag found-in-page event emits when a request is made"
Fixes #11244.
2017-11-25 13:21:26 +01:00
Aleksei Kuzmin
d61564bfb1 Disable "<webview> tag > found-in-page event > emits when a request is made" test 2017-11-24 10:58:53 +09:00
Felix Rieseberg
9f0df695ca 🔧 Spec: Fix style issues 2017-11-23 14:22:58 -08:00
Aleksei Kuzmin
cf749a8e18 Explicitly skip tests that should be skipped 2017-11-20 14:43:23 +01:00
Shelley Vohr
e4214a6cbe
[WIP] Upgrade more specs (#10945)
Finish upgrading specs to ES6
2017-10-27 16:45:58 -04:00
Yuya Ochiai
6326c6727e Add did-attach-webview event 2017-10-07 22:52:20 +09:00
Aleksei Kuzmin
ba0c43e1fc Do not run navigator.getUserMedia related test on CI build machines 2017-08-15 16:19:22 +03:00
Kevin Sawicki
f1a72ad108 Add spec for webview visibility change on show 2017-06-14 14:11:38 -07:00
Kevin Sawicki
d2d28c42f1 Remove unused constant 2017-06-06 15:19:29 -07:00
Birunthan Mohanathas
7d2226e05e Let Chromium manage document.visibilityState and document.hidden
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`).
2017-06-06 15:16:01 -07:00
Kevin Sawicki
5cf4995f2e DRY up logic to check if native modules should be loaded 2017-05-30 09:15:38 -07:00
Kevin Sawicki
9f49b71b89 Add cross-origin frame webview spec 2017-05-26 10:10:36 -07:00
Kevin Sawicki
a0571e3c72 Add failing spec for native window.open returning null without allowpopups 2017-05-26 10:10:36 -07:00
Kevin Sawicki
ef01c16c6a Add tests for more nativeWindowOpen events 2017-05-26 10:10:36 -07:00
Kevin Sawicki
9f06b6dc21 Set allowpopups attribute in nativeWindow open specs 2017-05-26 10:10:36 -07:00
Kevin Sawicki
a32b7e5cdb Co-locate nativeWindowOpen specs 2017-05-26 10:10:36 -07:00
Kevin Sawicki
a2a7a1d8c7 Add new-window <webview> spec with nativeWindowOpen 2017-05-26 10:10:36 -07:00
Kevin Sawicki
da2b29796f Add same domain webview nativeWindowOpen spec 2017-05-26 10:10:36 -07:00
Kevin Sawicki
a16cd0bd03 Add failing <webview> with nativeWindowOpen spec 2017-05-26 10:10:36 -07:00
Kevin Sawicki
fd782706b2 Add explicit spec for removing preload from webview 2017-05-17 13:47:00 -07:00
Kevin Sawicki
bde13353fb Rename option to webviewTag and default to nodeIntegration value 2017-05-17 13:12:23 -07:00