Commit graph

20632 commits

Author SHA1 Message Date
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
603ae8b62e Update to latest brightray. 2013-04-19 19:11:46 +08:00
Cheng Zhao
53dd742632 Add Window.url API. 2013-04-19 00:06:10 +08:00
Cheng Zhao
d3e4db7ba3 Emit 'page-title-updated' as javascript event for window. 2013-04-18 23:50:47 +08:00
Cheng Zhao
1309d04ca7 Emulate DOM's Event class. 2013-04-18 21:42:20 +08:00
Cheng Zhao
2d016785a7 Add observers list for NativeWindow. 2013-04-18 20:50:58 +08:00
Cheng Zhao
d508f711c6 Add convenient accessors for Window API. 2013-04-18 15:57:53 +08:00
Cheng Zhao
100c4a426b Complete a few APIs for getters. 2013-04-18 15:38:04 +08:00
Cheng Zhao
d06472b092 Add partial APIs for WebContents and NavigationController. 2013-04-18 15:09:53 +08:00
Cheng Zhao
257e439efb Add GetTitle for window API. 2013-04-18 14:30:05 +08:00
Adam Roben
80cb76355c Update to latest libchromiumcontent
* vendor/libchromiumcontent b6a0d85...0d607ee (3):
  > Stop trying to compile SQLitePersistentCookieStore separately
  > Update to latest Chromium trunk revision
  > Merge pull request #4 from aroben/atom
2013-04-17 23:27:53 -04:00
Cheng Zhao
df50cc08d6 Expose interface of NativeWindow in javascript. 2013-04-17 22:49:49 +08:00
Cheng Zhao
60528e53ee Use JavaScript to open the main window. 2013-04-17 20:05:43 +08:00
Adam Roben
0b5ab8e43d Size dev tools correctly when starting out docked to the right 2013-04-16 21:06:07 -04:00
Cheng Zhao
b313d94a2f Fix README. 2013-04-16 00:26:43 +08:00
Cheng Zhao
7da34e65f7 Initial empty window javascript binding. 2013-04-16 00:25:08 +08:00
Cheng Zhao
488d72e41b Internal built-in module code should be wrapped under api namespace. 2013-04-15 23:01:12 +08:00
Cheng Zhao
ef2056c3f5 Initial javascript startup code. 2013-04-15 15:39:54 +08:00
Cheng Zhao
a7516f3da5 Copy the default_app to bundle. 2013-04-14 23:24:46 +08:00
Cheng Zhao
ee420b1590 Write js codes in coffee script. 2013-04-14 22:48:35 +08:00
Cheng Zhao
ad708fdfbd Add script to check coding styles. 2013-04-14 17:34:51 +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
3c96007131 Don't quit browser when get fatal js error. 2013-04-13 23:38:29 +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
e49861b45b 💄 2013-04-12 23:20:09 +08:00
Cheng Zhao
cb2116f725 Give URL of my libchromiumcontent build. 2013-04-12 23:11:18 +08:00
Cheng Zhao
939b695675 Build with node. 2013-04-12 22:52:32 +08:00
Cheng Zhao
87dbf82d83 Pass brightray.gypi via parameters.
We need to make sure node.gyp can get variables in brightray.gypi, this
needs minimum modifications.
2013-04-12 21:17:54 +08:00
Cheng Zhao
44b3aa6a2f Set our WebKit preferences. 2013-04-12 20:48:02 +08:00
Cheng Zhao
26d6df7852 Handle keyboard events with AtomEventProcessingWindow.
Some system events like cmd+` will be handled by it automatically.
2013-04-12 20:31:15 +08:00
Cheng Zhao
f62b00eaac Fix devtools. 2013-04-12 16:41:15 +08:00
Cheng Zhao
f5e74e1b65 AtomBrowserMainParts is platform-independent now. 2013-04-12 15:57:17 +08:00
Cheng Zhao
af94c434ac use AtomEventProcessingWindow as native window. 2013-04-12 15:53:29 +08:00
Cheng Zhao
3391370857 Steal ChromeEventProcessingWindow from chrome.
Chromium has done quite a lot of low level works for us, steal them to
ease our lives.
2013-04-12 15:24:36 +08:00
Cheng Zhao
c27cbaaaf9 Implement generic native window class. 2013-04-12 15:04:46 +08:00
Cheng Zhao
a915cf2e81 Initial empty browser. 2013-04-12 10:14:23 +08:00
Cheng Zhao
6ef8875b1e Add submodules. 2013-04-11 20:38:29 +08:00
Adam Roben
d9df9bcf47 Send focus/blur events when an InspectableWebContents's window gains/loses focus
We listen for key window chages and inform content::RenderWidgetHostView as
appropriate.
2013-04-09 15:11:16 -04:00
Adam Roben
3c513d6ae8 Remember where the dev tools were docked between launches 2013-04-08 13:53:53 -04:00
Adam Roben
a2a2cd1936 Add preferences support for embedding applications
Applications can use brightray::BrowserContext::prefs to get access to
preferences that are persisted between launches.
brightray::BrowserContext::RegisterPrefs must be used to register preferences
before they're accessed.

Updated libchromiumcontent to pull in preferences support.

* vendor/libchromiumcontent 3944c1c...b6a0d85 (2):
  > Actually compile the base/prefs code
  > Export symbols from base/prefs
2013-04-08 13:53:42 -04:00
Adam Roben
5db043f7d4 Strip whitespace from the application name in the user agent
Having whitespace in the application name makes the user agent hard to parse.
2013-04-08 12:42:50 -04:00
Adam Roben
d2c04779e4 Include the application's version number in the user agent string 2013-04-08 12:41:30 -04:00
Adam Roben
3cef0dd98c Allow embedders to provide their own BrowserContext implementation 2013-04-01 20:10:00 -04:00
Adam Roben
080d9f59e9 Implement Notification.close() 2013-03-29 09:36:07 -04:00
Adam Roben
dde3c3f78f Make NotificationID more useful 2013-03-29 09:23:10 -04:00
Adam Roben
e59c549e62 Fire a click event when a notification is clicked 2013-03-29 09:02:40 -04:00