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
Shelley Vohr
4a90056462
remove webContents.openDevTools() deprecation
2018-05-23 09:30:15 -07: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
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
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
708f39a1a5
update a few menu.popup() calls to use the new API
2018-02-20 14:02:24 -06:00
Shelley Vohr
211b542ae4
remove setZoomLevelLimits
2018-02-20 08:57:48 -05: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
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
f81bfb7b86
🔧 Fix style issues
2017-11-23 13:42:48 -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
Cheng Zhao
d233fc044a
Pass dpiVertical and dpiHorizontal to print settings
2017-08-22 13:54:49 +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
deepak1556
5e976be43b
remove page-title-updated workaround for #3380
2017-05-01 16:53:55 +09: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
739f3ed102
Popup pepper menu in owner browser window
2017-02-24 08:39:22 -08:00
deepak1556
203a920c64
fix signature of zoom getter apis
2017-02-18 01:34:32 +05:30
deepak1556
b27c94368d
webContents: set zoom levels with HostZoomMap
2017-02-12 00:49:17 +05:30
Cheng Zhao
3024d0563f
There were new defaultPrintingSetting fields added
2017-02-06 10:34:29 -08:00
Kevin Sawicki
d6eb0d6629
Implement insertCSS on webFrame
2017-01-19 09:05:59 +02:00
Kevin Sawicki
c8ff67ab75
Use spread syntax instead of function apply
2016-12-01 14:56:00 -08:00
Kevin Sawicki
9a5df9da41
Expose setVisualZoomLevelLimits on webContents and <web-view>
2016-11-22 08:07:55 -08:00
Paul Betts
e2649ce7d8
Add new method to set layout-based zoom level limit
2016-11-21 14:59:55 -05: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
Kevin Sawicki
b54b74c310
Prevent missing Menu.buildFromTemplate function
2016-09-06 11:31:14 -07:00
Cheng Zhao
edb573d69e
Make WebContents inherit NavigationController
2016-08-02 20:55:56 +09:00
Cheng Zhao
025034127a
Set JavaScript APIs on prototype of WebContents
2016-08-02 20:52:07 +09:00
Cheng Zhao
844f32aa36
Set prototype of constructor directly
2016-08-02 20:38:35 +09:00
Cheng Zhao
6e0cde5b24
All native objects have prototype now
2016-08-02 17:12:17 +09:00
Samuel Attard
a498cf5b79
Fix linting issues
2016-08-02 13:13:17 +10:00
Samuel Attard
e4f6083753
Implement asynchronous versions of getZoomFactor and GetZoomLevel on the webContents object
2016-08-02 13:02:55 +10:00
Kevin Sawicki
a7badd43d5
Expose getAllWebContents() API
2016-07-14 08:59:49 -07:00
Kevin Sawicki
72cdba2b8e
🎨
2016-07-13 14:49:25 -07:00
Kevin Sawicki
06e595e7cc
Add webContents.getFocusedWebContents()
2016-07-13 14:16:56 -07:00
Kevin Sawicki
7877fa7c0a
Add webContents.isFocused()
2016-07-13 14:16:56 -07:00
Kevin Sawicki
f67e2043c8
Add back options param
2016-06-13 09:06:42 -07:00
Kevin Sawicki
56001b481e
Emit web-contents-created on app
2016-06-13 08:59:57 -07:00
Kevin Sawicki
c8c60dd313
Add devtools from web-contents-created event
2016-06-08 12:00:13 -07:00
Cheng Zhao
0864d3b1ee
Cleanup the printToPDF code
2016-06-01 15:32:37 +09:00
Cheng Zhao
eb882855bc
Cleanup the CoffeeScript converted code
2016-06-01 15:08:51 +09:00
Cheng Zhao
5bb8da6073
Explicitly initialize session before webContents
2016-06-01 14:57:35 +09:00
Cheng Zhao
0565c42add
Merge pull request #5812 from vasumahesh1/feature-pdf
...
webContents: custom pageSize for printToPDF
2016-06-01 05:52:08 +00:00
Cheng Zhao
d105524135
Cleanup the JavaScript code of session
2016-06-01 10:42:24 +09:00
Vasu Mahesh
fc6628d159
Add: custom pageSize for printToPDF
2016-05-31 22:40:11 +05:30
Cheng Zhao
5f3fdbe635
Simplify the implementation of sendToAll
2016-05-29 12:10:32 +09:00
Cheng Zhao
dfe7ae2124
Add webContents.fromId
2016-05-28 10:10:24 +09:00
Cheng Zhao
9ab76fb884
Add webContents.sendToAll to send message to all frames
2016-05-27 16:58:49 +09:00
Kevin Sawicki
cc7395eea8
Remove returns from event listeners
2016-05-19 15:28:08 -07:00
Steve Kinney
0d3d097ce8
💄 Standarize requires in JavaScript API
2016-05-15 09:41:30 -04:00
deepak1556
14661819c2
move session wrapper to webcontents
2016-05-06 10:12:55 -07:00
Kevin Sawicki
dae68be2ce
Remove deprecated APIs
2016-05-06 10:12:53 -07:00
deepak1556
4e6b148eaa
webContents: fix executejavascript when called before page load
2016-04-28 01:54:08 +05:30
Rob Brackett
64a84dee3b
Add isLoadingMainFrame
method to WebContents.
...
Also switch `webContents.executeJavaScript` to check it instead of `isLoading`.
There doesn’t seem to be a reasonable public way to get this information out of Chromium, so it’s synthesized here based on WebContentsObserver callbacks.
Fixes #5183 .
2016-04-18 10:37:08 -07:00
Cheng Zhao
92882c358a
No more need to delay did-fail-load event
2016-04-13 19:33:59 +09:00
Cheng Zhao
2fbe06a2a5
Handle the Page.reload command coming from devtools
2016-04-12 16:36:12 +09:00
Zeke Sikelianos
b5afad9da7
avoid using eslint comment exceptions
2016-03-30 17:00:34 -07:00
Zeke Sikelianos
4e2f1311e0
replace __proto__ with Object.setPrototype
2016-03-30 17:00:33 -07:00
Zeke Sikelianos
2c3cacdc08
standardize by hand
2016-03-30 17:00:33 -07:00
Zeke Sikelianos
e6698102c9
standardize by hand
2016-03-30 17:00:33 -07:00
Zeke Sikelianos
4794385fac
first pass at standardizing; suite still passing!
2016-03-30 17:00:30 -07:00
Kevin Sawicki
4127b524d5
Destructure params directly
2016-03-22 13:11:42 -07:00
Kevin Sawicki
4f4dc2f4d8
Use destructuring assigment
2016-03-22 13:11:42 -07:00
Kevin Sawicki
8889c29866
Use rest parameters
2016-03-18 11:51:02 -07:00
Kevin Sawicki
a3f08c9b51
Use arrow functions to replace old CoffeeScript => this wrappers
2016-03-11 11:25:56 -08:00
Kevin Sawicki
70aa9b06ee
Move JavaScript to root lib/ folder
2016-03-08 11:14:21 -08:00