Commit graph

133 commits

Author SHA1 Message Date
Kevin Sawicki
564b0cace5 Maintain visted objects as a stack for cycle detection 2016-07-11 10:33:13 -07:00
Kevin Sawicki
5da0b856f9 Call includes directly on visited array 2016-07-11 10:33:13 -07:00
Kevin Sawicki
2cc2b8a146 Return empty array for circular references 2016-07-11 10:33:04 -07:00
Kevin Sawicki
a9b43a0fc9 Use empty string constructor name when missing 2016-07-06 13:06:48 -07:00
Kevin Sawicki
d67dfd09fd Pass through empty constructor names 2016-07-06 09:18:20 -07:00
Maksim
b444b35215 Update remote.js 2016-07-06 09:11:04 -07:00
Cheng Zhao
f693b042b5 Fix js lint warnings 2016-05-28 22:46:15 +09:00
Cheng Zhao
ba315248e0 Use ipcRenderer.sendTo to get rid of routers in main process 2016-05-28 21:13:00 +09:00
Cheng Zhao
ae1f442b02 Add ipcRenderer.sendTo 2016-05-28 20:50:28 +09:00
cdaringe
32073fa079
🎨 Support non-native promises 2016-05-25 10:11:18 -06:00
Kevin Sawicki
7929daa48c Pass both callback values to then 2016-05-23 15:07:01 -07:00
Kevin Sawicki
cc7395eea8 Remove returns from event listeners 2016-05-19 15:28:08 -07:00
Cheng Zhao
87c10b3ac2 Make non-public module accesible via remote 2016-05-18 13:57:48 +09:00
Cheng Zhao
49ac160ff7 Move createIDWeakMap to v8Util 2016-05-11 19:30:06 +09:00
Cheng Zhao
04d59991b0 Use create function instead of IDWeakMap constructor 2016-05-11 16:15:32 +09:00
Kevin Sawicki
d988cae16d Remove deprecated ipc module 2016-05-06 10:12:53 -07:00
Kevin Sawicki
dae68be2ce Remove deprecated APIs 2016-05-06 10:12:53 -07:00
Cheng Zhao
06cf0406fe Dereference remote objects with native code
Previously we rely on the v8util.setDestructor to dereference the remote
objects in JavaScript, however as documented in V8, it is forbidden to
call V8 APIs in object's destructor (e.g. the weak callback), and doing
so would result in crashs.

This commit removes the JavaScript setDestructor method, and avoids
doing the dereference work with V8.
2016-04-26 16:16:22 +09:00
Cheng Zhao
ff1b7d18f6 Cleanup the code determining value's type 2016-04-20 14:26:49 +09:00
Kevin Sawicki
8d8d5878a3 Rename ATOM_ ipc event prefix to ELECTRON_ 2016-04-07 09:04:55 -07:00
Cheng Zhao
39d2b95a33 Reference the remote object in its prototype chain's methods 2016-04-01 15:46:01 +09:00
Cheng Zhao
4ebb01f8c9 Remote object's members should reference itself 2016-04-01 15:26:30 +09:00
Zeke Sikelianos
4e2f1311e0 replace __proto__ with Object.setPrototype 2016-03-30 17:00:33 -07:00
Zeke Sikelianos
e6698102c9 standardize by hand 2016-03-30 17:00:33 -07:00
Zeke Sikelianos
3855a774ab autoformat more easy files 2016-03-30 17:00:31 -07:00
Kevin Sawicki
2d32956903 Destructure objects 2016-03-22 13:11:42 -07:00
Kevin Sawicki
a53c7529c1 Remove unneeded slice call 2016-03-18 11:54:34 -07:00
Kevin Sawicki
8889c29866 Use rest parameters 2016-03-18 11:51:02 -07:00
Cheng Zhao
6aec1e6949 Merge pull request #4714 from atom/chrome49
Upgrade to Chrome 49
2016-03-11 21:39:52 +09:00
Arek Sredzki
ee61ab2d26 Cache browser visibility state & emit visibilitychange event on change
Fixes #3788
2016-03-10 13:51:31 -08:00
Cheng Zhao
6de9c4332f Fix passing Promise with remote
Somehow using value.then.bind(value) would result in infinite loop,
could be bug of Chromium.
2016-03-10 17:06:22 +09:00
Kevin Sawicki
006c77a00f Update requires paths 2016-03-08 11:14:22 -08:00
Kevin Sawicki
70aa9b06ee Move JavaScript to root lib/ folder 2016-03-08 11:14:21 -08:00