Commit Graph

441 Commits

Author SHA1 Message Date
Seth Fowler
2401948cc4 Bug 816362 - Refactor imgTools::DecodeImageData to remove imgIContainer argument and use ImageFactory. r=joe 2012-12-13 17:02:26 -08:00
Seth Fowler
941299b5d8 Bug 815471 - Don't assume that all imgIContainers are either a RasterImage or a VectorImage. r=joe 2012-12-13 16:06:31 -08:00
Jeff Walden
e0523203c9 Bug 820570 - Move mozilla::DebugOnly into DebugOnly.h to pare down the grab-baggish Util.h. r=Ms2ger 2012-12-14 18:58:45 -05:00
Jeff Muizelaar
87d9a43558 Bug 811891. Only sync decode once per image. r=joe
Bug 799335 intentionally caused us to do some decoding everytime StartDecoding
is called. This can be multiple times per paint which can delay tab switch
substantially.

--HG--
extra : rebase_source : d3f151e85c142984c39f21ff7e13d1d37d39a4bf
2012-12-15 14:03:42 -05:00
Jeff Muizelaar
5a168d2ab1 Bug 801061. Switch from imgIRequest to imgRequestProxy. r=joe
This doesn't switch all of the users yet, but is a step in the right
direction.

--HG--
extra : rebase_source : 91b4fef3f67586179c119208d000cf7629e04963
2012-10-12 08:43:01 -04:00
Jeff Muizelaar
10f8bed215 Bug 821448. Make a bunch of imagelib classes builtinclass. r=joe
We don't want script implementing these.

--HG--
extra : rebase_source : dfe4a8c3f201e6dab5bd6c055fa10463a8f00029
2012-12-14 14:42:36 -05:00
Adam Dane [:hobophobe]
fa56bc0fa9 Bug 819412 - Test for Bug 733553 gets desynched under load r=joe 2012-12-10 15:13:42 -06:00
Saurabh Anand
151d13c7a5 Bug 818817 - Fix some compiler warnings, r=Ms2ger 2012-12-09 22:53:19 +05:30
Patrick McManus
d10d748869 bug 792438 - part 0. imagelib proxies should share load group root r=joedrew 2012-12-04 18:06:29 -05:00
Joe Drew
6f8d805500 Bug 804559 - Use correct rounding code instead of rolling our own. r=jrmuizel
Drew's First Law of Programming: If you write your own rounding code, you will
be wrong 100% of the time.
2012-12-03 18:02:11 -05:00
Joe Drew
958d3f216d Bug 802390 - Gracefully handle shutting down a decoder that hasn't had a chance to do any work. r=jrmuizel 2012-11-16 11:43:24 -08:00
Robert O'Callahan
f9199a2935 Bug 815593. Don't layerize images that exceed MaxTextureSize. r=mattwoodrow
--HG--
extra : rebase_source : f94300b24b90d063df095324663c9d8fa49e42e9
2012-11-28 15:34:45 +13:00
Josh Matthews
bc180e53ed Bug 801366 - Restrict GIF pixels to the range of the colormap. r=jrmuizel 2012-11-28 10:41:31 -05:00
Jonathan Kew
baa5823065 bug 815512 pt 1 - on retina-display Macs, moz-icon gets a bitmap that is 2x the 'expected' size. r=joe 2012-11-28 09:04:14 +00:00
Nicholas Nethercote
da226d8e42 Bug 711901 - When possible, measure, don't compute, the size of imgFrame::mImageSurface. r=joedrew.
--HG--
extra : rebase_source : 72dc61c2618166262ec6d83778d7bd2a3a7b5d61
2012-11-26 16:29:56 -08:00
Ehsan Akhgari
3b0448a7df Test case for bug 815359 - r=joe 2012-11-27 21:55:10 -05:00
Ehsan Akhgari
6339b343b1 Bug 815359 - Use the correct contract ID to create nsISupportsPRUint32's in the icon decoder; r=bzbarsky 2012-11-27 21:07:01 -05:00
Seth Fowler
e4d770fba5 Bug 813800 - Never revalidate data URIs. r=joe 2012-11-20 16:58:32 -08:00
Ehsan Akhgari
308de53b5b Bug 813787 - Remove support for image-sniffing-services; r=joe 2012-11-20 19:08:06 -05:00
Joe Drew
28e55e16c7 Bug 812602 - Don't use the DecodeStyle enum namespace, since it doesn't actually exist. r=jrmuizel
--HG--
extra : rebase_source : ac71cc01359c39e275e8b12c44e7d4e5fb04a81b
2012-11-20 14:27:39 -05:00
Tobias Netzel
dc07531bb5 Bug 812932 - Have EndianMacros.h recognize __BIG_ENDIAN__ preprocessor macro - r=bbondy 2012-11-19 09:09:17 -08:00
Jeff Muizelaar
a30ad6a153 Bug 812602. Don't decode jpegs progressively when we have all the data. r=joe
Decoding progressively is slower because we duplicate work like color
conversion and color correction for each outputted scan. We already suppress
paints when have all of the data, so we shouldn't do this extra work.

--HG--
extra : rebase_source : e6dd733546e1bb9e6e3279d9ceea0b4c0a88e049
2012-11-18 20:18:52 -05:00
Josh Matthews
703991dff3 Bug 803125 - Notify status tracker when image request is destroyed. r=joe 2012-11-17 13:33:20 +00:00
Ryan VanderMeulen
7ac458881d Backed out changeset fb3e2fb82000 (bug 802390) for mochitest bc orange. 2012-11-16 16:58:11 -05:00
Joe Drew
ef2d115b6c Bug 802390 - Gracefully handle shutting down a decoder that hasn't had a chance to do any work. r=jrmuizel 2012-11-16 11:43:24 -08:00
Jeff Muizelaar
63feebb7e0 Bug 795648. Add a commment describing why we need to call RequestDecode. r=mwoodrow
--HG--
extra : rebase_source : bd0b47c361eee7c0ed6f00f92eda8aabc5ef08e9
2012-11-16 11:00:06 -08:00
Jeff Muizelaar
985473d336 Bug 794957. Use imgLoader instead of imgILoader. r=joe
This makes use of imgLoader instead of imgILoader in more places.

--HG--
extra : rebase_source : 6b391e5ecc2fd9558516c7493116e7e7852b71b3
2012-11-16 10:24:58 -08:00
Matt Woodrow
52d048cbef Bug 795648 - Don't synchronously decode images during painting. r=joe 2012-11-16 10:04:29 -08:00
Honza Bambas
902d604757 Bug 734062 - Followup: fixed unused varialble use, r=joedrew 2012-11-14 13:56:56 +01:00
Josh Matthews
d7b09b969f Bug 803121 - Avoid using virtual functions in imgRequestProxy's destructor. r=joe 2012-10-19 15:39:38 -04:00
Jeff Muizelaar
be6b1fe272 Bug 811461. Switch IMAGE_DECODE_LATENCY to microseconds. r=taras
Currently this is recording in ms when we expect all of the values to be <5ms
I believe this was just a typo.

--HG--
extra : rebase_source : ed71dc9bd7dc9ef0903e2e84152b44ba13d97adf
2012-11-13 15:38:54 -08:00
Seth Fowler
5d7f1cae01 Bug 809181 - SVGDocumentWrapper::UpdateViewportBounds() should check if anything has changed instead of relying on callers. r=dholbert 2012-11-08 14:54:47 -05:00
Honza Bambas
33e46a6177 Bug 734062 - stale image in the image cache when an updated version is fetched into HTML5 offline cache in background, r=joedrew 2012-11-08 19:54:00 +01:00
Josh Matthews
543ca63cc0 Bug 805013 - Paper over the browser-chrome crashes from certain circumstances that run ~RasterImage off the main thread. r=joe 2012-11-07 17:25:27 -05:00
Josh Matthews
65b46af47f Bug 805013 - Diagnostic bandaid to ensure that all RasterImages are removed from the discard tracker. r=joe 2012-11-07 14:03:10 -05:00
Jeff Walden
1677629f44 Bug 803439 - Add removeFrom() that takes a list and asserts the element is initially present in it. r=jlebar
--HG--
extra : rebase_source : c2aad35774a71167f97f940fb416735862b78950
2012-10-23 17:43:23 -07:00
aceman
88970df015 Bug 808379 - fix Assertion failure: isEmpty(), at ../../dist/include/mozilla/LinkedList.h:258 causing Thunderbird crash since landing of fix to bug 803688. r=jlebar
Clear the sDiscardableImages linked list in DiscardTracker::Shutdown() so that the list destructor finds an empty array, which is required after bug 803688.
2012-11-04 23:20:52 +00:00
Seth Fowler
f5d66e49dc Bug 807556 - Remove imgIRequest::loadImage's aRequest argument. r=joe 2012-11-03 23:04:07 -04:00
Kyle Huey
45adfbf2c8 Bug 798491: Add an option to stick all chrome JSMs/JS components in the same compartment. r=mrbkap,philikon
--HG--
extra : rebase_source : 98337b6a8c07d05e8c961a452dd05a7d75c3c60b
2012-10-31 09:13:28 -07:00
Vicamo Yang
e6e6deb486 Backout 67cb43bb8865: Breaks B2G Marionette 2012-10-31 16:35:11 +08:00
Kyle Huey
7457de64ad Bug 798491: Add an option to stick all chrome JSMs/JS components in the same compartment. r=mrbkap,philikon 2012-10-30 12:28:11 -07:00
Ed Morley
a7bb0ec116 Backout a145ded68994, e0cf397089ec & 1545e91c658e (bug 798491) for bustage on a CLOSED TREE 2012-10-30 17:02:31 +00:00
Kyle Huey
dd0cfd935a Bug 798491: Add an option to stick all chrome JSMs/JS components in the same compartment. r=mrbkap,philikon 2012-10-30 08:26:12 -07:00
Nathan Froyd
f9b2a74082 Bug 806618 - rewrite PR_NewLogModule calls to not generate static initializers; r=ehsan 2012-10-29 19:32:10 -04:00
Jacek Szpot
bea8356b2c Bug 792180 - Replace NS_{UN,}LIKELY with MOZ_{UN,}LIKELY; r=ehsan 2012-10-26 15:32:10 +02:00
Jeff Muizelaar
096b94532d Bug 805119. Add a note about the deprecation of findEntryProperties. r=joe
DONTBUILD
2012-10-24 14:40:41 -04:00
Josh Matthews
70206b30d9 Bug 802485 - Quiet intermittent assertion for further investigation. r=orange 2012-10-22 15:40:05 -04:00
Nick Hurley
36fa1cbed9 Bug 536324 part 2 - Change implementers of nsIChannel. r=sworkman 2012-10-22 10:51:07 -07:00
Abhishek Potnis
8ad6e4b4f3 Bug 795511: Removed usages of PR_BIT and PR_BITMASK from the tree; r=ehsan 2012-10-20 07:31:43 +05:30
Josh Matthews
4411ead4c2 Bug 802485 - Remove special handling for canceled image request proxies that are changing owners. r=joe 2012-10-22 12:44:53 -04:00
Joe Drew
e32a2767e5 Bug 802168 - Don't shut down the decoder when we're destroying RasterImages; instead, just remove ourselves from the decoding list. r=jrmuizel,jdm 2012-10-22 13:16:57 -04:00
Phil Ringnalda
54142e8123 Bug 761049 - Back out 6ba8fbe719cc to reenable browser_bug666317.js on Linux 2012-10-19 21:59:18 -07:00
Seth Fowler
6d1409c12c Bug 803349 - Restore NS_DECL_IMGICONTAINER to VectorImage / RasterImage. r=joe 2012-10-19 13:27:11 -07:00
Isaac Aggrey
9e41ce2fa0 Bug 794510: Part 2: Use more stdint types instead of protypes.h types; r=ehsan 2012-10-11 18:38:04 -05:00
Nicholas Nethercote
b7c50cf8b3 Bug 744686 - Comment out unused |alpha_bits| variable to fix a compile warning. r=jmuizelaar.
--HG--
extra : rebase_source : 48be31fe3eab889e6f7930f44b96140ba076c389
2012-10-17 15:54:25 -07:00
Joe Drew
e339553286 Bug 801358 - Part 2 - Account for downscaled frames in about:memory. r=jrmuizel
--HG--
extra : rebase_source : c5a507f0f5d4fa5b700f19cdb359fd8281baa80d
2012-10-13 22:17:40 -04:00
Joe Drew
04467ccef4 Bug 801358 - Part 1 - Discard downscaled frames. r=jrmuizel
--HG--
extra : rebase_source : 1b699918323e7c116521cbde579aafb07846b2f6
2012-10-13 22:17:30 -04:00
Joe Drew
5dcf25c35e Bug 795940 - Part 0.5 - Move ScaleRequest and the runners into the CPP file so consumers don't have to care about them. BY THE DEMAND OF AND r=jrmuizel
--HG--
extra : rebase_source : eeb96eb9680017d2be9ee99ac0c760249a74bcbe
2012-10-12 18:24:47 -04:00
Joe Drew
3f8da7e7b0 Bug 795940 - Part 0.4 - Only try to downscale images that have a single instance on a web page, since that's all we support anyhow. r=jrmuizel
--HG--
extra : rebase_source : 1bda15c8edb7e2d1d3ca26354ce8429640b03b43
2012-10-12 18:20:25 -04:00
Joe Drew
259989f4be Bug 795940 - Part 0.3 - Support stopping requests (on a best-effort basis). r=jrmuizel
--HG--
extra : rebase_source : 793d04fa7954bbf060f01436bc0d257edd05a28a
2012-10-12 18:20:22 -04:00
Joe Drew
b6f2e527c1 Bug 795940 - Part 0.2 - Change from singleton ScaleWorker and DrawWorker (and on-demand allocated ScaleRequest) to nsIRunnables, allocated on demand, that know how to run themselves. r=jrmuizel
--HG--
extra : rebase_source : 9b98ed62eaf5fdddf6ee117ec5f26d049d752eaf
2012-10-12 18:20:19 -04:00
Joe Drew
fa19aa815b Bug 795940 - Part 0.1 - Allocate ScaleRequests dynamically and only hold on to a ScaleResult in RasterImage. Let ScaleRequests only hold a weak pointer to RasterImage so their lifetimes aren't bound. Finally, make ScaleRequests hold on to references to their surfaces instead of imgFrames. r=jlebar,jrmuizel
--HG--
extra : rebase_source : 335837e469e8318f0a70907060470b0a0e14ef21
2012-10-10 11:35:23 -04:00
Daniel Holbert
8f23c980e4 Bug 802409: Mark a bunch of /image subdirectories as FAIL_ON_WARNINGS. r=joe 2012-10-17 08:32:12 -07:00
Daniel Holbert
7d06b363a8 Bug 802458: Remove useless "NS_SUCCEEDED(rv)" in icon/gtk/nsIconChannel.cpp, and declare rv down where it's used. r=karlt 2012-10-16 22:18:10 -07:00
Josh Matthews
253a471ccd Bug 802144 - Don't delete memory used for image frames while the decoder could still try to use it. r=joe 2012-10-16 22:45:14 -04:00
Josh Matthews
128fc4e480 Bug 801405 - Avoid attempting to optimize frames that no longer exist. r=joe 2012-10-15 18:06:43 -04:00
Josh Matthews
c9846aa0ec Bug 801701 - Fix references to non-existent requests in status trackers for extracted frames. r=joe 2012-10-15 16:05:01 -04:00
Ehsan Akhgari
b3077d258d Silence a compiler warning about initialization order of RasterImage members, no bug
--HG--
extra : rebase_source : a109b2d20f362add2dbb38a6b2037adfab69941e
2012-10-13 17:28:39 -04:00
Patrick McManus
8b408af6a4 bug 801013 - imgRequest::AdjustPriority wrongly adjusts loadgroup instead of channel r=joedrew 2012-10-13 12:47:36 -04:00
Jeff Muizelaar
79fa5e64ff Bug 799335. Fix unintenional image flash on tab switch. r=joe,dholbert
This was caused by bug 792199.

There are two parts to this fix:
1. Always decode during StartDecoding even if we already have a Decoder
(hopefully this is safe) This was a bug in the original patch.

2. After calling StartDecoding() we recheck if we're complete and abort if
we're not doing a SYNC_DECODE. Before this regression we would usually be done
decoding the image because of the decoding we did when we Locked all of the
images on tab switch.

--HG--
extra : rebase_source : 9db93075aad2f45c6cc70d27ef67468b4507642c
2012-10-12 16:04:32 -04:00
Josh Matthews
e5b76c73ef Bug 505385 - Part 18: Reduce number of notifications - START_REQUEST/START_CONTAINER -> SIZE_AVAILABLE, remove START_DECODE and START_FRAME. Rename remaining ones for clarity. r=joe 2012-10-12 12:11:23 -04:00
Josh Matthews
dd334e9c67 Bug 505385 - Part 17: Clean up unused arguments in imgStatusTracker observers, document unclear things, etc. r=joe 2012-10-12 12:11:23 -04:00
Josh Matthews
0783fb9f7b Bug 505385 - Part 17: Consolidate image request failure handling code into a central location and deal with preexisting errors correctly. r=joe 2012-10-12 12:11:23 -04:00
Josh Matthews
7a220dd288 Bug 505385 - Part 15: Fix cases where pending requests in nsImageLoadingContent could be cancelled and never receive OnStartRequest. r=joe 2012-10-12 12:11:22 -04:00
Josh Matthews
13ed44dbb4 Bug 505385 - Part 14: Update image request status on decoding errors. r=joe 2012-10-12 12:11:22 -04:00
Josh Matthews
e9be8ac74c Bug 505385 - Part 13: Remove OnStopContainer and make OnStopDecode a true decode notification. r=joe 2012-10-12 12:11:22 -04:00
Josh Matthews
1e2e233108 Bug 505385 - Part 12: Ensure clones of static image proxies result in more static proxies. r=joe 2012-10-12 12:11:22 -04:00
Josh Matthews
31e9ef66cd Bug 505385 - Part 11: Create a new imgINotificationObserver interface to replace all uses of imgIContainerObserver and imgIDecoderObserver outside of image/. r=joe 2012-10-12 12:11:22 -04:00
Josh Matthews
c34861bb2d Bug 505385 - Part 10: Remove GetConsumers from imgStatusTracker by delegating all remaining notification operations from imgRequest to the status tracker. r=joe 2012-10-12 12:11:21 -04:00
Josh Matthews
4b1668f759 Bug 505385 - Part 9: Hoist decoder and container observer out of imgRequest into imgStatusTracker. r=joe 2012-10-12 12:11:21 -04:00
Josh Matthews
6348c50b96 Bug 505385 - Part 8: Remove image reference from proxies, and delegate operations on images to the owning request or the status tracker. r=joe 2012-10-12 12:11:21 -04:00
Bobby Holley
b215db7b80 Bug 505385 - Part 7: Initialize imgRequestProxy with a status tracker. r=joe
This is sort of symbolic for now, since we keep mOwner and mImage and just
pull them off the tracker, but we'll soon change that. ;-)
2012-10-12 12:11:21 -04:00
Bobby Holley
ad6877697a Bug 505385 - Part 6: Expose imgRequest::GetStatusTracker, and ensure that it's never null. r=joe
We're slowly turning imgStatusTracker into the central coordination point between imgRequest,
imgRequestProxy, and Image, so we need it to be a bit more visible.
2012-10-12 12:11:21 -04:00
Bobby Holley
26f4d62fed Bug 505385 - Part 5: Expose pointers to the imgRequest and Image on imgStatusTracker. r=joe
This will help us decouple imgRequest and imgRequestProxy.
2012-10-12 12:11:20 -04:00
Bobby Holley
c4499630a2 Bug 505385 - Part 4: Fix some warnings. r=joe 2012-10-12 12:11:20 -04:00
Bobby Holley
4575bcf375 Bug 505385 - Part 2: Move notification dispatch into imgStatusTracker. r=joe 2012-10-12 12:11:20 -04:00
Bobby Holley
e011cb0dc6 Bug 505385 - Part 1: Hoist proxy list into imgStatusTracker. r=joe 2012-10-12 12:11:20 -04:00
Bobby Holley
bd4348cc2d Bug 505385 - Part 0: Remove the last vestiges of manual animation reset within imagelib. r=joe
This stuff should now all be taken care of by the AnimationConsumers infrastructure.
2012-10-12 12:11:20 -04:00
Josh Matthews
e82f309179 Back out bug 585385 for build bustage. 2012-10-11 21:58:24 -04:00
Josh Matthews
d64a2c9b5a Bug 505385 - Part 18: Reduce number of notifications - START_REQUEST/START_CONTAINER -> SIZE_AVAILABLE, remove START_DECODE and START_FRAME. Rename remaining ones for clarity. r=joe 2012-10-11 21:34:24 -04:00
Josh Matthews
e93d04a3ed Bug 505385 - Part 17: Clean up unused arguments in imgStatusTracker observers, document unclear things, etc. r=joe 2012-10-11 21:34:24 -04:00
Josh Matthews
09e583e03a Bug 505385 - Part 17: Consolidate image request failure handling code into a central location and deal with preexisting errors correctly. r=joe 2012-10-11 21:34:24 -04:00
Josh Matthews
80d0bbfb1b Bug 505385 - Part 15: Fix cases where pending requests in nsImageLoadingContent could be cancelled and never receive OnStartRequest. r=joe 2012-10-11 21:34:24 -04:00
Josh Matthews
41e3c3120f Bug 505385 - Part 14: Update image request status on decoding errors. r=joe 2012-10-11 21:34:24 -04:00
Josh Matthews
db4200e616 Bug 505385 - Part 13: Remove OnStopContainer and make OnStopDecode a true decode notification. r=joe 2012-10-11 21:34:23 -04:00
Josh Matthews
4fec30568a Bug 505385 - Part 12: Ensure clones of static image proxies result in more static proxies. r=joe 2012-10-11 21:34:23 -04:00
Josh Matthews
d09d8af2a1 Bug 505385 - Part 11: Create a new imgINotificationObserver interface to replace all uses of imgIContainerObserver and imgIDecoderObserver outside of image/. r=joe 2012-10-11 21:34:23 -04:00
Josh Matthews
d6ba50447f Bug 505385 - Part 10: Remove GetConsumers from imgStatusTracker by delegating all remaining notification operations from imgRequest to the status tracker. r=joe 2012-10-11 21:34:23 -04:00
Josh Matthews
679f2d5e91 Bug 505385 - Part 9: Hoist decoder and container observer out of imgRequest into imgStatusTracker. r=joe 2012-10-11 21:34:23 -04:00
Josh Matthews
dd877db859 Bug 505385 - Part 8: Remove image reference from proxies, and delegate operations on images to the owning request or the status tracker. r=joe 2012-10-11 21:34:23 -04:00