Есть самописное расширение для одного сайта. Что бы браузер не замораживал вкладку, был написан костыль который крутит видео в фоне и не дает браузеру усыпить вкладку.
Но все равно нужно сделать хоть один клик на странице, что бы вкладка не замораживалась. Можно ли как то обойти это, что бы вкладка после открытия или обновления по F5 была активной и что бы браузер не смог ее заморозить, что бы скрипты расширения могли выполняться без первого клика пользователя?
Самая главное что я не могу решить, как заставить расширения сразу после открытия страницы выполнять произвольный код.
//<editor-fold desc="Вкладки - пинаем спящие">
const video = document.createElement('video');
video.setAttribute('width', '10');
video.setAttribute('height', '10');
video.style.position = 'absolute';
video.style.top = '-10px';
video.style.left = '-10px';
document.body.appendChild(video);
const video_mp4 = document.createElement('source');
video_mp4.setAttribute('src', `chrome-extension://${document.head.dataset.extension}/video/dummy.mp4`);
video_mp4.setAttribute('type', 'video/mp4');
video.appendChild(video_mp4);
const video_ogg = document.createElement('source');
video_ogg.setAttribute('src', `chrome-extension://${document.head.dataset.extension}/video/dummy.ogv`);
video_ogg.setAttribute('type', 'video/ogg');
video.appendChild(video_ogg);
addEventListener(`click`, () => {
video.setAttribute('loop', 'loop');
video.play().catch(e => console.error(e));
setInterval(() => {
document.title = new Date(server_time()).toLocaleTimeString();
if (parent) parent.document.title = document.title;
}, 500)
}, {once: true});
//</editor-fold>