Repository navigation
uBlock Plus+ 1.1.2 — popup blocker fixes
Pre-releaseInstall in Chrome / Cài vào Chrome
Download uBlock-Plus_1.1.2.chromium.zip (Standard) and the matching SHA-256 file. Extract the ZIP, open chrome://extensions, enable Developer mode, and choose Load unpacked → the folder directly containing manifest.json.
Tiếng Việt: tải đúng ZIP Standard ở link trên, giải nén vào thư mục cố định, mở chrome://extensions, bật Chế độ dành cho nhà phát triển, chọn Tải tiện ích đã giải nén, rồi chọn thư mục chứa trực tiếp manifest.json.
GitHub's Source code (zip), Source code (tar.gz) and Code → Download ZIP contain development source. A folder such as uBlock-Plus-main must be built before Chrome can load it. Đây là mã nguồn, chưa phải gói tiện ích đã build; chọn thư mục đó thường gây lỗi “Tệp kê khai bị thiếu hoặc không thể đọc được”. Download the Standard extension asset above to install the tested package.
Popup blocker correctness and effectiveness update. Slow legitimate windows no longer become unwanted popups when their load completes, rapid separate clicks receive separate activation grants, and real form destinations honor submitter overrides and GET fields.
- Fix the Chrome opener/source-tab mismatch that let popup bursts inherit the wrong source. Use the authoritative navigation event and invalidate stale pending decisions.
- Respect popup-feature Off, site protection Off and contextual Allow during asynchronous decisions. Compiled popup filters retain their documented precedence over contextual Allow.
- Preserve inherited
about:blankquery/fragment origin, prioritize the actual opening frame within the existing 64-frame bound, and fail open if saved policy cannot be read. - Keep trusted destinations safe across slow loads and worker eviction without persisting their paths or queries. New redirects remain checked while the live candidate is available.
- Add a reproducible native Chrome harness with Off controls, normal browser protection and a separate laboratory run that isolates extension closures. No new extension permissions, runtime dependency or recurring DOM scanner.
Validation: 48 source test programs, lint, both release builds/validators and ZIP entry/checksum verification passed. Real installed Chrome 152.0.7977.76 passed 54/54 popup cases for Standard and 54/54 for Experimental, compared with 44/54 for the published 1.1.1 baseline. The ten baseline failures consist of four wrong tab outcomes and six wrong intent assertions. GitHub CI for this commit.
Evidence and limitations: popup blocker report. These controlled tests do not claim universal popup blocking or complete MV2 parity. The observer can close a tab after loading has begun; incomplete context retains the documented fail-open behavior. Uploaded ZIPs are the exact locally tested artifacts; independently rebuilt CI artifacts are not substituted for them.
Choose uBlock-Plus_1.1.2.chromium.zip for standard Chrome. The experimental ZIP requires its separate documented launcher/setup; popup tests alone do not certify synchronous WebRequest activation. Verify the matching SHA-256 file. For unpacked installations, replace the contents of the existing extension folder, click Reload at chrome://extensions, and confirm version 1.1.2. Source pushes and Releases do not automatically update an unpacked installation.