Commit Graph

5341 Commits

Author SHA1 Message Date
Rob Wu
ec956d97c9 [CRX] Delay render of viewer if needed...
Sometimes, the viewer did not render for PDF files in an iframe,
because document.readyState not reaching "complete".

Deferring window.stop() until the root element is placed in the
document fixes the problem (typically a few ten milliseconds).
2013-07-17 23:25:31 +02:00
Rob Wu
ec5ef58b84 [CRX] Improved navigation detection.
A user reported that the PDF Viewer is not rendered on Dropbox,
(Chrome on Mac OS X). This is apparently caused by the fact that the
PDF file is loaded in an iframe in such a way that the tabs.onUpdated
event is not triggered.

This patch switches to the webNavigation event API, which improves the
reliability of the navigation detection.

Unfortunately Opera 15 does not support the webNavigation API, so the
old (tabs.onUpdated) method is used (feature-detection is used, so
whenever Opera decides to implement this API, it will profit from it).
2013-07-17 19:04:10 +02:00
Brendan Dahl
78d3b600d4 Merge pull request #3430 from Rob--W/crx-download-pdf
Chrome extension: Do not intercept PDF downloads if it's target is a frame
2013-07-16 16:13:30 -07:00
Brendan Dahl
7a1049216c Merge pull request #3440 from peerlibrary/syncing-order
Syncing order of JS files in viewer.html and make.js. See #3414
2013-07-16 16:10:25 -07:00
Brendan Dahl
6b9c272590 Merge pull request #3457 from yurydelendik/remove-prefixes
Removes foreign for Firefox CSS prefixes
2013-07-16 16:08:05 -07:00
Brendan Dahl
a5cc8d1ec3 Merge pull request #3464 from yurydelendik/bug889327
Fixes ASCIIHex decoding
2013-07-16 10:32:35 -07:00
Brendan Dahl
330f6212ba Merge pull request #3341 from Snuffleupagus/navigateTo-fix
Tweak the behaviour of navigateTo during document load
2013-07-15 16:16:46 -07:00
Brendan Dahl
6c6719efeb Merge pull request #3436 from yurydelendik/jpeg-cmyk
Removes browser decoding optimization for JPEG CMYK
2013-07-12 17:54:12 -07:00
Yury Delendik
b617f74be6 Merge pull request #3469 from brendandahl/enable-rr-in-master
Enable range requests in master mode.
2013-07-12 17:11:53 -07:00
Brendan Dahl
e697c598c2 Enable range requests in master mode. 2013-07-12 16:40:19 -07:00
Yury Delendik
dfaf22f564 Merge pull request #3468 from yurydelendik/download-refactor
Restoring PR 3455 functionality
2013-07-12 15:04:26 -07:00
Yury Delendik
81c8730e4b Restoring PR 3455 functionality 2013-07-12 17:00:43 -05:00
Brendan Dahl
4982290170 Merge pull request #3467 from yurydelendik/download-refactor
Refactor download logic
2013-07-12 14:42:24 -07:00
Yury Delendik
28778e6c1b Rejects incorrect url in download manager 2013-07-12 13:38:49 -05:00
Yury Delendik
ef658bf5f1 Refactoring download button logic 2013-07-12 13:14:13 -05:00
Brendan Dahl
077f08fa6d Merge pull request #3456 from brendandahl/cap-image-size
Limit image size to 1024*1024 for b2g.
2013-07-11 11:44:51 -07:00
Yury Delendik
8ee9db45ef Fixes ASCIIHex decoding 2013-07-11 13:33:29 -05:00
Brendan Dahl
5dcc4cd1b4 Merge pull request #3424 from yurydelendik/lookChar
lookChar refactoring
2013-07-11 09:08:59 -07:00
Yury Delendik
a50501c43a Merge pull request #3459 from Rob--W/define-URL
Always declare window.URL even if undefined
2013-07-10 17:37:26 -07:00
Rob Wu
b076cd1d6a Always declare window.URL even if undefined
Otherwise it breaks feature detection,
"ReferenceError: Can't find variabl: URL" in Safari 5.1
2013-07-10 23:34:10 +02:00
Yury Delendik
9ac2584852 Merge pull request #3437 from Rob--W/download-from-cache
Download PDF from cache for non-Firefox add-on
2013-07-10 14:20:20 -07:00
Rob Wu
e583070deb Download PDF from cache for IE10 / IE11
IE9 falls back to downloading from the original URL.
2013-07-10 22:07:23 +02:00
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
Brendan Dahl
bcc085ec52 Limit image size to 1024*1024 for b2g. 2013-07-10 09:52:37 -07:00
Yury Delendik
2ab481a1da Removes foreign for Firefox CSS prefixes 2013-07-09 17:23:20 -05: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
Brendan Dahl
d71948038f Merge pull request #3439 from yurydelendik/smask-preblend
Takes SMask's preblending in account
2013-07-09 13:26:44 -07:00
Brendan Dahl
c17f90e1aa Merge pull request #3406 from Snuffleupagus/remove-old-moz-prefixes
Remove old -moz prefixed rules from viewer.css
2013-07-09 13:13:20 -07:00
Yury Delendik
e67b9a7f17 Merge pull request #3441 from brendandahl/less-cache
Remove caching of stream data and fix object loader for streams.
2013-07-09 13:01:54 -07:00
Yury Delendik
666da95b37 Merge pull request #3450 from brendandahl/fix-mimetype-check
Bug 879161 - Fix pdf.js mimetype check.
2013-07-09 10:01:18 -07:00
Yury Delendik
160403197b Merge pull request #3447 from Rob--W/chrome-arrow-keys-3443
Allow scrolling by keyboard in Chrome/Opera
2013-07-09 07:44:01 -07:00
Yury Delendik
940415b32c Merge pull request #3454 from Rob--W/configurable-images-directory
Configurable IMAGE_DIR for annotations to get svg images to show up in Chromium extension
2013-07-09 07:37:58 -07: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
Brendan Dahl
b0f78609b3 Merge pull request #3386 from yurydelendik/ttf-refactor
Refactoring of TrueType code and implementation of OpenType font repairing
2013-07-08 22:11:31 -07:00
Yury Delendik
19e8f2f059 lookChar refactoring 2013-07-08 21:25:55 -05:00
Yury Delendik
48146745b9 Tests for OpenType fonts 2013-07-08 21:11:07 -05:00
Brendan Dahl
7eae88669a Bug 879161 - Fix pdf.js mimetype check. 2013-07-08 11:09:50 -07:00
Rob Wu
4a2eefe1b6 Allow scrolling by keyboard in Chrome/Opera
Set "tabindex" attribute to allow focus;
Added "outline: none" to prevent focus ring from appearing.

Fixes #3443
2013-07-06 15:37:03 +02:00
Brendan Dahl
09aafa830b Remove caching of stream data and fix object loader for streams. 2013-07-03 14:29:38 -07:00
Mitar
e0a2ee09b5 Syncing order of JS files in viewer.html and make.js. See #3414 2013-07-02 17:03:16 -07:00
Yury Delendik
419bee1314 Takes SMask's preblending in account 2013-07-02 14:27:06 -05:00
Yury Delendik
5e5b66f688 Removes browser decoding optimization for JPEG CMYK 2013-07-02 09:46:14 -05:00
Rob Wu
be012ed1df [CRX] Don't intercept download of PDF attachment
Fixes #3426
2013-07-01 19:17:05 +02:00
Rob Wu
efcf2aed6e [Chrome extension] Added JSDocs to pdfHandler.js
And a small refactor to reduce the LOC in the onHeadersReceived
callback, to improve the readability of the code.
2013-07-01 19:16:45 +02:00
Yury Delendik
81fa4a0d93 Merge pull request #3428 from yurydelendik/enforce-trailing
Enforces trailing spaces
2013-07-01 09:29:31 -07:00
Yury Delendik
3461d02d05 Enforces trailing spaces 2013-07-01 11:25:46 -05:00
Yury Delendik
121c183db1 Fail if other font types are found 2013-07-01 08:53:28 -05:00
Yury Delendik
6dc4b10b40 Implements reparing of CFF table 2013-07-01 08:53:28 -05:00
Yury Delendik
ba87d2fe11 Merge pull request #3373 from SSk123/master
rotation causes textLayer to get messed up
2013-06-29 17:24:12 -07:00