Commit Graph

104 Commits

Author SHA1 Message Date
Jean-Baptiste Queru
8a4e470fc2 merge from open-source master 2009-11-15 11:04:00 -08:00
Mike Reed
736c525a04 update dox to account for different behavior between AVOID and TARGET modes
http://b/issue?id=2034547
2009-11-12 21:13:12 -05:00
Jean-Baptiste Queru
7e2b4f602a merge from open-source master 2009-11-11 08:26:31 -08:00
Olivier Goutet
83387a484c Correction of an error in the setRotate method of the ColorMatrix class.
The matrix rotation params around the 2nd axis was not set correctly:

Initial matrix for axis 2 (green):
 cos 0 sin 0 0
  0  1  0  0 0
-sin 0  0  0 0
  0  0 cos 1 0

After correction:
 cos 0 -sin 0 0
  0  1   0  0 0
 sin 0  cos 0 0
  0  0   0  1 0
2009-11-05 14:48:03 +01:00
Mike Reed
58d30b6907 am 1864d01f: Merge change Iae849da2 into eclair
Merge commit '1864d01f2be0e82da7d8844fa91bee8880282041' into eclair-mr2

* commit '1864d01f2be0e82da7d8844fa91bee8880282041':
  add table maskfilter
2009-10-30 14:13:44 -07:00
Mike Reed
0e1e623011 add table maskfilter
hidden for now, since it need only be seen by Launcher2

http://b/issue?id=2210685
2009-10-30 08:11:58 -04:00
Mike Reed
c04851fd0a add boundary patch 2009-10-28 15:18:41 -04:00
Mike Reed
a78b0a2d9e add (hidden) setHasAlpha() to allow clients like the view's cache to hint that a bitmap is opaque.
Knowing that a 32bit bitmap is opaque is a performance boost for some blits.
2009-10-07 11:38:05 -07:00
Mike Reed
bbed0d68c8 hide setGammaForText, which is only used for calibrating new devices 2009-10-01 09:34:45 -04:00
Dianne Hackborn
29e4a3c566 Update from API review.
Change-Id: I16b1c566f91167aac9615ac59dd297a154c828ea
2009-09-30 23:21:02 -07:00
Mike Reed
4e03999ca2 if we have a single value for roundrect radius, manually clamp it before drawing.
Skia will clamp the radius independently in X and Y to ensure it is not larger than 1/2 the width (or height).
If the caller to our drawable gives us a single value, we'll assume they want it to be circular, and not an oval.
To do that, we clamp it up front, so we get (possibly smaller) circular corners, rather than potentially
elliptical ones.

This makes the progress bar look "nicer" when it is very thin in one dimension.
2009-09-29 17:02:26 -04:00
Dianne Hackborn
c20a9608f3 Whoops, these shouldn't be public.
Change-Id: I66057b1fb63b97ad79cea7056849274c6a7b3ed4
2009-09-29 11:38:01 -07:00
Dianne Hackborn
afa78967b8 Hack to fix issue #2125365: Sports Trivia compatability with Eclair
Adds a mechanism to tell Paint the scaling factor its target
canvas will have, for it to compute font metrics based on the
correct font size.  Only TextView uses this, but that is enough
for the large majority of apps.

Change-Id: I6cacaa0dd26d40ee3ad959bed0028678d6e9016e
2009-09-28 17:33:54 -07:00
Dianne Hackborn
de0dfb7b65 Fix issue #2125720 Weather Forecast Widget - graphics do not scale
I forgot to add the new density field to the Bitmaps' parcelable data.

Change-Id: I77cf3e93e356297e0caed6fc71b62b5cd8f79124
2009-09-23 14:26:02 -07:00
Dianne Hackborn
b8a9f12802 Fix #2101821: Cut labels of menu items in "SnapTell" market app.
Ummmm...  this turns out to be pretty bad.  NinePatchDrawable was not
scaling its reported padding for compatibility mode, causing spacing
to be off.  All over the place.  This change should improve things quite
a bit (and magically makes nearly all of the menu flaws go away).

Change-Id: I94a8310d95b908b6f087db97d9afaed654ca6de5
2009-09-23 11:27:06 -07:00
Chih-Chung Chang
eb68c46a40 Fix 2092386: Support yuyv for camera preview format.
Change-Id: I3ef821fed2132a9faf92983324c7e036d0f5641e
2009-09-21 04:38:19 +08:00
Romain Guy
a41581ed40 Add StateListDrawable's dither flag to the constant state.
Change-Id: Ie377bfe3dfb83c33df3c0cc5a02810332a60a322
2009-09-16 17:01:06 -07:00
Romain Guy
ffff38420c Build the BitmapShader if it hasn't been built yet.
This was causing a bug in the InCall UI where the background would be stretched.

Change-Id: Ie25a7d09f4779f166e267b2f921d40441ce361d2
2009-09-15 16:39:08 -07:00
Mike Reed
df4cf29715 redraw once more on a touch-up if we've been dragging, so we can redraw in high-quality mode
update dox on BlurMaskFilter
2009-09-15 16:16:05 -04:00
Dianne Hackborn
c297480937 Fix issue #2116977: buttons are huge and bent
Now that we are using preloaded drawables in compatibilty mode, when
constructing them from their constant state we need to set the new
drawable's target density appropriately.

Change-Id: I3665cbea09d38b9ac5f45f8c380dc8641f86b266
2009-09-14 16:32:56 -07:00
Dianne Hackborn
8cae124af2 Various cleanup around resources and nine-patches.
Remove the stuff that doesn't use preloaded drawables when in
compatibility mode, since this works fine ever since we were able
to deal with drawables in a different density than the canvas.

Change the snapshot function on View to return a snapshot at
the same size that will actually be drawn on screen (when in
compatibility mode), to be able to show scaling artifacts and
all.

This change was original an attempt to fix issue #2101917: Text
field edges appears to be improperly rounded.  That turns out to
probably be something deeper in the graphics system, but also
included here is the debugging code I did to try to track down the
problem to make it easy to turn on again later.

Change-Id: I34bfca629639c7ff103f3989d88874112ef778d9
2009-09-11 13:31:45 -07:00
Mike Reed
211db4a287 change default for dither to true 2009-09-11 14:40:15 -04:00
Scott Main
da0a56df96 resolved conflicts for merge of e0408aa1 to eclair 2009-09-10 18:08:37 -07:00
Scott Main
df4578e8ab docs only.
add documentation to notify developers about variable
camera specifications and add some more links

Change-Id: I46ef9811af17858cbc6547f88e626becb481b043
2009-09-10 15:02:49 -07:00
Mike Reed
d9512a30d8 default dithering to ON (cheap, looks good)
officially ignore filtering (expensive, no real improvement)
2009-09-10 14:46:41 -04:00
Romain Guy
650a3eb7d6 Load bitmap resources entirely from native code.
Change-Id: I6660baec241794c40611bce79b7f9ce9479e52ba
2009-08-31 14:06:43 -07:00
Mike Reed
dbade9d6a0 expose runtime changes to gamma 2009-08-25 13:47:47 -04:00
Dianne Hackborn
4a51c20ce6 I am getting tired of the java doc warnings, so fix them.
Change-Id: I2205eebae419eaf4a0992c9f5b7cd807eb843fe1
2009-08-24 17:37:32 -07:00
Jeff Sharkey
6afa16feb3 Add dither XML flag to StateListDrawable.
We currently allow the dither="true" flag to be set on
individual <bitmap> and <nine-patch> objects, but that flag
is overridden when they are included in a <selector>.  This
change adds the dither="true" flag to StateListDrawable so
they can be dithered when desired.

Fixes http://b/issue?id=2068024
2009-08-22 22:44:00 -07:00
Dianne Hackborn
46407d831e Fix infinite recursion. 2009-08-17 15:22:29 -07:00
Dianne Hackborn
7341d7a104 More work on wallpapers.
- Do better about figuring out when to stop them and other related window
  management.
- Fix problem where we were not redrawing the surface when the orientation
  changed.  This was the cause of the device hang.
2009-08-17 10:42:59 -07:00
Mike Reed
e14e70a1b0 fix documentation 2009-08-14 15:34:36 -04:00
Romain Guy
1010ac9b7c Fix possible NPE when mutating a DrawableContainer 2009-08-10 15:11:06 -07:00
Jean-Baptiste Queru
0391107e13 merge from donut 2009-08-03 07:45:45 -07:00
Romain Guy
a32d100b34 Add new utility methods to rsScriptC_Lib, android.util.MathUtil and android.graphics.Color.
Fixes RS compilation.
2009-07-31 21:36:18 -07:00
Jean-Baptiste Queru
5c1207be90 donut snapshot 2009-07-31 17:38:20 -07:00
Android (Google) Code Review
afcf686cb0 am 25dff70f: Merge change 9039 into donut
Merge commit '25dff70f153529b87f5ad4a92f4de21e8950b1de'

* commit '25dff70f153529b87f5ad4a92f4de21e8950b1de':
  Fix #2018814: System cannot correctly render assets with "wrap_content" attribute in QVGA
2009-07-30 16:05:27 -07:00
Dianne Hackborn
0d221012ff Fix #2018814: System cannot correctly render assets with "wrap_content" attribute in QVGA
It turns out we were not returning the density for anything retrieved from a
TypedArray...  which basically means any bitmap references from a layout or style...!!!

This is now fixed.

Also fiddle with the density compatibility mode to turn on smoothing in certain situations,
helping the look of things when they need to scale and we couldn't do the scaling at
load time.
2009-07-29 19:44:01 -07:00
Jean-Baptiste Queru
61e4248f8f merge from donut 2009-07-29 14:57:05 -07:00
Jean-Baptiste Queru
a8675f67e3 donut snapshot 2009-07-29 14:25:07 -07:00
Android (Google) Code Review
2c3fc83ac5 am ef9fd18d: Merge change 8616 into donut
Merge commit 'ef9fd18d90829ecbd37769cc05a8d5288aff821c'

* commit 'ef9fd18d90829ecbd37769cc05a8d5288aff821c':
  Fiddle with default densities to try to sanitize the API.
2009-07-27 12:05:44 -07:00
Dianne Hackborn
96e240f25a Fiddle with default densities to try to sanitize the API.
An issue with the density API is that bitmaps assumed the old default density,
so new programs would have to explicitly set the correct density for every bitmap
they create.

This is an attempt to fix that situation, by define the default density of bitmaps
to be the main screen's density, except for old apps where it is the original default
density.

Actually implementing this is not so great, though, because the Bitmap constructors
can't really know anything about who is calling them to know which density to use.
So at this level the compatibility mode is defined per-process -- meaning the initial
package loaded into a process defines the default bitmap density, and everyone else
loaded in later on has to live with that.

In practice this shouldn't be much of a problem, there shouldn't be much mixing of
old vs. new apps in a process.  It does mean that, going forward, if a developer is
going to use shared user IDs for this, they will need to make sure either that all of
their apps are in the same compatibility mode, or that their code explicitly sets the
density of bitmaps it receives.  This isn't all that great, but I think it is worth
the benefit of allowing people who write modern apps to not have to deal with bitmap
densities.

This change also does some cleanup of the density management (making sure to always
copy over bitmap densities, etc) and adds java docs to explain the various ways
density is set and used by the system.
2009-07-26 17:42:30 -07:00
Jean-Baptiste Queru
2af1b3db3d Merge korg/donut into korg/master 2009-07-25 21:15:25 -07:00
Dianne Hackborn
e2dba02441 am 11ea3347: Allow for screen density drawables in compatibility mode.
Merge commit '11ea33471e1a14a8594f0b2cd012d86340dd3bd8'

* commit '11ea33471e1a14a8594f0b2cd012d86340dd3bd8':
  Allow for screen density drawables in compatibility mode.
2009-07-24 16:08:56 -07:00
Dianne Hackborn
11ea33471e Allow for screen density drawables in compatibility mode.
This change allows us to use drawables that match the current screen
density even when being loaded in compatibility mode.  In this case,
the bitmap is loaded in the screen density, and the bitmap and
nine-patch drawables take care of accounting for the density difference.

This should be safe for existing applications, for the most part, since
they shouldn't really be pulling the bitmap out of the drawable.  For
the small rare chance of them breaking, it worth getting the correct
graphics.  Also this will only happen when there is actually a resource
of the matching density, and no existing apps should have resources for
anything besides the default density (though of course all of the
framework resources will be available in the native density).

As part of this, the bitmap density API has been changed to a single
integer provider the DPI unit density.
2009-07-24 10:47:15 -07:00
Android (Google) Code Review
8aea2f5f74 am 59c25cba: Merge change 8218 into donut
Merge commit '59c25cbaf0dd690e503b881392510127441d9074'

* commit '59c25cbaf0dd690e503b881392510127441d9074':
  DrawableContainer was not respecting the value returned by Drawable.getPadding(Rect).
2009-07-22 11:51:34 -07:00
Romain Guy
5140141c26 DrawableContainer was not respecting the value returned by Drawable.getPadding(Rect).
Before this change, DrawableContainer would always return true from getPadding(Rect)
even if all of its children were returning false from getPadding(Rect). This change
modifies this behavior to respect getPadding(Rect): mConstantPadding is kept null
when getPadding(Rect) returns false for all of the children and a flag is set
to avoid recomputing that value every time getConstantPadding() is invoked.
2009-07-22 11:35:49 -07:00
Android (Google) Code Review
fead9b8ad0 am fe6f45c8: Merge change 8098 into donut
Merge commit 'fe6f45c81463d2d28e11ac6083f2653e1286c5ef'

* commit 'fe6f45c81463d2d28e11ac6083f2653e1286c5ef':
  cast is floor. Use round instead.
2009-07-21 17:41:10 -07:00
Mitsuru Oshima
61324e58c5 cast is floor. Use round instead.
This fixes a few layout issues (that was due to smaller widnow size)
2009-07-21 16:42:41 -07:00
Jean-Baptiste Queru
cf4550c319 donut snapshot 2009-07-21 11:16:54 -07:00