2809 Commits

Author SHA1 Message Date
Alan Viverette
bac9769146 Ensure ripple mask is drawn at correct position
Bug: 22911708
Change-Id: Icdbe1f8a66d5e35eb25aa973c94f5870896cc1f8
2015-08-11 14:25:45 -04:00
John Reck
fac589451f am 3b68ca16: am 96160dea: am 8e645d58: am 649c3c44: am 7290d93d: Merge "Yell loudly about undefined behind in Bitmap, but work anyway" into mnc-dev
* commit '3b68ca168acc09b54fa3f6ed73e7ded10e5b8105':
  Yell loudly about undefined behind in Bitmap, but work anyway
2015-08-04 01:40:41 +00:00
John Reck
01a0af31d7 Yell loudly about undefined behind in Bitmap, but work anyway
Bug: 22214367

Previous releases would let the getters on a recycle()'d bitmap to still
work despite being firmly in undefined behavior per the documentation
on Bitmap#recycle().

As there are apps relying on this, yell very loudly about this behavior
in the log and give them a bit of time to fix it

Change-Id: I857be7e74cb217877973d9c6f03eb761d12fd056
2015-08-03 20:57:22 +00:00
Derek Sollenberger
6578a98956 Support High Contrast Text for all canvas types
Change-Id: Iee324446798fe1a1cb32cb991f181a4af24aa93c
2015-07-29 16:02:14 -04:00
Chris Craik
c9a6ca5d6b Merge "Revert "Support High Contrast Text for all canvas types"" 2015-07-29 18:15:16 +00:00
Chris Craik
749e67438c Revert "Support High Contrast Text for all canvas types"
bug:22820834

This reverts commit 876d56612ab8ec7032f702905d694670e6c4febd.

Change-Id: I4e07a0894095caaaf2fd36bfa6073d033542bfc4
2015-07-29 18:14:46 +00:00
Derek Sollenberger
2d35cf953a Merge "Support High Contrast Text for all canvas types" 2015-07-29 14:36:09 +00:00
ztenghui
dbcea5f495 am 8054c55b: am b00f3e4f: am fcec0638: am 8b455841: am 094c82ad: Merge "Scaling (Animated)VectorDrawable inside ImageView" into mnc-dev
* commit '8054c55bc6a0b7b108ee58df728e7a2b2e646c17':
  Scaling (Animated)VectorDrawable inside ImageView
2015-07-17 21:29:32 +00:00
ztenghui
35289f12d6 Scaling (Animated)VectorDrawable inside ImageView
Before, the VectorDrawable is behaving like BitmapDrawable inside a ImageView,
and it can be blurry due to scaling.
Now apply the scaling information to the cached bitmap, then the size of bitmap
will match the ImageView's screen size. Therefore, no blurry any more.

b/18185626

Change-Id: I979cef3b5178a9bd37ee6cc776df3361ca47c803
2015-07-17 11:16:41 -07:00
Chris Craik
d4f1d0c4e2 Merge "Remove ImageViewBitmapDrawable class" 2015-07-17 00:21:27 +00:00
Chris Craik
82af13ea83 Remove ImageViewBitmapDrawable class
Change-Id: Ie25b4b39cb5d0984981c153b036ea9ade95a10f7
2015-07-16 13:14:04 -07:00
John Reck
6d86e57bda Elaborate on Bitmap#reconfigure() expectations
Bug: 21947835
Change-Id: I6ab0ac08e993fb111977b6f9a02e139c7ea5170a
2015-07-15 12:22:15 -07:00
Julia Reynolds
5561d671f5 am 35ae7a0a: am f4874b74: am 2ed576fa: am 66b73dce: am f5e20ec3: Merge "Retrieve resources for apps, even if not installed for current user." into mnc-dev
* commit '35ae7a0a8d66c6a19ec82150a60a23730639f382':
  Retrieve resources for apps, even if not installed for current user.
2015-07-14 18:47:04 +00:00
Julia Reynolds
c7fd3462a2 Retrieve resources for apps, even if not installed for current user.
Bug: 21448052
Change-Id: Id5db428a6faca4a905684088c47e070752ac2899
2015-07-14 09:24:22 -04:00
Derek Sollenberger
876d56612a Support High Contrast Text for all canvas types
Change-Id: Ib46ba3d7c67e081872e6a4b11d294fe9a61f5bbd
2015-07-13 15:13:15 -04:00
Derek Sollenberger
94394b3fb0 Move drawRegion from DisplayList to Canvas
Change-Id: I9f401dc5b24732938ac2ca7ed829796e2d7ef3e8
2015-07-13 13:48:08 -04:00
Derek Sollenberger
cc882b6518 Remove unused functions and variables from DisplayListCanvas
This also moves some functions that are only called when creating/completing
a displayList into the appropriate constructors and endRecording calls.

Change-Id: I9f6add156d7f476a52766934af713b0f852c8dea
2015-07-10 19:32:30 +00:00
John Reck
b7ba1220a3 Teach ImageView to recycle internal drawables
Bug: 22289362

It's pretty common for ImageView#setBitmap to be called
repeatedly. Avoid re-creating the BitmapDrawable in this scenario
as that has high object churn of semi-expensive objects like
Paint.

Change-Id: Ib77719cd0366d02c1a42f774850bf3b9caa9c288
2015-07-09 17:40:41 -07:00
ztenghui
93666e8691 Merge "Resize the VectorDrawable according to the virtual Dpi" into mnc-dev 2015-06-24 23:32:18 +00:00
ztenghui
95080637db Resize the VectorDrawable according to the virtual Dpi
b/21928507

Change-Id: I9e596192a0fdf13fc91481f990a345c3b267f225
2015-06-24 15:09:09 -07:00
Alan Viverette
06ff2af68a Update local state when creating LayerDrawable from constant state
Also clears DrawableContainer's futures list when it's no longer needed,
correctly sets deep copy of state set in StateListDrawable, makes some
private methods into package-protected to avoid thunk, and propagates
state to StateListDrawable's super class so that getState() has correct
information.

Bug: 21840003
Change-Id: I0d4232807f280d663c03b4a80e4aab8626806440
2015-06-24 14:42:44 -07:00
Dan Sandler
346872d538 Merge "Allow an icon to carry a tint with it, wherever it goes." into mnc-dev 2015-06-24 02:10:25 +00:00
Daniel Sandler
25a5f30128 Merge "Use ashmem backed bitmaps for passing around notifications" into mnc-dev 2015-06-24 02:09:58 +00:00
Alan Viverette
81e7dbddf1 Remove isDither(), deprecate setDither()
Bug: 22013358
Change-Id: I37b11a94edc431a88522c6c056b76b045daa61d6
2015-06-23 14:30:40 -07:00
Jorim Jaggi
a0d58ae574 Use ashmem backed bitmaps for passing around notifications
Avoids many copies during IPC and duplicate Java heap consumption in
system_server, SystemUI, etc.

Bug: 18386420
Change-Id: Id5ac9406062d472f7848009d65f12131f5f4dac9
2015-06-23 19:55:41 +00:00
Dan Sandler
24f11b1871 Allow an icon to carry a tint with it, wherever it goes.
Bug: 21031774
Change-Id: I2d06c7288e0c0a06bf6ff147dfbfdea5a46fd288
2015-06-23 02:21:55 -04:00
Chris Craik
484b114846 Merge "Clean up drawable filter/dither docs" into mnc-dev 2015-06-23 00:07:18 +00:00
Derek Sollenberger
b2aea9dcbd Merge "Enable Picture w/ HW Accelerated Canvas." into mnc-dev 2015-06-22 15:38:11 +00:00
Derek Sollenberger
e109940d81 Enable Picture w/ HW Accelerated Canvas.
Bug: 20688645
Change-Id: I664f37d6dbb3e61b17206c82ebcc63f988cefc65
2015-06-22 13:18:29 +00:00
Chris Craik
c79df8e831 Clean up drawable filter/dither docs
bug:21342040

Change-Id: I6592bfa504516852967d82a7e7929b1aef6bff02
2015-06-19 18:01:44 -07:00
Alan Viverette
690a16c350 Invalidate the cached ripple drawable mask if mask layer changes
Bug: 21955350
Change-Id: I2e610a5a0af39668b7e9447cfd7d48d35e11d299
2015-06-19 13:42:39 -07:00
Doris Liu
a6c51149c5 Fix a typo in Drawable's javadoc
Change-Id: Ic168b250defb30512cb35a836118fe2bdf1b2e78
2015-06-18 15:28:27 -07:00
Dan Sandler
50ec9b1bd9 Merge "Patch up certain kinds of broken notifications." into mnc-dev 2015-06-18 20:26:49 +00:00
Dan Sandler
4e78706f43 Patch up certain kinds of broken notifications.
Notifications in which the icon resource ID is changed after
Builder.build() is called (even, and particularly, as the
last step in the current implementation of
setLatestEventInfo()) were not having their icons properly
parceled. In these cases we now attempt to catch this at
parcel time and construct the necessary Icon object.

But wait! Parceling does not require a Context. So we don't
actually know which package to load the resource from.
Therefore we now allow an Icon to be constructed with an
empty ("") package name, which allows us to complete this
parceling task despite the fact that a Notification does not
know its own package name. (In case you attempt to load a
drawable for such an Icon, loadDrawable will spot the ""
package and instead substitute the Context from its
parameters to try to load the resource.)

As it happens, even though the Notification does not know
its own package name, BaseStatusBar does, because it was
provided at NM.notify() time and is therefore included in
the StatusBarNotification structure. So we can actually
patch up the Icon (if it is TYPE_RESOURCE) and be sure to
get the icon loaded out of the correct package.

While we've got the hood open, this change fixes a couple of
related problems:

  • Foreground service notifications synthetically
    constructed for naughty icon==0 notifications (which we
    are still allowing...FOR NOW) were losing the
    FLAG_FOREGROUND_SERVICE flag (because we're
    re-build()-ing them from scratch rather than rewriting
    the provided Notification object). Now we set the flag
    and hang onto the new notification for next time
    setForeground() is called.

  • We now allow media notifications to avoid getting bumped
    to the top of the notification list if they're
    PRIORITY_MIN. You might want to do that, I guess?

Bug: 21333763
Change-Id: Ia5d1f1acb594c7677bcc75ee3d624da4ffca671f
2015-06-18 15:12:44 -04:00
Alan Viverette
67b5a68088 Merge "Resolve start/end insets in LayerDrawable.getIntrinsicWidth()" into mnc-dev 2015-06-17 21:31:06 +00:00
Alan Viverette
536652fe91 Resolve start/end insets in LayerDrawable.getIntrinsicWidth()
Bug: 21849185
Change-Id: If9b392d863e808d83a5d90bcc32df6cb9194cbdf
2015-06-17 14:09:53 -07:00
Alan Viverette
373954a1fd Refactor Drawable.getDither() to isDither()
Bug: 21342040
Change-Id: I801970c2a25289d670636ad5387ddf244fb48225
2015-06-17 13:59:31 -07:00
Alan Viverette
63a39ffe48 Ensure first load for bitmap and nine-patch gets correct density
Remove unnecessary lines setting target density on bitmap and nine patch,
since we'll do this later in inflate().

Bug: 21774853
Change-Id: I5ea316bee81f82192ce20f2f1bee0e62c6ec8ccb
2015-06-16 15:04:45 -07:00
Chet Haase
c03fa1ee54 Merge "Add isFilterBitmap() overrides where appropriate" into mnc-dev 2015-06-15 15:45:57 +00:00
Chet Haase
ea1363910b Add isFilterBitmap() overrides where appropriate
Issue #21825791 add isFilterBitmap() override to appropriate Drawable subclasses

Change-Id: I5cbd72c034be79b0aa53815c7a5a8ea499e6e02d
2015-06-15 08:43:27 -07:00
Chet Haase
96a443b58d Clarify Drawable.getOpacity() docs
Docs for translucent-vs-transparent-vs-opaque were confusing, especially since
the definition for those constants in PixelFormat are not the same as how they're
actually used in Drawable. This fix simply adds clarifying text to the method
comment for getOpacity().

Issue #21158891  Better document Drawable#getOpacity

Change-Id: I94725592f85e5d7874e3a3ac1c5bab969163fbf0
2015-06-12 17:21:31 +01:00
Keisuke Kuroyanagi
4039f6570c Merge "Improve boundary check for for Paint#DrawTextRun." into mnc-dev 2015-06-11 22:44:55 +00:00
Chris Craik
1b83edc616 Merge "Workaround shader crash" into mnc-dev 2015-06-11 20:29:05 +00:00
Keisuke Kuroyanagi
f2122ef549 Improve boundary check for for Paint#DrawTextRun.
Change-Id: I01027ebb9133240cc1c750824a41dd9fca484c1f
2015-06-11 20:46:53 +09:00
Chris Craik
b786bbdd11 Workaround shader crash
bug:21706035

Change-Id: Ia1cd4824c742b2d6fc0feb2861ccfde0b6ac2189
2015-06-10 16:58:50 -07:00
Alan Viverette
99ca2a8470 Account for hotspot bounds in RippleDrawable projection check
Bug: 21502154
Change-Id: Iedf4bd07f10ec13070a68870304ab651c1f15c68
2015-06-08 16:10:27 -07:00
Alan Viverette
371b582c49 Merge "Implement getColorFilter() on VectorDrawable" into mnc-dev 2015-06-06 00:26:04 +00:00
Alan Viverette
a741711900 Implement getColorFilter() on VectorDrawable
Bug: 21580708
Change-Id: Id64bebeb5c39906ed34775e8ccc39f666966bad9
2015-06-05 17:20:11 -07:00
ztenghui
9605271806 Add reset to AVD
b/21664621

Change-Id: Ie40c3723860e183c8e4fedd2a76b9debbdf64a2a
2015-06-05 15:42:59 -07:00
ztenghui
e1352de673 Merge "Setup the animation callback for AnimatedVectorDrawable" into mnc-dev 2015-06-05 16:37:10 +00:00