This release contains bugfixes and optimizations/cleanups, in particular in the areas of annotations/forms, text selection, font conversion, accessibility and performance (reduced browser reflows).
Changes since v3.3.122
- Bump versions in
pdfjs.config
by @timvandermeij in #15974 - Remove the transition when displaying the sidebar when the user prefers reduced motion (bug 1813138) by @calixteman in #15973
- Extend
getGlyphMapForStandardFonts
with additional entries (issue 15977) by @Snuffleupagus in #15979 - Allow, optionally, using worker-modules during local development by @Snuffleupagus in #15984
- [Editor] Make the annotation editor layer invisible when disabled and empty by @calixteman in #15970
- Remove the loading icon div and replace it by a pure css solution using :after. by @calixteman in #15992
- Limit the
singlePageView
CSS rules to only the COMPONENTS build by @Snuffleupagus in #15996 - Remove the
loadingIcon
in all cases when resetting the page (PR 15992 follow-up) by @Snuffleupagus in #15997 - [GeckoView] Remove unused
@media
CSS rules by @Snuffleupagus in #15999 - Limit the
removePageBorders
option, inPDFViewer
, to only GENERIC builds by @Snuffleupagus in #15998 - Remove a couple of manual loops in the
PDFViewerApplication.open
method by @Snuffleupagus in #15991 - [GeckoView] Don't initalize the cursor-tools, since they're unused by @Snuffleupagus in #16001
- Remove the
isEmptyObj
unit-test helper function by @Snuffleupagus in #16005 - Move the
--scale-select-width
CSS variable to the relevant DOM element by @Snuffleupagus in #16003 - [api-minor] Let the
cMapPacked
parameter, ingetDocument
, default totrue
by @Snuffleupagus in #15981 - [api-minor] Update the minimum supported browsers, and remove the PostCSS
logical
plugin by @Snuffleupagus in #15968 - Remove unused parameters from the
onOpenWithTransport
method inPDFViewerApplication.initPassiveLoading
by @Snuffleupagus in #15987 - Improve how we cache Promises in
WorkerTransport
by @Snuffleupagus in #16004 - Miscellaneous small viewer improvements by @Snuffleupagus in #16006
- Re-factor the parameter parsing/validation in
getDocument
by @Snuffleupagus in #16007 - [GeckoView] Avoid unused outline, attachments, and layers fetching by @Snuffleupagus in #16016
- [GeckoView] Reduce the size of the built viewer by @Snuffleupagus in #16009
- [Annotation] Avoid to encrypt the appearance stream two times (bug 1815476) by @calixteman in #16020
- [GeckoView] Skip fetching/parsing of pageLabels by @Snuffleupagus in #16018
- [Annotation] Take into account the stroke alpha for a FreeText without appearance by @calixteman in #16023
- Remove most build-time
require
statements from the viewer (PR 16009 follow-up) by @Snuffleupagus in #16019 - Fix pinch-to-zoom on mac for the Firefox builtin viewer by @calixteman in #16026
- Avoid a useless animation when the spinner is invisible by @calixteman in #16025
- Hide the struct tree layer during zooming by @calixteman in #16017
- Change the
LoopbackPort
class to use a Set internally by @Snuffleupagus in #16030 - [Annotation] For choice widget, use the I entry instead of the V one (bug 1770750) by @calixteman in #16031
- Ignore position of combining diacritics when getting text (bug 1640217) by @calixteman in #16033
- Reduce usage of the
arrayByteLength
helper function by @Snuffleupagus in #16032 - [Annotation] A combo can have a value other than one in the options by @calixteman in #16035
- Ensure that "GetAnnotations" errors are propagated to the main-thread (PR 15267 follow-up) by @Snuffleupagus in #16042
- Update packages and translations by @Snuffleupagus in #16046
- Update Stylelint to version 15 by @Snuffleupagus in #16048
- Improve the consistency between the
LocalPdfManager
/NetworkPdfManager
constructor by @Snuffleupagus in #16047 - Slightly re-factor preferences/options initialization in the viewer by @Snuffleupagus in #16045
- Move
rewriteUrlClosure
into theweb/chromecom.js
file by @Snuffleupagus in #16028 - Remove inline opening of PDF attachments in the COMPONENTS build by @Snuffleupagus in #16013
- Re-factor the
arraysToBytes
helper function (PR 16032 follow-up) by @Snuffleupagus in #16040 - Remove the unused
eventBus
option inPDFThumbnailViewer
(PR 15215 follow-up) by @Snuffleupagus in #16051 - Reduce duplication for reference tests with an
annotationStorage
entry by @Snuffleupagus in #16053 - Don't replace an eol by a whitespace when the last char is a Katakana-Hiragana diacritic by @calixteman in #16065
- A little clean-up of the
getDocument
call intest/driver.js
by @Snuffleupagus in #16054 - [api-minor] Deprecate providing binary data as
Buffer
in Node.js environments by @Snuffleupagus in #16055 - Don't try to place the
xfaLayer
"on top" in regular PDF documents by @Snuffleupagus in #16056 - [JS] Send a Validate action on change on Choice widget by @calixteman in #16071
- Move the
ImageBitmap
clean-up into thePDFObjects
class by @Snuffleupagus in #16079 - [a11y] Improve the visibility of link annotations in HCM by @calixteman in #16080
- [Acroform] Use the full path to find the node in the XFA datasets where to store the value by @calixteman in #16082
- Use
OffscreenCanvas
as intended for all code-paths insrc/display/text_layer.js
(PR 15722 follow-up) by @Snuffleupagus in #16086