Commit graph

692 commits

Author SHA1 Message Date
Samuel Attard
34452ee69e
feat: expose executeJavaScriptInIsolatedWorld on webContents (#21190)
* feat: expose executeJavaScriptInIsolatedWorld on webContents

* Apply suggestions from code review

Co-Authored-By: loc <andy@slack-corp.com>
2019-11-22 15:33:55 -08:00
Jeremy Apthorp
4f1536479e
fix: implement 'login' event for net.ClientRequest (#21096) 2019-11-14 10:01:18 -08:00
Jeremy Apthorp
034f4d5734
fix: implement 'login' event for WebContents (#20954) 2019-11-11 09:47:01 -08:00
Samuel Attard
5b7382765c
feat: allow TouchBarButton instances to be disabled (#20945)
* feat: allow TouchBarButton instances to be disabled

* Update touch-bar-button.md
2019-11-05 15:56:36 -08:00
Milan Burda
01e18c2fc3 fix: cannot access nativeTheme via electron.remote (#20938) 2019-11-04 14:17:03 -08:00
Milan Burda
ee7ce3954a fix: don't export __esModule = true by electron.ts (#20939) 2019-11-04 14:16:42 -08:00
Milan Burda
0c870775c4 fix: deprecation warnings in Electron code (#20793) 2019-10-29 13:16:10 +09:00
Milan Burda
bd5a5b3ae6 fix: properly generate requestID in webContents.printToPDF() (#20769) 2019-10-29 11:36:29 +09:00
Electron Bot
b6246dcf12 chore: bump chromium to f5b345dd470f14eef6e44732ccf23 (master) (#20649) 2019-10-28 15:12:35 -07:00
Alecyrus
825e67140e feat: support fitToPageEnabled and scaleFactor (#20436)
* fix: support fitToPageEnabled and scaleFactor

Support fitToPageEnabled and scaleFactor in  `WebContents.printToPDF()`

* fix: change default value of scaleFactor
2019-10-18 09:40:19 +09:00
Milan Burda
b92163d226 refactor: take advantage of structured clone algorithm in the remote module (#20427) 2019-10-10 09:59:08 -04:00
Shelley Vohr
c16a186de0 feat: improve TouchBarButton accessibility (#20454) 2019-10-08 11:13:57 -04:00
Milan Burda
ead8f2bbcd fix: BrowserWindow.fromWebContents() can return null (#19983) 2019-09-27 13:07:55 +02:00
Samuel Attard
660e566201
fix: don't expose nativeTheme in the renderer process (#20139)
Exposing these in the renderer didn't make sense as they weren't backed
by the same instance / value store.  This API should be browser only
especially now that we have nativeTheme.themeSource.  Exposing in
//common was a mistake from the beginning.
2019-09-16 14:23:13 -07:00
Milan Burda
81e9dab52f refactor: replace ipcRendererUtils.invoke() with ipcRendererInternal.invoke() (#19574) 2019-08-23 15:45:50 -07:00
Milan Burda
7825d043f2 refactor: unify module-list format and exports/electron (#19697) 2019-08-23 11:18:58 +02:00
Shelley Vohr
6a76540cb6 fix: return type in open/save dialogs (#19781) 2019-08-16 08:55:01 -07:00
Samuel Attard
efa1818cb4
feat: add new nativeTheme API (#19656)
* feat: add new nativeTheme API

* chore: deprecate and clean up old systemPreferences theme APIs in favor of new nativeTheme module

* chore: clean up and deprecate things per feedback

* chore: add tests for deprecate and clean up invert impl

* build: when is a boolean not a boolean???
2019-08-14 13:42:55 -07:00
Shelley Vohr
28466a39d8
feat: add property customization to save dialogs (#19672) 2019-08-13 13:40:07 -07:00
Shelley Vohr
b5798326e8
feat: add dontAddToRecent to windows showOpenDialog (#19669) 2019-08-13 08:48:22 -07:00
Shelley Vohr
a5f87cee6b
doc: add missing MenuItem roles (#19329) 2019-07-31 14:13:56 -07:00
Micha Hanselmann
47a38daee2 feat: migrate custom macOS tray view to native one (#18981)
* restore stash

revert

some things work others dont

tracking area for rescue

manual popup

restore drag n drop

cleanup

* fix: make tray not block main process (#18880)

* fix: make tray not block main process

* make AtomMenuModel refcounted

* add support for ansi codes in title

add remove TODOs

* chore: use ScopedPumpMessagesInPrivateModes in tray (#18977)

* chore: use ScopedPumpMessagesInPrivateModes in tray

* revert refcounting of AtomMenuModel

* Prefer WeakPtr for posting tasks to handle unexpected destruction

* cleanup .h

* cleanup .mm

* add imports

add missing include

* fix: crash when tray popup called twice (#18999)

* remove highlightMode and TODOs

* remove unnecessary copy
2019-07-31 10:52:50 -07:00
Shelley Vohr
aaca9011ae
fix: [wc|bw]-created events do not emit an event object (#19465)
* fix: emit real Event instead of empty object in [wc|bw]

* chore: add ability to emit empty events
2019-07-29 13:54:37 -07:00
Samuel Attard
db3cf52add
docs: add support for readonly,deprecated and platform doc annotations (#19478) 2019-07-26 16:12:59 -07:00
Jeremy Apthorp
477661d0e4
feat: allow setting capture mode and max file size in netLog API (#19215) 2019-07-25 16:06:39 -07:00
Milan Burda
103b38650f feat: add memory to app.getAppMetrics() (#18831) 2019-07-23 13:41:58 -07:00
Jeremy Apthorp
355b307618 test: move MenuItem spec to main process (#19235)
* test: move MenuItem spec to main process

* spec: fix errant default accel test

* Update menu-item-roles.js

* Update api-menu-item-spec.ts
2019-07-16 12:54:18 -07:00
Micha Hanselmann
1f70dfbffd chore: deprecate setHighlightMode (#19202) 2019-07-11 10:11:46 -05:00
Micha Hanselmann
06d48514c6 add toolTip property for MenuItem (#19099) 2019-07-11 17:56:22 +09:00
Jeremy Apthorp
d1292833e9 chore: remove unused BrowserWindow.fromDevToolsWebContents (#19090) 2019-07-03 12:07:47 -07:00
Shelley Vohr
8782d06ed6
feat: convert webContents primitives to properties (#18998)
* feat: convert webContents primitives to properties

* address feedback from review
2019-07-03 08:57:10 -07:00
Heilig Benedek
5a08522b98 feat: add removeInsertedCSS (#16579) 2019-06-17 11:39:35 -04:00
Milan Burda
deebde66f9 feat: make async webContents / <webview> methods return a Promise (#18792) 2019-06-17 12:10:02 +03:00
Jeremy Apthorp
7b26048d9e
test: unflake some net specs (#18782) 2019-06-14 16:26:07 -07:00
Shelley Vohr
bfcce8aa27
refactor: pass MessageBox params as a struct (#18732)
Historically, we've been passing in all MessageBox parameters individually, which makes augmenting or improving MessageBox functionality challenging because to change or add even one argument requires a huge cascade of argument changes that leaves room for errors.

For other file dialog related APIs, we use a struct (DialogSettings), and so this PR takes a similar approach and refactors MessageBox parameters into a struct (MessageBoxSettings) which we then use to simplify argument passing and which will enable us to more quickly iterate and improve upon functionality in the future.
2019-06-14 08:26:25 -07:00
Milan Burda
da58ac7c20 refactor: use app.commandLine.getSwitchValue() for parsing user-data-dir (#18764) 2019-06-13 16:03:02 -07:00
Shelley Vohr
a0b1f4fe0b
refactor: convert browser window state fns to props (#18618) 2019-06-04 22:44:16 -07:00
Shelley Vohr
52c76d737a
refactor: make autoHideMenuBar a property on BrowserWindows (#18555) 2019-06-03 09:09:47 -07:00
Samuel Attard
bc527f6b51
refactor: bundle the browser and renderer process electron code (#18553)
* refactor: bundle the browser and renderer process electron code

* Bundles browser/init and renderer/init
  * Improves load performance of main process by ~40%
  * Improves load performance of renderer process by ~30%
* Prevents users from importing our "requiring" our internal logic such
as ipc-main-internal.  This makes those message buses safer as they are
less accessible, there is still some more work to be done though to lock
down those buses completely.
* The electron.asar file now only contains 2 files, as a future
improvement maybe we can use atom_natives to ship these two files
embedded in the binary
* This also removes our dependency on browserify which had some strange
edge cases that caused us to have to hack around require-order and
stopped us using certain ES6/7 features we should have been able to use
(async / await in some files in the sandboxed renderer init script)

TLDR: Things are faster and better :)

* fix: I really do not want to talk about it

* chore: add performance improvements from debugging

* fix: resolve the provided path so webpack thinks it is absolute

* chore: fixup per PR review

* fix: use webpacks ProvidePlugin to keep global, process and Buffer alive after deletion from global scope for use in internal code

* fix: bundle worker/init as well to make node-in-workers work

* chore: update wording as per feedback

* chore: make the timers hack work when yarn is not used
2019-06-02 13:03:03 -07:00
Jeremy Apthorp
c436997840
feat: add ipcRenderer.invoke() (#18449) 2019-05-31 10:25:19 -07:00
Shelley Vohr
1e3e5a6619
refactor: set appLevelAppearance prop on systemPreferences (#18477)
* refactor: set appLevelAppearance prop on systemPreferences

* ensure backwards compat is tested
2019-05-30 17:12:46 -07:00
Jeremy Apthorp
815b9d7707
feat: [contentTracing] allow calling stopTracing() with no arguments (#18411) 2019-05-28 14:15:42 -07:00
Jeremy Apthorp
646f572b77
refactor: netLog directly uses network service (#18289) 2019-05-23 15:31:38 -07:00
Shelley Vohr
1a2ab11c90 fix: set window to null when no window is passed (#18240)
* fix: set window to null when no window is passed

* add new specs for dialog

* fix process blocking for showMessageBox
2019-05-21 09:08:22 -05:00
Milan Burda
e81afed66d chore: remove dead code (#18370) 2019-05-21 15:36:22 +09:00
Milan Burda
76783e2a90 fix: 'page-title-updated' event forwarding + documentation (#18270) 2019-05-16 12:33:16 +03:00
Milan Burda
019b31d084 chore: remove deprecated APIs (#18159) 2019-05-09 14:48:10 -04:00
Samuel Attard
a96b6e2c96 build: move to the new docs parser (#18103)
* build: move to the new docs parser

* chore: remove the bad getTitle param doc

* build: update parser/ts gen deps + fix some docs issues highlighted by GH desktop

* chore: apply suggestions from code review

Co-Authored-By: MarshallOfSound <samuel.r.attard@gmail.com>

* chore: update docs for accidentally removed things

* chore: update docs/api/command-line.md

Co-Authored-By: MarshallOfSound <samuel.r.attard@gmail.com>
2019-05-06 08:29:01 -07:00
Milan Burda
6f5c850d60 refactor: add emitCustomEvent() helper (#17960) 2019-05-01 09:07:57 -04:00
Shelley Vohr
8d83518f9a
refactor: make name a prop on app (#17701)
Update app.name to be a property on app.
2019-04-30 13:55:33 -07:00