Fix of pdf not loading on android (issue 5427)

Fix for pdf on android not visible

Fix for pdf on android not visible
fixes caching of inline images during parsing.

As described in #5444, the evaluator will perform identity checking of
paintImageMaskXObjects to decide if it can use
paintImageMaskXObjectRepeat instead of paintImageMaskXObjectGroup.

This can only ever work if the entry is a cache hit. However the
previous caching implementation was doing a lazy caching, which would
only consider a image cache worthy if it is repeated.
Only then the repeated instance would be cached.
As a result of this the sequence of identical images A1 A2 A3 A4 would
be seen as A1 A2 A2 A2 by the evaluator, which prevents using the
"repeat" optimization. Also only the last encountered image is cached,
so A1 B1 A2 B2, would stay A1 B1 A2 B2.

The new implementation drops the "lazy" init of the cache. The threshold
for enabling an image to be cached is rather small, so the potential waste
in storage and adler32 calculation is rather low. It also caches any
eligible image by its adler32.

The two example from above would now be A1 A1 A1 A1 and A1 B1 A1 B1
which not only saves temporary storage, but also prevents computing
identical masks over and over again (which is the main performance impact
of #2618)
Fix code style in extensions/firefox/content/PdfJs.jsm
Fix code style in extensions/firefox/content/PdfjsChromeUtils.jsm
Fix code style in extensions/firefox/content/PdfjsContentUtils.jsm
Fix code style in extensions/firefox/content/PdfJs-stub.jsm
Fix code style in extensions/firefox/content/PdfJsTelemetry.jsm
Fix code style in extensions/firefox/content/PdfJsTelemetry-addon.jsm
Fix code style in extensions/firefox/content/PdfStreamConverter.jsm
Update |node make lint| to also cover the Firefox specific *.jsm files
fix passing null as Promise's onFullfilled (which is broken in Chrome 32)
Fallback to the |Dummy| Pattern when we fail to parse a Shading Pattern (issue 5509)
removed rounding of values in composeSMaskLuminosity

maskData comes out of maskCtx.getImageData, so is 0..255 clamped, and
the used multiplications will not create fractions needing rounding,
neither would addition.
increase chunk size in SMask composition to 1M pixels
Merge pull request #5516 from Snuffleupagus/issue-5509

Fallback to the |Dummy| Pattern when we fail to parse a Shading Pattern (issue 5509)
Refactor searching for the SOI marker of inline JPEG image streams
Merge pull request #5507 from palkan/fix-promise-null

Fix passing null as onFullfilled (which is broken in Chrome(-ium) 32)
Merge pull request #5523 from CodingFabian/remove-canvas-rounding-luminosity

removed rounding of values in composeSMaskLuminosity
Merge pull request #5524 from fkaelberer/increaseSMaskChunkSizeTo1M

Increases chunk size in SMask composition to 1M pixels
Use 3 param method for converting r,g,b into css string.

This avoids creation of temporary arrays to pass them into the util
method. Also using "arguments" is more expensive then passing in 3
parameters.