A sidebar API and tab modification API will be implemented specifically to allow TST to work. The addon will have to be rewritten completely on a very short timescale, though.
So, can I use that to add Tab Thumbnails to Firefox? Can I use it to port AutoHiDPI, which changes the scale of the UI depending on which screen the window is on?
Can I use this to replace the entire browser history system and omnibar autocomplete with a custom one?
Can I use this to replace the entire browser chrome?
Some of these changes I need (AutoHiDPI) to use a browser at all. Others I wish for. All of them I currently am using.
The alternative is me staying on an ancient browser, or forking Firefox and browsing with a horribly outdated and barely patched version. Or reading HN with a magnifying glass.
Replacing the entire browser chrome is unlikely to happen on the release channel of Firefox, but everything else has potential.
Generally, the way forward will be to use WebExtension Experiments (https://webextensions-experiments.readthedocs.io/en/latest/i...), which let you run classic-style "bootstrapped" add-ons in Firefox Developer Edition or Nightly. The intended use is for prototyping new WebExtension APIs for eventual inclusion into mainline Firefox, but nothing limits you to that usage.
That’d require a lot of work from me – at this point it would be easier for me just to switch to Vivaldi, or hardcode my fixes as patches into Firefox itself.
In fact, the per-screen HiDPI setting even has an environment variable on most Linux systems (Qt’s QT_SCALE_FACTORS), but Firefox completely ignores that.
I don’t have the time anymore to rewrite half the UI stack of every single application I use, and then take over maintenance of that. I’ve done that with a few open source projects, but my time is limited. And if I wanted to implement extending the UI properly, I’d definitely have to rewrite the entire stack, similar to what Browser.html does.
Well Palemoon is a fork of pre-Australis Firefox that is trying to maintain compatibility with the existing XUL extensions as best i can tell, so i figured the transition would be smaller than going to a webkit/chrome based browser.