89526 Commits

Author SHA1 Message Date
Deepanshu Gupta
60b52ee929 Fix class name for OverflowMenuButton [DO NOT MERGE]
Change-Id: Ie3e709e7aadb2193397df8befef0c55624d7e4e3
(cherry picked from commit f61bd0020642cf0868486d307f2e68c8c02d6102)
2014-05-04 13:30:33 -07:00
Deepanshu Gupta
7c6f6481f4 Add special system view cookie to OverflowButton. [DO NOT MERGE]
Add a special view cookie to enable the IDE to identify the overflow
menu button in the Action Bar.

Change-Id: Ida3ed776afb8c9fa8af23b73d4cf6d47eef0ab87
(cherry picked from commit d558ebdb433af498a87e25673f7dd828a0e7439a)
2014-05-04 13:30:11 -07:00
Deepanshu Gupta
22de7c4c3d Fix style warnings in RenderSessionImpl [DO NOT MERGE]
Change-Id: I9d3cb23e4ea692f737a3e3d6c18cc8de18b66a3c
(cherry-picked from commit a98121ef5251b5ebdb8c1b0b6780d570844284b2)
2014-05-04 13:29:51 -07:00
Deepanshu Gupta
094fd8ecb6 Add view cookies for action bar menus. [DO NOT MERGE]
The change adds the view cookies for the menus rendered in the action
bar. This enables the IDE to map the menu to the relevant XML Tag in the
menu xml and show the highlighting accordingly.

The change also contains a bugfix where a method wasn't renamed
properly.

Change-Id: Idcfc263a8ebe0a4f25afa3a1eb085fa628fd03ca
(cherry-picked from commit 7704837947455909f295b088a3d15a20e107dbd7)
2014-05-04 13:29:14 -07:00
Deepanshu Gupta
56759be896 Overflow menu popup for Action Bar in Layoutlib [DO NOT MERGE]
In addition to the cherrypicked changes, appropriate changes due to
changes to com.android.internal.widget.ActionBarView are made.

The icon used in the Action Bar may not always be the right one due to
the above resolution.

Change-Id: Ib7cc314079099c010f7d53849e204db36c410357
(cherry-picked from commit 1b87390c9426c4bc9119829e9375d712dfde11c3)
2014-05-02 16:23:14 -07:00
Deepanshu Gupta
fe38489f67 Action bar rendering in layoutlib [DO NOT MERGE]
This also makes a couple of changes to the framework:
1. ShareActionProvider - Use edit mode to execute activity chooser code.
2. ActionBarImpl - add a new constructor for use by layoutlib.

This also relies on some changes to the plugin to pass the correct params.

Change-Id: Ia30fef816afd91ec1e439734d56b59b1323bfee2
(cherry-picked from 20e0695b554e883b095f5223be10b6e1097db49f)
2014-05-02 16:23:14 -07:00
Deepanshu Gupta
cc5340bc63 Add missing dependency in layoutlib build file [DO NOT MERGE]
Add missing dependency on built_ext_data

Change-Id: I4e7cca7f6cbc7f5b7416ac9b85a9aec01e61ecd4
(cherry-picked from commit b85d30a2c88b6a23e251347b14a75456c4daeca9)
2014-05-02 16:23:14 -07:00
Deepanshu Gupta
76dccb7f43 Fix theme/style resolution in Layoutlib [DO NOT MERGE]
Change-Id: Icfb91e566666408802dadc0e2070991151b16b9d
(cherry picked from commit 3c00b28bf60ab01b449e16df045238f4bae4d700)
2014-05-02 16:23:13 -07:00
Deepanshu Gupta
1ed75bde09 Remove references to non-std Java classes. [DO NOT MERGE]
This change adds a substitute for the Charsets class in java namespace.
The original cherry pick of the change had dropped this substitute. But
the substitute is required for bug b.android.com/59732

The original cherry-pick is 6335590aa8997944cc7fb358a315dbb9b789f87f and
the original change is 81f74f4bc96ea4266cebe1b785d095558f540800
The original Change-Id is Iac5b272652e2780c9bb72d19f415d150948ca589

Change-Id: I76c87c74ee088778b37d1a7a7d531e0fde5c758f
2014-05-02 16:22:14 -07:00
Deepanshu Gupta
6136af326e Fix visitFieldInsn in layoutlib_create. [DO NOT MERGE]
The bug caused some classes to be missed when computing the dependencies
of the existing classes.

Change-Id: I7285ff67e016ce5d73a8550501f49acc73cfadfa
(cherry-picked from 6f9baea47757fef4745de434e09bd552fddc1f03)
2014-05-02 15:38:42 -07:00
Deepanshu Gupta
2bd65db15f Layoutlib tests now check methods return value [DO NOT MERGE]
The change is a cherry-pick from klp-dev.

The change also fixes the errors found by fixing the tests.

Change-Id: I87cef323c4eaee4e9f60475f01156b276593fa50
(cherry-picked from commit 89fdc0c556cf0fe2562fb8f0476e03cd51045164)
2014-05-02 14:19:47 -07:00
Deepanshu Gupta
6df2860b23 Add missing files to fix libphonenumber for layoutlib. [DO NOT MERGE]
Change-Id: I8102da6c1c4625e887293a8823770d199521c53f
(cherry-picked from 8a16f8e29a67c383e065ba9c47d5d1e80d7d2db9)
2014-05-02 12:03:46 -07:00
Deepanshu Gupta
bcbeaf83ca Set default text style in layoutlib as NORMAL [DO NOT MERGE]
If a style doesn't specify text style (normal/bold/italic/bold-italic)
then default to normal instead of throwing an error.

Bug: http://b.android.com/61358
Change-Id: I0138c73807a5ff6e4d938a99ece3044333110aa1
(cherry-picked from c63e87d53deb24c4286036313db11719173419b3)
2014-05-02 11:46:42 -07:00
Deepanshu Gupta
5be65fda15 Fix sans-serif-thin and sans-serif-light fonts in layoutlib. [DO NOT MERGE]
For these font families, text was always rendered as italic. This
changeset fixes the issue.

Bug: http://b.android.com/57221
Change-Id: Ic8a299bd1e555f5bb914cd3d2fe72917ec7f471a
(cherry-picked from 5fb41528a6192c41f7e2bb30161cc5af6061d5b8)
2014-05-02 11:46:42 -07:00
Deepanshu Gupta
ec4623d0d4 Improve text rendering and measurement. [DO NOT MERGE]
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
(cherry-picked from 88301948c92fe1261cfa19383d4aaa5d5d0195ac)
2014-05-02 11:46:42 -07:00
Deepanshu Gupta
2a82a48fef Fix the measurement of text bounds. [DO NOT MERGE]
Bug: 12366230
Change-Id: I203b678363dc7b688c744503ee10216baca658a9
(cherry-picked from eb1fae940df0117deb0dc891f9f9bfeca35b1ac1)
2014-05-02 11:46:41 -07:00
Deepanshu Gupta
5bb3414d14 Fix a bug in Nine Patch library. [DO NOT MERGE]
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
(cherry-picked from ee1187a94feb61adbfade2505b2f92418a1b1038)
2014-05-02 11:46:41 -07:00
Deepanshu Gupta
5712b5fc3f Optimize layout rendering in layoutlib [DO NOT MERGE]
The height of a layout should be zero if it is assigned a layout_weight.
This way, the layout is measured only once and prevents spurious errors.

Bug: https://code.google.com/p/android/issues/detail?id=58398
Change-Id: If49a7480e5eb82cb86780e00f2f5b65ee053fc2a
(cherry-picked from 9e5e993c7969ad60ff70cfdcf707247f38a705a1)
2014-05-02 11:46:41 -07:00
Deepanshu Gupta
02cde9ceeb Add methods for Time_Delegate [DO NOT MERGE]
Bug: http://b.android.com/65359
Change-Id: I7c2d09286d6bcd9899444aaa5a4a5a342e39d923
(cherry-picked from ddb7f3273c3c00e6520794dcaabdaad20fd98e26)
2014-05-02 11:46:40 -07:00
Deepanshu Gupta
9d7b516557 Add libphonenumber to layoutlib.jar. [DO NOT MERGE]
Issue: http://b.android.com/59497
Change-Id: Ief11e602703b6041db66241f1699cc1de72e65a5
(cherry picked from commit 317f304893c58c5e50255bd712448ca233ae5cec)
2014-05-02 11:46:40 -07:00
Deepanshu Gupta
689c0dfe72 Fix NPE in layoutlib. [DO NOT MERGE]
Change-Id: I36623304d83b344ea078044001577b8005a63c02
(cherry picked from commit 80c55109b6351049498df294234dc0a75e75ec44)
2014-05-02 11:46:40 -07:00
Deepanshu Gupta
083d1562e0 Fix text size in Fake Action Bar. [DO NOT MERGE]
The density multiplier was being applied twice to the title text in
the fake action bar.

Bug: 11436018
Change-Id: Id74c11037cb43d01f6cd79126623c84edfc37aaf
(cherry-picked from 0b7d80765c21dbd9294a0245f92a655fdd61514e)
2014-05-02 11:46:39 -07:00
Deepanshu Gupta
80c668f2a0 Remove references to non-std Java classes. [DO NOT MERGE]
Do not add the non-standard Java classes. Updates the references to all
non-standard classes to new classes in
com.android.tools.layoulib.create package. This also treats
java.lang.AutoCloseable which is part of Java 7 similarly so that we can
still run on Java 6.

This also adapts the cherrypick for this branch by updating references
to the non-standard Java classes present in this branch.

Change-Id: Iac5b272652e2780c9bb72d19f415d150948ca589
(cherry picked from 0b7d80765c21dbd9294a0245f92a655fdd61514e)
2014-05-02 11:46:39 -07:00
Deepanshu Gupta
6335590aa8 Fix DatePicker and Calendar widget in layoutlib. [DO NOT MERGE]
Issue: https://code.google.com/p/android/issues/detail?id=59732

Change-Id: I281b3fdad88c591281a3645592c84f3e2cb61d09
(cherry picked from commit 81f74f4bc96ea4266cebe1b785d095558f540800)
2014-05-02 11:46:38 -07:00
Deepanshu Gupta
11ee746dc5 Layoutlib: Update the wifi icon in the status bar. [DO NOT MERGE]
Issue: https://code.google.com/p/android/issues/detail?id=60993

Change-Id: Ia43ed40b42c79f67dcd5809b827d4fecbc823c25
(cherry picked from commit 9cb5f5b5233f2331748d108d71f4b685762f32a7)
2014-05-02 11:46:38 -07:00
Deepanshu Gupta
44bcd64e5b Fix CalendarView to show the right labels. [DO NOT MERGE]
Change-Id: I95431f1054678d4192bd1621c1f69b29268f55e9
(cherry picked from commit 083e3caf66c21f7cc9511db479726c38d90e2d2f)
2014-05-02 11:46:37 -07:00
Deepanshu Gupta
87be67f917 Fix layoutlib [DO NOT MERGE]
Fix a NPE.

The cherry-pick differs slightly from the original to remove changes not
relevant to the current branch.

Bug: 11140701
Change-Id: Id92fc5359acf6dde1bcdbc781aaf637fdb6eecbf
(cherry-picked from 28873c1f008f4fe24441923e14f30e55d6f0967a)
2014-05-02 11:46:37 -07:00
Deepanshu Gupta
7b5d54f05b Fix ClassCastException when rendering ListView [DO NOT MERGE]
Bug: b.android.com/59300
Change-Id: Ia350adb3308daa8170bff755302760790163c811
(cherry picked from commit 54d88f7678387a6eb871ec2dccd36af4ff35b1fe)
2014-05-02 11:46:37 -07:00
Deepanshu Gupta
ce22440d4c Fix text rendering [DO NOT MERGE]
There are still some errors
1. Little vertical clippping for extra tall glyphs.
2. Breaking into scripts isn't perfect which results in incorrect layout
of text.

Change-Id: I54de3c05eca5e8affb1135c120eea24c3afe8a47
(cherry picked from commit 92a169fa2e1bab7d93089196c33c2de12f9eae82)
2014-05-02 11:46:05 -07:00
Deepanshu Gupta
bd9e181b29 Fix layout rendering for RTL locales [DO NOT MERGE]
This changeset adds the framework resources for RTL locales and mirrors
the layout if the application is RTL aware.

Use ICU to check the character orientation of the locale - right to left
or left to right. Set the layout direction on the top level layout
accordingly. Also, load the RTL resources for Nav Bar when the locale is
RTL.

Change-Id: I1ed0d516ab64120a0abca413ba678036661508f8
(cherry picked from commit eee0ea7a0b85ea6345eb7b8da5dbf17306c7339c)
2014-05-02 11:45:37 -07:00
Deepanshu Gupta
d4875e19f5 Add orientation to configuration for layoutlib. [DO NOT MERGE]
Update the configuration with the device orientation before rendering.

Change-Id: Icd40901204fd13f90b18353e53a15e25e5b2176c
(cherry picked from commit d97d60c0fa4613a47d591d45736299702be1cc7a)
2014-05-02 11:45:00 -07:00
Deepanshu Gupta
d1084cc025 Add missing native methods. [DO NOT MERGE]
Also contains fixes for native methods specific to the branch.

Change-Id: I7b34e2ec0164520efc658053a80f307791a992b1
(cherry-picked from commit: 279c00e8e0abb20f7e10577c77937c058da080bf)
2014-04-28 15:18:05 -07:00
Kenny Root
02bc4b0423 am 4a62a6dc: am 451ed5f0: am 3ecaa88d: am ecb013db: Merge "Use hidden API to validate APK chains" into jb-dev
* commit '4a62a6dce9a4b48f1c1c64e47a22d2319b852acd':
  Use hidden API to validate APK chains
2014-04-18 22:21:37 +00:00
Kenny Root
4a62a6dce9 am 451ed5f0: am 3ecaa88d: am ecb013db: Merge "Use hidden API to validate APK chains" into jb-dev
* commit '451ed5f077b9f95deae809ae620bc210c253b922':
  Use hidden API to validate APK chains
2014-04-18 22:14:14 +00:00
Kenny Root
451ed5f077 am 3ecaa88d: am ecb013db: Merge "Use hidden API to validate APK chains" into jb-dev
* commit '3ecaa88d83d04a0fd55b494829badbb41016f5a1':
  Use hidden API to validate APK chains
2014-04-18 21:33:04 +00:00
Kenny Root
3ecaa88d83 am ecb013db: Merge "Use hidden API to validate APK chains" into jb-dev
* commit 'ecb013dbff5e33b95c49015fa375579e055911ae':
  Use hidden API to validate APK chains
2014-04-18 18:14:32 +00:00
Kenny Root
ecb013dbff Merge "Use hidden API to validate APK chains" into jb-dev 2014-04-18 17:12:40 +00:00
Kenny Root
16c6b177ee Use hidden API to validate APK chains
Bug: 13678484
Change-Id: I28dedab74b0e24d47ab9f2190298156c909e9d54
2014-04-17 14:03:33 -07:00
Robert Greenwalt
72f9b3084c am 4bc58bd2: am c0d94e7a: am f52d1a56: am fe38ff8d: DO NOT MERGE Sanitize WifiConfigs
* commit '4bc58bd255f3a0cd9bb3a8f7a916a3cccb96ce6b':
  DO NOT MERGE Sanitize WifiConfigs
2014-04-07 19:51:34 +00:00
Robert Greenwalt
4bc58bd255 am c0d94e7a: am f52d1a56: am fe38ff8d: DO NOT MERGE Sanitize WifiConfigs
* commit 'c0d94e7ac6353757b7fa4d7f6fce75c5719c7e6e':
  DO NOT MERGE Sanitize WifiConfigs
2014-04-07 19:47:49 +00:00
Robert Greenwalt
c0d94e7ac6 am f52d1a56: am fe38ff8d: DO NOT MERGE Sanitize WifiConfigs
* commit 'f52d1a56af8cc769c1019fbb0d8b7a2254fcc01b':
  DO NOT MERGE Sanitize WifiConfigs
2014-04-07 19:42:49 +00:00
Robert Greenwalt
ebf23a8d9e am 74acf23a: am 3c417fbf: Merge "DO NOT MERGE Sanitize WifiConfigs" into jb-mr1-dev
* commit '74acf23a1eef75628c8fa9e2ff7ba08ed4258558':
  DO NOT MERGE Sanitize WifiConfigs
2014-04-07 19:42:32 +00:00
Robert Greenwalt
f52d1a56af am fe38ff8d: DO NOT MERGE Sanitize WifiConfigs
* commit 'fe38ff8d36c4fa2e18f4c786692eeea5ebd94e9f':
  DO NOT MERGE Sanitize WifiConfigs
2014-04-07 19:36:54 +00:00
Robert Greenwalt
74acf23a1e am 3c417fbf: Merge "DO NOT MERGE Sanitize WifiConfigs" into jb-mr1-dev
* commit '3c417fbf21133340cbbe3539d87c453f81ae3a9d':
  DO NOT MERGE Sanitize WifiConfigs
2014-04-07 19:36:44 +00:00
Robert Greenwalt
3c417fbf21 Merge "DO NOT MERGE Sanitize WifiConfigs" into jb-mr1-dev 2014-04-07 19:30:10 +00:00
Craig Mautner
fc80fbe3d5 am 7bd0b652: am 4bdab6bb: Fix FLAG_DISMISS_KEYGUARD not working
* commit '7bd0b65233d0ef34114ecb93d734dfe4351f470d':
  Fix FLAG_DISMISS_KEYGUARD not working
2014-04-01 19:24:23 +00:00
Craig Mautner
7bd0b65233 am 4bdab6bb: Fix FLAG_DISMISS_KEYGUARD not working
* commit '4bdab6bb4c55661d4915518b1190e30c4633c6a5':
  Fix FLAG_DISMISS_KEYGUARD not working
2014-04-01 19:18:36 +00:00
Craig Mautner
4bdab6bb4c Fix FLAG_DISMISS_KEYGUARD not working
Fixes bug 13672528.

Change-Id: I0292aee51d5d8755bbae926e5f0e6af1e22107dc
2014-04-01 12:10:54 -07:00
Robert Greenwalt
e1549ae364 DO NOT MERGE Sanitize WifiConfigs
Do this both on input from apps (giving error) and between wifi and
ConnectivityService (ignoring bad data).  This means removing all
addresses beyond the first and all routes but the first default and
the implied direct-connect routes.

We do this because the user can't monitor the others (no UI), their
support wasn't intended, they allow redirection of all traffic
without user knowledge and they allow circumvention of legacy VPNs.

This should not move forward from JB as it breaks IPv6 and K has
a more resilient VPN.

Bug:12663469
Change-Id: I80912cc08ffa1e4b63008c94630006cf316e7a64
2014-03-28 14:54:53 -07:00
Robert Greenwalt
fe38ff8d36 DO NOT MERGE Sanitize WifiConfigs
Do this both on input from apps (giving error) and between wifi and
ConnectivityService (ignoring bad data).  This means removing all
addresses beyond the first and all routes but the first default and
the implied direct-connect routes.

We do this because the user can't monitor the others (no UI), their
support wasn't intended, they allow redirection of all traffic
without user knowledge and they allow circumvention of legacy VPNs.

This should not move forward from JB as it breaks IPv6 and K has
a more resilient VPN.

Bug:12663469
Change-Id: I98c0672a6d9c8d5bc4f160849aa0fa182073216b
2014-03-28 11:38:33 -07:00