Мое расширение Firefox вызывает функцию-наблюдатель при загрузке, которая перехватывает http-запросы (http-on-modify-request) из определенных доменов и открывает их в новой вкладке.
Проблема, с которой я столкнулся, заключается в том, что если открыто несколько окон браузера (не вкладок, а новые окна браузера), то JS для моего расширения выполняется несколько раз, и в результате добавляются несколько прослушивателей событий. Все эти прослушиватели событий запускаются, и перехваченный http-запрос открывается сразу в нескольких вкладках.
Какое лучшее решение здесь? Если бы был способ добавить прослушиватель событий только один раз, это могло бы быть проблемой, поскольку, если бы я закрыл окно браузера, в котором был добавлен прослушиватель событий, тогда не было бы прослушивателя событий, который бы перехватывал эти запросы http.