Performance improvement suggestion for 2 userscripts
During my testing of scripts favicon_in_urlbar.uc.js and tab_label_in_urlbar.uc.js I figured out, that DOMContentLoaded, load and TabOpen event listeners are not really neccessary for scripts to function. Basically, 99% of cases are covered by TabAttrModified event listener (if not all) — at least in the current Firefox version I tested (v115).
Moreover, by removing TabOpen listener and adding a check to react only to selected tabs changes, scripts became significally easier on browser startup. Without these changes they processed whatever many tabs user had automatically restored on browser startup — each sending few TabOpen and TabAttrModified events.
I guess, the only downside is — tab_label_in_urlbar.uc.js will temporary show url in the label widget for new tabs which are still loading and don't have any label yet.
I agree, removing unnecessary DOMContentLoaded, load and TabOpen listeners improves performance.
The script favicon_in_urlbar.uc.js had a few other issues needed to be resolved, before uploading a new version.