The following are the top Navigator performance issues
that will be addressed in MachV
| Issue | Owner |
|
Absolute Ranking | Competitive Metric | Acceptable Threshold (Deviation from benchmark) |
Notes | Links |
| Start-up first time after OS reboot (cold start) | ??? dp?, brendan?, smfr? |
|
|
In QuickLaunch mode - parity with
IE Without QuickLaunch - parity with 4.x |
|
Need to make QuickStart work with
multiple profiles. Once default Start behavior is competitive, secondary Start behavior becomes less critical, but still important. Top priority is most commonly used Windows OS - currently Win98. Minimal XUL Fast Load |
|
| Page layout - initial | dbaron, waterson |
|
|
Parity with IE or better, competitive with Opera. |
|
What we care
about:
|
|
| Window Open/Close speed | hyatt |
|
|
Parity with 4.x - Time
it takes for user to open or close a new Navigator window
- i.e. see it completely painted and be able to interact
with it. |
|
Leverage improvements across the app
- Bookmarks mgmt window open, pref panel open, mail
compose window open, etc. |
|
| Start-up after initial launch (warm-start) | dp |
|
|
In QuickLaunch
mode - parity with IE Without QuickLaunch - parity with 4.x |
|
Becomes
more important as users leave computers on for longer periods
of time (work/always on settings) Improve perceived speed via animated feedback on launch. |
|
| Back/Fwd button perf
ormance (cached page load) |
pchen |
|
|
Parity with IE or better - Time it takes to load a page when clicking the back or forward buttons. |
|
Using cached page load on the i-bench
test as a proxy (need to check on this). Is this issue just a part of page layout (above)? |
|
| Time to open another component (i.e Mail) | hyatt, jag |
|
|
Parity with 4.x |
|
Time it takes for the component window to load completely after selecting from Tasks Menu or Taskbar within Navigator. | |
| Refresh speed as overlapping windows are moved/closed | ??? layout? |
|
|
Parity with 4.x |
|
Occasionally slow painting causes screen to gray out in prior location of window while it repaints - this should not be noticebable by an end-user. | |
| Page Layout over SSL | bryner |
|
|
Page layout over secure connections should be no more than 20% slower than page layout over non-secure connections. |
|
No significant work should be required for this. Preliminary measurements indicate that SSL page loading is as fast as, or faster than, non-SSL page loading. Estimate an additional 2 days of work for crypto and/or Necko QA to verify these measurements. | |
| Linux Filepicker |
bryner |
P3? |
The XUL Linux filepicker performance needs to
be no more than twice as slow as the native GTK filepicker. It also
needs to scale well to large directories. |
Have Plan. Scope: This item covers only the Linux filepicker implementation. It may or may not include performance of the filesystem datasource and RDF outliner, depending on what option is chosen to increase speed. Status: We need to spend time investigating exactly where the speed bottlenecks are. Likely speedups include rewriting a portion of the filepicker in C++, or using the outliner RDF implementation with the filesystem datasource. Rewrite nsFileView.js in C++, or reimplement with outliner/RDF (mutually exclusive), estimate 4 days. |
|||
| Strings |
jag |
P1 |
Improve string performance by trying to prevent
string copying / alloc'ing where possible |
This will require looking at hotspots as they
surface and rewrite string usage (e.g. DependentString instead of nsAutoString,
concatenations instead of multiple appends), and a more generic approach
of finishing the string sharing support, which necessitates copy-on-write
support. 31 days, see
plan for details |
|
Section A . New Features
|
|||||
|
|
Feature | Status | Owner |
Days |
Links |
|
|
Full Screen Mode I'd recommend against using the "first step" approach hinted at in the PRD. Two different strategies: 1) Instant hide of UI & presentation of slimline UI - Easy to achieve across platforms. 4-5d 2) Complete Full Screen mode - More difficult to achieve XP. 4-5 d common + ~11d per platform. |
Have
plan , recommend 'slimline' option, as 'complete'
implementation is certainly too expensive. |
|
4-5 |
IE implementation ,
Full Screen Shot, |
| A.3 |
Automatic Image Sizing auto scale the image, put the knowledge of the current state (not scalable, scaled, not scaled) somewhere, add code to the content context to offer a menu item which lets you switch between scaled and not scaled if an image is scalable. Scaling at the image level already works, it would need to be added to the code that currently deals with displaying a single image "page". |
Have a
plan , including task breakdown. |
jag |
5 |
|
| A.4 |
Download Manager
I've asked German for a "UE sanctioned" spec version
but have received none, so assume that this
document constitutes a spec until such a document appears.
|
Have a
proposal , including rough spec/UI/API,
and a
task breakdown/estimate. Need a meeting to resolve issues, and UI spec. |
ben |
16 |
|
| A.5 |
Improved Image Management This is currently just a vague notion of copying a collection of features in IE6, with possible tie-ins to third-party servers. We need to understand what 'user problems' are hinted at in the PRD. |
Have a
plan ; need input from third party servers. |
bryner |
16 |
|
|
|
New Context Menu Options 1) Set Image As Wallpaper (Windows only) 2) Save Page as Text 3) Save page with Images - 4) Send Page, Edit Page - Before we add anything to the context menus, we should do some cleaning of what's in there already. It is currently heavy in many cases, and the code behind it is confusing. Blake has volunteered to help with this in 0.9.5. |
Have a
plan , needs review. |
|
13 |
|
|
|
Tip of the Day components: dialog - 2 days, tip database - 2 days, SWAG: 5 days. |
This is valuable, but not high priority (P3?).
Not just for newbies, see Gnome/KDE. Could just open up Tip tab in Sidebar. Need content for tip database. |
|
3 |
|
| A.8 |
Update Moved Bookmark Feature not sure if this is technically feasible or not, unless we assume moved pages have META refresh. Assuming this is the intent of the feature, 4 days including notification UI. |
Need spec/design. |
hewitt |
4 |
|
| Tab/group interface Add a tabbed interface, similar to what NetCaptor adds to IE. This feature adds technology that can also be considered a performance improvement, and may lead to new features or improvements to existing features. |
Have extremely conservative
task breakdown , need UI specifics. Should
be able to leverage mozilla.org's Multi-Zilla effort. |
hyatt |
13, some already done. |
||
| Page Zoom Be able to scale every element on the page and provide UI for it. |
I've talked to Todd Pringle about this and after he learned that we already support changing the text size, he agreed with me this feature was less important than it first seemed. Nice to have, but not critical for MachV. One estimate I've been given says at least 2 weeks for the layout engine support. tentative cut unless they commit to doing that work. |
jag |
1 |
bug 4821
bug 95267 |
|
|
Section B. Modified Features
|
|||||
|
Item |
Feature | Status |
Owner |
Days |
Links |
| B.1 | Improve Discoverability
of other Components
|
There have been a few suggestions:
Need to talk to people. swag A few days (say 3) for discussion with UE, up to 4 days for implementation depending on what we're going to do. Needs discussion. What do we need to rethink about the taskbar/tasks menu implementation? |
jag | 5 |
|
| B.2 |
Improve Windows Integration |
See Better Win Integration (G4) |
Plan | ||
|
|
Improve Keyboard and Mouse Support
(1 of 2 ) 2 weeks of time needed to rewrite the document tabbing code. 1 week QA time to verify correct kbd bindings (plus some to fix any stragglers). Mousewheel problems are due to outdated drivers (beyond our control), and native scrollbars in form controls, which could only be fixed by rewriting them in XBL. |
|
|
10d dev + 5d QA |
Keyboard and Mouse plan |
|
|
Re-Organize Top Level Menus shuffle around menu items, rename, etc. 1 day to collaborate on what to do, 2 days implementation |
Need requirements (documented usability problems?),
and spec.
|
|
3 |
|
|
|
Improve Helper Application Management Change "Helper Applications" preference panel to more closely resemble Communicator 4.X. |
|
|
24 |
Defect Tracker |
| B.6 |
Scroll on Personal Toolbar Create a binding that moves overflowing toolbar buttons into a menu accessible via a chevron button. I have some prototype code for this somewhere, but to get it working nicely - 5 days. |
Low priority, not worth 5 days to NS, recommend
offloading to mozilla.
|
hewitt |
5 |
|
| B.7 | Improve Keyboard Support
(2 of 2 ) Make "Enter" work on web pages with multiple fields |
|
evaughan |
||
|
|
Polish FTP file View Presentation I take this to mean that we should return to the tree-view FTP, as opposed to the flat HTML view that we use for 6.1. This will require conversion of the directory viewer to use outliner (the tree widget was too buggy, that's why we turned it off). [Marketing sez no, reason was lack of parent link] Estimated time for converting the directory viewer to use outliner is 3 weeks. |
Not worth 15 days to NS, BBaetz to take over
as part of directory viewer.
|
|
15 |
78148 |
| XBL Form Controls Benefits of doing XBL Form Controls:
|
Have a partial
task breakdown . Depends on content model
view for outliner, still need plan for that. Could probably offload
some work to embedding, mozilla.org. |
bryner |
16 |
||
| Section C: Bookmarks | |||||
|
|
Drag Bookmarks into Folders Ability to file into specific location within folders in popup menus. This is pretty strange UI but some Windows users are used to it, and expect us to go the next step. Blake is reportedly working on it at the moment. |
|
|
??? |
|
|
|
Enable In-line Editing of Bookmarks
(1 of 2) Implementation involves creating a) special inline edit binding (most of code for this already in hand) that can position an edit control. Time to finish and hone positioning - 2 days. b) creation of code in the outliner widget to handle launching of the edit widget, and handle what happens when widget is closed (notify outliner view) - 4 days c) documentation of API for others (there are many interested clients) - 1 day. d) Personal toolbar inline edit involves task similar to b), but creating attached to toolbars. This could be cut. Assume work also takes 4 days. Minimal - 7 days. Maximum - 11 days. |
Too expensive, low priority, even if we drop
the PT inline editing, what do we get out of this that is worth 7
days?
|
|
7 | |
| C.3 |
Add Tool Tips/Title
Tips to Bookmarks Sidebar Tab - assuming we can settle for showing title tips for truncated bookmark names, < 1 day. - assuming we need to show URL & description: harder, 3 days to write custom tooltip positioning code. |
requires Hewiitt's patch for outliner support?
|
ben |
4 |
|
|
|
Ability to Apply Sort to Bookmarks making sort apply in all outliners - 1 day |
|
|
1 |
|
| C.5 |
Switch to Outliner
Widget Convert the Bookmarks Manager and other bookmarks listviews to use the outliner widget.
|
Completed; waiting for start of 0.9.7 to land.
(task breakdown ) |
blake |
7 | |
|
|
Better Handling of IE Favorites - permanent import: 5 days (including UI) - import dialog, importing .lnk files and creating new bookmarks, maintain ability to show live view. |
|
|
5 |
|
| C.7 | Enable In-line
Editing of Bookmarks (1 of 2)
|
|
ben |
|
|
| C.8 |
Enable Custom Bookmark
Icons - custom icons for bookmarks - 3 days. (back end support in parser/datasource, provision of UI probably through properties dialog for choosing an image) |
Need spec, ?
Toddy says IE has this with no UI, we shouldn't need one either. |
ben |
3 |
|
| C.9 |
FTP Bookmark Improvements - ftp folder improvements - assuming this means ensuring that ftp bookmarks behave like regular bookmarks by default, rather than expanding into submenus/subfolders - 1 day. |
|
ben |
1 |
|
|
Section D: Search |
|||||
| D.2 |
Add Tool Tips/Title
Tips to Search Sidebar Tab Investigate how to insert the tooltip into the relevant template. Modify the search results template to contain URI as well as description text in a tooltip attribute. Should include complete URL & Description for results This depends on if Search is going to be convert to an outliner or not. Currently outliners are going to support titletips from work from hewitt but not tooltips. The bug is filed against hyatt about outliner supporting tooltips. http://bugzilla.mozilla.org/show_bug.cgi?id=96376 Also the tree currently supports tooltips. If the bug is not fixed then we have to make a choice not to convert the tree and support tooltips or make the convertion and have titletips instead. |
|
sgehani |
3 |
|
| D.3 |
Polish Search Results in Sidebar Dependent on UE suggestions. Suspect reformatting of template, maybe need some new info with search results. (no UE response yet): Assuming this requires
1 day:
|
Need UE input.
Sent Mail to German.
Expected response and disccussion early in the week of September
17, 2001 at the latest. |
sgehani |
4 |
|
| D.4 |
Implement Contextual Search
|
|
sgehani | 4 |
|
| D.5 |
Improve Search Performance 1 day:
|
||||
| Section E: My Sidebar | |||||
| E.1 |
Tab Persistence When
Closed Ability to persist tabs in the background once another tab is selected.
|
sgehani |
3 |
||
| E.2 |
Uniform Twisty and Click Behavior
- 2 days to make all tabs follow same model. |
ben |
2 |
||
| E.3 |
Easier Close/Reopen
Functionality End user feedback suggests that the "grippy" is hard to use, not very discoverable Update: UE (a. k. a., German) says "put an 'x' in the top right corner and change the arrow pointing right next to the 'Tabs' item to point down. Now make the 'Tabs' flyout open down instead of right. |
|
sgehani |
3 |
|
| E.4 |
Add Stop Button Button next to "Loading" message that allows user to stop loading a tab (Stop button exists but is commented out: probably due to hairy bug that needs investigation. Possible thread and perisstnce interplay.) |
2 days:
|
sgehani |
5 |
|
| E.5 |
Polish Context Menu Options
|
|
sgehani |
5 |
|
| E.6 |
Visual Indication of New Tab Content Allow visual cue that alerts user that a My Sidebar Tab has new/updated content (ex: CNN tab updates it's news stories) Similar code already used in Bookmarks Update possibly? Update: Still fleshing out engineering feasibility given new knowledge that dynamic content contains no valid Last-Modified HTTP entity header in the response. |
2
days:
|
sgehani |
5 |
|
| E.7 |
Add Ability to put Icon in Tab Header To enable users to more quickly identify specific tabs Example: Magnifying glass on Search tab Start with client side tabs |
|
sgehani |
2 |
|
| E.8 |
3 days:
Visual reordering as dragged tab moves vertically to indicate definitive target drop position. |
||||
Reconciliation of current-panel-list
|
4 days:
|
sgehani |
8 |
||
Convert both customize dialog <tree/> s to <outliner/>s
|
4 days:
2 days: Convert my tabs unnested tree. |
sgehani |
6 |
||
| Section F: History | |||||
|
|
Improve History
Performance We are lacking concrete performance targets for this. I suspect that the conversion of history to use outliner has already resolved most of the problem here. Need measurement and subjective evaluation. If needed, we may be able to optimize the presentation or the backend to further increase performance. I would estimate 1 week of work for profiling history operations, and another 2 weeks for optimizations if opportunities exist. Again, we really need some concrete targets to measure whether we've met this objective. |
Have
plan. Todd says it is good enough for
now, not worth estimate, cutting.
|
|
3d profiling + ?d optimizing. |
|
| F.2 |
Polish Delete Functionality in
Manage Window and Sidebar Updating UI immediately is now working. Allowing deletion of hosts from top level entry is definitely a high priority. A simple way of doing it -- searching recursively through the non-parent children -- would take a day. |
ready |
blake
|
1 |
|
| F.3 |
Add Tool Tips/Title Tips to History
entries in Sidebar Tab Hewitt has done outliner titletip work, it's in some bug. Once that's done, hooking this up is half a day's work |
ready |
blake |
1 |
|
| F.4 |
Expose Clear History Functionality
in Sidebar Tab Many users are clearing history so often they are asking for easier access from the sidebar panel. Select all /delete, undiscoverable? Add select-all to context menu? |
Mktg considers this
P1, |
blake |
1 |
|
| F.5 |
Expose Search History Functionality
via Sidebar Tab Involves just integrating the search into the tab, .5 days. |
ready |
blake |
1 |
|
| F.6 |
Add Toolbar to History Manage
Window As it says on the label, just involves adding a toolbar. .5 days. However it sounds like what's being proposed is a Find button, like in the bookmarks tab. If we're going to do it, we may as well make it more convenient by letting the user search right in the tab, as in IE (possibly even showing results as each character is typed). |
Needs UI sketch. |
blake |
2 |
|
| Section G: Download/Helper Apps/Plug-ins | |||||
|
|
Improve the "Plug-in
Finder" Experience Improve the behavior of the "default plug-in" that gets used for <embed> tags for which no plug-in can be found |
|
|
4 |
|
| G.2 |
Polish Reveal Location Functionality Improve UI wording ("Show File Location" for instance) Highlight downloaded file in File Managerrequires independent Mac and Windows implementations (see below under "Issues" for discussion of the situation on Linux). I have taken a glance at the Win32 shell APIs and it seems that selecting a file in a folder is possible. |
Have
plan for support on Win, already works on
Mac. |
law |
3 |
|
| G.3 |
Polish Unknown Content
Type Dialog/Experience Substantial overhaul of the nsIMIMEService and nsIMIMEInfo implementations. |
Have
plan that depends on improving Helper
App Mgt, need UI sketch. |
law |
10 |
Related to
helper app mgt . |
| G.4 |
Better Windows Integration Support the context-menu "Configure..." option on the Start menu internet application (to open prefs rather than IE's Internet Options). |
Have
plan , need task breakdown per
platform, better estimate. What about Mac, Linux? |
law |
4 |
|
| G.5 |
Enable Users to Automatically Launch
Executables Should incorporate a warning dialog into the process either as a separate dialog after selecting "Launch," or by incorporating warning text into the existing dialog. |
Need UI spec for this work,
input from UE, have
plan for implementing direct launch. |
law, german |
4 |
|
| Section H: Privacy and Security | |||||
|
|
Implement P3P Modify the cookie manager to incorporate the p3p back end that harishd is checking in (harishd will remain responsible for the p3p back end). We held a meeting this week and agreed upon a spec for what needs to be done. This is more ambitious than my original idea for which I estimated 2 to 4 days, but is more along the lines of what marketing wants. New estimate is about two to three weeks of my time. |
|
|
10-15 |
|
| H.2 |
Implement New Forms
Manager Functionality Autocomplete functionality on form fields with "Prefill Form" option in autocomplete drop down See German's spec here |
hewitt |
5 |
||
| H.3 |
Password Manager ImprovementsThis has several parts so I'll address each one separately. |
Need wording on 2. |
morse | 5 |
|
| Printing Line Items | ||
|---|---|---|
| A.1 | 15 days |
Print Preview (1 of 2, BE and FE)
|
| A.2 | 5 days |
Page Setup (BE and FE)
|
| A.3 | 2 days |
Fit to Page Print Option (BE and FE)
Have plan , depends on new print preview feature above. |
| A.4 | 5 days |
Print Preview Extras (2 of 2, BE and FE)
Have plan , depends on backend zoom working in preview mode. |