3409 Commits

Author SHA1 Message Date
Jeff Sharkey
047d7f0c6d Relax Handler lint check slightly.
This way we avoid yelling at support library APIs.

Change-Id: I20bab887fe8b1c7f4d197273ddedbcda48c5a429
2015-02-25 12:06:40 -08:00
Chad Jones
1fb5528643 resolved conflicts for merge of 57bb5f5c to master
Change-Id: Id5dfe7fc919305658312771a031c0764cef5515c
2015-02-23 21:19:58 -08:00
Deepanshu Gupta
a13ca400d1 am 01d5286f: am 8f022fd3: am 5ed4fc9e: am 99142d29: am 3f8e2b93: am 30a67cd1: Merge "Set forceFramework correctly for included layouts." into lmp-dev
* commit '01d5286f388303551a2eb8f57e210f6d7a690cb5':
  Set forceFramework correctly for included layouts.
2015-02-24 04:52:35 +00:00
Joe LaPenna
57bb5f5c8b am c0c39516: Merge "Hold a wake lock while dozing when display updates are pending." into lmp-mr1-modular-dev
* commit 'c0c395162ff14b83694158663470ad60e065d9a9':
  Hold a wake lock while dozing when display updates are pending.
2015-02-24 00:46:48 +00:00
Joe LaPenna
c0c395162f Merge "Hold a wake lock while dozing when display updates are pending." into lmp-mr1-modular-dev 2015-02-24 00:37:15 +00:00
George Mount
2af44f8417 Add fraction resource parameters. 2015-02-23 16:18:38 -08:00
George Mount
9a1918ff96 Add quantity and format string easy formats. 2015-02-23 15:43:53 -08:00
Deepanshu Gupta
68501b87d2 Better error msg for StateList/Hexadecimal Color.
Throw a better error message when resolving a hexadecimal color value
but the user gave a Color State List. The two are easy to confuse since
the only way to distinguish between the two is to look at the
definition.

Bug: http://b.android.com/70110
Change-Id: Ic78962bd0674a92296a0fdd0de184cfe4d85a8e4
2015-02-23 12:00:38 -08:00
Deepanshu Gupta
01d5286f38 am 8f022fd3: am 5ed4fc9e: am 99142d29: am 3f8e2b93: am 30a67cd1: Merge "Set forceFramework correctly for included layouts." into lmp-dev
* commit '8f022fd323063f9cebb481be650db40cf5e486f3':
  Set forceFramework correctly for included layouts.
2015-02-23 19:29:31 +00:00
Deepanshu Gupta
99142d2982 am 3f8e2b93: am 30a67cd1: Merge "Set forceFramework correctly for included layouts." into lmp-dev
* commit '3f8e2b9302fba0ace67fb0459d6ffb0884c4d80b':
  Set forceFramework correctly for included layouts.
2015-02-23 19:09:14 +00:00
Deepanshu Gupta
3f8e2b9302 am 30a67cd1: Merge "Set forceFramework correctly for included layouts." into lmp-dev
* commit '30a67cd17af03e53b8be5638f7f70d2989a7cd78':
  Set forceFramework correctly for included layouts.
2015-02-23 19:03:29 +00:00
Deepanshu Gupta
33c1c07796 Set forceFramework correctly for included layouts.
Bug: http://b.android.com/151326
Change-Id: I759f6e1a7a1c83bbbb771ddbb92843a105acffa4
2015-02-23 17:26:12 +00:00
Diego Perez
2c5e85b303 Avoid caching mImage on the main render loop and use clipping.
+ Added a session flag that avoids caching mImage. This is useful when
mImage is just a Graphics2D wrapper that might change at any time.
+ Make GcSnapshot aware of the clipping so it doesn't need to render the
whole area if not needed.

Change-Id: Ie0134c2bc2741b5fa6648313864c851bbac066cf
2015-02-23 09:56:01 +00:00
Jeff Sharkey
a18a2e3428 Switch to incremental API parsing.
Incremental API parsing works on a single class at a time, which
greatly reduces memory pressure.  For example, linting a typical
current.txt would use ~100MB before; now it only uses about ~15MB!

Change-Id: Id084b3dd2f6513d0e919790d5a5d629f80637ce8
2015-02-22 16:00:19 -08:00
Jeff Brown
c2932a1be3 Hold a wake lock while dozing when display updates are pending.
When the display state is DOZE or DOZE_SUSPEND, assume this means
that the AP may go to sleep at any time so hold a wake lock for
a little while starting when traversals are scheduled to ensure
that the AP remains awake long enough to draw and post the frame
to the display hardware.

This patch is somewhat approximate but should be good enough for
most devices today.

Note that the implementation uses the window manager to ensure that
the window which wants to draw is actually visible before acquiring
the wake lock.  There is a cost to this test (a round-trip) which
should not be significant today since we do not expect apps to draw
more than one frame or two while dozing.  However, if we wanted to
support animations in general, we might want to optimize it or
eliminate the check altogether (since we can already account for
the app's use of the wake lock).

Another way to implement this functionality might be for the view
hierarchy to listen for the power manager to report that it has entered
a non-interactive power state before deciding to poke draw locks.
This would be somewhat more accurate than watching the display state.
Also, the draw lock timeout logic could be implemented more directly
instead of using an ordinary timed wake lock.

Bug: 18284212
Change-Id: I84b341c678303e8b7481bd1620e634fe82cc4350
2015-02-20 10:54:09 -08:00
George Mount
25ac81d863 Added support for imports in type checking.
findType did not support user-defined imports, so casting,
for example, of Foo<String> didn't recognize Foo or String.
This also will import java.lang.* by default.
2015-02-20 10:52:20 -08:00
George Mount
980449bc4c Fix broken static import with alias.
Added tests to ensure they don't break again.
2015-02-19 16:43:01 -08:00
George Mount
0e7ca4055e Support static method and field access and improve method finding.
Bug 19425630
Bug 19336295

Change-Id: I4c04db32492edfa093e94c3c15bf7799128b1e03
2015-02-19 07:47:54 -08:00
Jeff Sharkey
e76432d715 Merge "Even more lint tests." 2015-02-19 00:49:38 +00:00
Jeff Sharkey
90b547bb50 Even more lint tests.
Updated boolean set/get tests to handle isFoo() and hasFoo() style
methods.

When listeners are passed as method argument, they should come near
the end of the argument list.

Verify that resources are named consistently.

Slightly clearer message wording overall.

Change-Id: Id22947bd932d82222ce3e6c6e2012dade348fb56
2015-02-18 16:45:58 -08:00
George Mount
371450b5b1 Support casting operation in binding expressions.
Bug 19272385

Change-Id: I5a992f4eaf6f456d21983481ab4ca01305582f36
2015-02-18 10:44:22 -08:00
Jeff Sharkey
fb19a6533c Merge "More lint tests." 2015-02-18 01:22:48 +00:00
Jeff Sharkey
b46a9690d5 More lint tests.
When overloading methods, verify that common arguments always come
first and have consistent ordering.

When methods register listeners or callbacks (outside of the UI
toolkit), verify that an overload exists that takes a Handler to
deliver events through.

When a method accepts a Context argument, it must be the first
argument.

Change-Id: I6a6f94a3a0a8c48987835e47eb87564e569db2af
2015-02-17 17:19:45 -08:00
George Mount
812d215fa6 Removed reflection-based implementations and renamed classes.
Renamed Model* classes to Annotation*
Renamed Reflection* classes to Model*
Removed Class* classes -- they are no longer needed.

The names were confusing. I think this is better.
2015-02-17 16:15:29 -08:00
Deepanshu Gupta
dc630c64be am 0a300b89: am ad879adb: Merge "Add Asset management support for fonts." into lmp-dev automerge: 0684991 automerge: c2fa5e2
automerge: 7bf58d0

* commit '7bf58d0c5523a9b76ab1d570acb92514e8fff8ba':
  Add Asset management support for fonts.
2015-02-17 23:40:11 +00:00
Diego Perez
dde889111f am a0fb87a3: am 98c3461a: Merge "Do not paint shadow if outside of the clip area" into lmp-dev automerge: a912fed automerge: d66f2eb
automerge: 412e643

* commit '412e6439b2d372565f14cc1dce0ff25f106975af':
  Do not paint shadow if outside of the clip area
2015-02-17 23:38:48 +00:00
Deepanshu Gupta
7b78e8373e am 221d7320: am 12c9e498: Merge "Changes made by intelliJ 14.1" into lmp-dev automerge: 4e47416 automerge: f12d023
automerge: 5cc0e76

* commit '5cc0e76464f170d987370bb7bf9c04d746795f12':
  Changes made by intelliJ 14.1
2015-02-17 23:37:13 +00:00
Deepanshu Gupta
7bf58d0c55 am 0a300b89: am ad879adb: Merge "Add Asset management support for fonts." into lmp-dev automerge: 0684991
automerge: c2fa5e2

* commit 'c2fa5e205e617df6b622cb54fac77738e82e6320':
  Add Asset management support for fonts.
2015-02-17 22:39:48 +00:00
Diego Perez
412e6439b2 am a0fb87a3: am 98c3461a: Merge "Do not paint shadow if outside of the clip area" into lmp-dev automerge: a912fed
automerge: d66f2eb

* commit 'd66f2eb241ba8676ef01f4efd23be5ae62d3a7aa':
  Do not paint shadow if outside of the clip area
2015-02-17 22:38:37 +00:00
Deepanshu Gupta
5cc0e76464 am 221d7320: am 12c9e498: Merge "Changes made by intelliJ 14.1" into lmp-dev automerge: 4e47416
automerge: f12d023

* commit 'f12d02339fefc4111b62715d5c0fb2e58570c34b':
  Changes made by intelliJ 14.1
2015-02-17 22:36:59 +00:00
Deepanshu Gupta
0a300b8977 am ad879adb: Merge "Add Asset management support for fonts." into lmp-dev
automerge: 0684991

* commit '068499111c173fdd9869e7dbe5b9de857aca1c2d':
  Add Asset management support for fonts.
2015-02-17 22:21:11 +00:00
Diego Perez
a0fb87a3b8 am 98c3461a: Merge "Do not paint shadow if outside of the clip area" into lmp-dev
automerge: a912fed

* commit 'a912fedbc5fba99fb75884a1941d58170822ceb4':
  Do not paint shadow if outside of the clip area
2015-02-17 22:19:43 +00:00
Deepanshu Gupta
221d732005 am 12c9e498: Merge "Changes made by intelliJ 14.1" into lmp-dev
automerge: 4e47416

* commit '4e47416012b8cb88d564a04a29c0b79a28b9e529':
  Changes made by intelliJ 14.1
2015-02-17 22:18:35 +00:00
George Mount
d872e1cdf7 Move expression generation to annotation processor. 2015-02-17 10:42:10 -08:00
Jeff Sharkey
9f64d5c6c4 Reference lint rule numbers, more rules.
When reporting lint errors/warnings, reference the relevant
underlying rule.  Also adds a few more lint rules, and removes a few
aggressive checks.

Change-Id: I1bdadf5fd4df9cd28bb7dfe1c7bb1f9055398315
2015-02-14 17:06:06 -08:00
Deepanshu Gupta
068499111c am ad879adb: Merge "Add Asset management support for fonts." into lmp-dev
* commit 'ad879adb65ffa577844738522ab6d7d30aba2ead':
  Add Asset management support for fonts.
2015-02-13 22:38:23 +00:00
Diego Perez
a912fedbc5 am 98c3461a: Merge "Do not paint shadow if outside of the clip area" into lmp-dev
* commit '98c3461acd6699ab0448f1785909d0d39cd61b5a':
  Do not paint shadow if outside of the clip area
2015-02-13 22:38:17 +00:00
Deepanshu Gupta
4e47416012 am 12c9e498: Merge "Changes made by intelliJ 14.1" into lmp-dev
* commit '12c9e4980e889d1c72656a4062f9cee9a0e6f15a':
  Changes made by intelliJ 14.1
2015-02-13 22:38:07 +00:00
Deepanshu Gupta
ad879adb65 Merge "Add Asset management support for fonts." into lmp-dev 2015-02-13 22:34:36 +00:00
Diego Perez
98c3461acd Merge "Do not paint shadow if outside of the clip area" into lmp-dev 2015-02-13 22:34:16 +00:00
Deepanshu Gupta
12c9e4980e Merge "Changes made by intelliJ 14.1" into lmp-dev 2015-02-13 22:33:48 +00:00
Chet Haase
50dd4c1c59 Merge "Add ClipReveal window transition for application launch" 2015-02-13 19:02:15 +00:00
Chet Haase
10e23ab61b Add ClipReveal window transition for application launch
Issue #19362772 Better material launch animations

Change-Id: Ic94fde910b6b5554ee954dfbbf374949f9eb189d
2015-02-13 11:00:55 -08:00
Jeff Sharkey
ed6aaf0f79 Track line numbers in lint script.
Also create separate class to describe failures, which can be
consumed by other tools.  Still offers to render itself for console
output by default.

Change-Id: Ib0555cc289ae08a0e446489509cc964c866c564e
2015-02-12 09:31:43 -08:00
Yigit Boyar
8d2181b44d Allow chef to be created from bundle
Change-Id: If5b00a98684803cdd46547b9a94c961fe0bbf4e3
2015-02-11 15:00:35 -08:00
Yigit Boyar
e5741e49ce Separate resource parser
Change-Id: I3b5f44b48269130834d013425dbaf79fe084c855
2015-02-11 11:26:46 -08:00
George Mount
fbdb3c08f0 Prepare ClassAnalyzer to be replaced by other implementations.
ClassAnalyzer uses normal reflection. We intend to move
to an Annotation Processor and possibly an Android Studio
plugin version of type interaction as well. This abstracts
the type interaction to prepare.

Change-Id: I2b95ea9074bca7e3053aeadcd3692dffe93b41d6
2015-02-11 10:49:11 -08:00
Narayan Kamath
97a366f9d7 Merge "Parse res-car as resources for UI_MODE_TYPE_CAR.." 2015-02-11 14:01:36 +00:00
Yigit Boyar
30bc4d25dd Fix how we handle non-bindable fields in Observable objects
Change-Id: Ia33200a2ade3bd3ed8d3a66e1602a04111f4387a
2015-02-10 12:38:33 -08:00
Chris Warrington
ed335664f9 am 510c24e8: Merge "Fix AAPT daemon mode with paths containg spaces." into lmp-mr1-dev automerge: 4499888
automerge: 4308c2a

* commit '4308c2aea45a4780b460734ee8634d74205c15c5':
  Fix AAPT daemon mode with paths containg spaces.
2015-02-10 20:34:58 +00:00