Commit graph

279 commits

Author SHA1 Message Date
bughit
4fcd178c36 expose WebFrame#routingId (#12614)
* expose WebFrame#routingId and pass it to WebContents frame specific events along with frameProcessId; add WebContets.did-start-navigation event
* fix compilation error on ia32 Windows
2018-04-26 19:17:55 +09:00
Jeremy Apthorp
e6695cf2ec [chromium-style] override / virtual warnings 2018-04-19 11:12:10 -07:00
Shelley Vohr
53bdf22c85
clang-format atom files 2018-04-18 20:48:45 -04:00
Jeremy Apthorp
f0d08f4da1 Propagate referrer to new windows (#12397)
* Propagate referrer to new windows

Fixes #9205

* Rearrange -new-window event arguments for backwards-compatibility

* Plumb referrer policy through guest-window-manager

* Document the Referrer structure and its uses

* Add tests for referrer in new windows

* Docs nits
2018-04-05 18:13:24 -05:00
Cheng Zhao
c75dd93b92
Move AutofillPopup from NativeWindow to WebContents (#12514) 2018-04-05 09:53:51 +09:00
Cheng Zhao
2e94a730cc Isolate the code using content::WebContentsImpl 2018-03-20 10:13:17 +03:00
deepak1556
5684f8886f REVIEW: move ipc use from rvh to rfh 2018-03-20 10:13:15 +03:00
Samuel Attard
7c8be94a6e IPC fixes for WebContents 2018-03-20 10:13:14 +03:00
Samuel Attard
4666879f94 WebContentsObserver no longer provides explicit_set, we can calculate it 2018-03-20 10:08:57 +03:00
Samuel Attard
0ac883c6d4
Remove the race condition between new process creation and context release (#12342)
* Remove the race condition between new process creation and old process releasing remote context

Previously there was a race condition where the getId() method would return the new context ID even
though the release was for the old context.  This changes it to send the "initial" context ID with
the release message to ensure there is no race.

* fetch context ID from remote in sandbox mode
2018-03-20 15:54:47 +11:00
Charles Kerr
c2673aa970 Set appropriate defaults for webview options (#12271)
* 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
2018-03-15 13:56:46 +09:00
deepak1556
3cfe66e4c3 move ipc use from rvh to rfh 2018-03-09 15:01:09 +05:30
Aleksei Kuzmin
8f78bd3307 Remove was_ignored_by_handler from frame_messages.h
https://chromium-review.googlesource.com/587701
2018-02-23 10:21:23 +09:00
Cheng Zhao
aa3eafcea1 Move closing logic to api::BrowserWindow
Closing a BrowserWindow is essentially closing a WebContents, the logic
should not be in NativeWindow.
2018-02-22 19:01:45 +09:00
Cheng Zhao
a25b49a127 Add ExtendedWebContentsObserver 2018-02-22 19:01:45 +09:00
Cheng Zhao
a3124e8873 Use observer to provide OnRendererUnresponsive 2018-02-22 19:01:45 +09:00
Cheng Zhao
5e4914700e Enable using external WebContents as devtools 2017-12-01 10:35:23 +09:00
Aleksei Kuzmin
e926473e5a Partial revert of Provide WebContents::CreateParams to tab helpers.
https://chromium-review.googlesource.com/c/571285
2017-11-24 10:58:16 +09:00
Aleksei Kuzmin
f2bcdab037 Provide WebContents::CreateParams to tab helpers.
https://codereview.chromium.org/2894973002
2017-11-24 10:58:16 +09:00
Aleksei Kuzmin
ba6e8b4dff Merge ResourceRequestBodyImpl and ResourceRequestBody.
https://codereview.chromium.org/2954343005
2017-11-24 10:58:15 +09:00
Cheng Zhao
7e0593950c Code style fixes 2017-11-13 16:13:54 +09:00
Heilig Benedek
276e12ce71 pass on web_contents to properly handle devtools 2017-11-13 15:50:50 +09:00
Heilig Benedek
f8b3009ebf restructure code to use web_preferences if possible 2017-11-13 15:50:49 +09:00
Heilig Benedek
35dc6d03b9 lint fix 2017-11-13 15:46:46 +09:00
Heilig Benedek
e39aacb30e fix a bug that caused a crash when using an offscreen window with detached devtools, related to autofill popups 2017-11-13 15:46:46 +09:00
Ahmed Mohamed Ali
463260b249 Electron crashes if user clicks Dev Tools & Zoom options #10697 2017-10-21 22:21:24 +02:00
Cheng Zhao
2c1984b6ed Add WebContents.getNativeView API 2017-08-21 19:50:12 +09:00
Kevin Sawicki
34fff57646 Grant the devtools access to the extension origins 2017-08-15 16:19:21 +03:00
Tony Ganch
4d9f309888 Fix HasServiceWorker check
Revert cb2014f9e8ae0283e5f20d4e2167be1592228887.
2017-08-15 16:19:21 +03:00
Aleksei Kuzmin
ffbb16e854 Adds a basic offline check to InstallableManager.
https://codereview.chromium.org/2751343002
2017-08-15 16:19:21 +03:00
Aleksei Kuzmin
9b8a77f0d8 Adds the ability for WebContentsDelegate to decide if event should be updated
https://codereview.chromium.org/2775553002
2017-08-15 16:19:20 +03:00
Birunthan Mohanathas
f20f87829b Add webContents.setIgnoreMenuShortcuts()
This allows you to disable application menu shortcut handling on a per
web contents basis.
2017-06-26 14:01:17 -07:00
deepak1556
50ac7b2edd Revert "Merge pull request #8724 from electron/defer_load_url"
Possible cause for #9121

This reverts commit 886b47e713, reversing
changes made to 479af3c9e2.
2017-06-05 19:04:21 +05:30
Heilig Benedek
192cd7787b move popup related code to nativewindow 2017-05-26 03:39:36 +02:00
Heilig Benedek
4949531f57 🎨 lint fix 2017-05-19 21:52:18 +02:00
Heilig Benedek
f360104bee add datalist element view 2017-05-19 21:36:37 +02:00
Kevin Sawicki
aa29bf8019 🎨 2017-05-18 10:26:22 -07:00
Kevin Sawicki
84a9b6a42d Merge remote-tracking branch 'origin/master' into renaesop_master 2017-05-18 10:08:40 -07:00
Cheng Zhao
9bed0ffdbf Merge pull request #9440 from brenca/osr-fixes
Additional small OSR fixes
2017-05-17 17:14:27 +09:00
Kevin Sawicki
350528707b Return base::ProcessId 2017-05-15 13:29:34 -07:00
Kevin Sawicki
d79ac8d9c1 Merge pull request #9222 from alexstrat/add-os-process-id
Add OS pid to web-contents
2017-05-15 13:28:47 -07:00
Heilig Benedek
9f682ee36b fix osr window initial sizing 2017-05-11 23:48:14 +02:00
22222
4044548f3e Add 'will-prevent-unload' event. 2017-05-11 06:35:35 -05:00
renaesop
cba5e96496 Merge remote-tracking branch 'ups/master' 2017-05-09 09:44:24 +08:00
22222
042b511a27 Fix #8911 2017-05-03 12:47:00 -05:00
deepak1556
f974a6bda9 browser: make destruction of webContents async 2017-05-01 16:53:14 +09:00
Alexandre Lachèze
f375e8a7db Add OS process id to web-contents 2017-04-18 12:31:20 +02:00
Birunthan Mohanathas
8b9f7e5b00 Implement initial, experimental BrowserView API
Right now, `<webview>` is the only way to embed additional content in a
`BrowserWindow`. Unfortunately `<webview>` suffers from a [number of
problems](https://github.com/electron/electron/issues?utf8=%E2%9C%93&q=is%3Aissue%20is%3Aopen%20label%3Awebview%20).
To make matters worse, many of these are upstream Chromium bugs instead
of Electron-specific bugs.

For us at [Figma](https://www.figma.com), the main issue is very slow
performance.

Despite the upstream improvements to `<webview>` through the OOPIF work, it is
probable that there will continue to be `<webview>`-specific bugs in the
future.

Therefore, this introduces a `<webview>` alternative to called `BrowserView`,
which...

- is a thin wrapper around `api::WebContents` (so bugs in `BrowserView` will
  likely also be bugs in `BrowserWindow` web contents)

- is instantiated in the main process like `BrowserWindow` (and unlike
  `<webview>`, which lives in the DOM of a `BrowserWindow` web contents)

- needs to be added to a `BrowserWindow` to display something on the screen

This implements the most basic API. The API is expected to evolve and change in
the near future and has consequently been marked as experimental. Please do not
use this API in production unless you are prepared to deal with breaking
changes.

In the future, we will want to change the API to support multiple
`BrowserView`s per window. We will also want to consider z-ordering
auto-resizing, and possibly even nested views.
2017-04-13 01:27:27 +03:00
deepak1556
72adbf7a2f destroy guest webcontents before embedder 2017-03-19 10:25:13 +05:30
John Kleinschmidt
d5a658bbe4 Fixed pass by reference and added spec 2017-03-08 22:06:26 -05:00