Commit graph

2110 commits

Author SHA1 Message Date
shelley vohr
12d4f984f3
Merge pull request #11754 from electron/menu-events
Add and document menu events
2018-01-29 12:40:57 -05:00
Shelley Vohr
bef4c84799
turn class into observer 2018-01-27 10:40:50 -05:00
Shelley Vohr
3399480304
first pass at menu event emission 2018-01-27 09:35:58 -05:00
Heilig Benedek
df3d94b20d Remove web_contents_impl() helper to clarify code and remove unnecessary guard 2018-01-26 10:30:20 +01:00
Heilig Benedek
406f171c88 Move OSR api to OsrWCV to allow api calls to take effect sooner 2018-01-25 16:11:56 +01:00
Cheng Zhao
0207aebad1
Merge pull request #11664 from loc/use_directx_capturer_win
Use same screen capturer settings for thumbnails as getUserMedia
2018-01-24 14:38:32 +09:00
Aleš Pergl
c49cb29ddf Disallow launching unknown apps via browser client.
CVE-2018-1000006
2018-01-22 16:49:30 -06:00
Andy Locascio
ae65c26469 fix lint 2018-01-17 17:04:57 -08:00
Andy Locascio
8253e50e9c use same settings for screen thumbnails as chrome does webrtc capturing
Following along from http://crrev.com/2961193002: make sure the
thumbnail capturers initialize with the same settings as the capturer
from a getUserMedia request does. Otherwise, there is no guarentee that the
sources on Windows will match.
2018-01-17 15:55:10 -08:00
Charles Kerr
fa43cb6ef0
Merge pull request #11557 from josimi/master
Fixes hexColorDWORDToRGBA for transparent colors
2018-01-11 10:28:53 -06:00
Cheng Zhao
a883d3d50d Fix build on other platforms 2018-01-10 17:39:16 +09:00
Cheng Zhao
e77ddd3221 Pass multiple transactions at the same time
This follows the design of SKPayment API.
2018-01-10 17:19:44 +09:00
Cheng Zhao
2dd545ebda Payment should be part of Transaction
This follows The SKPayment API, and makes our JS wrappers easier to
implement.
2018-01-10 17:06:27 +09:00
Cheng Zhao
133bef3deb Turn addTransactionListener into transaction-updated event 2018-01-10 16:57:52 +09:00
Cheng Zhao
ac6f895f64 Turn InAppPurchase into an EventEmitter 2018-01-10 16:37:05 +09:00
Cheng Zhao
5f1c76c688 Reorgnize the platform-specific files 2018-01-10 14:45:42 +09:00
Adrien Fery
f3ae566164 Add in-app purchase for MacOS 2018-01-10 13:14:18 +09:00
Jonathon Simister
9c018744f4 Fixes hexColorDWORDToRGBA for transparent colors 2018-01-09 11:07:29 -08:00
Cheng Zhao
952928dc79 Singleton must be created on request
The creation of singleton relies on the `userData` dir, which can be
changed by user, we have to ensure singleton uses the `userData` dir set
by user.
2018-01-03 18:59:12 +09:00
deepak1556
14de22a8c7 Use cached application locale as default for generating accept-lang header 2018-01-02 17:33:46 +05:30
Cheng Zhao
82452e7924 win: Fix assertion when getting printers 2018-01-02 16:54:36 +09:00
deepak1556
769fbd0d3b REVIEW: register BrowserChildProcessObserver once main message loop is ready 2018-01-02 16:37:11 +09:00
deepak1556
1b30cac372 Don't delay node module initialization 2018-01-02 16:37:11 +09:00
deepak1556
a1592446da REVIEW: access GetApplicationLocale on sequence that allows IO 2018-01-02 16:37:08 +09:00
deepak1556
ebb0e46380 REVIEW: create AtomNetworkDelegate on the IO thread 2018-01-02 16:37:08 +09:00
deepak1556
e30131f30b Initialize isolate holder in standalone node mode 2018-01-02 16:37:07 +09:00
deepak1556
88e53b1b5e REVIEW: destroy process singleton on sequence where IO is allowed 2018-01-02 16:37:07 +09:00
deepak1556
b4e6516ad8 fix dcheck failure with invalid UTF8 string conversion for base::Value 2018-01-02 16:37:05 +09:00
Cheng Zhao
d04ae88426 The RenderWidgetHostView might not be available when showing menu 2018-01-01 19:37:59 +09:00
Cheng Zhao
bc61f2eafa Copy the callback instead of reference
I don't really see how this could be a problem, likely a bug of VS 2017?
2018-01-01 19:37:59 +09: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
7b01a8b860 Add callback parameter to Menu.popup 2018-01-01 16:26:19 +09:00
Cheng Zhao
d7bc127c60 mac: Correctly close popup menu 2018-01-01 15:40:15 +09:00
Cheng Zhao
7a8864063b mac: Handle the case when closing all menu runners 2017-12-21 15:57:27 +09: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
ef7357dedc update tests for menu closed event and call cancel on closePopup 2017-12-20 15:40:07 +09:00
Heilig Benedek
bcef6eb3df document menu closed event and fix styling issue 2017-12-20 15:40:07 +09:00
Heilig Benedek
c586806609 fix flash menu being unresponsive to commands 2017-12-20 15:40:07 +09:00
Shelley Vohr
3fc844c15a
add loop to catch null values 2017-12-13 14:02:43 -05:00
Shelley Vohr
6252ce466c
remove failing badDefault 2017-12-12 13:39:38 -05:00
Shelley Vohr
8b447b9291
fixing error in registerDefaults 2017-12-12 13:08:09 -05:00
Alexey Kuzmin
1caa04c0bf
Revert "Add systemPreferences.registerDefaults()" 2017-12-12 13:59:15 +03:00
Cheng Zhao
19f1fef040
Merge pull request #11283 from electron/fix-event-subscriber-race
Fix race condition in event_subscriber.h
2017-12-12 10:49:17 +09:00
Shelley Vohr
a8e67e7f61
fixes from review 2017-12-11 18:20:12 -05:00
Shelley Vohr
84bab48627
improve error handling 2017-12-11 13:11:03 -05:00
Shelley Vohr
c5aeda1fdd
fixes from code review 2017-12-11 00:20:26 -05:00
Shelley Vohr
18ee34f1a1
add method binding and error guards 2017-12-10 11:25:43 -05:00
Shelley Vohr
1ccad4a7e9
fix capitalization and clean logic 2017-12-10 11:04:05 -05:00
Shelley Vohr
f82086e6d3
first pass at adding infra for registerDefaults 2017-12-10 00:45:49 -05:00
deepak1556
19de41b764 BrowserClient::CanCreateWindow is no longer called on the IO thread
https://codereview.chromium.org/2821473002
2017-12-07 09:47:32 +05:30
Thiago de Arruda
897712359f Implement powerMonitor "suspend"/"resume" events for Linux. 2017-12-05 08:12:44 -03:00
Cheng Zhao
24b3ee3a4a Revert some unnecessary changes 2017-12-05 16:50:25 +09:00
Cheng Zhao
cb3a9c69ab Add a SessionPreferences to manage session related data
By design the BrowserClient should not be aware of the api:: classes.
2017-12-05 15:59:15 +09:00
Cheng Zhao
776e8afa2b Coding style changes 2017-12-05 11:50:06 +09:00
Samuel Attard
e535ba4808 Don't know why we suddenly need this, but hey :/ 2017-12-05 11:35:54 +09:00
Samuel Attard
d1aded2831 Appease the almighty linter 2017-12-05 11:35:53 +09:00
Samuel Attard
3b80ee0655 Move global preload implementation to be session based 2017-12-05 11:35:53 +09:00
Samuel Attard
448ccc261d Use const references 2017-12-05 11:35:27 +09:00
Samuel Attard
0ddd078aaf Add ability to set global preload scripts 2017-12-05 11:35:27 +09:00
Cheng Zhao
d598aa1a67
Merge pull request #11300 from electron/external-devtools
Add API to set arbitrary WebContents as devtools
2017-12-05 10:35:49 +09:00
deepak1556
903a5b5100 fix dcheck comparison between unsigned long vs int 2017-12-01 17:55:21 +01:00
Cheng Zhao
6b408de884 Allow using docked devtools for webview 2017-12-01 11:56:58 +09:00
Cheng Zhao
5e4914700e Enable using external WebContents as devtools 2017-12-01 10:35:23 +09:00
Thiago de Arruda
68bceb9575 Fix race condition in event_subscriber.h 2017-11-29 12:57:47 -03:00
Ales Pergl
f3c32647af Sanitized notification delegate implementation
I made `brightray::NotificationDelegate` back into just an interface and
extracted the implementation used by `PlatformNotificationService`, so that
the main process notification implementation can inherit only the interface.
2017-11-24 10:58:53 +09:00
deepak1556
a0be734ccb Fix client certificate private key handling api 2017-11-24 10:58:53 +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
Aleksei Kuzmin
338604239d Cleanup MenuRunner API
https://codereview.chromium.org/2790773002
2017-11-24 10:58:17 +09:00
Aleksei Kuzmin
1073c9b1ed Fix compilation of atom/browser/api/atom_api_app.cc
Refactor client cert private key handling.
https://codereview.chromium.org/2898573002
2017-11-24 10:58:17 +09:00
Aleksei Kuzmin
624b63a1ca Move "atom/common/node_includes.h" to the end of the includes list
https://github.com/electron/electron/issues/10363
2017-11-24 10:58:17 +09:00
Aleksei Kuzmin
56e7867455 Move IconURLs method from WebFrame to WebLocalFrame
https://codereview.chromium.org/2918903002
2017-11-24 10:58:17 +09:00
Aleksei Kuzmin
a9eb0cbec0 Ban raw pointers to ref-counted types on base::Bind
https://chromium-review.googlesource.com/c/chromium/src/+/549537
2017-11-24 10:58:16 +09:00
Aleksei Kuzmin
b29c485ec4 Consolidate PowerSaveBlocker and WakeLock inside Device Service.
https://chromium-review.googlesource.com/c/chromium/src/+/563159
2017-11-24 10:58:16 +09:00
Aleksei Kuzmin
7608a0489c Network Traffic Annotation added to DownloadURLParams.
https://chromium-review.googlesource.com/c/530307
2017-11-24 10:58:16 +09:00
Aleksei Kuzmin
e926473e5a Partial revert of Provide WebContents::CreateParams to tab helpers.
https://chromium-review.googlesource.com/c/571285
2017-11-24 10:58:16 +09:00
Aleksei Kuzmin
5831a5ffa1 Refactor client cert private key handling.
https://codereview.chromium.org/2898573002
2017-11-24 10:58:16 +09:00
Tony Ganch
f694b64d71 FIXME: DesktopNotificationDelegate has been removed
Related CL: https://codereview.chromium.org/2906883003
2017-11-24 10:58:16 +09:00
Aleksei Kuzmin
2c063f93ff Remove raw base::DictionaryValue::Set
https://codereview.chromium.org/2911033002
2017-11-24 10:58:16 +09:00
Aleksei Kuzmin
ea8e113b19 SkBitmap and SkPixelRef no longer need lock/unlock
https://codereview.chromium.org/2823003002
2017-11-24 10:58:16 +09:00
Aleksei Kuzmin
ea4a36039a Add Keyboard Latency UMA Metrics.
https://codereview.chromium.org/2756893002
2017-11-24 10:58:16 +09:00
Aleksei Kuzmin
f03ca53af5 Add blink::WebInputEvent::IsPinchGestureEventType().
https://codereview.chromium.org/2861373004
2017-11-24 10:58:16 +09:00
Aleksei Kuzmin
650902c656 Renamed LoadCommittedDetails.is_in_page to is_same_document.
https://codereview.chromium.org/2841833002
2017-11-24 10:58:16 +09:00
Aleksei Kuzmin
90b0984a14 Add missing IWYU message_loop.h includes.
https://codereview.chromium.org/2876013002
2017-11-24 10:58:16 +09:00
Aleksei Kuzmin
f2bcdab037 Provide WebContents::CreateParams to tab helpers.
https://codereview.chromium.org/2894973002
2017-11-24 10:58:16 +09:00
Aleksei Kuzmin
ee9a547985 Service CreateNewWindow on the UI thread with a new mojo interface
https://codereview.chromium.org/2821473002
2017-11-24 10:58:16 +09:00
Aleksei Kuzmin
ba6e8b4dff Merge ResourceRequestBodyImpl and ResourceRequestBody.
https://codereview.chromium.org/2954343005
2017-11-24 10:58:15 +09:00
Aleksei Kuzmin
b77b67bfbe Remove client_certs from SSLCertRequestInfo.
https://codereview.chromium.org/2838243002
2017-11-24 10:58:15 +09:00
Cheng Zhao
f8adaed763
Merge pull request #11208 from electron/mips64el
Add support for mips64el
2017-11-24 10:54:19 +09:00
Felix Rieseberg
3cb062b3d6 🔧 BrowserView.getAllViews() 2017-11-22 16:58:32 -08:00
Cheng Zhao
4f9c5310a9 Fix compiler warning when building with gcc 2017-11-21 21:47:51 +09:00
Matt Crocker
efaf7a6b85 Avoid race condition where login handler webcontents becomes null 2017-11-19 14:08:11 -08:00
Thiago de Arruda
5ea3a5886b Implement {register,intecept}StreamProtocol
These new functions are more flexible than the other
{intercept,register}*ProtocoProtocol functions, since it allows the user to
return a node.js stream to feed the data to the protocol handler.

It also allows the user to specify a response header dictionary, which makes it
possible to correctly intercept any request made from renderers.
2017-11-13 16:16:14 -03:00
Thiago de Arruda
68f514b92f Implement EventSubscriber<T> class.
This class simplifies the task of subscribing/handling javascript events from
C++ classes in the main process.
2017-11-13 15:22:50 -03:00
Thiago de Arruda
6b2ddc4814 Stop allowing electron.net requests to be intercepted.
Not very useful to intercept requests from `electron.net`, since both the
interception machinery and `electron.net` live in the browser process.
2017-11-13 15:20:46 -03:00
Cheng Zhao
cee1c459c7 Do not accidentally change the behavior of did-change-theme-color 2017-11-13 16:20:54 +09:00
Cheng Zhao
7e0593950c Code style fixes 2017-11-13 16:13:54 +09:00
Heilig Benedek
276e12ce71 pass on web_contents to properly handle devtools 2017-11-13 15:50:50 +09:00
Heilig Benedek
f8b3009ebf restructure code to use web_preferences if possible 2017-11-13 15:50:49 +09:00
Heilig Benedek
71b36ef54d don't show the dummy window for the rest of the dialogs too on mac 2017-11-13 15:46:46 +09:00
Heilig Benedek
35dc6d03b9 lint fix 2017-11-13 15:46:46 +09:00
Heilig Benedek
e39aacb30e fix a bug that caused a crash when using an offscreen window with detached devtools, related to autofill popups 2017-11-13 15:46:46 +09:00
Andrew MacDonald
c260a0ab78 Allow BrowserWindows to emit console-message events. 2017-11-07 15:31:15 -08:00
Samuel Attard
c9926bed9f
Merge pull request #10954 from electron/less-process-metrics-warnings
fix: Don't call idleWakeupsPerSecond on Windows
2017-10-28 12:36:45 +13:00
Samuel Attard
dc8b583363
Merge pull request #10944 from electron/fix-notification-ref-crash
Close the previous notification on multiple calls to show
2017-10-28 12:33:30 +13:00
Felix Rieseberg
da21d6cdda 🔧 Don't call idleWakeupsPerSecond on Windows 2017-10-27 14:23:06 -07:00
Matt Crocker
b6fb016a9a Cleanup per review comment 2017-10-27 00:07:54 -07:00
Matt Crocker
77a26882a3 Make linter happy 2017-10-27 00:04:19 -07:00
Matt Crocker
c5914516c8 Upstream good ideas from Muon 2017-10-27 00:04:19 -07:00
Matt Crocker
ca8f45a501 Notifications should emit close on close, not eventual GC 2017-10-27 00:04:19 -07:00
Samuel Attard
8719e9f098 Definitely didn't forget to push the header file 2017-10-27 16:27:37 +13:00
Samuel Attard
fe9069c028 Close the previous notification on multiple calls to show 2017-10-27 16:22:21 +13:00
John Kleinschmidt
67f0eb7b3b Merge pull request #10873 from ahmedmohamedali/fix_issue_10697
Fixes #10697
2017-10-23 09:32:28 -04:00
Ahmed Mohamed Ali
463260b249 Electron crashes if user clicks Dev Tools & Zoom options #10697 2017-10-21 22:21:24 +02:00
Boik
f40cc5ab54 add error code to session.setCertificateVerifyProc 2017-10-16 17:17:21 +08:00
Birunthan Mohanathas
06d782279c Add systemPreferences.removeUserDefault()
This can be used to restore the default or global value of a `key`
previously set with `setUserDefault`.
2017-10-10 22:57:47 +03:00
Cheng Zhao
4342480473 Fix cpplint warnings 2017-10-05 11:49:26 +09:00
Sean Bannigan
0b205019b6 add mouse-move event and click event position for tray 2017-10-05 11:41:08 +09:00
Cheng Zhao
8c5bb5969c Merge pull request #10667 from dittos/window-opacity
Add window opacity support
2017-10-04 15:03:45 +09:00
Cheng Zhao
150a4797a4 Merge pull request #10676 from qazbnm456/fix-unhandle-null-pointer
Add a null-pointer check before processing base::SupportsUserData::GetUserData
2017-10-03 20:18:51 +09:00
Daniel Ma
1bb042a661 feat(NativeWindowMac): addTabbedWindow
Add support for the [`NSWindow addTabbedWindow`][nsw] method on MacOSX

This plays nicely with the changes from #9052 and #9725

Usage samples available in [this commit][c] in my fork of
`electron-quick-start`

[nsw]: https://developer.apple.com/documentation/appkit/nswindow/1855947-addtabbedwindow
[c]: 79f06591df
2017-10-03 20:11:16 +09:00
Boik
d594092675 add a null-pointer check before processing base::SupportsUserData::GetUserData 2017-10-03 12:42:35 +08:00
Taeho Kim
7570ec9d39 Add BrowserWindow.getOpacity for consistency 2017-10-03 00:08:10 +09:00
Ted Kim
7f2c4a9e06 Add window opacity support 2017-09-29 17:49:10 +09:00
Shelley Vohr
5ef4caf8ab
add ability to access logs in getPath() 2017-09-28 13:35:22 -04:00
Cheng Zhao
b7119b5756 Create watcher when message loop is ready 2017-09-20 11:58:32 +09:00
Samuel Attard
4147fa4629 Appease the linting gods 2017-09-20 11:58:32 +09:00
Samuel Attard
0ab83b301d Refactor as per @zcbenz comments
Also fix issue where we run the single instance callback *not* on the UI thread,
this apparently results in a hung process.
2017-09-20 11:58:32 +09:00
Samuel Attard
ecbeb0d117 Woops, how did that happen ;) 2017-09-20 11:58:32 +09:00
Samuel Attard
f928a399ae Move OnBrowserReady call to PreMainMessageLoopRun to account for timing issues on macOS 2017-09-20 11:58:32 +09:00
Samuel Attard
28900a9b63 Fix app.makeSingleInstance hanging on posix systems
Wait for the IO thread to be a thing before attempting to listen on the socket

Fixes #9880
2017-09-20 11:58:32 +09:00
Cheng Zhao
ff023115f5 Style fixes 2017-09-14 16:12:34 +09:00
Rafael Nobre
9483f0fc14 Adds synchronization logic to allow NSUserActivityDelegate to wait Javascript updating the NSUserActiity UserInfo if requested. 2017-09-14 15:59:43 +09:00
Rafael Nobre
a870799c32 Exposes more Handoff related APIs to Electron. 2017-09-14 15:59:43 +09:00
Cheng Zhao
a19a229a59 Merge pull request #10254 from zachflower/feature/simple-fullscreen-mode
Feature/simple fullscreen mode
2017-09-14 09:39:50 +09:00
Boik
2d771674bb get webContentsId instead 2017-09-12 20:17:11 +08:00
Cheng Zhao
8493d5707e Fix cpplint warnings 2017-09-12 15:35:24 +09:00
Cheng Zhao
10ab870237 Merge pull request #10321 from kaylanm/macos-native-tab-api
🍎 Add macOS native tab methods to window API
2017-09-11 18:49:56 +09:00
Cheng Zhao
cc9771a3d0 Merge pull request #10307 from liusy182/10240-theme-color-2
return null when theme color is transparent or not found
2017-09-11 18:40:35 +09:00
Cheng Zhao
e6733b4b23 Merge pull request #10305 from ivmirx/macos-accessibility
Special attribute for macOS accessibility
2017-09-11 17:58:20 +09:00
Samuel Attard
6b010614e2 Implement moveToApplicationsFolder (#10142)
* Implement moveToApplicationsFolder

* Fix tabs / spaces

* Fix linting

* Use Browser::Quit, instead of exit

* Update documentation as per feedback

* Fix spec
2017-08-31 10:37:12 -04:00
Cheng Zhao
0550a4a9b8 Fix crash when emitting render-view-deleted event 2017-08-29 17:46:46 +09:00
Ivan Mir
75b2915fee Change the parameter name for consistency 2017-08-27 11:53:25 -03:00
Ivan Mir
6717f0d2bb Add accessibility setter to the app 2017-08-24 11:22:28 -03:00
Siyuan Liu
5cb58cd42f use nullptr instead of nullptr_t() 2017-08-23 09:30:58 +08:00
Michael Kaylan
b4428e7e41 🍎 Add macOS native tab methods to window API 2017-08-21 23:24:30 -04:00
Cheng Zhao
565ece6986 Merge pull request #10308 from electron/native-view
Add WebContents.getNativeView() API
2017-08-22 09:19:27 +09:00
Charlie Hess
db081d95d5
Review CommentZ. 2017-08-21 13:53:50 -07:00
Cheng Zhao
2c1984b6ed Add WebContents.getNativeView API 2017-08-21 19:50:12 +09:00
Siyuan Liu
eeb2e58ad8 return null when theme color is not found 2017-08-20 22:48:13 +08:00