ECR#2. Вторая экспериментальная концепт-версия (aka "ECR").
Отработка дополнительного функционала (с учётом изменений в SmartAdBlock'е версии 1.1.3).
Проверка работоспособности: SRWare Iron 29/31/49 + 360EE9/11/CR63/69.
Добавлены новые функции и соответствующие опции в Настройках:
- блокировка механизмов слежения и трекеров – запрет ping-запросов, удаление реферрера, "выпрямление" ссылок и очистка их от мусора;
- возможность использования "чёрных списков" – спец.правила и подписки, в т.ч. – блокировка на базе hosts-файлов (автоопределение формата);
- оперативное включение/отключение вывода изображений на странице – через контекстное меню страницы;
- блокировка автозапуска HTML5-видео и/или блокировка использования флеш-плагинов (Adobe Flash и VLC web-plugin);
- автоматическая принудительная разблокировка контекстного меню страниц (подключаемый доп.модуль в контент-скрипте);
- принудительная зачистка содержимого страницы (HTML-кода) от всех заблокированных элементов (удаление скрытой "косметики" после загрузки);
- возможность использования прокси-правил для обхода ограничений доступа к любым ресурсам (анти-РКН, ошибки сертификатов и т.д.);
- управление автоперезагрузкой страницы при изменении статуса "белый список" (не блокировать любое содержимое);
- добавление подписок по ссылкам с протоколом abp:* через контекстное меню.
Другие функциональные изменения:
- возможность использования специфичных правил SmartAdBlock независимо от наличия соответствующих подписок (локальный файл + опция);
- дальнейшее разделение функций по модулям с их запуском "по требованию" и последующей выгрузкой из памяти, отдельно вынесены:
- модуль управления блокировкой контента (перекрывает часть браузерных настроек в chrome://settings/content);
- модуль загрузки прокси + оптимизация кода + дополнительные функции для дешифрования ссылок/запросов;
- модуль управления/настройки контекстного меню (задействуется только при старте или при изменениях настроек);
- модуль построения наборов подписок, универсальный скрипт – используется только при старте и/или при настройках;
- оптимизация контент-скрипта, теперь контент-скрипт = загрузчик для отдельных функциональных модулей (самоудаляемых):
- основной модуль – антикликер + "автоответчик" для связи с фоновым скриптом + все фичи контекстного меню;
- модуль очистки контента страницы + разблокировки контекстного меню + анти-флэш (js+css);
- модуль авто-стопа воспроизведения HTML5 видео (работает по типу контента, для тегов <video>).
Прочие изменения:
- манифест: добавлены дополнительные разрешения CSP для корректного запуска модулей контент-скрипта;
- добавлены локальные фильтры-примеры для "чёрного списка" (blacklist.txt), прокси-правил (proxypass.txt) и правил синтаксиса SAB (popuprisk.txt);
- доработана логика работы функций обновления подписок, счётчика блокировок и всех функций проверки/блокировки запросов;
- оптимизация кода скриптов в части снижения потребления и очистки памяти и увеличения скорости обработки;
- улучшена совместимость со старыми версиями браузеров, исправлен ряд мелких ошибок при работе в strict-mode;
- в Настройках добавлены опции для новых функций + дописаны/поправлены подсказки.
Скриншоты:
[Копия скриншота]
Общие технические сведения
- Технологии и API:
Чистый JavaScript (ES5), API: content_scripts, tabs, contextMenus, contentSettings, webRequest, storage, browserAction
- Запрашиваемые разрешения:
[activeTab, tabs, contextMenus, contentSettings, webRequest, webRequestBlocking, storage, unlimitedStorage, , chrome://favicon/*]
Загрузка и установка
Дополнительно
|