Jonas Jenwald
3f061cef86
Add a |textlayerrendered| event
2015-01-06 17:57:32 +01:00
Yury Delendik
3a61edfcae
Refactors getDocument and adds PDFDataRangeTransport.
2015-01-05 21:45:01 -06:00
Jonas Jenwald
5aad040735
Fix handling of "Fit" zoom values in setHash (issue 5581)
2014-12-27 12:54:29 +01:00
Yury Delendik
22c62685b0
Removes Stats dependency from PDFPageView.
2014-12-19 13:07:28 -06:00
Yury Delendik
fe4ac86781
Removes PDFPageSource
2014-12-19 09:55:11 -06:00
Yury Delendik
f68678086d
Simple restructuring PageView into PDFPageView
2014-12-17 15:21:54 -06:00
Jonas Jenwald
6078901962
Prevent a "TypeError: pdfViewer is null" when the viewer loads (PR 5413 followup)
...
Currently if you manage to e.g. open the console (with <kbd>Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>K</kbd>) before the viewer is initialized, the following will be printed in the console: `TypeError: pdfViewer is null`.
This doesn't cause any actual errors, but nevertheless it seems like something we should avoid.
Followup to PR 5413.
2014-11-15 12:17:10 +01:00
Yury Delendik
e294c8883a
Merge pull request #5203 from Snuffleupagus/disableAutoFetch-loadingBar
...
Fix loadingBar hiding when disableAutoFetch is enabled (issue 3590)
2014-11-11 09:05:16 -06:00
Jonas Jenwald
2505c8613b
Allow localization of the placement of percent signs in the zoom box
2014-10-21 21:41:06 +02:00
Jonas Jenwald
a1f4bff4f3
Disable zooming in Presentation Mode
2014-10-15 22:25:31 +02:00
Tim van der Meij
b215af30d3
Require destinations when they are needed and do not fetch all of them in advance
2014-10-06 22:26:18 +02:00
Jonas Jenwald
ecbb39f983
Fix loadingBar hiding when disableAutoFetch is enabled (issue 3590)
2014-10-05 23:16:36 +02:00
Jonas Jenwald
cfeb4c1019
Small refactoring of the loadingBar hiding code
2014-10-05 23:15:10 +02:00
Jonas Jenwald
a429e88c3b
Fix inconsistencies in the preference names used by PDFViewerApplication
...
Since `preferenceSidebarViewOnLoad` is an enumeration value, it seems better to initialize it with the default one instead of a boolean.
`preferencesPdfBugEnabled` uses a superfluous "s", which is a typo I made when I introduced it.
2014-10-01 12:30:11 +02:00
Jonas Jenwald
b9ef80e167
Add a page loading indicator to the page number input
2014-10-01 00:13:44 +02:00
Yury Delendik
5e0b2d383f
Fixes enabling pdfBug
2014-09-30 15:19:39 -05:00
Yury Delendik
374b94381d
Moves scrollPageIntoView to the PDFViewer.
2014-09-30 07:13:46 -05:00
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
Samuel Chantaraud
dcb174ed58
Made viewer's webViewerLoad callable from outside viewer.js
...
To allow manual triggering when DOMContentLoaded can not be relied upon.
2014-02-27 13:45:02 -04:00
Rob Wu
3f96d0dabb
Ctrl/cmd + S = save PDF instead of viewer.html
2014-02-27 16:21:47 +01:00
Samuel Chantaraud
cbc9ad3cb6
Correct formatting of locale to make it compatible with l10n (safari issue)
2014-02-26 16:09:58 -04:00
Brendan Dahl
6cce1e44dd
Merge pull request #4292 from Snuffleupagus/issue-4232
...
Fix wrong page being displayed when entering/exiting Presentation mode with zoom set to 'page-fit'
2014-02-26 11:43:42 -08:00
Jonas Jenwald
4ee1fb7956
Fix spacebar scrolling in Firefox (4224 follow-up)
2014-02-26 20:17:58 +01:00
Brendan Dahl
0af0c6c99d
Merge pull request #4229 from Rob--W/crx-stream-progress
...
Get progress bar for PDF streams in Chromium by passing the expected content length to the page
2014-02-26 11:12:34 -08:00
Brendan Dahl
890752680b
Merge pull request #4224 from Rob--W/shortcut-responsiveness
...
Focus container when arrow/navigation keys are pressed
2014-02-26 10:52:17 -08:00
Jonas Jenwald
d6ca563f46
Fix wrong page being displayed when entering/exiting Presentation mode with zoom set to 'page-fit'
2014-02-11 22:51:14 +01:00
Yury Delendik
4563f6cd58
Merge pull request #4191 from Rob--W/crx-chrome-os
...
Register PDF Viewer as PDF handler in Chrome OS's file browser
2014-02-11 12:51:36 -06:00
Brendan Dahl
b5b94a4af3
Use built in CMaps and unify the glyph mapping.
2014-02-11 10:27:09 -08:00
Brendan Dahl
e477958b74
Remove inline script warnings.
2014-02-03 14:14:54 -08:00
Rob Wu
ce9400dc8b
Handle navigation keys when viewer is not focused
...
Restrict the scrollbar hack to the keycode for "spacebar",
since the bug only occurs in Firefox with spacebar.
Keyboard navigation is only activated for the spacebar if
the currently focused element is not a button.
2014-01-31 14:59:49 +01:00
Rob Wu
eaf7daf7db
[CRX] Pass expected length of stream to viewer
...
To get a progress bar for POST/FTP requests in Chromium.
2014-01-30 23:03:15 +01:00
Rob Wu
64a4a27455
Remove obsolete code from shortcut handler
...
These lines were introduced in 612f59aa10
when the only shortcuts were +/-/=/0 (to change zoom level).
Back then, when the input fields were focused, using these keys would
add these unwanted characters to the input field and change the zoom
level of the viewer. Having both operations at the same time was an
undesired event, so a check was inserted, to ignore shortcuts when
the toolbar is focused.
The #toolbar element doesn't exist any more, so these lines are obsolete.
2014-01-30 15:26:51 +01:00
Brendan Dahl
c2e31cd1ef
Merge pull request #4205 from yurydelendik/blob-open-file
...
Using blob URL for open file
2014-01-28 14:15:35 -08:00
Brendan Dahl
0e000392ae
Merge pull request #4179 from yurydelendik/dataLoaded
...
Fixes PDFDocumentProxy.getDataLoaded API name (and refactoring)
2014-01-28 13:56:01 -08:00
Yury Delendik
e5e9c6e243
Fixes PDFDocumentProxy.getDownloadInfo API name (and refactoring)
2014-01-28 15:13:47 -06:00
Tim van der Meij
b4b145507c
Implements mouse wheel behaviour for non-Firefox browsers
2014-01-28 20:52:25 +01:00
Yury Delendik
18515b8668
Using blob URL for open file
2014-01-27 13:11:02 -06:00
Rob Wu
7bbff32a4d
[security] Verify message source in Firefox add-on
...
And put initPassiveLoading within a preprocessor block because
it is only used by Firefox.
2014-01-26 12:55:48 +01:00
Rob Wu
60fb28caf0
Register as File browser handler in Chrome OS
2014-01-25 22:37:19 +01:00
Rob Wu
b0e18a0703
[CRX] Remove redundant location.origin check
...
The PDF Viewer will always be rendered directly from the extension,
so checking "origin == chrome-extension:/.." is not needed any more.
( since edd4bae903
)
2014-01-25 21:44:58 +01:00
Rob Wu
aeaf11ca43
[CRX] Fall back to sender.tab.url if !tab.url
...
sender.url is relatively new (Chromium 29)
( https://chromiumcodereview.appspot.com/14301016 )
2014-01-25 20:15:43 +01:00
Yury Delendik
ba1eb4d1d1
Merge pull request #4126 from Rob--W/crx-using-streams-api
...
Chromium extension using streamsPrivate API!
2014-01-22 05:12:07 -08:00
Tim van der Meij
5f7ded4ff6
Document properties
2014-01-22 00:07:07 +01:00
Brendan Dahl
e13500e46b
Merge pull request #4140 from timvandermeij/close-secondary-toolbar
...
Close the secondary toolbar when an action is performed once
2014-01-21 11:47:11 -08:00
Sriram
151cd6dee8
Terminate worker of previous doc
2014-01-21 07:13:27 +05:30
Tim van der Meij
e14d917161
Close the secondary toolbar when an action is only performed once
2014-01-17 12:16:43 +01:00
Jonas Jenwald
181e06f30a
Fix regression that disabled the "Open With Different Viewer" button on the fallback bar
2014-01-16 13:49:39 +01:00
Rob Wu
cdadb0db4d
Proof of concept using chrome.streamsPrivate API
...
This method captures all application/pdf streams, loads the viewer
and passes the stream to the PDF.js viewer.
This commit shows a proof of concept using the chrome.streamsPrivate API.
Advantages of new method:
- Access to the response body of the original request, thus fewer
network requests.
- PDFs from non-GET requests (e.g. POST) are now supported.
- FTP files are also supported.
Possible improvements:
- Use declared content scripts instead of dynamic chrome.tabs.executeScript.
This allows the extension to render the viewer in frames when the
extension is disallowed to run executeScript for the top URL.
- Use chrome.declarativeWebRequest instead of webRequest, and replace
background page with event page (don't forget to profile the
difference & will the background/event page still work as intended?).
2014-01-15 23:04:15 +01:00
Tim van der Meij
3e8795f8b8
Prevent the open file button from appearing in the B2G viewer/preview
2014-01-14 00:09:54 +01:00
Tim van der Meij
e05bda4045
De-inline CSS for the 'open file' button
2014-01-13 22:04:36 +01:00
Jonas Jenwald
05c331c295
Maintain the current position in the document when zooming
2014-01-11 13:01:25 +01:00
Brendan Dahl
ebdd710da3
Merge pull request #4034 from Snuffleupagus/setScale-regression
...
Fix setScale regression that affects exiting Presentation Mode on narrow window widths
2014-01-08 10:04:35 -08:00
Brendan Dahl
5d080a03bb
Show a different warning for PDF’s with forms.
2014-01-07 16:03:45 -08:00
Yury Delendik
5bf3e44e30
Introduces LegacyPromise; polyfills DOM Promise
2014-01-03 18:17:05 -06:00
Brendan Dahl
2228343f77
Only trigger warning bar on certain unsupported features.
2014-01-03 09:34:13 -08:00
Yury Delendik
c389451a5b
Merge pull request #4045 from brendandahl/verbosity
...
Add verbosity as an api setting.
2014-01-02 12:25:00 -08:00
Brendan Dahl
d005353115
Merge pull request #4055 from Snuffleupagus/fix-thumbnail-rotation-regression
...
Fix thumbnail rotation regression
2014-01-02 10:39:13 -08:00
Jonas Jenwald
3d523000b9
Fix thumbnail rotation regression
2013-12-25 23:10:17 +01:00
Jonas Jenwald
4bd9767112
Rename 'Settings' to 'ViewHistory'
2013-12-22 00:07:42 +01:00
Jonas Jenwald
31ec36d64f
Fix typo in 'isViewFinished' function name
2013-12-20 15:32:16 +01:00
Brendan Dahl
53549411b4
Add verbosity as an api setting.
2013-12-18 13:39:03 -08:00
Jonas Jenwald
e4f799a09c
Small cleanup in 'set page'
2013-12-18 03:08:50 +01:00
Rob Wu
8526d3c600
[CRX] Add a pageAction to omnibox showing PDF URL
...
In Chromium extensions, the viewer's URL looks like this:
chrome-extension://oemmndcbldboiebfnladdacbdfmadadm/http://example.com/file.pdf
Furthermore, the PDF Viewer itself can also add something to the reference fragment:
chrome-extension://oemmndcbldboiebfnladdacbdfmadadm/http://example.com/file.pdf#page=2
Consequently, it is difficult to copy a clean URL (e.g. for sharing over mail)
without having to tidy-up the URL manually.
This commit solves this issue by adding a button to the omnibox,
which shows the clean PDF URL on click.
2013-12-16 19:00:32 +01:00
Jonas Jenwald
694b3d55b1
Fix setScale regression that affects exiting Presentation Mode on narrow window widths
2013-12-14 23:09:36 +01:00
Rob Wu
3914768085
Implement hand tool
...
The logic for the hand tool is implemented in a separate project,
maintained at https://github.com/Rob--W/grab-to-pan.js
Integration notes
- Added toggle as an entry under the Secondary toolbar
- Added shortcut "h" to toggle hand tool (to-do: document this in wiki
after merge). This shortcut is also used in Adobe's Acrobat Reader.
To-do: localizations for:
hand_tool_enable.title=
hand_tool_enable_label=
hand_tool_disable.title=
hand_tool_disable_label=
To-do (wish): persistence of hand tool preference, preferably a global setting.
secondaryToolbarButton-handTool.png created by Stephen Horlander <shorlander@mozilla.com>
2013-12-03 15:51:41 +01:00
Brendan Dahl
d0312aa6ba
Wait for one page to render before fetching all pages.
2013-11-26 13:55:50 -08:00
Brendan Dahl
c9f2390567
Fix printing regression from #3848 .
2013-11-25 16:13:40 -08:00
Jonas Jenwald
7542d50167
Fix issues with /FitR destinations
2013-11-23 18:27:03 +01:00
Yury Delendik
78b61fedfc
Merge branch 'maxsong1002/shortcutkeytonavigate'
2013-11-22 08:22:12 -06:00
maxsong1002
807e4fef34
Add shortcut for goto page
2013-11-22 08:20:05 -06:00
Yury Delendik
124eb30e8d
Merge pull request #3936 from brendandahl/initial-data
...
Leave initial request open until the viewer is ready to switch to range requests.
2013-11-21 06:22:24 -08:00
Yury Delendik
bd7985a83b
Fixes cleaning up of the rendered pages
2013-11-19 17:08:36 -06:00
Jonas Jenwald
60610cd625
Implement default preferences
2013-11-18 23:51:06 +01:00
Brendan Dahl
3132c9e7e9
Merge pull request #3911 from yurydelendik/mem-redux2
...
Cleaning up fonts when viewer is idle for some time
2013-11-18 13:01:23 -08:00
Brendan Dahl
0385131a9a
Leave initial request open until the viewer is ready to switch to range requests.
2013-11-18 11:17:26 -08:00
Yury Delendik
e712c4136a
Cleaning up fonts when viewer is idle for some time
2013-11-18 13:01:54 -06:00
Rob Wu
f013d44999
Ctrl + F opens find bar instead of toggling it
2013-11-14 23:56:11 +01:00
Brendan Dahl
c2d65fc4ab
Don't traverse all pages to get a single page.
2013-11-13 15:27:46 -08:00
Yury Delendik
a6e7f2226a
Merge pull request #3864 from Snuffleupagus/independent-zoom-parameter
...
Make 'zoom' independent from 'page' in the hash parameters
2013-11-12 11:07:15 -08:00
Yury Delendik
d4cdf5ce41
Increase default auto scale to 125%
2013-11-11 16:51:50 -06:00
Jonas Jenwald
1c259ce806
Fix type mismatch causing wrong scale value in the viewBookmark button
2013-11-02 21:54:54 +01:00
Jonas Jenwald
e41d98f9f0
Make 'zoom' independent from 'page' in the hash parameters
2013-10-30 20:39:44 +01:00
Jonas Jenwald
4ee2c96503
Round the scale value displayed by the viewBookmark button to two decimal places
2013-10-28 12:34:35 +01:00
Jonas Jenwald
6102b6197f
Fix scroll keys in Firefox
2013-10-21 23:39:17 +02:00
Jonas Jenwald
f35e777d81
Apply the current zoom level value to each page in Presentation Mode
2013-10-19 18:33:36 +02:00
Jonas Jenwald
bee1b734c2
A few small tweaks of the SecondaryToolbar code
2013-10-18 23:03:28 +02:00
Jonas Jenwald
8405d16379
Fix bot breakage caused by Chromium extension PR
2013-10-17 22:55:25 +02:00
Rob Wu
83b780af81
[CRX] Show nicely formatted URL in omnibox
...
Before commit:
chrome-extension://EXTENSIONID/content/web/viewer.html?file=http%3A%2F%2Fexample.com%2Ffile.pdf
After commit:
chrome-extension://EXTENSIONID/http://example/file.pdf
Technical details:
- The extension's background page uses the webRequest API to intercept
requests for <extension host>/<real path to pdf>, and redirect it to
the viewer's URL.
- viewer.js uses history.replaceState to rewrite the URL, so that it's
easier for users to recognize and copy-paste URLs.
- The fake paths /http:, /https:, /file:, etc. have been added to the
web_accessible_resources section of the manifest file, in order to
avoid seeing chrome-extension://invalid/ instead of the actual URL
when using history back/forward to navigate from/to the PDF viewer.
- Since the relative path resolving doesn't work because relative URLs
are inaccurate, a <base> tag has been added. This method has already
been proven to work in the Firefox add-on.
Notes:
- This commit has been cherry-picked from crx-using-streams-api.
- Need to merge https://github.com/mozilla/pdf.js/pull/3582 to deal with
a bug in Chrome <=30
- In Chrome, getting the contents of a FTP file is not possible, so
there's no support for FTP files, even though the extension router
recognizes the ftp: scheme.
2013-10-16 23:14:46 +02:00
Jonas Jenwald
1f4d85db37
Inline setScale in parseScale
2013-10-16 00:26:42 +02:00
Tim van der Meij
b1b661a274
Refactoring thumbnail scroll code to fix jumps
2013-10-09 20:40:21 +02:00
Brendan Dahl
6f61a9c83e
Merge pull request #3727 from brendandahl/css-zoom2
...
Use css to initially scale on zoom.
2013-10-08 20:34:22 -07:00
Tim van der Meij
64757dd481
Merge pull request #3774 from Snuffleupagus/contextMenu-PresentationMode
...
Enabling clicking to close the context menu in Presentation Mode, without going to the next page
2013-10-08 11:31:02 -07:00
Jonas Jenwald
dfb8e62079
Enabling clicking to close the context menu in Presentation Mode, without going to the next page
2013-10-08 20:11:04 +02:00
Rob Wu
1731c0fb42
Add mozPrintCallback shim
...
This shim does the following:
1. Intercept window.print()
2. For a window.print() call (if allowed, ie. no previous print job):
1. Dispatch the beforeprint event.
2. Render a printg progress dialog.
3. For each canvas, call mozPrintCallback if existent (one at a time, async).
4. During each mozPrintCallback callback, update the progress dialog.
5. When all <canvas>es have been rendered, invoke the real window.print().
6. Dispatch the afterprint event.
The shim is not included in Firefox through the preprocessor.
Keyboard shortcuts (Ctrl/Cmd + P) are intercepted and default behavior
(i.e. printing) is prevented, and the steps for window.print() are run.
window.attachEvent is used, in order to cancel printing in IE10 and
earlier (courtesy of Stack Overflow - http://stackoverflow.com/a/15302847 ).
Unfortunately, this doesn't work in IE11 - if Ctrl + P is used, the
print dialog will be shown twice: Once because of Ctrl + P, and again
when all pages have finished rendering.
This logic of this polyfill is not specific to PDF.js, so it can also
be used in other projects.
There's one additional modification in PDF.js's viewer.js: The printed
<canvas> element is wrapped in a <div>. This is needed, because Chrome
would otherwise print one canvas on two pages.
2013-10-08 19:46:59 +02:00
Jonas Jenwald
d795c8ec14
Refactor Presentation Mode code
2013-10-06 20:10:26 +02:00
Tim van der Meij
a68375c48e
Merge pull request #3739 from Snuffleupagus/bug-921162
...
Add the viewBookmark button to the Secondary Toolbar
2013-10-04 13:16:38 -07:00
Brendan Dahl
df249da923
Use css to initially scale on zoom.
2013-10-02 09:05:46 -07:00
Jonas Jenwald
d6ab0c61e8
Move Settings from viewer.js to its own file
2013-10-02 15:55:31 +02:00
Jonas Jenwald
bfc66626a0
Move Presentation Mode related code from viewer.js to its own file
2013-10-01 23:11:46 +02:00
Jonas Jenwald
b148c9cb51
Add the viewBookmark button to the secondary toolbar
2013-09-27 11:51:32 +02:00
Tim van der Meij
63233fa8c2
Improved password prompt
2013-09-24 17:46:54 +02:00
Jonas Jenwald
cebf3c60e2
Move PageView from viewer.js to its own file
2013-09-20 09:25:41 +02:00
Yury Delendik
a8320b2e18
Merge pull request #3695 from SSk123/transform
...
Adding transformation to the extract code
2013-09-19 18:45:59 -07:00
Srishti
3808d02a53
implementing transform matrix to getTextContent
2013-09-20 06:37:08 +05:30
Brendan Dahl
c270d7e056
Merge pull request #3641 from Snuffleupagus/properly-disable-presentationMode-when-embedded
...
Properly disable presentation mode when the viewer is embedded
2013-09-17 13:49:11 -07:00
Thor Larholm
0f07d8ad55
Squashed: Added basic support for presentationMode in IE11
2013-09-10 21:40:14 +02:00
Yury Delendik
69eff38d09
Merge pull request #3660 from maxidirienzo/master
...
viewer.js: Do not process keyboard shortcuts when focused element is a t...
2013-09-09 08:17:50 -07:00
maxidirienzo
ee5d8ca56d
viewer.js: Do not process keyboard shortcuts when focused element is a textarea
...
If focused element is a textarea, viewer should not process keyboard shortcuts (as it does with input and select elements) because while writing on a textarea, if you press k,p,l, or n, the viewer scrolls next/prev page and the letter is not added to the textarea (eg. in my case I had a viewer displaying a product specs in PDF and a "request a quote" form at it's right, the form had a textarea field and users complains that they couldn't write in it, after checking it, I've realized it was this particular issue and fixd it with the change I'm commiting.
2013-09-09 11:50:49 -03:00
Jonas
b118ade9ae
Fix searching in presentation mode in Firefox
2013-09-06 09:08:43 +02:00
Brendan Dahl
7cf8b8d70c
Merge pull request #3607 from Snuffleupagus/issue-3604
...
Prevent searching during load from breaking the find functionality
2013-09-05 08:13:45 -07:00
Jonas
433397f877
Simplify getVisiblePages() in presentation mode
2013-09-05 00:42:36 +02:00
Jonas
54dfe05e30
Prevent searching during load from breaking the find functionality
2013-09-05 00:25:19 +02:00
Jonas
3cce7be9ce
Properly disable presentation mode when the viewer is embedded
2013-09-05 00:23:16 +02:00
Tim van der Meij
3c0ac37292
Secondary toolbar
2013-09-04 23:48:31 +02:00
Brendan Dahl
d26fcd5468
Merge pull request #3618 from Snuffleupagus/followup-3557
...
Prevent named actions from displaying a 'resource://' URL in Firefox
2013-09-04 11:16:15 -07:00
Brendan Dahl
b368a99f20
Merge pull request #3421 from Snuffleupagus/avoid-multiple-rendering-on-wheel-zoom
...
Avoid triggering rendering multiple times when zooming using the mouse wheel
2013-09-04 10:25:31 -07:00
Nils Maier
16a1c38c1f
Download: Use the typed array view instead of the buffer
...
The ArrayBuffer holding the data might be over-sized in case the
data length was not known during the transfer, e.g. when using a
Content-Encoding other than `identity` or when using a
Transfer-Encoding.
Only the view into the buffer has the correct length then, hence
always use the view directly when creating the blob URI for the
download, instead of the over-sized underlying buffer.
Closes GH-3627
Closes GH-3634
2013-09-01 16:45:26 +02:00
Jonas
8630e29054
Avoid triggering rendering multiple times when zooming using the mouse wheel
2013-08-26 21:00:35 +02:00
Brendan Dahl
427dd3948b
Merge pull request #3569 from yurydelendik/bug900193
...
Fixes canvas alignment for small scale...
2013-08-26 10:52:47 -07:00
Brendan Dahl
e2ca1d0e5e
Merge pull request #3613 from Snuffleupagus/remove-dead-find-code
...
Remove old dead find related code from viewer.js
2013-08-26 10:46:58 -07:00
Brendan Dahl
e9a3ac175c
Merge pull request #3612 from Snuffleupagus/fix-find-when-loading-new-file
...
Prevent searching from breaking when opening a new file in the web viewer
2013-08-26 10:44:54 -07:00
Brendan Dahl
c17a7c9d04
Merge pull request #3505 from Snuffleupagus/move-ThumbnailView
...
Move ThumbnailView from viewer.js to its own file
2013-08-26 10:30:24 -07:00
Jonas
e69fc0072a
Prevent named actions from displaying a 'resource://' URL in Firefox
2013-08-24 20:27:58 +02:00
Jonas
8892beeb08
Remove old dead find related code from viewer.js
2013-08-23 13:08:51 +02:00
Jonas
baba41f702
Prevent searching from breaking when opening a new file in the web viewer
2013-08-23 11:08:03 +02:00
Yury Delendik
bde863a8ac
Merge pull request #3573 from Rob--W/crx-view-local-files
...
[CRX] Fixes to view local files again
2013-08-21 07:37:32 -07:00
Yury Delendik
ba23a9e8f9
Adds initial telemetry probes
2013-08-16 09:53:05 -05:00
Rob Wu
a4dd4b1789
[CRX] Fixes to view local files again
...
pdfHandler-local.js references the isPdfDownloadable function from
pdfHandler.js, but the function didn't expect that the responseHeaders
property was absent. Added a check to prevent a runtime error when a
local file is displayed in a frame, and show local PDF files again.
Local files are rendered on the chrome-extension:-protocol. The previous
method of getting the PDF URL was incorrect, this has been fixed as well.
2013-08-14 23:50:51 +02:00
Yury Delendik
86077810b0
Fixes canvas alignment for small scale and scale adjustment after Cmd+0
2013-08-13 18:45:06 -05:00
Brendan Dahl
5ecce4996b
Split files into worker and main thread pieces.
2013-08-12 10:48:06 -07:00
Tim van der Meij
75035a2970
Named actions implementation
2013-08-08 21:59:59 +02:00
Jonas
d99879bfbf
Move ThumbnailView from viewer.js to its own file
2013-08-06 22:19:03 +02:00
Brendan Dahl
820145da05
Merge pull request #3523 from yurydelendik/csp
...
Bug 889320 - [CSP] removes inlined styles and scripts, also HTTP headers
2013-08-06 13:10:33 -07:00
Brendan Dahl
d85e38d629
Fix intermittent blank page on fast zoom.
2013-08-05 16:34:57 -07:00
Yury Delendik
bea2e41e45
Backout of #3513 (except formatting)
2013-08-05 07:52:24 -05:00
Yury Delendik
7435b267f9
Merge pull request #3535 from Snuffleupagus/issue-3534
...
Fix issue with initial scale when opening a new file and another one is already loaded
2013-08-04 17:29:36 -07:00
Brendan Dahl
65fd2c77d0
Merge pull request #3513 from Snuffleupagus/keep-scroll-position-on-zoom-v2
...
Keep current scroll position when zooming the document
2013-08-02 15:22:52 -07:00
Jonas
8170d67a6b
Fix issue with initial scale when opening a new file and another one is already loaded
2013-08-02 16:09:33 +02:00
Brendan Dahl
bf72bc94e2
Incrementally render by sending the operator list by chunks as they're ready.
2013-07-31 11:17:36 -07:00
Jonas
edf3163fa6
Keep current scroll position when zooming the document
2013-07-31 19:43:03 +02:00
Yury Delendik
99c9079f54
[CSP] removes inlined styles and scripts
2013-07-30 21:00:37 -05:00
Brendan Dahl
81308d153d
Merge pull request #3516 from Rob--W/crx-dont-parse-querystring
...
[CRX] Get pdf name from URL instead of query string
2013-07-29 10:22:14 -07:00
Rob Wu
b2b2e85ba2
[CRX] Get pdf name from URL instead of querystring
2013-07-27 12:31:51 +02:00
Jonas
d99b7753d6
Check if viewer is embedded only once and cache the result
2013-07-20 16:33:40 +02:00
Jonas
8708f8beb5
Fixes regression that cause scrolling using spacebar to break in Firefox
2013-07-19 22:09:37 +02:00
Yury Delendik
c6e698e21f
Merge pull request #3332 from Snuffleupagus/fix-loadingBar
...
Fix the positioning of the progressive loadingBar
2013-07-18 09:39:25 -07:00
Jonas
4890c5d017
Fix the positioning of the progressive loadingBar
2013-07-18 18:28:59 +02:00
Jonas
09e0c9b65d
Move PDFHistory from viewer.js to its own file
2013-07-18 17:18:27 +02:00
Tim van der Meij
343bb7488a
Presentation mode shortcut implementation
2013-07-18 16:28:06 +02:00
Yury Delendik
984b9bf78b
Merge pull request #3486 from Rob--W/csp-unsafe-inline
...
Remove all inline JavaScript from viewer.html to comply with CSP unsafe-inline and correct error textarea's height
2013-07-18 06:08:39 -07:00
Tim van der Meij
22120005b7
Removing code duplication
2013-07-18 13:37:55 +02:00