Skip to content

Releases: mozilla/pdf.js

v3.0.279

29 Oct 17:54
d082306
Compare
Choose a tag to compare

This major release features the new editor mode in the viewer (enabled by default now), new icons in the viewer, removal of deprecated functionality/APIs, removal of support for outdated browser versions, font conversion/text selection improvements and other features/bugfixes.

Changes since v2.16.105

Read more

v2.16.105

28 Aug 11:22
172ccdb
Compare
Choose a tag to compare

This release features bugfixes and accessibility improvements for the new experimental editor mode in the viewer as introduced in the previous release.

Changes since v2.15.349:

#15252 Bump versions in pdfjs.config
#15251 Ignore too small page-canvases in PDFThumbnailView.setImage
#15253 [api-minor] Update the minimum supported Safari version
#15263 Always set a border-radius for RadioButton annotations (issue 15262)
#15264 [Editor] Add some telemetry to know how often the editing features are used (bug 1782254)
#15268 Fix a typo in firefox print service (bug 1777693)
#15271 Skip unknown fields when calculating a value in using AFSimple_Calculate
#15267 [Annotation] Add a div containing the text of a FreeText annotation (bug 1780375)
#15274 [Editor] A pasted FreeText editor was missing when printing/saving
#15275 [Editor] Remove some a11y properties only useful when a FreeText editor is edited
#15282 Enable the ESLint prefer-spread rule
#15261 Don't include images/toolbarButton-editorInk.svg in the gulp components build (issue 15260)
#15281 Remove mozCurrentTransform/mozCurrentTransformInverse usage
#15283 [api-minor] Sort PopupAnnotations already on the worker-thread (PR 11535 follow-up)
#15284 Update packages and translations
#15287 [Editor] Remove use of innerHtml
#15290 Fix OTS issue with empty index (#15289)
#15295 [Editing] Disable buttons until the first page is rendered
#15296 Move the reset-calls to occur last in the toolbar-constructors
#15297 [Editor] Avoid creation of an editor on "wrong" clicks
#15298 [Editor] Ensure an ink editor has the minimal required size after having been pasted
#15279 Remove the extensions/firefox/README.mozilla file (bug 1778567 follow-up)
#15299 Add official support for passing ArrayBuffer-data to getDocument (issue 15269)
#15237 [Annotations] Add some aria-owns in the text layer to link to annotations (bug 1780375)
#15307 [Annotation] Add an aria role comment for FreeText annotations
#15309 Remove the remaining closure in the src/core/function.js file
#15306 Only compile Type3 glyphs when Path2D is supported
#15300 [GENERIC viewer] Export some viewer constants in the default viewer (issue 15294)
#15311 Don't add aria-owns attributes for non-existent elements (PR 15237 follow-up)
#15310 Remove the remaining closures in the src/core/cff_parser.js file
#15313 Move binarySearchFirstItem back to the web/-folder (PR 15237 follow-up)
#15319 Refresh the viewer if the window resolution changes (bug 1784850)
#15318 A couple of small PDFWorker changes
#15315 Remove the remaining closures in the src/core/type1_parser.js file
#15325 Ignoring "resize" events during printing (issue 15324)
#15327 Correctly mimic the proper event-format in AnnotationElement._setDefaultPropertiesFromJS (bug 1785218)
#15329 [api-minor][Annotations] charLimit === 0 means unlimited (bug 1782564)
#15338 Update packages and translations
#15332 [api-minor] Add the Babel targets-option to avoid transpiling code for unsupported browsers
#15335 Ensure that we don't try to re-open, or update the password-callback, when the password dialog is already open
#15348 [editor] Change the focus-outline to blue (bug 1787296)
#15347 Update types in PDFPageViewOptions to properly declare optional parameters
#15355 Always focus the viewerContainer when entering PresentationMode (bug 1787456)
#15344 Enable the unicorn/prefer-array-find ESLint plugin rule
#15343 Use AbortController unconditionally with the Fetch API
#15341 Improve handling of the "Cancel"-button in the password dialog
#15346 [api-minor] Deprecate the imageLayer functionality
#15351 [api-minor][editor] Indicate, in the title, if the document has been edited (bug 1785854)
#15349 [editor] Remove the editorNone toolbar button (bug 1787295)
#15356 Update the Node.js atob/btoa compatibility info

v2.15.349

31 Jul 12:06
b8aa9c6
Compare
Choose a tag to compare

This release features rendering quality improvements and a new experimental editor mode in the viewer, providing users with basic PDF editing functionality such as inserting annotations.

Changes since v2.14.305:

#14919 Bump versions in pdfjs.config
#14920 Update packages and translations
#14921 Adjust the heuristics for handling of incomplete path operators (issue 14917)
#14898 [api-minor] Use a CSS transform to update the progress bar instead of changing the width (bug 1768481)
#14945 Allow to have float numbers when getting image information in reftest-analyzer
#14947 Twitter should be capitalized.
#14929 Display background when printing or saving a text widget (issue #14928)
#14926 Remove the sourceEventType from the viewer (bug 1757771 follow-up)
#14948 Set 'dropEffect' based on 'effectAllowed' for drag-and-drop in the viewer (issue 14942)
#14950 [JS] Format all the fields if any when the document is open (bug 1766987)
#14955 Skip bogus d1 operators in Type3-glyphs (issue 14953)
#14957 Introduce a viewer constant for document.documentElement.style
#14959 Support custom pageColors in the thumbnails (PR 14874)
#14965 Support Hangul syllables when searching some text (bug 1771477)
#14936 Set the text fields font size based on their height
#14966 Use globalThis for webpack's output.globalObject instead of this
#14963 Handle CSS-comments correctly in the preprocess-function (PR 14886 follow-up)
#14964 Ensure that the contentDispositionFilename is always respected, when setting the document title (PR 13014 follow-up)
#14962 Improve the PDFSidebar implementation
#14967 Update packages and translations
#14968 A small memory-usage improvement for PDF documents opened from TypedArray-data
#14980 Handle CSS-comments better in the preprocess-function (PR 14963 follow-up)
#14976 [editor] Add a FreeText editor (#14970)
#14988 Remove mention of gulp singlefile-command from examples/node/getinfo.js
#14985 [editor] A couple of small FreeText-related fixes (PR 14976 follow-up)
#14984 Bundle the <dialog> polyfill-CSS in the GENERIC legacy/-viewer (PR 14710 follow-up)
#14991 [editor] Disable the editor-buttons in XFA documents
#14992 Lookup image-data correctly in paintImageMaskXObjectGroup (issue 14990)
#14993 [editor] Update the AnnotationStorage.hash-getter to support editing
#14994 Conditionally bundle gulp image_decoders-specific code in src/core/jbig2.js (PR 9729 follow-up)
#14998 Reset all the canvas states after rendering each annotations (#14105)
#15000 Outline fields which are required (bug 1724918)
#15001 Set "presentation" role for page canvases (issue 14437)
#15003 Change the name of the generated pdf.sandbox.external for mozilla-central
#14978 [editor] Add support for saving a newly added FreeText
#15008 Polyfill Array.prototype.at with core-js (PR 14976 follow-up)
#15011 Fix a couple of old review comments
#15013 Render PopupAnnotations even if they have missing or empty /Rect-entries (issue 15012, PR 14439 follow-up)
#14989 [editor] Add an Ink editor
#15006 [editor] Add support for saving newly added Ink
#15019 Revert "Change the name of the generated pdf.sandbox.external for mozilla-central"
#15015 Extend TextLayerRenderParameters.container type to include HTMLElement.
#15020 Add an empty entry in combo list when nothing is selected (bug 1773680)
#15014 Enable the unicorn/prefer-at ESLint plugin rule (PR 15008 follow-up)
#15018 Expose TextLayerRenderTask in the TypeScript definitions (issue 15016, PR 14013 follow-up)
#15022 Tweak the editorNone icon to circumvent the "duplicated files"-check
#15026 [api-minor] Stop using the beginAnnotations/endAnnotations operators (PR 14998 follow-up)
#15027 Remove superfluous trailing arguments from parseFloat-calls (PR 14978 follow-up)
#15029 Enable the unicorn/prefer-dom-node-append ESLint plugin rule
#15023 Enable the unicorn/prefer-array-flat and unicorn/prefer-array-flat-map ESLint plugin rules
#15028 [api-minor] Update the minimum supported browsers/environments
#15030 Update packages and translations
#15031 Enable the unicorn/prefer-modern-dom-apis ESLint plugin rule
#15034 Extend getGlyphMapForStandardFonts with some Hebrew entries (issue 15033)
#15046 Add basic support for non-embedded ArialUnicodeMS fonts (issue 15044)
#15050 [Editor] - Add the ability to directly draw after selecting ink tool
#15051 Fix "Good Beginner Bugs" link
#15054 [JS] Hide field borders and buttons (#15053)
#15035 Use modern DOM methods a bit more (PR 15031 follow-up)
#15048 Only define the renderer-option in the GENERIC viewer
#15052 Simplify setting the defaultUrl-option in the CHROME viewer (PR 12470 follow-up)
#15057 Replace element ids with custom attributes for Widget-annotations (issue 15056)
#15036 [api-minor] Get rid of CSS transform on each annotation in the annotation layer
#15058 [api-minor] Remove the "baseviewerinit" event since it's unused (PR 14324 follow-up)
#15059 Reduce unnecessary usage of Array.prototype.concat()
#15065 Popup trigger area must filled its parent (fix #15063)
#15064 Avoid having overflowing sections (#15036 follow-up)
#15062 Simplify the newRefs computation in the "SaveDocument"-handler in the worker-thread
#15071 Add an outline around popup trigger areas in ref-tests
#15074 Only activate ink editor if none is selected
#15069 Ensure that the annotationLayer has the correct dimensions (PR 15036 follow-up)
#15075 [editor] Support disabling of editing when pdfjs.enablePermissions is set (issue 15049)
#15060 Rotate annotations based on the MK::R value (bug 1675139)
#15047 [Editor] Add support for printing newly added Ink annotations
#15076 Enable the prefer-array-index-of ESLint plugin rule
#15081 Fix (obvious) typo in typedef-import of IPDFXfaLayerFactory (PR 14373 follow-up)
#15082 [Editor] Add support for printing newly added FreeText annotations
#15089 Correctly order added annotations when saving or printing
#15043 [api-minor] Introduce a PrintAnnotationStorage with frozen serializable data
#15093 [JS] Update siblings when a field is updated after a calculation (#15092)
#15097 Fix unit test (#15093 follow-up)
#15095 Add (basic) support for Optional Content in Annotations
#15101 Use the built components/pdf_viewer.css file in the reference tests
#15099 Remove element ids from the layersView in the sidebar
#15100 chore: Included githubactions in the dependabot config
#15103 chore: Set permissions for GitHub actions
#15088 Support rotating editor layer
#15104 Update translations and dependencies to the most recent versions
#15105 Always flush the current item with MarkedContent stuff when getting text (#15094)
#15039 [editor] Add some UI elements in order to set font size & color, and ink thickness & color
#15113 [editor] Introduce a proper annotationEditorMode option/preference (PR 15075 follow-up)
#15111 Add a visible page border in HCM (bug 1776914)
#15116 Fix the annotationEditorMode-compatibility for older browsers (PR 15113 follow-up)
#15117 [Editor] Set the freetext editor dimensions when the changing the font size
#15118 [Editor] Allow to select a freetext editor when in ink mode
#15115 [Editor] Handle correctly colors when saving a document in HCM
#15122 [editor] Tweak @media CSS rules to account for the new toolbar buttons
#15123 [editor] Disable editing while PresentationMode is active
#15121 [api-minor] Further modernize the ProgressBar class (PR 14918 follow-up)
#15126 [Editor] Update the id for a l10n string
#15125 Fix the Popup-trigger for FileAttachmentAnnotationElement (PR 15036 follow-up)
#15124 Call AnnotationLayer.setDimensions as part of the render/update-methods (PR 15036 follow-up)
#15133 Improve text-selection for Type3 fonts with bogus /FontBBox-entries (issue 14999)
#15130 [Editor] Dispatch an event when some global states are changing (bug 1777695)
#15142 [editor] Use the fit-curve package (issue 15004)
#15144 [Editor] Allow editors deletion on Backspace or Delete keys
#15146 [Editor] Change the cursor to a pen for the Ink editor
#15143 [jsdoc] failing typescript builds - wrong type
#15147 [Editor] Avoid to resize and redraw the ink canvas when it's useless
#15135 Use default colors only in forced-colors mode (bug 1778068)
#15151 [Editor] Remove useless and faulty code when destroying the global manager
#15152 Ensure that the /Resources-entry is actually a dictionary (issue 15150)
#15153 [Annotation] A push button can have no action (bug 1778692)
#15145 [api-minor] Deprecate the enhanceTextSelection functionality
#15155 Update packages and translations
#15154 Replace element ids with custom attributes in the xfaLayer
#15158 Update ttx from version 2.5 to version 3.19.0
#15159 [Editor] Avoid to have the ink editor smaller than the resizer (bug 1778982)
#15163 [Editor] Always have an ink editor (when in ink mode)
#15162 Enable the unicorn/prefer-logical-operator-over-ternary ESLint plugin rule
#15157 Add unicode mapping in the font cmap to have correct chars when printing in pdf (bug 1778484)
#15168 Disable canvas acceleration for linux tests
#15169 Handle errors in the "Loading by ref" code-path in PartialEvaluator.loadFont
#15170 [JS] Embedded JS scripts can have some null chars
#15173 [api-minor] Deprecate the SVG back-end
#15184 [Editor] Simplify the way to create an editor on click
#15179 [Editor] Use serialized data when copying/pasting
#15174 Use more for...of loops in the code-base
#15110 [Editor] Improve a11y for newly added element (#15109)
#15187 [Editor] Remove useless and potentially deleted editors
#15185 [Editor] Ink editor was too much translated after commit
#15186 [Editor] Move the keyboard manager at the container level
#15192 Ignore invalid /CIDToGIDMap-entries when parsing fonts (issue 15139)
#15195 [Editor] No need to click twice to create an editor when the...

Read more

v2.14.305

14 May 12:37
eaaa8b4
Compare
Choose a tag to compare

This release features improvements for the text layer (space insertion), canvas rendering (thin line rendering), forms (printing/saving of choice lists) and accessibility (sidebar and search results). Moreover, this release contains performance improvements for rendering image masks, Type3 fonts and certain drawing instructions. Finally, the user can now specify custom background/foreground colors for rendering in the viewer.

Changes since v2.13.216:

#14614 Bump versions in pdfjs.config
#14536 Fix some issues with lineWidth < 1 after transform (bug 1753075, bug 1743245, bug 1710019)
#14615 Remove the -webkit-overflow-scrolling: touch; CSS rules (PR 4516 follow-up)
#14617 Remove the -webkit-outer-spin-button CSS rule
#14623 Remove some deprecated code from the viewer
#14624 Simplify the fallback-logic in the default viewer
#14629 Compute the loca table endOffset, of the "first" glyph, correctly (issue 14618)
#14631 Fix a couple of small typos in JSDoc typedef comments
#14628 When stopAtErrors is set, throw rather than warn when exceeding maxImageSize (issue 14626)
#14634 Replace XMLHttpRequest usage with the Fetch API in Driver.run
#14633 Update packages and translations
#14635 Replace XMLHttpRequest usage with the Fetch API in loadStyles (in test/driver.js)
#14638 Replace XMLHttpRequest usage with the Fetch API in the reftest-analyzer
#14637 Use proper private methods in web/{pdf_cursor_tools,pdf_find_bar,secondary_toolbar}.js
#14636 Replace XMLHttpRequest usage with the Fetch API in Driver._quit
#14640 Update TypeScript to version 4.6.2 and work-around stricter type checks
#14648 Simplify the PDFDocument constructor
#14645 [api-minor] Remove the, in legacy builds, bundled DOMMatrix polyfill
#14642 Replace XMLHttpRequest usage with the Fetch API in Driver._send
#14651 Replace XMLHttpRequest usage with the Fetch API in inlineImages (in test/driver.js)
#14620 Bug 1757527 - Slightly reduce (repeated) message passing overhead when localizing the PDF Viewer
#14554 Try to improve a11y for the "button groups" in the SecondaryToolbar/Sidebar (issue 14526)
#14654 Replace XMLHttpRequest usage with the Fetch API in send (in test/unit/testreporter.js)
#14656 Move the isSameOrigin helper function
#14658 Validate the cMapUrl/standardFontDataUrl parameters in getDocument
#14661 Update Checkout to version 3
#14667 Enable the "gets fieldObjects" unit-test in Node.js (PR 14409 follow-up)
#14668 Remove the addLinkAttributes warnings in the Annotation/XFA-layers (PR 14092 follow-up)
#14665 Convert the BasePreferences class to use private fields
#14669 Replace dir-dependent padding-left/padding-right/text-align with logical properties
#14676 Remove the custom grab/grabbing cursor image files
#14678 Convert the PDFDocumentProperties class to use private methods
#14675 Build the web/viewer.css file used in the development viewer (i.e. gulp server)
#14682 [gulpfile.js] Use the regular defines in the preprocessCSS function
#14688 Add general iteration support in the RefSet and RefSetCache classes
#14683 [src/display/api.js] Simplify the sendTest function, used with Worker initialization (PR 14291 follow-up)
#14689 Slightly simplify the PDFFindController._extractText method, and convert all "private" methods into proper ones
#14670 Replace dir-dependent margin/margin-left/margin-right with logical properties
#14671 Replace dir-dependent float with logical properties
#14692 [JS] - Parse a date in using the given format first and then try the default date parser
#14695 Update packages and translations
#14690 Replace dir-dependent left/right with logical properties
#14704 Convert the OverlayManager class to use private fields/methods
#14699 Slightly improve validation of (some) parameters in getDocument
#14691 Replace dir-dependent border-rules with logical properties
#14693 Remove the remaining dir-dependent CSS rules
#14717 Change the type of the container property, in the TextLayerRenderParameters typedef (issue 14716)
#14715 Avoid the textLayer becoming visible in high contrast mode (issue 13230)
#14703 [text selection] Add the whitespaces present in the pdf in the text chunk
#14720 [Annotations] Add support for printing/saving choice list with multiple selections
#14710 Convert the existing overlays to use <dialog> elements (issue 14698)
#14733 Use String.prototype.repeat() in a couple of spots
#14735 [Annotations] Some annotations can have their values stored in the xfa:datasets
#14734 Don't manually convert setAttribute values to strings (PR 14554 follow-up)
#14738 Decode non-ASCII values found in the xfa:datasets (PR 14735 follow-up)
#14742 Replace most loops in web/debugger.js with for...of loops
#14744 Update GitHub Actions workflow steps/dependencies/translations to the most recent versions
#14745 Convert web/debugger.js to a basic module
#14739 Refactor some xfa*** getters in document.js
#14663 [GENERIC viewer] Try to improve a11y, for search results, in the findbar (issue 14525)
#14761 Use a bit more optional chaining in the viewer
#14751 Re-factor the isLittleEndian/isEvalSupported caching
#14750 Remove the BaseViewer._getCurrentVisiblePage helper method
#14754 [api-minor] Improve performance with image masks (bug 857031)
#14766 Improve performance of applyMaskImageData
#14764 Correct typos
#14765 Simplify handling of requestFullscreen errors in PDFPresentationMode
#14767 [GENERIC viewer] Re-factor the fileInput initialization
#14769 Remove unnecessary @media CSS rules (PR 8993 follow-up)
#14770 Always remove the sidebarMoving CSS class when the sidebar is closed
#14771 Simplify the dialog::backdrop CSS rules (PR 14710 follow-up)
#14772 Remove/simplify some CSS rules
#14773 Remove some dropdownToolbarButton-related CSS rules
#14780 Replace the --viewport-scale-factor CSS variable
#14722 PDFScriptingManager: Bind mousedown listener with capture=true
#14784 Improve performance of shared/utils.js::intersect (bug 1135277)
#14785 Update core-js to allow removing a structuredClone work-around
#14777 [api-minor] Improve performances with image masks (bug 857031)
#14796 [api-minor] Simplify min/max computations in constructPath (bug 1135277)
#14797 Don't clip when the clip path is empty (issue #12306)
#14799 Fix clipping issue with pattern (follow-up of #14797)
#14788 Move the PDFBug-related CSS from viewer.css and into its own file
#14790 Remove some outdated CSS rules related to printing
#14792 Update packages and translations
#14795 Reduce more duplication in the CSS
#14793 Simplify spread-mode handling for the PAGE scroll-mode
#14801 [GENERIC viewer] Simplify the styling of the previous/next findbar buttons
#14803 Add support for the /Catalog Base-URI when resolving URLs (issue 14802)
#14794 Remove the PresentationMode special-case from BaseViewer.update
#14810 Stop bundling errorWrapper CSS rules in the MOZCENTRAL build
#14817 Some more, small, CSS clean-up
#14818 Use correct case for JavaScript
#14815 Ignore non-Stream /SMask-entries when parsing images (issue 14814)
#14828 Use more for...of loops in the viewer
#14827 Simplify setting of spacing at the left/right edges of the toolbar(s)
#14823 Ignore invalid /Encoding-entries when parsing fonts (issue 14821)
#14825 Ensure that worker-thread image caching doesn't break optional content (issue 14824)
#14829 Remove unnecessary print CSS rules
#14831 Add a helper function for incrementing the count of cached ImageMasks
#14836 Don't use pref 'browser.download.improvements_to_download_panel' in Firefox (#14822)
#14848 Support destinations in NameTrees with encoded keys (issue 14847)
#14833 Stop bundling the openFile-buttons in the MOZCENTRAL build
#14835 Clean-up some CSS rules for the various toolbar separators
#14856 [api-minor] Remove the forceClamped-functionality in the Streams (issue 14849)
#14853 Use integer coordinates when drawing images (bug 1264608, issue #3351)
#14854 Remove redundant class names from the button DOM-elements
#14857 Inline the webViewerOpenFileViaURL function in webViewerInitialized
#14860 Update dependencies and translations
#14858 Use Path2D, if available, when rendering Type3-fonts (bug 810214)
#14861 Pin the es-module-shims dependency to version 1.4.7
#14863 Update quickjs to revision 2788d71e823b522b178db3b3660ce93689534e6d
#14865 Support encoded dest-strings in /GoTo destination dictionaries (issue 14864)
#14866 Immediately release the temporary Uint8Arrays used during Type3-compilation
#14869 [JS] Fix few bugs present in the pdf for issue #14862
#14873 Replace the AnnotationStorage.lastModified-getter with a proper hash-method
#14870 Only bundle the src/display/node_utils.js file in GENERIC-builds
#14871 Re-factor the PresentationMode handling in BaseViewer.#ensurePageViewVisible
#14874 [api-minor] Improve pdf reading in high contrast mode
#14877 Add (basic) support for Spread modes in PresentationMode (issue 14749)
#14880 Introduce a --viewer-container-height CSS variable to simplify the code
#14884 Simplify the "fileattachmentannotation"-event handling a little bit
#14882 Add support for TrueType format 12 cmaps (issue 14881)
#14887 Ignore pageColors when the background/foreground is identical (PR 14874 follow-up)
#14885 Stop bundling PDFViewerApplication.{unbindEvents, unbindWindowEvents} in MOZCENTRAL builds
#14888 Try to fix dispatching of "attachmentsloaded"-events, when the document contains no "regular" attachments (PR 8788, 12163 follow-up)
#14886 Use the regular preprocess-function for the CSS files as well
#14890 [JS] Formatted value has to be a string when neither null nor undefined
#14903 Update the preprocess-function to avoid adding trailing new-lines (issue 14902)
#14904 Avoid the preprocess...

Read more

v2.13.216

27 Feb 18:22
399a0ec
Compare
Choose a tag to compare

This release features improvements for searching in the viewer: searching with/without diacritics, arbitrary whitespace matching, searching for hyphenated words when linebreaks are present and searching around punctuation characters. Moreover, this release contains many bugfixes and optimizations, in particular for annotations, font/image conversion, SMask rendering, text layer rendering and TypeScript definitions.

Changes since v2.12.313:

#13261 [api-minor] Support search with or without diacritics (bug 1508345, bug 916883, bug 1651113)
#14389 Bump versions in pdfjs.config
#14388 Unblock the "load" event in inactive windows/tabs (bug 1746213, PR 11646 follow-up)
#14401 Update packages and translations
#14391 Handle non-integer Annotation border widths correctly (issue 14203)
#14400 [api-minor] Convert Catalog.getPageDict to an asynchronous method
#14409 Improve caching for the Catalog.getPageIndex method (PR 13319 follow-up)
#14411 Convert Catalog.getAllPageDicts to an async method
#14413 Drop the beta logic from the Gulpfile/website/pdfjs.config file
#14417 Revert "Disable failing print actions integration test in Firefox"
#14418 Use positive dimensions for text chunks in the text layer (issue #14415)
#14429 [JS] Fix few errors around AFSpecial_Keystroke
#14423 Remove the eventBus parameter from getViewerConfiguration
#14424 [api-minor] Move addLinkAttributes, LinkTarget, and removeNullCharacters into the viewer (PR 14092 follow-up)
#14432 Update packages and translations
#14443 Prevent run-time errors in BaseViewer when it's falling back to SimpleLinkService (issue 14442, PR 14295 follow-up)
#14450 Add (basic) UTF-8 support in the stringToPDFString helper function (issue 14449)
#14446 Expose even more API-functionality in the TypeScript definitions (issue 14435, PR 14013 follow-up)
#14454 Replace some assert usage with unreachable in the src/shared/util.js file
#14453 Dispatch a "documenterror" event in PDFViewerApplication._documentError (issue 14451)
#14439 Ignore Annotations with empty /Rect-entries in the display-layer (issue 14438)
#14448 Prevent circular references in Type3 fonts
#14428 Use the correct dimension to know if we have to add an EOL in vertical mode
#14455 Make the normalizeWhitespace handling, in the PartialEvaluator, more efficient (PR 14428 follow-up)
#14457 Implement a unit test for getCharUnicodeCategory in src/core/unicode.js (PR 14428 follow-up)
#14456 Font renderer - get int8 instead of uint8 in composite glyphes (bug 1749563)
#14464 Support Type1 font files with incomplete /CharStrings definitions (issue 14462)
#14430 [JS] Use beforeinput event to trigger a keystroke event in the sandbox
#14487 Remove the out.pdf file (PR 14430 follow-up)
#14489 Fix scripting test related to keystroke event
#14483 Remove the invisible format marks from the text chunks
#14479 Update packages and translations
#14490 Add a (global) cache to the getCharUnicodeCategory function
#14495 web: Read WheelEvent.deltaMode before deltas.
#14500 Take into account all rotations before comparing glyph positions
#14491 fix for lines (stroke) are rendered too thick (Bug 1743245)
#14506 Update the year in the license_header files
#14392 Polyfill structuredClone with core-js (PR 13948 follow-up)
#14507 Bump copy-props from 2.0.4 to 2.0.5
#14508 Bump nanoid from 3.1.30 to 3.2.0
#14513 Update quickjs sandbox
#14510 [api-minor] Annotations - Adjust the font size in text field in considering the total width (bug 1721335)
#14517 Disable the browser-tests, during gulp makeref, in Google Chrome on the Windows bot (PR 14392 follow-up)
#14516 [UI] Avoid to have buttons in hover state after having been clicked (bug 836732)
#14518 Remove the MBTA-pretax-form-July2012 browser-test since it's a duplicate
#14522 Remove the xfa_bug1716838 browser-test since it's a duplicate
#14515 [api-minor] Remove support for browsers/environments without fully working URL.createObjectURL implementations
#14527 [api-minor] Remove the normalizeWhitespace option in the PDFPageProxy.{getTextContent, streamTextContent} methods (issue 14519, PR 14428 follow-up)
#14535 [GENERIC viewer] Use consistent casing, for the labels, in the findbar
#14532 [GENERIC viewer] Remove the moz-prefixed FullScreen API usage from the viewer
#14530 Avoid the findResultsCount span taking up (vertical) space when hidden (PR 13261 follow-up)
#14537 Update packages and translations
#14539 Bump simple-get from 3.1.0 to 3.1.1
#14538 [api-minor] Update the minimum supported browser versions
#14548 [api-minor] Ensure that the PDFDocumentLoadingTask-promise is rejected when cancelling the PasswordPrompt (bug 1754421)
#14547 Update the file used with the xfa_bug1720182 test-case
#14543 Let Lexer.getNumber treat a single minus sign as zero (bug 1753983)
#14551 [api-minor] Stop exposing the createObjectURL helper function in the API
#14557 Remove unnecessary font-size CSS rule from the html element (issue 14555, PR 3794 follow-up)
#14558 Remove the UTF-8 fallback, when TextDecoder is missing, from the Content-Disposition parser
#14560 [api-minor] Remove the, in legacy builds, bundled ReadableStream polyfill
#14559 Revert "Don't block origin-less blob:-URLs in hosted viewer"
#14564 [api-minor] Don't add in the text content the chars which are out-of-page (bug 1755201)
#14563 [Search] Some matches were incorrectly shifted because of some '-\n'
#14572 Add a missing string-check in the _collectJS helper function
#14566 Miscellaneous small viewer clean-up
#14569 Fix canvas state getting out of sync from smasks. (bug 1755507)
#14581 Use the (viewer) parseQueryString helper function in the reference tests
#14580 Change PixelsPerInch to a class with static properties (issue 14579)
#14578 Remove the backingStorePixelRatio-part of the getOutputScale helper function
#14575 Remove the isStream helper function
#14577 Remove the isRef helper function
#14584 Update packages and translations
#14585 Improve the PDFObjects class
#14594 Prefer instanceof ... rather than calling isCmd/isDict/isName with one argument
#14596 Remove the isNum helper function
#14595 Update the support information for structuredClone (PR 14392 follow-up)
#14588 Remove old prefixed CSS rules used with text tests
#14597 Ensure that Dict.set only accepts string keys
#14598 Re-factor the Catalog.viewerPreferences method and remove the isBool helper function
#14545 Generate test images at different output scales.
#14605 Simplify the decodeFontData/encodeFontData font-test helper functions
#14608 Don't close window from test driver.
#14609 Improvements to the reftest analyzer.
#14599 Ensure that Cmd/Name is only initialized with string arguments
#14600 [api-minor] Add validation for the PDFDocumentProxy.getPageIndex method
#14607 Simplify the wrapReason helper function
#14606 Only support the standard, unprefixed, Fullscreen API in the default viewer
#14602 Re-factor the PDFDocument.documentInfo method, and remove the isString helper function
#14610 [JPEG 2000] Add support for resetContextProbabilities (bug 1731483)
#14611 Remove the JSDocs "External: Promise"-page, since Promises are now a standard feature
#14612 Add the caniuse-lite package

v2.12.313

19 Dec 15:20
a2ae56f
Compare
Choose a tag to compare

This release features improved XFA support, improved pattern/tiling support, rich text annotation support, a new page scrolling mode in the viewer and many other bugfixes and optimizations.

Changes since v2.11.338:

#14097 Bump versions in pdfjs.config
#14099 Update packages and translations
#14101 [Regression] Fix comb fields scrolling when the last character is entered (PR 14049 follow-up)
#14111 Take the /CIDToGIDMap data into account when computing the hash, in PartialEvaluator.preEvaluateFont, for composite fonts (bug 1734802)
#14106 Empty name is allowed in ISO 32000
#14108 For Annotations that define a closed area, make all of it toggle the PopupAnnotation (issue 14107)
#14118 Implement TrueType character map "format 2" (fixes #14117)
#14116 Use even more optional chaining in the src/display/api.js file
#14134 Convert examples/node/pdf2png/pdf2png.js to await/async
#14138 Convert examples/learning/helloworld.html to await/async
#14143 docs: Fix grammatical error
#14141 Convert examples/text-only/pdf2svg.js to await/async
#14145 XFA - Embedded image is missing
#14148 Ensure that the EditorConfig rules apply to *.json and *.pdf.link files as well
#14131 Ensure that pre-rendering works correctly with spreadModes at higher zoom levels
#14112 Add a new Page scrolling mode (issue 2638, 8952, 10907)
#14149 Convert examples/learning/helloworld64.html to await/async
#14103 [api-minor] Change PDFFindController to use the "find"-event directly (issue 12731)
#14152 Fix a xfaFaxtory typo in the shadowing in the PDFDocument.xfaFactory getter, and some other clean-up
#14166 Ignore Square/Circle-annnotations with a zero borderWidth when creating a fallback appearance stream (issue 14164)
#14114 [api-minor] Include the /Lang-property in the documentInfo, and use it in the viewer (issue 14110)
#14154 Update packages and translations
#14155 Revert "For mozcentral use Firefox color theme instead of system theme." since -moz-toolbar-prefers-color-scheme was removed
#14160 Fix pattern handling regression in SVGGraphics (PR 13770 follow-up)
#14159 Convert examples/node/pdf2svg.js to await/async #14125
#14174 Prevent double-rendering borders for PushButton-annotations (PR 14083 follow-up)
#14167 Convert examples/image_decoders/jpeg_viewer.js to await/async #14123
#14171 Prevent run-time errors in Node.js versions with URL.createObjectURL support (issue 14170)
#14162 Indent the stepper on save/restore.
#14175 Use a new method for handling soft masks.
#14178 Update the browserslist database
#14156 Add support for modern ECMAScript class features
#14158 Improve pre-rendering at the start/end of the document
#14181 Converted simpleviewer.js to await/async
#14199 Avoid to display download panel during integration tests
#14189 [api-minor] Implement securityHandler in the scripting API (bug 1731578)
#14192 [Regression] Prevent breaking errors when opening a new document in the GENERIC viewer (PR 14158 follow-up)
#14191 Ignore pageLabels, in the viewer, when they're all empty
#14180 Handle ranges that "overflow" the last byte in CMap.mapBfRange (bug 1627427)
#14153 Fix XFA links (bug 1735738)
#14204 Remove the shadowViewer used with Page scrolling
#14201 Use the correct border-style for Annotations, when a dash array is specified (bug 1219400)
#14207 JS - Avoid a popup to ask for specific version of Acrobat
#14210 Update packages and translations
#14182 [api-minor] Support rich content in markup annotation
#14212 Add a RTL-text reference test (issue 10301)
#14217 [Firefox] Handle errors if loading failed before the "supportsRangedLoading" message was sent (bug 1732141)
#14221 Use BaseViewer.previousPage more in the default viewer (PR 12870 follow-up)
#14225 Avoid doing unnecessary checks, when pre-rendering page layouts with "holes" (PR 14131 follow-up)
#14228 Reset path bounding box tracking when starting a new path.
#14213 Tweak the Bidi-detection heuristics for very short RTL strings (issue 11656)
#14219 Let getVisibleElements return a Set containing the visible element ids
#14232 Use correct matrix for patterns with showText.
#14218 XFA subform with occur min=0 and no bound data displaying.
#14238 Add a couple of basic unit-tests for PDFPageViewBuffer
#14241 Don't double apply a group xobject's bbox.
#14230 Create shading patterns the size of the current path. (bug 1722807)
#14244 Prevent mobile devices from interfering with the textLayer-elements (issue 14243)
#14240 XFA - Get each page asynchronously in order to avoid blocking the event loop (#14014)
#14245 Convert PDFPageViewBuffer to a standard class, and use a Set internally
#14250 XFA - Encode tag names in UTF-8 when saving (fix #14249)
#14239 XFA - Fix a breakBefore issue when target is a contentArea and startNew is 1 (bug 1739502)
#14209 [Google Chrome] Ensure that markedContent spans are placed in the top-left corner (issue 14205)
#14258 Always prefer abbreviated keys, over full ones, when doing any dictionary lookups (issue 14256)
#14265 XFA - Avoid an exception when looking for a font in a parent node
#14266 Don't consider space as real space when there is an extra spacing (bug 931481)
#14270 When parsing corrupt documents without any trailer-dictionary, fallback to the "top"-dictionary (issue 14269)
#14268 Remove non-displayable chars from outline title (#14267)
#14253 [Chromium addon] Add the Page scrolling mode to the options (PR 14112 follow-up)
#14260 Report "pageInfo" telemetry once, rather than for each rendered page
#14271 Parse query string in using URLSearchParams
#14255 Convert GrabToPan to a standard class
#14273 Update packages and translations
#14247 [api-minor] Render pushbuttons on their own canvas (bug 1737260)
#14280 Slightly optimize spreadMode toggling with ScrollMode.PAGE set (PR 14112 follow-up)
#14278 Replace the remaining Node.removeChild() instances with Element.remove()
#14276 Only show the loadingIcon-spinner on visible pages (issue 14242)
#14262 Include the /Lang-property, when it exists, in the StructTree-data (issue 14261)
#14229 Add an easy way to log to the terminal during browser tests.
#14291 [api-minor] Only use Workers when postMessage transfers are supported (PR 11123 follow-up)
#14294 [api-minor] Replace PDFDocumentProxy.getStats with a synchronous PDFDocumentProxy.stats getter
#14295 Remove the {BaseViewer, PDFThumbnailViewer}._pagesRequests caches
#14299 Convert examples/components/pageviewer.js to await/async (issue 14127)
#14304 Ensure that ChunkedStream won't attempt to request data beyond the document size (issue 14303)
#14298 Center pages vertically in PresentationMode (issue 10906)
#14310 Abort parsing when the XRef /W-array contain bogus entries (issue 14303)
#14314 [Regression] Prevent errors, during loading, in the viewer for XFA-documents (PR 14295 follow-up)
#14318 Handle sub/super-scripts in rich text
#14319 XFA - Draw arcs correctly
#14313 Change the _pagePromises cache, in the worker, from an Array to a Map
#14311 [api-minor] Validate the /Pages-tree /Count entry during document initialization (issue 14303)
#14320 Update packages and translations
#14312 Prevent circular references in XRef tables from hanging the worker-thread (issue 14303)
#14321 Upgrade to Puppeteer 12
#14333 Handle errors correctly when data lookup fails during /Pages-tree parsing (issue 14303)
#14325 Remove the unused skipCount parameter from Catalog.getPageDict (PR 14311 follow-up)
#14328 Update (primarily) the Node.js examples to release page resources
#14335 [Regression] Eagerly fetch/parse the entire /Pages-tree in corrupt documents (issue 14303, PR 14311 follow-up)
#14324 Enforce PAGE-scrolling for very large/long documents (bug 1588435, PR 11263 follow-up)
#14341 Ensure that the shadow helper function is passed a valid property (PR 14152 follow-up)
#14340 Handle errors when fetching the raw /Metadata (issue 14305)
#14338 [api-minor] Clear all caches in XRef.indexObjects, and improve /Root dictionary validation in XRef.parse (issue 14303)
#14339 Add a (linked) test-case for issue 8019
#14345 Ensure that the viewer handles BaseViewer initialization failures
#14344 Modernize the test driver
#14348 Add a (linked) test-case for issue 8022
#14347 Improve caching in Catalog.getPageDict (PR 8207 follow-up)
#14350 Prevent an infinite loop when parsing corrupt /CCITTFaxDecode data (issue 14305)
#14354 Further improve caching in Catalog.getPageDict, for disableAutoFetch mode (PR 8207 follow-up)
#14355 Change WorkerTransport.{pageCache, pagePromises} from an Array to a Map
#14358 Improve PDFDocument.checkLastPage/Catalog.getAllPageDicts for documents with corrupt XRef tables (PR 14311, 14335 follow-up)
#14359 Avoid overloading the worker-thread during eager page initialization in the viewer (PR 11263 follow-up)
#14361 Upgrade Node.js to version 16 in the CI workflow
#14360 Update packages and translations
#14362 Support disabling of form editing when pdfjs.enablePermissions is set (issue 14356)
#14364 Only call PDFDocumentProxy.getPermissions, in the viewer, when pdfjs.enablePermissions is set (PR 14362 follow-up)
#14367 Disable failing print actions integration test in Firefox
#14368 Consistently use string arguments for page.waitForFunction calls and upgrade to Puppeteer 13.0.0
#14380 Move the EventBus, and related functionality, into its own file
#14372 Move the /Lang handling into the BaseViewer (PR 14114 follow-up)
#14370 Slightly reduce asynchronicity in the Catalog.getPageDict method (PR 14338 follow-up)
#14386 Ignore negative /FitH parameters in the viewer (issue 14385)
#14373 [api-minor] Fix broken/missing JSDocs and typedefs, to allow updating TypeScript to the latest version (issue 14342)
#14387 Modernize the test utilities

v2.11.338

02 Oct 12:53
dedff3c
Compare
Choose a tag to compare

This release features improved XFA support (enabled by default now), improved annotations/forms support and other bugfixes and optimizations.

Changes since v2.10.377:

#13793 Bump versions in pdfjs.config
#13792 Remove the remaining closure in the src/display/canvas.js file
#13795 XFA - Elements created outside of XML must have all their properties (bug 1722029)
#13801 Access navigator safely in the src/display/annotation_layer.js file
#13804 Move the compatibilityParams into the web/app_options.js file
#13807 XFA - Get the full value when binding and not only the 1st line (bug 1718725)
#13796 Allow StreamsSequenceStream.readBlock to skip sub-streams with errors (issue 13794)
#13806 XFA - Fix auto-sized fields (bug 1722030)
#13815 XFA - Fix font scale factors (bug 1720888)
#13808 Improve caching of shading patterns. (bug 1721949)
#13819 XFA - Avoid an error when an exdata is a string (bug 1723114)
#13816 [api-minor] Remove the separate enableScripting option in BaseViewer
#13813 Remove a couple of closures in the src/display/api.js file
#13822 Prevent "Uncaught promise" messages in the console when cancelling (some) ReadableStreams
#13824 When no "V" entry exists, let the fieldValue fallback to the "DV" entry (issue 13823)
#13828 Introduce the GitHub Advanced Security workflow
#13830 Improve the code analysis workflow with quality checks
#13833 Make worker-loader optional as peerDependencies. Close #13825.
#13836 Fix inefficient regular expressions in external/cmapscompress/parse.js
#13831 Change the parseQueryString function to return a Map rather than an Object (issue 13829)
#13837 Implement unit tests for the parseQueryString utility function
#13839 Fix a broken regular expression in the docId unit-test (issue 13838, PR 13813 follow-up)
#13841 Allow customization of theme in Chrome extension + set default theme
#13842 Visually hide br in text selections
#13847 Remove useless assignment of availableSpace in the src/core/xfa/template.js file (issue 13829, 13835)
#13852 XFA - Page can be too small when printing (bug 1723705)
#13860 Bump tar from 4.4.8 to 4.4.15
#13859 Remove the isEOF helper function and slightly re-factor EOF
#13848 Remove the LGTM configuration and inline disable comments (issue 13829)
#13854 Prevent breaking errors when an optional content group is undefined (issue 13851)
#13846 Add a special gulp xfatest command, to limit the ref-tests to only XFA-documents (issue 13744)
#13858 Add aria-labels to XFA form elements. (bug 1723422)
#13864 [XFA] Add alt text for images. (bug 1723418)
#13856 XFA - Avoid to put something in very small areas
#13868 Annotation & XFA: Scale the font size in choicelist using zoom factor (bug 1715996)
#13875 Annotation & XFA: Add focus outlines on different fields (bug 1723615, bug 1718528)
#13869 Enable linting in the test/resources/ folder, and fix the "Remote property injection" warning (issue 13862)
#13874 Update the Annotation --zoom-factor CSS variable when PDFPageView is used standalone (PR 13868 follow-up)
#13873 XFA - Support aria heading and table structure. (bug 1723421) (bug 1723425)
#13880 Fix typo in cff_parser_spec.js
#13881 XFA - Elements under an area must be bound (bug 1723734)
#13879 Fix the global variable definitions in test/resources/reftest-analyzer.js (issue 13862)
#13867 [api-minor] Re-factor the internal renderingIntent, and change the default intent value in the PDFPageProxy.getAnnotations method
#13882 [api-minor] Remove the closure from the PDFWorker class, in the src/display/api.js file
#13883 Improve caching of Annotations-data, by using a Map, in the API
#13884 Update packages and translations
#13887 Bump path-parse from 1.0.5 to 1.0.7
#13890 Update some deprecated ESLint rules
#13886 Re-factor the BaseException.name handling, and clean-up some code
#13896 Simplify the ReadableStream polyfill
#13892 Move some validation, in Dict.merge, used during merging of sub-dictionaries (PR 13775 follow-up)
#13900 [api-minor] Stop translating logical assignment in non-legacy builds (PR 12887 follow-up)
#13911 Ensure that the TESTING define can always be overridden in gulpfile.js
#13913 Fix pdf_viewer definitions
#13905 Re-factor loadAndEnablePDFBug and PDFBug.init
#13904 Re-factor the LocalTilingPatternCache to cache by Ref rather than Name (PR 12458 follow-up, issue 13780)
#13899 [Regression] Re-factor the internal includeAnnotationStorage handling, since it's currently subtly wrong
#13920 Extend the glyph maps for standard respectively Calibri fonts (issue 13916)
#13921 Update packages and translations
#13922 Enable the ESLint object-shorthand rule in the extensions/chromium/-folder
#13908 [api-minor] XFA - Support text search in XFA documents.
#13923 [api-minor] Introduce a new annotationMode-option, in PDFPageProxy.{render, getOperatorList}
#13934 Remove the IPDFHistory interface
#13935 A couple of small TextHighlighter/TextLayerBuilder tweaks (PR 13908 follow-up)
#13939 Remove the npm test-command
#13930 Fix Viewer API definitions and include in CI
#13940 Simplify the PDFViewerApplication.supportsFullscreen getter
#13933 Fix saving of XFA checkboxes. (bug 1726381)
#13941 Ensure that PasswordException is handled correctly in the wrapReason function
#13942 Export the XFA/StructTree-layers in the viewer components
#13943 Use async a bit more in the API
#13944 Re-factor the setPDFNetworkStreamFactory usage for the unit-tests (PR 13549 follow-up)
#13937 Fix handling of fetch errors
#13932 Support Optional Content in Image-/XObjects (issue 13931)
#13949 Only use base encoding if it's populated. (bug 1727053)
#13951 Bump tar from 4.4.15 to 4.4.19
#13945 Implement PDFNetworkStreamRangeRequestReader._onError, to handle range request errors with XMLHttpRequest (issue 9883)
#13952 Extend getNonStdFontMap for non-embedded versions of the ItcSymbol font (issue 11532)
#13955 Always prefer the post-table for TrueType fonts with (0, x) cmap-tables (issue 13433)
#13959 Correctly pad strings when saving an encrypted pdf (bug 1726789)
#13967 XFA - Overwrite AcroForm dictionary when saving if no datasets in XFA (bug 1720179)
#13966 XFA - Created data node mustn't belong to datasets namespace
#13970 Fallback to the /ToUnicode map for TrueType fonts with (3, 1) and (1, 0) cmap-tables (issue 13316)
#13961 Simplify some regular expressions
#13973 [api-minor] Change {PDFPageView, PDFThumbnailView}.update to take a parameter object
#13972 Treat all content as visible when no optional content groups are defined (issue 13971)
#13975 Update packages and translations
#13976 Reduce the size of TextLayerRenderTask._textDivProperties in "regular" text-selection mode
#13988 Avoid an error in integration test because of a locale different of en-US
#13985 Improve glyph mapping for non-embedded composite standard fonts (issue 11088)
#13992 XFA - Remove the checked attribute from the checkbox when unchecked (bug 1729877)
#13995 XFA - Handle $record shorcut in SOM expression (issue #13994)
#13996 Make verifyManifestFiles fail for non-linked test-cases with a "link": true-entry
#13991 Enable/disable image smoothing based on image interpolate value. (bug 1722191)
#14000 Re-factor the CSS_PIXELS_PER_INCH/PDF_PIXELS_PER_INCH exports (PR 13991 follow-up)
#13993 Don't create PDFViewerApplication.pdfHistory when the browsing history is disabled
#13977 [api-minor] Reduce postMessage overhead, in PartialEvaluator.getTextContent, by sending text chunks in batches (issue 13962)
#13983 Update the learning/ examples with basic HiDPI-screen support
#14004 [CRX] enableScripting=false by default in Chrome extension
#14002 Let Lexer.getObj return a dummy-Cmd for commands that start with a non-visible ASCII character (issue 13999)
#13998 Write boolean value when saving a form (bug 1729971)
#14006 [src/core/writer.js] Remove unnecessary string-wrapping for boolean values in writeValue (PR 13998 follow-up)
#14007 [src/core/writer.js] Support null values in the writeValue function
#14018 XFA - Don't create images for unsupported mime types
#14027 Annotation - Checkboxes with the same name and export values must be in unison
#14028 Use CSS variables for setting the width of the zoom dropdown (PR 11570 follow-up)
#13984 Enable XFA by default in the viewer, and components/ examples (issue 13968)
#14025 Improve glyph mapping for non-embedded composite standard fonts with a /CIDToGIDMap (issue 11915)
#14035 Annotation - For checkboxes, get field value from AS (if any) instead of V (bug 1722036)
#14040 JS - Avoid the Stay/Leave popup when clicking on a button with a JS action
#14038 JS - Implement few possibilities with app.execMenuItem (bug 1724399)
#14043 Re-factor the EventBus and isInAutomation handling (PR 11655 follow-up)
#14013 Improve the API unit-tests, and try to expose more API-functionality in the TypeScript definitions
#14045 XFA - Only warn about the wrong xfa type when there is an xfa thing
#14005 [GENERIC viewer] Always show the Download-buttons, to allow saving of forms (issue 13997)
#14044 Annotations - Avoid empty value in text field when storage contains something for it (bug 1719148)
#14041 Support cmaps with only CID characters, when building the ToUnicode-map (issue 9367)
#14052 Update packages and translations
#14050 Tweak how fonts with an /Encoding are handled in adjustToUnicode (issue 14048, PR 13277 follow-up)
#14053 Move the zoomIn/zoomOut functionality into BaseViewer (PR 14038 follow-up)
#14056 Correctly validate URLs in XFA documents (bug 1731240)
#14055 Add PDF_TO_CSS_UNITS to the PixelsPerInch-structure
#14058 [api-minor] Change EventBus.dispatch to only support one data-argument
#14063 [GENERIC viewer] Warn about AppOptions being overridden by Preferences during loading
#14023 Re-fact...

Read more

v2.10.377

25 Jul 11:32
156762c
Compare
Choose a tag to compare

This release features improved XFA support, improved pattern rendering and other bugfixes and optimizations.

Changes since v2.9.359:

#13464 Bump versions in pdfjs.config
#13466 Fix typo in template.js
#13465 Some -es5/-legacy renaming clean-up, and deprecated API options removal (PR 12978, PR 13207 follow-up)
#13437 XFA - Move the fake HTML representation of XFA from the worker to the main thread
#13472 Don't change options of the globally used PartialEvaluator in the "should render checkbox with fallback font for printing" unit-test
#13411 XFA - Add support to print XFA forms
#13476 Update Puppeteer to version 10
#13451 XFA - Use native radio and checkbox buttons
#13480 [GENERIC viewer] Fix printing regression from PR 13411
#13489 Add hasEOL to the TextItem typedef in the API (PR 13257 follow-up)
#13478 Fix find highlighting regression from #13306.
#13482 Fix scrolling of search results in documents with marked content (bug 1714183)
#13473 XFA - Implement usehref support
#13492 Add normalization for Hyphen -> Hyphen-minus
#13490 Miscellaneous improvements for gulpfile.js (issue 10362)
#13497 Initialize HTMLResult.{FAILURE, EMPTY} lazily
#13494 Add more info for showText operator in stepper.
#13498 Normalize the coordinates used in SVGGraphics._makeTilingPattern (issue 12996)
#13461 Improve text-selection for Type3 fonts with empty /FontBBox-entries (issue 6605)
#13503 XFA - Don't bind a form node with an empty value when the data node doesn't exist
#13505 Use the DOMSVGFactory, rather than manually creating the SVG-element, in createMatrix (PR 13361 follow-up)
#13501 XFA - CDATA can be xml so parse it when required
#13513 Bump trim-newlines from 3.0.0 to 3.0.1
#13506 XFA - Add support for reftests
#13479 XFA - Fix layout issues (again)
#13514 [api-minor] Fetch binary CMap data in the worker-thread, when useWorkerFetch is set
#13521 [XFA] Use align-items: flex-start; to improve browser compatibility (issue 13518)
#13495 XFA - Display rectangle, line and arc
#13524 XFA - Don't print arrow in select
#13517 XFA - Add Liberation-Sans font as a substitution for some missing fonts
#13515 Cache the "raw" standard font data in the worker-thread (PR 12726 follow-up)
#13525 [api-minor] Re-factor the disableFontFace fallback value, and skip initializing factories with useWorkerFetch set
#13516 Always use standard font data, with disableFontFace set in the API (PR 12726 follow-up)
#13502 XFA - contentarea must be on top of the other containers in a pageArea
#13527 XFA - Avoid infinite loop when creating some nodes in data
#13528 XFA - Handle caption with inline placement as left one
#13529 Bundle the license-file for the Liberation fonts in the builds (PR 13517 follow-up)
#13530 Add a DOMMatrix polyfill for Node.js environments (PR 13361 follow-up)
#13532 XFA - Give all the available space to the caption in case of checkButton
#13534 XFA - Flush contents when breakBefore target is 'auto'
#13539 XFA - Don't show outline on focused textfields
#13540 XFA - Return html element for the different possible value
#13542 XFA - Center vertically radio without caption
#13546 Re-factor the DOMCanvasFactory and DOMSVGFactory implementations slightly
#13547 XFA - Handle correctly subformSet
#13549 Remove the isFetchSupported function since the Fetch API is available in all supported browsers
#13552 Update packages and translations
#13548 XFA - Default fill color for rectangle is transparent
#13555 XFA - Value in field can be html
#13557 XFA - Fix error when creating a new data node
#13559 XFA - Handle maxChars property for text fields
#13563 Add basic linting of JSON files using eslint-plugin-json
#13554 XFA - Add support for overflow element
#13569 XFA - Container wrapper must take the visibility of the wrapped content
#13565 Fix how patterns are applied to image mask objects.
#13570 XFA - By default a text ui has only one line when in a field element
#13560 XFA - Add the possibily to layout and measure text
#13575 XFA - Fix reftest for xfa_issue13500
#13576 XFA - When no fonts in the pdf just use font size as width when measuring text
#13566 XFA - Fix layout issues
#13577 Remove the internal PDFScriptingManager._pageEventsReady boolean (PR 13074 follow-up)
#13587 Set the default value of useSystemFonts correctly, depending on disableFontFace, in the API (PR 13516 follow-up)
#13588 Add a (basic) TypeScript definitions for the viewer components (issue 13267)
#13590 Stop encoding the value in the DOMElement.setAttribute method (issue 8558)
#13589 Allow using the standard font data for non-Type1 fonts (issue 13585, PR 12726 follow-up)
#13591 XFA - Match font family correctly
#13595 XFA - Add support for access property
#13593 XFA - Don't display invisible rectangle borders
#13573 XFA - Fix the way to select page on breaking
#13601 Revert "XFA - Fix the way to select page on breaking"
#13603 Revert "Revert "XFA - Fix the way to select page on breaking""
#13592 XFA - Don't display print-only elements
#13604 XFA - A prototype can have a property which needs itself to resolve a proto
#13608 Bump color-string from 1.5.3 to 1.5.5
#13609 Correctly align the xfaLayer content with horizontal scrolling/spread modes
#13594 XFA - Add margins if needed after having layout some text
#13606 Correctly align the textLayer content with horizontal/spread scrolling modes (issue 13605)
#13614 XFA - Get line height from the font
#13617 Reset the IPDFLinkService.externalLinkEnabled property on document closing
#13612 Support corrupt documents with empty Name-entries (issue 13610)
#13613 [api-minor] Slightly tweak/improve various code related to XFA-printing
#13618 XFA - Always bind root subform on root data
#13622 XFA - No container stretching with lr-tb layout
#13619 XFA - Add back empty subforms (which can have a background)
#13624 XFA - Take into account text position in caption
#13627 XFA - Save filled data in the pdf when downloading the file (Bug 1716288)
#13600 Take the position of the selected element into account when scrolling matches (issue 13596)
#13628 Check that TrueType (3, 0) cmap tables, for symbolic fonts, are sorted correctly (issue 13626)
#13637 Update packages and translations
#13638 A couple of smaller JSDocs tweaks in src/display/api.js
#13642 XFA - Remove quotes of font name in xhtml
#13639 XFA - Replace deprecated break element (bug 1718053)
#13635 XFA - Fix width of a container with lr-tb layout (bug 1718037)
#13641 XFA - Implement aspect property on image element
#13644 XFA - Support non-embedded fonts without a Widths entry
#13645 XFA - Choice list has no selected value by default (bug 1718241)
#13616 Add PDFs from #1773 to the reftests
#13640 Add non-PRODUCTION/TESTING overflow asserts to various string helper-functions (issue 6759)
#13648 XFA - Don't fill when the fill element is not visible (bug 1718735)
#13598 XFA - Remove empty pages
#13657 Replace instanceof Object with typeof checks
#13658 Don't attempt to structure clone unsupported types with workers disabled
#13664 Remove the version field from the package.json file
#13661 [api-minor] Support accessing both the original and modified PDF fingerprint
#13662 XFA - Don't use system font when a font is not embeded but there is a substitution
#13666 Enable the ESLint operator-assignment rule
#13654 XFA - An image can be a stream in the pdf (bug 1718521)
#13672 Revert "XFA - An image can be a stream in the pdf (bug 1718521)"
#13653 XFA - Improve text layout
#13665 XFA - Fix indentation for justified paragraph
#13673 XFA - An image can be a stream in the pdf (bug 1718521)
#13675 [test/driver.js] Ensure that Image src is set after the callbacks in resolveImages
#13680 XFA - Layout correctly a subform with row layout (bug 1718740)
#13684 XFA - Default background in rectangle is white
#13683 Fix transformations when painting image masks and tiling patterns.
#13687 XFA - Don't fail xfa loading because of a JS subexpression in SOM expressions
#13649 Merge the supplemental font data files used with XFA documents
#13691 XFA - Handle correctly nested containers with lr-tb layout (bug 1718670)
#13693 XFA - Enable disabled fields (bug 1719464)
#13694 XFA - remove unnecessary check in the handleBreak function (PR 13687 follow-up)
#13692 XFA - Correctly bind global data (bug 1718725)
#13700 XFA - Scale correctly images
#13706 XFA - Keep xfa layer on top of the others (bug 1719629)
#13703 XFA - Fix typo in factory.js
#13708 XFA - Add support for traversal and traverse element
#13710 XFA - Move xfa layer on top of the others (follow-up of #13706)
#13690 Fixed text annotation comb input box
#13696 [GENERIC viewer] Try to fixup "incomplete" language codes (issue 13689)
#13699 making webpack aware of the change inside of the worker file and hash
#13712 XFA - Always compute the transformed BBox values in checkDimensions (PR 13691 follow-up)
#13705 XFA - Fix text positions (bug 1718741)
#13715 Update packages and translations
#13714 XFA - Use fake MyriadPro as a fallback for missing fonts
#13717 XFA - Fix wrong vertical alignments
#13718 XFA - Support assist element
#13716 XFA - Avoid to have containers not pushed in the html
#13720 Revert "XFA - Avoid to have containers not pushed in the html"
#13723 XFA - Only the first page was printed (bug 1720159)
#13721 XFA - Avoid to have containers not pushed in the html
#13725 Avoid all rendering breaking completely when CanvasPattern.setTransform() is unsupported
#13734 XFA - Cannot print fields with no names
#13739 Remove <meta> tag only necessary for IE-compatibility
#13738 Re-factor the handling of empty Name-instances (PR 13612 follow-up)
#13730 Add a new "botbrowsertest" gulp-task, to allow running only the browser tests on the bots
#13732 XFA - A rectangle must have the width of its parent but without ...

Read more

v2.9.359

30 May 12:11
e667c8c
Compare
Choose a tag to compare

This release features improved text layer rendering (so words and whitespace better match the rendered page), improved accessibility support (for marked PDF files with structure information for screen readers), improved shading/tiling pattern rendering, displaying of digital signatures (but not verifying them), improved XFA support (which is still experimental), improved rendering of annotations without appearance streams and other bugfixes mainly regarding annotations, font rendering and scripting.

Changes since v2.8.335:

#13183 Bump versions in pdfjs.config
#13184 Convert objects to sets in places where we only track keys
#13186 Remove some deprecated code
#13194 Fuzzy-match the fontName, for TrueType Collection fonts, where the "name"-table is wrong (issue 13193)
#13204 Fix typo in canvas.js
#13210 Cache babel source map.
#13209 Remove the enableScripting option from the PDFPageView constructor
#13207 [api-minor] Remove the manual passing of an AnnotationStorage-instance when calling various API-method
#13171 [api-minor] Add support for basic structure tree for accessibility.
#13197 Improve the image quality of thumbnails rendered by PDFThumbnailView.draw (issue 8233)
#13212 Check that the correct pdfDocument is still active, before rendering the outline/attachments/layers
#13214 Display widget signature
#13216 Remove obsolete done callbacks from the unit tests
#13220 Ensure that currentOutlineButton enabling/disabling won't depend on the exact timing of the "pagesloaded" event (PR 13212 follow-up)
#13221 [api-minor] A couple of smaller PDFPageProxy.getStructTree fixes (PR 13171 follow-up)
#13217 [GENERIC viewer] Display a warning message, using the errorWrapper, for documents with signatures (PR 13214 follow-up, issue 13215)
#13141 XFA -- Display text content
#13203 Implement high contrast mode
#13223 Remove the unused "GetIsPureXfa" message handler; and avoid unnecessary parsing when no structTree is available (PR 13069 follow-up, PR 13221 follow-up)
#13232 Fix annotation input focus trap regression in Safari
#13234 [api-minor] Ensure that PDFDocumentProxy.hasJSActions won't fail if MissingDataExceptions are thrown during the associated worker-thread parsing
#13235 Split the classes in src/core/obj.js into separate files
#13238 Update the es-module-shims package to the latest version
#13244 Update the postcss-calc package to the latest version
#13240 Update eslint-config-prettier/eslint-plugin-unicorn packages to their latest versions
#13222 Convert done callbacks to async/await in the smaller unit test files
#13243 Implement visibility expressions for optional content
#13246 Convert done callbacks to async/await in more unit test files
#13247 Update the yargs package to the latest version
#13249 [GENERIC viewer] Don't display the errorWrapper, for documents with signatures (PR 13217 follow-up)
#13250 Remove the PDFViewerApplication._delayedFallback functionality
#13146 XFA -- Load fonts permanently from the pdf
#13254 A couple of small scripting/XFA-related tweaks in the worker-code
#13253 Convert done callbacks to async/await in test/unit/api_spec.js
#13258 Update packages and translations
#13256 Convert done callbacks to async/await in the last two unit test files
#13275 Ensure that the /Properties, used with optional content, is actually loaded before parsing the operatorList/textContent (PR 12095 follow-up)
#13278 Add presentation role to text layer spans.
#13277 For CFF fonts without proper ToUnicode/Encoding data, utilize the "charset"/"Encoding"-data from the font file to improve text-selection (issue 13260)
#13263 Replace done callbacks in the font-tests with async/await instead
#13282 Update Puppeteer to version 9
#13280 Ensure that saveDocument works if there's no /ID-entry in the PDF document (issue 13279)
#13286 [JS] Use heap allocation when initializing quickjs sandbox
#13283 Change NameOrNumberTree.getAll to return a Map rather than an Object
#13272 Update all the text widgets having the same name with the same value
#13291 Replace a bunch of Array.prototype.forEach() cases with for...of loops instead
#13297 Add a note about minification to the webpack-example README (issue 13290)
#13294 Enable the no-var linting rule in src/core/{cmap,image,worker}.js
#13301 Support InkAnnotations without appearance streams (issue 13298)
#13300 Convert the code in src/display/canvas.js to use standard classes
#13304 Convert more code in src/core/ to use standard classes
#13305 Implement rendering polyline/polygon annotations without appearance stream
#13306 Fix position of highlighted all text.
#13314 For mozcentral use Firefox color theme instead of system theme.
#13310 Don't try to insert a structTree in a removed page (PR 13171 follow-up)
#13257 [api-minor] Fix the way to chunk the strings
#13303 Add an abstract base-class, which all the various Stream implementations inherit from
#13322 Update packages and translations
#13320 Add a new BaseStream.getString(...) method to replace manual bytesToString(BaseStream.getBytes(...)) calls
#13321 Enable the no-var linting rule in src/core/{crypto,function}.js
#13324 Fix highlighting of search results when the textLayer contains br-elements (PR 13257 follow-up, issue 13323)
#13319 JS -- add support for page property in field
#13274 [JS] Fix several issues found in pdf in #13269
#13333 [web/debugger.js] Enable the ESLint no-var rule
#13337 [Regression] Move the super-call in the PredictorStream-constructor to prevent errors (PR 13303)
#13340 Fix integration test in the windows bot
#13339 Remove unnecessary closure in src/display/text_layer.js, and use standard classes
#13327 Split the functionality in src/core/fonts.js into multiple files, and use standard classes
#13349 Bump lodash from 4.17.19 to 4.17.21
#13341 Remove unnecessary closure in the src/core/font_renderer.js file
#13352 Bump hosted-git-info from 2.6.0 to 2.8.9
#13338 Convert the src/core/{jbig2, jpg, jpx}.js files to use standard classes
#13344 Enable the no-var rule in the src/core/evaluator.js file
#13350 Add option enableXfa to the viewer
#13347 Take the W array into account when computing the hash, in PartialEvaluator.preEvaluateFont, for composite fonts (issue 13343)
#13354 Export the "raw" toUnicode-data from PartialEvaluator.preEvaluateFont
#13355 Fix some integration tests
#13357 Remove the disableCanvasToImageConversion functionality from PDFThumbnailView (PR 7029 follow-up)
#13358 [api-minor] Remove the WebGL implementation
#13364 Clean-up usage of the TESTING-define in src/pdf.sandbox.js
#13363 Prevent LGTM from complaining about useless assignments (PR 12562 follow-up)
#13368 Fix the Jbig2Image export for the gulp image_decoders build (PR 9729 follow-up, issue 13367)
#13360 Only include the renderer-preference in builds where SVGGraphics is defined
#13366 Convert the remaining functions in src/core/primitives.js to use standard classes
#13361 Fix several issues with radial/axial shadings and tiling patterns.
#13371 Revert "Fix the remaining no-var failures, which couldn't be handled automatically, in the src/core/evaluator.js file" (PR 13344 follow-up)
#13369 Fix tiling pattern with smask.
#13375 Improve the Page.content and Page.getContentStream methods
#13377 Re-factor and convert the code in src/core/pattern.js to use standard classes
#13379 [api-minor] Update minimum supported browser versions (PR 13361 follow-up)
#13383 Update packages and translations
#13380 Re-factor and convert the code in src/display/pattern_helper.js to use standard classes
#13385 Convert src/core/operator_list.js to use standard classes
#13386 Enable the no-var linting rule in src/core/bidi.js
#13387 Fix a few safe ESLint no-var failures in src/core/evaluator.js (13371 follow-up)
#13328 JS - Add support for display property
#13389 Get any width (if one is present) in CFF parser
#13390 XFA - Don't move glyphes in private area with non-truetype fonts
#13394 Handle PI with no value in xml parser
#13401 Remove some, with Prettier 2.3.0, unnecessary // prettier-ignore comments
#13408 Remove focus from the zoom dropdown, when a mouse is used (bug 1300525, issue 4923)
#13415 Improve handling of named destinations in out-of-order NameTrees (PR 10274 follow-up)
#13416 XFA - Fix wrong function name
#13419 Use the stringToBytes helper function in more places
#13381 Handle errors gracefully, in PartialEvaluator.buildFontPaths, when glyph path building fails
#13417 [XFA] Send URLs as strings, rather than objects (issue 1773)
#13420 Drop obsolete logic from the downloadFile function in test/downloadutils.js
#13421 XFA - Don't display images with a href
#13402 XFA - Fix lot of layout issues
#13429 Bump browserslist from 4.16.3 to 4.16.6
#13436 Re-factor FontFaceObject.getPathGenerator to use Arrays instead of strings
#13435 Enable the unicorn/no-array-push-push ESLint plugin rule
#13445 Fix Postscript name in font to avoid bug when saving in pdf
#13450 Fix the JSDocs for PDFDocumentProxy.getPageIndex (issue 13449)
#13455 Italic angle is defined clockwise in CSS when it's counterclockwise in PDF
#13456 Replace clazz by classNames
#13427 XFA - Add a storage to save fields values
#13443 Re-factor the charsCache on Font-instances
#13457 Work-around for HighlightAnnotations without a top-level /ExtGState-entry (issue 13242)
#13448 Support strokeAlpha/fillAlpha when creating a fallback appearance stream (issue 6810)
#13460 Update webpack import instructions
#13462 Update packages and translations
#13463 Bump ws from 7.4.5 to 7.4.6

v2.8.335

05 Apr 13:51
228adbf
Compare
Choose a tag to compare

This release features initial support for XFA (in addition to the support for AcroForms). Moreover, it contains lots of improvements related to scripting, text layer positioning, annotations, printing, accessibility and performance.

Changes since v2.7.570:

#12901 Bump versions in pdfjs.config
#12826 JS -- add support for choice widget
#12914 JS - QuickJS sandbox initialization must be the last evaluated string
#12916 Include pdf.sandbox.js when building the pdfjs-dist files
#12911 Fix text layer regression tests in using the correct line-height property
#12910 Add back dir property in spans in text layer
#12903 Improve global image caching for small images (PR 11912 follow-up, issue 12098)
#12924 Fix font data clone error when pdfBug is enabled.
#12922 Ignore globally cached images in PartialEvaluator.getTextContent (PR 11930 follow-up)
#12920 fix(acroforms): pdf path in acroforms example
#12931 Stop showing the fallback bar for "errorFontLoadNative" errors (PR 10539 follow-up)
#12932 Stop including -ms prefixed CSS rules in GENERIC builds
#12933 Stop polyfilling CSS variables in GENERIC builds
#12935 Remove prefixed fullscreen properties/methods from the MOZCENTRAL builds
#12879 XFA - Add a parser for XFA files
#12943 Re-enable the issue6961 test-case (issue 7112)
#12947 Update Puppeteer to version 6 (issue 12945)
#12954 XFA -- Add attributes and children in XFAObject
#12952 Don't focus the PasswordPrompt input-field on load, when the viewer is embedded in e.g. an iframe (issue 12951)
#12956 Update Puppeteer to version 7
#12946 XFA -- Add template object
#12944 XFA -- Update config object
#12941 fix(a11y): resolve sidebar, find, toolbar missing aria-expanded and aria-controls state
#12961 Use optional chaining, where possible, in the web/-folder
#12965 Request all data, rather than throwing, when encountering general errors in ObjectLoader._walk (issue 9462, PR 3289 follow-up)
#12966 Update packages and translations
#12962 Handle errors gracefully, in PartialEvaluator.translateFont, when fetching the font file (issue 9462)
#12970 Split PDFViewerApplication.error into two methods, for PDF document loading/parsing errors vs other errors (PR 11647 follow-up)
#12971 Use DOM hidden property instead of attribute methods
#12975 Remove the contentmenu usage, from PresentationMode, since it's no longer working
#12972 [GENERIC viewer] Skip the iframe-case when checking if the container div, on BaseViewer-instances, is absolutely positioned (PR 12354 follow-up)
#12973 Use Math.hypot, instead of Math.sqrt with manual squaring
#12978 [api-minor] Rename -es5 to -legacy, to reduce confusion over what's actually supported (issue 12976)
#12948 XFA -- Add localset object
#12949 XFA -- Add other objects
#12982 Update the year in the license_header files
#12984 Replace a few new Date().getTime() instances with Date.now()
#12981 Collect the l10n error/warning message lookup, in web/app.js, in a new helper method
#12904 fix initial state of checkboxes in display layer
#12987 Restore window.alert after use in scripting test
#12986 Remove the unused "loading_error_indicator" l10n string (PR 2719 follow-up)
#12988 Remove unneeded instanceof MissingDataException checks
#12896 Modifiy the way to compute baseline to have a better match between canvas and text layer
#12992 Use a more compact format for the fallback EventBus-listeners in PDFViewerApplication_initializeJavaScript
#12991 Stop including unused/unnecessary code in the viewer, for MOZCENTRAL-builds
#12993 [api-minor] Change the dc:subject Metadata field to an Array
#12964 Avoid infinite loop when getting annotation field name
#12995 Stop showing the fallback bar for "errorFontMissing" errors (PR 11218 follow-up)
#12830 JS -- Fix doc.getField and add missing field methods
#12936 XFA - Add a lexer/parser for FormCalc language
#12998 Simplify the default value handling of renderInteractiveForms in the viewer components
#12999 [api-minor] Remove support for synchronous event dispatching in LoopbackPort
#12997 Move the Metadata parsing to the worker-thread
#12979 XFA - Add support for prototypes
#13001 Send the AnnotationStorage-data to the worker-thread as a Map
#13004 Add a this-bound method for InternalRenderTask.cancel
#13007 Update packages and translations
#13005 JS - Fix setting a color on an annotation
#13008 Allow minor and patch versions for the webpack-stream dependency again
#12983 XFA -- Add support for SOM expressions
#13011 Remove extra new line from HTML source.
#13009 Move the opening of PDF file attachments into the DownloadManager-implementations
#13019 Remove the findResultsCount-check from PDFFindBar.updateResultsCount, and unnecessary defaults from the constructor
#13020 Remove the NullL10n default value from viewer components not included in the COMPONENTS-bundle
#13021 Remove the, strictly unnecessary, closure and variable shadowing from createObjectURL
#13014 [api-minor] Support the Content-Disposition filename in the Firefox PDF Viewer (bug 1694556, PR 9379 follow-up)
#13025 Convert code in src/core/function.js to use "normal" classes
#13026 Convert code in src/core/crypto.js to use "normal" classes
#13024 Update Puppeteer to version 8
#13023 Fix integration test with js-colors
#13029 Enable the no-var linting rule in more core files
#13030 Modernize some of the code in src/core/cmap.js by using classes and async/await
#13031 Implement rendering square/circle annotations without appearance stream
#13032 Don't warn about actions that require scripting support in Catalog.parseDestDictionary
#13033 Implement rendering line annotations without appearance stream
#13039 Change the background to ensure that the sidebar is visible/readable when the viewer is narrow (issue 13036)
#13045 Bump pug-code-gen from 2.0.1 to 2.0.3
#13050 Collect all l10n fallback strings, used in the viewer, in one helper function (PR 12981 follow-up)
#13053 Enable scripting by default in the development viewer; remove the standalone acroforms example
#13042 [api-minor] Move the viewer scripting initialization/handling into a new PDFScriptingManager class
#13054 Move handling of the PageOpen/PageClose events into the PDFScriptingManager (PR 13042 follow-up)
#13060 Update packages and translations
#13055 JS - reset correctly radio buttons
#13062 Remove the test/features folder, since it's very out of date (issue 11954)
#13063 Use more optional chaining in the web/-folder (PR 12961 follow-up)
#13018 XFA - Create Form DOM in merging template and data trees
#13015 JS - Avoid a popup to ask for updating Acrobat.
#13078 Disable intermittent unit test "creates pdf doc from non-existent URL"
#13074 Re-factor the PDFScriptingManager._destroyScripting method (PR 13042 follow-up)
#13081 Replace the objectFromEntries helper function with an objectFromMap one instead, and simplify the data lookup in the AnnotationStorage.getValue method
#13085 Ensure that all errors are handled in rasterizeTextLayer/rasterizeAnnotationLayer
#13090 Enable the ESLint no-var rule in gulpfile.js
#13079 Ensure that getDocument handles Node.js Buffers more gracefully (issue 13075)
#13087 Enable the ESLint no-var rule in the examples/ folder
#13084 Enable the ESLint no-var rule in a few font-parsing files, and convert src/core/type1_parser.js to use "standard" classes
#13092 Enable the ESLint no-var rule in the importL10n/ folder
#13091 Enable the ESLint no-var rule globally
#13093 Enable the ESLint no-var rule in the external/builder/ folder
#13097 Enable the ESLint no-var rule in test/add_test.js
#13096 Enable the ESLint no-var rule in the test/stats/ folder
#13095 Enable linting of the external/cmapscompress/ folder
#13098 Enable the ESLint no-var rule in the external/ folder
#13094 Enable the no-var linting rule for src/core/{operator_list, pattern}.js
#13101 print: Remove invalid @supports condition.
#13100 print: Ensure print containers have the right size and don't create overflow.
#13102 print: RFC: Center when printing a PDF with smaller size than the output page.
#13104 Ensure that printing, triggered from scripting, won't accidentally throw in PDFScriptingManager._updateFromSandbox
#13106 Support LineAnnotations with empty /Rect-entries (issue 6564)
#13069 [api-minor]XFA - Add a layer to display XFA forms
#13119 Actually reset the PDFPageProxy._xfaPromise property as intended (PR 13069 follow-up)
#13120 Rotate landscape pages, during printing, by default in the viewer (enablePrintAutoRotate = true)
#13116 Enable scripting by default in the viewer (PR 13053 follow-up)
#13113 Ignore some scripting events which don't make sense in PresentationMode
#13105 Improve memory usage around the BasePdfManager.docBaseUrl parameter (PR 7689 follow-up)
#13118 Add landmark region and aria-label for each page.
#13124 Tweak the pre-processor condition, for Node.js environments, in the animationStarted helper (issue 13057)
#13117 Re-factor the default preferences generation to support build targets (PR 10548)
#13126 Update packages and translations
#13125 Don't provide the enableXfa parameter to the BaseViewer constructor, and avoid the fallback bar with enableXfa = true set (PR 13069 follow-up)
#13135 Fix typo in pdf_history.js
#13128 Re-factor how the BasePreferences.prefs-property is initialized; remove some indirect loops
#13082 XFA - Convert some template properties into CSS ones
#13149 Set CFF header to 4 when writing it because it contains 4 elements
#13140 [GrabToPan] Remove more IE-specific code, and remove unconditional browser sniffing
#13145 print: Improve rendering of oversized pages.
#13144 [GrabToPan] Use Element.matches() rather than prefixed ...matchesSelector versions
#13138 [PDFHistory] Correctly ...

Read more