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
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