Commit Graph

874 Commits

Author SHA1 Message Date
Brendan Dahl
1145eb8c09 Merge pull request #5295 from yurydelendik/pdfviewer
Refactoring to move page display code into separate class
2014-09-29 15:23:35 -07:00
Yury Delendik
44779f14b0 Renames and refactors PDFView to PDFViewerApplication. 2014-09-28 10:39:56 -05:00
Yury Delendik
a89bba35b2 Adds types definitions (jsdoc) for the PDFViewer code. 2014-09-28 10:39:56 -05:00
Yury Delendik
3773972dce Marks some private methods in PDFViewer and PDFThumbnailViewer
Conflicts:
	web/pdf_viewer.js
2014-09-28 10:39:56 -05:00
Yury Delendik
a1eca2084d Moves constants to avoid dependency on PDFView 2014-09-21 12:47:26 -05:00
Yury Delendik
f1851c6393 Removes any usage of PDFView in the PageView 2014-09-21 12:47:26 -05:00
Yury Delendik
fbd7eedce8 Removes PresentationMode dependency from PDFViewer 2014-09-21 12:47:26 -05:00
Yury Delendik
a06a974f78 Moves rendering queue logic from PDFView 2014-09-21 12:47:26 -05:00
Yury Delendik
7642c39734 Moves pdfDocument.getPage/getTextContent requests out of PDFView 2014-09-21 12:47:26 -05:00
Yury Delendik
7af8748151 Moves viewer code into PDFViewer and some code from PageView. 2014-09-21 12:47:07 -05:00
Yury Delendik
3bce14761a Moves thumbs logic into PDFThumbnailViewer. 2014-09-20 08:19:04 -05:00
Yury Delendik
bfefadb87c Moves watchScroll and getVisibleElements from PDFView 2014-09-20 08:19:04 -05:00
Yury Delendik
c3f191a27c Implement streaming using moz-chunk-arraybuffer 2014-09-19 19:05:25 -05:00
Yury Delendik
63b7fa5634 Merge branch 'issue-4954' of https://github.com/Snuffleupagus/pdf.js into hashes
Conflicts:
	web/viewer.js
2014-09-19 18:25:11 -05:00
Manuel Padrón Martínez
293d566f67 Changed to lowercase everywhere the hashParams is compared 2014-09-18 20:18:23 +01:00
Manuel Padrón Martínez
4623f20221 Lowerize the params to allow case sensitive 2014-09-18 19:42:04 +01:00
Yury Delendik
ffb613bbac Merge pull request #5275 from Snuffleupagus/exception-propagation
Fix the exception propagation when rejecting workerReadyCapability
2014-09-16 10:05:34 -05:00
Jonas Jenwald
ed5fc43510 Add |UnexpectedResponseException| to fix the exception handling when file loading fails because the server responds with a non 404 status message 2014-09-14 11:52:33 +02:00
Yury Delendik
74d02c3406 Merge pull request #5254 from mancas/bug
Avoid showing 'blob..' as a title when using pdfjs from B2G
2014-09-11 17:03:47 -05:00
sangm
f4ccb1b61c Bug 1031612 - In PDF Viewer, the buggy XMP title "Untitled" overrides the document info title 2014-09-11 11:10:47 -05:00
Manuel Casas Barrado
f40fa1ac2a Bug 1054643 - [B2G][PDF Viewer]PDF Viewer title is shown as blob:... 2014-09-11 08:09:56 +02:00
Yury Delendik
15059ea603 Merge pull request #5229 from cpeterso/cpeterso/auto-fit-landscape
Auto zoom landscape documents (like slide presentations) to fit their height
2014-09-09 09:49:15 -05:00
Jonas Jenwald
2701edc7c6 Change getDocumentError in web/viewer.js to use instanceof instead of the exception name 2014-09-08 22:34:25 +02:00
Jonas Jenwald
ca027ebfdb Fix the exception propagation when rejecting workerReadyCapability
Currently when an exception is thrown, we try to reject `workerReadyCapability` with multiple arguments in src/core/api.js. This obviously doesn't work, hence this patch changes that to instead reject with the exception object as is.
In src/core/worker.js the exception is currently (unncessarily) wrapped in an object, so this patch also simplifies that to directly send the exception object instead.
2014-09-08 22:20:41 +02:00
Chris Peterson
81d5bd86ea Replace magic scale value 0 with UNKNOWN_SCALE 2014-08-23 00:14:44 -07:00
Chris Peterson
50a4510ab7 Auto zoom landscape documents to fit their height 2014-08-23 00:14:18 -07:00
Jonas Jenwald
5abe1cae6a Fix Zoom box resizing when it's hidden when the viewer loads (issue 5224) 2014-08-21 17:57:57 +02:00
Fabian Lange
403a4e2bda Debounces scroll events in web viewer.
As requested in #5178, this change debounces the scroll events.
The reason for doing so is that browsers can event-storm especially on
scroll, communicating hundreds of subpixel changes.

The main reason for this resulting in poor performance is that on each
scroll event `scrollTop` was queried, which forces layouting.

This change will use `requestAnimationFrame` to make sure the browser can
allocate enough time to other tasks. The delay is however quite small, thus
the reduction in executions is less noticeable. Modern browsers however utilize
`requestAnimationFrame` to smoothen out rendering.
2014-08-18 23:23:32 +02:00
Yan Or
d8bc16362c Bug 1054590 - [pdf.js] Update to use gaia-header 2014-08-15 17:57:07 -07:00
Jonas Jenwald
ca1dbda348 Disable the "Go to First/Last Page" buttons when the first/last page is currently active
Since the "Previous/Next Page" buttons are disabled when the first/last page is active, I think that for the sake of consistency the "Go to First/Last Page" should behave the same way.
2014-08-12 12:58:59 +02:00
Jonas Jenwald
3fd6c468b7 Attempt to display the File size quicker in the Document Properties dialog
Currently the File size field in the Document Properties dialog isn't set until `PDFView.pdfDocument.getDownloadInfo()` is resolved. If the Document Properties dialog is opened while a PDF file is loading with range requests, this leads to the less desirable situation where all fields *except* File size are available.

In cases where `PDFView.open()` is called with the `args` parameter defined, and `args` contains the property `length`, we actually know the File size when the PDF file begins to load. (This is usually the case when ranged loading is used in the Firefox addon/built-in version.)
Hence we can use `args.length` to set the File size immediately when `PDFView.open()` is called, resulting in a better user experience.
2014-08-11 16:44:36 +02:00
Jonas Jenwald
4737e1ad8d Remove old unused code from PDFView.close() 2014-08-10 16:50:21 +02:00
Yury Delendik
e8af56ffc5 Fixes text-selection example 2014-08-06 10:09:27 -05:00
Yury Delendik
196416cc17 Merge pull request #5100 from Rob--W/load-file-in-main-thread
Load file:-URLs in the main thread.
2014-08-06 09:54:46 -05:00
Yury Delendik
df8d2573dd Merge pull request #5007 from timvandermeij/pdfview-tlb
Converting PDFFindBar and PDFFindController to classes
2014-08-05 18:32:38 -05:00
Hengjie
eaa587753b Fix issue where pdfDocument is null
Happens when no file is loaded
2014-08-04 12:27:47 +12:00
Rob Wu
bd25f6be94 Load file:-URLs in the main thread.
QtWebKit does not support file:-URLs in Web Workers.
To solve this issue, I'm loading file:-URLs in the main thread
for generic builds. file:-URLs load relatively quick, so there
is no need for sophisticated load progress notifications.
2014-08-01 16:53:41 +02:00
Tim van der Meij
ea85a2f7a7 Use strict equalities in web/viewer.js 2014-07-31 22:06:38 +02:00
Tim van der Meij
dbe22475e1 Converting PDFFindBar and PDFFindController to classes 2014-07-29 21:59:01 +02:00
Rob Wu
bb13fb939e Initialize PDFView.url = ''
The absence of this property caused the following error in PDFView.download:

   Cannot read property 'split' of undefined

This property was unset when the PDF was loaded through a typed array instead
of a URL. With the fix, the file name will default to "document.pdf", as
defined by getPDFFileNameFromURL in web/ui_utils.js
2014-07-24 23:37:31 +02:00
Lu Wang
91b7030bf4 fix typo 2014-07-23 23:59:27 -07:00
Fabian Lange
6447397c04 Do not run cleanup while printing is ongoing. 2014-06-25 12:53:58 +02:00
Yury Delendik
df87df59b6 Increases page cache size when needed 2014-06-17 13:41:40 -05:00
Yury Delendik
6f79aef03a Uplift for B2G bug 1009780 - Improve open mechanism for downloads. 2014-06-16 19:06:36 -05:00
Jonas Jenwald
22cfcbcf8a Merge pull request #4952 from yurydelendik/telemetry
Collect More Telemetry Data
2014-06-17 00:36:58 +02:00
Jonas Jenwald
3ead6e6a94 Disable the developer hash parameters by default in PRODUCTION builds of PDF.js 2014-06-17 00:32:57 +02:00
Jonas Jenwald
1ba31a6cb7 Add pdfBugEnabled to the default preferences 2014-06-16 21:46:39 +02:00
Yury Delendik
7ac1c6b034 Reporting print usage 2014-06-14 15:55:21 -05:00
Jonas Jenwald
5ac4dd9593 Prevent rendering unnecessary pages when the HOME/END keys are pressed
Currently (at least in Firefox) when the HOME/END keys are pressed, this will trigger unnecessary rendering of pages that lay between the current page and the first/last page. Avoid this by going straight to the first/last page instead.
2014-06-14 14:11:42 +02:00
Nicholas Nethercote
f852cefdd8 Halve the size of the PageView cache. 2014-06-13 07:53:36 -07:00
Yury Delendik
2efbdfe8d4 Merge pull request #4834 from dferer/canvas-max-size
Limit the size of canvases to 5MP (iOS restriction)
2014-06-13 09:37:42 -05:00
Yury Delendik
cab043028b Merge pull request #4924 from yurydelendik/fixthumb
Fixes drawImage for thumbs
2014-06-13 09:07:41 -05:00
Samuel Chantaraud
952545e20f Limit the size of canvases to 5MP (iOS restriction) 2014-06-12 17:58:58 -04:00
Yury Delendik
d57f83e087 Reverting back disableWebGL preferences check 2014-06-12 14:47:46 -05:00
Yury Delendik
3b405cf611 Protects PDFJS.disableXXX == true from change 2014-06-12 12:40:59 -05:00
Yury Delendik
a338a7966d Fixes drawImage for thumbs 2014-06-12 10:28:42 -05:00
deathy
7d975dfe22 Fix destination name for 'Fit' zoom levels in hash params 2014-06-11 21:11:56 +03:00
Mohammed Abu-alsaad
e6546642db Added more preference variables from the available hash parameters 2014-05-30 10:44:41 +12:00
Jonas Jenwald
5cd6dddeee Convert the existing overlays to use the OverlayManager 2014-05-25 21:33:15 +02:00
Samuel Chantaraud
37c3641fad Added Promise.catch
Fixed Promise so it rejects on uncaught exception
Catch possible rejection on ViewHistory.setMultiple
2014-05-22 13:53:19 -04:00
Jonas Jenwald
b88c5330a9 Reduce the number of calls to PDFView.getVisiblePages from updateViewarea 2014-05-10 16:43:22 +02:00
Yury Delendik
c5eb058b09 Uses rAF to interrupt the operator list execution 2014-05-09 07:00:47 -05:00
Jonas Jenwald
c53bcb2992 Add a preference to set the sidebarView on load 2014-04-28 20:32:41 +02:00
Jonas Jenwald
159e86f7ab Ensure that the viewer loads even if there are errors when the preferences are read 2014-04-28 11:01:58 +02:00
Yury Delendik
42ed9025ef Merge pull request #4692 from Snuffleupagus/viewHistory-setMultiple
Add support for setting multiple values at once in ViewHistory
2014-04-27 23:26:38 -05:00
Jonas Jenwald
51d6ad7176 Fix the display of the indeterminate progress bar when the loaded percentage is NaN (issue 4696) 2014-04-27 22:11:25 +02:00
Jonas Jenwald
69eafaa58f Add support for setting multiple values at once in ViewHistory 2014-04-25 22:57:01 +02:00
Tim van der Meij
107cd8007f Move DocumentAttachmentsView to its own file 2014-04-24 22:58:21 +02:00
Tim van der Meij
1e119e093b Move DocumentOutlineView to its own file 2014-04-24 22:58:13 +02:00
Jonas Jenwald
4e1362642a Only handle scroll events when PDFView.pdfDocument is defined (issue 4642) 2014-04-19 01:55:10 +02:00
Samuel Chantaraud
25ee0e8572 Preliminary attachments support
Added a partial Filespec support
Added getAttachments in API
Added a new attachments view in UI (with a new icon by @shorlander)
2014-04-18 12:11:00 -04:00
Rob Wu
d7dfa447cd Remove unused (local) variables in web/ 2014-04-15 17:10:23 +02:00
Jonas Jenwald
12f3d58506 Ensure that the errorWrapper is closed when a new document is opened (issue 4625) 2014-04-15 13:51:40 +02:00
Yury Delendik
1fd43a87db Changes 'documentload' event behavior. 2014-04-13 21:07:36 -05:00
Yury Delendik
012a727eed Merge pull request #4598 from Rob--W/crx-filesystem-worker
Work-around for filesystem:-URL bug
2014-04-11 13:50:41 -05:00
Rob Wu
bfcc8af6ed Move logic from viewer.js to chromecom.js
and also default to '' instead of DEFAULT_URL to avoid trying to
load a non-existent file when no file has been specified.
2014-04-11 17:37:48 +02:00
Rob Wu
b64c06f68d Work-around for filesystem:-URL bug (#4592).
Visit https://robwu.nl/pdfjs/filesystem-worker-bug.htm and follow the
steps to verify that the extension works as intended with this patch.
2014-04-11 15:33:34 +02:00
Jonas Jenwald
965f7a7b14 Print WebGL status in the console 2014-04-11 13:37:50 +02:00
Tim van der Meij
b348243866 Fixes lint warning W004 in /web 2014-04-11 00:02:33 +02:00
Jonas Jenwald
eb7f369c54 Remove leading and trailing spaces from info.Producer and info.Creator when printing debug info in the console (bug 872827) 2014-04-10 12:20:39 +02:00
Brendan Dahl
ed1f8c33bd Merge pull request #4286 from yurydelendik/webgl
WebGL and misc memory optimizations
2014-04-07 14:33:34 -07:00
Yury Delendik
30ab878835 Add enableWebGL to the preferences 2014-04-03 12:20:53 -05:00
Yury Delendik
9c59437ac3 Merge pull request #4455 from aib/master
Fix download button waiting if document has started but not completed downloading
2014-04-03 09:40:06 -05:00
Yury Delendik
f57c6935d7 Implements WebGL support 2014-04-03 08:36:22 -05:00
Jonas Jenwald
c920372ff2 Rewrite 'Preferences' to make it async 2014-04-03 10:08:33 +02:00
Yury Delendik
bd11111465 Merge pull request #4545 from Rob--W/crx-api-enhancements
Use new Chromium APIs for FTP and redirects
2014-04-02 09:40:13 -05:00
Yury Delendik
75d09fd820 Merge pull request #4524 from fkaelberer/fullWidthInPresentationMode
Use full screen width in presentation mode
2014-04-02 09:03:37 -05:00
Jonas Jenwald
025f340228 Prevent the Document Properties from being empty when the dialog is opened before the file has started loading 2014-03-31 23:12:48 +02:00
Rob Wu
d04f81b964 Improved FTP support for Chromium extension 2014-03-30 00:08:02 +01:00
fkaelberer
db84851e27 Use full screen width in presentation mode 2014-03-28 08:58:18 +01:00
Brendan Dahl
a06fca142e Merge pull request #4519 from yurydelendik/pdfbugclean
Cleaning up the viewer and pdfbug; fixes bugs in Stepper
2014-03-27 13:27:15 -07:00
Yury Delendik
17eded9065 Partially reverts #3641 2014-03-27 10:50:42 -05:00
Yury Delendik
ed8ecfd00a Cleaning up the viewer and pdfbug; fixes repeats in Stepper 2014-03-26 15:18:53 -05:00
Yury Delendik
1d8f6cf0e7 Updates make.js for cmaps and make binary cmaps by default 2014-03-17 13:30:43 -05:00
Yury Delendik
69efd9cb96 CMaps binary packing 2014-03-14 16:46:35 -05:00
aib
2870a6108c Fix download button waiting if document has started but not completed downloading 2014-03-14 05:23:47 +02:00
Yury Delendik
7963f22545 Merge pull request #4259 from brendandahl/built-in-cmaps-squash
Adds built in CMaps and unifies the glyph mapping.
2014-03-13 10:27:48 -05:00
Jonas Jenwald
9e0ed5ca7e Fix coding style in web/viewer.js 2014-03-09 12:20:32 +01:00
Jonas Jenwald
6fd0b063e9 Fix scrolling using Shift+Spacebar in Firefox 2014-03-06 15:26:23 +01:00
Brendan Dahl
ce9e9e6ff7 Remove embeddedFontsUsed from API. 2014-02-27 14:06:03 -08:00