Browser Window

From MozillaWiki
Revision as of 04:01, 6 August 2005 by Ben (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Introduction

Several elements of the browser front end code are what could optimistically be described as a sewer. The main browser javascript file has for the past six years been a poorly thought out, dumping ground. We have all contributed. The browser code in general is hard to follow, lightly if at all documented, and miserable for extension developers.

We have also discovered limitations of the <tabbrowser/> widget (though I want to point out its limitations are not related so much to code quality as intent-vs.-use and lack of documentation) - it is difficult to extend and embellish.

As a result, I would like us to embark on an adventure to fix this code. This involves:

  • identifying target uses
  • auditing the existing code for behavior
  • developing a general design for the new browser
  • incrementally refactoring existing code to achieve this design

Stages

Code Audit

Tasks

  1. Kill nsBrowserInstance
 The browser "appCore" appears to be used for nothing more these days than the Page Cycler, which is used by some tinderbox tests. The Page Cycler should be redeveloped as an extension, and this dependency on xpfe/ excised completely.