2372 Commits

Author SHA1 Message Date
Deepanshu Gupta
c5a58437e6 Style improvements to LayoutLib create.
This change doesn't change the functionality but removes dead code and
simplifies various places to remove warnings.

Change-Id: I371e06bfbd587dbf0eeafc69787b9805f7008f62
2014-07-11 21:40:46 +00:00
Deepanshu Gupta
26e32ea559 Update delegates
Change-Id: Icd93c31b4e8c8ee5ea242fb8295578937f48ff2a
2014-07-11 21:40:27 +00:00
Deepanshu Gupta
e1960cc0b5 LayoutLib: Fix System.arraycopy()
Framework has specialized versions of java.lang.System.arraycopy() for
all primitive data types. These versions are not present on the Desktop
VM. This change replaces calls to any of the specialized versions with
the more general alternative - the one using Objects.

Note that this was already being done for char.

Change-Id: If1584125fea8ecc080fb39a5ee6cdb4d922d0c98
2014-07-11 10:27:36 -07:00
Yohei Yukawa
69684533cd Fix SDK build breakage
This should have been included in I3c6b69bd9d79b199afe68d838f25effa6

BUG: 15812658
BUG: 16118603
Change-Id: I298206008fc28faa4f6576a77d56251f873f233c
2014-07-12 01:59:07 +09:00
Jeff Sharkey
2cfc848226 Add versionCode to split manifest; compile.
To verify consistency at install time, all APK manifests must declare
the same package name and version code.  Also start compiling the
manifest, since versionCode is an attribute.

Bug: 14975160
Change-Id: I2a1a769bd3dfde05b19563af5ca9b6c15a9c95ff
2014-07-09 16:12:49 -07:00
Deepanshu Gupta
cbc13f057f am bdf7f8b0: Merge "Support Typeface.createFromFile()" into lmp-preview-dev
* commit 'bdf7f8b009ca9f276b5368a1cea037c1605f7261':
  Support Typeface.createFromFile()
2014-07-02 18:19:30 +00:00
Deepanshu Gupta
9fe0718492 am 1ae18e43: Merge "Change font family name." into lmp-preview-dev
* commit '1ae18e43e9b3727ce855a2a8a799e703484bc5bf':
  Change font family name.
2014-07-02 18:19:25 +00:00
Deepanshu Gupta
3a57d506e9 am 036557b6: Merge "Update system icon resolution in LayoutLib." into lmp-preview-dev
* commit '036557b60df5e5425b3563e99ffb21685160e4ab':
  Update system icon resolution in LayoutLib.
2014-07-02 18:19:09 +00:00
Deepanshu Gupta
1f1a71bed1 Merge "Support Typeface.createFromFile()" into lmp-preview-dev 2014-07-02 18:11:52 +00:00
Deepanshu Gupta
3c937cf5c7 Support Typeface.createFromFile()
Add support for Typeface.createFromFile() for platform fonts. The
feature existed in the KitKat LayoutLib but was dropped for the L
preview. This change adds it back.

Change-Id: Ib1abe67a32c28a1fb0e2a4f3061c358b55129434
2014-07-01 17:32:12 -07:00
Deepanshu Gupta
7ea293bc6a Change font family name.
During the SDK build, rename the Font's Family name and not just the
PS Name. Updating the PS name doesn't work.

Change-Id: I997b5eec9f493ce97b95c33101ee426e773890c1
2014-07-01 17:13:32 -07:00
Deepanshu Gupta
19c5349b73 Merge "Change font family name." into lmp-preview-dev 2014-07-01 23:33:37 +00:00
Adrian Roos
9657804afb Fix layoutlib breakage due to I681b711f6f40a94c25b7acd3a44eb3539486afab
Change-Id: I141f49718c4d538875a68c00101c098fdd7e967b
2014-07-02 16:00:30 +02:00
Deepanshu Gupta
84d1d431cf Update text rendering delegates.
The flags for RTL and LTR are simplified in commit
0a1d91862a3822dcbbb412bcd6d69b0f5f079f8b. This change follows up the
same in LayoutLib.

This also fixes the following bug which incorrectly computed runs with
'en-dash' (\u20132) as RTL.

Bug: http://b.android.com/69432
Change-Id: Iaed62d13ce31f107773576ed2ef412be6037cd04
2014-07-01 12:23:59 -07:00
Deepanshu Gupta
509d860907 Sort delegates in Canvas_Delegate
The order of the methods match the order of the declaration in the
Canvas file. This makes searching for the methods easier.

Change-Id: I230621d3999024cb2ff42a1aacd60908c7f0b161
2014-07-01 12:22:14 -07:00
Deepanshu Gupta
bb5d0cc436 Update LayoutLib delegates.
Change-Id: I64828bfb963048effbc49a622f5f2aa0203665e6
2014-07-01 12:22:13 -07:00
Deepanshu Gupta
3c989eaa0a Add VMRuntime_Delegate
Framework now uses libart which moved the implementation of
newUnpaddedArray() to native. This copies over the implementation of the
method from libdvm to restore the old behaviour.

Change-Id: Ic062aeb01f9ea52b6ed35517f742058d0ba8c804
2014-07-01 12:22:13 -07:00
Deepanshu Gupta
fe2a71bb13 Report all TestDelegate failures in a single run.
Change-Id: I37fa0a6f300ea89c8d0a60380b77b7d61db01cb7
2014-07-01 12:22:13 -07:00
Deepanshu Gupta
1076be31f1 Update system icon resolution in LayoutLib.
This fixes some bugs with the resolution of icons for Status Bar and
Navigation Bar by separating the icons into v21 and v11 directories. An
icon is searched in v21 directory by default. For simulating older
platforms, v11 directory is searched first and then v21 is used as a
fallback.

This also adds xxhdpi versions of home, back and recent icons.

Change-Id: Ia6eafc83856eacafc4fb0b13d87793d4aa24f106
2014-06-27 11:52:45 -07:00
John Spurlock
eb8d1be6ac Add a BIND_DREAM_SERVICE signature-level permission.
Starting in api 21, will be required to bind to a
declared dream or doze service.

Also added to aapt dump badging output.

Bug:15862654
Change-Id: Ifa0a594eeecf21e6146176c7810a847e1d08fe3b
2014-06-27 18:33:42 -04:00
Deepanshu Gupta
7a139f3fc9 Improve PorterDuff support.
1. Don't cache the src image used for applying the filter. The filter
delegate is not always cleared. This probably results in slighly slower
rendering, but doesn't run Studio out of memory.
2. Support more PorterDuff modes.
3. Fix a bug where the alpha was applied twice and thus the filter had
less effect than it should have had.

Change-Id: I2a481a64ba7f1ff8e9683bbc46ae110433e82ebc
2014-06-24 17:42:34 -07:00
Deepanshu Gupta
baffd0f85b am ac626a67: Merge "Improve PorterDuff support." into lmp-preview-dev
* commit 'ac626a6724bc239fcf3d5b2e207de02c59595c5a':
  Improve PorterDuff support.
2014-06-25 02:49:48 +00:00
Adam Lesinski
9d5b08ea8c Dump more info about behaviors an APK offers
Behaviors include things like print services,
custom launchers, camera apps, etc.

Bug:13748429

Change-Id: I9fb83bac95b1be61fc630c1e74daf0f4a8b9b27f
2014-06-24 22:07:47 +00:00
Deepanshu Gupta
ead9ce3ff6 Temporarily change PorterDuff mode MULTIPLY to SRC_IN
Overflow pop up dialog for action bar uses PorterDuff color filters in
mode SRC_IN. The mode is not supported by AlphaComposite currently. So,
in order to render something, we swap it out with SRC_IN.

Change-Id: I987e101728ecb76b5e3d5cd91f831e6f63a4321f
2014-06-23 19:26:32 -07:00
Deepanshu Gupta
16af3691f5 Fix bug to render status bar icons
Change-Id: I653c765105dafb02e30322384ca8e4791ac185d2
2014-06-23 19:25:38 -07:00
Deepanshu Gupta
e1d04d5421 Fix NPE in Ninepatch creation.
Change-Id: Icead69cd8503e90aeb54ff42f9ec297e7af2b518
2014-06-23 18:40:47 -07:00
Deepanshu Gupta
8dcfd4abe8 Resource resolution bug fix.
Fix a bug where "?attr/foo" in framework resources wasn't resolved
properly.

Change-Id: I9a56974f526774fde79685f668f01021136d68f1
2014-06-23 16:48:56 -07:00
Deepanshu Gupta
42c7ce02f4 Add navigtaion bar icons to simulate older platforms.
LayoutLib can simulate older versions of the platform to a very limited
extent. This change adds the old navigtaion bar icons back and moves the
latest ones to directories suffixed with "-v21". The code handles this
resolution in a very crude way.

This also removes a bunch of unused code and fixes some style warnings.

Change-Id: Ib6e7bfd8dfb34b2ccd87f660ca979eb5ef14bae7
2014-06-23 14:49:01 -07:00
Deepanshu Gupta
091208709a am 699f7221: Merge "Temporarily change PorterDuff mode MULTIPLY to SRC_IN" into lmp-preview-dev
* commit '699f7221dc0719b1ceb03a03183dc742a5bcdf3c':
  Temporarily change PorterDuff mode MULTIPLY to SRC_IN
2014-06-24 10:33:55 +00:00
Deepanshu Gupta
d8ef316f1f am 91977396: Merge "Fix bug to render status bar icons" into lmp-preview-dev
* commit '9197739603eb34df6cbc85c6a7fa0ea359e4776b':
  Fix bug to render status bar icons
2014-06-24 10:33:49 +00:00
Deepanshu Gupta
09348a10be am 3a812f47: Merge "Fix NPE in Ninepatch creation." into lmp-preview-dev
* commit '3a812f4755015a7384a8d28bbdeca445c87598b3':
  Fix NPE in Ninepatch creation.
2014-06-24 10:33:44 +00:00
Deepanshu Gupta
2b46b7eed7 am cd4b38ea: Merge "Resource resolution bug fix." into lmp-preview-dev
* commit 'cd4b38ea1d3605e0e62e5ddc70c052e221fef73c':
  Resource resolution bug fix.
2014-06-24 10:33:38 +00:00
Deepanshu Gupta
08b59fcb21 am 04703acd: Merge "Add navigtaion bar icons to simulate older platforms." into lmp-preview-dev
* commit '04703acdd214cd17aaf5757da75a862fb1797d1e':
  Add navigtaion bar icons to simulate older platforms.
2014-06-24 10:33:33 +00:00
Deepanshu Gupta
3510c58ad6 am e558d180: Merge "LayoutLib: Support PorterDuffColorFilter" into lmp-preview-dev
* commit 'e558d1806b29385aa14ba60f18e103e2c9aeef1b':
  LayoutLib: Support PorterDuffColorFilter
2014-06-24 10:33:26 +00:00
Deepanshu Gupta
e2f83fac78 am 52abbced: Merge "Fix SurfaceView in LayoutLib." into lmp-preview-dev
* commit '52abbced58ace68f8a91c4d092061d115af3b268':
  Fix SurfaceView in LayoutLib.
2014-06-24 10:33:21 +00:00
Deepanshu Gupta
f2af1f5d8a LayoutLib: Support PorterDuffColorFilter
Add support for select modes for PorterDuffColorFilter.

Change-Id: Ia7b4a6a92c326be977dd87a70f54c1f8954b546d
2014-06-22 13:02:54 -07:00
Deepanshu Gupta
367a0ce902 Fix SurfaceView in LayoutLib.
Added missing constructor.

Change-Id: I3dc8eb510bf4210568d4bb71ad551446d6835ae2
2014-06-21 19:47:25 -07:00
Deepanshu Gupta
b337295654 Merge "LayoutLib: Better support for compact/elegant fonts." into lmp-preview-dev 2014-06-20 21:00:34 +00:00
Deepanshu Gupta
a88738ff52 am 3daec197: Merge "LayoutLib: Better support for compact/elegant fonts." into lmp-preview-dev
* commit '3daec1972493c1e867c6cac7f4a2a43a157d52b9':
  LayoutLib: Better support for compact/elegant fonts.
2014-06-21 23:35:51 +00:00
Deepanshu Gupta
4a2ff7a4d8 am f791b120: Merge "Material navigation bar for layoutlib." into lmp-preview-dev
* commit 'f791b1205192e525590f72c465e7e4c185112eb0':
  Material navigation bar for layoutlib.
2014-06-21 23:35:43 +00:00
Deepanshu Gupta
17f6f35f90 Material navigation bar for layoutlib.
Change-Id: Id65600e5f4ffb3cd0f90c3c710f88d9b668f754f
2014-06-18 15:27:02 -07:00
Brian Carlstrom
7f047f02ad am 80f1fe5f: am f8077cf2: am 8e21e215: Merge "Switch from core to core-libart"
* commit '80f1fe5f7cc80b6f1da142c782ccbbad45d878a8':
  Switch from core to core-libart
2014-06-19 02:16:34 +00:00
Brian Carlstrom
80f1fe5f7c am f8077cf2: am 8e21e215: Merge "Switch from core to core-libart"
* commit 'f8077cf2d7ee55dbf02ec0c65a05db7e5c2fabfc':
  Switch from core to core-libart
2014-06-19 02:08:10 +00:00
Brian Carlstrom
f8077cf2d7 am 8e21e215: Merge "Switch from core to core-libart"
* commit '8e21e21550eddce01ad06fdf05b342993bf44c6a':
  Switch from core to core-libart
2014-06-19 02:03:35 +00:00
Brian Carlstrom
dbcae5ceb7 Switch from core to core-libart
Bug: 14298175
Change-Id: I89db18bf3d88f9511cb2ad943c64ecdbaf09d96f
2014-06-18 17:43:27 -07:00
Deepanshu Gupta
5ba5ab3111 am 1595c61d: am 5a49fc33: am c57b410c: Add a script to rename fonts for SDK. [DO NOT MERGE]
* commit '1595c61d2f1f081111958b4a22e8fec25402f3cd':
  Add a script to rename fonts for SDK. [DO NOT MERGE]
2014-06-18 00:20:35 +00:00
Deepanshu Gupta
1595c61d2f am 5a49fc33: am c57b410c: Add a script to rename fonts for SDK. [DO NOT MERGE]
* commit '5a49fc331ec7d5aa2532d650c32ea68733cbd5c0':
  Add a script to rename fonts for SDK. [DO NOT MERGE]
2014-06-18 00:15:35 +00:00
Deepanshu Gupta
5a49fc331e am c57b410c: Add a script to rename fonts for SDK. [DO NOT MERGE]
* commit 'c57b410c8ef41e269f82f3b42a8d22a15c08755b':
  Add a script to rename fonts for SDK. [DO NOT MERGE]
2014-06-18 00:10:34 +00:00
Adam Lesinski
f90f2f8dc3 Support multiple resource tables with same package
In order to support APK split features, the resource
table needs to support loading multiple resource
tables with the same package but potentially new set
of type IDs.

This adds some complexity as the type ID space changes
from dense and ordered to potentially sparse.

A ByteBucketArray is used to store the type IDs in
a memory efficient way that allows for fast retrieval.

In addition, the IDMAP format has changed. We no longer
need random access to the type data, since we store the
types differently. However, random access to entries of
a given type is still required.

Change-Id: If6f5be680b405b368941d9c1f2b5d2ddca964160
2014-06-18 19:20:08 +00:00
Deepanshu Gupta
c57b410c8e Add a script to rename fonts for SDK. [DO NOT MERGE]
Create a script that will rename the PS name encoded in the font that is
to be shipped with the SDK.

This commit is a combination of 5 commits:
e0660d31c256e02e5f5e2967508a7205d1f62f86
7e149f02c4e4403101e7e0e88af36cd4ab6f3554
66d3314301a8983c7070a15ea68daacc7300b7f2
c6364fd90de1600526d3431ce0740b6b856e48f0
2d8c52dc4502b8407705d5b6efe628cb657b20b4

Change-Id: I675a98db39fea4525e3673656af1764eb7e5bb96
2014-06-12 15:08:46 -07:00