An open-source browser focused on efficiency and customization.
Pale Moon is an Open Source, Goanna-based web browser focused on efficiency and customization. Make sure to get the most out of your browser!
Pale Moon offers you a browsing experience in a browser completely built from its own, independently developed source that has been forked off from Firefox/Mozilla code a number of years ago, with carefully selected features and optimizations to improve the browser's stability and user experience, while offering full customization and a growing collection of extensions and themes to make the browser truly your own.
Updated on May 16 2023
window.event. This is disabled by default but can be enabled through about:config's
dom.window.event.enabledpreference. See implementation notes.
self.structuredClone()(this may be very obscure to anyone except web developers. Apologies ;-) )
Element.replaceChildren. Once again primarily a web developer note.
::slotted()and related functionality.
inet_ntoa()instead of the deprecated
fontconfigon GTK systems.
dom.webcomponents.enabledpref. See implementation notes.
window.eventhas been a pervasive web compatibility issue for us, especially since it was officially deprecated and we never implemented this ambiguous and unreliable property that is highly-context sensitive. Websites should use the event as passed into the event handler to get the event source instead. However, since neither Chrome nor Firefox have dropped this and seem to be playing a game of "chicken", it remains in use on the web. To deal with this conflict, we have now implemented the equivalent behind a preference to enable users to (temporarily) use the global
window.eventwhile webmasters update their websites. We hope the Google camp will finally drop this one soon so we can be done with this legacy quirk.
getRootNodefunction as it was being used in the wild as a standalone function, however its main intent has always been to be a helper function part of Shadow DOM/WebComponents. As such we have now merged the preference into the WebComponents preference, enabling and disabling it along with the rest of our WebComponents implementation.