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
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
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
e8935232b1
clean falsy statements
2017-10-24 18:52:12 -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
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
J.M
6442e6b5e8
Use Squirrel.Windows --checkForUpdate
...
Avoid downloading updates twice. Fix #5057 .
2017-09-11 00:54:08 +02:00
Cheng Zhao
d233fc044a
Pass dpiVertical and dpiHorizontal to print settings
2017-08-22 13:54:49 +09: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
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
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
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
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
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
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
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
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
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
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
mst128256
9e471d8f1c
Added specs
2017-03-24 12:14:08 +01:00
Kevin Sawicki
23b235c9c7
Default async to false when object is specified
2017-03-20 20:37:52 -07: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
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
b27c94368d
webContents: set zoom levels with HostZoomMap
2017-02-12 00:49:17 +05:30