Jonas Jenwald
6af45052c5
Remove the input.type
polyfill
...
This is only relevant for browsers that we don't intend to support with PDF.js version `2.0`.
2017-12-19 15:05:15 +01:00
Jonas Jenwald
cf88b7b212
Remove the ImageData.set
polyfill
...
This is only relevant for browsers that we don't intend to support with PDF.js version `2.0`.
2017-12-19 15:05:14 +01:00
Jonas Jenwald
363e517acf
Remove the HTMLElement.dataset
polyfill
...
This is only relevant for browsers that we don't intend to support with PDF.js version `2.0`.
2017-12-19 14:50:18 +01:00
Jonas Jenwald
4880200cd4
Remove the XMLHttpRequest.response
polyfill
...
This is only relevant for browsers that we don't intend to support with PDF.js version `2.0`.
2017-12-19 14:48:43 +01:00
Jonas Jenwald
8266cc18e7
Remove the webkitURL
polyfill
...
This is only relevant for browsers that we don't intend to support with PDF.js version `2.0`.
2017-12-19 14:46:04 +01:00
Tim van der Meij
c35bbd11b0
Use native Math
functions in the custom log2
function
...
It is quite confusing that the custom function is called `log2` while it
actually returns the ceiling value and handles zero and negative values
differently than the native function.
To resolve this, we add a comment that explains these differences and
make the function use the native `Math` functions internally instead of
using our own custom logic. To verify that the function does what we
expect, we add unit tests.
All browsers except for IE support `Math.log2` for quite a long time
already (see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/log2 ).
For IE, we use the core-js polyfill.
According to the microbenchmark at https://jsperf.com/log2-pdfjs/1 ,
using the native functions should also be faster, in my testing almost
six times as fast.
2017-12-10 16:35:17 +01:00
Jonas Jenwald
6b1eda3e12
Move StatTimer
from src/shared/util.js
to src/display/dom_utils.js
...
Since the `StatTimer` is not used in the worker, duplicating this code on both the main and worker sides seem completely unnecessary.
2017-12-06 13:51:04 +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
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
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
Jonas Jenwald
2dbd3f2603
[api-major] Remove the TypedArray polyfills
2017-11-01 10:31:28 +01:00
Yury Delendik
b4e25fb2e8
Merge remote-tracking branch 'mozilla/version-2.0' into v2
2017-10-27 14:01:45 -05: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
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
2f32131601
Replace our WeakMap
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#weakmap
2017-10-15 10:22:06 +02:00
Yury Delendik
fab59e0f91
Revert "Closes all promises/streams when handler is destroyed."
2017-10-06 11:55:28 -05:00
Jonas Jenwald
5b67c7594c
Remove the unused Util.sign
function from src/shared/util.js
...
This has been completely unused since commit 10bb6c9ec0
, in PR 2505, more than four and a half years ago.
2017-10-01 15:58:03 +02:00
Yury Delendik
71b0e4e818
Closes all promises/streams when handler is destroyed.
2017-09-28 16:45:04 -05:00
Jonas Jenwald
cfb4955a92
Replace the isArray
helper function with the native Array.isArray
function
...
*Follow-up to PR 8813.*
2017-09-01 20:27:13 +02:00
Jonas Jenwald
11408da340
Replace the isInt
helper function with the native Number.isInteger
function
...
*Follow-up to PR 8643.*
2017-09-01 16:52:50 +02:00
Mukul Mishra
3516a59384
Adds fetch stream logic for networking part of PDF.js
2017-08-29 22:56:48 +05:30
Mukul Mishra
efad0c7a40
Set this.isCancelled in close method of streamSink.
2017-08-24 13:51:27 +05:30
Yury Delendik
57bc3296f4
Moves global scope out of shared/util.
2017-08-22 18:20:52 -05:00
Jonas Jenwald
be36c60e0f
Polyfill Uint8ClampedArray
using core-js
...
https://github.com/zloirock/core-js
2017-08-14 16:19:55 +02:00
Tobias Schneider
da44d10af1
Fallback to plain object for globalScope.
2017-08-08 09:17:48 -07:00
Yury Delendik
a1dfbec532
Properly cancel streams and guard at getTextContent.
2017-08-03 16:36:46 -05:00
Yury Delendik
6beb925f0b
Checks Edge support for streams.
2017-08-03 08:48:51 -05:00
Yury Delendik
01b47d9012
Use streams-lib as polyfill
2017-07-28 11:54:33 -05:00
Mukul Mishra
109106794d
Adds Streams API support for networking task of PDF.js project.
...
network.js file moved to main thread and `PDFNetworkStream` implemented
at worker thread, that is used to ask for data whenever worker needs.
2017-07-28 02:32:30 +05:30
Mukul Mishra
568b0b6a42
Adds ready capability rejection logic for stream sink.
2017-07-25 02:07:38 +05:30
Jonas Jenwald
f2270252c7
Add Number.isNaN
and Number.isInteger
polyfills in compatibility.js, since the Streams polyfill relies on them
...
Without this, the Streams polyfill will fail in Internet Explorer when the code-paths containing these methods are used.
2017-07-13 12:02:14 +02:00
Rob Wu
742ed3d1c9
Remove __pdfjsdev_webpack__, use webpack options
...
`__pdfjsdev_webpack__` was used to skip evaluating part of an AST,
in order to not mangle some `require` symbols.
This commit removes `__pdfjsdev_webpack__`, and:
- Uses `__non_webpack_require__` when one wants the output to
contain `require` instead of `__webpack_require__`.
- Adds options to the webpack config to prevent "polyfills" for
some Node.js-specific APIs to be added.
- Use `// eslint-disable-next-line no-undef` instead of `/* globals ... */`
for variables that are not meant to be used globally.
2017-07-09 16:35:48 +02:00
Yury Delendik
d028c26210
Removes error()
2017-07-07 09:40:24 -05:00
Yury Delendik
e2ca894fec
Merge pull request #8488 from mukulmishra18/streams-getTextContent
...
Streams get text content
2017-06-23 12:52:13 -05:00
Yury Delendik
679ffc84f6
Merge pull request #8544 from Rob--W/compatiblity-safari-strict-error
...
compatibility.js: Rename parameters in JURL
2017-06-19 10:34:33 -05:00
Rob Wu
f912f89e69
compatibility.js: Rename parameters in JURL
2017-06-19 17:03:41 +02:00
Jonas Jenwald
73234577e1
Rename map
to _map
inside of Dict
, to make it clearer that it should be regarded as a "private" property
2017-06-17 17:32:00 +02:00
Mukul Mishra
0c13d0ff46
Adds Streams API in getTextContent to stream data.
...
This patch adds Streams API support in getTextContent
so that we can stream data in chunks instead of fetching
whole data from worker thread to main thread. This patch
supports Streams API without changing the core functionality
of getTextContent.
Enqueue textContent directly at getTextContent in partialEvaluator.
Adds desiredSize and ready property in streamSink.
2017-06-17 20:03:27 +05:30
Yury Delendik
0c93dee0de
Merge pull request #8515 from yurydelendik/bloborigin
...
Adds special case for origin of blob to the compatibility URL.
2017-06-16 11:21:45 -05:00
Yury Delendik
631e6bebff
Fixes WeakMap polyfill (and improves PDFWorker port check).
2017-06-13 09:36:58 -05:00
Yury Delendik
b44848b918
Adds special case for origin of blob to the compatibility URL.
2017-06-13 08:19:46 -05:00