Commit graph

4185 commits

Author SHA1 Message Date
Brian Clifton
13de65d310 Fixes mouse coordinates for Windows when display is set to a higher DPI (ex: enlarged by 150% using display settings) 2016-09-27 08:23:48 -07:00
Cheng Zhao
458c4dd129 Merge branch 'support-chromium-sandbox' of https://github.com/tarruda/electron into tarruda-support-chromium-sandbox 2016-09-27 20:02:23 +08:00
Cheng Zhao
604700187d Merge pull request #7327 from MaxWhere/osr-fixes
Small fixes for offscreen rendering
2016-09-27 19:17:10 +08:00
Cheng Zhao
4c8d0ab804 Merge pull request #7298 from deepak1556/content_settings_patch
protocol: disable storage for non standard custom schemes
2016-09-27 18:52:36 +08:00
Thiago de Arruda
a64978b812 Use the routing id on api::WebContents::GetID
The sandbox option allows multiple webContents in one renderer process, so using
the only the renderer id to identify WebContents instances is no longer an
option.

WebContents::GetID now returns a 64-bit integer, which is composed of both the
process id(high 32), and the RenderViewHost routing id(low 32). Also add a
`GetProcessID` that retrieves the renderer process id, a requirement in some of
our javascript code.
2016-09-27 06:01:47 -03:00
Thiago de Arruda
524bab530a Improve AtomSandboxedRendererClient to support preload scripts.
Add RenderFrameObserver/RenderViewObserver subclasses that implement the
necessary support for preload scripts in sandboxed renderers.
2016-09-27 06:01:47 -03:00
Thiago de Arruda
6afe8aa7f2 Move EmitIPCEvent into AtomRenderViewObserver.
Refactor this function as a method so it is possible to inherit most behavior
from AtomRenderViewObserver and override EmitIPCEvent.
2016-09-27 06:01:46 -03:00
Thiago de Arruda
c8629019f5 Expose atom_api_renderer_ipc module API 2016-09-27 06:01:46 -03:00
Thiago de Arruda
a7b6332ed0 Add atom::AtomSandboxedRendererClient class 2016-09-27 06:01:46 -03:00
Thiago de Arruda
06cc9a44fe Add support for native chromium popups on sandboxed renderers.
- Allow `api::Window` instances to be created from existing `api::WebContents`.
- Override `WebContentsCreated` and `AddNewContents` to wrap renderer-created
  `content::WebContents` into `api::WebContents`.
- For `content::WebContents` that should be displayed in new windows, pass the
  wrapped `api::WebContents` object to window manager.
2016-09-27 06:01:46 -03:00
Thiago de Arruda
0b3b29938f Allow api::WebContents to fully wrap an existing content::WebContents.
- Add an overload to `WebContents::CreateFrom` that accepts a type parameter. If
  type is `REMOTE`, initialization is the same as before(a thin wrapper). If
  not, the `api::WebContents` will be fully initialized, as if it was created by
  `api::WebContents::Create`.
- Move common initialization code to `InitWithSessionAndOptions`.
2016-09-27 06:01:46 -03:00
Thiago de Arruda
1b1541fe1a Decouple api::Window initialization from api::WebContents construction. 2016-09-27 06:01:46 -03:00
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
gellert
ab5e51c209 fixes software rendering on macos and small resizing addition 2016-09-23 20:27:05 +02:00
Kevin Sawicki
df03c92249 Compare against NSNormalWindowLevel in IsAlwaysOnTop 2016-09-22 09:41:06 -07:00
Kevin Sawicki
c336cf59c1 Ignore level when calling SetAlwaysOnTop on Widget 2016-09-22 09:38:04 -07:00
Kevin Sawicki
bce62622bb Fix compiler errors 2016-09-22 09:22:28 -07:00
Cheng Zhao
903bf444d9 Bump v1.4.1 2016-09-22 19:05:58 +09:00
adammeyer
783d47f78b custom window level as string 2016-09-21 22:49:06 -04:00
adammeyer
fbb3a288ec Allow custom window level when sending window to top 2016-09-21 13:35:59 -04:00
deepak1556
ed465208a2 renderer: add content settings class for managing storage 2016-09-21 21:47:30 +05:30
Kevin Sawicki
ea1927f428 Store api_key_ on TokenLoadingJob 2016-09-20 13:24:45 -07:00
Zeke Sikelianos
fa2aaa48b1 allow GOOGLE_API_KEY to be set in environment 2016-09-20 12:01:59 -07:00
Cheng Zhao
30a6b597a5 Merge pull request #7239 from darkdh/6873
Emit scroll-touch-edge event instead of changing the behavior of scrollll-touch-begin/end
2016-09-20 14:51:10 +09:00
Cheng Zhao
e3e450613d Merge pull request #7157 from Mossop/moveguest
Allow moving a webcontents to a different webview
2016-09-20 14:28:42 +09:00
Samuel Attard
456f102cdc
Fix k typo 2016-09-20 02:42:41 +10:00
Samuel Attard
1454510549
Alphabetical method ordering 2016-09-20 02:41:26 +10:00
Samuel Attard
5dd5dbb3d8
Add a systemPreferences API method to fetch the system ColorizationColor
This is useful for automatical app theming

* Fetches the color from the registry
* Returns an empty string if the fetch fails (a falsey value)
2016-09-20 02:41:26 +10:00
Cheng Zhao
5bf746700e Unsubscribe observer when OffScreenRenderWidgetHostView is destroyed 2016-09-19 16:51:03 +09:00
Cheng Zhao
26004f1a66 Merge pull request #7241 from miniak/crashed-killed
Add killed argument for webContents.on("crashed") and app.on("gpu-process-crashed") events
2016-09-19 16:02:52 +09:00
Cheng Zhao
1fd819e500 Merge pull request #7231 from miniak/default-error-mode
Fix ELECTRON_DEFAULT_ERROR_MODE
2016-09-19 15:44:52 +09:00
Cheng Zhao
a260647b4f Merge pull request #7062 from MaxWhere/osr-sizing-fix
Offscreen invalidate and sizing fix
2016-09-19 15:38:11 +09:00
Cheng Zhao
ffe931bde7 Merge pull request #7226 from electron/power-monitor-error
Rethrow caught errors from process.binding
2016-09-19 15:25:18 +09:00
Milan Burda
8567f79e67 Add killed argument for webContents.on("crashed") and app.on("gpu-process-crashed") events 2016-09-17 17:02:36 -07:00
Anthony Tseng
269a87b26f Emit scroll-touch-edge event instead of changing the behavior of scroll-touch-begin/end
fix #6873
2016-09-17 22:50:10 +08:00
Kevin Sawicki
1072519488 Mark atom-shell version as deprecated 2016-09-16 15:59:00 -07:00
gellert
37de2301f7 moves setsize call to osr renderwidgethostview 2016-09-16 23:28:51 +02:00
gellert
fec5a7d67a removes extra header 2016-09-16 23:27:51 +02:00
gellert
8baaad4e0d cleanup and adds docs 2016-09-16 23:27:51 +02:00
gellert
10ea0268e5 calling setsize only on osr windows 2016-09-16 23:27:11 +02:00
gellert
b4c220613f adds invalidate method and proper resizing 2016-09-16 23:27:11 +02:00
Milan Burda
12a2b144f3 Only drop the SEM_NOGPFAULTERRORBOX flag when calling SetErrorMode (ELECTRON_DEFAULT_ERROR_MODE) 2016-09-16 14:01:33 -07:00
Kevin Sawicki
0c3ad527e3 initialize -> require 2016-09-16 13:09:06 -07:00
Kevin Sawicki
577394442b power-monitor -> powerMonitor 2016-09-16 09:58:27 -07:00
Cheng Zhao
da677b683b Merge pull request #7163 from MaxWhere/frame-sub-scale-fix
Frame subscriber improvements
2016-09-16 21:24:53 +09:00
Cheng Zhao
9dad9478fa Merge pull request #7169 from deepak1556/download_defaultname_patch
browser: provide a default filename when unable to generate from download data
2016-09-16 21:19:21 +09:00
Cheng Zhao
69d4cac760 Merge branch 'release' 2016-09-16 21:03:54 +09:00
deepak1556
e7f1265b64 add save-to-disk disposition for new-window event 2016-09-16 16:30:26 +05:30
deepak1556
94faaf7d58 provide a default file name for downloads 2016-09-16 16:02:57 +05:30
gellert
64e53a17bd reverts subscriber api 2016-09-16 11:18:15 +02:00
Cheng Zhao
20d5a50ac9 Merge pull request #7178 from aichingm/master
🐧 Add support for different trash implementations
2016-09-16 17:43:09 +09:00
Cheng Zhao
9714348260 Merge pull request #6941 from deepak1556/blob_data_patch
protocol: provide blob uuid with uploadData
2016-09-16 17:01:15 +09:00
Cheng Zhao
e62e62292a Bump v1.4.0 2016-09-15 14:44:38 +09:00
Cheng Zhao
5be8104104 Update to Chrome 53.0.2785.113 2016-09-15 14:27:56 +09:00
deepak1556
eafb6307d5 fix crash when using geolocation api with enableHighAccuracy option 2016-09-14 16:23:01 +09:00
Cheng Zhao
fbac635687 Only emit finalUpdate found-in-page events
Since Chrome 53 all meaningful results of found-in-page are finalUpdate.
2016-09-14 16:23:01 +09:00
Cheng Zhao
5ccd0a24e9 Fix compatibility with canScroll 2016-09-14 16:23:01 +09:00
Cheng Zhao
5708e86a05 Fix API change of findInPage API 2016-09-14 16:23:00 +09:00
Cheng Zhao
937ae7ef8f Fix crash caused by new network parameters 2016-09-14 16:23:00 +09:00
Cheng Zhao
4c56c1c2b2 Fix crash in offscreen renderer 2016-09-14 16:22:59 +09:00
Cheng Zhao
6d8f900916 Fix building on Windows 2016-09-14 16:22:43 +09:00
Cheng Zhao
4aa292c7cd Fix building on Linux 2016-09-14 16:22:43 +09:00
Cheng Zhao
f28e8d7168 Fix API changes of Chrome 53 2016-09-14 16:22:43 +09:00
Cheng Zhao
cfe7bfd7eb Bump v1.3.6 2016-09-14 14:36:11 +09:00
Cheng Zhao
b13bab6fae Merge pull request #7182 from electron/shell-return-values
Return booleans from more shell APIs
2016-09-13 16:46:05 +09:00
Cheng Zhao
4eba8094d4 Merge pull request #7096 from minggo/add-option-to-disable-devtools
add option to disable devtools
2016-09-13 16:01:56 +09:00
Kevin Sawicki
07304e5950 Add missing return value 2016-09-12 14:33:22 -07:00
Kevin Sawicki
55eab8e385 Return boolean from shell.openItem 2016-09-12 14:29:06 -07:00
Kevin Sawicki
72558654ef Return boolean from shell.showItemInFolder 2016-09-12 14:22:29 -07:00
Mario Aichinger
893fc2cd53 🐧 Add support for different trash implementations
Make the trash implemantation in MoveItemToTrash selectable via an environment variable
2016-09-12 10:41:23 +02:00
gellert
2435f1b660 lint fix 2016-09-09 23:50:01 +02:00
gellert
d3dc66e308 adds scale factor check and simplifies frame subscription 2016-09-09 23:17:17 +02:00
Dave Townsend
313b2faa3c Add a guestinstance attribute to webviews reflecting their current guest
instance ID and allowing moving a guest instance to a new webview.
2016-09-09 10:32:05 -07:00
Cheng Zhao
e189132176 Merge pull request #7123 from deepak1556/asar_range_patch
protocol: respect range header when reading from asar
2016-09-09 20:59:12 +09:00
Cheng Zhao
7ed33dfbee Merge pull request #7077 from miniak/title-bar-style
Add support for titleBarStyle: 'hidden-inset' on OS X 10.9
2016-09-09 20:27:26 +09:00
Cheng Zhao
b6079ff90b Merge pull request #7053 from electron/launch-from-notification
Send notification info to app.ready, on macOS
2016-09-09 20:01:39 +09:00
Charlie Hess
32e0e8a151 Use smart pointers in a couple places. 2016-09-08 16:23:55 -07:00
Kevin Sawicki
224d3aef3e Mark detach option for 2.0 removal 2016-09-08 09:05:49 -07:00
deepak1556
bd291b9601 protocol: respect range header when reading from asar 2016-09-08 10:14:49 +05:30
Kevin Sawicki
8652888e27 End sheet in parent when closing modal window 2016-09-07 15:24:37 -07:00
minggo
3fdc99c3c6 change the option name to devTools 2016-09-07 10:16:52 +08:00
minggo
7d712b77ba remove duplicate comment 2016-09-07 09:43:06 +08:00
minggo
91fb85947d WebContents::InspectElement and WebContents::InspenctServiceWorker return immediately if DevTools is disabled 2016-09-06 17:53:42 +08:00
minggo
baa55caf83 remove unneeded whitespace 2016-09-06 11:48:48 +08:00
minggo
19f6811312 initialize disable_devtools_ 2016-09-06 11:08:50 +08:00
minggo
1f1180f857 use webPreferences to disable devtools 2016-09-05 18:25:57 +08:00
minggo
0d7e7be748 add option to disable devtools 2016-09-05 16:27:56 +08:00
Milan Burda
9911e60f5b Add support for titleBarStyle: 'hidden-inset' on OS X 10.9 2016-09-03 01:33:20 +02:00
Cheng Zhao
02ce727ff6 Bump v1.3.5 2016-09-02 13:59:28 +09:00
Cheng Zhao
cdfcca147a Fix warning when compiling for win32 ia32 build 2016-09-02 13:59:28 +09:00
Cheng Zhao
14f625d61b Merge pull request #6826 from enlight/set-jump-list
Extend the custom Jump List API provided by Electron
2016-09-01 15:35:21 +09:00
deepak1556
7b85ca0301 create helper class to read blob data 2016-09-01 08:52:44 +05:30
Vadim Macagon
c64294cf60 Extend the custom Jump List API
Add `app.getJumpListSettings()` and `app.setJumpList(callback)` that
make it possible to fully customize the Jump List of an Electron app.
It is now possible to:
- Add tasks to the standard `Tasks` category.
- Add separators to the standard `Tasks` category.
- Add custom categories containing tasks and file links.
- Add system managed Recent/Frequent categories.
- Remove the custom Jump List.
2016-09-01 09:56:14 +07:00
Charlie Hess
f0517812b1 Linter fascism. 2016-08-31 18:12:35 -07:00
Charlie Hess
cd25066c9f Fix oops on Windows / Linux. 2016-08-31 17:26:25 -07:00
Charlie Hess
af9e010162 Send notification userInfo to app.ready, on macOS.
Check if the user launched the app from a notification and send the notification args across if so.
2016-08-31 17:17:44 -07:00
deepak1556
5cbc8d5c71 fix ambiguous constructor call 2016-09-01 01:01:52 +05:30
deepak1556
d2e40d4fc1 update api to work on public url and uuid 2016-09-01 01:01:52 +05:30
deepak1556
0fb2339e3d session: api to retrieve blob data from uuid 2016-09-01 01:01:52 +05:30