Commit graph

185 commits

Author SHA1 Message Date
Ryohei Ikegami
7ac93045b7 Merge branch 'master' into native-window-open 2017-05-11 13:51:43 +09:00
Cheng Zhao
fc2d62d5cb Fix API changes of Chrome58 2017-04-27 16:34:52 +09:00
Ryohei Ikegami
1d73e84a29 Merge branch 'master' into native-window-open 2017-04-27 12:03:55 +09:00
Kevin Sawicki
a004cada7c Merge pull request #9095 from seanchas116/better-path-resolve
Search for module from app path when URL is not file protocol
2017-04-20 10:49:53 -07:00
Birunthan Mohanathas
3bcf5e0e9f Fix OverrideSiteInstanceForNavigation() signature 2017-04-18 11:51:38 +03:00
Ryohei Ikegami
9d62b196d3 Use base::FilePath 2017-04-13 10:59:12 +09:00
Ryohei Ikegami
b19c5154ca Fix cpplint errors 2017-04-12 12:25:56 +09:00
Ryohei Ikegami
34ed1a9ef8 Track child web contents 2017-04-06 12:15:27 +09:00
Ryohei Ikegami
526086d900 Improve RootWebContentsTracker 2017-04-06 11:37:21 +09:00
Ryohei Ikegami
b683584859 Add better comments to ShouldCreateNewSiteInstance 2017-04-05 18:16:10 +09:00
Ryohei Ikegami
cbdd52e43b Always create new SiteInstance on root WebContents 2017-04-05 17:51:17 +09:00
Ryohei Ikegami
90852c665d Pass RenderFrameHost to ShouldCreateNewSiteInstance 2017-04-05 13:47:02 +09:00
Ryohei Ikegami
e7b9b4b1a5 Always create new site instance 2017-04-04 20:54:10 +09:00
Ryohei Ikegami
3eab5df4a4 Revert "Reuse site instance only on window.open"
This reverts commit 4d61d071b2.
2017-04-04 13:48:17 +09:00
Ryohei Ikegami
24fedb2e20 No extra linebreak 2017-04-04 09:40:38 +09:00
Ryohei Ikegami
4a7eec8f2d Pass app path as command line argument 2017-04-04 09:36:01 +09:00
Ryohei Ikegami
4d61d071b2 Reuse site instance only on window.open 2017-03-21 10:41:49 +09:00
Ryohei Ikegami
f3ce93f1bb Fix C++ style 2017-03-19 18:24:05 +09:00
Ryohei Ikegami
2c7343293a Allow window.open on native-window-open enabled 2017-03-19 17:47:26 +09:00
Ryohei Ikegami
a1f9a45276 Use native window.open implementation 2017-03-19 17:41:20 +09:00
Ryohei Ikegami
054ba7a964 Add AtomBrowserClient::IsRendererUsesNativeWindowOpen 2017-03-19 17:25:45 +09:00
Cheng Zhao
2e0780308c allowDisplayingInsecureContent is removed by Chrome 2017-02-06 10:34:29 -08:00
Cheng Zhao
c10eb73166 Signature of OnCreateWindow has changed 2017-02-06 10:34:28 -08:00
Cheng Zhao
497f5a1199 Update files for Chrome 54 API changes 2017-01-19 09:05:59 +02:00
Paul Frazee
99ea50649a finish implementation of {secure:true} opt on protocol.registerStandardScehesm, and add working test 2016-12-12 12:49:57 -08:00
deepak1556
0410a184ce webContents: handle POST navigation for new windows 2016-11-11 10:53:00 -08:00
Kevin Sawicki
709dd0bf18 Upgrade to Chrome 53.0.2785.143 2016-11-09 11:03:44 -08:00
Michael Vasseur
c811188e22 Updated required code to handle missing additional features for popup windows 2016-10-04 14:38:32 +09:00
deepak1556
1323542373 browser: allow filesystem access for devtools scheme 2016-09-29 22:54:39 +05:30
Thiago de Arruda
1d228446db Expose --enable-sandbox command-line switch.
When `--enable-sandbox` is passed, electron will use chromium sandbox to spawn
all renderers, and every new BrowserWindow will automatically have "sandboxed"
passed as a web preference(since the renderer would not work properly
otherwise).
2016-09-27 06:01:46 -03:00
Thiago de Arruda
c783ec72bc Add "sandboxed" option to "webPreferences".
When "sandboxed" is passed as a web preference for `BrowserWindow`, the newly
created renderer won't run any node.js code/integration, only communicating with
the system via the IPC API of the content module. This is a requirement for
running the renderer under chrome OS-level sandbox.

Beyond that, certain behaviors of AtomBrowserClient are modified when dealing
with sandboxed renderers:

- `OverrideSiteInstanceNavigation` no longer create a new `SiteInstance` for
  every navigation. Instead, it reuses the source `SiteInstance` when not
  navigating to a different site.
- `CanCreateWindow` will return true and allow javascript access.
2016-09-27 06:01:46 -03:00
Cheng Zhao
f28e8d7168 Fix API changes of Chrome 53 2016-09-14 16:22:43 +09:00
deepak1556
62cb8428fb use schemes from global instead of commandline 2016-08-24 20:22:35 +05:30
deepak1556
ad0c86db7a register custom schemes to access files through filesystem api 2016-08-24 05:46:54 +05:30
Cheng Zhao
1ba3907038 Update to API changes of Chrome 52 2016-07-04 15:32:43 +09:00
Cheng Zhao
14c4be50c1 Avoid calling GetWebContentsFromProcessID for twice 2016-07-02 16:54:12 +09:00
Samuel Attard
4f660f3e6f Implement WebContenstAudioMuted in AtomBrowserClient 2016-07-02 13:28:28 +12:00
Cheng Zhao
920ebee333 Make sure standard schemes are also set in child process 2016-06-08 15:46:50 +09:00
Cheng Zhao
7eab259d92 Make it possible to only set preferences for BrowserWindow 2016-05-27 09:20:46 +09:00
Cheng Zhao
530f19e956 Fix crash due to site_instace being freed early 2016-05-23 12:57:46 +09:00
Cheng Zhao
899cdb48d7 Fix using invalid pointer as SiteInstance 2016-05-23 12:46:14 +09:00
Cheng Zhao
a2bd55dd3c Adapt to changes of Chrome 51 API changes (Part 2) 2016-05-23 12:29:14 +09:00
Cheng Zhao
7ba391da7c Update to API changes of Chrome 51 2016-05-23 10:59:39 +09:00
deepak1556
1ff33b7c81 protocol: fix registerStandardSchemes api 2016-05-08 01:36:34 +05:30
deepak1556
1240c83e40 set trust bits for CA certs 2016-04-18 21:05:33 +05:30
deepak1556
e81cec4058 app: api to import client certificate 2016-04-18 10:54:43 +05:30
deepak1556
e14c91771b removed redundant delegation 2016-04-01 08:14:29 +05:30
deepak1556
e0fe478ae7 decide early on render initiated window creations 2016-04-01 08:14:29 +05:30
Robo
48064ee7e9 browser: fix retrieving webcontents from associated process id 2016-03-14 04:14:04 +05:30
Cheng Zhao
bfc6d77bb3 Pending renderer process no longer has render view attached 2016-03-10 17:06:22 +09:00
Cheng Zhao
dd4d3db47b Fix node integration not working 2016-03-10 17:06:21 +09:00
Cheng Zhao
5fae63a2f5 Fix compilation errors on OS X 2016-03-10 17:06:21 +09:00
Robo
2a278ceb8f delegate to permission manager for other permissions 2016-01-30 16:49:18 +05:30
Robo
f32bf08eb3 add spec 2016-01-29 15:23:28 +05:30
Robo
85e13333c3 webview: add permission-request event 2016-01-29 15:23:28 +05:30
Cheng Zhao
c76db0ba1d Fix coding styles 2015-12-29 18:59:27 +08:00
Cyrille Lebeaupin
9d878ad6b2 Add widevine third party
Add 2 new command options to use widevine:
- widevine-cdm-path: Path to widevine plugin
- widevine-cdm-version: Version of the widevine plugin
2015-12-29 14:50:59 +08:00
Robo
836c13b330 browser: check for rvh existence 2015-12-18 04:45:32 +05:30
Robo
855d49100f protocol: api to register schemes that can handle service worker 2015-12-09 03:11:58 +05:30
Cheng Zhao
73e7773d84 Update to API changes of Chrome 47 2015-12-07 19:56:23 +08:00
Cheng Zhao
e432abfb42 Add certificate-error event 2015-11-18 10:39:25 +08:00
Cheng Zhao
9a0dc3bfd7 Add Delegate for AtomBrowserClient 2015-11-18 10:07:03 +08:00
Cheng Zhao
21f7316a18 Code cleanup 2015-09-30 10:56:42 +08:00
Robo
464134a31a protocol: allowing default clients to handle external unhandled protocols 2015-09-29 17:52:58 +05:30
Cheng Zhao
9c235509a6 Read guest view's info from WebContentsPreferences 2015-09-06 10:53:03 +08:00
Cheng Zhao
0b97d58a6f Move a few options in NativeWindow to web-preferences 2015-09-06 10:53:03 +08:00
Cheng Zhao
880dce950d Move OverrideWebkitPrefs to WebContentsPreferences 2015-09-06 10:53:03 +08:00
Robo
03ba9533fb store webviewinfo as web contents userdata 2015-09-03 21:27:50 +05:30
Cheng Zhao
96d53d279e Initial implementation of new protocol API 2015-08-12 13:30:19 +08:00
Cheng Zhao
1e9eaba423 win: Fix compiler warning 2015-08-11 23:41:43 +08:00
Cheng Zhao
e6a2b0a479 Fix finding the WebContents of a pending renderer process
Apparently after Chrome 44 a renderer process can be started before the
corresponding render view is created, though it can be patched but from
the source code Chromium is enforcing this everywhere now, so fixing it
on our side seems the only reliable solution.

This fix is very similar to what we did, but instead of blindly setting
swapped process, we now remember which process the pending process is
going to replace, so we should not have those race conditions.
2015-08-11 15:39:17 +08:00
Haojian Wu
28093a4d2d Fix a crash issue in GetProcessOwner if no renderer view host is found. 2015-08-11 09:48:55 +08:00
Cheng Zhao
1347c61c8e Set AppUserModelID for all renderer processes 2015-08-04 17:13:05 +08:00
Robo
7576de639b plugin: dont check for renderer flags for adding pepper browser host filters 2015-07-03 13:50:16 +05:30
Cheng Zhao
a96ff85005 Clean up code in AtomBrowserClient 2015-06-26 10:53:37 +08:00
deepak1556
0fbd908fb6 app: event to pass client certificate data 2015-06-25 21:29:21 +05:30
Cheng Zhao
9f52b11761 Remove NativeWindow::GetWebContents 2015-06-25 14:54:00 +08:00
Cheng Zhao
a1cbd11b5b Only append --register-standard-schemes when needed 2015-06-19 21:53:29 +08:00
deepak1556
663a48ee38 protocol: api to register custom schemes to standard schemes 2015-06-17 14:43:04 +05:30
Cheng Zhao
cd3c061448 win: Fix compilation error 2015-06-10 19:34:30 +08:00
deepak1556
52b2c0d27f default to first certificate from cert store 2015-06-09 13:00:20 +05:30
deepak1556
2de5f9de6c browser: support client certificate 2015-06-08 21:00:32 +05:30
Cheng Zhao
3a3b05b2f0 Clean up code 2015-06-03 14:53:19 +08:00
Cheng Zhao
34cd1435b4 Clean up code 2015-06-03 14:17:28 +08:00
Cheng Zhao
d4be2da70e Don't rely on process_id to search for NativeWindow 2015-06-03 14:08:56 +08:00
Cheng Zhao
6dfa7b5383 Don't rely on guest_process_id for searching guest 2015-06-03 13:45:06 +08:00
Cheng Zhao
d46e986e80 Remove AtomResourceDispatcherHostDelegate 2015-06-03 10:08:05 +08:00
deepak1556
9b7ad675c6 browserClient: dont restart render process for javascript: scheme 2015-05-27 16:39:02 +05:30
Cheng Zhao
b238ac5981 Merge pull request #1660 from deepak1556/filesysem_patch
browser: create quota permission context to allow quota request
2015-05-20 14:05:53 +08:00
Cheng Zhao
7c69c2846b Simplify how we find NativeWindow from WebContents 2015-05-20 10:27:16 +08:00
deepak1556
add7f8a4aa add test 2015-05-12 18:03:00 +05:30
deepak1556
2785a4cc48 browser: create quota permission context to allow quota request 2015-05-12 17:52:30 +05:30
Cheng Zhao
d1545a64ae Don't force restart renderer process for in-page navigation 2015-05-11 14:40:40 +08:00
deepak1556
15ae6b8d36 fix lint errors and add documentation 2015-05-10 10:25:19 +05:30
deepak1556
3fdc4543b8 ppapi flash plugin support 2015-05-10 09:22:09 +05:30
Cheng Zhao
2f1683445b Only append command line params for renderer process 2015-04-27 15:11:59 +08:00
Cheng Zhao
4c78f98da6 Check if it is guest process before updating process ID 2015-04-27 15:11:59 +08:00
Cheng Zhao
36c4b1705d Update guest process id when navigating 2015-04-27 15:11:58 +08:00
Cheng Zhao
d8adbc0875 NULL => nullptr 2015-04-27 15:11:58 +08:00
Cheng Zhao
b527846ee4 Use our new way to restart renderer process
As a side effect, it will also restart the renderer process of webview
tag guests.
2015-04-27 15:11:58 +08:00