Update PDF.js to new version 9b5cd3db649a7a23f436b30e4e071f5e5eaf8822 from 2026-05-21 18:27:53
Categories
(Firefox :: PDF Viewer, enhancement)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox153 | --- | affected |
People
(Reporter: update-bot, Assigned: update-bot)
References
(Blocks 1 open bug)
Details
(Whiteboard: [3pl-filed][task_id: A9fQ2yCDSvaGWCkV6m3yLw])
Attachments
(1 obsolete file)
This update covers 9 commits. Here are the overall diff statistics, and then the commit information.
toolkit/components/pdfjs/PdfJsDefaultPrefs.js | 1 +
toolkit/components/pdfjs/content/build/pdf.mjs | 435 +++++++++++++-
toolkit/components/pdfjs/content/build/pdf.scripting.mjs | 4 +-
toolkit/components/pdfjs/content/build/pdf.worker.mjs | 6 +-
toolkit/components/pdfjs/content/web/viewer-geckoview.css | 3 +-
toolkit/components/pdfjs/content/web/viewer-geckoview.mjs | 60 +-
toolkit/components/pdfjs/content/web/viewer.css | 14 +-
toolkit/components/pdfjs/content/web/viewer.mjs | 62 +-
toolkit/components/pdfjs/moz.yaml | 4 +-
9 files changed, 559 insertions(+), 30 deletions(-)
0f909879275e8aacbe5c794aac1c0af2c9e0e1bb by Calixte Denizet <calixte.denizet@gmail.com>
https://github.com/mozilla/pdf.js/commit/0f909879275e8aacbe5c794aac1c0af2c9e0e1bb
Authored: 2026-05-20 19:30:22 +0200
Committed: 2026-05-21 16:39:34 +0200
Fix 'Select all' after #20981
Files Modified:
- src/display/draw_layer.js
- test/integration/text_layer_spec.mjs
74471651c79efceab7eb8b5aa0cfc2cc6085b531 by Jonas Jenwald <jonas.jenwald@gmail.com>
https://github.com/mozilla/pdf.js/commit/74471651c79efceab7eb8b5aa0cfc2cc6085b531
Authored: 2026-05-21 14:03:32 +0200
Committed: 2026-05-21 14:03:32 +0200
Extend unit-test coverage for the getPdfFilenameFromUrl helper function
Currently there's a couple of branches, specifically for dealing with corrupt URLs, that are not covered by tests.
Files Modified:
- test/unit/display_utils_spec.js
429b469ecbfad83027f6a9a816ea3a4fc03869f5 by Jonas Jenwald <jonas.jenwald@gmail.com>
https://github.com/mozilla/pdf.js/commit/429b469ecbfad83027f6a9a816ea3a4fc03869f5
Authored: 2026-05-20 14:45:29 +0200
Committed: 2026-05-20 17:26:50 +0200
Add basic integration-tests for the PdfTextExtractor class
Files Added:
- test/integration/text_extractor_spec.mjs
Files Modified:
- test/integration/jasmine-boot.js
- web/genericcom.js
abe8b564a346070b7fc921db0d1335fdb7ff2e1d by Jonas Jenwald <jonas.jenwald@gmail.com>
https://github.com/mozilla/pdf.js/commit/abe8b564a346070b7fc921db0d1335fdb7ff2e1d
Authored: 2026-05-20 16:39:21 +0200
Committed: 2026-05-20 16:39:21 +0200
Don't use "internal" EventBus methods in the integration-tests
This way guarantees that any and all internal viewer state has been updated first, before any test-specific code runs.
Files Modified:
- test/integration/reorganize_pages_spec.mjs
16a9f1cafc6268e65014393c05d9504cbf4e532e by dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
https://github.com/mozilla/pdf.js/commit/16a9f1cafc6268e65014393c05d9504cbf4e532e
Authored: 2026-05-19 23:20:52 +0000
Committed: 2026-05-19 23:20:52 +0000
Bump github/codeql-action from 4.35.3 to 4.35.4
Bumps github/codeql-action from 4.35.3 to 4.35.4.
updated-dependencies:
- dependency-name: github/codeql-action
dependency-version: 4.35.4
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Files Modified:
- .github/workflows/codeql.yml
5b991730433e4d101dee44e748425a4db8f13e5a by dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
https://github.com/mozilla/pdf.js/commit/5b991730433e4d101dee44e748425a4db8f13e5a
Authored: 2026-05-19 23:19:08 +0000
Committed: 2026-05-19 23:19:08 +0000
Bump actions/create-github-app-token from 3.1.1 to 3.2.0
Bumps actions/create-github-app-token from 3.1.1 to 3.2.0.
updated-dependencies:
- dependency-name: actions/create-github-app-token
dependency-version: 3.2.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Files Modified:
- .github/workflows/notify-pdf-sync.yml
- .github/workflows/update_locales.yml
957e004e38faa2f0175d905ef09fb3ee85347961 by Titus Wormer <tituswormer@gmail.com>
https://github.com/mozilla/pdf.js/commit/957e004e38faa2f0175d905ef09fb3ee85347961
Authored: 2026-03-26 12:14:14 +0100
Committed: 2026-05-19 21:10:12 +0200
Make text selection more visible (bug 1879559)
References https://bugzilla.mozilla.org/show_bug.cgi?id=1879559
(“In HCM, the text selection is barely visible”).
Continues work from @calixteman who had a partial patch.
This PR improves viewer text-selection highlighting by rendering
selection shapes in the draw layer.
- add selection overlay rendering in the draw layer
- significant code relates to selections spanning multiple text
layers/pages, and edges/end-of-content boundaries
- significant code relates to selections spanning multiple text
- clear selection on rotate/scale/scroll/spread changes
My main question is: how should it appear?
I don’t have access to the Figma file linked on bugzilla.
In the CSS (draw_layer-builder.css) there are 3 blocks:
- default
@supportsfor browsers supportingbackdrop-filterforced-colorsmode
So it’s possible to design for those (or more).
Personally, the backdrop-filter: invert(1) is the most contrast,
so perhaps it’s better to use something else as the default,
and to use invert(1) if high contrast mode is used (maybe with a
prefers-contrast media query instead)?
Files Modified:
- src/display/draw_layer.js
- src/display/filter_factory.js
- test/integration/text_layer_spec.mjs
- web/annotation_editor_layer_builder.css
- web/app.js
- web/app_options.js
- web/base_pdf_page_view.js
- web/draw_layer_builder.css
- web/draw_layer_builder.js
- web/pdf_page_view.js
- web/pdf_viewer.js
- web/text_layer_builder.css
60591388a85499f3ff970522d98352dca15da8cc by Tim van der Meij <timvandermeij@gmail.com>
https://github.com/mozilla/pdf.js/commit/60591388a85499f3ff970522d98352dca15da8cc
Authored: 2026-05-19 20:16:32 +0200
Committed: 2026-05-19 21:07:26 +0200
Disable hardware acceleration for Chrome tests
This commit fixes the rendering issue that makes the "must update an
existing annotation" ink editor integration test permafail locally in
Chrome. Note that we already do this for Firefox tests, so this also
improves consistency between the two browsers.
Moreover, improve how we define Chrome options to (similar to their
Firefox counterparts) provide them in a single array, and document the
reasoning for why these options are being set more explicitly.
Fixes #21272.
Files Modified:
- test/test.mjs
0d69cc4dcf368272d5122fe04c61ba390fcf06e0 by Tim van der Meij <timvandermeij@gmail.com>
https://github.com/mozilla/pdf.js/commit/0d69cc4dcf368272d5122fe04c61ba390fcf06e0
Authored: 2026-05-17 16:12:52 +0200
Committed: 2026-05-18 20:52:00 +0200
Introduce integration tests for the presentation mode functionality
This commit provides coverage for the happy flows of basic operations
like entering/exiting and changing pages.
Files Added:
- test/integration/presentation_mode_spec.mjs
Files Modified:
- test/integration/jasmine-boot.js
| Assignee | ||
Comment 2•2 days ago
|
||
| A9fQ2yCDSvaGWCkV6m3yLw | ||
I've submitted a try run for this commit: https://treeherder.mozilla.org/jobs?repo=try&revision=a8ce9ee4ce4edfd202a7c6265cf1d4462a69e674
| Assignee | ||
Comment 3•2 days ago
|
||
Updated•2 days ago
|
| Assignee | ||
Comment 4•2 days ago
|
||
| A9fQ2yCDSvaGWCkV6m3yLw | ||
This bug is being closed because a newer revision of the library is available.
This bug will be marked as a duplicate of it (because although this bug is older, it is superseded by the newer one).
Updated•2 days ago
|
| Assignee | ||
Comment 5•2 days ago
|
||
| VSVqa9AEROuXG8uDPpP61A | ||
All the jobs in the try run succeeded. Like literally all of them, there weren't
even any intermittents. That is pretty surprising to me, so maybe you should double
check to make sure I didn't misinterpret things and that the correct tests ran...
Anyway, I've done all I can, so I'm passing to you to review and land the patch.
When reviewing, please note that this is external code, which needs a full and
careful inspection - not a rubberstamp.
Description
•