1
0
Fork 0
mirror of https://github.com/mozilla/pdf.js.git synced 2025-04-19 22:58:07 +02:00
pdf.js/web
Nicolò Ribaudo dc5d6aad8a
Avoid degrading scroll performance due to the detail view
When scrolling quickly, the constant re-rendering of the detail view
significantly affects rendering performance, causing Firefox to
not render even the _background canvas_, which is just a static canvas
not being re-drawn by JavaScript.

This commit changes the viewer to only render the detail view while
scrolling if its rendering hasn't just been cancelled. This means that:
- when the user is scrolling slowly, we have enough time to render the
  detail view before that we need to change its area, so the user always
  sees the full screen as high resolution.
- when the user is scrolling quickly, as soon as we have to cancel a
  rendering we just give up, and the user will see the lower resolution
  canvas. When then the user stops scrolling, we render the detail view
  for the new visible area.
2025-02-21 10:00:57 -08:00
..
images [Editor] Add the possibility to change a signature description (bug 1948116) 2025-02-14 14:00:45 +01:00
.gitignore Support multiple wasm-files in the development viewer 2025-01-18 09:35:11 +01:00
alt_text_manager.js Add a new closeIfActive method in the OverlayManager class 2025-02-14 15:43:00 +01:00
annotation_editor_layer_builder.css [api-major] Apply the userUnit using CSS, to fix the text/annotation layers (bug 1947248) 2025-02-11 14:36:06 +01:00
annotation_editor_layer_builder.js [api-major] Change viewer component render-methods to take parameter objects 2025-01-21 23:29:45 +01:00
annotation_editor_params.js Merge pull request #19339 from calixteman/signature_tools 2025-01-30 10:54:56 +01:00
annotation_layer_builder.css [api-major] Apply the userUnit using CSS, to fix the text/annotation layers (bug 1947248) 2025-02-11 14:36:06 +01:00
annotation_layer_builder.js Fix autolinking error due to redundant annotations on zooming 2025-02-19 13:18:31 +01:00
app.js [api-minor] Render high-res partial page views when falling back to CSS zoom (bug 1492303) 2025-02-21 10:00:55 -08:00
app_options.js [api-minor] Render high-res partial page views when falling back to CSS zoom (bug 1492303) 2025-02-21 10:00:55 -08:00
autolinker.js Fix autolinking errors due to regex and email validation 2025-02-19 13:18:31 +01:00
base_pdf_page_view.js [api-minor] Render high-res partial page views when falling back to CSS zoom (bug 1492303) 2025-02-21 10:00:55 -08:00
base_tree_viewer.js Limit base-class initialization checks to development and TESTING modes 2024-08-12 12:26:35 +02:00
caret_browsing.js Update the CaretBrowsingMode toolbar-height if the toolbarDensity preference changes (PR 18786 follow-up) 2024-10-01 19:43:16 +02:00
chrome-i18n-allow-access-to-file-urls.json Add translations of "Allow access to file URLs" 2015-08-14 18:59:55 +02:00
chromecom.js [Editor] Add the possibility to change a signature description (bug 1948116) 2025-02-14 14:00:45 +01:00
compressed.tracemonkey-pldi-09.pdf Add Makefile. Move some files around to make building the website easier. 2011-07-05 10:53:57 -07:00
debugger.css Fix the textLayer-opacity when using the FontInspector (PR 17533 follow-up) 2024-01-26 18:31:38 +01:00
debugger.mjs [Debugger] Add some info about substitution font 2023-10-09 12:06:33 +02:00
dialog.css [Editor] Add the possibility to change a signature description (bug 1948116) 2025-02-14 14:00:45 +01:00
download_manager.js Do not stringify errors when logging them 2024-12-06 14:47:22 +01:00
draw_layer_builder.css [Editor] Add a new base class to allow to add a drawing in the SVG layer. 2024-11-28 15:23:03 +01:00
draw_layer_builder.js [api-major] Change viewer component render-methods to take parameter objects 2025-01-21 23:29:45 +01:00
editor_undo_bar.js [Editor] (WIP) Add a new tool in order to add an handwritten signature to a pdf (bug 1942343) 2025-01-29 21:52:14 +01:00
event_utils.js Add the possibility to dispatch some pdf.js events at the chrome level (bug 1904585) 2024-06-25 21:03:34 +02:00
external_services.js Add the possibility to compress/decompress the signature data in order to store them in the logins storage in Firefox (bug 1946171) 2025-02-10 19:09:51 +01:00
firefox_print_service.js [api-minor] Implement basic support for OptionalContent Usage dicts (issue 5764, bug 1826783) 2024-03-12 13:18:15 +01:00
firefoxcom.js [Editor] Add the possibility to change a signature description (bug 1948116) 2025-02-14 14:00:45 +01:00
generic_scripting.js Remove a few eslint-disable statements in the web/ folder 2025-02-17 13:40:09 +01:00
generic_signature_storage.js [Editor] Add the possibility to change a signature description (bug 1948116) 2025-02-14 14:00:45 +01:00
genericcom.js [Editor] Add the possibility to change a signature description (bug 1948116) 2025-02-14 14:00:45 +01:00
genericl10n.js [GenericL10n] Fetch the language bundles in parallel to reduce load time 2025-02-13 11:53:45 +01:00
grab_to_pan.js Use the stopEvent helper function everywhere possible 2024-11-28 13:25:56 +01:00
interfaces.js Stop sending the unused options parameter to various download-methods in the viewer 2024-08-02 20:46:13 +02:00
l10n.js Do not stringify errors when logging them 2024-12-06 14:47:22 +01:00
message_bar.css [Editor] Populate the 'Add signature' menu with the saved signatures (bug 1947828) 2025-02-13 15:59:57 +01:00
new_alt_text_manager.js Add a new closeIfActive method in the OverlayManager class 2025-02-14 15:43:00 +01:00
overlay_manager.js Add a new closeIfActive method in the OverlayManager class 2025-02-14 15:43:00 +01:00
password_prompt.js Add a new closeIfActive method in the OverlayManager class 2025-02-14 15:43:00 +01:00
pdf_attachment_viewer.js [api-minor] Improve the FileSpec implementation 2024-05-01 18:02:05 +02:00
pdf_cursor_tools.js Ensure that the CursorTools-buttons are disabled e.g. during editing (PR 15522 follow-up) 2024-09-28 12:29:51 +02:00
pdf_document_properties.js Move the getPage call in PDFDocumentProperties class 2024-12-01 12:25:16 +01:00
pdf_find_bar.js Support toggling the PDFFindBar options with the Enter key (issue 19175) 2024-12-06 17:53:28 +01:00
pdf_find_controller.js Remove a few eslint-disable statements in the web/ folder 2025-02-17 13:40:09 +01:00
pdf_find_utils.js [api-minor] Don't normalize the text used in the text layer. 2023-04-17 14:31:23 +02:00
pdf_history.js [CRX] Remove obsolete manifest features 2024-08-25 20:34:03 +02:00
pdf_layer_viewer.js Re-factor how PDFLayerViewer decides if the UI needs to updated on "optionalcontentconfigchanged" events 2024-10-01 13:25:22 +02:00
pdf_link_service.js Allow /XYZ destinations without zoom parameter (issue 18408) 2024-07-18 13:29:32 +02:00
pdf_outline_viewer.js [api-minor] Move the page reference/number caching into the API 2024-04-29 18:54:06 +02:00
pdf_page_detail_view.js Avoid degrading scroll performance due to the detail view 2025-02-21 10:00:57 -08:00
pdf_page_view.js [api-minor] Render high-res partial page views when falling back to CSS zoom (bug 1492303) 2025-02-21 10:00:55 -08:00
pdf_presentation_mode.js Remove event listeners with signal in web/pdf_presentation_mode.js 2024-04-18 18:41:18 +02:00
pdf_print_service.js Remove a few eslint-disable statements in the web/ folder 2025-02-17 13:40:09 +01:00
pdf_rendering_queue.js Avoid degrading scroll performance due to the detail view 2025-02-21 10:00:57 -08:00
pdf_scripting_manager.component.js Use shorter arrow functions where possible 2024-01-21 10:13:12 +01:00
pdf_scripting_manager.js Do not stringify errors when logging them 2024-12-06 14:47:22 +01:00
pdf_sidebar.js Remove the sidebar resizing event listeners with an AbortController 2024-08-10 12:24:59 +02:00
pdf_single_page_viewer.js Remove the abstract BaseViewer-class 2022-09-08 12:38:17 +02:00
pdf_thumbnail_view.js [Editor] Take into account the device pixel ratio when drawing an added image 2024-09-16 14:48:26 +02:00
pdf_thumbnail_viewer.js Avoid degrading scroll performance due to the detail view 2025-02-21 10:00:57 -08:00
pdf_viewer.component.js Ensure that GenericL10n works if the locale files cannot be loaded 2024-01-31 14:07:11 +01:00
pdf_viewer.css [Editor] Populate the 'Add signature' menu with the saved signatures (bug 1947828) 2025-02-13 15:59:57 +01:00
pdf_viewer.js Avoid degrading scroll performance due to the detail view 2025-02-21 10:00:57 -08:00
pdfjs.js Merge pull request #19425 from calixteman/signature_save 2025-02-10 19:20:32 +01:00
preferences.js Limit base-class initialization checks to development and TESTING modes 2024-08-12 12:26:35 +02:00
print_utils.js Handle appending consistently in the xfaLayer regardless of rendering intent (PR 17177 follow-up) 2023-10-26 12:05:33 +02:00
secondary_toolbar.js Ensure that the CursorTools-buttons are disabled e.g. during editing (PR 15522 follow-up) 2024-09-28 12:29:51 +02:00
signature_manager.css [Editor] Fix the outline of a focused button in the doorhanger while navigating with the keyboard 2025-02-20 18:33:19 +01:00
signature_manager.js [Editor] Remove the error panel when the user click on an other tab (bug 1949201) 2025-02-20 14:03:59 +01:00
struct_tree_layer_builder.js [api-major] Apply the userUnit using CSS, to fix the text/annotation layers (bug 1947248) 2025-02-11 14:36:06 +01:00
stubs-geckoview.js [Editor] Add a new dialog for the signature editor (bug 1945574) 2025-02-05 23:00:38 +01:00
text_accessibility.js [Editor] Add the parent tag id (if any) to the serialized editors (bug 1845087) 2023-09-07 18:22:33 +02:00
text_highlighter.js Fix left offset when scrolling to search result 2024-12-16 16:04:13 +01:00
text_layer_builder.css Make tagged images visible for screen readers (bug 1708040) 2024-09-05 17:59:42 +02:00
text_layer_builder.js [api-major] Change viewer component render-methods to take parameter objects 2025-01-21 23:29:45 +01:00
toggle_button.css Remove unused CSS variables 2025-01-07 10:29:23 +01:00
toolbar-geckoview.js [GeckoView] Remove the open-in-app button (bug 1832519) 2024-03-04 19:32:12 +01:00
toolbar.js Merge pull request #19339 from calixteman/signature_tools 2025-01-30 10:54:56 +01:00
ui_utils.js [api-minor] Render high-res partial page views when falling back to CSS zoom (bug 1492303) 2025-02-21 10:00:55 -08:00
view_history.js Add a bit more validation in the ViewHistory constructor 2020-03-21 13:55:06 +01:00
viewer-geckoview.css [GV] Increase the height (48px) of the toolbar in order to fit the a11y recommendations (bug 1838602) 2024-10-02 19:17:40 +02:00
viewer-geckoview.html [Editor] Add a new dialog for the signature editor (bug 1945574) 2025-02-05 23:00:38 +01:00
viewer-geckoview.js Upgrade eslint-plugin-perfectionist to version 4.2.0 2024-12-07 13:44:48 +01:00
viewer-snippet-chrome-extension.html [api-minor] Move to Fluent for the localization (bug 1858715) 2023-10-19 11:20:41 +02:00
viewer-snippet-chrome-overlays.html Convert the existing overlays to use <dialog> elements (issue 14698) 2022-03-28 11:36:29 +02:00
viewer-snippet-firefox-extension.html [api-major] Output JavaScript modules in the builds (issue 10317) 2023-10-07 09:31:08 +02:00
viewer-snippet.html [api-minor] Move to Fluent for the localization (bug 1858715) 2023-10-19 11:20:41 +02:00
viewer.css [Editor] Fix the color of the labels in the editing doorhangers 2025-02-20 19:31:57 +01:00
viewer.html [Editor] Add the possibility to change a signature description (bug 1948116) 2025-02-14 14:00:45 +01:00
viewer.js [Editor] Add the possibility to change a signature description (bug 1948116) 2025-02-14 14:00:45 +01:00
xfa_layer_builder.css Remove unnecessary alpha-value from CSS rgb colors 2023-10-06 09:50:03 +02:00
xfa_layer_builder.js [api-major] Change viewer component render-methods to take parameter objects 2025-01-21 23:29:45 +01:00