• Home
  • History
  • Annotate
  • only in /frameworks/opt/bitmap/src/com/android/bitmap/
History log of /frameworks/opt/bitmap/src/com/android/bitmap/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
5c102db5a1a16a2adcc7728693a6e65a981f91ae 09-Jul-2014 Leon Scroggins III <scroggo@google.com> Call setLocalMatrix before setShader.

This is now required in order to affect the Paint.

BUG:14315916
Change-Id: I7afa525d4a1d0e71d0ca5c79780c7d8b9100a959
rawable/CircularBitmapDrawable.java
df01966f999ddcc69b3e479c9efbd733ad86bc84 26-Jun-2014 Mark Wei <markwei@google.com> Import latest changes to the bitmap library.

Main development is now going on in the Bigtop fork. This import includes the
following changes:

cl/68071490
Cache BitmapShader instance in CircularBitmapDrawable.
This simple implementation is eliminating almost all of the BitmapShader
construction during startup.

cl/69907083
Add compatibility mode to StyledCornersBitmapDrawable for b/15023700 in 4.4.3

The rounded corners and flaps are now drawn on the canvas, instead of clipped
with a path. This part is in the bitmap library.

The drawn corners must match the color of the background color of the
container. The bt_megalist_selected_item_background color has been pre-mixed
with @android:color/white so it's in a ColorDrawable instead of a
LayerDrawable, and so its color can be used to draw the fake corners. This part
is in the Bigtop codebase.

Change-Id: I21a22d8550fbe1dd3de7410cd82969ff947c27ea
rawable/CircularBitmapDrawable.java
rawable/StyledCornersBitmapDrawable.java
2d10993c4276db5b28ef7cb909362fbbc26c460c 25-Apr-2014 Ruben <rglez@google.com> Add a few missed Trace.endSection()

Change-Id: Ib55c3ca461778a7efb21c4558efe7c4bfe27eb95
nrefedPooledCache.java
rawable/BasicBitmapDrawable.java
d732a611bd661fc2ac3c801a545cfbba0f179484 27-Mar-2014 Mark Wei <markwei@google.com> Fix bug where state changes were being suppressed if the drawable was offscreen.

Bug: 13563559
Change-Id: Iea22f1a4ae7b71dd6a555fdd2efb9047a61522a6
rawable/TileDrawable.java
iew/BitmapDrawableImageView.java
5b46c679794d2f4362e8064b0291c578835d75e0 18-Mar-2014 Mark Wei <markwei@google.com> unbind() will not keep track of the previous key unless we specify that the
unbind is temporary. This prevents race conditions that cause an old key to be
bound on attach to window.

Bug: 13507371
Change-Id: I5187ddd956fe28472fde1ef11360840059d15423
rawable/BasicBitmapDrawable.java
iew/BitmapDrawableImageView.java
9f42e5cd4e26c6d3d175491c524763d1aefe8643 04-Mar-2014 Mark Wei <markwei@google.com> Close trace section on early return.

Change-Id: I2827419544383b355a7a858cf35a0577f8f8446a
nrefedPooledCache.java
8dd5cac690e42383d6bfc20af04eb781abd14f54 03-Mar-2014 Mark Wei <markwei@google.com> Add backward compatibility to CircularBitmapDrawable API change.

Change-Id: Ie83f3fc85043d1e27fbc2932d14ae1ec961b963e
rawable/CircularBitmapDrawable.java
09f46006437e7de33afdb51192bf0bdc08e97040 03-Mar-2014 Mark Wei <markwei@google.com> CircularBitmapDrawable is now an ExtendedBitmapDrawable. Avatars can now fade in!

Change-Id: I79fae35f0949a17309bce0cffd6b10e7e6d8db2c
rawable/CircularBitmapDrawable.java
rawable/ExtendedBitmapDrawable.java
rawable/TileDrawable.java
ad97cd0e0753930ec68f189e6be1023dc0f62f75 03-Mar-2014 Mark Wei <markwei@google.com> When detached from window, the last known RequestKey is saved inside of the BasicBitmapDrawable instead of referenced separately in the BitmapDrawableImageView. This fixes a bug where you could bind() a stale RequestKey to the drawable, after having called drawable.unbind() before it is attached back to the window.

Change-Id: Idba62fea647871d5c1c495b2c89e10779289a53b
rawable/BasicBitmapDrawable.java
iew/BitmapDrawableImageView.java
1a340d4fca7babcb67d6cfa754f58c1a756dfca0 21-Feb-2014 Mark Wei <markwei@google.com> Rebind on attach to window if previously unbinded on detach from window.

Change-Id: I67d83689de85e14a5b20b644e2dbcc533ac544dd
iew/BitmapDrawableImageView.java
d7654f820a99358a7d2b2afb9b3a174690e213f6 14-Feb-2014 Mark Wei <markwei@google.com> Do not call methods which do not exist on ICS.

Change-Id: Id7c6c550960949af51357062b13bb19a161a469d
iew/BitmapDrawableImageView.java
9024423249c9b1779f523cc4fe757fda2d205844 07-Feb-2014 Mark Wei <markwei@google.com> Allow setting transient state on BitmapDrawableImageView so we don't unbind()
during animations.

Change-Id: I9275ef69f52058de1f6a1b3bb574b9fd5e030c82
iew/BitmapDrawableImageView.java
89e59f00d67791754e44e65413baa95f94056df4 21-Nov-2013 Mark Wei <markwei@google.com> Decouple parallaxSpeedMultiplier from setDecodeDimensions().

Expose decode vertical center through ExtendedOptions.

Genericize BitmapDrawableImageView#getTypedDrawable().

Bug: 11691744
Change-Id: I62e05ab2136cf031eaf1752dba728156c97c87a6
rawable/BasicBitmapDrawable.java
rawable/ExtendedBitmapDrawable.java
iew/BitmapDrawableImageView.java
1ef4c6b7fdbc6e36c030e4a6fab3a8ccf8ba524b 23-Jan-2014 Mark Wei <markwei@google.com> Check if input stream is null first before blocking. This allows us to detect
null cases without filling up the Executor queue.

Bug: 11789572
Change-Id: Icef2f8da1239fdd8db9d74480a147081a15456bc
ecodeTask.java
8aa2d8601f6a97af4a329cfc3bfd5fb5fb5bcbf8 21-Jan-2014 Mark Wei <markwei@google.com> Check both ReusableBitmap and ReusableBitmap#bmp for null to avoid NPE.

Bug: 12617030
Change-Id: I5882be1f02413dd55f44bf09b68257e9690abb6c
rawable/BasicBitmapDrawable.java
3633bda5a285f442a52c4d6e0ab637e74f8cf175 17-Jan-2014 Mark Wei <markwei@google.com> Merge "Restore bounds when we recreate the placeholder and progress drawables." into klp-ub-dev
4d404fe4edb0b5074ed9d3e90dd7aa942f252692 17-Jan-2014 Mark Wei <markwei@google.com> Restore bounds when we recreate the placeholder and progress drawables.

Change-Id: I9b63360a2bd34355c87528d143139764ec9aec38
rawable/ExtendedBitmapDrawable.java
a07e0af0f1997ce3d40df6a8a9f44cb0b2e4c07f 14-Jan-2014 James Kung <kingkung@google.com> Store null results in the cache

Change-Id: I034fa56a8c646a65781236fe832c0f54d9f86984
ecodeTask.java
nrefedPooledCache.java
ad6ca3f895022ded1a11f3eedc50d70ea90cd4da 07-Jan-2014 Mark Wei <markwei@google.com> Export some useful custom classes that I wrote back into the bitmap library.

Added:
- CircularBitmapDrawable: Use this if you want to display circular images with
an optional border stroke. This class uses BitmapShaders, the preferred way of
masking a bitmap, instead of using a non-rectangular clip region or overlaying
views.
- StyledCornersBitmapDrawable: Use this if you want the corners of your images
to be stylized. You can choose from rounded or flap corners, with an optional
border stroke and optional flap color. This class uses a non-rectangular clip
region. In the future, this may change to use a BitmapShader.
- ResourceRequestKey: Use this if you want a simple RequestKey implementation
that loads images from a resource asset.

Change-Id: If64440f3389f56f8a5b799a32a2660f3f9a19385
esourceRequestKey.java
rawable/CircularBitmapDrawable.java
rawable/StyledCornersBitmapDrawable.java
5d6521e290594fe0851086b0c27413e9709e437f 06-Jan-2014 Mark Wei <markwei@google.com> Allow non-changeable placeholder and progress drawable fields in ExtendedOptions
to be modified after ExtendedBitmapDrawable creation.

Change-Id: Ia24ed7665df2a7ebe4359908c578a15e11e3801c
rawable/ExtendedBitmapDrawable.java
c7ad691a967e860a93d76bedb7c5d207dd083591 12-Dec-2013 Mark Wei <markwei@google.com> We expect the BitmapRegionDecoder to fail on a GIF. We need to reset the
InputStream so the BitmapFactory decoder doesn't choke on a consumed
InputStream.

Bug: 12099499
Change-Id: Ie066e04f369cc51b783e2ce95ca4be5e5f8e8871
ecodeTask.java
b6ec2afe9710112214d79b36b2233fef6a52845a 08-Dec-2013 Mark Wei <markwei@google.com> Allow placeholder drawable to be sized by the client. First try to use the
bounds, then try to use the intrinsic bounds.

When a key is null, set load state to FAILED instead of UNINITIALIZED. The
difference is that FAILED shows the placeholder as a static image while
UNINITIALIZED hides it.

Fix bug in BitmapDrawableImageView where detaching from the window would set
its drawable to null, throwing away state.

Change-Id: I0b3f6c931d750ec4042e13bc1cbcf2d63e260168
rawable/ExtendedBitmapDrawable.java
iew/BitmapDrawableImageView.java
19a41ec7aaace2ab0b117d0baaeb544c5667b240 02-Dec-2013 Mark Wei <markwei@google.com> Fix state changes bug that caused bitmaps in the cache to be faded in instead of
instantly shown.

Change-Id: Ic2ba2d2ebe01badc881d1c43071a42bcf6f2b687
rawable/BasicBitmapDrawable.java
rawable/ExtendedBitmapDrawable.java
df3da61c8f2f54604376d9761649bdba54aa858b 23-Nov-2013 Mark Wei <markwei@google.com> Background color of TileDrawable must be opaque.

Change-Id: I6ac7b4ba6f68181424064377464e1896c2129f13
rawable/ExtendedBitmapDrawable.java
rawable/TileDrawable.java
cd728097ff189542877a2952879a3aa3c6cb5666 23-Nov-2013 Mark Wei <markwei@google.com> Fix bug where the paint's color and alpha were overriding each other.

Change-Id: I47f41c3bc20243cef209c2c299642c024cf35652
rawable/TileDrawable.java
4a1464aad9c626bd63821697b215a16ee21db824 21-Nov-2013 Mark Wei <markwei@google.com> Clarify ExtendedOptions validation documentation.

Change-Id: Ib89cb3268866888003567d76da45f0d6980dcc76
rawable/ExtendedBitmapDrawable.java
5f42121579221299e02f6d4627725814ed3d0fbf 21-Nov-2013 Mark Wei <markwei@google.com> Allow clients to override draw(). This is useful for clients who wish to
provide a border on top of all drawable layers, for instance.

Change-Id: Ibcb4218bf213d9b0cc02256efdb6346043c0ee7e
rawable/ExtendedBitmapDrawable.java
88e3100ef41cf50e4f40bbaab661df41e176dae2 11-Nov-2013 Mark Wei <markwei@google.com> Fix NPE in Robolectric tests.

Change-Id: Ib9422cd23940409c8301ea59f72e041972f5c58b
rawable/ExtendedBitmapDrawable.java
be9a52bfb24c55b6b0e0bcc5ed1859245d63dc8e 08-Nov-2013 Sam Blitzstein <sblitz@google.com> Have validate() ensure parllaxMultiplier is not 1

If the parallax feature is turned on, validate() should check that
parallaxSpeedMultiplier != 1.

Change-Id: Id660c300cf86db62778f77acb2890a0ca9e8f6e0
rawable/ExtendedBitmapDrawable.java
c4ba226c78b8478de6ac8e293d7f9bc64cba36ec 07-Nov-2013 Mark Wei <markwei@google.com> Allow clients to customize the placeholder pulse animation.

Change-Id: I73564b39333c10876b4dbd4532da327b8cf45265
rawable/BasicBitmapDrawable.java
rawable/ExtendedBitmapDrawable.java
c8d18c048b98435a6f8bf6a80ab92d87bce7d893 07-Nov-2013 Mark Wei <markwei@google.com> Merge "Fix bitmap drawing bug." into klp-ub-dev
7be91f8fe3c6d9af037b36918ea5bd86a10bbb44 07-Nov-2013 Mark Wei <markwei@google.com> Fix bitmap drawing bug.

The bitmap's bounds is not the true bounds, since the bitmaps are being reused.
The true bounds are the decode bounds, or logical bounds of the ReusableBitmap.

Bug: 11534712
Change-Id: I8fd5c35feacccbbfe6b625591cd56dec9ff3d716
rawable/BasicBitmapDrawable.java
b809a47b9f2a5dd1b6237000b525060fea21fafa 06-Nov-2013 Mark Wei <markwei@google.com> Add javadoc explaining when to implement async FD vs sync IS methods.

Change-Id: I8a5e739c14d357b0b6b724cdbff45cd116458660
equestKey.java
41af50eb1ac488572b066629c3954b23c21dfa76 05-Nov-2013 Mark Wei <markwei@google.com> Change state from UNINITIALIZED to NOT_YET_LOADED earlier.

Relax restrictions on subclass.

Change-Id: I456ed06e244de0ab794372b74094f9e94ed4b3f9
rawable/BasicBitmapDrawable.java
rawable/ExtendedBitmapDrawable.java
10dddd8a24a80d1d539997d8eaa9763c62bd02ad 05-Nov-2013 Mark Wei <markwei@google.com> Add some documentation.

Change-Id: Ie32f29997946714d10318b111fabf4ed04e042e3
rawable/BasicBitmapDrawable.java
rawable/ExtendedBitmapDrawable.java
aab539ecd75ae365912200eb7f3318a53e9834f4 04-Nov-2013 Mark Wei <markwei@google.com> Allow subclasses to specify custom executors.

Change-Id: I5dba01d388189bd840cadb4543baf2544a4b2ca9
rawable/BasicBitmapDrawable.java
fd628f9186741ff689c8b44b94e839af92abaeed 04-Nov-2013 Mark Wei <markwei@google.com> Consistent naming with onDraw().

Change-Id: I6fb90cc9f18abc97c17e5603b588039c717b63bb
rawable/BasicBitmapDrawable.java
0c9aacac20202f4a41e98d8a34a6ee2c152ae2de 01-Nov-2013 Mark Wei <markwei@google.com> Allow subclasses to customize drawing of bitmap (using shaders, etc).

Change-Id: I22294a19e6dd2247cc9679470b7b69089ba17228
rawable/BasicBitmapDrawable.java
5030ae34cd5978a8ab8a06f6c3b69b8645873122 01-Nov-2013 Mark Wei <markwei@google.com> Modify ExtendedBitmapDrawable to be more flexible for clients.

Introducing ExtendedOptions:

Clients can now specify the features they want out of a ExtendedBitmapDrawable:
1) Ordered display (decode aggregator)
2) Parallax
3) State changes (placeholder and/or progress bar)

Clients can also specify parameters to those features. These parameters can be
modified and changes take effect immediately.

Change-Id: I15e4f1dbc20473db6798888b07b4bd34c712db21
ecodeTask.java
rawable/ExtendedBitmapDrawable.java
rawable/TileDrawable.java
2e4d0863dba53435372ec96538f2ef3e1c3675bf 30-Oct-2013 Mark Wei <markwei@google.com> Make ExtendedBitmapDrawable extend BasicBitmapDrawable.

Modify sample app to use ExtendedBitmapDrawable with the following features:
Parallax,
Placholder and progress,
Decode aggregator.

Change-Id: Ia9e0fe6e6fdab018077a465ddf2a40109efbddf7
ecodeTask.java
rawable/BasicBitmapDrawable.java
rawable/ExtendedBitmapDrawable.java
22955165fab693684cc3614c84ee81883ae933c8 31-Oct-2013 Mark Wei <markwei@google.com> Manually inline methods that cause proguard to crash.

Bug: 11437985
Change-Id: Idf1b354bfcc97e6077e0855640a2abd6a9b36904
ecodeTask.java
9c6ac19d4a3d39b7c2992060957920118ff56a65 24-Oct-2013 Mark Wei <markwei@google.com> Relax BasicBitmapView to allow non-BasicBitmapDrawables to be assigned to it.

Rename BasicBitmapView to BitmapDrawableImageView.

Allow asynchronous creating of file.

Change-Id: I0407bf0bf36ae92ce45d2175121a15483f8f72f2
ecodeTask.java
equestKey.java
rawable/BasicBitmapDrawable.java
rawable/ExtendedBitmapDrawable.java
iew/BasicImageView.java
iew/BitmapDrawableImageView.java
46616414f6dabb6d57b0ac433a5fabe2abb8b5a9 23-Oct-2013 Mark Wei <markwei@google.com> Add copyright.

Change-Id: I319143db9975244480d0bf4d8c1c3407ae719b14
iew/BasicImageView.java
a23358fbfd62c7aa1c84bfa8395b4dc427a71ce6 23-Oct-2013 Mark Wei <markwei@google.com> Add BasicImageView to unbind on detach for clients with long-lived caches.

Change visibility of mBitmap back to private. Expose through getter.

Bug: 11337575
Change-Id: I511976388cc3b6962434416d9e7a632e6d8a1b72
rawable/BasicBitmapDrawable.java
iew/BasicImageView.java
e03daa1db89106c11d8885b94d7ac97c10bea3b3 22-Oct-2013 Mark Wei <markwei@google.com> Expose sRect and mPaint to subclasses.

Change-Id: If9c994b3e5c19b66aaebe77f127c04ac9152994e
rawable/BasicBitmapDrawable.java
f433893b66efbec10367567fba2ade0bda507b15 22-Oct-2013 Mark Wei <markwei@google.com> Change visibility of mBitmap to protected for BasicBitmapDrawable subclasses.

Change-Id: I632138edd33f5fdc460d4525afea80ac0f2cf07f
rawable/BasicBitmapDrawable.java
528300fdc3caeb96a24873acf2b1cc0914b97593 22-Oct-2013 Mark Wei <markwei@google.com> Misspelling

Change-Id: I8ed71a18c95241997e9a91d0210bf8534f9891f8
rawable/BasicBitmapDrawable.java
ce7ad915674cd93d2bf9e87e7082a0f149163671 22-Oct-2013 Mark Wei <markwei@google.com> Let BasicBitmapDrawable get subclassable.

Change-Id: I02024c858b0eb5442194ad6daf9204f02175caef
rawable/BasicBitmapDrawable.java
cea0c012d538f11b3ee97d4b7e78f4c1ea73d5be 22-Oct-2013 Mark Wei <markwei@google.com> Modifications to bitmap library to make integrating into BigTop simpler.

RequestKey returns ParcelFileDescriptor instead of AssetFileDescriptor to make
it easier to read files off of internal cache.

Do not assume we want a top-1/3 crop. Provide vertical center in DecodeTask
constructor.

Move DecodeTask params into DecodeOptions to avoid param bloat.

Add option to not limit bitmap density in BasicBitmapDrawable.

Name AsyncTask threads in pool. Link DEBUG flags.

Change-Id: I9416ac647c0c4935ee488b7db43cccd9de565c54
ecodeTask.java
amedThreadFactory.java
equestKey.java
nrefedBitmapCache.java
nrefedPooledCache.java
rawable/BasicBitmapDrawable.java
rawable/ExtendedBitmapDrawable.java
9d46a01e044696eb4d101778992fed4966520251 17-Oct-2013 Mark Wei <markwei@google.com> Trace without reflection. Avoid crashing on ICS.

Change-Id: Ic75143a38d252278329a6f775c137ff1321eaf28
til/Trace.java
25ad6f98516a7af1ca71cfa07fb503d46dc8a7f1 17-Oct-2013 Sam Blitzstein <sblitz@google.com> Add copyright notices, and clarify documentation.

Remove ineffectual interface methods from RequestKey and replace with a comment in the class's
documentation to the same meaning.

Change-Id: I4d27407d18a798b27dfe138b38a5ee3a2718e127
equestKey.java
40662f4b39e795d9c64502b13036e7c37fa2d373 16-Oct-2013 Sam Blitzstein <sblitz@google.com> Change BitmapRequestKey to be more cleanly implementable.

Change-Id: I831586688605e6c6c2f2f7a879c6be23175f71de
itmapCache.java
ecodeAggregator.java
ecodeTask.java
equestKey.java
nrefedBitmapCache.java
rawable/BasicBitmapDrawable.java
rawable/BitmapRequestKey.java
rawable/ExtendedBitmapDrawable.java
93a35b93dc582e38ff8ee5979754a16b4bf4da0c 09-Oct-2013 Sam Blitzstein <sblitz@google.com> Initial commit from Gmail's Cache system.

Change-Id: I14168ab3bc02b77399a1812f62bd77ac797232c5
itmapCache.java
ontiguousFIFOAggregator.java
ecodeAggregator.java
ecodeTask.java
oolable.java
ooledCache.java
eusableBitmap.java
nrefedBitmapCache.java
nrefedPooledCache.java
rawable/BasicBitmapDrawable.java
rawable/BitmapRequestKey.java
rawable/ExtendedBitmapDrawable.java
rawable/Parallaxable.java
rawable/TileDrawable.java
til/BitmapUtils.java
til/Exif.java
til/InputStreamBuffer.java
til/RectUtils.java
til/Trace.java