Commit graph

6733 commits

Author SHA1 Message Date
Robo
820d99d37f build: remove duplicate cursor resource configs (#14929)
$target_gen_dir/ui/resources/ui_unscaled_resources.rc provides
the required values during compilation.
2018-10-03 08:38:53 -07:00
Robo
596ae2c2df refactor: desktop capturer module (#14835)
* Revert "post all desktop capturer apis to worker threads"

This reverts commit 5a28759fea.

* refactor: desktop capturer module

* Creates the screen and window capturer for the liftime of the app
* Fixes incorrect usage of weak ptr

* build: add //ui/snapshot to chromium_src deps

* fix: handle scenarios when there are no captured sources
2018-10-03 21:26:42 +09:00
Shelley Vohr
e06bc311a9 chore: remove dead code in menu controller (#14939) 2018-10-03 16:24:28 +09:00
Cheng Zhao
a1b2162563 fix: use white background for non-OSR renderer by default (#14932) 2018-10-02 20:09:18 -07:00
Felix Rieseberg
79c6e7c3f7 fix: Disable new fade animation for BrowserViews (#14911) 2018-10-02 11:49:26 +10:00
Alexey Kuzmin
c9edf77e8e test: slightly rewrite getGPUInfo() tests (#14863)
Rewrite GPUInfo tests for linux and update `getGPUInfo` functionality for linux.
`basic` and `complete` GPUInfo is same for linux.
2018-10-01 18:34:52 -07:00
Robo
a24ad6bc14 build: define compile time features with buildflag header (#14840)
* build: define compile time features with buildflag header

* refactor: switch to BUILDFLAG(ENABLE_DESKTOP_CAPTURER)

* refactor: switch to BUILDFLAG(ENABLE_RUN_AS_NODE)

* refactor: switch to BUILDFLAG(ENABLE_OSR)

* refactor: switch to BUILDFLAG(ENABLE_VIEW_API)

* refactor: switch to BUILDFLAG(ENABLE_PEPPER_FLASH)

* refactor: switch to BUILDFLAG(OVERRIDE_LOCATION_PROVIDER)

* refactor: switch to BUILDFLAG(ENABLE_PDF_VIEWER)
2018-10-01 16:00:53 -04:00
Shelley Vohr
ec38561254 chore: wrap new NSAppearance in correct check (#14873)
* fix: wrap new NSAppearance in correct check

* catch dark case on < 10.14

* fix @available conditional organization
2018-10-02 00:52:04 +10:00
Milan Burda
ce38be74df refactor: simplify process object initialization for sandboxed renderers (#14878)
Also fix `process.windowsStore`.
2018-09-30 23:24:00 +02:00
Electron Bot
0127bbc8e8 Bump v4.0.0-nightly.20180929 2018-09-29 05:11:59 -07:00
Samuel Attard
3d1247933c
Revert "Bump v4.0.0-nightly.20180929"
This reverts commit 3cc0a40792.
2018-09-29 22:04:05 +10:00
Electron Bot
3cc0a40792 Bump v4.0.0-nightly.20180929 2018-09-29 04:56:34 -07:00
Samuel Attard
6d205423f5
Revert "Bump v4.0.0-nightly.20180929"
This reverts commit dac076dfb1.
2018-09-29 21:50:10 +10:00
Electron Bot
dac076dfb1 Bump v4.0.0-nightly.20180929 2018-09-29 02:02:46 -07:00
Samuel Attard
7ac4f7aa3b
Revert "Bump v4.0.0-nightly.20180929"
This reverts commit e3adffbbac.
2018-09-29 18:36:12 +10:00
Electron Bot
e3adffbbac Bump v4.0.0-nightly.20180929 2018-09-29 00:04:20 -07:00
Samuel Attard
417150cecf
Revert "Bump v4.0.0-nightly.20180928"
This reverts commit fa70e65e0f.
2018-09-29 15:32:20 +10:00
Electron Bot
fa70e65e0f Bump v4.0.0-nightly.20180928 2018-09-28 21:30:52 -07:00
Samuel Attard
2669f1247a
Revert "Bump v4.0.0-nightly.20180928"
This reverts commit 449bd8e408.
2018-09-29 14:00:41 +10:00
Electron Bot
449bd8e408 Bump v4.0.0-nightly.20180928 2018-09-28 20:13:25 -07:00
Samuel Attard
24576fd0f1
Revert "Bump v4.0.0-nightly.20180927"
This reverts commit 40bc4afcb3.
2018-09-29 00:04:19 +12:00
Troy
0e1365fc94 fix: enable key accelerator flags for Windows and Linux (#14830)
* Fix Accelerator Flags for Windows and Linux

* Lint fix

* Lint whitespace
2018-09-28 06:59:00 -05:00
Electron Bot
40bc4afcb3 Bump v4.0.0-nightly.20180927 2018-09-27 23:51:02 -07:00
Samuel Attard
462d65c203 Revert "Bump v4.0.0-nightly.20180927"
This reverts commit 8c1d6f2aa2.
2018-09-28 16:47:41 +10:00
Electron Bot
8c1d6f2aa2 Bump v4.0.0-nightly.20180927 2018-09-27 23:01:31 -07:00
Samuel Attard
3006974106 Revert "Bump v4.0.0-nightly.20180927"
This reverts commit 06aaf71706.
2018-09-28 15:34:47 +10:00
Electron Bot
06aaf71706 Bump v4.0.0-nightly.20180927 2018-09-27 21:03:47 -07:00
Samuel Attard
d51633e598 Revert "Bump v4.0.0-nightly.20180927"
This reverts commit c48306c80f.
2018-09-28 13:57:04 +10:00
Electron Bot
c48306c80f Bump v4.0.0-nightly.20180927 2018-09-27 20:22:40 -07:00
Samuel Attard
a524c5ec12
chore: move the view APIs to their own directory (#14722)
* chore: move the view APIs to their own directory

* move view api cpp files
2018-09-28 12:47:09 +10:00
Jeremy Apthorp
77fb9cf416 chore: stop using electron.gyp for branding and version (#14559)
* chore: stop using electron.gyp for version info

* chore: remove branding info from electron.gyp

* Use get_electron_branding instead of gn read

* Flip project_name/product_name
2018-09-27 14:53:08 -04:00
Samuel Attard
6be69048e6
fix: handle shortcuts by default if no WebPreferences object exists (#14766)
DevTools webcontents do not have webpreferences

Fixes #14685
2018-09-28 01:41:09 +10:00
Samuel Attard
0d2a0c7583 feat: add APIs to support mojave dark modes (#14755)
* feat: add APIs to support mojave dark mode

Closes #13387

* docs: fix system-prefs typo
2018-09-27 10:33:31 -05:00
Nitish Sakhawalkar
5c108728d6 feat: Implementation of getGPUInfo API. (#13486)
* Implementation of getGPUInfo API.

* Clear promise set

* Changes to promise usage

* Minor fixes

* Fix linux build

* Update spec

* Fix lint (linter didn't run on windows locally)

* Test running single test for CI

* Update spec
2018-09-28 00:59:23 +10:00
Alexey Kuzmin
638311b6b3 build: turn on OSR for GN builds (#14352)
* build: turn on OSR for GN builds

* remove mac-only speech functions in osr

They were removed as a part of https://chromium-review.googlesource.com/c/chromium/src/+/923548

* implement WasResized in MacHelper

* add missing screen include

* fix: use proper bitmap operations to construct frame to avoid failing checks

* switch to SkCanvas for drawing
2018-09-27 09:32:31 -04:00
Samuel Attard
7dc7cd1d89
fix: send null in debugger callback when no error (#14814)
Fixes #13811
2018-09-27 17:43:45 +10:00
Shelley Vohr
985d35fc1c
fix: update deprecated NSWindow masks (#14760) 2018-09-26 16:00:57 -07:00
Troy
560b1c17af fix: setMaximizable to be true if window is resizable & maximizable (#14648)
* setMaximizable to be true if window is resizable & maximizable

* Fix linting

* Add regressive test to verify maxmizable state

* Leaves maximizable state of window alone if setResizable is called

* Fix exclusive test

* Fix crashing text

* SetMaximizable unconditionally

* Remember former maximizable state

* Fix accidental mac variable deletion

* Logic modification

* Lint

* Remove unneeded test

* Remove unneeded variable since only Windows is effect
2018-09-26 11:41:40 +10:00
Shelley Vohr
c9bc3471e7
fix: get background color from GtkMenuBar#menubar (#14785)
* fix: get background color from GtkMenuBar#menubar

* expose libgtkui::GetBgColor
2018-09-25 13:57:06 -07:00
Shelley Vohr
c7b91acf41
fix: inconsistent titleBarStyle on transparent fullscreen (#14765) 2018-09-24 17:15:18 -07:00
Jeremy Apthorp
335caef9ad fix: support macos 10.14 SDK (#14758)
* support macos 10.14 SDK

* forward-declare NSUserActivityRestoring for backwards compatibility

* that didn't work, let's resort to #ifdef
2018-09-24 10:41:17 -04:00
Samuel Attard
32a9df2940
refactor: clean up the default app implementation (#14719)
* Disable nodeIntegration
* Enable contextIsolation
* Re-implement the CSP security check to handle running in
contextIsolation
* Disable bad DCHECKS for the promise helper
* Remove the unused "-d" flag for the electron binary
* Added a way to hide the default help output for electron devs who
don't want to see it every time
2018-09-21 15:24:42 +10:00
Cheng Zhao
6f494b3c58 fix: do not set layer explicitly for frameless window (#14730) 2018-09-20 12:24:55 -05:00
Jeremy Apthorp
977e287cfa chore: turn off clang-format for ATOM_PRE_RELEASE_VERSION (#14711) 2018-09-20 16:55:07 +10:00
Aleksei Kuzmin
7fc3bcaa02 chore: run clang-format
- atom/
 - brightray/
 - chromium_src/
2018-09-19 17:18:10 +02:00
Milan Burda
e22142ef9c feat: add process.takeHeapSnapshot() / webContents.takeHeapSnapshot() (#14456) 2018-09-18 11:00:31 -07:00
Shelley Vohr
12a435273d
fix: quit properly in simpleFullScreen mode (#14620) 2018-09-16 22:22:09 -07:00
Samuel Attard
7065093869
feat: add will-redirect (#13866)
* feat: add will-redirect to allow people to prevent 30X redirects

* spec: add tests for the will-redirect event

* refactor: implement will-redirect using NavigationThrottle instead of PostTask

This avoids a potential race condition and immediately cancels the
navigation

* docs: add docs for did-redirect-navigation

* refactor: move AtomNavigationThrottle out of net folder

* refactor: update header guard for atom_navigation_throttle.h

* refactor: fix chromium style errors in the GN build

* refactor: update throttle impl to NOTREACHED and std::make_unqique
2018-09-16 01:42:43 +10:00
Jeremy Apthorp
961147151f fix: re-enable high-dpi support on windows (#14596)
fixes #14568
2018-09-13 10:40:29 -05:00
John Kleinschmidt
429b18d7a0
Merge pull request #14600 from electron/media-permission
feat: add mediaTypes to media permission requests
2018-09-13 10:39:08 -04:00
Samuel Attard
73a1a8b3f0 feat: automatically round numbers that are converted to points (#14604)
Fixes #14490
2018-09-13 08:28:56 -05:00
Samuel Attard
7025cbd0c9 feat: add mediaTypes to media permission requests
This is done to be consistent with setPermissionCheckHandler and to be
backwards compatible

Fixes #14168
2018-09-13 16:58:57 +10:00
Charles Kerr
d663b4eaee
fix: fix gn cpplint warnings (#14583)
* chore: fix cpplint 'include_what_you_use' warnings

Typically by including <memory>, <utility> etc.

* chore: fix 'static/global string constant' warning

Use C style strings instead of std::string.

Style guide forbids non-trivial static / global variables. https://google.github.io/styleguide/cppguide.html#Static_and_Global_Variables

/home/charles/electron/electron-gn/src/electron/script/cpplint.js

* refactor: remove global string variables.

Fix 'global string variables are not permitted' linter warnings
by using the base::NoDestructor<> wrapper to make it explicit that
these variables are never destroyed.

The style guide's take on globals with nontrivial destructors:
https://google.github.io/styleguide/cppguide.html#Static_and_Global_Variables

* fix: initializer error introduced in last commit

* fix: remove WIP file that was included by accident

* fix: include order

* fix: include order

* fix: include order

* fix: include order, again
2018-09-12 19:25:56 -05:00
Jeremy Apthorp
183a043216 chore: remove unneeded ssize_t hack
See electron/libchromiumcontent#682
2018-09-12 15:33:59 -07:00
Nitish Sakhawalkar
e90c281ef3 fix: Windows Background color issue (#14561)
Call InvalidateRect for windows after setting the bg color
2018-09-12 13:41:47 -07:00
Robo
e860748d6b fix: Invalidate weak ptrs before window Javascript object is destroyed (#14532)
* fix: Invalidate weak ptrs before window Javascript object is destroyed

* chore: add regression test for #14513

This test is similar to the original gist at https://gist.github.com/bpasero/a02a645e11f4946dcca1331d0299149d -- the key is to open multiple windows and add an `app.on('browser-window-focus') listener that accesses window.id.

* fix: last commit didn't test the right thing.

The test needs to run in the main process to reproduce the
conditions reported in #14513
2018-09-12 13:58:04 -05:00
Robo
2cd03bf360 build: remove duplicate devtools sources (#14522)
* build: remove duplicate devtools sources

* build: create separate target for chrome sources

* Move sources that are always depended on by electron,
  starting with security_state_tab_helper.{cc|h}
* Add //component/strings to pak for devtools security tab

* fix: allow specifying type of the added filesystem.

https://chromium-review.googlesource.com/c/chromium/src/+/729250

* fix: do not index excluded folders

https://chromium-review.googlesource.com/c/chromium/src/+/972579
2018-09-12 08:45:08 -05:00
Robo
f76a8c7b24 build: [m67] enable widevine support (#14519)
* build: [m67] enable widevine support

* fix: remove plugin cache reset hack

It was added in (#8907) to make widevine cdm shows up in
navigator.plugins, since widevine support is no longer
enabled by a plugin it can be removed safely.
2018-09-11 20:24:04 +02:00
deepak1556
ba0a1cc5e9 build: guard widevine related code behind flag 2018-09-11 20:24:04 +02:00
Jeremy Apthorp
829b230b85 fix: initialize tracing controller before starting platform (#14499) 2018-09-11 20:24:03 +02:00
Aleksei Kuzmin
7589555cec inspector: stop dragging platform pointer
https://github.com/nodejs/node/commit/296fd57324
2018-09-11 20:24:03 +02:00
Aleksei Kuzmin
9f6cf9623c chore: fix a chromium-style error
osr_render_widget_host_view.cc:1150:12:
error: [chromium-style] auto variable type must not deduce to a raw pointer type.

(cherry picked from commit cc8e4ef68376627d20377ae3491df8e4f8dee08e)
2018-09-11 20:24:03 +02:00
Heilig Benedek
1a9e253259 fix: fix osr compilation on Windows 2018-09-11 20:24:03 +02:00
Jeremy Apthorp
9a296fc63e Fix code triggering new -Wmicrosoft-cast warning in M67 2018-09-11 20:24:03 +02:00
Jeremy Apthorp
5b25c2db5d Need new #include for base::UTF8ToUTF16 2018-09-11 20:24:03 +02:00
deepak1556
63006aebe8 REVIEW: Delete WidgetDelegate before widget is destroyed.
Ideally widget delegates must outlive their widget, but since
we manage the lifetime of native widget, allow the delegate to
be destroyed when widget is destroyed.
https://chromium-review.googlesource.com/c/chromium/src/+/977244
2018-09-11 20:24:03 +02:00
deepak1556
9264a00dfd Simplify EnsureProcessTerminated() implementations.
https://chromium-review.googlesource.com/c/chromium/src/+/920799
2018-09-11 20:24:03 +02:00
deepak1556
8da2bd43b8 Include the node header at the end to avoid collisions 2018-09-11 20:24:03 +02:00
Samuel Attard
0b2b44becf Handle unknown symbols for media:: method
small implementation so instead of exposing with patch, copy impl

This will be fixed once we remove chromium_src as a thing from e/e
2018-09-11 20:24:03 +02:00
Samuel Attard
dc5c49ea7f SetUserAgentOverride now takes a 2nd override_for_new_tabs argument
refs: https://chromium-review.googlesource.com/c/chromium/src/+/846713
2018-09-11 20:24:03 +02:00
Samuel Attard
6e2bb728b9 Replace ProxyConfigSource with ProxyConfigWithAnnotation.
https://chromium-review.googlesource.com/c/chromium/src/+/934126
2018-09-11 20:24:03 +02:00
Samuel Attard
a0a4c7b82c Implement GetPermissionStatusForFrame in AtomPermissionManager
Implenation and requirement comes from CR: https://chromium-review.googlesource.com/c/chromium/src/+/940744
2018-09-11 20:24:03 +02:00
Samuel Attard
8a6fccf3d1 [GURL] (1 of 2) Prep for stripping "username:password" from internal schemes
https://chromium-review.googlesource.com/c/chromium/src/+/978450
2018-09-11 20:24:03 +02:00
Samuel Attard
aa6d769229 Handle external protocols with the network service.
https://chromium-review.googlesource.com/c/chromium/src/+/956091
2018-09-11 20:24:03 +02:00
Samuel Attard
dde194d853 Remove the memory property from getAppMetrics
See 03d0bfd593 for more information
2018-09-11 20:24:03 +02:00
Samuel Attard
14df89f214 Remove the 'getProcessMemoryInfo' API
* Underlying APIs have been removed in Chromium
  * https://chromium-review.googlesource.com/c/chromium/src/+/969089
  * https://chromium-review.googlesource.com/c/chromium/src/+/953723
  * https://bugs.chromium.org/p/chromium/issues/detail?id=819289
* https://github.com/electron/electron/projects/11#card-11509601
2018-09-11 20:21:32 +02:00
Aleksei Kuzmin
833b55107d Plumb the RenderFrameHost through for CheckMediaAccessPermission
https://chromium-review.googlesource.com/938862
2018-09-11 20:21:32 +02:00
Aleksei Kuzmin
ca28b39d9c Rename buildflag_headers for consistency
https://chromium-review.googlesource.com/975990

https://chromium-review.googlesource.com/c/chromium/src/+/988132
2018-09-11 20:21:32 +02:00
deepak1556
d15d08bad6 Improve ClearOnExit behavior of cookies using domain matching
https://chromium-review.googlesource.com/c/chromium/src/+/975861
2018-09-11 20:21:32 +02:00
Aleksei Kuzmin
0afebdc531 The Great Blink mv for source files, part 2.
https://chromium-review.googlesource.com/1001153
2018-09-11 20:21:32 +02:00
Aleksei Kuzmin
7bd1b85d4e Rename net/proxy_resolution/proxy_service* files
https://chromium-review.googlesource.com/941901
2018-09-11 20:21:31 +02:00
Aleksei Kuzmin
7c32524515 Use libcc based on Chromium 67.0.3396.99 and Node 10.6.0 2018-09-11 20:21:31 +02:00
Robo
14ed71fa1b fix: use render client id to track deleted render process hosts (#14520)
* fix: use render client id to track deleted render process hosts

Instead of relying on OS process id, which may not be unique
when a process is reused, we rely on the renderer client id
passed by the content layer when starting the renderer process
which is guaranteed to be unique for the lifetime of the app.

* fix: store context id as int64_t

Ensuring that it doesn't wrap easily with a large number
of context creation on some malformed web pages.
2018-09-11 11:18:10 -07:00
Cheng Zhao
13334d023d fix: read ignoreMenuShortcuts per WebContents 2018-09-10 19:06:16 +09:00
Nitish Sakhawalkar
a2ab0d8ebe fix: notify focus change right away rather not on next tick (#14453)
* fix: Notify focus change right away, not on next tick

* fix: emit the JS blur/focus events on next tick to avoid race condition

* address feedback from review

* fix: bind deferred Emit() calls to a WeakPtr

This is so that the deferred Emit() calls will be canceled
if the TopLevelWindow is destroyed.

* chore: remove wip/test code cruft

* fix: make linter happy

* Enable disabled tests

* refactor: cleaner impl of EmitEventSoon()

* Revert "Merge branch 'fix-win-focus' of github.com:electron/electron into fix-win-focus"

This reverts commit 90576806eb271d059f0a215c67e9b4b04f7396a4, reversing
changes made to 9c13e47779a3af78fe0970c1f3d6cd040a5354e6.

* Restore 704722c1, which was removed in error.

We apologise again for the fault in the subtitles. Those responsible for sacking the people who have just been sacked have been sacked.
2018-09-07 13:21:58 -05:00
Cheng Zhao
92e094c5f6 fix: manually manage WebContents of webview when it is detached 2018-09-07 15:47:58 +09:00
Nitish Sakhawalkar
826af1d676 fix: macOS Window Title And Accessibility Focus (#14472)
- Override accessibility method in atom_ns_window
- Add title attribute in accessibilityAttributeValue
2018-09-07 09:47:31 +10:00
Robo
35a1849e31 chore: enable debugger api specs (#14475) 2018-09-07 00:44:22 +10:00
Robo
c7c95fab2f build: [gn] widevine cdm support behind flag (#14423)
* build: [gn] widevine cdm support behind flag

* build: [gyp] link cdm_support in the component build
2018-09-05 16:00:37 -05:00
Robo
8441d09a18 chore: refactor webContents module isCurrentlyAudible api spec (#14410) 2018-09-05 16:00:05 -05:00
Electron Bot
4d23e200f0 Bump v4.0.0-nightly.20180905 2018-09-05 10:06:13 -07:00
Milan Burda
aa01a7337c refactor: replace base::Value::DeepCopy and CreateDeepCopy with Clone (#14420) 2018-09-02 17:38:35 -05:00
Milan Burda
c17a1b37ea feat: add event.senderId property to IPCs sent via ipcRenderer.sendTo (#14395) 2018-08-31 20:13:51 -05:00
Paulius
b89848d683 feat: allow window above full screen windows on mac (#14122)
* allow window above full screen windows on mac

* add visibility change params to higher level files

* adress feedback, fix bool issue, remove compilation hooks

* adjust readme

* switch to options object

* single argument for native window views
2018-08-31 15:06:02 -07:00
Shelley Vohr
cbb460d476
Revert "Bump v4.0.0-nightly.20180830"
This reverts commit 5f00e58029.
2018-08-30 23:12:00 -07:00
Electron Bot
5f00e58029 Bump v4.0.0-nightly.20180830 2018-08-30 22:10:45 -07:00
Milan Burda
5a0770f1d3 fix: allow Tray with title only (without icon) on Mac (#13851) 2018-08-30 21:16:56 +12:00
Samuel Attard
1b7418fb7b
Revert "sec: deprecate some webPreference defaults to be secure-by-default (#14284)" (#14380)
This reverts commit 66d6ba8689.
2018-08-30 09:57:49 +12:00
Samuel Attard
66d6ba8689 sec: deprecate some webPreference defaults to be secure-by-default (#14284)
* feat: deprecate default value of nodeIntegration

* Use DeprecationStatus::Stable as the default instead of shadowing

* change wording of deprecations

* chore: also deprecate kWebviewTag and kContextIsolation

* chore: do as we preach, lets be secure-by-default in the default app
2018-08-29 13:14:04 -05:00
Jacob Groundwater
d9a7fee79a feat: Add electron version to framework (#14296)
* Add electron version to framework

* Update Info.plist
2018-08-29 10:31:45 -07:00
Robo
edd5c4b9bb fix: use OS process handle to clear object registry (#14324)
RenderProcessHost switch can happen between ipc calls when
speculative process are invvolved, which will lead to deletion
of entries on current context. Use OS process handles to
uniquely associate a destruction handler for a render process.
2018-08-28 13:32:46 -05:00
Alexey Kuzmin
7edd37bca1 build: add missing enable_view_api flag (#14351)
* build: add missing enable_view_api flag

Fixes #14340.

* fix: properly pass a pointer to a SetLayoutManager() call
2018-08-28 10:55:31 -07:00
Robo
07d017dc01 fix: crash when tray is destroyed (#14347)
Release the view of status item before destroying it,
gives chance to perform cleanup on the view.
2018-08-28 10:45:24 -07:00
Samuel Attard
68da311ed1 feat: add session.setPermissionCheckHandler (#13925)
* feat: add session.setPermissionCheckHandler to handle syncornous permission checks vs requests

* spec: add tests for session.setPermissionCheckHandler

* docs: add docs for session.setPermissionCheckHandler

* feat: add mediaType to media permission checks

* chore: cleanup check impl
2018-08-28 09:05:08 -05:00
Siddharth Dalal
afdb6c5f90 feat: 'will-move' event for windows. (#14283)
* feat: 'will-resize' window event (Windows only)

* documentation for 'will-move' event

* comment and line break fix in docs
2018-08-28 08:44:10 -05:00
Samuel Attard
a43a292d18 fix: dont parse arguments after a -- in the inspector (#14297) 2018-08-27 10:50:23 -07:00
Milan Burda
a08ca9defb fix: don't crash on tray.setContextMenu(null) (#14322) 2018-08-27 11:58:47 -05:00
Milan Burda
edd1eaee5c fix: don't expose view APIs when not enabled (#14312) 2018-08-27 08:03:46 +09:00
Milan Burda
2a253c73db refactor: use std::string instead of base::string16 for IPC channel names (ipcRenderer.sendTo) (#14302) 2018-08-24 15:30:10 -07:00
Emmanuel Kimmerlin
5f6706ac33 feat: BrowserWindow.getNormalBounds() (#13290)
* First commit

* Add Mac support (1st attempt)

* Add Mac support (2nd attempt)

* Simplify tests

* Restore window state !

* Looking at other tests, seems minimize, maximize, fullscreen are skipped when in CI

* Fix Mac tests

* Restore tests in CI

* Fix typo

* widget getRestoredBounds not working on Mac !!

* widget getRestoredBounds not working on Mac !!

* Add IsNormal function

* Add IsNormal

* IsNormal => isNormal

* Deactivate fullscreen on Mac. Do not receive leave-fullscreen event

* Set default original_frame_

* Set default original_frame_

* Fix Mac
2018-08-24 14:33:27 -07:00
Milan Burda
c23e7fa101 refactor: implement ipcRenderer.sendTo in native code for better performance (#14285) 2018-08-24 14:14:39 -07:00
Milan Burda
e6e3ccfc50 refactor: use std::string instead of base::string16 for IPC channel names (#14286) 2018-08-24 10:30:37 -05:00
Electron Bot
ef4ae27b52 Bump v4.0.0-nightly.20180823 2018-08-23 21:23:50 -07:00
Robo
bce5bd87a8 fix: opt into location services once device service has been started (#14253)
* fix: opt into location services once device service has been started

* refactor: provide fake location provider to mock geolocation reponses

* chore: add spec for navigator.geolocation api using fake location provider
2018-08-23 08:51:46 -07:00
Robo
c8f506a8aa fix: add method and referrer properties to app login event (#14231)
* refactor: remove brightray/network_delegate.{cc|h}

* refactor: respond to http requests through network delegate
2018-08-23 18:55:13 +09:00
Cheng Zhao
cd8bb1d3b4
chore: print error when removed webview attribute is used (#14230)
* chore: print error when removed webview attribute is used

* docs: document removed webview features
2018-08-23 10:45:43 +09:00
Electron Bot
79eac1fdcb Bump v4.0.0-nightly.20180821 2018-08-21 13:34:20 -07:00
Samuel Attard
20423df112 Revert "Bump v4.0.0-nightly.20180821"
This reverts commit 73c43eaea7.
2018-08-21 13:14:37 -07:00
Electron Bot
73c43eaea7 Bump v4.0.0-nightly.20180821 2018-08-21 11:55:32 -07:00
Samuel Attard
5d06c77bf1 Revert "Bump v4.0.0-nightly.20180821"
This reverts commit d2cd641381.
2018-08-21 11:44:51 -07:00
Electron Bot
d2cd641381 Bump v4.0.0-nightly.20180821 2018-08-21 11:15:56 -07:00
Milan Burda
fc85d02786 feat: expose missing process APIs in sandboxed renderers (#13505) 2018-08-21 11:05:45 -07:00
Milan Burda
7253c7f843 refactor: move SpecialStoragePolicy from brightray to atom (#13944) 2018-08-21 08:51:04 -07:00
Heilig Benedek
14ee5b3d3a fix: enable osr (#14074)
* fix: re-enable osr

* fix: add changes from CEF to add MouseWheelPhaseHandler

* fix: re-enable surface synchronization by applying fix from cef

* update method call and enable AsyncWheelEvents var

* fix: make BrowserCompositorMacGetGutterColor behave like chromium

* fix: HANDLE only exists on windows

* fix: pass correct params to mouse_wheel_phase_handler_

* fix variable accessing

* revert: revert the workaround for disableHardwareAcceleration crash

* fix: remove GuestViewCrossProcessFrames from the disabled features list

* revert: remove check from BrowserChildProcessLaunchedAndConnected
2018-08-20 09:54:31 -07:00
Keerthi Niranjan
5b48e03c7c fix: Dialog does not close on ESCAPE if defaultId is set (#14196)
If defaultId is set, it was removing the key reference for the button at 0 which was previously set for the cancel_id
2018-08-19 13:41:03 -07:00
Electron Bot
dbee03d381 Bump v4.0.0-nightly.20180819 2018-08-19 01:09:28 +00:00
Electron Bot
3ba9a9b7bb Bump v4.0.0-nightly.20180817 2018-08-17 23:55:31 +00:00
Samuel Attard
f7dc01b2c5 Revert "Bump v4.0.0-nightly.20180817"
This reverts commit 26248323b4.
2018-08-17 16:52:48 -07:00
Electron Bot
26248323b4 Bump v4.0.0-nightly.20180817 2018-08-17 22:58:18 +00:00
Samuel Attard
1f23c5edc6 Revert "Bump v4.0.0-nightly.20180817"
This reverts commit b900ea44bf.
2018-08-17 15:53:15 -07:00
Electron Bot
b900ea44bf Bump v4.0.0-nightly.20180817 2018-08-17 21:40:50 +00:00
Samuel Attard
73f2a7dda9 Revert "Bump v4.0.0-nightly.20180817"
This reverts commit 76a592a419.
2018-08-17 14:34:31 -07:00
Electron Bot
76a592a419 Bump v4.0.0-nightly.20180817 2018-08-17 20:06:28 +00:00
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
Samuel Attard
4cf2cde7fb Bump v4.0.0-nightly.20180816 2018-08-16 08:58:46 -07:00
Robo
9989195f19 fix: notify request context shutdown on IO before cleanup (#14058) 2018-08-14 14:07:53 -07:00
Charles Kerr
b9490177da Revert "[WIP] refactor: (Part I) make the ownership of URLRequestContextGetter more clear (#13956)"
This reverts commit 1c0bb06d4a.
2018-08-13 16:16:04 -07:00
Robo
1c0bb06d4a [WIP] refactor: (Part I) make the ownership of URLRequestContextGetter more clear (#13956)
* refactor: desttroy URLRequestContextGetter on IO thread

* Accepts a factory class that can customize the creation of URLRequestContext
* Use a separate request context for media which is derived from the default
* Notify URLRequestContextGetter observers and cleanup on IO thread
* Move most of brightray net/ classes into atom net/

* refactor: remove refs to URLRequestContextGetter on shutdown

* refactor: remove brigtray switches.{cc|h}

* refactor: remove brightray network_delegate.{cc|h}

* refactor: make AtomURLRequestJobFactory the top level factory.

* Allows to use the default handler from content/ for http{s}, ws{s} schemes.
* Removes the storage of job factory in URLRequestContextGetter.
2018-08-13 15:22:45 -07:00
Milan Burda
702cc84bd3 Don't pass preloadPath via ELECTRON_BROWSER_SANDBOX_LOAD for security reasons (#13031) 2018-08-10 17:19:49 -05:00
Husayn
19cb5bad94 feat: Add creationTime function to process (#13542)
* Add process creation time

* Making docs clear for process creation time

* Address comments for process creation time

* Add process info cc file

* fixing comments around documentation

* Update doc for return val

* Capitalize number in docs

* chore: bump electron-typescript-definitions
2018-08-10 09:03:30 -05:00
Milan Burda
271d582aac refactor: make methods const, cleanup (#13937) 2018-08-09 10:15:23 -07:00
Shelley Vohr
9f328abe19 refactor: remove instances of createDeepCopy (#13703)
* add new native_mate converters for base::Value

* fix converter swapping

* remove createDeepCopy from browser/api

* replace missing ListValue converter

* convert bulk of remaining createDeepCopy instances

* convert last remaining instances of createDeepCopy

* incremental progress and helper methods for value conversion

* convert Get and add template function for GetString

* final DictionaryValue method conversions

* remove usage of base::DictionaryValue in web_contents_preferences

* use IsEnabled helper where possible

* Update atom_api_web_view_manager.cc
2018-08-04 07:23:07 +10:00
Milan Burda
f904057104 fix: add missing "simple" property in several APIs to prevent proxying of return values (#13905)
* fix: add missing "simple" property in several APIs to prevent proxying of return values

* add tests
2018-08-03 12:07:27 -07:00
Birunthan Mohanathas
23440a5ec3 fix: Improve --enable-features/--disable-features handling (#13920)
As it turns out, we can reinitialize the feature list directly after the
user JS script has been executed instead of much later. This allows
modifications to `--enable-features`/`--disable-features` to work with a
greater set of features.
2018-08-03 10:53:54 +10:00
Jeremy Apthorp
3bdff2d238
feat: allow setting window shape (#13789)
This binds Widget::SetShape, an API that already exists in Chromium (for
Windows and Linux). It's a more reliable method of having some parts of
your window be "click-through" than the current `setIgnoreMouseEvents`
API, which messes around with the `WS_EX_LAYERED` window style on
Windows, causing strange bugs and incompatibility with hardware
acceleration.
2018-07-30 13:37:40 -07:00
Gellert Hegyi
4bcf0e34c5 fix: window.setVibrancy parameter passing (#13627)
* fix: setVibrancy parameter passing

* fix: uses correct parameter types for setVibrancy
2018-07-30 11:29:18 +10:00
Milan Burda
db38c8b620 Fix process.execPath returning parent process path instead of the helper in sandboxed renderer (#13839) 2018-07-30 11:13:42 +10:00
Samuel Attard
4b3011f3e8 feat: add getUploadProgress API to the net API (#13783) 2018-07-27 07:15:48 -07:00
Birunthan Mohanathas
c8dc2d3730 feat: Add will-resize event to TopLevelWindow (#13649)
The new `will-resize` event can be used to prevent the resize from
happening before the native window is actually resized. This is in
contrast to the existing the `resize` event, which is sent *after* the
native window has already been resized. For apps with e.g. custom window
snapping logic, the `resize` event is not sufficient because it will
result in flickering between the dragged size and the snapped size.

`will-resize` is only emitted on macOS and Windows.
2018-07-27 18:53:01 +09:00
Jeremy Apthorp
9af9634f7d chore: remove unused process_type variable (#13823) 2018-07-26 23:25:54 -07:00
Cheng Zhao
ce4e05b85a
fix: pass scrollBounce by command line flag (#13812)
Implement the scrollBounce option by reading the command line flag in
`RenderThreadImpl::IsElasticOverscrollEnabled`, there is no more need
to set NSScrollViewRubberbanding.
2018-07-26 18:38:37 +09:00
Birunthan Mohanathas
a42ca9eecc feat: Add BrowserWindow.setWindowButtonVisibility()
Fixes #12701 and supersedes #13131.

Ideally we would have added `setTitleBarStyle()`, but that is a
significantly more involved change. For example, consider the case where
we switch from `hidden` to `normal`. We would not only have to show the
traffic light buttons, we would also have to switch the window from a
frameless to a framed window and deal with various other window state.
Lets instead implement a simple solution for #12701.
2018-07-25 10:12:27 -07:00
Cheng Zhao
3094f62f0b
fix: use webContentsId with contextId together (#13749)
After after using `processId-contextCounter` as contextId, it may happen
that contexts in different WebContents sharing the same renderer process
get the same contextId. Using webContentsId as part of key in
ObjectsRegistry can fix this.
2018-07-24 16:21:38 +09:00
Cheng Zhao
305e3aad40
refactor: remove private webContents.getId() API (#13674) 2018-07-23 18:08:36 +09:00
Jeremy Apthorp
16b66db9c7 build: [gn] working on 32bit windows 2018-07-19 17:04:44 -07:00
John Kleinschmidt
f8b646c90a
Merge pull request #13543 from electron/ajm-win7-crash
Ensure DirectX capturer is supported.
2018-07-19 15:11:42 -04:00
Cheng Zhao
e2029435c4 fix: use context counter as contextId
For sandboxed renderer it may not have a node::Environment in the context,
using a increasing counter as contextId works for all cases.
2018-07-19 11:00:10 -07:00
Samuel Attard
777d0113d5
fix: create a window capturer correctly (#13689)
* fix: create a window capturer correctly

We were incorrectly creating two screen capturers instead of a window
capturer

* spec: ensure dc tests pass

* spec: enable all tests after verifying dc tests work
2018-07-17 14:20:50 +10:00
Shelley Vohr
6045d1218a
refactor: remove experimentalCanvasFeatures property (#13684) 2018-07-16 13:32:42 -07:00
Cheng Zhao
4a7c85f43e fix: use InspectableWebContentsView as content view 2018-07-16 10:20:35 +09:00
John Kleinschmidt
539b554ecc
Merge pull request #13578 from electron/miniak/refactoring
refactor: statically link functions available on Windows 7+
2018-07-13 10:52:37 -04:00
Cheng Zhao
77ca5b7d64 fix: don't invoke callback after FrameSubscriber is destroyed (#13657) 2018-07-13 19:54:49 +10: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
Milan Burda
5b0a898dd2 refactor: SHOpenFolderAndSelectItems does not have to be dynamically resolved 2018-07-12 22:28:44 +02:00
Milan Burda
adaa32003d refactor: DwmGetColorizationColor does not have to be dynamically resolved 2018-07-12 22:28:44 +02:00
John Kleinschmidt
e922b1733b
Merge pull request #13636 from nornagon/gn-release
build: [gn] release build
2018-07-12 10:45:21 -04:00
Felix Rieseberg
deedf6c3f4 feat: Add isCurrentlyAudible() to WebContents (#13614)
* 🔧 Add isCurrentlyAudible() to WebContents

* ❤️ Implement feedback, use await to wait for event

* 👷 Add missing imports
2018-07-12 21:35:11 +10:00
Cheng Zhao
4cdb1b8fc3 fix double-freeing remote references
After the page does navigations, garbage collection can still happen in
the old context. This commit changes to store references to remote objects
by _pages_, instead of by _WebContents_.
2018-07-12 10:44:26 +09:00
Cheng Zhao
9cbbb2a6c4 add API to return an unique ID for page 2018-07-12 10:44:26 +09:00
Jeremy Apthorp
03131c5e77 build: [gn] node as a static lib 2018-07-11 10:43:52 -07:00
Jeremy Apthorp
bdceea6aca fix: enable spell checking, which broke in upgrade to ch66
Chromium commit [03563dd163][1] changed the way that the
spellcheck-enabled status was checked, defaulting to false.

Added the first (!) test for spellchecking, too.

Fixes #13608.

[1]: 03563dd163
2018-07-11 10:27:56 -07:00
John Kleinschmidt
bc2ea0e705
Merge pull request #13540 from electron/breakpad-compat
chore: breakpad #include compatibility between GN and GYP
2018-07-10 08:30:56 -04:00
Cheng Zhao
0ec4ad288d fix: fallback to FullSizeContentView for frameless window on mac (#13599)
fix: draggable regions not working on macOS
2018-07-10 11:43:42 +10:00
Jeremy Apthorp
810909425e chore: breakpad #include compatibility between GN and GYP 2018-07-09 16:53:06 -07:00
Andrew MacDonald
7639e4a32a Actually try building on Windows. 2018-07-03 01:03:05 -07:00
Andrew MacDonald
68541f2ae8 Ensure DirectX capturer is supported. 2018-07-02 21:37:10 -07:00
Hari Juturu
eb223f8bc3 Enable webview in sandbox renderer (#13435)
* Enable webview in sandbox renderer
Security: Inherit embedder prefs onto webview

* cache lastwebprefs
2018-07-03 02:06:26 +10:00
Maxine Whitely
6cf68f8247 fix: tray setContextMenu crash (#13513)
Co-authored-by: Zhuo Lu <sethlu@mintkit.net>
Co-authored-by: Kristine Zhang <kzhang@slack-corp.com>
2018-06-29 14:48:26 -07:00
Jeremy Apthorp
3d4487ccfd
Merge pull request #13463 from electron/remove_wtl
refactor: Using win32 file open api instead of WTL
2018-06-29 10:00:50 -07:00
Jeremy Apthorp
733e495e91
chore: use full path for ui_unscaled_resources.h (#13492)
This is the path that resolves in Chromium, it also works fine in the gyp build.
2018-06-28 14:41:37 -07:00
Jeremy Apthorp
d6af3bfcd2
chore: fix more chromium-style errors in windows code (#13487)
Finding more chromium-style linting errors as I build more of the windows code :)
2018-06-28 14:20:11 -07:00
Shelley Vohr
003a92e099
refactor: remove deprecated GetAs methods (#13425)
* refactor: remove deprecated GetAs methods

* restructure URLRequestAsyncAsarJob on win

* fix: add string conversion header
2018-06-27 14:52:48 -07:00
Samuel Attard
92588be2bd refactor: add promise helper and change whenReady to be native impl (#13115)
* Add promise helper and change whenReady to be native impl

* remove commented code

* add GetInner helper to dedupe promise code

* add Promise.reject helper to be consistent with JS

* fix linting

* update promise impl per feedback

* remove param name from unused isolate

* Use non-depreceated resolvers for promises

* Add thread dchecks for promise helper, intiialize promise pointer to nullptr
2018-06-27 16:06:08 -05:00
Shelley Vohr
e9971173d4
fix: inline vector allocation (#13449)
* fix: inline vector allocation

* remove size_t static cast
2018-06-27 12:57:10 -07:00
zacwalk
9db76394f7 Link gdi from gyp 2018-06-27 20:58:37 +02:00
Zac Walker
8151c90c6b Fix warnings as error fixes. 2018-06-27 16:28:12 +02:00
Zac Walker
f122c44b07 Using win32 file open dialogs instead of WTL 2018-06-27 13:09:18 +02:00
Shelley Vohr
1dde9492c9
refactor: remove deprecated CreateWithCopiedBuffer (#13436)
* refactor: remove deprecated CreateWithCopiedBuffer

* fix: add missing vector includes

* fix std::vector<char> allocation
2018-06-26 15:08:27 -07:00
Jeremy Apthorp
4b60efcaf8
chore: [gn] fix WTL include paths and namespace include (#13433)
As of libchromiumcontent#576, the WTL namespace isn't included by
default in the GN build.
2018-06-26 22:57:40 +02:00
Jeremy Apthorp
4255384abc chore: [gn] remove vendor/ from windows include paths (#13432) 2018-06-26 15:03:56 +10:00
Jeremy Apthorp
78bc1081fd
chore: fix some more warnings in windows build (#13431)
Remove an unused function and fix an int type comparison warning. Only showed up when building with GN.
2018-06-26 02:00:20 +02:00
Jeremy Apthorp
6f91af9343
chore: fix various chromium-style errors in windows (#13394)
These errors weren't previously picked up because the GN build wasn't running on Windows.
2018-06-25 22:30:00 +02:00
deepak1556
5e2406081e build: move pepper flash behind feature flag 2018-06-21 17:02:12 +05:30
Jeremy Apthorp
8ccb5cc6eb chore: Annotate fallthrough switch paths with FALLTHROUGH
The compiler was throwing errors about unannotated fallthroughs when
building with GN.
2018-06-20 14:38:18 -07:00
Jeremy Apthorp
3f40e93ba7 chore: fix chromium-style errors in frame_subscriber
The chromium-style linter we run in the GN build was throwing errors
about these issues.
2018-06-20 14:14:11 -07:00
Milan Burda
122d00f415 Revert "Drop support of Mac OS 10.9" (#13348)
This reverts commit efa0ec0263481ae188f206625bec6f4a4e5d3ecf.
2018-06-20 13:40:18 -07:00
Samuel Attard
79fbd6bab1 Revert "fix: Drop support for OS X Mavericks (version 10.9)" (#13333) 2018-06-20 07:27:55 -05:00
Husayn
1a8c986fb1 set mac protocol to none (#13302) 2018-06-20 13:16:37 +10:00
Shelley Vohr
c20e0c30a2 src: base::Value::HasKey(key) => base::Value::FindKey(key) (#13312) 2018-06-20 13:07:10 +10:00
John Kleinschmidt
04a7a34c42
Merge pull request #13301 from electron/revert-frame-sub-deprecation
fix: revert frame subscriber deprecation and re-enable tests
2018-06-19 14:26:14 -04:00