Commit graph

93 commits

Author SHA1 Message Date
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