1687 Commits

Author SHA1 Message Date
Deepanshu Gupta
eaddb84962 am f7193bf8: am d9f9da39: am 56b86deb: am 1c91b1f7: am 45dbfcc7: Improve text rendering and measurement.
* commit 'f7193bf89780039cf924dd7d1bb67f4830517231':
  Improve text rendering and measurement.
2014-02-10 20:04:05 +00:00
Deepanshu Gupta
f7193bf897 am d9f9da39: am 56b86deb: am 1c91b1f7: am 45dbfcc7: Improve text rendering and measurement.
* commit 'd9f9da396b41f394991f676bc74dcfc59c7070a8':
  Improve text rendering and measurement.
2014-02-10 19:56:58 +00:00
Deepanshu Gupta
d9f9da396b am 56b86deb: am 1c91b1f7: am 45dbfcc7: Improve text rendering and measurement.
* commit '56b86debcfaf8f661011702d31854bb3804f5fe1':
  Improve text rendering and measurement.
2014-02-10 19:53:48 +00:00
Deepanshu Gupta
56b86debcf am 1c91b1f7: am 45dbfcc7: Improve text rendering and measurement.
* commit '1c91b1f7a2da5e5b1996217228399ef958c2be0c':
  Improve text rendering and measurement.
2014-02-10 19:50:58 +00:00
Narayan Kamath
91447d88f2 Extended locales in AAPT / AssetManager.
Support 3 letter language codes, script codes &
variants. The bulk of the changes are related to
the implementation of command line filtering of
locales etc. The previous code assumed that the
value of each "axis" (locale, density, size etc.)
could be represented by a 4 byte type. This is
no longer the case.

This change introduces a new class, AaptLocaleValue
which holds a (normalized) locale parsed from a
directory name or a filter string. This class takes
responsibility for parsing locales as well as
writing them to ResTable_config structures, which is
their representation in the resource table.

This includes minor changes at the java / JNI level
for AssetManager. We now call locale.toLanguageTag()
to give the native layer a well formed BCP-47 tag.
I've removed some duplicated parsing code in
AssetManager.cpp and replaced them with functions on
ResTable_config. The native getLocales function has
been changed to return well formed BCP-47 locales as
well, so that the corresponding java function can use
Locale.forLanguageTag to construct a Locale object
out of it.

Finally, this change introduces default and copy
constructors for ResTable_config to prevent having
to memset() the associated memory to 0 on every
stack allocation.

Change-Id: I899a56a9a182ee6be52b9389d1ae59266f5482e9
2014-02-10 15:50:16 +00:00
Deepanshu Gupta
45dbfcc781 Improve text rendering and measurement.
1. Fix a bug where baseline of the run was modified while rendering
resulting in crooked text in some cases.

2. Use GlyphVector.getLogicalBounds() for text measurement which is more
accurate than getVisualBounds().

3. This change also optimizes text rendering by not computing the advances
for individual glyphs when not needed.

Change-Id: I66792c4d8f50eaf29afa70bccca1e6c812a3fa28
2014-02-06 16:27:14 -08:00
Deepanshu Gupta
6886e3ac18 am 7bd287b7: am ea2ec77f: am 3adb34ee: am 9fcfbfe2: am 3bf38b41: Merge "Add methods for Time_Delegate" into klp-dev
* commit '7bd287b70a1c95c96663a6028e9809fd3844f55a':
  Add methods for Time_Delegate
2014-02-06 03:15:37 +00:00
Deepanshu Gupta
f7994e89e9 am 6a9cbd5a: am a0023027: am 23de8dc2: am 28e049ef: am 0db6e6a5: Merge "Optimize layout rendering in layoutlib" into klp-dev
* commit '6a9cbd5a2d56782e94b870735df51d32314684d8':
  Optimize layout rendering in layoutlib
2014-02-06 03:15:33 +00:00
Deepanshu Gupta
a859670d0a am f9021e48: am bd762373: am 096e4359: am f2f108fe: am a955314d: Merge "Add missing files to fix libphonenumber for layoutlib." into klp-dev
* commit 'f9021e48bedc9fda9bff4e33244e689fb06e8ecb':
  Add missing files to fix libphonenumber for layoutlib.
2014-02-06 03:15:30 +00:00
Deepanshu Gupta
3a9d89e288 am 1bcc286d: am db0427a0: am 5800b19a: am 50b0ce4e: am fd8cba3a: Merge "Fix the measurement of text bounds." into klp-dev
* commit '1bcc286def646f98747bce2c4dedb0737d5fcf9d':
  Fix the measurement of text bounds.
2014-02-06 03:15:26 +00:00
Deepanshu Gupta
1c06469101 am 1bceb982: am 650d30c5: am b156c019: am d5129e75: am 8a892279: Fix a bug in Nine Patch library.
* commit '1bceb9823f7af258489c91fa201214805744fa4a':
  Fix a bug in Nine Patch library.
2014-02-06 03:15:22 +00:00
Deepanshu Gupta
7bd287b70a am ea2ec77f: am 3adb34ee: am 9fcfbfe2: am 3bf38b41: Merge "Add methods for Time_Delegate" into klp-dev
* commit 'ea2ec77f9538de2ea795d3e257f19e8cff659665':
  Add methods for Time_Delegate
2014-02-06 03:06:38 +00:00
Deepanshu Gupta
6a9cbd5a2d am a0023027: am 23de8dc2: am 28e049ef: am 0db6e6a5: Merge "Optimize layout rendering in layoutlib" into klp-dev
* commit 'a0023027e5b7245e2cef304d96826a7ae1c361aa':
  Optimize layout rendering in layoutlib
2014-02-06 03:06:35 +00:00
Deepanshu Gupta
f9021e48be am bd762373: am 096e4359: am f2f108fe: am a955314d: Merge "Add missing files to fix libphonenumber for layoutlib." into klp-dev
* commit 'bd762373964eb3cb71bdd79cbf82c27faa22699d':
  Add missing files to fix libphonenumber for layoutlib.
2014-02-06 03:06:32 +00:00
Deepanshu Gupta
1bcc286def am db0427a0: am 5800b19a: am 50b0ce4e: am fd8cba3a: Merge "Fix the measurement of text bounds." into klp-dev
* commit 'db0427a0ac986e0823e7bbe9b7c12a97aabe133e':
  Fix the measurement of text bounds.
2014-02-06 03:06:29 +00:00
Deepanshu Gupta
1bceb9823f am 650d30c5: am b156c019: am d5129e75: am 8a892279: Fix a bug in Nine Patch library.
* commit '650d30c5ec3c0b345651a56c45eb334fabf51b17':
  Fix a bug in Nine Patch library.
2014-02-06 03:06:26 +00:00
Deepanshu Gupta
ea2ec77f95 am 3adb34ee: am 9fcfbfe2: am 3bf38b41: Merge "Add methods for Time_Delegate" into klp-dev
* commit '3adb34ee079504b5854d23bc7a38dafc0a985219':
  Add methods for Time_Delegate
2014-02-06 03:03:54 +00:00
Deepanshu Gupta
a0023027e5 am 23de8dc2: am 28e049ef: am 0db6e6a5: Merge "Optimize layout rendering in layoutlib" into klp-dev
* commit '23de8dc2625d4aeb4dc9085c5865ed571f96261a':
  Optimize layout rendering in layoutlib
2014-02-06 03:03:50 +00:00
Deepanshu Gupta
bd76237396 am 096e4359: am f2f108fe: am a955314d: Merge "Add missing files to fix libphonenumber for layoutlib." into klp-dev
* commit '096e43590381b218cec88adeac4261427c19e139':
  Add missing files to fix libphonenumber for layoutlib.
2014-02-06 03:03:45 +00:00
Deepanshu Gupta
db0427a0ac am 5800b19a: am 50b0ce4e: am fd8cba3a: Merge "Fix the measurement of text bounds." into klp-dev
* commit '5800b19a7a3422620cb28e2327a96bf824f5cc9c':
  Fix the measurement of text bounds.
2014-02-06 03:03:41 +00:00
Deepanshu Gupta
650d30c5ec am b156c019: am d5129e75: am 8a892279: Fix a bug in Nine Patch library.
* commit 'b156c0197d052dd4be71ad2b858acc01f50ad49f':
  Fix a bug in Nine Patch library.
2014-02-06 03:03:36 +00:00
Deepanshu Gupta
3adb34ee07 am 9fcfbfe2: am 3bf38b41: Merge "Add methods for Time_Delegate" into klp-dev
* commit '9fcfbfe296d7033ee031171f61b3a33044abee42':
  Add methods for Time_Delegate
2014-02-06 02:59:51 +00:00
Deepanshu Gupta
23de8dc262 am 28e049ef: am 0db6e6a5: Merge "Optimize layout rendering in layoutlib" into klp-dev
* commit '28e049ef73f5d9301a198ac53535442b697b7ef4':
  Optimize layout rendering in layoutlib
2014-02-06 02:59:48 +00:00
Deepanshu Gupta
096e435903 am f2f108fe: am a955314d: Merge "Add missing files to fix libphonenumber for layoutlib." into klp-dev
* commit 'f2f108fe86337a429a0940f264761dbc27f817fe':
  Add missing files to fix libphonenumber for layoutlib.
2014-02-06 02:59:45 +00:00
Deepanshu Gupta
5800b19a7a am 50b0ce4e: am fd8cba3a: Merge "Fix the measurement of text bounds." into klp-dev
* commit '50b0ce4e8ed353ed841782aeb58963bc084f2e16':
  Fix the measurement of text bounds.
2014-02-06 02:59:41 +00:00
Deepanshu Gupta
b156c0197d am d5129e75: am 8a892279: Fix a bug in Nine Patch library.
* commit 'd5129e75968030620a1372e39fcfbc17fe584e17':
  Fix a bug in Nine Patch library.
2014-02-06 02:59:38 +00:00
Deepanshu Gupta
3bf38b4165 Merge "Add methods for Time_Delegate" into klp-dev 2014-02-06 02:06:02 +00:00
Deepanshu Gupta
0db6e6a567 Merge "Optimize layout rendering in layoutlib" into klp-dev 2014-02-06 02:05:42 +00:00
Deepanshu Gupta
a955314d90 Merge "Add missing files to fix libphonenumber for layoutlib." into klp-dev 2014-02-06 02:05:21 +00:00
Deepanshu Gupta
fd8cba3ab8 Merge "Fix the measurement of text bounds." into klp-dev 2014-02-06 02:04:49 +00:00
Deepanshu Gupta
8a892279bd Fix a bug in Nine Patch library.
The nine patches were not drawn correctly if they were not positioned at
the top left corner of the canvas.

Bug: http://b.android.com/29959
Change-Id: Icfed522ea07322a3ee9f3955067d3da26c4b0b5b
2014-02-05 17:16:35 -08:00
Adam Lesinski
94c40a4cf9 resolved conflicts for merge of 1b5b60d6 to master
Change-Id: I2b713a55fcdf02c01afa99f175bf14248f210460
2014-02-04 11:00:03 -08:00
Adam Lesinski
1b5b60d696 am 203356a3: Merge "Add support for multiple asset dirs (-A)" into klp-modular-dev
* commit '203356a34a82bfc759be02dfa1caa4529dce0732':
  Add support for multiple asset dirs (-A)
2014-02-04 18:36:10 +00:00
Adam Lesinski
203356a34a Merge "Add support for multiple asset dirs (-A)" into klp-modular-dev 2014-02-04 18:31:23 +00:00
Alan Viverette
edc4664d60 Fix broken build in BridgeResources
Change-Id: Iec58a2acda6b9538bcb5974d3d5c45ea6e53eac5
2014-02-01 01:43:16 -08:00
Deepanshu Gupta
eb3c5459eb Add methods for Time_Delegate
Bug: http://b.android.com/65359
Change-Id: I7c2d09286d6bcd9899444aaa5a4a5a342e39d923
2014-01-31 19:24:06 -08:00
Narayan Kamath
d49babe50d am 9af95574: am 1cadc07d: Merge "Change ResourceType cookies to int32_t."
* commit '9af955744d4e0d82b61fc99a932b9a5cf28b5df7':
  Change ResourceType cookies to int32_t.
2014-01-31 16:29:19 +00:00
Narayan Kamath
54b100ceed am 98ac6c79: resolved conflicts for merge of cb7cdd50 to klp-modular-dev-plus-aosp
* commit '98ac6c79a430e62a886b3a8278694425b5906300':
  Fix a few more delegate methods in layoutlib.
2014-01-31 15:06:17 +00:00
Narayan Kamath
7c4887f66b Change ResourceType cookies to int32_t.
Also change the order of parameters in ResTable constructors
to avoid ambiguity.

(cherry picked from commit 00b314436f4fdfada4bbf1e79ec12e9fa38aeaf1)

Change-Id: I874c5d03c134dc3c331fba423b5280366296287c
2014-01-31 13:47:27 +00:00
Narayan Kamath
acda961446 Merge "Change ResourceType cookies to int32_t." 2014-01-31 13:46:08 +00:00
Narayan Kamath
5cdbac1e44 am 70986e19: am ab71f8b6: Merge "AArch64: Use of long for pointers in PropertyValuesHolder"
* commit '70986e197bbaf4de4f8126519a75df2b057c3b52':
  AArch64: Use of long for pointers in PropertyValuesHolder
2014-01-31 12:17:09 +00:00
Narayan Kamath
98ac6c79a4 resolved conflicts for merge of cb7cdd50 to klp-modular-dev-plus-aosp
Change-Id: I2fc48fb4bd779042fc9bc00e6c8aca876d4a5f0b
2014-01-31 12:08:17 +00:00
Narayan Kamath
ab71f8b68f Merge "AArch64: Use of long for pointers in PropertyValuesHolder" 2014-01-30 10:37:12 +00:00
Deepanshu Gupta
34b16b854a Fix build
Change-Id: Ifcbf44bc310daee4410ccc6ddf6bdc44565e20da
2014-01-29 19:14:21 -08:00
Deepanshu Gupta
e05bb956ce Fix native method signatures
Some new methods have been added which are yet to be implemented.

Change-Id: Ie5a0657c7ccbe95200c270d5c15b516a385b083b
2014-01-29 17:14:40 -08:00
Deepanshu Gupta
bd28e2d9d3 Manual merge of changes from klp-dev
Manually merged the following changes from klp-dev branch and fixed
merge conflicts:
78cfdf31b7c48589ea3a148ec1d6d573235bc06b
d0581d271e814670d81a6550aa7b1e86864d5710
1f92d7fc0ffa72d7db93244c29a1a6575bb4b318
0baec410c29206dc72d9f5afba5d45827e62c00c
24541255c312ee34f9bf17eb5852cdffd4807065

Change-Id: I426729bb90a26746bfff3a0e4a03ea9f37972528
2014-01-29 16:50:40 -08:00
Narayan Kamath
40582000e0 Fix a few more delegate methods in layoutlib.
Change-Id: Icd7069452b9ac66498af69ec705d12c3acd1c848
2014-01-29 15:05:03 +00:00
Ashok Bhat
fbb35fb39e AArch64: Use of long for pointers in PropertyValuesHolder
Long is used in PropertyValuesHolder class to store native pointers
as they can be 64-bit. Note that jmethodID, a pointer to structures,
is also carried in long rather than int to support 64-bit system.

Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>

(cherry picked from commit 0141e884344a5c267239079d615e1c9d9898a222)

Change-Id: I80408a7227427732db0d8b4c960bcb849b7c8060
2014-01-29 11:07:06 +00:00
Ashok Bhat
0141e88434 AArch64: Use of long for pointers in PropertyValuesHolder
Long is used in PropertyValuesHolder class to store native pointers
as they can be 64-bit. Note that jmethodID, a pointer to structures,
is also carried in long rather than int to support 64-bit system.

Change-Id: Ifb514fc8473d7c41c0d6194fc6eb85d4816b2cd9
Signed-off-by: Marcus Oakland <marcus.oakland@arm.com>
Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
2014-01-29 10:47:27 +00:00
Narayan Kamath
8773d51eae resolved conflicts for merge of b82b2f98 to klp-dev-plus-aosp
Change-Id: Ia110056e5fdd2387c207748b17c5c17d1a18ac5b
2014-01-28 19:47:58 +00:00