Commit Graph

582 Commits

Author SHA1 Message Date
Rob Wu
84ae29c21d Improve suggested filename on download
For all of the following URLs, "file.pdf" will be suggested:
http://.../file.pdf
http://.../download.aspx?file=file.pdf&whatever
http://.../get.pdf?name=file.pdf&whatever
http://.../single-page-app#view=file.pdf
http://.../download.aspx?file=%2Fpath%2Fto%2Ffile.pdf&whatever

Fixes #3161
2013-07-10 21:50:56 +02:00
Rob Wu
69a64d45bc Put URL = URL || webkitURL in compatibility.js
Declares the URL variable globally. If the feature is not
supported, the variable will still be declared, but have the
"undefined" value.

Supported by:

- Firefox 4
  Firefox 21 in Web worker

- Chrome 8  (prefixed as webkitURL), 23+ unprefixed
  Chrome 10 (prefixed as webkitURL) in Web Worker, 23+ unprefixed

- Opera 15
  Opera 15 in Web Worker

- Internet Explorer 10
  Internet Explorer 11 in Web Worker

- Safari 6 (prefixed as webkitURL)
  Safari 6 (prefixed as webkitURL) in Web Worker
2013-07-09 22:54:12 +02:00
Rob Wu
4ffc408512 Download PDF from cache for non-Firefox add-on
This feature relies on URL.createObjectURL, which is supported by
- Firefox 4
- Chrome 8
- Opera 15
- Internet Explorer 10

If the feature is missing, it falls back to downloading from the server.

The environment-specific code are put in ifdef's. Two methods are
defined:
- noData
  This function is used as a fallback in case of failure, it triggers
  a download directly from the server.
- triggerSaveAs(String url, optional String blob)
  This function attempts to show a Save As dialog for a given URL.
  It attempts to use the a.download attribute, if available, and
  falls back to window.open(<url>, '_parent') if unavailable.

See also http://caniuse.com/download
2013-07-09 22:54:12 +02:00
Rob Wu
cc04cf5d1f Configurable IMAGE_DIR for annotations
The Chrome extension activates PDF.js by inserting the script tags
in a document whose URL and location origin is identical to the PDF
file.
Because of this, the path './images/' was resolved relatively to the
location of the PDF file instead of the extension.

To fix this, the IMAGE_DIR constant is moved outside the local scope,
to allow extensions/chrome/insertviewer.js to override the value.

Originally, the IMAGE_DIR variable was a global variable, but commit
f8f4b3f45d moved the global variable
to the local scope, causing the extension to malfunction.

Impact: low, the only consequence is that some rarely used images
were not visible.

Trivial test:
At the center of page 2, the annotation icon
(images/annotation-comment.svg) should be visible:
http://linorg.usp.br/CTAN/macros/latex/contrib/pdfcomment/doc/pdfcomment.pdf
2013-07-09 16:24:25 +02:00
Jonas
94be9c07f1 Enable changing page using Shift+Spacebar in presentation mode 2013-06-26 22:46:34 +02:00
Jonas
5c93ec3a2c Check if the browser supports manipulation of the history 2013-06-24 20:46:13 +02:00
Jonas
6867083c07 Fix typo causing destinations using '/FitR' to fail 2013-06-24 00:39:28 +02:00
Vivin Paliath
83b6eaed16 pr #3356
squashing commits.
2013-06-18 09:05:55 -07:00
Yury Delendik
167ac98f9c Fixes presentation mode page 2013-06-12 16:18:21 -05:00
Brendan Dahl
2fa15a0d03 Merge pull request #3338 from Snuffleupagus/history-wrong-pageNumber-fix
(Yet another) browsing history bug
2013-06-10 14:16:16 -07:00
Brendan Dahl
ae1f973204 Use A+ spec compatible promises. 2013-06-05 12:28:31 -07:00
Yury Delendik
5d97434736 Properly disables presentation mode 2013-06-05 11:01:09 -05:00
Jonas
5cb3df7bde (Yet another) browsing history bug 2013-06-05 16:02:29 +02:00
Jonas
ab9bc2bc34 Fix issue with resizing the zoom box width - follow-up of 2816 2013-06-02 14:31:28 +02:00
Yury Delendik
f700e61e9e Merge pull request #3308 from brendandahl/hide-overflow
Hide canvas overflow for high dpi screens.
2013-06-01 17:45:50 -07:00
Brendan Dahl
4a7bd37162 Hide canvas overflow for high dpi screens. 2013-05-30 08:17:16 -07:00
Jonas
a4343436c7 Fix remaining issues in the browsing history 2013-05-28 18:43:06 +02:00
Brendan Dahl
3641c22750 Merge pull request #3278 from Snuffleupagus/history-regression
Fix regressions caused by the recent implementation of browsing history
2013-05-22 10:49:59 -07:00
Brendan Dahl
efde079417 Merge pull request #3195 from yurydelendik/no-filltext
Drawing without fillText; refactoring ADD_TO_PATH
2013-05-21 16:53:42 -07:00
Jonas
d3c9a9d856 Fix regressions caused by the recent implementation of browsing history - address comments v3 2013-05-21 11:35:33 +02:00
Jonas
766b92c27e PDF browsing history - v6.50 2013-05-16 00:31:17 +02:00
Yury Delendik
0e133f0090 Drawing without fillText; refactoring ADD_TO_PATH 2013-05-15 15:57:27 -05:00
Yury Delendik
61a7738a5d Fixes password for range request loading 2013-05-09 19:18:31 -05:00
Mack Duan
f8f4b3f45d Refactor code for annotations 2013-05-07 14:22:13 -04:00
Brendan Dahl
e5b5c94925 Merge pull request #3060 from saebekassebil/fixpassword
Ask for password on failed decryption
2013-05-07 09:27:38 -07:00
Jakob Miland
297c305150 Ask for password on failed decryption 2013-05-07 18:24:59 +02:00
Yury Delendik
5db963abf4 Merge pull request #3193 from Snuffleupagus/issue3076
Fixes issue 3076
2013-05-07 05:46:46 -07:00
Jonas
40718bdb7b Fixes bug 863591 2013-05-06 17:39:22 +02:00
Yury Delendik
a081c2d0f1 Merge pull request #3124 from mduan/issue3118-1
Update loading bar during onprogress of range requests
2013-05-03 16:51:32 -07:00
Jonas
32f54c3272 Fixes issue 3076 2013-05-03 17:50:18 +02:00
Kalervo Kujala
5e08f8039d Replace fullscreen with presentationMode 2013-05-01 09:22:17 +03:00
Jonas
93b8e1fc01 Fix disabling of zoom buttons and add camel case button names 2013-04-30 21:14:18 +02:00
Jonas
adf61ea5b0 Make spacebar work on document load - fixes bug 864619 2013-04-30 16:44:51 +02:00
Mack Duan
91f9948df4 Only update progress bar if it increases 2013-04-23 10:00:31 -07:00
Yury Delendik
9c9ed2f2a1 Merge pull request #3128 from mete0r/master
Use decodeURIComponent instead of unescape in parseQueryString() in viewer.js
2013-04-23 06:23:28 -07:00
Jonas
77c1235b13 Workaround for issue 3068 - v3 2013-04-23 02:19:15 +02:00
Mack Duan
c5084d9e8a Update loading bar during onprogress of range requests 2013-04-22 08:46:58 -07:00
mete0r
66cb12822d Fix parseQueryString -- use decodeURIComponent instead of unescape 2013-04-20 21:32:15 +09:00
Mack Duan
6b2c6fc223 Changes to regression tests for progressive loading 2013-04-18 00:16:36 -07:00
Mack Duan
ef423ef30c Implement progressive loading of PDFs 2013-04-12 16:13:22 -07:00
Jakob Miland
6b4f72a2c3 Disable outline button when unavailable 2013-04-11 18:27:35 +02:00
Yury Delendik
238b94aff1 Adds check for textDivs presence; removes textLayerQueue 2013-04-04 09:01:27 -05:00
Rob Wu
88767e1861 Improve download button and behaviour
Fix download button for top frames and sub frames

When PDF.js is the top frame, and the PDF URL is identical to
the top URL, download would fail. Fixed by adding a ? or & in these
cases.

When PDF.js is embedded in a frame from a different origin, download
would fail because window.open(url, '_parent') is ignored.
Fixed by using a.click() when available.
a.click() works in Chrome 25, Firefox 19, Opera 12.00 and IE 8.
Safari 5.1 does not support a.click()

Use a.download if available + documentation
2013-04-04 13:40:28 +02:00
Rob Wu
b46c375126 Compatibility with XHTML documents
Previously, when the XHTML doctype + header is active, checks
would fail because a <div>'s tag name is "div" instead of "DIV".

document.activeElement does not exist in Chrome for XHTML documents

== -> ===
2013-04-04 12:35:50 +02:00
Jonas
ee83df1338 Detect and add fallback if document colors are disabled in Firefox - address comment 2013-04-03 18:49:03 +02:00
Inkbug
b0376a1aa6 Fixing Issue 2998 - Replacing !!window.frameElement with window.parent !== window 2013-04-02 21:30:03 +03:00
Yury Delendik
71a31b01f2 Merge pull request #2919 from Snuffleupagus/external-links
Tweak external links in fullscreen mode - follow up on #2712
2013-04-02 09:59:02 -07:00
Yury Delendik
74b0a51cee Merge pull request #3009 from brendandahl/backdrop
Use white backdrop when possible.
2013-04-01 08:15:30 -07:00
Brendan Dahl
af1833c4d8 Merge pull request #2991 from mduan/text-layer-retina
Fix issue w/ textlayer on retina causing it to be visible only in top quadrant
2013-03-29 17:12:53 -07:00
Brendan Dahl
ec311f303b Use white backdrop when possible. 2013-03-29 13:26:25 -07:00