gecko-dev/browser
2002-10-06 14:00:55 +00:00
..
app Support building Phoenix with jprof. Thanks to bbaetz for the patch. 2002-10-03 08:30:19 +00:00
base Implement chevron for overflow. 2002-10-06 02:07:35 +00:00
components bug 172504: after clicking on a disabled item, CM does not work anymore 2002-10-06 14:00:55 +00:00
.cvsignore
Makefile.in Switch to building in browser/app and linking with libxulapp_s, instead of building in xpfe/bootstrap, for Phoenix. Remove some MOZ_PHOENIX #ifdefs that are no longer needed. Not part of the normal build. 2002-09-02 04:03:07 +00:00
NOTES Some ideas for the site toolbar. 2002-04-07 21:51:55 +00:00
README.html adding disable mailnews and composer to the recommended .mozconfig file 2002-10-02 23:28:25 +00:00
TODO Some bugs: crashes opening the sidebar, and the fact that the search sidebar is a leeetle broken. 2002-04-11 18:34:12 +00:00

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<html lang="en-GB-hixie">
 <head>
  <title>Phoenix</title>
 </head>
 <body>
  <h1>Phoenix</h1>

  <p><span class="LXRLONGDESC">This project is a redesign of the
  Mozilla browser component, similar to Galeon, K-Meleon and Chimera,
  but written using the XUL user interface language and designed to be
  cross-platform.</span></p>


  <h2>Principles, Strategy, Tactics, and Concrete Design Decisions</h2>

  <ol>
   <li>CVS access is restricted to a very small team. We'll grow as
   needed, based on reputation and meritorious hacks.</li>

   <li>This will be a single process for the browser only. Mail
   clients, web editors, etc, will be out-of-process. Hooks for other
   apps will be provided eventually, although that is not an immediate
   goal.</li>

   <li>No profile manager UI on startup, although you can still select
   multiple profiles from the command line.</li>

   <li>The default theme will be based on Classic, utilizing nsITheme 
   to respects the system look and feel. Phoenix will not use the old 
   and stale Communicator icons. Additional themes will be supported 
   but will not be part of Phoenix.</li>

   <li>The toolbar(s) will be configurable. That includes moving the
   location bar where the user wants it (not just splitting it so it
   takes a whole toolbar width).</li>

   <li>The personal toolbar is the personal toolbar, not the
   whorebar.</li>

   <li>All wallet-like functionality will be rewritten from
   scratch.</li>

   <li>We will have a sidebar, but it may work differently from
   Mozilla's current one.</li>

   <li>There won't be 239 access points for Search and for
   Bookmarks!</li>

   <li>We may drop the throbber.</li>

   <li>The interface will not be "geeky" nor will it have a
   "hacker-focus". Nor will it be "minimal". The idea is to design the
   best web browser for most people. (This doesn't mean every feature
   has to be enabled by default.)</li>
  </ol>


  <h2>Notes</h2>

  <p>We won't be redesigning the editor widget(s) or other parts of
  Gecko as part of this project.</p>
  
  <p>We plan to move this app to the 
  <a href="http://www.mozilla.org/projects/embedding/MRE.html">MRE</a>
  or the <a href="http://www.mozilla.org/projects/xul/xre.html">XRE</a> 
  but those projects are not ready for us so we have not started that 
  work yet.</p>


  <h2>FAQ</h2>

  <h3>Q1. Why?</h3>

  <p>Some of us want to have fun and build an excellent, user-friendly
  browser without the constraints (such as unnecessary features,
  compatibility, marketing requirements, month long discussions, etc.)
  that the current browser development requires.</p>

  <p>Others of us are simply using this as a prototype to demonstrate
  possible optimizations to the trunk, such as stripping overlays or
  separating the application into separate processes instead of
  running one monolithic suite.</p>

  <h3>Q2. Why only a small team?</h3>

  <p>The size of the team working on the trunk is one of the many
  reasons that development on the trunk is so slow. We feel that
  fewer dependencies (no marketing constraints), faster innovation (no
  UI committees), and more freedom to experiment (no backwards
  compatibility requirements) will lead to a better end product.</p>

  <h3>Q3. Where do I file bugs on this?</h3>

  <p>We're still chopping with strong bursts and broad strokes. There's 
  plenty that's obviously broken and we don't need bugs on that. If you 
  find a bug (a feature request is not a bug) and you're sure that it's 
  specific to Phoenix (not present in Mozilla) and you've read all of the 
  existing Phoenix bugs well enough to know that it's not already reported 
  then feel free report it on the Phoenix product in Bugzilla. </p>

  <h3>Q4: Why are you guys wasting time making a FAQ?</h3>

  <p>Because we would waste tons of time answering these questions, if
  there were no FAQ.</p>

  <h3>Q6: So to whom do I send patches?</h3>

  <p>We're not quite ready for this stage.</p>

  <h3>Q7: How do I get involved?</h3>

  <p>By invitation. This is a meritocracy -- those who gain the respect of
  those in the group will be invited to join the group. See Q6.</p>
  
  <h3>Q8: What about OS X?</h3>
  
  <p>Chimera is the top gecko-based browser for OS X. We do not intend
  to compete on that platform.</p>
  

  <h2>Getting the Source</h2>

  <ol>
   <li>Go to the root of your mozilla tree.</li>
   <li><kbd>cvs up -Pd browser</kbd></li>
  </ol>

  <h2>Building mozilla/browser </h2>

  <h3>UNIX, Windows (gmake), Mac (mach-o)</h3>

  <ol>
   <li>Ensure that MOZ_PHOENIX is set to 1 in your .mozconfig file. A good .mozconfig file is shown below:<br>
       <br>
       <code>
        export MOZ_PHOENIX=1<br>
        mk_add_options MOZ_PHOENIX=1<br>
        ac_add_options --enable-crypto<br>
        ac_add_options --disable-tests<br>
        ac_add_options --disable-debug<br>
        ac_add_options --disable-mailnews<br>
        ac_add_options --disable-composer<br>
        ac_add_options --enable-optimize=-O2<br>
        <br>
       </code>
   <li>Run the mozbrowser executable that is left in dist/bin</li>
  </ol>

  <h2>Mac (CodeWarrior)</h2>

  <p>This platform is currently not supported.</p>

 </body>
</html>