ardagnir / pterosaur

All firefox text fields are vim.
GNU Affero General Public License v3.0
772 stars 30 forks source link

Chromium support #38

Open ardagnir opened 9 years ago

ardagnir commented 9 years ago

Chromium support has been started in the chromium branch. It will currently break if you try to run it.

All the system stuff chromium doesn't let pterosaur do is handled through native messaging to the "badidea" python script that escapes Chromium's sandbox and calls system commands. This still needs to be changed to use strings instead of JSON. (Any non-string JSON seems to break native messaging)

The other big change that needs to happen is that chromium needs all DOM code and chrome code in seperate scripts that communicate asynchronously. This shouldn't be too difficult using task.js (which allows asynchronous code to be written like synchronous code). https://github.com/Benvie/task.js is a fork of task.js that is compatible with both firefox and chromium. Most functions that cross the DOM/chrome border and their ancestors can be switched to task functions with relatively few changes.