1227 Commits

Author SHA1 Message Date
Deepanshu Gupta
1a12b80569 LayoutLib: Fix warnings in ResourceHelper.
Fix intelliJ warnings in ResourceHelper. Most of them just change
boolean checks "x == false" with "!x".

Change-Id: I278645e2807affd8b3183a4a6f5e4fa2ab7b3d21
2014-09-03 11:59:33 -07:00
Deepanshu Gupta
458f2a7bbb LayoutLib: Allow '+' in float attributes.
Earlier change to fix the invalid conditional check inadvertedly
disallowed '+'.

Change-Id: I75a37926681fe3a496482d6fb75161ac75326109
2014-09-03 11:59:22 -07:00
Deepanshu Gupta
ca22ba9eaf Fix invalid conditional check.
The check was always false. This wasn't really a problem since the regex
check later took care of it. But it's just wrong to leave such mistakes
in the code once they are noticed.

Change-Id: I84270a96141428bf15949ce8c881d2e4a2aa95f6
2014-08-26 16:33:14 -07:00
Deepanshu Gupta
bc34eb11f6 enums in dimension attributes.
enums in resources were only read for integer attributes. This change
parses the enums for dimension resources also. This also means that we
don't have to hardcode the resolution for match_parent and wrap_content.

TODO: Fix this for all resource types.

Bug: http://b.android.com/75285
Change-Id: I86752b2322ea017499942a87568ba5c54b8654e4
2014-08-26 14:02:25 -07:00
Deepanshu Gupta
d4cf391c61 Null out "@null" attributes.
Remove references to the  resourceValue for "@null". This saves needless
checking for "@null" every time an attribute is requested.

Change-Id: I816e78619fa0b1ddcacd1ef5ac90765e30a9a44c
2014-08-25 21:04:10 -07:00
Winson Chung
a4ccb86ddc Multiple performance changes to speed recents invocation/app launching time. (Bug 16987565)
- Reverting changes to the existing thumbnail transition to prevent breaking applications
  that currently depend on that transition.  As a result, we need to create a new, hidden,
  aspect-scaled thumbnail transition, and instead use that thumbnail to animate the
  recents header so that we don't have to wait to do that inside the Recents activity.

  In order for this to work, we also have to ensure that the thumbnail surface destruction
  is synchronized with the application that is currently closing (when going down to
  recents) or opening (when coming back up).  The current thumbnail is destroyed when the
  animation ends, but that can be at least 1 frame before the surface for the animating
  window is destroyed.  We change this by deferring destruction of this thumbnail window
  to the animation that is being closed.

  Especially on the way up, not having to wait for us to hide the header before doing the
  transition up can save us the duration of that first animation (> 100ms).

- Other optimizations:
  * No longer creating a new stack view on each transition to calculate the target rect
  * Removing unnecessary call to get the thumbnail when transitioning up/down (the actual
    window does its own animation.
  * We reduced numerous system calls per task by adding a flag to ignore home-stack tasks
    and caching the activity label and icon (and task description icon).  These caches
    follow the same eviction schemes as the thumbnail and icon cache.

- Also tweaked the touch slop for the nav bar swiping gesture to prevent conflicting with
  tapping on home (Bug 17109581)

Change-Id: Ica697aad788051a9203edd9351c583e1cb038a71
2014-08-25 18:52:32 -07:00
Deepanshu Gupta
0774bc4605 Remove ANDROID_BUILD_TOP from intelliJ path variables.
The variable is not actually needed and it makes working with different
API levels a lot easier since everything now depends on $PROJECT_DIR$.

This change also makes the tests more robust by improving the way it
tries to find the SDK.

Change-Id: I3502ad4a0ba85fd88b497e47964fddb2a89e520c
2014-08-25 15:47:28 -07:00
Deepanshu Gupta
151b68ddc2 Fix "@null" resource values in LayoutLib.
Bug: http://b.android.com/74072
Change-Id: Ib84906d86772ac3df2407e71ad2167797bec4542
2014-08-19 17:16:48 -07:00
Deepanshu Gupta
553a4e9138 Add time to status bar and fix wifi icon.
Add vector drawable for wifi icon. Also add time to the status bar.

Change-Id: I01da833087a607e9bb6ff085929e3844990179f8
2014-08-18 16:46:29 -07:00
Deepanshu Gupta
6e8a98c8b7 am a4ceb9e6: am 32faabbe: Layoutlib: Update wifi and battery icon for KK
* commit 'a4ceb9e64cd1ee6302e41c7799ebb6610af96d0e':
  Layoutlib: Update wifi and battery icon for KK
2014-08-18 18:06:07 +00:00
Deepanshu Gupta
a4ceb9e64c am 32faabbe: Layoutlib: Update wifi and battery icon for KK
* commit '32faabbe14252397b35516caa9c0d0245bfcc719':
  Layoutlib: Update wifi and battery icon for KK
2014-08-16 02:23:56 +00:00
Deepanshu Gupta
32faabbe14 Layoutlib: Update wifi and battery icon for KK
Change-Id: Ic5c80e83366bb7672049a6bf726d11cf6717f400
(cherry picked from commit 59eedf528ca29a32b6d7f358f5076929f8fbb164)
2014-08-16 01:11:26 +00:00
Jorim Jaggi
84a3e7aacf Use different unlock animation when going to full shade
Also fixes a bug that the notify flag was not reset, and fix the
transition for the phone/camera affordance (in these cases, no
animation is needed).

Bug: 15991916
Change-Id: Idbb4fa40f86bda597cd66cc38da838ef4f75514d
2014-08-14 12:29:25 +00:00
Deepanshu Gupta
aabf346d44 Merge "Add KitKat wifi and battery icons." into lmp-dev 2014-08-14 00:12:29 +00:00
Deepanshu Gupta
84cc05cacd Add KitKat wifi and battery icons.
This adds wifi and battery icons for Gingerbread and KitKat. This also
improves the icon resolution code by extracting it out in its own class.
The resources are now organized such that each API level resource
directory is used as a backup for all API levels lower than itself.

Change-Id: I937c83638adcc9fa8cd407e0a3023c3abe95530d
2014-08-13 23:13:33 +00:00
Deepanshu Gupta
0e4be25409 Whitelist fonts instead of blacklist.
A list of all fonts bundled with the SDK is generated. Load this file to
know which fonts are missing from the SDK.

Change-Id: I1554f1baec842ccdde3b21a93008437e9bac9353
2014-08-12 15:00:58 -07:00
Deepanshu Gupta
556f941f55 Merge "Don't show warnings for fonts not bundled." into lmp-dev 2014-08-12 16:54:46 +00:00
Deepanshu Gupta
e644ff8d92 Don't show warnings for fonts not bundled.
The extended font set, used on Nexus 5, new Nexus 7 etc., uses OpenType
CFF fonts which don't work well with Java. These fonts are deliberately
excluded from the SDK build.

This change skips the warnings for the missing fonts. However, we still
show warnings for other fonts that failed to load. If the set of fonts
bundled with the SDK changes, we will need to update the list of missing
fonts in FontFamily_Delegate.java.

Change-Id: I3197b5350d048daa09512e8024188909179b1799
2014-08-11 18:11:37 -07:00
Deepanshu Gupta
99d90a6210 Resolve color xml attributes properly.
Color attributes were not being converted to int properly. The
conversion to int was a simple string to int using base 16. This change
resolves the colors as per #RGB, #ARGB, #RRGGBB or #AARRGGBB format
depending on the length of the attribute. All values that begin with '#'
are treated as colors.

Bug: http://b.android.com/73845
Change-Id: I8ad089b821af1e290b9b95771b50213fe2fdd784
2014-08-12 09:57:27 -07:00
Deepanshu Gupta
4e01c59e6c am 6ebeefa0: am 904d7711: am 7b561be3: am 09c3c2ed: am ba31d628: am db94ea9e: am f970d2c2: am 79c3f678: am 206c691b: am 72cf03a2: am 3a544a81: resolved conflicts for merge of a232a68d to jb-mr1.1-docs
* commit '6ebeefa04cb3c360d8028eb77e60bacf8a800cb1':
  Fix SystemProperties in LayoutLib.
2014-08-06 22:59:08 +00:00
Deepanshu Gupta
6ebeefa04c am 904d7711: am 7b561be3: am 09c3c2ed: am ba31d628: am db94ea9e: am f970d2c2: am 79c3f678: am 206c691b: am 72cf03a2: am 3a544a81: resolved conflicts for merge of a232a68d to jb-mr1.1-docs
* commit '904d77118bab63139174470ef728ca9a53e75a15':
  Fix SystemProperties in LayoutLib.
2014-08-06 22:51:47 +00:00
Deepanshu Gupta
7b561be3a6 am 09c3c2ed: am ba31d628: am db94ea9e: am f970d2c2: am 79c3f678: am 206c691b: am 72cf03a2: am 3a544a81: resolved conflicts for merge of a232a68d to jb-mr1.1-docs
* commit '09c3c2edb2391d3ffed9a07ec360b9f75b9f7637':
  Fix SystemProperties in LayoutLib.
2014-08-06 22:37:10 +00:00
Deepanshu Gupta
db94ea9ed0 am f970d2c2: am 79c3f678: am 206c691b: am 72cf03a2: am 3a544a81: resolved conflicts for merge of a232a68d to jb-mr1.1-docs
* commit 'f970d2c201649843b8d51d094b865f16b15bc0bc':
  Fix SystemProperties in LayoutLib.
2014-08-06 22:21:54 +00:00
Deepanshu Gupta
f970d2c201 am 79c3f678: am 206c691b: am 72cf03a2: am 3a544a81: resolved conflicts for merge of a232a68d to jb-mr1.1-docs
* commit '79c3f678d21f6b3c058623217cbe5dd57a553fe8':
  Fix SystemProperties in LayoutLib.
2014-08-06 22:18:04 +00:00
Deepanshu Gupta
72cf03a27a am 3a544a81: resolved conflicts for merge of a232a68d to jb-mr1.1-docs
* commit '3a544a81b3d2d529b2995f4b5db2077760d440b5':
  Fix SystemProperties in LayoutLib.
2014-08-06 22:05:38 +00:00
Deepanshu Gupta
3a544a81b3 resolved conflicts for merge of a232a68d to jb-mr1.1-docs
Change-Id: I1ea220e3e0a81880db68abab87beab56dc4a336c
2014-08-06 15:00:14 -07:00
Deepanshu Gupta
a232a68d4c resolved conflicts for merge of 5476cfee to jb-mr1-dev
Change-Id: I5197271e6fdd36fed9ca9f9b7221d9a99141a4b4
2014-08-06 14:41:02 -07:00
Deepanshu Gupta
5476cfee6b am 505c675c: Fix SystemProperties in LayoutLib.
* commit '505c675c3a536ac7c6ad264eb62542537532119c':
  Fix SystemProperties in LayoutLib.
2014-08-06 21:28:24 +00:00
Deepanshu Gupta
505c675c3a Fix SystemProperties in LayoutLib.
Not all System Properties were used via Build class. Also, properties
like SDK_INT which called SystemProperties directly were not initialized
properly.

This change is essentially cherry picking of the relevant parts from the
following commits:
984749bf75c9ce9d3401b8410ea7d6276544b6ee
167bc25bceea9280bbe4858db4cb8233f86ce325

Bug: http://b.android.com/73046
Change-Id: Ia0fb467ee6d5fdedda500d57d02be20006f115df
2014-08-05 17:47:30 -07:00
Svetoslav
4f6a6c48a4 Fix build
Change-Id: I96eec52472bec122074b0ec2ee051c1b55eaa8f4
2014-08-05 15:17:49 -07:00
Deepanshu Gupta
70d1574db9 Get filename from File faster
Use the direct call from a File object to get the filename instead of
going through Path which depends on Java 7 making the LayoutLib tests
incompatible with Java 6.

Change-Id: I815895eedbc10245ee09bdb53b11e5548b076aad
2014-08-05 14:34:56 -07:00
Deepanshu Gupta
b0d767dcf1 Skip loading otf fonts on Java 6
Change-Id: I9668b84812e9be333d10603657dd911024fc292d
2014-08-05 14:19:27 -07:00
Deepanshu Gupta
0c5cd96522 Add SystemProperties native method implementations.
Bug: http://b.android.com/73046
Change-Id: Ia695e7beb81f426509b646cfd929201f7e0a4ade
2014-08-05 21:13:00 +00:00
Deepanshu Gupta
45aab0eb8f LayoutLib: Use ICU's line break algo.
Change-Id: I7e5b0ab7423a72f5a4b0e1163d0a537f0b03ba07
2014-08-05 21:12:16 +00:00
Deepanshu Gupta
b80e42f93f Replace more Locale methods.
This change replaces some methods of java.util.Locale. Some of them were
added in 1.7 and some are not present in the Desktop VM.

Change-Id: Ifdf8451bb2acf55e01dce8b5e15c40c8160107cc
2014-08-04 23:02:02 +00:00
Deepanshu Gupta
1840e8f2c7 Fix Delegates
Change-Id: I2b6a6b679b7a5b2532b76b723155bc2763b70768
2014-08-04 23:00:43 +00:00
Deepanshu Gupta
86eb8b4e29 Add testing framework to LayoutLib.
This change adds an end to end test which loads the framework resources
and a test app and ensures that no exceptions or warnings are thrown.

The change also adds project configuration for intelliJ.

Change-Id: I7b67c0f1a2af2dac95df7f3231cab537b9826d7d
2014-08-04 22:58:39 +00:00
Sander Alewijnse
a87863a8bd Fix deadlock window manager and device policy manager.
Removed all communication from wm to device policy manager.
Added initialization of cache in wm by dpms.

Change-Id: Ifa0b8bfcd625464b156d5cc0fb66d342deda1c27
2014-07-31 09:16:46 +00:00
Sander Alewijnse
549d39e549 am f3c523e0: am ce1088a6: am fcb490a2: Merge "Add Device Policy API to disable screen capture." into lmp-dev
* commit 'f3c523e06217b19ae8389f9ca8be71ed2cd9fe7b':
  Add Device Policy API to disable screen capture.
2014-07-23 17:18:27 +00:00
Sander Alewijnse
d2a1eec400 Add Device Policy API to disable screen capture.
WindowManager will set secure flag on SurfaceControl for
all windows of a flagged user to prevent screen capture.
API is consistent with the camera disable API.

Change-Id: Ib180f67f1ad827b6f4aca2af615274256cce58f4
2014-07-23 13:44:28 +00:00
Deepanshu Gupta
0804e0aded am a9e488a6: am d8d3e87c: am 4627c98d: Merge "Fix style resolution for styles with \'.\' [DO NOT MERGE]" into klp-dev
* commit 'a9e488a6d2b20ecc91412072a5f39022d7fe6926':
  Fix style resolution for styles with '.' [DO NOT MERGE]
2014-07-18 21:53:37 +00:00
Deepanshu Gupta
87234e8544 am 9c48ab82: am ccf7b2aa: am 5af7324a: Fix style resolution for styles with \'.\' [DO NOT MERGE]
* commit '9c48ab82084828087c47086f2379b4927ec057e2':
  Fix style resolution for styles with '.' [DO NOT MERGE]
2014-07-18 21:50:15 +00:00
Deepanshu Gupta
a9e488a6d2 am d8d3e87c: am 4627c98d: Merge "Fix style resolution for styles with \'.\' [DO NOT MERGE]" into klp-dev
* commit 'd8d3e87cf339deaf890e4b083d09b074065cd35f':
  Fix style resolution for styles with '.' [DO NOT MERGE]
2014-07-18 21:48:05 +00:00
Deepanshu Gupta
d7f2bf067f am f75489f2: am c425c438: am 710a55b4: Fix default level flags for bidi. [DO NOT MERGE]
* commit 'f75489f2f1f2dc4f75205f4b242800777bf7d5ec':
  Fix default level flags for bidi. [DO NOT MERGE]
2014-07-18 21:45:47 +00:00
Deepanshu Gupta
9c48ab8208 am ccf7b2aa: am 5af7324a: Fix style resolution for styles with \'.\' [DO NOT MERGE]
* commit 'ccf7b2aac600b6069f03f7f420872b64cc5e6726':
  Fix style resolution for styles with '.' [DO NOT MERGE]
2014-07-18 21:45:28 +00:00
Deepanshu Gupta
610341b3eb am 95bbeb96: am b8e4e8e1: am d3ac01ff: Merge "Fix style resolution for styles with \'.\' [DO NOT MERGE]" into jb-mr1.1-dev
* commit '95bbeb967243d453bf793cd06dd2dd914667fee9':
  Fix style resolution for styles with '.' [DO NOT MERGE]
2014-07-18 21:45:19 +00:00
Deepanshu Gupta
f75489f2f1 am c425c438: am 710a55b4: Fix default level flags for bidi. [DO NOT MERGE]
* commit 'c425c438a38f9065c4fbae76602bce66563950c0':
  Fix default level flags for bidi. [DO NOT MERGE]
2014-07-18 21:39:42 +00:00
Deepanshu Gupta
ccf7b2aac6 am 5af7324a: Fix style resolution for styles with \'.\' [DO NOT MERGE]
* commit '5af7324ace4f318d7395b680beabec7a0f0e39b3':
  Fix style resolution for styles with '.' [DO NOT MERGE]
2014-07-18 21:39:35 +00:00
Deepanshu Gupta
696eb4da44 am c39916f7: am 37f54f4c: am 357ebfc5: Fix default level flags for bidi. [DO NOT MERGE]
* commit 'c39916f7dadb2f8be2e7523c5ceade9f04a94e1e':
  Fix default level flags for bidi. [DO NOT MERGE]
2014-07-18 21:39:33 +00:00
Deepanshu Gupta
4627c98da4 Merge "Fix style resolution for styles with '.' [DO NOT MERGE]" into klp-dev 2014-07-17 21:09:48 +00:00