Andrew Osmond
d93e9c00e1
Bug 1298652 - Allow 64k width/height images to be rendered. r=jrmuizel
...
MozReview-Commit-ID: DIK9y9acV0M
--HG--
extra : rebase_source : 55129089afacd7a4a932a1ada59d366db54ea33a
2016-09-01 07:32:02 -04:00
Andrew Osmond
13df27efb8
Bug 1341624 - Include shared handle totals in memory reports for images. r=tnikkel
2017-02-22 09:30:22 -05:00
Andrew Osmond
4f8eb1363e
Bug 1339202 - Decode images to shared surfaces for WebRender. r=tnikkel
2017-02-08 15:48:59 -05:00
Phil Ringnalda
c7b01ecbda
Backed out 5 changesets (bug 1290292, bug 1290293) for gfx assertions
...
CLOSED TREE
Backed out changeset 652c909b75ad (bug 1290293)
Backed out changeset 90a284ea19e3 (bug 1290292)
Backed out changeset 8401d12fe936 (bug 1290293)
Backed out changeset d87488b69c18 (bug 1290293)
Backed out changeset 7368aa665fae (bug 1290293)
2017-02-13 19:28:45 -08:00
Andrew Osmond
136381647d
Bug 1290293 - Part 4. Remove surface buffer initialization for raster images.
2016-08-18 09:55:45 -04:00
Andrew Osmond
6679005d2a
Bug 1290293 - Part 2e. Make SurfacePipe users clear unwritten pixels if the image is truncated. r=tnikkel
2016-08-18 09:55:45 -04:00
Sebastian Hengst
3ce82bcd4f
Backed out changeset 45dd83a63162 (bug 1339202) for crashing in image processing related tests, e.g. xpcshell test test_imgtools.js. r=backout
2017-02-13 22:34:54 +01:00
Andrew Osmond
1683b602b4
Bug 1339202 - Decode images to shared surfaces for WebRender. r=tnikkel
2017-02-08 15:48:59 -05:00
Andrew Osmond
6dc0c7d3e0
Bug 1337790 - Fix null pointer dereference when a frame has no surface and one is requested. r=me
2017-02-08 10:51:08 -05:00
Andrew Osmond
c31478a16b
Bug 1331938 - Part 3. Switch to using VolatileSourceSurface instead of VolatileBuffer directly in imgFrame. r=tnikkel
2017-01-18 13:31:20 -05:00
Andrew Osmond
ef3aee28a1
Bug 1332005 - Remove opaque BGRA8 image surface optimization. r=tnikkel
2017-01-18 12:52:42 -05:00
cku
09c56e6da6
Bug 1323912 - Part 2. Pass opacity down to imgIContainer::Draw. r=mstange
...
Each concrete class of imgIContainer is able to handle opacity already. All we
need to do is pass opacity value to them.
MozReview-Commit-ID: EMkLnG3YXA1
--HG--
extra : rebase_source : b0a0aad1fec0c2765e96d23ed9b627345c793795
2017-01-03 13:53:22 +08:00
Iris Hsiao
c8e876e89c
Backed out changeset c868ab532766 (bug 1323912)
2017-01-04 21:47:12 -05:00
cku
adab9bea9f
Bug 1323912 - Part 2. Pass opacity down to imgIContainer::Draw. r=mstange
...
Each concrete class of imgIContainer is able to handle opacity already. All we
need to do is pass opacity value to them.
MozReview-Commit-ID: EMkLnG3YXA1
--HG--
extra : rebase_source : 080a843b34cc1ca27831310d474243b4066f59f2
2017-01-03 13:53:22 +08:00
Andrew Osmond
0eb070a4cc
Bug 1311779 - Part 2. Add telemetry to track optimizable opaque images decoded into B8G8R8A8 surfaces. r=tnikkel
2016-10-19 12:34:30 -04:00
Nathan Froyd
19607c3802
Bug 1306625 - fix wonky identation in imgFrame.cpp; r=tnikkel
...
DONTBUILD because whitespace-only fixes are always safe...right?
2016-09-30 23:11:59 -04:00
Bas Schouten
77e2a32f4a
Bug 1296657: Attempt to create an mOptSurface of the correct type for the DT we're drawing to. r=tnikkel
...
MozReview-Commit-ID: 2LIQWUPAuaF
2016-09-15 13:53:12 +02:00
Seth Fowler
2977081713
Bug 1296147 (Part 2) - Rename imgFrame::GetSurface() to imgFrame::GetSourceSurface() for clarity. r=edwin
2016-08-18 13:03:49 -07:00
Seth Fowler
7a29534fe8
Bug 1293794 - Allow imgFrame volatile buffers to be freed on all platforms. r=jrmuizel
2016-08-15 17:42:30 -07:00
Ryan Hunt
92206266e3
Bug 1294586 - Remove dependency on gfxPlatform from CreateDrawTargetFromData. r=dvander
...
MozReview-Commit-ID: A355fBJKWP6
--HG--
extra : rebase_source : 85ffd4b9d5f9708a1666bbc8e229ba576cc97680
2016-08-11 14:54:08 -07:00
Nicholas Nethercote
e7f10a07fd
Bug 1293603 (part 2) - Make Run() declarations consistent. r=erahm.
...
This patch makes most Run() declarations in subclasses of nsIRunnable have the
same form: |NS_IMETHOD Run() override|.
As a result of these changes, I had to add |override| to a couple of other
functions to satisfy clang's -Winconsistent-missing-override warning.
--HG--
extra : rebase_source : 815d0018b0b13329bb5698c410f500dddcc3ee12
2016-08-08 12:18:10 +10:00
Seth Fowler
ba8bb5de9d
Bug 1292747 (Part 3) - Clean up some comments in imgFrame related to Optimize()'s behavior. r=edwin
2016-08-08 16:25:50 -07:00
Seth Fowler
ad2f26e773
Bug 1292747 (Part 2) - Remove the 565 optimization from imgFrame. r=edwin
2016-08-08 16:25:48 -07:00
Seth Fowler
55d13bdddf
Bug 1292747 (Part 1) - Remove 565 optimization telemetry. r=edwin
2016-08-08 16:25:46 -07:00
Seth Fowler
f09a1b3d95
Bug 1290682 (Part 2) - Clean up imgFrame::Draw() and related code now that we know no non-trivial frame rects will occur. r=edwin
2016-08-01 17:51:18 -07:00
Seth Fowler
94cd474a67
Bug 1290682 (Part 1) - Explicitly forbid non-trivial frame rects in imgFrame::Draw() except for paletted frames. r=edwin
2016-08-01 17:51:16 -07:00
Seth Fowler
e36fc95869
Bug 1290681 (Part 2) - Remove the single color optimization from imgFrame. r=edwin
2016-08-01 17:51:13 -07:00
Seth Fowler
b704f1ab3d
Bug 1290681 (Part 1) - Remove telemetry for the single color optimization. r=edwin
2016-08-01 17:51:11 -07:00
Seth Fowler
78ccdc2e84
Bug 1288040 (Part 5) - Wrap frame timeout values in a FrameTimeout type that ensures they're normalized. r=edwin
2016-07-20 16:30:28 -07:00
Mason Chang
02f263e5b9
Bug 1282496 - memset unoptimized images with RGBX surface format to 0xFF. r=seth
2016-06-30 18:59:29 -07:00
Daniel Holbert
c1e322c6c5
Bug 1282670, part 1: Add missing #include & "using" declarations in imagelib. r=seth
...
I found these issues locally by moving all of imagelib's .cpp files to SOURCES instead of UNIFIED_SOURCES. (That change isn't part of this patch, though.)
MozReview-Commit-ID: 97Xpfu8eFE6
2016-06-30 10:24:27 -07:00
Phil Ringnalda
10f146a52a
Back out 269a48e67579 (bug 1282496) for Windows gfx crashes and assertion failures
...
CLOSED TREE
2016-06-27 19:13:12 -07:00
Mason Chang
dbf96fa749
Bug 1282496 - memset unoptimized images with RGBX surface format to 0xFF when using the skia backend. r=seth
2016-06-27 17:45:55 -07:00
Seth Fowler
5bb4252ff6
Bug 1281680 - Add telemetry for image optimizations that may no longer be useful. r=edwin
2016-06-25 15:41:16 -07:00
Seth Fowler
17074a1b49
Bug 1255107 (Part 3) - Use SurfacePipe in the PNG decoder. r=njn
2016-06-25 14:04:05 -07:00
Julian Seward
5b033cd6c7
Bug 1278927 - TSan: data race image/imgFrame.cpp on hasCheckedOptimize. r=seth.
2016-06-20 15:46:00 +02:00
Nicholas Nethercote
a02611e830
Bug 1276824 (part 1) - Rename gfxContext::ForDrawTarget{,WithTransform}(). r=milan.
...
The new names Create{,PreservingTransform}OrNull() better communicate that
these functions (a) do object creation, and (b) are fallible.
--HG--
extra : rebase_source : a36bd9a2bcdfae281868959403f811f2bc690ad4
2016-06-07 09:39:56 +10:00
Jonathan Watt
2eb705bb3f
Bug 1277862, part 3 - Rename Moz2D's Filter to SamplingFilter in the rest of the tree. r=Bas
2016-05-25 17:01:18 +01:00
Seth Fowler
cf4a581f11
Bug 1276413 (Part 1) - Clear paletted image frames when they're allocated. r=edwin
2016-06-01 11:59:47 -07:00
Seth Fowler
b2e7bf31dc
Bug 1059026 - Replace imgFrame::mOffset and imgFrame::mSize with imgFrame::mFrameRect. r=edwin
2016-05-26 22:19:38 -07:00
Seth Fowler
20e94cffd8
Bug 1275750 (Part 3) - Remove imgFrame::GetFormat(). r=edwin
...
--HG--
extra : rebase_source : 013843b9eb385723237a45843cddd443c6d20af0
2016-05-26 11:33:38 -07:00
Seth Fowler
943f760d93
Bug 1275750 (Part 2) - Remove unused GetDrawTarget()-related code. r=edwin
...
--HG--
extra : rebase_source : 22fa2ba0046f544bddaf68af14d2c4c3448386e9
2016-05-26 11:33:38 -07:00
Seth Fowler
7bb45773cb
Bug 1275750 (Part 1) - Remove unused ScalingData-related code. r=edwin
...
--HG--
extra : rebase_source : 4f32b5244dad988f845fd6371cfe13389e44eb81
2016-05-26 11:33:38 -07:00
JerryShih
325dfdc8dd
Bug 1256572
- use SourceSurfaceRawData with custom deallocator in imgFrame. r=bas
...
We can prevent the memory copy in GuaranteePersistance() during painting.
2016-05-05 07:30:00 +02:00
Kyle Huey
c73656947b
Bug 1265927: Move nsRunnable to mozilla::Runnable, CancelableRunnable to mozilla::CancelableRunnable. r=froydnj
2016-04-25 17:23:21 -07:00
Xidorn Quan
8080406d39
Bug 1266615 - Fix C4334 in imgFrame.cpp. r=padenot
...
MozReview-Commit-ID: BYBRJoFBj0V
--HG--
extra : rebase_source : 72ae050a2c167f1112947c3df5d9afed97e3226d
2016-04-22 11:22:53 +10:00
Milan Sreckovic
e0b2b9e425
Bug 1259513: Make gfxContext constructor private, use a utility function that can return nullptr. r=bas,lsalzman
...
MozReview-Commit-ID: rHhLEDZEQt
--HG--
extra : rebase_source : 4988f3f488c19dd35a9979e96f78a5511ee8f3d2
2016-04-12 15:18:11 -04:00
Timothy Nikkel
b0b9bfd047
Bug 1222596. If RasterImage::LookupFrame does (some) sync decoding and encouters an error we don't want to return the surface with an error. r=seth
...
If the sync decoding the LookupFrame does encounters an error it will set mError on the RasterImage, which LookupFrame callers check before calling LookupFrame. But they've called LookupFrame before the error was encountered, so we check if the frame has had Abort called on it to determine if we should return it at all.
We only does this if one of the sync decode flags was passed in because IsAborted needs to get the imgFrame's monitor, so we don't want to block consumers that haven't asked for decoding.
2016-04-01 12:44:17 -05:00
Timothy Nikkel
5afe8e5453
Bug 1257101. imgFrame::IsImageComplete says whether we've had pixels decoded to the whole image rect, but it's used to check if the frame is finished decoding. These are different things when the image has more than one progress pass. r=seth
...
This means that in RasterImage::LookupFrame when we are asked to do a sync decode (if needed) we use WaitUntilComplete to wait until the frame is finished decoding. But we would actually return after the next progressive pass notified the monitor to wake up. Thus, we would draw a not-fully-decoded image even though the sync decode flag was passed.
The change in FrameAnimator means that we won't draw the next frame in an animated image until all progressive passes of that image are complete. This seems like what we want anyways.
There is one real use of IsImageComplete left, in imgFrame::Draw, where we need to know if the decoded image data covers the whole image frame. (There are a couple of uses of IsImageComplete in asserts.)
2016-03-23 19:31:42 -05:00
Seth Fowler
875464424a
Bug 1247152 (Part 1) - Use SurfacePipe in the GIF decoder. r=njn
2016-03-09 15:39:02 -08:00