Jonas Jenwald
ab1f76cc37
Remove the unused capability
parameter from the WorkerTransport.getPage
method
...
That parameter, originally named `promise`, has been unused for over five years; ever since commit f0687c4d50
in PR 1531.
2017-11-25 11:49:33 +01:00
Jonas Jenwald
59b5e14301
Split the existing WebGLUtils
in two classes, a private WebGLUtils
and a public WebGLContext
, and utilize the latter in the API to allow various code to access the methods of WebGLUtils
...
This patch is one (small) step on the way to reduce the general dependency on a global `PDFJS` object, for PDF.js version `2.0`.
2017-11-24 21:54:47 +01:00
Jonas Jenwald
cc47ef56ec
Remove the onclick
polyfill for old versions of Opera
...
This was only relevant for no obsolete versions Opera, that use the Presto engine. According to https://en.wikipedia.org/wiki/History_of_the_Opera_web_browser#Opera_2013 , the last version affected was released in 2013.
2017-11-21 11:02:14 +01:00
Jonas Jenwald
d18b2a8e73
Remove the classList
polyfill
...
This is only relevant for browsers that we don't intend to support with PDF.js version `2.0`.
2017-11-21 11:01:52 +01:00
Jonas Jenwald
4b15e8566b
Remove the Function.prototype.bind
polyfill
...
This is only relevant for browsers that we don't intend to support with PDF.js version `2.0`.
2017-11-21 11:00:55 +01:00
Jonas Jenwald
d8cb74d3e3
Remove the btoa
/atob
polyfills
...
This is only relevant for browsers that we don't intend to support with PDF.js version `2.0`.
2017-11-21 11:00:55 +01:00
Jonas Jenwald
150ac0788f
Remove IE9 specific XMLHttpRequest
polyfills that utilize VBArray
2017-11-21 11:00:55 +01:00
Jonas Jenwald
935c5c587f
Remove the Object.defineProperty
polyfill
...
This is only relevant for browsers that we don't intend to support with PDF.js version `2.0`.
2017-11-21 11:00:55 +01:00
Tim van der Meij
25b07812b9
Sanitize the display value for choice widget annotations
2017-11-18 20:37:27 +01:00
Tim van der Meij
9e8cf448b0
Merge pull request #9140 from Snuffleupagus/rm-console-polyfill
...
Remove the `console` polyfills
2017-11-18 15:49:19 +01:00
Tim van der Meij
edaf4b3173
Merge pull request #9037 from Snuffleupagus/refactor-streams-params
...
Re-factor how parameters are passed to the network streams
2017-11-18 15:41:15 +01:00
Tim van der Meij
ae07adf143
Merge pull request #9073 from Snuffleupagus/image-streams-fixes
...
Fix the interface of `JpegStream`/`JpxStream`/`Jbig2Stream` to agree with the other `DecodeStream`s
2017-11-17 23:26:36 +01:00
Tim van der Meij
1d67d9dccd
Merge pull request #9131 from janpe2/svg-empty-paths
...
Filling and stroking empty paths in SVG backend
2017-11-16 22:43:24 +01:00
Jonas Jenwald
42099c564f
Remove the console
polyfills
...
All browsers that we intend to support with PDF.js version 2.0 already supports `console` natively.
2017-11-16 09:34:51 +01:00
Jonas Jenwald
d5174cd826
Remove the requestAnimationFrame
polyfill
...
According to https://developer.mozilla.org/en-US/docs/Web/API/window/requestAnimationFrame#Browser_compatibility and https://caniuse.com/#feat=requestanimationframe , the browsers we intend to support with PDF.js version 2.0 should all have native `requestAnimationFrame` support.
Note that the reason for indiscriminately polyfilling `requestAnimationFrame` in iOS, see PR 4961, was apparently because of a bug in iOS 6.
However, according to [Wikipedia](https://en.wikipedia.org/wiki/IOS_version_history#iOS_8 ): "Support for iOS 8 ended in 2017.", hence the lowest version currently supported is iOS 9.
2017-11-15 16:08:48 +01:00
Jani Pehkonen
4e8f7070da
Filling and stroking empty paths in SVG backend
2017-11-14 18:35:39 +02:00
Jonas Jenwald
745cb73c65
Remove PDFJS.disableRange
/PDFJS.disableStream
code for now unsupported browsers in src/shared/compatibility.js
...
We're currently disabling range requests and streaming for a number of configurations. A couple of those will no longer be supported (with PDF.js version 2.0), hence we ought to be able to clean up the compatibility code slightly.
2017-11-14 15:28:50 +01:00
Jonas Jenwald
eb3a1f24a3
Remove the PDFJS.disableHistory
code from src/shared/compatibility.js
...
This compatibility code is only relevant for browsers that will no longer be supported (with PDF.js version 2.0), hence we ought to be able to remove it.
2017-11-14 15:28:50 +01:00
Tim van der Meij
9686f6652c
Merge pull request #9089 from yurydelendik/rm-chunks
...
Extracts OperatorList class and prepares for streaming
2017-11-13 23:35:40 +01:00
Jonas Jenwald
23699cef1c
Re-factor how parameters are passed to the network streams
...
*This patch is the result of me starting to look into moving parameters from `PDFJS` into `getDocument` and other API methods.*
When familiarizing myself with the code, the signatures of the various network streams seemed to be unnecessarily cumbersome since `disableRange` is currently handled separately from other parameters.
I'm assuming that the explanation for this is probably "for historical reasons", as is often the case. Hence I'd like to clean this up *before* we start the larger, and more invasive, `PDFJS` parameter re-factoring.
2017-11-11 11:23:29 +01:00
Jonas Jenwald
de5297b9ea
Fix the interface of JpegStream
/JpxStream
/Jbig2Stream
to agree with the other DecodeStream
s
...
The interface of all of the "image" streams look kind of weird, and I'm actually a bit surprised that there hasn't been any errors because of it.
For example: None of them actually implement `readBlock` methods, and it seems more luck that anything else that we're not calling `getBytes()` (without providing a length) for those streams, since that would trigger a code-path in `getBytes` that assumes `readBlock` to exist.
To address this long-standing issue, the `ensureBuffer` methods are thus renamed to `readBlock`. Furthermore, the new `ensureBuffer` methods are now no-ops.
Finally, this patch also replaces `var` with `let` in a number of places.
2017-11-11 11:22:16 +01:00
Jonas Jenwald
36593d6bbc
Move JpegStream
and JpxStream
to their own files
2017-11-11 11:22:16 +01:00
Yury Delendik
5fa56f6a9d
For backwards compatibility: use addOp amount instead of queue size.
2017-11-09 18:46:48 -06:00
Yury Delendik
877c2d7743
Changing QueueOptimizer to be more iterative.
2017-11-09 18:46:48 -06:00
Max Schaefer
3ae37d1b06
Remove a few useless assignments.
2017-11-03 11:36:48 +00:00
Max Schaefer
bc8f673522
Remove spurious arguments to NullStream
constructor.
2017-11-03 10:14:32 +00:00
Max Schaefer
3ab1a9922a
Rearrange a few declarations so that they precede their uses.
2017-11-03 10:14:32 +00:00
Jonas Jenwald
2dbd3f2603
[api-major] Remove the TypedArray polyfills
2017-11-01 10:31:28 +01:00
Brendan Dahl
b46443f0c1
Merge pull request #9077 from yurydelendik/v2
...
Version 2.0 merge
2017-10-31 14:24:20 -07:00
Jonas Jenwald
83e8398ff2
For non-embedded fonts, map softhyphen (0x00AD) to regular hyphen (0x002D) (issue 9084)
...
In the PDF file, the `ToUnicode` data first maps the hyphen correctly, and then *overwrites* it to point to the softhyphen instead. That one cannot be rendered in browsers, and an empty space thus appear instead.
Fixes 9084.
2017-10-31 13:26:04 +01:00
Jonas Jenwald
92fcfce685
Merge pull request #9082 from brendandahl/issue7562
...
Overwrite glyphs contour count if it's less than -1.
2017-10-30 20:44:01 +01:00
Yury Delendik
85f544f55a
Moves OperatorList and QueueOptimizer into separate file.
2017-10-30 13:29:58 -05:00
Brendan Dahl
17037b5e51
Overwrite glyphs contour count if it's less than -1.
...
The test pdf has a contour count of -70, but OTS doesn't
like values less than -1.
Fixes issue #7562 .
2017-10-30 09:16:51 -07:00
Yury Delendik
b4e25fb2e8
Merge remote-tracking branch 'mozilla/version-2.0' into v2
2017-10-27 14:01:45 -05:00
Jonas Jenwald
5e627810e4
Use stringToBytes
in more places
...
Rather than having (basically) verbatim copies of `stringToBytes` in a few places, we can simply use the helper function directly instead.
2017-10-26 11:01:13 +02:00
Jonas Jenwald
e94a0fd4e7
Extract the actual decoding in CCITTFaxStream
into a new CCITTFaxDecoder
"class", which the new CCITTFaxStream
depends on
2017-10-24 16:03:08 +02:00
Jonas Jenwald
bb35095083
Move CCITTFaxStream
and Jbig2Stream
, from src/core/stream.js
, to separate files
2017-10-24 12:00:40 +02:00
Jonas Jenwald
d71a576b30
Merge pull request #9045 from brendandahl/sani-name
...
Sanitize name index in compile phase of CFF.
2017-10-24 11:48:03 +02:00
Brendan Dahl
6b12612a52
Sanitize name index in compile phase of CFF.
...
Fixes #8960
2017-10-23 17:13:49 -07:00
Tim van der Meij
a0ec980e63
Merge pull request #9055 from Snuffleupagus/core-js-Number
...
Replace `Number` polyfills with the ones from core-js
2017-10-21 16:15:11 +02:00
Jonas Jenwald
dbbb763eaf
Replace Number
polyfills with the ones from core-js
...
Since we're already using core-js elsewhere in `compatibility.js`, we can reduce the amount of code we need to maintain ourselves.
https://github.com/zloirock/core-js#ecmascript-6-number
2017-10-21 12:58:53 +02:00
Jonas Jenwald
8684aa0ee5
Replace our Promise
polyfill with the one from core-js
...
Since we're already using core-js elsewhere in `compatibility.js`, we can reduce the amount of code we need to maintain ourselves.
https://github.com/zloirock/core-js#ecmascript-6-promise
2017-10-21 12:51:14 +02:00
Tim van der Meij
10fd590c09
Merge pull request #9032 from Snuffleupagus/nativeImageDecoderSupport-2.0
...
Simplify the check, and remove the warning, for the `nativeImageDecoderSupport` API parameter
2017-10-20 21:30:47 +02:00
Brendan Dahl
fcc9943d04
Use charstring as plain text when lengthIV is -1.
...
Fixes #7769
2017-10-18 14:19:59 -07:00
Tim van der Meij
17cc94db4e
Merge pull request #9034 from Snuffleupagus/javascript-null
...
[api-major] Change `getJavaScript` to return `null`, rather than an empty Array, when no JavaScript exists
2017-10-17 21:58:45 +02:00
Tim van der Meij
7d7edd9cc6
[api-major] Remove the PDFJS_NEXT
option
...
Nothing uses this option anymore, so setting it is a no-op now. We can
safely remove it.
Use `SKIP_BABEL` (instead of `PDFJS_NEXT`) now if you want to skip Babel
translation for a build.
2017-10-16 23:16:51 +02:00
Jonas Jenwald
b5794bb26b
Simplify the check, and remove the warning, for the nativeImageDecoderSupport
API parameter
...
As discussed in PR 8982.
2017-10-16 09:11:39 +02:00
Jonas Jenwald
bcb29063c1
Polyfill Object.values
and Array.prototype.includes
using core-js
...
See https://github.com/zloirock/core-js#stage-4-proposals .
2017-10-16 09:11:39 +02:00
Jonas Jenwald
1cd1582cb9
[api-major] Change getJavaScript
to return null
, rather than an empty Array, when no JavaScript exists
...
Other API methods already return `null`, rather than empty Arrays/Objects, hence it makes sense to change `getJavaScript` to be consistent.
2017-10-15 22:17:14 +02:00
Tim van der Meij
815bc53a16
Merge pull request #9029 from Snuffleupagus/eslint--report-unused-disable-directives
...
Enable the `--report-unused-disable-directives` ESLint command line option
2017-10-15 15:12:20 +02:00