Оптимизация рантайма и кода инжекторов, повышение общей скорости обработки запросов.
Доработка логики переходов в режиме авточтения, доработка скриптов Панели управления.
Проверка работоспособности: SRWare Iron 29/31/49, 360 Extreme Explorer 9/11/12/13 (CR63/69/78/86), Chromium 87.
Основные изменения:
- оптимизация рантайма* и кода инжекторов, повышение общей скорости обработки запросов;
В предыдущих версиях для работы со списком окон и вкладок использовался API chrome.windows. Теперь функции этого API не используются, заменены на chrome.tabs.query с целью повышения общей скорости работы за счёт более простого и короткого алгоритма обработки (теперь все групповые операции выполняются в одном цикле).
Добавлена проверка возможности загрузки инжекторов с параметром "runAt:'document_start'". При этом процесс инжекции ускорен для всех браузеров версий CR44+ за счёт максимально ранней загрузки инжекторов. Проверка совместимости добавлена для исключения ошибок рантайма на более старых версиях браузеров (без поддержки этого ключа).
Оптимизирован обмен запросами между фоновым процессом и инжекторами, убраны "лишние" запросы к инжектору при обработке кода пользовательских стилей – ранее изменение кода стилей в настройках приводило к повторной переустановке цветовой схемы, теперь такие запросы не отправляются вообще (в общем случае теперь передача параметров выполяется для каждой из вкладок только один раз, до момента следующей перезагрузки вкладки).
- доработка логики переходов в режиме авточтения, убрана мелкая "шероховатость" переключения по хоткею;
Проявлялось после перезагрузки вкладки в режиме авточтения, для отключения этого режима хотеем (Shift+F11) приходилось нажимать его дважды. Устранено, теперь всё и всегда работает "с первого пинка".)
Кроме того, теперь не происходит сбрасывания текущего просмотра в режиме чтения при переключении вкладки в режим авточтения (добавлена проверка состояния блока ридера, если он активен – состояние не меняется, только снимается или устанавливается флаг авточтения для текущей вкладки).
- доработка скриптов Панели управления, убраны некоторые погрешности установки/отображения подсказок.
Упрощена часть функций, улучшено динамическое формирование функций обработки экранных кнопок и подсказок к ним в различных режимах (в частности, в достаточно редко используемом режиме авточтения). В общем, чистая "косметика".. :)
* Подробнее смотрим в общей документации: Russian Hacker Vision : Применяемые API и отличия версий.
Прочие изменения:
- оптимизация исходного кода, изменён набор переменных, улучшена/изменена часть функций, добавлены новые.
Известные проблемы:
- Пока отсутствуют, но если вдруг что – не стесняемся и пишем баг‑репорты в комментариях…:)
Скриншоты:
Блок аддона на странице управления расширениями:
История и обсуждение
Общие технические сведения
- Технологии и API:
Чистый JavaScript (ES5), API: tabs, content-script, browserAction
- Запрашиваемые разрешения:
[ "tabs", "", "unlimitedStorage" ]
Загрузка и установка
Дополнительно
|