Confirmed users
1,067
edits
(→Layout) |
No edit summary |
||
(47 intermediate revisions by 14 users not shown) | |||
Line 1: | Line 1: | ||
'''''DO NOT EDIT THIS PAGE. FINAL GOALS STATUS IS BEING TRACKED INTERNALLY AND THIS PAGE WILL BE UPDATED ONCE COMPLETED.''''' | |||
=== General Goals === | === General Goals === | ||
* | * Improve product responsiveness. | ||
* Drive towards process separation. | |||
* Improve web capabilities. | |||
* Support Firefox 3.5.1 by driving, implementing, and fixing web platform features that are required. | |||
=== GFX === | === GFX === | ||
* | * Research multiprocess graphics issues. | ||
** Support & participate in Mozilla Electrolysis project. (joe) | ** Support & participate in Mozilla Electrolysis project. (joe) | ||
** Resolve how to accomplish hardware accelerated graphics in a multiprocess, sandboxed world. (joe) | ** Resolve how to accomplish hardware accelerated graphics in a multiprocess, sandboxed world. (joe) | ||
** (maybe) Prototype multiprocess hardware acceleration. (joe) | ** (maybe) Prototype multiprocess hardware acceleration. (joe) | ||
** Measure and decide how font metrics caches will work in multiprocess (startup time and memory usage) | ** Measure and decide how font metrics caches will work in multiprocess (startup time and memory usage) (joe) | ||
* Continue hardware acceleration work. | * Continue hardware acceleration work. | ||
** Continue work on prototype hardware acceleration to extend it to two platforms total. (joe) | ** Continue work on prototype hardware acceleration to extend it to two platforms total. (joe) | ||
Line 23: | Line 26: | ||
** high quality downscaling | ** high quality downscaling | ||
** develop a plan to resolve image drawing/EXTEND_PAD mess | ** develop a plan to resolve image drawing/EXTEND_PAD mess | ||
** Source clipping? (would improve efficiency of border-image, see current nsIImage::Extract() hack) | ** need Source clipping? (would improve efficiency of border-image, see current nsIImage::Extract() hack) (need some numbers...) | ||
** Supersampling to eliminate curve seams? see {{bug|466572}} | ** (not-likely) Supersampling to eliminate curve seams? see {{bug|466572}} | ||
* | * Font system enhancements (jdaggett) | ||
* Implement support for unicode-range descriptor | ** Refine font feature support spec with prototype implementation | ||
* Crude implementation of SVG font support | ** Implement support for unicode-range descriptor | ||
* Image decode on demand ( | ** Crude implementation of SVG font support | ||
* Image decode on demand/draw (bholley) | |||
=== Win Integration === | |||
* Win7 integration | |||
** Taskbar tab previews (robarnold) | |||
** Taskbar jump lists (jimm) | |||
** Taskbar download progress (sid0) | |||
** Touch input support improvements (smarter text selection logic, "big pointer" UI improvements, better toggle zoom, flicks events) (felipe) | |||
** General: make sure win7 integration is complete. | |||
* Windows integration | |||
** Improvements to parental controls UI support (blocked content UI support, extension manager UI support). | |||
=== Layout === | === Layout === | ||
* Keep working on CSS WG duties (dbaron, fantasai) [ok] | |||
* Keep working on CSS WG duties (dbaron, fantasai) | * Improve web capabilites. | ||
* | ** SVG/SMIL complete enough that we enable it by default (dholbert) [ok] | ||
* | ** Implement SVG/SMIL bug fixes and features (birtles) [ok] | ||
* SVG/SMIL complete enough that we enable it by default (dholbert) | ** Implement SVG images (roc) [no progress, lower priority than other stuff; will miss] | ||
* SVG images (roc) | ** Land CSS Transitions (dbaron) [ok] | ||
* Land CSS Transitions (dbaron) | ** Harfbuzz text backend prototype in tree (jfkthame) ''Possible security and performance improvements as well'' [ok] | ||
* Harfbuzz | ** Animation control via compositor, including JS animation API (roc) ''Performance improvement, front-end assistance'' [no progress, at risk due to ongoing 1.9.2 blocker fixing, fixing Mac gradient bugs, scrolling optimizations for mobile; will miss] | ||
** An implementation of SVG pointer-events for HTML (jwatt) [ok] | |||
* Animation control via compositor (roc) | ** Get some of our tests into the official SVG test suite in a reftest-like format (jwatt) ''Good for SVG, should help us do better in comparisons'' [?] | ||
* An implementation of SVG pointer-events for HTML (jwatt) | * Clean up and simplify code. | ||
* Get some of our tests into the official SVG test suite in a reftest-like format (jwatt) | ** Simplify GTK2 widget code (e.g. remove mozdrawingarea) (karlt) [done] | ||
* Simplify GTK2 widget code (e.g. remove mozdrawingarea) (karlt) | ** Clean up some block layout code (remove float cache, remove float continuations) (fantasai) [done] | ||
* Improve responsiveness and performance. | |||
** CSS rule matching performance improvements (zwol) | |||
* Improve security. | |||
** Implement dead-frame exploit mitigation (zwol) [ok] | |||
=== Video/Audio === | === Video/Audio === | ||
* Rapidly resolve any critical issues uncovered by the Firefox 3.5 release (doublec, | * Rapidly resolve any critical issues uncovered by the Firefox 3.5 release (doublec, kinetik, cpearce) [ok, there really haven't been any] | ||
* Improve performance in some significant way (e.g., be able to drop frames without decoding them) (doublec, | * Improve performance in some significant way (e.g., be able to drop frames without decoding them) (doublec, kinetik, cpearce) [ok] | ||
=== Mac OS X === | === Mac OS X === | ||
* Complete 64-bit Mac OS X port that runs on Mac OS X 10.6. | * Complete 64-bit Mac OS X port that runs on Mac OS X 10.6, {{bug|468509}}. | ||
* Complete NPAPI Cocoa event model implementation, {{bug|435041}}. | |||
* Be prepared for Mac OS X 10.6 on all branches. | * Be prepared for Mac OS X 10.6 on all branches. | ||
** Notify QA of seed releases. | ** Notify QA of seed releases. | ||
Line 58: | Line 78: | ||
=== Content === | === Content === | ||
* Continue implementation of HTML5 parser. | |||
** [DONE] Advertise the HTML5 parser's availability to testers to get more feedback. -- http://hsivonen.iki.fi/test-html5-parsing/ and http://blog.whatwg.org/test-html5-parsing | |||
** [ON TRACK] Off main thread HTML5 parsing as a prerequisite for turning HTML5 parsing on by default. | |||
** [ON TRACK] Propose a long term plan for the generated C++ in the HTML5 parser. | |||
* Make significant progress on XBL2. | |||
** [AT RISK] Attachment, detachment, through all three binding mechanisms. | |||
** [ON TRACK] Initial rendering of the shadow tree. | |||
** [ON TRACK] Insertion points (<children>). | |||
* Improve extension security and ease of development | |||
** [ON TRACK] Design and implement an way for JetPack to safely expose APIs to untrusted code. | |||
** [ON TRACK] Propose an API to add names to the global namespace from JS extensions. | |||
* Improve DOM performance. | |||
** [AT RISK] Evaluate the feasibility of proposals such as IndexOf() redesign (per bz's proposal in mozilla.dev.tech.dom) and changing DOM node child list storage from array to linked list or maybe B-tree with backpointers from DOM-nodes to B-tree nodes. | |||
** [ON TRACK] Profile DOM performance problems beyond the JS to C++ bridge. | |||
* Implement a prototype of multi-process networking. | |||
** [ON TRACK] Write a test application with a child process that does plain HTTP over IPC through necko in the main process. | |||
=== JS === | === JS === | ||
* Address VM perf issues | |||
** Decrease object allocation overhead | |||
** Decrease iteration overhead | |||
* Tracing | |||
** Increase the number of traced cases (more ops, fewer guards, etc). | |||
** Turn on chrome jit. | |||
** Trace recursion. | |||
* ES5 implementation | |||
** Implement strict mode | |||
** Implement Object.defineProperty et al. | |||
** Add its various other bits to the standard library. | |||
* Decrease GC pausing, and improve GC performance. | |||
** see [[JavaScript:SpiderMonkey:GC_Futures]] | |||
* Sync with adobe nanojit | |||
** Change to their CodeAlloc | |||
* Breakpad omit-frame-pointer | |||
** Allow building with -fomit-frame-pointer for performance | |||
** rewrite linux breakpad to handle dwarf cfi | |||
=== Accessibility === | === Accessibility === | ||
* | * [at risk] Complete (and harmonize) accessible exposure of XUL and content based tables and tree grids. (related tracker: {{bug|491681}}) | ||
** | * [at risk] Improve our text attribute support with respect to the IAccessible2 specification. (related tracker: {{bug|368895}}) | ||
** | * [on track] Update ARIA attribute support in accordance with browser implementation guide updates. (related tracker: {{bug|343213}}) | ||
* | ** Participate in the ARIA User Agent Implementation Task Force (UAI TF) | ||
** | * [on track] Participate in the improvement of user keyboard interaction with HTML 5 media elements. | ||
** | * [on track] Investigate improving user experience for heavily updating DHTML applications | ||
* | ** analysis of what we currently do with a highly mutating dom. (e.g. {{bug|500240}}) | ||
** performance: look at lowering our churn in response to DOM mutation (tree walking, event firing etc) | |||
** stability and correctness: identify how to make our interrogation of content and layout more sensitive ("safe times"). | |||
=== Multi-Process === | === Multi-Process === | ||
* Working Flash plugin in a separate process, on Windows and Linux | * Working Flash plugin in a separate process, on Windows and Linux {{bug|478976}} | ||
** windows plugins [ON TRACK] | |||
** windowless plugins [AT RISK-need graphics guru] | |||
* Multiprocess tab milestones | * Multiprocess tab milestones | ||
** Networking | ** Networking [ON TRACK... jduell] | ||
** Global history | ** Global history [ON TRACK...sdwilsh] | ||
** link targeting and session history navigation | ** link targeting and session history navigation [??...bz] | ||
* Write a line-item plan and schedule for the remaining pieces of phase 2 | * Write a line-item plan and schedule for the remaining pieces of phase 2 [PENDING...bsmedberg] |