Cheng Zhao
11ca836afc
Use the convient V8 wrapper in all files.
2013-09-24 09:41:54 +08:00
Cheng Zhao
a824c88352
Use same name convention in string16_conversions.
2013-09-23 23:00:58 +08:00
Cheng Zhao
1e5e0194bd
Add convient function for converting args from V8 Arguments.
2013-09-23 22:48:55 +08:00
Cheng Zhao
a0d1a7620c
Put FromV8Value and ToV8Value to a new header.
2013-09-23 21:30:54 +08:00
Cheng Zhao
ef4b36d621
Use string16 instead of std::string when sending IPC messages.
...
The underlying V8::String is represented in UTF18, by using string16 in
IPC messages we can avoid the overhead of encode conversion.
2013-09-20 22:55:42 +08:00
Cheng Zhao
ef5a4b5fe0
Pass synchronous messages by JSON string.
...
We are going to use IPC_MESSAGE_HANDLER_DELAY_REPLY to handle
synchronous messages but DictionaryValue is not copyable, so we pass the
JSON string instead.
2013-09-20 22:32:59 +08:00
Cheng Zhao
50b5272354
Dump v0.4.9.
2013-09-20 18:50:18 +08:00
Cheng Zhao
c908cae72c
Dump v0.4.8.
2013-09-20 16:55:43 +08:00
Cheng Zhao
583d34b9f7
Dump v0.4.7.
2013-09-13 10:12:02 +08:00
Cheng Zhao
8cb624d828
Dump v0.4.6.
2013-09-12 16:10:11 +08:00
Cheng Zhao
da9cce3f2d
Dump v0.4.5.
2013-09-09 16:13:01 +08:00
Cheng Zhao
40273cf37d
Add IPC messages and structs for passing draggable regions.
2013-09-05 19:46:12 +08:00
Cheng Zhao
e7bc368785
Dump version to v0.4.4.
2013-09-05 15:17:05 +08:00
Cheng Zhao
3b7dd85d3f
Merge pull request #65 from atom/custom-protocol
...
Support custom protocols
2013-09-04 03:33:09 -07:00
Cheng Zhao
6c3dc9e526
Dump v0.4.3.
2013-09-02 17:59:17 +08:00
Cheng Zhao
e423f601c0
Dump v0.4.2.
2013-09-02 13:34:58 +08:00
Cheng Zhao
3be4a01963
Dump v0.4.1.
...
Should make this automatic in future.
2013-08-29 11:19:34 +08:00
Cheng Zhao
018a48770a
Add spec for heap snapshot crash ( #66 ).
2013-08-27 17:47:44 +08:00
Cheng Zhao
b9cbfb8103
Skelecton for the protocol module.
2013-08-24 15:26:10 +08:00
Cheng Zhao
e648689981
Dump v0.3.4.
2013-08-15 16:11:25 +08:00
Cheng Zhao
341f1be07f
Revert "Use named property handler for createObjectWithName."
...
This reverts commit 0c31494ffa
.
2013-08-14 21:17:15 +08:00
Cheng Zhao
0c31494ffa
Use named property handler for createObjectWithName.
2013-08-14 13:14:28 +08:00
Cheng Zhao
dd05759c01
Add process.versions["atom-shell"].
2013-08-08 17:26:20 +08:00
Cheng Zhao
6684cdd72a
Add version file.
2013-08-08 17:22:35 +08:00
Cheng Zhao
b0b6214416
Update node: enable running like upstream node.
2013-08-08 16:57:07 +08:00
Cheng Zhao
55034be104
Add power-monitor module, fixes #45 .
2013-08-03 16:03:56 +08:00
Cheng Zhao
02de9c3b39
Enable idle GC for both browser and renderer.
2013-07-29 20:50:03 +08:00
Cheng Zhao
4acbbd1ad7
Discard the idle gc module.
2013-07-29 20:34:07 +08:00
Cheng Zhao
e995383401
Guard against double erasing an object, fixes #44 .
2013-07-29 19:14:35 +08:00
Cheng Zhao
2f2cbce9b9
[Win] Override node's console and output stream with chromium's logging.
...
On Window node doesn't outputing as GUI program, so we have to switch to
chromium's implementation. Hacking into node (like what we did before
this commit) would sometimes make the outputing blocked.
2013-07-25 20:06:23 +08:00
Cheng Zhao
85e4e99e7f
[Win] Poll events with GetQueuedCompletionStatus, fixes #41 .
2013-07-23 19:19:11 +08:00
Cheng Zhao
767354476b
Should force the embed thread to quit when terminating.
2013-07-23 16:55:09 +08:00
Cheng Zhao
9efde9577a
Move the watcher queue hack to NodeBindingsMac.
...
It's mac only.
2013-07-23 13:08:40 +08:00
Cheng Zhao
2f9c30dd50
[Win] Simply poll events for every 50ms.
...
This only makes async functions half work, will use IOCP for the
polling.
2013-07-22 16:43:58 +08:00
Cheng Zhao
008b8d404d
Don't separate node bindings into renderer and browser part.
...
Since we are going to use embeding thread to implement message
integration on all platforms, we do not need to separate renderer and
browser anymore.
2013-07-22 16:05:35 +08:00
Cheng Zhao
fa9e939745
Cleanup the node bindings code.
2013-07-22 15:25:39 +08:00
Cheng Zhao
1f019b36d2
Remove redundant calls to wake up main thread.
2013-07-22 15:06:08 +08:00
Cheng Zhao
00fda0e778
Move common message integration code to NodeBindings' base class.
2013-07-22 14:58:25 +08:00
Cheng Zhao
41ff753339
Don't use gcd to post tasks to main thread.
2013-07-22 13:03:13 +08:00
Cheng Zhao
25d9c1a14d
Add process.activateUvLoop() API.
2013-07-09 20:38:44 +08:00
Cheng Zhao
b5bc347cd4
cpplint 💄
2013-07-07 16:26:59 +08:00
Cheng Zhao
8bdf06131b
Separate the creation function of NodeBindings for renderer and browser.
...
On Windows the message loop integration would need two different
implementations.
2013-07-04 19:47:48 +08:00
Cheng Zhao
d870855645
Implement simple Beep() on Windows.
2013-07-04 16:30:48 +08:00
Cheng Zhao
f53ed6c503
Implement MoveItemToTrash on Windows.
2013-07-04 16:30:48 +08:00
Cheng Zhao
177bb87bb7
Use the platform_util_win implementation from Chromium.
2013-07-04 16:30:47 +08:00
Cheng Zhao
3176e03866
Ranged for is not supported by VS 2010.
2013-07-01 21:54:18 +08:00
Cheng Zhao
230173da1a
snprintf is not supported by VS.
2013-07-01 21:47:21 +08:00
Cheng Zhao
398c0a7c6a
Implement converting string vector to char pointer array on Windows.
2013-07-01 21:44:25 +08:00
Cheng Zhao
ca389edc38
Implement process.crash() on Windows.
2013-07-01 21:35:00 +08:00
Cheng Zhao
1f8fd40195
Add auto-updater module.
2013-06-03 17:59:34 +08:00
Cheng Zhao
dfa5257ce0
Update to latest chromium and brightray.
2013-06-02 00:26:24 +08:00
Cheng Zhao
cbb467032d
Add process.crash() for both browser and renderer.
2013-06-01 16:06:29 +08:00
Cheng Zhao
cd42fcceb9
Add crash reporter module (based on Quincy).
2013-06-01 15:57:37 +08:00
Cheng Zhao
bb69d99423
Use - as filename seperator for coffee script files. Fixes #15 .
...
Also clean unused files and wrong file names.
2013-05-30 20:21:07 +08:00
Cheng Zhao
d265121ed0
Force running uv loop under a handle scope. Fixed #13 .
2013-05-22 09:13:32 +08:00
Cheng Zhao
34e9132b68
Modify Window API to be more consistent.
...
* '_' becomes '-'
* removes 'position' field
* adds 'center' method.
2013-05-10 20:34:05 +08:00
Cheng Zhao
7cc04035c4
Add Menu API. (WIP)
2013-05-06 20:27:09 +08:00
Cheng Zhao
67f998357c
Make the CallbacksRegistry a separate module, though rather small.
2013-05-05 20:30:38 +08:00
Cheng Zhao
ec43f740a7
Add the generialized showMessageBox API.
2013-05-03 21:03:26 +08:00
Cheng Zhao
4aeb5e1388
Add dialog API.
...
Supported APIs:
* openFile
* openMultiFiles
* openFolder
* saveAs
Each API is asynchronous and accepts a callback.
2013-05-03 19:31:24 +08:00
Cheng Zhao
66404b5f15
Add the 'app' built-in module.
2013-05-03 00:05:09 +08:00
Cheng Zhao
9f1fe4d2c2
Closing a window requires closing web contents now.
...
In this way, we can prevent the close of window by using beforeunload
handler.
2013-05-01 15:42:30 +08:00
Cheng Zhao
7a2734ed71
Add Clipboard API.
2013-04-30 16:10:25 +08:00
Cheng Zhao
a34a63797a
Add shell.beep() API.
2013-04-29 22:10:03 +08:00
Cheng Zhao
157c978aa8
Add Shell API.
...
Include APIs:
shell.showItemInFolder
shell.openItem
shell.openExternal
shell.moveItemToTrash
2013-04-29 21:57:05 +08:00
Cheng Zhao
fbad5bc822
Add platform_util from Chrome.
...
The platform_util files just come from chrome/browser/ with slight
modifications so it doesn't depend on grit/generate_resources.h, which
is not availabe in libchromiumcontent because it's generated by chrome's
chrome/app/generated_resources.grd.
2013-04-29 20:41:11 +08:00
Cheng Zhao
c5ef255c4b
Fix header guard.
2013-04-29 20:40:59 +08:00
Cheng Zhao
948e50285d
Use camelCase not under_score, I forgot it's coffee script.
2013-04-27 19:13:24 +08:00
Cheng Zhao
51db9494bd
Add API to return all keys of weak map.
2013-04-27 16:54:17 +08:00
Cheng Zhao
d4d1230107
Should wrap WeakCallback with handle scope.
2013-04-26 21:28:41 +08:00
Cheng Zhao
e91d4c7c99
Add WeakMap built-in module.
2013-04-25 21:46:04 +08:00
Cheng Zhao
a513daae30
Enable idle GC in browser.
2013-04-25 19:41:23 +08:00
Cheng Zhao
cc37431a1f
Add v8_util.setDestructor.
...
This API can monitor when the object is GCed by V8, this is required by
the RPC API since we want to make sure the remote object got destroied
when object in renderer is GCed.
2013-04-25 18:25:18 +08:00
Cheng Zhao
ddad3e4846
Add built-in v8_util module for internal use.
2013-04-25 16:30:31 +08:00
Cheng Zhao
ab4015ef51
Module names starting with atom_common_ can be loaded by both sides.
2013-04-25 15:36:01 +08:00
Cheng Zhao
f8899242c5
No more plan for ipc.sendSync in browser.
...
I want the browser to be fully asynchronous, so sending synchronous
messages from browser to renderer will be unacceptable.
2013-04-23 22:21:49 +08:00
Cheng Zhao
1b87a31940
Add ipc.sendSync in renderer.
2013-04-23 21:52:19 +08:00
Cheng Zhao
16244e42e0
Use require('ipc').send to communicate between browser and renderer.
2013-04-23 12:18:07 +08:00
Cheng Zhao
66a0abe799
Renderer can now use process.send to send messages to browser.
2013-04-22 21:32:48 +08:00
Cheng Zhao
a7c3bdbf5d
Separate AtomBindings for renderer.
2013-04-22 16:27:52 +08:00
Cheng Zhao
2ba3ce740c
Remove RemoteObject, C++ layer should only have basic bridges.
2013-04-22 16:16:55 +08:00
Cheng Zhao
3ae0c99ca9
Add the RemoteObject API in renderer. (not implemented yet)
2013-04-22 09:13:25 +08:00
Cheng Zhao
5948bff23f
Share same native bindings code on both renderer and browser.
2013-04-21 14:53:26 +08:00
Cheng Zhao
993cf1cc61
Add API messages for IPC.
2013-04-21 11:01:04 +08:00
Cheng Zhao
4c0a162963
Inject node bindings to renderer's DOM.
2013-04-20 11:13:06 +08:00
Cheng Zhao
855b42551d
Improve the way to integrate libuv.
...
Now we poll libuv's events in embed thread by adding main loop's backend
fd to a new kqueue fd, instead of directly polling on main loop's
backend fd. In this way we can avoid dealing with one shot events
overselves.
2013-04-19 21:21:04 +08:00
Cheng Zhao
60528e53ee
Use JavaScript to open the main window.
2013-04-17 20:05:43 +08:00
Cheng Zhao
0d8c4dde97
💄 for cpplint.
2013-04-14 17:33:44 +08:00
Cheng Zhao
0f6ece2d27
Add our own built-in native module system.
2013-04-14 15:36:48 +08:00
Cheng Zhao
c6e62dcffd
Use node's error reporting system in browser.
2013-04-13 23:38:13 +08:00
Cheng Zhao
409228207c
Integrate libuv with browser's message loop.
2013-04-13 23:05:13 +08:00
Cheng Zhao
40307126d7
Load atom.js on startup.
2013-04-13 21:10:41 +08:00
Cheng Zhao
f853fc3df5
Initialize node in browser process.
2013-04-13 18:39:09 +08:00
Cheng Zhao
c27cbaaaf9
Implement generic native window class.
2013-04-12 15:04:46 +08:00