Will Pittenger wrote:Cork says you're underestimating the amount of work to maintain even just the UI. Might have something to do with the Toolkit not being available as a DLL. Having not developed Mozilla stuff, I don't know. Not sure if we can cut the UI code out and replace the toolkit stuff with XULRunner or not.
I'm not underestimating the work. But if Mozilla is hellbent on shipping Firefox with the Australis UI then I'll have to do something to have a usable UI on Pale Moon.
I've also had a close look at what Mike Conley has been backing out in Holly (pretty much exclusively in the browser/ directory, reverting style changes and xul changes, and discounting the whole customizableui module hacking), and dependencies on the toolkit are not extensive, to say the least. Right now it most certainly doesn't look like that would prevent me from porting the current UI forward on a later code base.
Maintenance is also less of a concern when I don't swap stuff around on a rabid release schedule every 6 weeks. So even if it's a lot of work to get a working base, it will be worth it when the major version will last a year or more.
That is, IF there is a need to swap code base, to begin with, because:
It would make more sense to stay with V24 codebase and backport security add-ons and features which can be backported. And yes, i also believe that it could be seen on long terms tiresome and complicated to port back with every version change the UI - especially since Mozilla is so desperate in trying to destroy their browser...
... this is still a viable approach too (regardless of how much of a "Dead End" Cork may think it is). It at least provides an acceptable flexible period of transition, but it may prove the desired base to work from and branch off at.
Thirdly, Firefox, with all its bells and whistles, is still a XulRunner app at its core. It is fairly modular (unless that is also being destroyed as part of the redesign) and the UI is as a result reasonably separated from the core. I said it before: if need be I'll rewrite parts of the UI. And while at it probably get rid of some chunks of spaghetti code with 5 redirections and overloads for a simple function that are present now.
Then, there is, if all else fails, the option to ride Firefox Australis, but with essential additions and changes on top of it (through integrated extensions and additional code) to overlay a sane UI on top of Australis. I would rather not, since it makes the browser unnecessarily heavy, but it's a fallback.