Samuel Attard
3b74837020
refactor: Split 'Event' docs/types into more specific Event types ( #17038 )
...
* Event = Base event type (with preventDefault)
* IpcMainEvent = Event that ipcMain emits (with sender, reply, etc.)
* IpcRendererEvent = Event that ipcRenderer emits (with sender,
senderId, etc.)
* KeyboardEvent = Event that we emit with keyboard flags (ctrlKey,
altKey, etc.)
This will dramatically improve peoples TS experience with IPC events
2019-02-19 09:24:19 +00:00
Milan Burda
975a035d34
chore: re-enable devtools renderer sandbox ( #16864 )
...
* chore: re-enable devtools renderer sandbox
* chore: enable sandbox for chrome extension background script host renderers
2019-02-15 15:10:32 +05:30
Samuel Attard
5790869a3f
chore: refactor browser IPC into TS and app API into TS ( #16921 )
...
* chore: refactor browser IPC into typescript
* chore: refactor app.ts into Typescript
* Refactors app.dock into cpp
* Removes app.launcher which has not existed for 3 years
* Removes 2 deprecated APIs (that have been deprecated for more than one
major)
* Refactors deprecate.ts as well
2019-02-14 14:29:20 -08:00
deepak1556
005b7d8099
Print Preview: Add validity check for kSettingPagesPerSheet.
...
https://chromium-review.googlesource.com/c/chromium/src/+/1381133
2019-02-14 23:59:25 +05:30
deepak1556
547add94d0
Make //ui/base/idle API synchronous
...
https://chromium-review.googlesource.com/c/chromium/src/+/1379183
2019-02-14 23:59:23 +05:30
Shelley Vohr
de27911661
feat: promisify webContents.savePage() ( #16742 )
...
* feat: promisify webContents.savePage()
* no need to make compatible w callbacks, we're breaking it
* fix promise resolve type
* address feedback from review
* fix promise return text
* update smoke test
2019-02-14 09:03:28 -08:00
Stewart Lord
84ef9cae6c
fix: send chrome.runtime/tabs.sendMessage
result to correct sender ( #16945 )
...
Additionally, use `.once` instead of `.on` for result specific listeners.
2019-02-14 06:07:55 -10:00
Milan Burda
2492f0bcac
refactor: promisify prototype methods ( #16935 )
2019-02-14 03:40:24 -10:00
Shelley Vohr
fed5b99a9f
feat: promisify contentTracing.getTraceBufferUsage() ( #16600 )
...
* feat: promsify contentTracing.getTraceBufferUsage()
* deprecate getTraceBufferUsage
* address feedback from review
* properly deprecate
2019-02-13 13:24:57 -08:00
Milan Burda
1f458eb177
feat: promisify debugger.sendCommand() ( #16861 )
...
* remove duplicate entry for desktopCapturer.getSources
* feat: promisify debugger.sendCommand
2019-02-13 07:23:53 -10:00
Samuel Maddock
8f6a543398
feat: add chrome.runtime.getManifest ( #16891 )
...
* feat: add chrome.runtime.getManifest
* Add test for chrome.runtime.getManifest
* Use IPC utils for getManifest internals
2019-02-13 07:16:12 -10:00
Samuel Attard
01c442de64
refactor: convert more files to typescript ( #16820 )
2019-02-12 04:22:33 -10:00
Milan Burda
d8ba1278d1
chore: disable the remote module in devtools / chrome extension background scripts ( #16866 )
...
* cache isRemoteModuleEnabled
* chore: disable the remote module in devtools / chrome extension background scripts
2019-02-11 10:42:37 -10:00
Milan Burda
36ce3e9546
feat: promisify webContents.printToPDF() ( #16795 )
2019-02-11 09:20:04 -10:00
Milan Burda
7a3d220347
refactor: implement Chrome Extension APIs without the remote module ( #16686 )
...
* refactor: implement Chrome Extension APIs without the remote module
* remove unused potentiallyRemoteRequire
2019-02-10 10:38:14 -08:00
Milan Burda
3f52e18a38
chore: add menu-will-close comment explaining setTimeout ( #16794 )
2019-02-08 13:38:03 -08:00
Milan Burda
1632c4b837
refactor: implement chrome.i18n.getMessage() without the remote module ( #16739 )
...
* refactor: implement chrome.i18n.getMessage() without the remote module
* replace navigator.language with app.getLocale()
2019-02-08 12:07:09 -08:00
Samuel Attard
db11b9b13b
fix: restore accidentally removed chrome-extension require ( #16819 )
2019-02-07 12:38:57 -08:00
Samuel Attard
4f8ebafa97
chore: dont log 100000000 chars of URL ( #16800 )
2019-02-07 08:50:47 -08:00
Samuel Attard
26df9992cf
build: use typescript for internal Electron JS code ( #16441 )
2019-02-06 10:27:20 -08:00
Shelley Vohr
858781ba83
feat: allow Menu.buildFromTemplate() to accept MenuItems ( #16697 )
...
* feat: allow Menu.buildFromTemplate to accept MenuItems
* add another spec
* fix linter error
* add submenu spec
2019-02-06 10:04:40 -08:00
Milan Burda
4211a9c69f
refactor: use ipcRendererUtils.invokeSync / ipcMainUtils.handleSync ( #16759 )
2019-02-06 09:53:28 -08:00
Milan Burda
6d674eebb1
refactor: crashReporterInit ( #16729 )
2019-02-05 12:56:44 -08:00
Shelley Vohr
f303caa87c
refactor: remove ServiceWorker APIs from WebContents ( #16717 )
2019-02-04 22:22:46 -08:00
Samuel Attard
af64140100
refactor: enforce naming of ipcMainInternal ( #16689 )
2019-02-04 14:49:53 -08:00
Milan Burda
7dc565fc2e
refactor: implement inspector APIs without the remote module ( #16607 )
2019-02-01 19:56:46 +01:00
michtsu
392458b252
Add devtools API to inspect shared worker. ( #16615 )
2019-02-01 10:44:24 -08:00
Charles Kerr
76dcbcd6ea
chore: fix 'browserView' typo ( #16621 )
2019-01-30 21:07:08 -08:00
Shelley Vohr
ba57e1d991
feat: promisify contentTracing recording APIs ( #16584 )
...
* feat: promisify contentTracing.startRecording()
* feat: promisify contentTracing.stopRecording()
* test: convert specs for new promisified apis
* chore: deprecate and ensure legacy tests work
2019-01-30 18:53:55 -08:00
Shelley Vohr
641b47f384
feat: promisify contentTracing.getCategories() ( #16583 )
...
* feat: promisify contentTracing.getCategories()
* deprecate contentTracing/getCategories
2019-01-30 12:39:55 -08:00
Milan Burda
dfcee48f81
fix: don't forward IPC filtering events to app for dev-tools and extensions ( #16565 )
2019-01-30 08:20:03 -08:00
Milan Burda
fa5442f211
fix: execute session preload scripts in sandboxed renderers ( #16538 )
2019-01-29 10:16:46 +09:00
Shelley Vohr
d105dcc0d3
feat: promisify webContents.hasServiceWorker() ( #16535 )
...
* feat: promisify contents.hasServiceWorker()
* spec: add initial test for hasServiceWorker()
2019-01-26 10:23:16 -08:00
Shelley Vohr
5a35c3a279
chore: fix promisify helper ( #16544 )
...
* chore: fix promise deprecation helper
* fix deprecations
* update deprecation tests
2019-01-25 14:23:24 -08:00
Charles Kerr
8396a2d504
feat: promisify cookies api ( #16464 )
...
* feat: promisify the Cookie API
* chore: update specs to test promisified cookies
* chore: add deprecate wrapper for cookie callback API
* docs: update docs to cookie promise changes
* chore: remove redundant namespace use
* docs: improve cookie example
* docs: restore docs for cookie callback API
* chore: restore cookie callback tests
* fix: syntax of cookie promise return types
2019-01-25 12:11:35 -06:00
Milan Burda
cc90919384
refactor: pass internal flag via IPC message struct for consistency ( #16490 )
2019-01-23 08:24:57 -08:00
Samuel Attard
f3e30c7ae3
Merge remote-tracking branch 'origin/chromium-upgrade/72'
2019-01-22 12:01:18 -08:00
Samuel Attard
0b85fb7ea2
Revert "feat: upgrade to Chromium 72.0.3626.52 ( #16334 )"
...
This reverts commit 1918e76913
.
2019-01-22 12:01:04 -08:00
Samuel Attard
58a6fe13d6
feat: preloads and nodeIntegration in iframes ( #16425 )
...
* feat: add support for node / preloads in subframes
This feature has delibrately been built / implemented in such a way
that it has minimum impact on existing apps / code-paths.
Without enabling the new "nodeSupportInSubFrames" option basically none of this
new code will be hit.
The things that I believe need extra scrutiny are:
* Introduction of `event.reply` for IPC events and usage of `event.reply` instead of `event.sender.send()`
* Usage of `node::FreeEnvironment(env)` when the new option is enabled in order to avoid memory leaks. I have tested this quite a bit and haven't managed to cause a crash but it is still feature flagged behind the "nodeSupportInSubFrames" flag to avoid potential impact.
Closes #10569
Closes #10401
Closes #11868
Closes #12505
Closes #14035
* feat: add support preloads in subframes for sandboxed renderers
* spec: add tests for new nodeSupportInSubFrames option
* spec: fix specs for .reply and ._replyInternal for internal messages
* chore: revert change to use flag instead of environment set size
* chore: clean up subframe impl
* chore: apply suggestions from code review
Co-Authored-By: MarshallOfSound <samuel.r.attard@gmail.com>
* chore: clean up reply usage
* chore: fix TS docs generation
* chore: cleanup after rebase
* chore: rename wrap to add in event fns
2019-01-22 11:24:46 -08:00
Jeremy Apthorp
92b9525cfd
feat: enable mixed-sandbox mode by default ( #15894 )
2019-01-22 10:44:28 -08:00
Jeremy Apthorp
1918e76913
feat: upgrade to Chromium 72.0.3626.52 ( #16334 )
2019-01-22 10:39:32 -08:00
Cheng Zhao
03d499bf34
fix: detach webview instead of destroying it
...
Chromium no longer cleans up everything when a guest webcontents is
destroyed, we have to force detaching it and let Chromium destroy everything.
2019-01-22 10:32:06 -08:00
Milan Burda
6cba2c50a2
feat: make ipc-message
and ipc-message-sync
events public ( #16468 )
2019-01-22 08:47:58 -08:00
Milan Burda
7d71ad6f91
fix: takeHeapSnapshot() using public IPC channel for internal implementation ( #16480 )
2019-01-22 17:32:24 +09:00
Shelley Vohr
3ca87d205f
feat: make zoomLevel/zoomFactor sync ( #16410 )
...
* feat: make zoomLevel/zoomFactor sync
* update ts defs dep
2019-01-20 23:40:27 -08:00
Milan Burda
7d4a1223fd
feat: add preload-error
event to webContents
( #16411 )
2019-01-18 12:03:43 +01:00
Shelley Vohr
f105c84349
test: ensure legacy callback functions work ( #16436 )
...
* test: test legacy callback functions
* add TODO removal comments
* fix callback spec
2019-01-17 14:17:16 -08:00
Shelley Vohr
720197f9c8
fix: correctly handle IPC for promise-based methods ( #16433 )
2019-01-17 12:08:54 -08:00
Shelley Vohr
1f2b02c18f
feat: promisify protocol.isProtocolHandled() ( #16423 )
...
* feat: promisify protocol
* fix base::Bind and specs
* update documentation
* make callback-compatible
* async awaitify tests
2019-01-17 09:05:10 -08:00
Milan Burda
23d44e322d
feat: use default-app behavior in packaged apps ( #16310 )
...
Unify the behavior between default app and packaged apps:
- create default application menu unless the app has one
- default window-all-closed handling unless the app handles the event
2019-01-15 21:35:53 +01:00
Milan Burda
52e257668d
fix: windowmenu did not show the window list on macOS ( #16387 )
2019-01-14 17:27:52 +01:00
Milan Burda
eb02a422de
feat: add fileMenu
/ viewMenu
/ appMenu
roles ( #16328 )
2019-01-10 14:32:03 +01:00
Milan Burda
349a3c20ae
feat: add additional remote APIs filtering ( #16293 )
2019-01-08 14:27:56 -08:00
Milan Burda
5c250455ad
refactor: pass isWebViewTagEnabled via ELECTRON_BROWSER_SANDBOX_LOAD ( #16238 )
2019-01-08 10:12:34 +01:00
Shelley Vohr
b71a5a5955
fix: register accelerator if role has no registerAccelerator ( #16309 )
...
* fix: register accelerator if role has no registerAccelerator
* ensure roles[role].registerAccelerator is defined
2019-01-07 16:01:03 -08:00
Milan Burda
6f117b8e0c
feat: add app.commandLine.hasSwitch() / app.commandLine.getSwitchValue() ( #16282 )
...
* feat: add app.commandLine.hasSwitch() / app.commandLine.getSwitchValue()
* add more tests
* refactor: move appendSwitch / appendArgument to command_line module
* replace AppendSwitchASCII with AppendSwitchNative
* remove castArgs
2019-01-07 07:48:27 -08:00
Milan Burda
a0cdcc5f8d
security: improve IPC validation in guest-view-manager
2019-01-05 00:06:47 +01:00
Milan Burda
547097b036
security: allow to block desktopCapturer.getSources() calls ( #15964 )
...
* security: allow to block desktopCapturer.getSources() calls
* return empty instead of error
* fix: release resources of DesktopCapturer on exit
2018-12-20 11:44:30 +09:00
Milan Burda
c65a0d90b8
chore: misc cleanup ( #16037 )
2018-12-12 15:31:16 -06:00
Milan Burda
607b53c883
security: block chrome.tabs.executeScript() for non chrome-extension: URLs ( #15929 )
2018-12-11 10:45:46 +01:00
Benjamin Pasero
c74ae107f1
fix: do not print an error for an expected condition ( #15991 ) ( #15992 )
2018-12-10 12:06:26 -08:00
Shelley Vohr
4b18a38e9f
chore: simplify promisify helper ( #15952 )
...
chore: simplify promisify helper
2018-12-10 08:13:09 -08:00
Cheng Zhao
db2fda1b6f
chore: make rpc-server reply to sender frame instead of the main frame ( #15973 )
...
* chore: make rpc-server reply to frame
* fix: check IsRenderFrameLive
2018-12-10 09:37:42 +09:00
Jeremy Apthorp
442c1b22e3
feat: webContents.loadURL returns a promise ( #15855 )
2018-12-06 12:16:19 -08:00
Shelley Vohr
3f15f51615
feat: promisify app.getFileIcon() ( #15742 )
2018-12-05 08:50:12 -08:00
Milan Burda
d561c5531b
feat: deprecate modules internally using remote.require in sandboxed renderer context ( #15145 )
2018-12-05 10:34:09 +01:00
Pedro Pontes
d5d1fa8290
fix: use appropriate site instance for cross-site nav's ( #15821 )
...
* fix: use Chromium's determined new site instance as candidate when navigating.
When navigating to a new address, consider using Chromium's determined site instance
for the new page as it should belong to an existing browsing instance when the
navigation was triggered by window.open().
fixes 8100.
* Revert "fix: use Chromium's determined new site instance as candidate when navigating."
This reverts commit eb95f935654a2c4d4457821297670836c10fdfd5.
* fix: delegate site instance creation back to content when sandboxed.
* fix: ensure site isolation is on
* test: adapt ut for cross-site navigation
* fix: register pending processes during a navigation.
* refactor: dont call loadURL for a window constructed from an existing webContents.
* test: add sandboxed affinity UT's.
* fix: check affinity before deciding if to force a new site instance.
* chore: adapt subsequent patch.
* refactor: constify logically const methods.
* fix: do not reuse site instances when navigation redirects cross-site.
* test: ensure localStorage accessible after x-site redirect.
* test: adapt localStorage acess denied UT for site isolation.
* fix: do not send render-view-deleted for speculative frames.
* chore: amend tests after rebase.
* test: add ut for webContents' render-view-deleted emission
* fix: introduce current-render-view-deleted for current RVH's deletions.
Revert render-view-deleted to being emitted with any RVH's deletion.
current-render-view-deleted is emitted only when the RVH being deleted
is the current one.
* refactor: style and comments fixed.
2018-12-05 17:03:39 +09:00
Milan Burda
aa2b2f7c8f
fix: security: don't allow arbitrary methods to be invoked on webContents via IPC ( #15919 )
2018-12-04 16:12:21 +01:00
Julien Isorce
1f55f1635f
feat: add support for DesktopCapturerSource.appIcon
...
Useful to get the icon of the application owning the source.
Only available for sources of type window, i.e. not for screen.
https://github.com/electron/electron/issues/14845
2018-12-04 15:42:49 +09:00
Shelley Vohr
a1a431eb87
fix: make windowMenu role correct on MacOS ( #15930 )
2018-12-03 11:52:46 -08:00
Milan Burda
a33eeda4f7
refactor: don't expose NavigationController as an internal module ( #15920 )
2018-12-03 17:13:09 +01:00
Milan Burda
8483cb4aa7
security: only handle related IPCs when <webview> tag is enabled ( #15859 )
...
* refactor: move guest-view-manager related IPC handling out of rpc-server
* feat: only handle related IPCs when <webview> tag is enabled
2018-11-30 18:44:38 +09:00
Shelley Vohr
41c2685204
feat: promisify win.capturePage() ( #15743 )
...
* feat: promisify win.capturePage
* mark optional arg correctly
* Add to breaking changes doc
* properly deprecate win.capturePage
* remove change from api-contract
* document both callback and promise versions
* address docs feedback
* update promisification progress doc
2018-11-27 23:50:53 -05:00
Anrock
9ff7807be8
fix: move window.open handlers from BrowserWindow to WebContents
2018-11-27 10:59:01 +09:00
Shelley Vohr
0a5f8611e8
chore: add promise api runtime flag ( #15841 )
...
* chore: add promise api runtime flag
* add promisification plan document
* fix process.md typo
2018-11-26 16:00:46 -05:00
Heilig Benedek
0242818f39
feat: add registerAccelerator flag to allow menu items to optionally skip accelerator registration ( #15723 )
...
* feat: add registerAccelerator flag to allow menu items to skip registration
* docs: add docs for registerAccelerator
* docs: re-add accidentally removed line
2018-11-26 10:43:55 -08:00
Cheng Zhao
47bf8e1bb3
view: add ResizeArea class ( #15752 )
2018-11-21 22:39:59 +09:00
Pedro Pontes
57d2ae1aec
revert: "fix: window.open site instance should belong to same browsing instance ( #15216 )" ( #15757 )
...
This reverts commit 8f35198bfb
.
2018-11-20 21:28:26 +01:00
Jeremy Apthorp
0642be296d
fix: crash in sandbox on linux when getting execPath ( #15701 )
2018-11-15 12:59:01 -08:00
Pedro Pontes
8f35198bfb
fix: window.open site instance should belong to same browsing instance ( #15216 )
2018-11-12 22:01:43 +01:00
Shelley Vohr
c06f023313
feat: allow partial setting of window bounds ( #15677 )
...
Extend the existing win.setBounds functionality by allowing developers to partially update bounds without being forced to pass in all four bounds values. No existing functionality is altere
2018-11-12 15:31:14 -05:00
Samuel Attard
edf063bae3
chore: remove deprecated touch-bar API ( #15650 )
2018-11-09 17:00:19 +11:00
Robo
82322968a3
refactor: printing implementation ( #15143 )
...
* refactor: basic printing
* move build files to chromium_src/BUILD.gn
* remove dependency on chrome prerender sources
* spec: move printing specs behind feature flag
* build: register pdf compositor service
2018-11-09 14:42:34 +11:00
Cheng Zhao
a8f2646ba6
Fix missing remote object error when calling remote function created in preload script ( #15444 )
...
* fix: report wrong context error based on contextId
* fix: destroyed remote renderer warning is now async
2018-10-31 11:26:57 -04:00
Cheng Zhao
260778e0fb
feat: add MdTextButton to View APIs ( #15328 )
...
* view: make button focusable by default
* view: add MdTextButton
* view: add common methods to LabelButton
2018-10-23 10:57:13 -04:00
Cheng Zhao
cb9be091aa
refactor: remove potential double free when managing WebContents ( #15280 )
...
* refactor: remove -new-contents-created event
Chromium expects us to take ownership of WebContents in AddNewContents,
we should not create V8 wrapper in WebContentsCreated, otherwise we
would have WebContents being managed by 2 unique_ptr at the same time.
* refactor: make CreateAndTake take unique_ptr
2018-10-22 13:02:25 -05:00
Shelley Vohr
f9f34fd628
fix: ability to fetch separators by id ( #15290 )
2018-10-19 13:09:40 -07:00
Samuel Attard
122017e6fa
fix: trim app name and productName ( #15269 )
...
Fixes #15245
2018-10-19 23:57:55 +11:00
Andy Dill
37f2113032
feat: expose setBackgroundThrottling api ( #15104 )
2018-10-19 11:32:22 +11:00
Eric
10db2bce4e
fix: loading of devtools extensions on startup ( #13844 )
...
* Fix loading of devtools extensions on startup
The persisted DevTools Extensions were not being loaded correctly at startup. The `addDevToolsExtension` function was not defined when it was being called. An error was being thrown and ignored, so the whole thing would fail silently. I moved the code to load the extensions to the end of the event handler, so now it works.
* fixup: remove trailing spaces to unblock CI
* fixup: add logging when the Electron Enable Logging env var is set
* Fix linter error on undefined srcDirectory
* fixup: catch exception when loading extension
* Revert "fixup: catch exception when loading extension"
This reverts commit 42c2cf95bcaab8abfc5fbecbe4365d3adfe36d5b.
2018-10-19 11:22:42 +11:00
Milan Burda
db37ab1039
feat: add remote.require() / remote.getGlobal() filtering ( #15014 )
2018-10-18 14:36:45 +11:00
Milan Burda
508551b81b
fix: small refactoring regressions ( #15206 )
...
* fix: require('@electron/internal/browser/guest-view-manager')
* fix: add missing crashServicePid used by tests
2018-10-17 12:18:18 -07:00
Milan Burda
d3efc52745
feat: add webPreferences.enableRemoteModule option ( #13028 )
2018-10-13 20:50:07 +03:00
Heilig Benedek
a82bcc7e3c
refactor: move printing out of chromium_src ( #15023 )
...
* remove printing related things from chromium_src
* chore: add printing build flag and patch
* fix: include PrintingService on other platforms too
* fix: printing_handler is only needed on Windows
* fix: format BUILD.gn properly
* fix: rename printing build flag to avoid conflict with chromium
* fix: place previously missed printing calls behind build flag
* fix: accidentally renamed flag in patch file
* fix: don't include all printing strings
* fix: allow ShowItemInFolder and OpenItem to block, fixing a DCHECK crash
* fix: make things compile, some changes got lost while rebasing
* fix: remove rogue line from BUILD.gn
* chore: update patch description
* style: lint fix
* chore: use chromium printing buildflag, move node related stuff out of patch
* revert: remove ScopedAllowBlockingForTesting call
* fix: fix my rebase blooper
* fix: re-add header lost during rebase, update patch
* fix: add <map> include, tweak the patch a bit
* revert: remove rogue diff from patch
* fix: clean up after rebase
2018-10-13 12:57:04 +11:00
Milan Burda
b50f86ef43
refactor: use separate ipc-renderer-internal / ipc-main-internal APIs for Electron internals ( #13940 )
2018-10-07 00:48:00 +13:00
Robo
434a6e3561
refactor: create request context from network context ( #14656 )
...
* [ci skip] refactor: create request context from network context
* [ci skip] refactor: subscribe to mojo cookiemanager for cookie changes
* [ci skip] refactor: manage the lifetime of custom URLRequestJobFactory
* refactor: use OOP mojo proxy resolver
* revert: add support for kIgnoreCertificateErrorsSPKIList
* build: provide service manifest overlays for content services
* chore: gn format
* fix: log-net-log switch not working as expected
* spec: verify proxy settings are respected from pac script with session.setProxy
* chore: use chrome constants where possible
* fix: initialize request context for global cert fetcher
* refactor: fix destruction of request context getters
* spec: use custom session for proxy tests
* fix: queue up additional stop callbacks while net log is being stopped
* fix: Add CHECK for cookie manager retrieval
* chore: add helper to retrieve logging state for net log module
* fix: ui::ResourceBundle::GetRawDataResourceForScale => GetRawDataResource
* style: comment unused parameters
* build: move //components/certificate_transparency deps from //brightray
* chore: update gritsettings_resource_ids patch
* chore: update api for chromium 68
* fix: net log instance is now a property of session
2018-10-04 13:08:56 -05:00
Milan Burda
5efb0fdff1
feat: add security warnings to sandboxed renderers ( #14869 )
...
Also refactor not to use the remote module.
2018-10-03 21:36:12 +02:00
Samuel Attard
d628aad3bf
feat: remove needless mojave dark mode APIs and add instructions on how to use the macOS replacement ( #14895 )
2018-10-02 14:44:50 +10:00
Milan Burda
3ad3ade828
refactor: add prefer-const to .eslintrc + fix errors ( #14880 )
2018-10-02 11:56:31 +10:00
Milan Burda
d48f9bcf7f
refactor: implement <webview> methods via dedicated IPCs without the remote module ( #14377 )
2018-10-01 10:07:50 +09:00
Milan Burda
c61db523c7
refactor: replace var with const / let ( #14866 )
2018-09-29 09:17:00 +10: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
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
Milan Burda
b499d57cfd
refactor: use error-utils for remote exception serialization / deserialization ( #14788 )
...
* refactor: use error-utils for remote exception serialization / deserialization
* fix internal process.type in sandboxed renderer
2018-09-26 15:44:55 +10:00
Milan Burda
3df739fa89
refactor: implement crashReporter.start() without the remote module ( #14434 )
2018-09-26 15:43:34 +10:00
Samuel Attard
176a76217c
chore: have 'use strict' consistently across our lib files ( #14721 )
2018-09-23 00:28:50 +12:00
Samuel Attard
54ef906832
[RFC] perf: use an internal module resolver to improve require performance ( #14633 )
...
* perf: use an internal module resolver instead of relative requires
* perf: memoize the results of getting exported Electron properties
* perf: make internal module changes consistent across sandboxed / bundled files
2018-09-20 13:43:26 +10:00
Milan Burda
e22142ef9c
feat: add process.takeHeapSnapshot() / webContents.takeHeapSnapshot() ( #14456 )
2018-09-18 11:00:31 -07:00
Samuel Attard
558fff69e7
chore: update to standard 12
2018-09-14 14:57:01 +10:00
Charles Kerr
a3f7e298cf
refactor: remove unused, duplicated code in deprecate module ( #14579 )
...
* remove obsolete tests
* remove unused deprecate API
* make a warnOnce helper for the deprecate methods
* misc. copyediting, e.g. variable names, whitespace
* test that any deprecation warns once at most
* use strict
2018-09-12 17:13:22 -05:00
Shelley Vohr
a8a610cb34
chore: remove only on deprecations api spec ( #14564 )
...
* chore: remove only
* add option to ignore missing properties
2018-09-11 23:00:41 -07:00
Samuel Attard
dde194d853
Remove the memory property from getAppMetrics
...
See 03d0bfd593
for more information
2018-09-11 20:24:03 +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
Shelley Vohr
2157d09956
chore: refactor deprecation apis ( #14495 )
2018-09-11 11:16:49 -07:00
Milan Burda
0821edc843
refactor: cleanup web-frame-init.js ( #14516 )
...
* refactor: add error-utils.js
* fix exception handling for asyncWebFrameMethods
* remove dead code
* handle exceptions
* rename rehydratedError to deserializedError
* Revert "handle exceptions"
This reverts commit 396b179948b137f9e525e9ebba4f7c6e9bf19429.
2018-09-11 19:56:00 +10:00
Milan Burda
38419e3a6a
chore: address TODO for WebContents.prototype.setSize / reportRemovedAttribute removal ( #14517 )
...
* chore: remove WebContents.prototype.setSize
* chore: remove reportRemovedAttribute
* chore: remove unused fixtures
2018-09-11 17:58:57 +10:00
Milan Burda
58577bd431
feat: add options to webContents.loadFile ( #14515 )
2018-09-11 17:56:49 +10:00
Milan Burda
dcd580b6cf
chore: remove app.makeSingleInstance / releaseSingleInstance ( #14518 )
2018-09-10 16:33:36 +10:00
Cheng Zhao
92e094c5f6
fix: manually manage WebContents of webview when it is detached
2018-09-07 15:47:58 +09: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
John Kleinschmidt
865435c491
Merge pull request #14287 from electron/miniak/ipc-refactoring
...
refactor: move common logic to handleRemoteCommand (rpc-server.js)
2018-08-28 17:06:38 -04:00
Cheng Zhao
459a2304b4
fix: emit focus/blur events for webview ( #14344 )
...
* fix: emit focus/blur events for webview
* test: webview can emit focus event
2018-08-28 13:35:44 -05: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
Milan Burda
28e4fcea3b
refactor: move common logic to handleRemoteCommand
2018-08-27 21:06:03 +02:00
Milan Burda
f1fe485768
fix: don't expose desktopCapturer in sandboxed renderers if the feature is disabled ( #14310 )
2018-08-27 13:16:52 -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
c23e7fa101
refactor: implement ipcRenderer.sendTo in native code for better performance ( #14285 )
2018-08-24 14:14:39 -07: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
Samuel Attard
7a514d26bb
fix: inheritance of webPreferences sub properties
2018-08-22 11:16:46 -05:00
Milan Burda
fc85d02786
feat: expose missing process APIs in sandboxed renderers ( #13505 )
2018-08-21 11:05:45 -07:00
Troy
5ea05ddee7
fix: Stricter Testing For Menu Items ( #13992 )
...
This PR includes stricter testing for empty objects so that false context menus are not created along with the tests to ensure future compatibility.
2018-08-17 13:10:14 -07: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
5f7a595f0a
chore: add FIXME for remote deref ( #14116 )
2018-08-15 09:06:44 -07:00
Samuel Attard
55a1f5d351
fix: add a hidden option to disable remote dereferencing ( #14102 )
2018-08-15 08:08:14 -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
Milan Burda
271d582aac
refactor: make methods const, cleanup ( #13937 )
2018-08-09 10:15:23 -07:00
Dominic
a7052efaf4
fix: make menu.popup options optional ( #13977 )
...
* add empty object as default param for options
* update docs
* add spec for optional options
* fix: add null check for options
2018-08-08 17:38:52 -05: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
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
Cheng Zhao
9d6f1a372e
fix: create WebContents for webview on request ( #13713 )
2018-07-21 11:11:28 +09:00
Samuel Attard
ad9e64d086
fix: remove race condition for executeJavaScript ( #13691 )
...
Replaces 'did-finish-load' with 'did-stop-loading' which semantically
maps to the events inside Chromium. Before I think we were relying
on a natural 99% winnable race condition.
Fixes #13504
2018-07-17 13:32:28 +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
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
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
f9e2ec43d0
fix: deprecate properties in app.getAppMetrics() ( #13446 )
...
* fix: deprecate properties in app.getAppMetrics()
* address feedback from review
* fix deprecated property location
* simplify test
2018-06-26 23:47:01 -07:00
Milan Burda
08ccc2d624
refactor: rpc-server.js cleanup ( #13420 )
...
* refactor: don't declare variables C-style in JavaScript
* refactor: use new constructor(...args) in rpc-server.js
2018-06-27 11:00:05 +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
Zhuo Lu
ab24a1e36d
feat: netLog API for dynamic logging control ( #13068 )
...
* Introduce `net.{start|stop}Logging()`
- Slight regression right now as Electron won't automatically start logging net-logs at launch, will soon be fixed
- To implement callback for async controls
* Add `net.isLogging` & optional callback param for `net.stopLogging()`
* Fix small regression on --log-net-log
--log-net-log should work again
* Error on empty file path
* Only start with valid file path
* Remove unused var
* Allow setting log file path before URLRequestContextGetter starts logging
* Add net log tests
* Remove redundant checks
* Use brightray::NetLog
* Clean up code
* Should automatically stop listening
* 🎨 Attempt to fix styles
* Only run non-null callback
* Dump file to tmpdir
* Simplify net log spec
Spawned Electron process on Linux CI can fail to launch
* Separate netLog module
* Remove net logging test from net spec
* Add tests for netLog
* Fix header guard
* Clean up code
* Add netLog.currentlyLoggingPath
* Callback with filepath
* Add test for case when only .stopLogging() is called
* Add docs
* Reintroduce error on invalid arg
* Update copyright
* Update error message
* Juggle file path string types
2018-06-19 11:45:58 +10:00
Cheng Zhao
70e17b5f8f
feat: add LabelButton API
2018-06-18 16:51:36 +09:00
Cheng Zhao
c8e8cb86ce
feat: add Button API
2018-06-18 16:51:36 +09:00
Cheng Zhao
ba3700141f
feat: add TextField API
2018-06-18 16:51:36 +09:00
Alexey Kuzmin
dee9aef975
Add "enable_desktop_capturer" build flag ( #13133 )
...
* Make it possible to disable a module for a renderer
* Put DesktopCapturer API under a build flag
The name is "enable_desktop_capturer".
Enabled by default.
2018-06-13 11:15:34 -05:00
Thiago de Arruda
6ff111a141
perf: don't use JSON to send the result of ipcRenderer.sendSync
. ( #8953 )
...
* Don't use JSON to send the result of `ipcRenderer.sendSync`.
- Change the return type of AtomViewHostMsg_Message_Sync from `base::string16`
to `base::ListValue`
- Adjust lib/browser/api/web-contents.js and /lib/renderer/api/ipc-renderer.js
to wrap/unwrap return values to/from array, instead of
serializing/deserializing JSON.
This change can greatly improve `ipcRenderer.sendSync` calls where the return
value contains Buffer instances, because those are converted to Array before
being serialized to JSON(which has no efficient way of representing byte
arrays).
A simple benchmark where remote.require('fs') was used to read a 16mb file got
at least 5x faster, not to mention it used a lot less memory. This difference
tends increases with larger buffers.
* Don't base64 encode Buffers
* Don't allocate V8ValueConverter on the heap
* Replace hidden global.sandbox with NodeBindings::IsInitialized()
* Refactoring: check NodeBindings::IsInitialized() in V8ValueConverter
* Refactor problematic test to make it more reliable
* Add tests for NaN and Infinity
2018-06-13 17:38:31 +10:00
Charles Kerr
b89fe86fa1
Merge pull request #13050 from electron/3.0.0-deprecations
...
chore: removal of 3.0.0 deprecations
2018-05-30 09:25:36 +02:00
Milan Burda
4cfe5ecaa4
add proper support for typed arrays in remote ( #13055 )
2018-05-24 21:05:46 +09:00
Cheng Zhao
322bde526c
Add LayoutManager/BoxLayout APIs
2018-05-24 15:36:29 +09:00
Shelley Vohr
5f5322c64e
rename blinkFeatures to enableBlinkFeatures
2018-05-23 14:01:34 -07:00
Shelley Vohr
bc10be3de6
rename exposed session method to setCertificateVerifyProc
2018-05-23 13:51:28 -07:00
Shelley Vohr
fb4a8e9cb9
remove ses.setCertificateVerifyProc() deprecation
2018-05-23 09:47:14 -07:00
Shelley Vohr
4a90056462
remove webContents.openDevTools() deprecation
2018-05-23 09:30:15 -07:00
Shelley Vohr
003a5a0160
remove tray.setHighlightMode() deprecation
2018-05-23 09:20:39 -07:00
Shelley Vohr
72c63a10ee
remove screen.getMenuBarHeight() deprecation
2018-05-23 09:11:48 -07:00
Thiago de Arruda
6f076f7433
Refactor sandbox preload initialization. ( #12877 )
...
Use a single synchronous IPC call to retrieve data required by early
sandbox scripts. This has two purposes:
- Optimize preload script initialization by:
- Using one synchronous IPC call to retrieve preload script,
webContentsId (more on that later), process.{platform,execPath,env}
- Lazy loading as many modules as possible.
- Fix #12316 for sandbox. @MarshallOfSound addressed the issue in
#12342 , but it was still present in sandbox mode. By loading
webContentsId very early and skipping remote module at early
startup, we fix it for sandbox.
2018-05-21 22:56:05 +10:00
Milan Burda
7c19ae302e
replace isEventEmitter with instanceof EventEmitter (rpc-server) ( #12998 )
2018-05-21 10:00:56 +09:00
Milan Burda
5a5eb43359
detect EventEmitter in removeRemoteListenersAndLogWarning ( #12975 )
2018-05-18 11:09:25 +09:00
John Kleinschmidt
2b26206ea2
Merge pull request #12844 from didrocks/fix-communitheme-session
...
fix: support multiple inherited ubuntu session for indicators
2018-05-16 11:44:04 -04:00
Didier Roche
6feec2e2a5
Fix linting error
...
Thx @MarshallOfSound
2018-05-16 14:34:13 +02:00
Cheng Zhao
bb2715e7a5
feat: add TopLevelWindow.setContentView API
2018-05-15 14:12:47 +09:00
Cheng Zhao
5a320222e2
feat: add WebContentsView API
2018-05-15 14:03:21 +09:00
Cheng Zhao
e058d11657
feat: add View API
2018-05-15 14:03:21 +09:00
Didier Roche
5df0fd9dc8
fix: more scalable code by factorizing appindicator support
...
- introduce a currentPlatformSupportsAppIndicator() function determining
if app indicators are supported here.
- handle undefined process.env.XDG_CURRENT_DESKTOP
- added some comments to ensure that the intents are clear
Thanks MarshallOfSound
2018-05-14 11:00:41 +02:00
Shelley Vohr
daf75dd375
add app.isPackaged ( #12656 )
...
* add isPackaged method
* add false test case for app.isPackaged()
* document add.isPackaged()
* check isPackaged() without fs call
* convert to non-method property
* document app.isPackaged as a property
* update tests for app.isPackaged
* remove unused fs require
* clarify docs for isPackaged()
2018-05-07 23:15:31 -07:00
Samuel Attard
5b5c161601
feat: new makeSingleInstance API ( #12782 )
...
* Refactor app.makeSingleInstance
* new API `app.isPrimaryInstance()`
* new API `app.isSingleInstance()`
* new event `app.on('second-instance')`
* deprecated old syntax `app.makeSingleInstance(cb)`
* deprecated old syntax of `app.makeSingleInstance() --> bool` in favor
of `app.isPrimaryInstance()`
* Fix spec, we don't need process.nextTick hacks any more
* Make deprecation TODO for the return value of makeSingleInstance
* Refactor makeSingleInstance to requestSingleInstanceLock and add appropriate deprecation comments
* I swear this isn't tricking the linter
* Make const
* Add deprecation warnings for release, and add to planned-breaking-changes
BREAKING CHANGE
2018-05-08 01:29:18 +10:00
Didier Roche
811ae1a936
Support multiple inherited ubuntu session for indicators
...
Multiple sessions inherits the "ubuntu" base settings properties in ubuntu.
One of the most popular one is communitheme: the next ubuntu default theme
has its dedicated session, with thus duplicated indicators for dropbox.
Rather than a string comparison for ubuntu, only match a substring then.
XDG_CURRENT_DESKTOP can be of form: "communitheme:ubuntu:GNOME",
"ubuntu:GNOME", …
Fixes : #12843 .
2018-05-07 11:49:37 +02:00
Shelley Vohr
9c8952aef0
Add menu item order control ( #12362 )
...
Add four new optional properties to menus in Electron. The four properties are:
'before'
'after'
'beforeGroupContaining'
'afterGroupContaining'
'before/after' - provides a means for a single context menu item to declare its placement relative to another context menu item. These also imply that menu item in question should be placed in the same “group” as the item.
'beforeGroupContaining/afterGroupContaining - provides a means for a single menu item to declare the placement of its containing group, relative to the containing group of the specified item.
2018-05-05 09:37:29 -07:00
Shelley Vohr
f67c625e6a
don't filter out invisible menu separators ( #12825 )
2018-05-04 07:59:40 -07:00
Milan Burda
9b56ca3961
Fix optimizeSimpleObject for arrays of objects ( #12815 )
2018-05-03 22:34:30 -05:00
bughit
55a7f6f0ce
add did-frame-navigate event to WebContents ( #12723 )
...
* add did-frame-navigate event to WebContents, pass http response code to it and did-navigate
* docs for frame routing id related api changes on WebFrame and WebContents
2018-05-01 13:34:41 +09:00
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
Shelley Vohr
7c4964fae6
revert to more graceful template structure check ( #12699 )
2018-04-24 11:21:26 -04:00
Tatsuya Hiroishi
9c65abd746
handle remote exception ( #12694 )
...
* add cause property to exception in callFunction
* update exceptionToMeta function
* add sender argument
* and cause property to return value
* update exception convert in metaToValue function
* add from and cause properties to the exception error
* unit test for remote exception
2018-04-24 08:40:19 -04: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
Alexey Kuzmin
fcc82ebd35
Add "app.whenReady()" ( #12652 )
...
* Make "chai-as-promised" avaialble in tests
* Add "app.whenReady()"
Closes #9561 .
2018-04-20 17:09:23 +10:00
Cheng Zhao
7473b612c5
Make Menu API accept TopLevelWindow
2018-04-19 13:08:37 +09:00
Cheng Zhao
1340b17424
Do not return TopLevelWindow in BrowserWindow.getAllWindows
2018-04-19 13:08:37 +09:00
Cheng Zhao
e38f511737
Make BrowserWindow inheirt TopLevelWindow in JS
2018-04-19 13:08:37 +09:00
Cheng Zhao
71ebd99dfa
Expose TopLevelWindow to JavaScript
2018-04-19 13:08:36 +09:00
Samuel Attard
7cc3b877dc
Fix event leak on reuse of touchbar item ( #12527 )
...
* fix event leak on reuse of touchbar item
* Clean up child touch bar item event listeners and escape item listeners
2018-04-15 10:24:47 -05:00
Andrew MacDonald
6bfb122cd1
Add a display_id parameter to the desktopCapturer API. ( #12417 )
...
* Add a screen_api_id parameter to the desktopCapturer API.
When using the DirectX capturer on Windows, there was previously no way
to associate desktopCapturer/getUserMedia and electron.screen API
screens. This new parameter provides the association.
* Fix non-Windows build.
* Fix Mac.
* Fix Mac harder.
* JS lint
* clang-format C++ code.
* IWYU
* display_id, Linux comment, better test
* lint
* Fix tests on Linux.
* Add display_id documentation.
2018-04-09 14:43:35 +09:00
Nitish Sakhawalkar
970f79e32f
Check for devtools in BrowserWindow.getFocusedWindow() ( #12526 )
2018-04-06 09:21:32 -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
Charles Kerr
1a649a6ac3
Handle in-app-purchase less fatally on non-Darwin ( #12511 )
...
Fixes #12311
Right now it throws a new error when the file is even require()d, but this isn't ideal as there are cases where everything is mass-required, such as Spectron. Instead, we should throw an error on non-Darwin environments only when the IAP methods are invoked.
2018-04-02 18:55:44 -05:00
Shelley Vohr
a677c22e1f
re-enable null check against menu item accelerators ( #12449 )
2018-03-27 20:32:55 -04: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
Shelley Vohr
31d688ad3d
Check menu.popup options are an object ( #12325 )
...
* check menu.popup options are an object
* Add a spec for menu.popup options check
* remove stray .only
2018-03-17 06:31:10 +09:00
Samuel Attard
4b476f13bb
Revert "Fixes electron/electron#12147" ( #12293 )
...
* Revert "Set appropriate defaults for webview options (#12271 )"
This reverts commit c2673aa970
.
* Revert "Fixes electron/electron#12147 (#12193 )"
This reverts commit f54c94d6c9
.
2018-03-15 16:18:36 +09: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
nous-
f54c94d6c9
Fixes electron/electron#12147 ( #12193 )
2018-03-15 13:29:32 +09:00
Charles Kerr
e400585a0e
Apply further ES6 bikeshedding
2018-03-13 17:09:47 +09:00
Charles Kerr
2d90e763ad
Use idiomatic ES6 when merging options
2018-03-13 16:23:39 +09:00
Charles Kerr
379bd79de4
Remove unnecessary work when merging options
2018-03-13 16:18:50 +09:00
Charles Kerr
685948bcaa
Parent's visibility trumps inherited 'show' option
2018-03-13 00:28:34 +09:00
Samuel Attard
795447f61a
Implement dialog (alert/confirm) blocking as a user switch after the first dialog
...
* This is to enable more browser-like behavior so that users who run third-party code
will not be DOS'ed with alerts and confirms. This is already handled like this
in most major browsers so this will greatly help these developers
2018-03-06 11:19:15 +09:00
Shelley Vohr
199cf31b9e
deprecate screen.getMenuBarHeight
2018-03-05 19:45:51 -05:00
Cheng Zhao
35cbe9d140
Fix dockMenu not being referenced in JavaScript ( #12062 )
...
* Fix dockMenu not being referenced in JavaScript
* spec: Test garbage collecting dock menu
2018-02-26 22:15:06 -08:00
shelley vohr
18362eb948
improve Menu and MenuItem testing ( #12015 )
...
* split menu/menuitem and add some tests
* fix ipc send issue
* feedback: make tests less brittle
* clean up MenuItem accelerator and label tests
2018-02-23 07:53:59 -06:00
John Kleinschmidt
2a97e48465
Merge pull request #11968 from electron/refactor-menu-popup
...
Refactor menu.popup
2018-02-21 14:29:52 -05:00
shelley vohr
193febd18c
deprecate boolean highlightMode param ( #11993 )
...
* deprecate boolean highlightMode param
* add process.noDeprecations check
* fix native method override
* add todo
2018-02-20 22:30:32 -06:00
shelley vohr
719e5a93b4
deprecation for webContents.openDevTools ( #11986 )
...
* deprecate old openDevTools param
* add deprecation check and existence check
* fix method issues
2018-02-20 22:30:02 -06:00
Charles Kerr
f59d078eea
Use more idiomatic JS in WebContents' init()
2018-02-20 19:20:11 -06:00
Charles Kerr
9c56b81b71
Throw an error if menu.popup() has no window
2018-02-20 18:38:05 -06:00
Charles Kerr
5a25b88b50
Fix browserWindow detection in menu.popup()
2018-02-20 18:35:39 -06:00
Charles Kerr
708f39a1a5
update a few menu.popup() calls to use the new API
2018-02-20 14:02:24 -06:00
Shelley Vohr
5065e159f1
positionItem => positioningItem
2018-02-20 11:28:34 -05:00
Cheng Zhao
dc62e51ba4
Fix the cyclic reference in menu delegate ( #11967 )
...
* Fix the cyclic reference in menu delegate
* Fix menu tests due to delegate change
2018-02-20 10:11:35 -06:00
Shelley Vohr
fb7fb4972d
options all the things
2018-02-20 11:10:53 -05:00
Shelley Vohr
211b542ae4
remove setZoomLevelLimits
2018-02-20 08:57:48 -05:00
Shelley Vohr
56f06187d5
forgot to remove old method
2018-02-19 21:03:10 -05:00
Shelley Vohr
6e11a3e53d
add restructured window.popup
2018-02-19 20:59:27 -05:00
Shelley Vohr
cd9e7142e4
add conditional for menu.popup(window, callback)
2018-02-19 13:06:37 -05:00
Samuel Attard
a20b379f26
fix windows tests
2018-02-16 16:02:10 +11:00
Samuel Attard
6318cd781d
Update to use Squirrel.Mac that supports CDN releases
2018-02-15 14:00:46 +11:00
acheronfail
d1d50a4c92
Implement App-Scoped Security scoped bookmarks ( #11711 )
...
* implementation of security scoped bookmarks
* option is now only available on mas builds
2018-02-12 13:25:06 -05:00
Samuel Attard
66b57858b8
Fix child touch bar items not updating ( #11812 )
...
* Fix child touch bar items not updating
Deep children of a TouchBar didn't cause the top level touch bar to update, now they do
Fixes #11761 .
* Remove unused newValue property in TB setter
2018-02-12 12:53:04 -05:00
kaylie
3c64062f69
Replace custom function with Object.values()
2018-02-05 20:03:28 -08:00
shelley vohr
5240352326
Remove extra menu separators ( #11827 )
...
* add function to remove leading/trailing separators
* change const name for clarity
* add spec to check filtered separators
* clean method and add edge case spec per review
2018-02-05 11:55:12 -06:00
Cheng Zhao
8ae3d9dd0b
Simplify the public PowerObserver interface
2018-02-05 15:28:58 +09:00
Thiago de Arruda
56b53e71aa
Implement powerMonitor 'shutdown' event for Linux.
...
The event is emitted when the OS is rebooting/shutting down, and allows
an electron app to call `e.preventDefault()` in order to delay shutdown
and exit cleanly.
2018-02-05 15:21:31 +09:00
Shelley Vohr
db6d84de74
don't inherit isBrowserView for spawned child windows
2018-02-01 00:09:37 -05:00
Samuel Attard
32a1395bcf
Merge pull request #11565 from electron/add-load-file-helper
...
Add window.loadFile and webContents.loadFile helper methods
2018-01-23 09:08:23 +11:00
Cheng Zhao
bd271cffb9
Throw when inAppPurchase is used on unsupported platforms
2018-01-10 18:53:55 +09:00
Cheng Zhao
ac6f895f64
Turn InAppPurchase into an EventEmitter
2018-01-10 16:37:05 +09:00
Adrien Fery
b2542a27c3
Update code style
2018-01-10 13:14:18 +09:00
Adrien Fery
eb2520488f
Adapt code style
2018-01-10 13:14:18 +09:00
Adrien Fery
f3ae566164
Add in-app purchase for MacOS
2018-01-10 13:14:18 +09:00
Zeke Sikelianos
eb89e12c5b
Merge pull request #11532 from sethlu/camelcase-menuitem-role
...
Make MenuItem roles camelCase-compatible
2018-01-04 09:53:58 -08:00
Samuel Attard
1553b54779
Add window.loadFile and webContents.loadFile helper methods
2018-01-04 11:38:56 +13:00
Cheng Zhao
46330ac2a9
Remove the closed event of Menu
...
The callback of Menu.popup does more things, and there is actually no
request for the closed event.
2018-01-01 17:22:07 +09:00
Cheng Zhao
73d78d345a
Make callback work for old-style Menu.popup call
...
While the old-style Menu.popup has been deprecated, it is still being
used widely in apps and even in Electron itself.
2018-01-01 17:17:01 +09:00
Cheng Zhao
7b01a8b860
Add callback parameter to Menu.popup
2018-01-01 16:26:19 +09:00
Zhuo Lu
b8ec84c761
Fix syntax
2018-01-01 02:23:32 +08:00
Zhuo Lu
d45914c3f7
MenuItem roles camelCase-compatible
2017-12-28 13:28:20 +08:00
Kyle Corry
5aac091f40
Add Support for Pop!_OS GNOME Session
...
Similar to this PR: https://github.com/electron/electron/pull/10355 , Pop!_OS suffers from the same problem. Using Ubuntu AppIndicator will not show the icon currently unless the XDG_CURRENT_DESKTOP variable is modified. This commit will add support for pop so that this workaround is not needed.
Ref: https://github.com/pop-os/pop/issues/84
2017-12-21 14:16:15 -05:00
Cheng Zhao
088042841d
win: Correctly close popup menu
2017-12-21 15:26:32 +09:00
Cheng Zhao
e4770c7604
Coding style fixes
2017-12-20 18:48:09 +09:00
Heilig Benedek
c586806609
fix flash menu being unresponsive to commands
2017-12-20 15:40:07 +09:00
Felix Rieseberg
8166a64f98
🔧 Last round of feedback
2017-12-12 11:25:01 -08:00
Felix Rieseberg
c4ec8b4545
🔧 Feedback
2017-12-12 11:25:01 -08:00
Felix Rieseberg
5b7f7c8a1a
🔧 Menu returns its properties now
2017-12-12 11:25:01 -08:00
Felix Rieseberg
ffc54967e9
🔧 Fix value shift
2017-12-12 11:25:01 -08:00
Felix Rieseberg
99031834ff
🔧 Cleanup
2017-12-12 11:25:01 -08:00
Felix Rieseberg
3719ee0b53
🔧 Allow for menu.popup({})
2017-12-12 11:25:01 -08:00
Felix Rieseberg
9e660b1d32
🔧 Always find a window (or error)
2017-12-12 11:25:01 -08:00
Felix Rieseberg
4f901c6d24
🔧 Oh wow, that looks wrong
2017-12-12 11:25:01 -08:00
Alexey Kuzmin
1c8eb03574
Revert "fix: Fix menu.popup()
bugs"
2017-12-12 13:59:34 +03:00
Felix Rieseberg
927c63b477
🔧 Last round of feedback
2017-12-11 15:19:33 -08:00
Felix Rieseberg
89b90be6a2
🔧 Feedback
2017-12-11 14:43:35 -08:00
Felix Rieseberg
22e9d665d2
🔧 Menu returns its properties now
2017-12-11 14:03:01 -08:00
Felix Rieseberg
93b46116f4
🔧 Fix value shift
2017-12-11 13:30:35 -08:00
Felix Rieseberg
abd56eda6f
🔧 Cleanup
2017-12-08 14:40:51 -08:00
Felix Rieseberg
955564abd7
🔧 Allow for menu.popup({})
2017-12-08 14:37:16 -08:00
Felix Rieseberg
bd6767fac6
🔧 Always find a window (or error)
2017-12-08 14:36:52 -08:00
Felix Rieseberg
38bb9baac5
🔧 Oh wow, that looks wrong
2017-12-08 14:36:29 -08:00
Felix Rieseberg
9646f0c99a
🔧 Sprinkle some ES6 across the file
2017-12-01 17:18:57 -08:00
Felix Rieseberg
c5abe96b39
🔧 Hide subprocess window
2017-12-01 17:18:37 -08:00
Cheng Zhao
b161a4f515
Merge pull request #11166 from sethlu/openrecent
...
feat: Recent documents menu item
2017-11-28 10:55:14 +09:00
Zhuo Lu
dcdc3621ac
Rename roles
2017-11-27 17:26:22 +09:00
Zhuo Lu
5d44dbaf54
Redesign recent documents role API
...
- For more flexibility in designing the recent documents menu, now there can be one menu item (known issue: you may specify more but AppKit doens't display more than one) in the submenu list, rather than separating the labels with a tab.
- Also added is the role `clearrecent` that can be given to a menu item that can clear the recent documents.
2017-11-27 17:26:22 +09:00
Zhuo Lu
828d233f2a
Rollback duplicated feature
2017-11-27 17:26:22 +09:00
Zhuo Lu
0b9cea334f
Specify "Clear Menu" through label option
...
Like a bit of a hack right now, conforming to the existing menu item definition
2017-11-27 17:26:22 +09:00
Zhuo Lu
4da2eb9366
Introduce openrecent role
...
- Does not yet accept any options except label--"Clear Menu" can't be modified through exposed node API
- If `openrecent` is present across multiple menu items, the last seen will be visible in the main menu due to that it is designed to behave like a singleton
2017-11-27 17:26:22 +09:00
Zhuo Lu
f0bff74995
Add "Open Recent" submenu to default
2017-11-27 17:26:22 +09: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
Birunthan Mohanathas
4e859b4718
Remove "async" option from menu.popup()
...
All menus are async now. See "Cleanup MenuRunner API"
https://codereview.chromium.org/2790773002
2017-11-24 10:58:17 +09:00
Felix Rieseberg
f7d6e3fa7b
🔧 Disable standard/no-callback-literal where necessary
2017-11-23 13:53:03 -08:00
Felix Rieseberg
f81bfb7b86
🔧 Fix style issues
2017-11-23 13:42:48 -08:00
Charles Kerr
9c217fc6c7
Merge pull request #11224 from electron/browser-view-window
...
feature: Add `BrowserWindow.fromBrowserView()`
2017-11-23 14:41:36 +01:00
Felix Rieseberg
037f76c47b
🐛 Ooops, fix that
2017-11-22 17:07:57 -08:00
Felix Rieseberg
4d18cbe728
🔧 BrowserView.fromWebContents()
2017-11-22 16:59:00 -08:00
Felix Rieseberg
7630ac6e90
🔧 Return null if not found
2017-11-22 15:48:11 -08:00
Felix Rieseberg
8c5aad8b17
🔧 Add BrowserWindow.fromBrowserView()
2017-11-22 14:36:54 -08:00
Felix Rieseberg
05bae0b4c4
🔧 Util is no longer used here
2017-11-20 09:52:13 -08:00
Felix Rieseberg
b029c088db
🔧 Bonus ;
2017-11-20 09:48:33 -08:00
Felix Rieseberg
b8b3b441a7
🔧 util._extend is deprecated, too
2017-11-20 09:46:02 -08:00
Felix Rieseberg
5b18bea7e3
🔧 Alex has good ideas
2017-11-18 10:59:09 -08:00
Felix Rieseberg
cf7e9df3a0
🔧 Appease the linter
2017-11-18 01:02:09 -08:00
Felix Rieseberg
9a2d103e7f
:thinking_face: What if we made it an Error again?
2017-11-18 00:51:14 -08:00
Heilig Benedek
cafb9477b0
lint fix
2017-11-13 15:46:46 +09:00
Heilig Benedek
13b86598e8
don't show osr dummy window when dialog is shown on mac
2017-11-13 15:46:46 +09:00
Felix Rieseberg
d475eaf011
🔧 One commit per character is now hot
2017-11-07 19:44:24 -08:00
Felix Rieseberg
3dcde82485
🔧 Make this easier to read
2017-11-07 18:26:10 -08:00
Felix Rieseberg
1454783450
🔧 Check menu
for being falsy
2017-11-07 13:29:14 -08:00
Charles Kerr
1c09dede1a
singletons that are retroactively turned into EventEmitters should call the EventEmitter ctor
2017-11-01 23:05:27 -05:00
Shelley Vohr
bb04b22ec8
Merge pull request #10888 from electron/menu_refactor
...
refactor menu.js to bring it up to readability and es6 standards
2017-10-26 00:31:47 -04:00
Cheng Zhao
4db34ff092
Merge pull request #10711 from yuya-oc/did-attach-webview
...
Add did-attach-webview event
2017-10-26 10:55:50 +09:00
Shelley Vohr
bccaf56200
remove common sense comments
2017-10-25 12:23:41 -04:00
Shelley Vohr
ffd43c1886
remove quotes and const replaces
2017-10-25 10:17:41 -04:00
Shelley Vohr
7593bec687
update reviewed items
2017-10-24 19:36:06 -04:00
Shelley Vohr
e8935232b1
clean falsy statements
2017-10-24 18:52:12 -04:00
Shelley Vohr
98df153750
convert to map and remove shift param
2017-10-24 15:47:09 -04:00
Shelley Vohr
491a00fd84
clean main process desktop_capturer
2017-10-24 12:49:37 -04:00
Shelley Vohr
75f32afcd5
clean up excess code from generateGroupId
2017-10-24 00:24:57 -04:00
Shelley Vohr
f93121b226
don't reassign parameters in Menu.prototype.popup
2017-10-24 00:07:39 -04:00
Shelley Vohr
b1e707d535
abstract out switch case from Menu.prototype.insert
2017-10-23 23:46:39 -04:00
Shelley Vohr
7c0f7329d9
appease the linter overlords
2017-10-23 22:35:42 -04:00
Shelley Vohr
508b614769
remove excess code in delegate
2017-10-23 22:33:23 -04:00
Shelley Vohr
9b364d5be3
refactor menuWillShow
2017-10-23 22:22:39 -04:00
Shelley Vohr
9038987e1d
significant cleanup; all tests still passing
2017-10-23 20:04:22 -04:00
Shelley Vohr
3fc5d51a96
clean up delegate
2017-10-23 18:35:16 -04:00
Shelley Vohr
577c0042b0
update to ES6
2017-10-23 14:47:47 -04:00
Shelley Vohr
87802b2c17
initial port of things into a Menu class
2017-10-23 12:11:59 -04:00
Shelley Vohr
61a93c711c
clean up popup
2017-10-23 00:47:02 -04:00
Shelley Vohr
f9c3123f5f
clean up menuWillShow
2017-10-23 00:16:35 -04:00
Shelley Vohr
1cd53768ab
clean up indexToInsertByPosition
2017-10-22 23:57:23 -04:00
Shelley Vohr
b7ebee985b
refactor indexOfItemById
2017-10-22 23:51:33 -04:00
Yuya Ochiai
6326c6727e
Add did-attach-webview event
2017-10-07 22:52:20 +09:00
Birunthan Mohanathas
945fef8a5a
Merge pull request #10483 from jublonet/fix-double-downloads
...
Use Squirrel.Windows --checkForUpdate
2017-09-27 20:26:24 +03:00
Shelley Vohr
c932871bb1
change default to null
2017-09-26 20:35:14 -04:00
Shelley Vohr
f49f7d65a5
remove check on items instance
2017-09-26 14:38:34 -04:00
Shelley Vohr
afe033a6e1
stray semicolon fml
2017-09-26 12:10:16 -04:00
Shelley Vohr
4753ada7a9
rewrite method with only id parameter
2017-09-26 12:05:45 -04:00
Shelley Vohr
5217718d7b
conform to linter standard
2017-09-26 09:50:47 -04:00
Shelley Vohr
ea42851c9b
add first pass at getMenuItemById
2017-09-26 09:47:13 -04:00
Alexandre Lachèze
e1a232e7c8
Add support for css in content_scripts
2017-09-14 17:23:33 +09:00
J.M
6442e6b5e8
Use Squirrel.Windows --checkForUpdate
...
Avoid downloading updates twice. Fix #5057 .
2017-09-11 00:54:08 +02:00
Owais Lone
dc43dc2a13
Add support for indicators in Ubuntu Gnome Session
...
Ubuntu is switching to Gnome in 17.10 but it's not going to be the stock Gnome session. It's going to support the existing Unity APIs. Support has already landed for application indicators and likely other APIs (Launcher,etc) will be supported soon. The Ubuntu Gnome session will have `XDG_CURRENT_DESKTOP=ubuntu:GNOME` environment variable.
Ref: https://didrocks.fr/2017/08/23/ubuntu-gnome-shell-in-artful-day-7/
2017-08-25 23:25:08 +05:30
Cheng Zhao
d233fc044a
Pass dpiVertical and dpiHorizontal to print settings
2017-08-22 13:54:49 +09:00
Samuel Attard
15db4ee450
Merge pull request #10275 from electron/windowclose-exception
...
Fixing uncaught exception on window close
2017-08-19 13:58:55 +10:00
Hari Juturu
340431750b
Removing try/catch
2017-08-17 10:56:37 -07:00
Cheng Zhao
f6792c0232
Merge pull request #10264 from electron/fix-sandbox-crash-on-background-tab
...
Fix sandbox crash when opening a background tab
2017-08-17 15:57:29 +09:00
Hari Juturu
9120774c00
Fixing uncaught exception on window close
2017-08-15 14:59:48 -07:00
Kevin Sawicki
34fff57646
Grant the devtools access to the extension origins
2017-08-15 16:19:21 +03:00
Thiago de Arruda
1709b8e39d
Fix sandbox crash when opening a background tab
...
When a link is clicked with the middle mouse button, chrome opens a window with
"background-tab" disposition. This is not currently handled in sandbox mode,
causing an api::WebContents to leak leading to eventual crash(since it has no
wrapper).
Also fix the event handler for "-add-new-contents" by having it call
`event.preventDefault()` when the window creation should be cancelled.
2017-08-15 09:55:39 -03:00
John Kleinschmidt
ccdff72ee4
Merge pull request #9918 from alexstrat/add-extensions-loading-api
...
Introduce Chrome extensions management APIs independent of Dev Tools Extensions
2017-08-07 20:06:22 -04:00
Samuel Attard
59e85c0f33
Fix stupid or check in scrubber defaults
2017-07-27 17:49:05 +10:00
Kevin Sawicki
959231f766
Merge pull request #9834 from shubham2892/input-type-file-treating-packaged-app-as-directory
...
Fix treat packaged app as directory
2017-07-18 10:21:07 -07:00
Shubham
b25a1d10a2
🍎 Add treatPackageasDirectory as an option
2017-07-18 10:13:25 -07:00
Kevin Sawicki
fc53ac3d38
Always register closed listeners
2017-07-17 11:55:16 -07:00
Kevin Sawicki
86b1deedfa
Inherit enabled-sandbox in opened windows
2017-07-17 11:55:15 -07:00
Kevin Sawicki
61167ca296
Inherit nativeWindowOpen from parent window
2017-07-17 11:55:15 -07:00
Alexandre Lachèze
03ec155ecb
Oops
2017-07-05 17:34:04 +02:00
Alexandre Lachèze
cba53604eb
Introduce extensions management APIs indépendant of Dev Tools Extensions
...
- introduce API BrowserWindow#[add,remove,get]Extension
- make [add,remove, get]DevToolsExtension use newly introduced API
- make the app persist only the extensions added via
#addDevToolsExtension
2017-07-03 20:01:08 +02:00
Cheng Zhao
5fbcb6ef4e
Merge pull request #9396 from drulm/printtopdf-custom-pagesize
...
Add Math.ceil to pageSize.height and pageSize.width to printToPDF() o…
2017-06-26 14:48:44 +09:00
Kevin Sawicki
f9f697298d
Add FIXME link to #6828
2017-06-14 14:12:51 -07:00
Kevin Sawicki
626a1550dc
Send cached visibility state when guest DOM is ready
2017-06-14 14:11:38 -07:00
Boik
2e9ace6f59
Use Buffer.from instead of deprecated new Buffer
...
Use Buffer.from instead of deprecated new Buffer.
2017-06-12 16:57:42 +08:00
Vanessa Yuen
43271c162a
use includes
instead of indexOf
2017-06-09 14:45:47 -07:00
Matthias Niess
254dcdaa45
add tray icon workaround for newer Ubuntu releases ( fixes #9046 )
2017-06-09 15:22:18 +02: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
53b6ee0e3f
Merge pull request #9468 from tonyganch/9296-history-state
...
Remove page url check during `history.pushState`
2017-06-05 14:47:49 -07:00
Cheng Zhao
e82af41591
Merge pull request #9269 from electron/main-notifications
...
Notifications from the main process
2017-05-31 17:21:05 +09:00
Samuel Attard
3938373ecb
Fix linting errors and add isSupported
2017-05-30 20:27:24 +10:00
Kevin Sawicki
e735aa7dee
web-preferences -> webPreferences
2017-05-26 10:10:36 -07:00
Kevin Sawicki
9ac2cf0d44
Add comment about disablePopups setting
2017-05-26 10:10:36 -07:00
Kevin Sawicki
dbd240a7cb
Return null from native window.open when allowpopups is unset
2017-05-26 10:10:36 -07:00
Kevin Sawicki
4e9efebf47
🎨
2017-05-26 10:10:36 -07:00
Kevin Sawicki
47759a01de
Only forward events when nativeWindowOpen is set
2017-05-26 10:10:36 -07:00
Kevin Sawicki
7baf472c0f
Implement BrowserPluginGuestDelegate::CreateNewGuestWindow for nativeWindowOpen
2017-05-26 10:10:36 -07:00
Tony Ganch
3a9b035d36
Remove page url check in history.pushState
...
Current implementation of NavigationController does not allow using
`history.pushState()` if page url is not changed.
It worked by mistake in versions < 1.3.6 and got visible after fix 180a77e6
.
2017-05-23 22:42:33 +02:00
Samuel Attard
5dd4d6a961
macOS implementation of notifications in the main process
2017-05-23 02:05:13 +10:00
Kevin Sawicki
9e88d337ec
Inherit webviewTag setting from parent window
2017-05-17 13:37:23 -07:00
Thiago de Arruda
6b5bd3b6ce
Fix how rpc-server releases references after page reload
...
In addition to listening for "render-view-deleted", listen for
"ELECTRON_BROWSER_CONTEXT_RELEASE" synchronous message, which is sent by the
remote module when the page is about to be navigated.
This is required to allow child windows running in the same renderer to
correctly manage remote object references, since `render-view-deleted` is only
called when the renderer exits.
Close #9387
2017-05-16 09:05:52 -03:00
Ryohei Ikegami
7ac93045b7
Merge branch 'master' into native-window-open
2017-05-11 13:51:43 +09:00
Darrell Ulm
fa2bfd3ff5
Add Math.ceil to pageSize.height and pageSize.width to printToPDF() options to prevent error on display.
2017-05-06 19:19:31 -04:00
Kevin Sawicki
eebae82bc1
Merge pull request #9315 from electron/segmented-control-mode
...
Add mode prop to segmented touch bar control
2017-05-04 14:16:28 -07:00
Samuel Attard
718dc732ad
Add docs and add isSelected arg
2017-05-03 20:25:50 +10:00
Kevin Sawicki
fa4ec11a12
Use isSameOrigin helper when posting message
2017-05-01 08:45:38 -07:00
deepak1556
5e976be43b
remove page-title-updated workaround for #3380
2017-05-01 16:53:55 +09:00
Samuel Attard
225ccab3d2
Add mode prop to segmented touch bar control
2017-04-28 14:50:58 +10:00
Ryohei Ikegami
1d73e84a29
Merge branch 'master' into native-window-open
2017-04-27 12:03:55 +09:00
Kevin Sawicki
507f60e33e
Don't allow webPreferences to be overrideden in features string
2017-04-26 10:56:53 -07:00
Kevin Sawicki
91a1e5cdfe
Store frame to guests in map
2017-04-26 10:14:11 -07:00
Kevin Sawicki
3e2a1034af
Disable JavaScript on child when disabled on parent
2017-04-25 12:57:53 -07:00
Kevin Sawicki
6ec74060b4
Enable setting javascript and contextIsolation via window.open
2017-04-25 12:57:53 -07: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
Samuel Attard
11c7c107a9
add iconPosition property to touch bar buttons
2017-04-18 08:56:39 -07:00
Ryohei Ikegami
8dff29185b
Merge branch 'master' into native-window-open
2017-04-18 21:59:22 +09: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
Samuel Attard
bea56bbdc8
Update as per feedback
2017-04-04 13:51:38 -07:00
Samuel Attard
2fd62d090a
Allow items to be assigned to multiple popovers
2017-04-04 13:51:33 -07:00
Samuel Attard
f05dfc74da
Store parent popover in popover touch bar items
2017-04-04 13:51:13 -07:00
Kevin Sawicki
74a3a34caa
Add spec for interaction event with escape item
2017-04-04 13:14:56 -07:00
Kevin Sawicki
bbadeb62ac
Check that escape item is non-null before checking id
2017-04-04 13:12:29 -07:00
Kevin Sawicki
414540bfcb
Support passing escape item to TouchBar constructor
2017-04-04 12:50:41 -07:00
Kevin Sawicki
b24b4212c5
Make escape item a property instead of setter
2017-04-04 12:50:41 -07:00
Kevin Sawicki
21c1ddffb3
Handle change and interaction events on escape items
2017-04-04 12:50:41 -07:00
Kevin Sawicki
591cd8d073
Update window via listener when escape item changes
2017-04-04 12:50:41 -07:00
Kevin Sawicki
d596d85288
🎨
2017-04-04 12:50:41 -07:00
Samuel Attard
60cc862031
Make everything pointer like
2017-04-04 12:50:41 -07:00
Samuel Attard
4d6b0fc01b
Add a method to set the escape identifier on the touch bar
2017-04-04 12:50:41 -07:00
Kevin Sawicki
fdd36334e5
Match args style of other IPC handlers
2017-04-04 11:18:16 -07:00
Kevin Sawicki
7065123266
Wrap remote value being set as an arg
2017-04-04 11:18:16 -07:00
Kevin Sawicki
3e9014c371
Merge pull request #9099 from electron/certificate-trust
...
macOS: Add certificate trust API
2017-04-04 11:17:09 -07:00
Kevin Sawicki
2e32525e8f
Make browser window optional
2017-04-04 10:49:10 -07:00
joshaber
2749ded062
Fix c&p error
2017-04-04 11:45:27 -04:00
Ryohei Ikegami
61fa8693d2
Merge branch 'master' into native-window-open
2017-04-04 20:54:37 +09:00
joshaber
e2bda3ca0f
Use an options object for most of the params
2017-04-03 21:33:21 -04:00
Ryohei Ikegami
4a7eec8f2d
Pass app path as command line argument
2017-04-04 09:36:01 +09:00
joshaber
0b7ffd094a
Expose through the actual JS API too
2017-04-03 15:25:06 -04:00
Kevin Sawicki
fcb7cbc54a
Check name directly instead of arguments length
2017-03-30 14:03:00 -07:00
Thiago de Arruda
b3cf00a19a
Fix net module to accept non-string header values
...
This is required to be compatible with node.js http module.
2017-03-30 16:01:40 -03:00
Kevin Sawicki
57edc28b0d
Merge pull request #8880 from mst128256/2814
...
Default menu items for 'Edit' and 'Window' #2814
2017-03-29 12:31:58 -07:00
Kevin Sawicki
8b4bf1f29e
🎨
2017-03-29 12:29:36 -07:00
mst128256
6ae198a625
Empty objects within default menu replaced by nulls
2017-03-29 12:50:31 +02:00
deepak1556
3ae62615f4
net: allow controlling redirects
2017-03-28 18:46:21 +05:30
Ryohei Ikegami
9edfbab89f
Add comment why defaultPrevented = false
2017-03-28 19:58:58 +09:00
Ryohei Ikegami
de2019f6b8
Change webContents -> options.webContents
2017-03-28 19:58:23 +09:00
mst128256
9e471d8f1c
Added specs
2017-03-24 12:14:08 +01:00
Ryohei Ikegami
4e473897b7
Use ===
2017-03-24 11:08:08 +09:00
Ryohei Ikegami
6f9dbd4e04
Merge branch 'master' into native-window-open
2017-03-24 00:11:43 +09:00
Ryohei Ikegami
deba6553f5
Better preventDefault for ELECTRON_GUEST_WINDOW_MANAGER_INTERNAL_WINDOW_OPEN
2017-03-23 23:51:33 +09:00
Ryohei Ikegami
d3252e0eb1
Reuse existing event
2017-03-21 16:09:53 +09:00
Kevin Sawicki
23b235c9c7
Default async to false when object is specified
2017-03-20 20:37:52 -07:00
Ryohei Ikegami
076427673e
Fix JavaScript style
2017-03-19 18:20:10 +09:00
Ryohei Ikegami
319a7759d0
Fix ELECTRON_GUEST_WINDOW_MANAGER_INTERNAL_WINDOW_OPEN handler
2017-03-19 17:52:39 +09:00
Kevin Sawicki
f71353a4c5
Merge pull request #8939 from electron/expose-remote-to-sandbox
...
Expose remote module to sandbox
2017-03-17 09:41:59 -07:00
Thiago de Arruda
e9b955b9ec
Use remote/fs to read preload script during sandboxed setup
...
Also expose the "fs" module to preload scripts, as a shortcut to
`require('electron').remote.require('fs')`
2017-03-16 14:23:00 -03:00
Kevin Sawicki
bc31f05404
highlightedStyle -> overlayStyle
2017-03-15 09:47:07 -07:00
Kevin Sawicki
2e0e4e69bb
Drop on prefix from property names
2017-03-14 14:02:48 -07:00
Samuel Attard
a55cddaa53
Add more options
2017-03-14 18:57:57 +11:00
Kevin Sawicki
5e70adb511
Guard against only specifying select or highlight handler
2017-03-13 11:23:27 -07:00
mst128256
76ee7fda2b
Fixed linting
2017-03-13 14:26:34 +01:00
Samuel Attard
a85ae27d68
Fix linting
2017-03-13 11:00:10 +11:00
Samuel Attard
25a231fc50
Initial NSScrubber implementation
2017-03-13 10:51:12 +11:00
Samuel Attard
bfe63d7a88
Fix linting
2017-03-10 17:56:26 +11:00
Samuel Attard
1c027c526b
Add segmented control implementation
2017-03-10 17:40:39 +11:00
Thiago de Arruda
44bd93589a
Refactor electron exports to keep module list in separate files
2017-03-09 19:08:01 -03:00
mst128256
8aba640250
added default menu items for 'Edit' and 'Window' #2814
2017-03-09 16:01:33 +01:00
Kevin Sawicki
6240e30be1
Default hasUserGesture to false when null
2017-03-06 10:51:17 -08:00
Samuel Attard
095e79b043
Ensure the callback is a function when executing JS
2017-03-06 10:46:20 -08:00
Kevin Sawicki
2680ee9f8f
Add support for setting TouchBarLabel text color
2017-03-03 15:14:51 -08:00
Kevin Sawicki
c349aeff80
Add initial touch bar specs
2017-03-03 14:00:39 -08:00
Kevin Sawicki
002369576f
Add initial touch bar docs
2017-03-03 14:00:39 -08:00
Kevin Sawicki
81ecd4499c
Make exported properties match class names
2017-03-03 14:00:39 -08:00
Kevin Sawicki
eb03ab561d
Make config optional
2017-03-03 14:00:39 -08:00
Kevin Sawicki
ce12dcd3b4
Add live popover icon property
2017-03-03 14:00:39 -08:00
Kevin Sawicki
a34f9d3583
Support icon property to match MenuItem
2017-03-03 14:00:39 -08:00
Kevin Sawicki
d1edd80ef8
Use NSTouchBar itemForIdentifier to lookup existing item
2017-03-03 14:00:39 -08:00
Kevin Sawicki
8d716e8b17
Register item after validating
2017-03-03 14:00:39 -08:00
Kevin Sawicki
76f112ffc5
Only export TouchBar to start
2017-03-03 14:00:39 -08:00
Kevin Sawicki
5f9e9d4b36
Add move live updating properties
2017-03-03 14:00:39 -08:00
Kevin Sawicki
61aa9bbff4
Add support for spacer items
2017-03-03 14:00:39 -08:00
Kevin Sawicki
f153d08297
Support setting the initial/available colors
2017-03-03 14:00:39 -08:00
Kevin Sawicki
f9dd91d54d
Add static helper to bind touch bar to window
2017-03-03 14:00:39 -08:00
Kevin Sawicki
51f1c5a557
Use SetTouchBar withe empty vector instead of DestroyTouchBar
2017-03-03 14:00:39 -08:00
Kevin Sawicki
d5dbe3676e
Add window helpers to TouchBar class
2017-03-03 14:00:39 -08:00
Kevin Sawicki
98f5858b11
Initial support for dynamic properties
2017-03-03 14:00:38 -08:00
Kevin Sawicki
cbb6f8c33e
Store event listeners in each TouchBar class
2017-03-03 14:00:38 -08:00
Kevin Sawicki
eff49ad19c
Return early when touchBar is null
2017-03-03 14:00:38 -08:00
Kevin Sawicki
9bdca3bbfb
Remove linter warnings
2017-03-03 14:00:38 -08:00
Samuel Attard
dd09c91cf2
initial work on updating touch bar item config without rerender
2017-03-03 14:00:38 -08:00
Samuel Attard
15dcc314d3
Export the TouchBar items as their own props on the electron main export
2017-03-03 14:00:38 -08:00
Samuel Attard
4f0caffc3b
Fix JS linting
2017-03-03 14:00:38 -08:00
Samuel Attard
43cc5079d8
Implement group item
2017-03-03 14:00:38 -08:00
Samuel Attard
269d899a99
Implement popOver item type (woo hoo it worked)
2017-03-03 14:00:38 -08:00
Samuel Attard
c92c4138a8
Add Slider item type and add options to the button type
2017-03-03 14:00:38 -08:00
Samuel Attard
18c7c3ece8
Make label and colorpicker types work
2017-03-03 14:00:38 -08:00
Samuel Attard
7857c83ea1
Make dynamic buttons work along with click events
2017-03-03 14:00:38 -08:00
Kevin Sawicki
7a99f0435b
Fix typo in comment
2017-02-28 08:45:39 -08:00
Kevin Sawicki
bb1a981a01
Mention variable name to update
2017-02-28 08:45:39 -08:00
Kevin Sawicki
e8a79cb88d
Don't require browser process module from renderer
...
This can cause issues when it is accessed from the
require cache or module tree since the getters throw
errors when called.
2017-02-28 08:45:39 -08:00
Kevin Sawicki
1d84d83fd4
Forward webview visibility change events from browser process
2017-02-28 08:23:00 -08:00
Kevin Sawicki
739f3ed102
Popup pepper menu in owner browser window
2017-02-24 08:39:22 -08:00
Kevin Sawicki
c951e253c6
Default to focused window whenever param is null/undefined
2017-02-24 08:39:22 -08:00
Kevin Sawicki
3e05350d6b
Check that window is non-null before accessing constructor prop
2017-02-24 08:39:22 -08:00
Kevin Sawicki
d0b07d5c36
Check that x is non-null
2017-02-22 10:49:25 -08:00
Kevin Sawicki
6a023dc4fe
Add Menu.closePopup API on macOS
2017-02-22 10:30:28 -08:00
Kevin Sawicki
4430927f98
Add async option to menu.popup
2017-02-22 10:30:28 -08:00
deepak1556
71fd3e807c
use sync zoom api with guest view manager webpreferences
2017-02-18 01:34:32 +05:30
deepak1556
203a920c64
fix signature of zoom getter apis
2017-02-18 01:34:32 +05:30
Samuel Attard
17fe5efa13
Fix linting
2017-02-13 08:23:53 -08:00
Samuel Attard
e45d8079b8
Add support for a noResolveAliases property
2017-02-13 08:23:53 -08:00
deepak1556
63c0e4cbb1
Add ZoomController to manager zoom changes for webcontents
2017-02-12 00:49:17 +05:30
deepak1556
b27c94368d
webContents: set zoom levels with HostZoomMap
2017-02-12 00:49:17 +05:30
Kevin Sawicki
acedc3e726
Merge pull request #8584 from electron/new-webview-event
...
Add will-attach-webview event
2017-02-09 12:40:11 -08:00
Kevin Sawicki
941f6c63e3
🎨 Use embedder var for clarity
2017-02-09 11:48:45 -08:00
Kevin Sawicki
a7c050107b
Remove guest from will-attach-webview event
2017-02-09 11:47:45 -08:00
Kevin Sawicki
8b0d3a2567
Emit attach params as well in event
2017-02-09 11:45:07 -08:00
Kevin Sawicki
46f1a49594
new-webview -> will-attach-webview
2017-02-09 11:45:07 -08:00
Kevin Sawicki
7eda8fbdfb
Add new-webview event that can be prevented
2017-02-09 11:45:07 -08:00
Kevin Sawicki
5130ad24eb
🎨
2017-02-09 11:30:17 -08:00
Kevin Sawicki
f7f4de36af
Merge remote-tracking branch 'origin/master' into macos-open-save-panel
2017-02-09 11:25:05 -08:00
Kevin Sawicki
867bb5a94e
Add DialogSettings helper struct
2017-02-09 10:13:11 -08:00
Birunthan Mohanathas
c8c11e68c6
Add support for checkbox with dialog.showMessageBox
...
This adds the `checkboxLabel` and `checkboxChecked` options to display a
checkbox in the message box. Fixes #6048 .
2017-02-09 09:03:54 -08:00
Tan Wang Leng
347dc835b5
Fix code formatting
2017-02-09 21:51:11 +08:00
Tan Wang Leng
9423143211
Change the default value of showsTagField to true
...
The default value of showsTagField in macOS's NSSavePanel is true.
Therefore, in order to follow the standard behavior and not break
backwards-compatibility, let's change the default value of
showsTagField to true.
Reference:
https://developer.apple.com/reference/appkit/nssavepanel/1525589-showstagfield?language=objc
2017-02-09 21:01:40 +08:00
Tan Wang Leng
36209ddd90
🍎 Add additional options for Mac's open dialog
...
Support an additional attributes available in macOS's NSOpenPanel:
message.
2017-02-09 20:10:57 +08:00
Tan Wang Leng
1d612a12a1
🍎 Add additional options for Mac's save dialog
...
Support additional attributes available in macOS's NSSavePanel: message,
nameFieldLabel and showsTagField
2017-02-09 20:10:57 +08:00
Kevin Sawicki
70178adb6e
Use object for verification request
2017-02-08 11:59:43 -08:00
Kevin Sawicki
5245d42d15
Only document deprecation for now
2017-02-08 11:59:43 -08:00
Greg Nolle
e29b64a18a
modify CertVerifier Class
...
* respond to multiple similar verification requests.
* accept net error result as callback response.
2017-02-08 11:59:43 -08:00
Cheng Zhao
3024d0563f
There were new defaultPrintingSetting fields added
2017-02-06 10:34:29 -08:00
Kevin Sawicki
fb08f56fc8
Add forcereload menu item role
2017-02-03 09:39:41 -08:00
Kevin Sawicki
9fef6a1fd7
Add support for FOS_CREATEPROMPT option
2017-02-02 08:51:10 -08:00
Kevin Sawicki
56a8eb3a94
Check that sender is a WebContents instance
2017-01-25 12:36:55 -08:00
Charlie Hess
ddedcf22d1
Move console.warn inside the helper method.
2017-01-25 12:36:55 -08:00
Charlie Hess
f6410d3b77
Assert that listener count decreases after a remove event.
2017-01-25 12:36:55 -08:00
Charlie Hess
c213971a2d
Write a warning instead of crashing.
2017-01-25 12:36:55 -08:00
Charlie Hess
bc2f1e8199
Argh.
2017-01-25 12:36:55 -08:00
Charlie Hess
63d8137da2
Use EventEmitter public methods instead of _events.
2017-01-25 12:36:55 -08:00
Kevin Sawicki
45986405b8
Assert remote event names
2017-01-25 12:36:55 -08:00
Charlie Hess
a0b24bd155
Simplify.
2017-01-25 12:36:55 -08:00
Charlie Hess
67f7a60524
Review CommentZ
2017-01-25 12:36:55 -08:00
Charlie Hess
41ea169784
L I N T I N G P T I I
2017-01-25 12:36:55 -08:00
Charlie Hess
49c6446267
L I N T I N G
2017-01-25 12:36:55 -08:00
Charlie Hess
26e3ad3c2e
Display more information about remote event crashes.
...
If possible, we'll dig into the function args and print the ones that are attached remotely.
2017-01-25 12:36:55 -08:00
Kevin Sawicki
d6eb0d6629
Implement insertCSS on webFrame
2017-01-19 09:05:59 +02:00
Kevin Sawicki
de4be56b09
Use internal open event name with fully parsed options
2017-01-16 12:38:16 -08:00
Kevin Sawicki
3f7b3c4bd7
Implement window overrides in main context
2017-01-16 12:38:16 -08:00
Kevin Sawicki
95054f443f
Enable context isolation on child windows
2017-01-16 12:38:16 -08:00
Javan Makhmali
a64bdbd306
Add "context-menu" DOM event to <webview>
2017-01-13 17:04:09 -05:00
Kevin Sawicki
1944fdc962
Track visited parents and null out cycles
2017-01-06 09:58:40 -08:00
Kevin Sawicki
5f862effaa
Access directly on options object
2017-01-06 09:17:32 -08:00
Kevin Sawicki
eb533e04b9
Add option to normalize dialog access keys
2017-01-06 08:56:24 -08:00
Kevin Sawicki
2bd8ef83d1
Use != null to handle undefined
2016-12-12 16:25:56 -08:00
Daniel Pham
4b53cd9c3c
🐛 Allow buttons to be optional in 'showMessageBox'
2016-12-12 13:25:32 -05:00
Kevin Sawicki
820fb3b82b
Guard against no devtools web contents
2016-12-06 10:36:59 -08:00
Kevin Sawicki
635c909aab
Implement window.alert/confirm/close in main process
2016-12-02 13:40:31 -08:00
Kevin Sawicki
ec43dd067c
Co-locate with other private methods
2016-12-02 10:41:42 -08:00
Kevin Sawicki
f3d391e3f2
Don't clear until render view is deleted for process id
2016-12-02 10:41:42 -08:00
Kevin Sawicki
07f99c06ea
Don't write back to passed in options object
2016-12-01 17:16:18 -08:00
Kevin Sawicki
af555bd879
Use spread syntax instead of apply
2016-12-01 14:56:00 -08:00
Kevin Sawicki
c8ff67ab75
Use spread syntax instead of function apply
2016-12-01 14:56:00 -08:00
Kevin Sawicki
36371357cd
buttonLabel -> Button label for consistency
2016-12-01 14:16:33 -08:00
Kevin Sawicki
3a29555772
Access URL through webContents directly
2016-11-28 10:56:23 -08:00
Cheng Zhao
bbaab755e3
Merge pull request #8049 from electron/prevent-remove-all-ipc
...
Throw an error when users attempt to remove all listeners from the IPC modules
2016-11-27 14:29:49 +08:00
Kevin Sawicki
0134d62681
Always use guest contents for canAccessWindow check
2016-11-23 12:01:09 -08:00
Kevin Sawicki
9a5df9da41
Expose setVisualZoomLevelLimits on webContents and <web-view>
2016-11-22 08:07:55 -08:00
Samuel Attard
db729b5b52
Throw an error when users attempt to remove all listeners from the IPC modules
2016-11-22 18:30:58 +11:00
Paul Betts
e2649ce7d8
Add new method to set layout-based zoom level limit
2016-11-21 14:59:55 -05:00
Kevin Sawicki
996ddba715
Add rpc error for ELECTRON_BROWSER_MEMBER_GET
2016-11-17 12:29:23 -08:00
Kevin Sawicki
88959079bd
Add toggledevtools menu item role
2016-11-17 10:57:20 -08:00
Kevin Sawicki
0698b5f1be
Add reload menu item role
2016-11-17 10:57:20 -08:00
Kevin Sawicki
28c39d5151
Merge pull request #8003 from electron/missing-remote-object-error
...
Throw custom error when remote object is missing from registry
2016-11-17 10:57:03 -08:00
Kevin Sawicki
5427ec4844
Negate code as per node docs
2016-11-17 10:22:29 -08:00
Kevin Sawicki
aef898ad93
Set errno on RPC error
2016-11-17 10:09:29 -08:00
Kevin Sawicki
c05ca68811
Throw custom error when remote object is missing from registry
2016-11-17 09:55:13 -08:00
Cheng Zhao
3834f0c6a6
Merge pull request #7974 from electron/chrome-runtime-response-callback
...
Implement chrome.runtime.onMessage response callback
2016-11-17 13:01:38 +09:00
Kevin Sawicki
651eaec64f
Use sender.id instead of sender.webContents.id
2016-11-16 07:50:30 -08:00
Kevin Sawicki
92577c37c8
Don't log blocked messages when guestWindow is null
2016-11-16 07:50:30 -08:00
Cheng Zhao
18fca785c4
Print error messages
2016-11-16 07:50:30 -08:00
Cheng Zhao
a1066617a8
Do permission check when calling guest window methods
2016-11-16 07:50:30 -08:00
Samuel Attard
01005688b6
Implement chrome.runtime.onMessage response callback
2016-11-15 21:30:40 +11:00
Kevin Sawicki
50019f39e9
🎨
2016-11-11 10:54:01 -08:00
deepak1556
5f596b22c7
specify content type depending on post data
2016-11-11 10:54:01 -08:00
deepak1556
2d7ceae320
fix js lint error
2016-11-11 10:53:00 -08:00
deepak1556
0410a184ce
webContents: handle POST navigation for new windows
2016-11-11 10:53:00 -08:00
Kevin Sawicki
133ad6e18b
Only set size and load URL on first attach
2016-11-07 13:42:36 -08:00
Kevin Sawicki
a737732521
Only remove guest from embedder when view id changes
2016-11-07 13:42:36 -08:00
Kevin Sawicki
73774f21b7
🎨
2016-11-07 08:28:02 -08:00
Kevin Sawicki
3c18de9c5a
Only return when guestInstance is non-null
2016-11-07 08:25:01 -08:00
Kevin Sawicki
76f96bd99c
Destructure requires
2016-11-07 08:25:01 -08:00
Kevin Sawicki
48bcad87c2
Use template strings
2016-11-07 08:25:01 -08:00
Kevin Sawicki
712b15286c
Use let/const instead of var
2016-11-07 08:25:01 -08:00
Kevin Sawicki
3053be345b
Remove unneeded returns
2016-11-07 08:25:01 -08:00
Kevin Sawicki
8e203592e2
🎨 Remove extra returns
2016-11-03 09:51:01 -07:00
Samuel Attard
9f18a6e65c
Use ES6 template strings, fix docs and remove _ERROR_ IPC event
2016-11-03 09:33:47 -07:00
Samuel Attard
857e1da6a3
Make executeJavaScript return a Promise so that caught errors can be sent to the caller
2016-11-03 09:33:47 -07:00
Brendan Forster
651b0c0f82
fixed a couple of typos
2016-10-31 08:59:26 -07:00
Cheng Zhao
dfefa00a50
Merge pull request #7577 from thomsonreuters/net_module
...
net module
2016-10-31 10:31:56 +09:00
ali.ibrahim
bdb3f4d4cb
Fixing code review issues: adding some test cases for partition/session options.
2016-10-25 16:19:26 +02:00
ali.ibrahim
b44d5290e2
Fixing code review issues: adding a partition options and making the session option only takes Session objects.
2016-10-25 15:47:54 +02:00
ali.ibrahim
61278f9ace
Fixing code review issues.
2016-10-25 12:41:01 +02:00
Kevin Sawicki
3aad6a0c99
Use forEach and destructuring for parsing features
2016-10-25 10:31:50 +09:00
Paul Frazee
f35536bdc5
factor out parse-features-string.js
2016-10-24 20:21:42 -05:00
ali.ibrahim
7f8b180f70
Fixing authentication cancel with null/undefined credentials.
2016-10-20 11:43:26 +02:00
ali.ibrahim
c198828e58
Adding gc tests: fixing a memory leak with C++ URLRequest objects.
2016-10-17 19:02:25 +02:00
Paul Frazee
e7962c7ba2
fixes and tests for webview 'webpreferences' attr
2016-10-14 18:04:33 -05:00
Paul Frazee
194b14100e
add the 'webpreferences' attribute to webviews
2016-10-14 17:16:39 -05:00
ali.ibrahim
0e13b8dd01
making the net module usable only after the ready event.
2016-10-14 17:57:37 +02:00
ali.ibrahim
6f5b0a28c5
Fixing code review issues: function call formatting, renaming JS member variables, refactoring response headers conversion.
2016-10-13 17:14:23 +02:00
Samuel Attard
a9d5699a52
Update standard to v8 to be inline with standard-markdown
2016-10-13 12:46:00 +11:00
ali.ibrahim
ae1c33b863
fixing linter issues.
2016-10-12 14:54:32 +02:00
ali.ibrahim
a5c508d2d7
Adding abort, webRequest interception and creation tests.
2016-10-12 14:54:31 +02:00
ali.ibrahim
4eb9fc1bb6
Adding chunked uploading test.
2016-10-12 14:54:29 +02:00
ali.ibrahim
9b94dfcbdc
Adding basic http tests, fixing issues in ClientRequest constructor.
2016-10-12 14:54:29 +02:00
ali.ibrahim
42bae9d71d
Making the HTTP response a full-fledged Readable stream.
2016-10-12 14:54:27 +02:00
ali.ibrahim
ec1fc5a17b
Implementing error, close, finish, abort events management.
2016-10-12 14:54:24 +02:00
ali.ibrahim
42adb2afd4
Fixing lint-js issues.
2016-10-12 14:54:22 +02:00
ali.ibrahim
08947682b0
Implementing abort workflow, emitting error events.
2016-10-12 14:54:21 +02:00
ali.ibrahim
cbbc4376ca
Adding support for upload chunked encoding.
2016-10-12 14:54:20 +02:00
ali.ibrahim
9498a5738a
Refactoring net module, adding a ClientRequest and IncomingMessage classes.
2016-10-12 14:54:20 +02:00
ali.ibrahim
fcaf9cb031
Some code cleaning.
2016-10-12 14:54:19 +02:00
ali.ibrahim
f7525d7877
Adding support for POST requests.
2016-10-12 14:54:18 +02:00
ali.ibrahim
2b3b41d5f9
Implementing authentication callback.
2016-10-12 14:54:18 +02:00
ali.ibrahim
2d9d4af98d
Implementing URLRequest API, getting response body.
2016-10-12 14:54:17 +02:00
ali.ibrahim
81eab9887b
Adding URLResponse to emit response events, implementing status code.
2016-10-12 14:54:16 +02:00
ali.ibrahim
7521aeea09
Implement URLRequest::Delegate, handle thread sync.
2016-10-12 14:54:15 +02:00
ali.ibrahim
e8d4abe78f
Adding net module and URLRequest class.
2016-10-12 14:54:15 +02:00
Zeke Sikelianos
d4a8a64ba7
Merge pull request #7498 from electron/custom-props-in-menu-item-constructor
...
Preserve custom properties passed to MenuItem constructor
2016-10-11 14:24:13 -07:00
Zeke Sikelianos
8aaf029e55
remove unused var
2016-10-10 15:38:27 -07:00
Zeke Sikelianos
b575055d7e
inherit user-specific MenuItem properties more safely
2016-10-10 14:40:49 -07:00
Zeke Sikelianos
2cd10d339f
remove duplicated prop copying
2016-10-10 11:07:01 -07:00
Samuel Attard
09e5035ab5
Default webPreferences to empty object always
2016-10-07 11:45:13 +11:00
Zeke Sikelianos
b7e078e98d
sanitize MenuItem options
2016-10-06 14:37:13 -07:00
Zeke Sikelianos
16b3962b66
preserve custom properties passed to MenuItem constructor
2016-10-05 12:24:08 -07:00
Michael Vasseur
3dd41bc09a
Fix errors
2016-10-05 11:46:55 +02:00