Electrolysis/Tasks

From MozillaWiki
Jump to navigation Jump to search

This is a task list for the Electrolysis project, listing work areas, owners, mentors, etc. To volunteer for a project, please contact Benjamin Smedberg

Project Owner Mentor Bug ETA Notes
Async canvas.drawWindow for remote content joedrew bug 505847 Important for the Fennec UI
Forward mouse and keyboard events from the parent to the child For the fennec canvasbrowser
Implement readonly remoting of preferences (nsIPrefService/nsIPrefBranch) Tibor Mezei bsmedberg bug 506269 Relatively easy, good beginner project.
Remote all network access to the parent process jduell/ehsan jst/biesi Need smaller subtasks!
Asynchronous and remote resolution of history queries sdwilsh bz At least the asynchronous part should land on mozilla-central
Statically check IPDL specs and C++ implementations cjones
Dynamic fuzzing/checking of cross-process infrastructure bsmedberg Fuzzing for bad data, closed sockets, crashed processes
Systematic dynamic checking of C++ code implementing IPDL protocols robin_bb cjones bug 506303 It should be possible to generate pretty exhaustive unit tests from IPDL specs...
IPDL/runtime support for shared-memory buffers Rohit cjones/bsmedberg Probably needed to make networking and canvas.drawWindow efficient
NPObject-over-IPC paritosh bent/josh
Session history for remote tabs bz Need to figure out what information the parent process/UI actually use/need
Link targeting for remote tabs bz
<browser> and <tabbrowser> basically working on remote tabs bz May involve some significant rearch: data which is currently available synchronously will not be!
Refactor the Firefox context menu to work with remote tabs dolske Events don't bubble through the content tabs the same way... will probably involve collecting necessary information on the child side and passing it to the chrome process in a trusted manner.
Implement find-in-page for remote tabs Josh Matthews bz
Implement session restore for remote tabs
Crash reporting + multiple processes ted Breakpad has existing support for client/server exception handling that we're not currently using. This should fit perfectly here. (Also probably being used in Chromium.)
Multi-process dashboard Shows CPU/memory usage/etc for tab and plugin processes
Form and password autofill Needs careful security architecture!
Clean up plugin processes when we don't need them bent Needed so we don't orphan processes on unit-test machines
Clean up tab process(es) when we don't need it fred23 bent
Present prompts from the chrome process if necessary (not the content process) bsmedberg There aren't significant security concerns with just presenting prompts other than the ability to DOS somebody in a loop, but this is probably a good place to do some thinking about the prompt architecture we actually want to end up with.