441 Commits

Author SHA1 Message Date
Xavier Ducrohet
59aad78eae LayoutLib: don't render when shader's local matrix is set to 0 scale.
Change-Id: I7726d87f3dd0475ac662f535a08c6435b8b9ed1f
2011-04-06 17:03:31 -07:00
Xavier Ducrohet
8a18dba48c Merge c5aeac7f from honeycomb.
LayoutLib: Fix issue with rendering mode.

When the layout content is embedded inside a decor layout
to emulate system bar (top or bottom) and title bar (or action bar)
then the code computing the full required size based on the RenderingMode
would fail because the decor layout would prevents the content layout to
take as much room as possible.
There is also an issue with the way we know render dialogs as the
dialogs usually as a frame with some padding and the previous measurements
would not take into account the dialog padding when increasing the
screen size.

This fix makes the code measure the size of the content layout in the
normal rendering, and then separately from the root layout with the proper
MeasureSpec to let the content grown. The difference in size is then added
to the screen size.

Bug: http://code.google.com/p/android/issues/detail?id=15892

Change-Id: Ie9a6c5e254b16785f817dcb9fae755d4936880aa
2011-04-06 14:24:59 -07:00
Xavier Ducrohet
c7c8c599a6 Merge 67450db0 from honeycomb. Do not merge.
Change-Id: I0ca140dd6d9279ff313f930739ad40fbbed4f335
LayoutLib: TypedArray.getDimensionPixelSize can actually return <0
2011-03-17 14:24:50 -07:00
Xavier Ducrohet
0a98226e3c Merge 9d76581f from honeycomb. do not merge.
LayoutLib: Fix Arc rendering.

Looks like Java2D and Skia go in different directions for angles.

Change-Id: I4d72db56455afe25b4f51f23a9b29d6c438119ba
2011-03-15 11:34:19 -07:00
Xavier Ducrohet
b243aabdaf Merge adaa12cd from honeycomb. do not merge.
LayoutLib: fix Capabilities and getDimensionPixelSize

Commented out a Capability that is not in ADT 10.

BridgeTypedArray.getDimensionPixelSize shouldn't call
getDimension since most of the code is duplicated, and
it prevents use from properly detecting malformed attribute
values.

Change-Id: I008334af605a89f240247a13c0024009247ec5af
2011-03-15 11:34:18 -07:00
Xavier Ducrohet
2652b618a8 Merge 6f2fb570 from honeycomb. do not merge.
LayoutLib: Fix dimension parsing to handle negative value.

Also make TypedArray.getDimensionPixelSize properly
handle negative values (which are not allowed).

Change-Id: I03ffcef5ab7ec7ef95419566776dcc798845fd88
2011-03-14 15:28:50 -07:00
Xavier Ducrohet
f354ad108c Merge c12b4093 from honeycomb. do not merge.
Change-Id: Icfbb70c097d87bf92415c6f0534346adde4c02fe
LayoutLib: Implement some missing add###() method in Path.
2011-03-14 15:28:50 -07:00
Xavier Ducrohet
efe18b5e3f Merge 1911a6f7 into gingerbread. do not merge.
Change-Id: I6d56644c4ab1a70eb4a6d0d2e5d84ea4aa674041
LayoutLib: move tests to their own project.
2011-02-25 14:53:32 -08:00
Xavier Ducrohet
031d2f8b6d LayoutLib: Adapt the HC layoutlib to GB. do not merge.
Change-Id: I0b2016987a65fabbc0ce7011514543349e9fb929
2011-02-23 19:47:18 -08:00
Xavier Ducrohet
4b52ec49fe LayoutLib: Original import of Honeycomb's layoutlib. do not merge.
frameworks/base.git @ f0a53435f14d23d9555fc46014352ee6a7baa647

Change-Id: Ibc215751693dc7650683b61bb458f7c8beaf8060
2011-02-23 19:47:02 -08:00
Dan Morrill
096b67f655 GL texture filtering changed from AND to OR, so rename tag name to match.
(<uses-foo> == AND, <supports-foo> == OR, e.g. uses-feature vs.
supports-screen).

Change-Id: I0f20aed7f95169d9adfc7fe128191eb6e49d116f
2010-12-13 16:25:54 -08:00
Scott Main
d58fb97ddf fix xlarge support in aapt for gingerbread
Change-Id: I4d8872fb839a6eadc538055215d4455af328846c
2010-11-04 18:33:05 -07:00
Xavier Ducrohet
c2e28dd748 Fix issue with project resources overriding framework resources.
Framework resources loaded through Drawable.createFromXml could
be overriden by project resources if there were loaded through
a  state list drawable where the final resource name was used
by a project resource (of the same type).

This ensures that the XML parser knows that it's a framework
resource being parsed and that the resource resolution uses
that information.

Change-Id: I39cf9eba755e55f1604b968637aeecff969a558d
2010-10-26 17:14:55 -07:00
Xavier Ducrohet
25e96ce7b9 Fix rendering of digitalClock/Gallery in Eclipse editors.
Change-Id: I80f4f90b173529632eaf2fbc3bb5471b7ede8216
2010-10-26 11:18:39 -07:00
Dianne Hackborn
a6d9c7c04c Implement issue #3116702: New manifest tags for supported screen sizes DO NOT MERGE
Change-Id: Iabf64d86c89d387ffbfbc39f950d308a73fe17eb
2010-10-21 15:32:06 -07:00
Ying Wang
a1b592e60d Link against the static libcrypto in external/openssl.
Change-Id: Iad41ec975f9b9a4aec0b8470678320f5abe03e1f
2010-10-14 16:13:31 -07:00
Kenny Root
a09f1ebeb5 Do not build pbkdf2gen on non-Linux hosts
Change-Id: I9f575a2ca7d45102a4f67424ea5866cf750adb13
2010-10-14 10:43:15 -07:00
Kenny Root
bdf8034c65 Merge "OBB: use PBKDF2 for key generation." into gingerbread 2010-10-13 18:29:43 -07:00
Kenny Root
3b1abba6bb OBB: use PBKDF2 for key generation.
Switch to using PBKDF2 for the key generation for OBBs. Any previously
generated OBBs will stop being read correctly. A small pbkdf2gen program
is available to allow generation of appropriate keys with the salts.

Bug: 3059950
Change-Id: If4305c989fd692fd1150eb270dbf751e09c37295
2010-10-13 18:25:33 -07:00
Jesse Wilson
3394db7d94 Merge "Regenerate preloaded classes for Gingerbread." into gingerbread 2010-10-13 16:59:12 -07:00
Jesse Wilson
eaca10e2d0 Regenerate preloaded classes for Gingerbread.
Unlike previous releases where the set of classes-to-be-preloaded
was generated on a first-generation device (G1 and MyTouch 3G), this
round I used a second-generation device, a Nexus One. As a consequence,
class loading is faster (win) and fewer classes hit the 1250ms threshold.
Instead of sharing classes based on load time alone, classes are now shared
based on the number of applications loading them.

Change-Id: I18f7aa3e7e6258818871b3968b515c06314371b3
http://b/2546002
2010-10-13 16:55:26 -07:00
Dan Morrill
6f51fc14d0 Adding a new <uses-gl-texture/> tag, to be used to enable apps to specify
filtering based on support for OpenGL ES texture and texture compression
formats.

Change-Id: I993209a673579b296007ae2ba830d0275770dd11
2010-10-13 14:33:43 -07:00
Anthony Newnam
0a226d84e1 Avoid pre-processing images when they won't be used
Change-Id: I24db3645c399f66dc7cc0e85909ce34b68ff829e
2010-10-06 18:39:19 -07:00
Xavier Ducrohet
f8e4c1f57b Parser is optional in obtainStyledAttributes.
If the parser is null it just means the default style/values are
used.

Change-Id: I5ff3d632fd5dfc5a1ce42796b2fef7b30f9fbf34
2010-10-04 18:11:50 -07:00
Dianne Hackborn
407f625a9b Add new API to find out whether external storage is removable.
This is implemented based on whether we are using the "nosdcard"
product.  Needed to tweak aapt to allow use of the product attribute
with other resource definition tags besides strings.

Change-Id: I49922d23b52a34183a8e2f4d2515adaf1fc9149a
2010-10-04 13:58:56 -07:00
Kenny Root
12ffd9bf4c Add "none" for vold and deprecate mkobb -c
If vold isn't told "none" for the key, it will try to mount it as an
encrypted container.

Also remove the -c option from mkobb since it can be triggered by
including a key as well.

Change-Id: I40a8ff3f778bfda682312630e6687ecc14b51844
2010-10-01 14:02:47 -07:00
Kenny Root
735de3b38a Hash keys with MD5; track IBinders not IInterface
Using a plaintext password doesn't work unless it's a certain length, so
just hash the plaintext password with MD5 to make it the right length
for the twofish encryption.

Tracking the IInterface doesn't make much sense since it's different
each time, so track the IBinder instead. That way we can unlinkToDeath
the binder when the last thing it's holding onto goes away.

Change-Id: Id828d25b4d74f27e9d8b4bfb3909c964469cc473
2010-09-30 17:25:05 -07:00
Ying Wang
c486da4887 Call functions to calculate deps and classes.jar
Instead of hard-coding them.

Change-Id: Ia5818a1a69efb0964d5aa7de7e8d30ef04dfeccc
2010-09-28 14:33:58 -07:00
Dianne Hackborn
8313fc7e94 Allow all apps to call ContentResolver.getType().
I can't find the bug number for this, but it is needed for some things
we are doing where the app building an intent may not have access to the
URI in the data field.  This is for HC, but doing in GB to avoid introducing
integration issues.

Change-Id: I0cac971854198b18775d2a73deb80f23431bfbe2
2010-09-26 21:31:47 -07:00
Eric Fischer
90964040ca Add an aapt option to allow string variations for different devices.
The --product option to aapt is a comma-separated list of characteristics
of the device being built for.  For example, --product nosdcard,grayscale
for a device with no SD card and a grayscale screen.

Strings can specify a product="characteristic" option to cause that version
of the string to be used only for that type of device.  All such strings
should also specify, at the end of the block, product="default", which
will be used if none of the variations match.  For example:

<string name="choose" product="bw">Choose black or white</string>
<string name="choose" product="grayscale">Choose a shade of gray</string>
<string name="choose" product="default">Choose a color</string>

The default characteristic will also be used when no --product option
is specified.

Change-Id: Ie6c1505599e02e15b7818e8be6ec47bc6ce71aaa
2010-09-23 10:32:47 -07:00
Kenny Root
30c1102fec Add image creator helper script for OBBs
Change-Id: Id3f2b158077e8d104582e0ac720c2428c3ba4d97
2010-09-21 10:13:19 -07:00
Dianne Hackborn
43b6803095 Implement #2964234: Add support for <uses-package> element to aapt
Change-Id: Ifb381f387cab7e5a99006691e330d0e3d9d0f250
2010-09-02 17:14:41 -07:00
Xavier Ducrohet
6487b09923 Add a --debug-mode option to aapt.
When passed (with no needed parameters) to the aapt command line,
aapt will insert debuggable=true in the application node of the manifest
automatically.

This is to be used by the SDK tools to make true "debug" builds
that require no code/file change.

Change-Id: I6f0a7af7b7d51f26bb0ec012e6f142a6060b8618
2010-08-31 11:07:56 -07:00
Kenny Root
2e7427f39e Merge "Add LFH offset to verbose list of APK" into gingerbread 2010-08-25 17:20:29 -07:00
Kenny Root
fb2a9467ad Add LFH offset to verbose list of APK
The Local File Header (LFH) offset is printed in debugging cases when
the platform is inspecting APKs. This adds the LFH offset field to the
list of contents of an APK, so that it can be checked easily against the
Central Directory (CD).

Change-Id: I08f9a13256bfe6563c1a963c4f0289789b2e7857
2010-08-25 07:38:33 -07:00
Brian Carlstrom
74b58fc58b Fix linux 64 build
git cherry-pick -e 49416bc658e37a0f4ae4f2b7b8582dd1606fba0f

Change-Id: I37a689acea8aeb5d6ac92ee56b077bafe4fba170
2010-08-24 20:20:50 -07:00
Dianne Hackborn
f43489d7d5 Fix aapt dump badging to support xlarge screens.
Change-Id: Ieeb757cd48ad9b3f46c5e4aed9d5efaeac834049
2010-08-20 12:44:33 -07:00
Kenny Root
02ca31fbae Add OBB flags to support overlays
* Add flags field in OBB footer to support overlays.

* Remove unused 'crypto' and 'filesystem' fields in obbtool (could
  later be supported in the "flags" field of the OBB footer).

* Add notes to document OBB classes before shipping.

Change-Id: I386b43c32c5edef55210acb5d3322639c08010ba
2010-08-18 09:34:58 -07:00
Ying Wang
e05184f271 Merge "Output proguard keep flags for fragment classes." into gingerbread 2010-08-13 15:26:21 -07:00
Eric Fischer
244152bfb9 Merge "Change aapt's warning message to suggest formatted="false", not "true"." into gingerbread 2010-08-13 14:54:15 -07:00
Eric Fischer
98ee11ddb7 Change aapt's warning message to suggest formatted="false", not "true".
True is the default and specifying it won't suppress the warning.

Change-Id: I8ecc919b4059bf3321e781649cb46dd2d3807592
2010-08-13 14:49:55 -07:00
Ficus Kirkpatrick
588f228d6a Add --max-res-version flag to aapt.
aapt will ignore any versioned resource directories over the
specified version (if used).  e.g. --max-res-version=6 will
cause layout-land-v7 to be ignored.

Merged from froyo.

Change-Id: Ia4eabae535b95b75d18b0c83135d44ed9a95b9eb
2010-08-13 14:20:51 -07:00
Ying Wang
561a91824f Output proguard keep flags for fragment classes.
Change-Id: I28c10fbf18b91f8ba3dfc2575cd41215f65f11ec
Bug: 2916847
2010-08-13 14:06:58 -07:00
Kenny Root
6e7ac5f0bc Initial tool for OBB manipulation
Add "obbtool" host command for adding, removing, and querying Opaque
Binary Blob (OBB) information from a file.

Change-Id: Id2ac41e687ad2a500c362616d6738a8ae7e8f5c3
2010-08-11 11:24:41 -07:00
Xavier Ducrohet
80e62ac61c Fix the layoutlib Paint.set(Paint) method. Do not merge.
It would change the text rendering info but not recompute
the Java Font objects. The effect is a broken font rendering
in the EditText (which use this method to copy some Paint
object before using the copy for the actual drawing)

Change-Id: I9e7fbf9bd57b421fd793876a6de4ade1ecac372d
2010-07-19 10:19:49 -07:00
Joe Onorato
80a60ba85b Clean up some style in the makefiles.
Change-Id: I993702808395f37c2e9d3c7e457d2952be51d795
2010-07-14 19:58:30 -07:00
Dan Morrill
45378f07b8 am 6b22d81a: As Donut (API=4) devices and earlier do not have a Bluetooth API, .apk files that have minSdkLevel (or targetSdkLevel) set to 4 or lower should not be presumed to require Bluetooth just because they take the permission.
Merge commit '6b22d81aa35d9a9b32670995c002e92588b2fe09' into gingerbread

* commit '6b22d81aa35d9a9b32670995c002e92588b2fe09':
  As Donut (API=4) devices and earlier do not have a Bluetooth API, .apk files
2010-06-17 12:36:17 -07:00
Dan Morrill
6b22d81aa3 As Donut (API=4) devices and earlier do not have a Bluetooth API, .apk files
that have minSdkLevel (or targetSdkLevel) set to 4 or lower should not be
presumed to require Bluetooth just because they take the permission.

Change-Id: Ia629e9ef0425a577e4e14f9b348f5aa2b39c1e74
2010-06-15 21:57:33 -07:00
Joe Onorato
9a5fcd1c14 am 9d71860e: Merge "The aapt and aidl tools are prebuilt when we\'re doing an apps-only build, so don\'t try to build them." into froyo
Merge commit '9d71860e8cbaf16ddae3cd5d06ede8e6cfc7675a' into gingerbread

* commit '9d71860e8cbaf16ddae3cd5d06ede8e6cfc7675a':
  The aapt and aidl tools are prebuilt when we're doing an apps-only build, so don't try to build them.
2010-06-15 15:21:14 -07:00
Jeff Brown
46b9ac0ae2 Native input dispatch rewrite work in progress.
The old dispatch mechanism has been left in place and continues to
be used by default for now.  To enable native input dispatch,
edit the ENABLE_NATIVE_DISPATCH constant in WindowManagerPolicy.

Includes part of the new input event NDK API.  Some details TBD.

To wire up input dispatch, as the ViewRoot adds a window to the
window session it receives an InputChannel object as an output
argument.  The InputChannel encapsulates the file descriptors for a
shared memory region and two pipe end-points.  The ViewRoot then
provides the InputChannel to the InputQueue.  Behind the
scenes, InputQueue simply attaches handlers to the native PollLoop object
that underlies the MessageQueue.  This way MessageQueue doesn't need
to know anything about input dispatch per-se, it just exposes (in native
code) a PollLoop that other components can use to monitor file descriptor
state changes.

There can be zero or more targets for any given input event.  Each
input target is specified by its input channel and some parameters
including flags, an X/Y coordinate offset, and the dispatch timeout.
An input target can request either synchronous dispatch (for foreground apps)
or asynchronous dispatch (fire-and-forget for wallpapers and "outside"
targets).  Currently, finding the appropriate input targets for an event
requires a call back into the WindowManagerServer from native code.
In the future this will be refactored to avoid most of these callbacks
except as required to handle pending focus transitions.

End-to-end event dispatch mostly works!

To do: event injection, rate limiting, ANRs, testing, optimization, etc.

Change-Id: I8c36b2b9e0a2d27392040ecda0f51b636456de25
2010-06-13 17:42:16 -07:00