• Home
  • History
  • Annotate
  • only in /frameworks/base/tools/layoutlib/
History log of /frameworks/base/tools/layoutlib/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
90e9bbc814de0dbea317867a550680d5c3e201ad 27-Jan-2017 Paul Navin <paulnavin@google.com> Add hidden API for whether permission review mode is on.
am: 7b89a7b1f7

Change-Id: Ic7f4d30bd689bf5677600552030a3e696b16dfbb
7b89a7b1f7c208eaac19290b34c5f505a9fd5eba 27-Jan-2017 Paul Navin <paulnavin@google.com> Add hidden API for whether permission review mode is on.

BUG: 34240393
Change-Id: I68e55767a7da1d457a6cedd210aac9e339fb996c
ridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
0940834c8cc024985f20bbdd19fb32c73ccb25f2 29-Nov-2016 Doris Liu <tianliu@google.com> Fix LUTInterpolator lookup table position calc

BUG: 32830741
Test: running progress bar at 5x duration scale, no flickering
Change-Id: Ie484bdbfdf18bacc4586e36c5142e4523d08bdaa
ridge/src/com/android/internal/view/animation/NativeInterpolatorFactoryHelper_Delegate.java
ab216609f1608e61827d955fcc9fd0560bc52e4d 09-Aug-2016 Winson <winsonc@google.com> Removing private system ui flags from status bar flags logic.

- Prevent third party apps from inadvertently changing internal SystemUI
flags through a call to setSystemUiVisibility(). These flags are only
set in the individual SystemUI components and can be updated in WMS
directly.

Bug: 29875297
Change-Id: I5ea238c8fb16a0eccd6e993d95a912acb359cee6
ridge/src/android/view/IWindowManagerImpl.java
df3a7cab8f534584bcef83e222372e1be9be12c5 06-Sep-2016 Alan Viverette <alanv@google.com> Change density for the correct user

Bug: 30839993
Change-Id: I5368accddfc4a03b8025a257b4155fcdc6197f11
ridge/src/android/view/IWindowManagerImpl.java
813be138ae6f1fbe60a9efc082a30e7d25d03f7e 25-Aug-2016 Chong Zhang <chz@google.com> DO NOT MERGE -- Only use saved surface if started by launcher or moved to front

Restrict saved surface to launcher start (ACTION_MAIN&CATEGORY_
LAUNCHER), or there is no intent at all (eg. task being brought to
front). If the intent is something else, likely the app is going
to show some specific page or view, instead of what's left last time.

This solves problems like the launcher shortcuts on DeckClock,
each of them is a different intent and will show one specific
view regardless of last states. Another example is Chrome tab
opened directly by action VIEW to open some URL.

(Note that this doesn't solve the problem with Chrome homescreen
shortcuts, it will still start with saved surface (if Chrome
is already open). This is because the shortcut is a trampoline
activity that starts the real chrome tab activity, but when
the trampoline is started, the whole task is already brought
to front, and ChromeTab could become visible with the task
before we actually start it.)

bug: 31055479
bug: 27747315

Change-Id: Id3e61c61ef516b0edc1f174320f02661222f226b
(cherry picked from commit ad24f96def42016049de05220593aa049b136def)
ridge/src/android/view/IWindowManagerImpl.java
45e6d2dc8b8b7bd4e588368179d8d4b05fc6810c 21-Jul-2016 Chong Zhang <chz@google.com> Clean up surfaces when app is resumed without being stopped.

When quickly toggling between two apps, app could be resumed while
it's stopping but not yet stopped. Upon resuming, it could have
surfaces that's marked mDestroying and waiting for the stopped
to be destroyed.

We need to dispose these surfaces properly. If the window is already
removed, we destroy them. Otherwise, clear mDestroying flag so that
the window is ready to be used again. Leaving mDestroying=true makes
the window ineligible for certain things such as receiving wallpaper.

bug: 30255354
Change-Id: Id881653550595ab8e702d6950949bf202ac5a0d9
ridge/src/android/view/IWindowManagerImpl.java
3683fb1e1d9a4f4f672e9083ae3d5e31c7034c8f 11-Jul-2016 Zak Cohen <zakcohen@google.com> Adds a screenshot wallpaper method to WallpaperManagerService.

Bug: 29963541

Change-Id: If0a574004f8bddf1ba170587a8187253fe045ef4
ridge/src/android/view/IWindowManagerImpl.java
fd10cd1989966d01011a0cf75f3282f3e12ca5a6 30-Jun-2016 Robert Carr <racarr@google.com> Force CROSSFADE rotation when launching from double tap gesture.

When activity transition triggers a rotation change, the starting
window will normally be the top window at the time we try
to select the window animation. However, these layout params won't
have the apps rotation animation set (as the client code will set that
on the real window, not the starting window). Eventually we would
like to add API to specify rotation animation via manifest to solve
this problem cleanly. In the mean time, we can force a specific rotation
animation from the double tap gesture, and clean up some camera
ugliness. We accomplish this by attaching an animation hint to
ActivityOptions.

Bug: 28838855
Change-Id: If052cd8cbae76651da43f3b4c590cd9dcc1afc0f
ridge/src/android/view/IWindowManagerImpl.java
dc42d7dd135460701435a8f925eae9c7b47d14ba 23-Jun-2016 Yohei Yukawa <yukawa@google.com> Merge "Add InputMethodService#exposeContent()" into nyc-mr1-dev
25e0813e6eb6315b1016db805fa9b791b4ae5cc2 23-Jun-2016 Yohei Yukawa <yukawa@google.com> Add InputMethodService#exposeContent()

This is a follow up CL to my previous CLs [1][2] that introduced
InputConnection#commitContent(InputContentInfo, Bundle) API to enable
IMEs to send a content to the target application.

With this CL, IME developers are able to temporarily expose
InputContentInfo object to the target package without permanently
granting URI permission. Although calling IMS#exposeContent() is
allowed only for the IME that is currently selected, the client is able
to request a temporary read-only access even after the current IME is
switched to any other IME as long as the client keeps InputContentInfo
object.

Here is a sample code snippet about how to use this mechanism.

[IME]
InputContentInfo contentInfo = new InputContentInfo(
contentUri,
new ClipDescription(description, new String[]{mimeType}),
linkUrl);
exposeContent(contentInfo, getCurrentInputEditorInfo());
getCurrentInputConnection().commitContent(inputContentInfo, null);

[App]
try {
contentInfo.requestPermission();
// Load inputContentInfo.getContentUri() here.
} finally {
contentInfo.releasePermission();
}

[1]: Iaadf934a997ffcd6000a516cc3c1873db56e60ad
152944f4909c47917473293b258d266435c6ab35
[2]: Ica1ba3154795c1bf44e140dfe639b299f83cd8af
adebb52588b098a1af678d4e33a234ef1ce783b2

Bug: 29450031
Change-Id: I2772889ca01f2ecb2cdeed4e04a9319bdf7bc5a6
ridge/src/com/android/layoutlib/bridge/android/BridgeIInputMethodManager.java
0f5caab5762d9ace8e7d87e29296bcb8fdfe9b4b 22-Jun-2016 Adam Lesinski <adamlesinski@google.com> Fix build due to missing abstract method impl

getDisplay() was added to Context, which needs to be implemented
for BridgeContext.

Bug:28388969
Change-Id: I7b0ffcbbe252403e35f08d3fa40d6b0e4dbf0daa
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
0e8524719559f0be9c8145dbf9f52100e1fb60c3 15-Jun-2016 Yorke Lee <yorkelee@google.com> Limit global drags to apps targeting SDK 24 and above

Bug: 29127791

Change-Id: Ib5f85a207bdb79eeac0418fda78e452d225761bc
ridge/src/android/view/IWindowManagerImpl.java
790e5f6c1cab43fb377d86d3c9189a509b28b217 24-May-2016 Diego Perez <diegoperez@google.com> Workaround to display menus for AppCompat themes

Layoutlib currently does not implement menus for the support Toolbar.
When it detects that an AppCompat theme is being used, it will try to
use by default the support Toolbar which breaks the display of menus.
This works around the problem by forcing layoutlib
to use the framework toolbar in menu previews (regular activities
won't display the menu if they use AppCompat).

Bug: http://b.android.com/210946
Change-Id: Ic1d162c6d74119ef42895776c3bc3851a9549120
ridge/src/com/android/layoutlib/bridge/impl/Layout.java
b406dd20eee28eedb8e9f330a0459d630c026515 17-May-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Fixed bugs with starting windows when displayng forcedResized activity" into nyc-dev
3b23239d6ec9ded858d75f272ca1a677c5c431f9 14-May-2016 Wale Ogunwale <ogunwale@google.com> Fixed bugs with starting windows when displayng forcedResized activity

- Added ActivityOption to mark a starting activity as a taskOverlay
activity. That is the activity will always be the top activity of the
task and doesn't cause the task to be moved to the front when it is added.
- Only set the starting window state of the ActivityRecord to shown if
window manager actually showed the starting window for the activity.
Avoids incorrectly trying to remove starting window for an activity that
didn't show any.
- When starting additional activity in a task, transfer the starting
window from the top most activity with a starting window. It is possible
the top most window does have a starting window like in the case of the
forcedResized activity.
- Only ensure visiblity of an activity we are starting in a task whose top
activity is a task overlay. They need to start in the visible-paused state
and not the resumed state which just causes extra churn in the system.
- Always add additional starting activities in a task with an overlay
activity below the overlay activity.

Bug: 28751186
Change-Id: I3624a4313ae9c406d42c67a3537f67ad685791af
ridge/src/android/view/IWindowManagerImpl.java
833bdcedceee60a873694a77587393abfc830eb5 16-May-2016 Yohei Yukawa <yukawa@google.com> Make IMS#clearInsetOfPreviousIme() reliable.

This is a follow-up to my previous CL [1] for Bug 15922840 so that we
can clear the following variables in a more reliable way.
- PhoneWindowManager#mLastInputMethodWindow
- PhoneWindowManager#mLastInputMethodTargetWindow

The idea behind CL [2] is that when InputMethodManagerService (IMMS) is
switching from an IME to another IME, IMMS can send a signal to
WindowManagerService (WMS) to remember the current IME's inset so that
the system can continue using it to reduce jank until the new inset is
specified by the next IME. As summarized in Bug 28781358, however, if
the next IME does not show the window after the IME switch, WMS (or
PhoneWindowManager to be precise) keeps using the previous IME's inset
unexpectedly until the new IME shows its window. All we have seen in
Bug 15922840 and Bug 26663589 fall into this category.

The idea of this CL is just adding a hidden API to InputMethodManager so
that InputMethodService#clearInsetOfPreviousIme() can surely terminate
the IME transition state managed in PhoneWindowManager, rather than
relying on a hack of calling SoftInputWindow#show() and
SoftInputWindow#hide(), which actually does not work for Bug 26663589.

[1]: Ib04967f39b2529251e4835c42e9f99dba2cf43f2
2977eb7b6ce82309a1bb1ba4ab698f503cb0388a
[2]: I5723f627ce323b0d12bd7b93f5b35fc4d342b50c
792faa2c16d319e874a1d633f964a78266d5f3f2

Note that addressing all the corner cases in [2] still requires lots of
non-trivial change. Hence this CL focuses only on Bug 26663589 (and
the case we handled in Bug 15922840).

Bug: 26663589
Change-Id: Ib567daa009c1139858dccadcfc6a04465ebecf36
ridge/src/com/android/layoutlib/bridge/android/BridgeIInputMethodManager.java
5ca21e4ceca42be633031809b8ee43fd8688389b 10-May-2016 Diego Perez <diegoperez@google.com> Fix VectorDrawable_Delegate and DrawerLayout

Modify the nDraw call that has been changed in the framework to return
an int with the number of pixels allocated.
Modify the animation initialization render call to use the actual
measured size (instead of 0,0) so the DrawerLayout is setup
correctly.

Change-Id: I198de05206382c6489056f7c3d9a1d328864321c
ridge/src/android/graphics/drawable/VectorDrawable_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/graphics/NopCanvas.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ea162c3c7992b01d8d56766a94e56a0cee3fe3b2 05-May-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Prepare to replace windows across recreate()." into nyc-dev
e37ecbdede9bb3b4fadba359891b13eb5cd6c697 05-May-2016 Diego Perez <diegoperez@google.com> Merge "Add missing delegate in Bitmap_Delegate" into nyc-dev
77bdfb512f963701082c5c78e9a9db00b167fcb6 03-May-2016 Robert Carr <racarr@google.com> Prepare to replace windows across recreate().

When the activity locally recreates itself, nothing
on the server side is able to prepare preserving windows,
or replacing windows. The activity was trying to defer
removing the old window, but it was just waiting
until the new one was created, not until it was drawn,
thus resulting in a flicker. It's easy to backpack on the
existing replacement infrastructure.

Bug: 28221875
Change-Id: I55fc4ca78e9e11809473fedd8b30b6a6350cf852
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
4c5e7a740a632829b48b2324f80a43ab94ac7551 29-Apr-2016 Deepanshu Gupta <deepanshu@google.com> Merge "Add namespace before attr name in defPropMap" into nyc-dev
2385e2184a68318a582f075bcd483baa35c776b4 29-Apr-2016 Deepanshu Gupta <deepanshu@google.com> Merge "Revert "Switch LayoutLib to Java 8"" into nyc-dev
a43c4fa09ff758400c17c3533b77d783e713a115 27-Apr-2016 Deepanshu Gupta <deepanshu@google.com> Add namespace before attr name in defPropMap

Change-Id: I36d094fb69d5f5ce0aebde04960ffcd19c27a2eb
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
5a91b615232374084a45752d7c09c25265e263ed 22-Apr-2016 Svetoslav Ganov <svetoslavganov@google.com> Merge "Disallow disable of the system shared libs." into nyc-dev
d7d2119fe37f48e4157c3bc471c1153544cf5604 22-Apr-2016 Diego Perez <diegoperez@google.com> Add missing delegate in Bitmap_Delegate

New nativeCopyAshmemConfig

Change-Id: I8aedb0df827ac8d8091a9457bc341c1047b5a539
ridge/src/android/graphics/Bitmap_Delegate.java
39e540caffca2584aa6c4cb74ce42dceb24a93f7 12-Apr-2016 Diego Perez <diegoperez@google.com> Separate measure so it can only run inflate if needed

This allows to only do inflate + measure and not to render.

Change-Id: I4be08513728b656f699e9115e14cf618d95b538a
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
e70464e11694712d62092ac3a623c32fe6d5e8a5 14-Apr-2016 Deepanshu Gupta <deepanshu@google.com> Merge "Return complete properties map instead of per view" into nyc-dev
eaf1853b98d7bf2c3d693ad702050968ef0a404c 14-Apr-2016 Deepanshu Gupta <deepanshu@google.com> Return complete properties map instead of per view

Change-Id: Ib7c71606d1bf43bbaa80f5601a8508d7aa49d953
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/PropertiesMap.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
a9c2500a6863dabdd786f17a25ce0bf3683109a2 14-Apr-2016 Svetoslav Ganov <svetoslavganov@google.com> Disallow disable of the system shared libs.

bug:28173410

Change-Id: If731f2d90312a083bb940f83431ba3eccf213947
ridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
8c0ab16494f3a46ee847d035de2248fae3168d8a 13-Apr-2016 Jerome Gaillard <jgaillard@google.com> Change method name in VectorDrawable_Delegate

Following change in VectorDrawable from commit cdedc9a80d.

Change-Id: I5d17b2e77c9600fe3da981c77a3e39dcd4df1d1f
ridge/src/android/graphics/drawable/VectorDrawable_Delegate.java
49a54366c11ed5ac887e6f897aa6ee5e4b86489c 13-Apr-2016 Diego Perez <diegoperez@google.com> Merge "Synchronize access to the main looper" into nyc-dev
0a6a6dbe9107a3e31d74293f853b46ae0e5b9e7b 13-Apr-2016 TreeHugger Robot <treehugger-gerrit@google.com> Merge "Added api to delete cache files for a given user" into nyc-dev
78c9eb8947538f63d2e06684663d400991dfff8f 13-Apr-2016 Suprabh Shukla <suprabh@google.com> Added api to delete cache files for a given user

Added an api to delete application cache files for a specific user. This
allows settings to clear cache files for work profile apps as well.

Bug: b/25338468
Change-Id: I52d4944a7a03b6d63ad44dd6bb868aec62815eab
ridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
79c59fe4a8544bdda5c56efecf9c2bc72f2f0e4e 12-Apr-2016 Deepanshu Gupta <deepanshu@google.com> Add post resolve property values

Change-Id: Ia86b7dfc479cc5313cce36b6b3066fbb1d00c292
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/PropertiesMap.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
8d25697bf01faaf3a6bb8f9f3a0619437cacc22e 12-Apr-2016 Diego Perez <diegoperez@google.com> Synchronize access to the main looper

Change-Id: I4b9375d07c4191393c04f8b40905e63742b3baad
ridge/src/com/android/layoutlib/bridge/Bridge.java
a0a51b6fb629c06c763b73cfe24c6c4d540d54eb 12-Apr-2016 Diego Perez <diegoperez@google.com> Fix broken delegates for FontFamily and PathParser

The theme editor is throwing an exception with the last embedded
layoutlib because a missing method. Added also another missing method in
FontFamily.

Change-Id: I710ba7618df6444a3185b581cdc5dc8400f7c604
ridge/src/android/graphics/FontFamily_Delegate.java
ridge/src/android/util/PathParser_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
2155ad82042eb2f69b9c9d2a9ecf3884d265ad7b 07-Apr-2016 Diego Perez <diegoperez@google.com> Merge "Fix NPE when runnin testActivity" into nyc-dev
8cdf61a02e4652d53560c9758b8b15e76c50bfd7 07-Apr-2016 Diego Perez <diegoperez@google.com> Fix NPE when runnin testActivity

Change-Id: I7ac81cb286b8d5593ae7f5fedb99bfd0fda791c5
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
8d35506e512cbbce09cedfe8e1d76653440ca3a5 07-Apr-2016 Diego Perez <diegoperez@google.com> Merge "Fix rect shadow detection" into nyc-dev
5b758bf272e3e24c8822523c2a3c3f38ba6f8025 06-Apr-2016 Deepanshu Gupta <deepanshu@google.com> Merge "Add missing setAccessible to Choreographer's threadInstance" into nyc-dev
42c8bd1b4aba37bd302eb96f55c536d9e51762ed 06-Apr-2016 Deepanshu Gupta <deepanshu@google.com> Add missing setAccessible to Choreographer's threadInstance

Change-Id: I753660cf68ba5a9c375942222e32059d952739bb
ridge/src/android/view/Choreographer_Delegate.java
39f1311b545f1f8732ee3a8b565018dcd0da7323 06-Apr-2016 Deepanshu Gupta <deepanshu@google.com> Merge "Clear ThreadLocal storage from Choreographer" into nyc-dev
61ccc9198ab09363edbf500d7669dbcfafc5fa28 06-Apr-2016 Deepanshu Gupta <deepanshu@google.com> Clear ThreadLocal storage from Choreographer

Change-Id: I5abb5c68a635e7808b0a036ba4d9971cd0139aa3
ridge/src/android/view/Choreographer_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
a4d7ad8663e624d46f53ac0e5948348348d82204 06-Apr-2016 Diego Perez <diegoperez@google.com> Fix rect shadow detection

ViewGroup_Delegate was trying to use a rect shadow even in cases where
we needed to use a path. This caused that using a ToggleButton would
throw an exception with radius < 0.
Also, changed the tests so we can detect certain render errors and
ignore other (like known fidelity warnings).

Change-Id: I900d45f9efa892ad0aebc8f4ef73fc9f21ab9d92
ridge/src/android/view/RectShadowPainter.java
ridge/src/android/view/ViewGroup_Delegate.java
ridge/tests/res/testApp/MyApplication/golden/allwidgets.png
ridge/tests/res/testApp/MyApplication/golden/allwidgets_tab.png
ridge/tests/res/testApp/MyApplication/src/main/res/layout/allwidgets.xml
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
bad02b0ec9fb977f588db405a878ade9535bf240 06-Apr-2016 Deepanshu Gupta <deepanshu@google.com> Merge "Add properties from textAppearance to property map" into nyc-dev
91253ed04696ecd57636472dd8ac74660f65c5c2 05-Apr-2016 Deepanshu Gupta <deepanshu@google.com> Add properties from textAppearance to property map

The default property map is used to get the list of XML properties that
a view queried. For things like textAppearance, these are additional
attributes that the TextView queries, but wasn't added to the property
map. Add them too.

Change-Id: I1e03fbeced224866de1dcc51b93d5aa5d5886ade
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
2605f91f705fbf51800c6fde8ee8cd5f199447b4 04-Apr-2016 Diego Perez <diegoperez@google.com> Separate inflate from render step

Up until now, createSession will always do a first render. With the new
embedded layoutlib we might want to actually call objects from the
inflated view before doing a render or even do it between renders.
This allows to avoid the first initial render unless needed.

This CL also fixes a bug that would only happen when multiple render
calls are issued. When scrolling, use scrollTo since we likely want
absolute positions, not relative.

Change-Id: I4b1d8388d7218a8de33e25cd546fd965fcb07dc7
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/android/RenderParamsFlags.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/tests/res/testApp/MyApplication/src/main/res/layout/scrolled.xml
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
18e7e10f67384796282c913805b0124137bd13e5 04-Apr-2016 Diego Perez <diegoperez@google.com> Merge "Update Path and RenderNode delegates to new API" into nyc-dev
8f43dfef2bf4581fa97705ffaabf66b7568b9544 04-Apr-2016 Diego Perez <diegoperez@google.com> Update Path and RenderNode delegates to new API

RenderNode_Delegate nCreate now takes a reference to this. In the
Path_Delegate, the native_offset call with a destination path has been
removed.

Change-Id: I6332bb4733974b817e8a29eab82e2218fcf942c4
ridge/src/android/graphics/Path_Delegate.java
ridge/src/android/view/RenderNode_Delegate.java
d19342a83d130ba5456d6c2ed10b08391d4f40be 02-Apr-2016 Chong Zhang <chz@google.com> fix build break

bug: 27834014
Change-Id: Ib5d03818d285c50d220c45ebace635faf6771ff3
ridge/src/android/view/IWindowManagerImpl.java
167bbfac24b1e78576b18c0522218838dfdf57bb 31-Mar-2016 Chong Zhang <chz@google.com> Avoid extra relaunch when rotating side-by-side apps

Update configuration with WM first and check if the stacks need to be
resized due to the update. If so, let activity manager resize the stacks
inline, instead of letting WM schedule another pass of resizeStack. This
way the configuration will be updated to the latest before ensureActivity-
ConfigurationLocked, and we don't need another relaunch there.

bug: 27834014

Change-Id: Ib761a96cada0c3247b0480f18370670c593159da
ridge/src/android/view/IWindowManagerImpl.java
0d50d8660dac35f7eceb5d74756de0417095b427 30-Mar-2016 Vladislav Kaznacheev <kaznacheev@google.com> Add wallpaper input consumer to WindowManagerService

This is an input consumer similar to the one used when hiding the navbar,
but placed above wallpapers. It might be useful for processing touch
events over "desktop" in freeform MW mode.

Re-landing I9d6d28a624f750ad48fc39f9b149dd1f989cceba after fixing build.

Bug:26688904
Change-Id: I89fdabd9c72cdd4a1d7ca626c33ddc99ddea97f9
ridge/src/android/view/IWindowManagerImpl.java
fc970ab65ad8c860dd0654d59b70bbe271f95784 26-Feb-2016 Diego Perez <diegoperez@google.com> Implement VirtualRefBasePtr native methods

The VirtualRefBasePtr is used to track the usage of native objects from
the java side by reference counting. Implementing the class delegate to
make sure we dispose the objects correctly.

Change-Id: I3dd4717944b0dbe79f30e49b3083bf65c6e5276d
ridge/src/com/android/internal/util/VirtualRefBasePtr_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/DelegateManager.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
0b10c335c72cb610e71432a61f315e7670b9af41 29-Mar-2016 Robert Carr <racarr@google.com> Ensure we change SurfaceView size from UI thread.

We need to change the SurfaceView size from the UI thread
so that we can appropriately deliver the SurfaceChanged
callback. We also need to not preserve geometry
in this case, as if we don't update the surface
and layout size together we could get scaling. This still has
some potential for holes, as transactions are not synced with
the parent renderer, but we have other methods to avoid
these in the case of resizing. This fixes the remaining
issues with content sizing and surface view "out of sync".

Bug: 27780983
Bug: 27687126
Bug: 27676101

Change-Id: Idd7864f00e5cf7a4eb32dd66c0b389292a788069
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
83b9db029b6fe02761e1c8e50eb8dce6f4d37d0f 28-Mar-2016 Deepanshu Gupta <deepanshu@google.com> Merge "Fix menu popup rendering" into nyc-dev
97c0679b1a4e650191203d1a03159b3dec67252e 28-Mar-2016 Deepanshu Gupta <deepanshu@google.com> Fix menu popup rendering

Change-Id: I3394866d72af7fd1762ac477529a4a1bc473b7dc
ridge/src/com/android/layoutlib/bridge/bars/FrameworkActionBarWrapper.java
60dc3a99171ff5eeebc7dd9e2083c91ca1f0e37c 24-Mar-2016 Deepanshu Gupta <deepanshu@google.com> LayoutLib intellij codestyle: line wrap

Force line wrap (do not exceed right margin) and allow shorter lines to
merge.

Change-Id: I06f3689bff710c8dec023edb842595eacd745c17
idea/codeStyleSettings.xml
ceb1ab1d2a71c6d4e0cccf110a198ff83cb97e5a 24-Mar-2016 Deepanshu Gupta <deepanshu@google.com> Add tests for getResource*Name()

Change-Id: I02170b2b68c76f817aa0771a5333abf2aee456c0
ridge/src/android/content/res/Resources_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/setup/LayoutLibTestCallback.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/setup/LayoutPullParser.java
618ca261f370c257723a3c7a5871bb6f6b4d7f3a 19-Mar-2016 Deepanshu Gupta <deepanshu@google.com> Support getResource*Name() methods for Resources

The following methods are now supported:
getResourceEntryName
getResourcePackageName
getResourceTypeName
getResourceName

Bug: http://b.android.com/181872
Change-Id: If06b5e0687ab6f8cb20ab77f339870dd08a84ce1
ridge/src/android/content/res/Resources_Delegate.java
ridge/src/com/android/layoutlib/bridge/util/DynamicIdMap.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
3e5bf786b7ca36fa0cc150fcd8d0e7a69ecb9db0 24-Mar-2016 Clara Bayarri <clarabayarri@google.com> Merge "Keyboard Shortcuts: plumb deviceId through" into nyc-dev
fcd7e80b21cc9db6be00e37371401ea1d0938796 10-Mar-2016 Clara Bayarri <clarabayarri@google.com> Keyboard Shortcuts: plumb deviceId through

Bug: 27673736
Change-Id: Ie72807aa8c2bfd142b081a6a915e101c16d31473
ridge/src/android/view/IWindowManagerImpl.java
ridge/src/android/view/WindowCallback.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
ridge/src/com/android/layoutlib/bridge/android/view/WindowManagerImpl.java
3e2b413dc72f267571421cfb0c8ced7a4778704a 23-Mar-2016 Deepanshu Gupta <deepanshu@google.com> Merge "Exclude java namespace classes from layoutlib" into nyc-dev
fa5f55fe906b3d19df2fdf6af731f700c1038029 23-Mar-2016 Deepanshu Gupta <deepanshu@google.com> Exclude java namespace classes from layoutlib

Such classes can't be loaded anyway. No point including them

Change-Id: I26934014de96aa59f0d4aef59f61d1e4f71b86ea
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
f0fce3e9ceb6cd165488c28f390181c5b2877cee 23-Mar-2016 Diego Perez <diegoperez@google.com> Merge "Add fill type support to vector drawable" into nyc-dev
5ceb30f2164c745789c13bd0060e57fa8c04a8fd 22-Mar-2016 Diego Perez <diegoperez@google.com> Add fill type support to vector drawable

The platform has added fill type to vector drawables. This CL implements
the native replacement.
Also remove a couple of delegates for classes that have been removed
from the platform.

Change-Id: Ie6ba344db9c9c2c45cd0ef4b99f11f9d8bcfd7de
ridge/src/android/graphics/AvoidXfermode_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/android/graphics/PixelXorXfermode_Delegate.java
ridge/src/android/graphics/drawable/VectorDrawable_Delegate.java
ridge/tests/res/testApp/MyApplication/golden/vector_drawable.png
ridge/tests/res/testApp/MyApplication/src/main/res/drawable/multi_path.xml
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
3db51d19990485be0baa191e4c616ca2367dadf2 22-Mar-2016 Chong Zhang <chz@google.com> Merge "Don't change geometry in relayout if preserve geometry is requested" into nyc-dev
21412f09b92c8e118c535420a2c2912fa8c58722 22-Mar-2016 Diego Perez <diegoperez@google.com> Merge "Remove BufferedImage allocation from PorterDuff filter" into mnc-ub-dev
am: ebf3261

* commit 'ebf3261aa6d80ad4ca1df0fd0509961ff7a1914e':
Remove BufferedImage allocation from PorterDuff filter
ebf3261aa6d80ad4ca1df0fd0509961ff7a1914e 22-Mar-2016 Diego Perez <diegoperez@google.com> Merge "Remove BufferedImage allocation from PorterDuff filter" into mnc-ub-dev
6136273888c42faad74dce19ec49904a55affc15 22-Mar-2016 Chong Zhang <chz@google.com> Don't change geometry in relayout if preserve geometry is requested

This causes scaling to be applied in the relayout window since the
requested size won't match the window size. Apply the requested size
in repositionChild instead.

bug: 27676101
Change-Id: I03beee2b9fe118a6be329b5fd1338d54e48d9a22
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
cd6e47e4455cec8daa4570ac8073d93bd567d139 21-Mar-2016 Deepanshu Gupta <deepanshu@google.com> Add guard around getXmlFileParser() call

Prevents the need to update the LayoutLib API level.

Bug: http://b.android.com/202942
Change-Id: I507239148ab8d6d45406624dba569c8b7197f979
ridge/src/com/android/layoutlib/bridge/android/RenderParamsFlags.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
86621737fc1ba2d6ce7cb97e61fc8ce186eb851a 21-Mar-2016 Deepanshu Gupta <deepanshu@google.com> Merge "Add guard around getXmlFileParser() call" into mnc-ub-dev
13d2e2e10b5f010b4ab53ff9d26e53d32f225e72 21-Mar-2016 Deepanshu Gupta <deepanshu@google.com> Add guard around getXmlFileParser() call

Prevents the need to update the LayoutLib API level.

Bug: http://b.android.com/202942
Change-Id: I507239148ab8d6d45406624dba569c8b7197f979
ridge/src/android/content/res/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/android/RenderParamsFlags.java
38735b00267b55219a77317ec3ce5ca60c5edd06 21-Mar-2016 Diego Perez <diegoperez@google.com> Merge "Account for parent scroll position" into nyc-dev
1064d35307cff0601a22c8401cb72f628883489d 19-Mar-2016 Yohei Yukawa <yukawa@google.com> Merge "Tell IMS about missing InputConnection methods." into nyc-dev
4f29d45ad44cc2e754000848e07b950e519e0b89 18-Mar-2016 Tony Mantler <nicoya@google.com> Merge "Fix build" into nyc-dev
86b66c5ef6f2170c1da74beba550b82a858ea09a 18-Mar-2016 Tony Mantler <nicoya@google.com> Fix build

Change-Id: I590db57366a40aa011ee02e6e34e64cd2e7d1115
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
d15459197f71f8cc940e2b057b399117df282f2c 04-Mar-2016 Diego Perez <diegoperez@google.com> Account for parent scroll position

When calculating the ViewInfo bounding box, account for the parent
scroll position.
Also make renderAndVerify return a RenderResult to verify some data
about the result layout.

Change-Id: I965e393c49b5030c80083daf5e058fa31400ce93
ridge/src/android/view/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/tests/res/testApp/MyApplication/golden/scrolled.png
ridge/tests/res/testApp/MyApplication/src/main/res/layout/scrolled.xml
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/RenderResult.java
8a372a0a280127743ce9a7ce4b6198c7a02d2a4f 16-Mar-2016 Jeff Sharkey <jsharkey@android.com> Refactoring FBE APIs based on council feedback.

Mostly consists of removing the word "encryption" from most APIs,
since we can't actually make promises about the data being encrypted.

Bug: 27531029
Change-Id: Iace9d7c4e64716abf86ed11847c40f3947e1d625
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
f9124ecad9ec20f572df8cdca6f985ef3f97210d 17-Mar-2016 Benjamin Franz <bfranz@google.com> Merge "Flush package restriction changes for a user." into nyc-dev
bbb3ff2b2a29d42771a9ce2fe2d6f576cff62617 09-Jul-2015 Sudheer Shanka <sudheersai@google.com> Flush package restriction changes for a user.

Change-Id: I7c4481f820b6b368487d00de6c783e64cec99f4b
ridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
19a80a1e807acd00bec999eaac7812da6ffce954 15-Mar-2016 Yohei Yukawa <yukawa@google.com> Tell IMS about missing InputConnection methods.

Summary:
This CL introduces a unified mechanism to deal with the situation
where the application directly implements InputConnection but some of
methods are not implemented. Note that there should be zero overhead
when the application extends BaseInputConnection or
InputConnectionWrapper.

Background:
When ever we add a new method to InputConnection, there has been a
risk that existing applications that directly implement
InputConnection can get java.lang.AbstractMethodError exception at
runtime, because older SDKs do not require the application developer
to implement the methods that are newly added in later SDKs. Because
of this we strongly discouraged developers to directly implement
InputConnection interface, and encouraged them to subclass
BaseInputConnection or InputConnectionWrapper instead. That said, as
requested in Bug 26945674, there is a certain demand to be able to
implement InputConnection without depending on BaseInputConnection.
The goal of this CL is to provide a reliable and sustainable solution
to above missing method scenario in InputConnection.

One of the reasons why dealing with missing InputConnection methods is
so difficult is that what InputMethodService receives to communicate
with the target application is actually a proxy class
com.android.internal.view.InputConnectionWrapper
that runs in the IME process and immediately returns true for most of
methods in InputConnection such as #commitText() and
#finishComposingText(). Because of this asynchronous nature, it is
too late to change the actual return value that the IME receives when
the application receives those one-way asynchronous IPC calls.

Solution:
To handle those cases, this CL checks the availability of
InputConnection methods that did not exist in the initial release
before the target application calls startInput(), and let the
application to send its availability bits to IMMS so that
InputConnectionWrapper running in the IME process can be initialized
with such availability bits. Note that we do know that
BaseInputConnection and its subclasses support all the InputConnection
methods, hence for most of applications we can just assume that all
the methods are available without reflection.

With such availability bits, InputConnectionWrapper is now able to
gracefully return failure code to the IME because the availability of
those methods is immutable, except for a tricky case where the
application relies on a proxy object that dynamically changes the
dispatch target.

Here is the list of APIs that we start checking the availability in
this CL.
[API Level 9+]
- InputConnection#getSelectedText(int)
- InputConnection#setComposingRegion(int, int)
[API Level 11+]
- InputConnection#commitCorrection(CorrectionInfo)
[API Level 21+]
- InputConnection#requestCursorUpdates(int)}
[API Level 24+]
- InputConnection#deleteSurroundingTextInCodePoints(int, int)
- InputConnection#getHandler()

Ideas alternatively considered: Default methods in InputConnection
We once considered having default methods in InputConnection but
abandoned this idea because it does not directly solve the problem
about how to tell the that the API does not take effect.
Also having default methods would make it difficult for application
developers to be aware of newly added methods in InputConnection.

Bug: 27407234
Bug: 27642734
Bug: 27650039
Change-Id: I3c58fadd924fad72cb984f0c23d3099fd0295c64
ridge/src/com/android/layoutlib/bridge/android/BridgeIInputMethodManager.java
7400f82699c76618d5ca24d6528580afb4695dbf 15-Mar-2016 Adrian Roos <roosa@google.com> Merge "Don't show wallpaper when backdrop is visible" into nyc-dev
d5c2db630fc816e2d9154a61ccbd6770bc57cff8 09-Mar-2016 Adrian Roos <roosa@google.com> Don't show wallpaper when backdrop is visible

Hides the wallpaper when it's not needed and fixes
the unlock animation to not unnecessairly show the
wallpaper if neither the Keyguard nor the underlying
app need it.

Also fixes a bug where the enter animation had a background
set, which led to uglyness when no wallpaper is involved.

Bug: 27533740
Change-Id: I667c6f7ca6c0e1ff7e9f793c6ddc13f6da8387b1
ridge/src/android/view/IWindowManagerImpl.java
adf62b3ebc8ae5e3e76cf6cfce978e8d1ca5bf8e 14-Mar-2016 Diego Perez <diegoperez@google.com> Do not deallocate on Bitmap.recycle

Layoutlib only disposes the bitmap and doesn't recycle them. This causes
a double deallocation that triggers an assertion.
This change makes Bitmaps to be only freed when the finalizer is called.

Bug: http://b.android.com/203129
Change-Id: Ieabc1443544cfd2b4bf8ba9c8f9a4df8dd6e8220
ridge/src/android/graphics/Bitmap_Delegate.java
95b69f82316220bc40d227bf7208920eb6ed9283 11-Mar-2016 Jorim Jaggi <jjaggi@google.com> Merge "Add ability to swap docked/fullscreen stack" into nyc-dev
d47e7e1176dcf6961c7c9fce215f48f03a5098d1 01-Mar-2016 Jorim Jaggi <jjaggi@google.com> Add ability to swap docked/fullscreen stack

Adds tap affordance that moves all tasks of the docked
stack into the fullscreen stack as well as moves the top task
of the fullscreen stack into the docked stack.

Also make sure not to trigger focus switch when tapping the divider
handle. For that, add a method so SysUI can specify the touchable
region which then gets excludes for the focus switch touch region.

Bug: 27358134
Change-Id: I34f39c53cacc0b9c00f87a792b88c3f64a5f61e1
ridge/src/android/view/IWindowManagerImpl.java
f2af68312bdcbb19411df21553d514c6aa1989bf 10-Mar-2016 Diego Perez <diegoperez@google.com> Merge "DO NOT MERGE: Initialize layoutlib variables before using them" into mnc-ub-dev
f1c6e0bd7bb2f7683207048978af4fb87ee3f7c1 08-Mar-2016 Siva Velusamy <vsiva@google.com> BridgeContext: Fix typo in attr name (toLeft -> toLeftOf)
am: af0f3bda17

* commit 'af0f3bda17ee3de4ad3560c9a675527b20e2af5f':
BridgeContext: Fix typo in attr name (toLeft -> toLeftOf)
af0f3bda17ee3de4ad3560c9a675527b20e2af5f 08-Mar-2016 Siva Velusamy <vsiva@google.com> BridgeContext: Fix typo in attr name (toLeft -> toLeftOf)

Change-Id: I214ddf066bd69d56275477712419745cf781cee3
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
39b205cc92bfc84e6eee5c7c4713ee9ab5bb645e 07-Mar-2016 Diego Perez <diegoperez@google.com> Add missing references to VNativeObject

Change-Id: I2db4ad94009c0daff4649da6f85e5c084f4c01ea
ridge/src/android/graphics/drawable/VectorDrawable_Delegate.java
7ba6dc0fcc66c96383aabd8db40adf1bac66ce7f 07-Mar-2016 Xavier Ducrohet <xav@google.com> Merge "Change BridgeResources to Resources_Delegate" into nyc-dev
5b5b1c0c5debd7a90c086f36cbafa688c857a673 07-Mar-2016 Xavier Ducrohet <xav@google.com> Merge "Animated vector drawable support" into nyc-dev
25913465464270f9332065cb31d0ac0a348edab1 07-Mar-2016 Diego Perez <diegoperez@google.com> DO NOT MERGE: Initialize layoutlib variables before using them

Change-Id: I0d2059423b46f5eb9eb50eb226cbe9a15e57fe02
ridge/src/android/content/res/Resources_Delegate.java
566b303365078fac9a454f1595add19e02631db3 01-Mar-2016 Diego Perez <diegoperez@google.com> Add support for GradientColor in layoutlib

Change-Id: Ia9a55a9e00d7ddb5263f3dbe46b5da8dde457526
idea/runConfigurations/Create.xml
ridge/src/android/content/res/BridgeTypedArray.java
ridge/src/android/content/res/ComplexColor_Accessor.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/drawable/VectorDrawable_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
ridge/tests/res/testApp/MyApplication/golden/vector_drawable.png
ridge/tests/res/testApp/MyApplication/src/main/res/color/gradient.xml
ridge/tests/res/testApp/MyApplication/src/main/res/drawable/multi_path.xml
e05f1c4684fcc7e3f6a429ff01b210aa19f75304 04-Mar-2016 Deepanshu Gupta <deepanshu@google.com> Change BridgeResources to Resources_Delegate

This is a very hacky fix to make layoutlib work with the latest support
lib. Inject a couple of fields in android.content.res.Resources to
allow using most of the earlier code as is.

Bug: 27403642
Bug: http://b.android.com/201934
Change-Id: Ia96a1b4642a1907a77d9ca7a2392f78809b92e38
ridge/src/android/content/res/BridgeResources.java
ridge/src/android/content/res/BridgeTypedArray.java
ridge/src/android/content/res/Resources_Delegate.java
ridge/src/android/graphics/BitmapFactory_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/util/NinePatchInputStream.java
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/FieldInjectorAdapter.java
9b137e27d34efb89024543ffd2def2b37307aa0c 04-Mar-2016 Deepanshu Gupta <deepanshu@google.com> Change BridgeResources to Resources_Delegate [DO NOT MERGE]

Do not merge because the resource implementation has changed in N and
the change is no longer valid there.

This is a very hacky fix to make layoutlib work with the latest support
lib. Inject a couple of fields in android.content.res.Resources to
allow using most of the earlier code as is.

Bug: 27403642
Bug: http://b.android.com/201934
Change-Id: I186cad32b1b4de64164fbad937d989e0110c6976
ridge/src/android/content/res/BridgeResources.java
ridge/src/android/content/res/BridgeTypedArray.java
ridge/src/android/content/res/Resources_Delegate.java
ridge/src/android/graphics/BitmapFactory_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/util/NinePatchInputStream.java
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/FieldInjectorAdapter.java
8d5a542f66beae774354038f15dd1afe7fcf754b 04-Mar-2016 Wale Ogunwale <ogunwale@google.com> Clear app token mAppStopped when app resumes.

It is possible for an activity to be in the stopped state without
setting it's visiblility to false in window manager.
For example, the home acitivty behind the lock screen. Since the
lock screen isn't an activity it doesn't affect the visiblity set
of the home activity, so AM doesn't tell WM to hide the app token.
However, AM uses another channel to detect that the device is locked
and moves the activity into stopped state. WM on the other hand also
detects that the device is locked and hides the window surfaces of
all windows behind the lock screen. So, at this point AM has also
told WM that the activity is stopped. Once you unlock the screen
AM resumes the activity but doesn't report any visiblility changes to WM
since it's internal state didn't change. So, if you go from the home
activity to another app the home activity window will be destroyed
before the activity is stopped because mAppStopped is set to true.
We now set mAppStopped to false when the activity is resumed.

Bug: 27286867
Change-Id: Ic75456d30abd582fa44f932f5aeeb449950157ee
ridge/src/android/view/IWindowManagerImpl.java
1b338cda4ed044691f0fe8ba59950bfc309d911d 03-Mar-2016 Diego Perez <diegoperez@google.com> Add missing translate if the drawable top is not 0,0

If the vector drawable coordinates are not 0,0 we need to translate the
canvas to that position.

Change-Id: I3a829c427ec98061da3295e3cba8655f693d390c
ridge/src/android/graphics/drawable/VectorDrawable_Delegate.java
8a9a824cd5641d214906a20a2a9372e62e9f3fb8 03-Mar-2016 Diego Perez <diegoperez@google.com> Animated vector drawable support

Change-Id: Iefd41d95503bb4f3b26020a519636a63d3da799b
ridge/src/android/graphics/drawable/AnimatedVectorDrawable_Delegate.java
ridge/src/android/graphics/drawable/AnimatedVectorDrawable_VectorDrawableAnimatorRT_Delegate.java
ridge/src/android/graphics/drawable/VectorDrawable_Delegate.java
ridge/src/com/android/internal/view/animation/NativeInterpolatorFactoryHelper_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
a38b7c180df47f88904ad6a11fda605235f6c91c 03-Mar-2016 Diego Perez <diegoperez@google.com> Merge "Implement native methods in VectorDrawable" into nyc-dev
44be5f0ed70eb1643b49a492a78dd652613e2a95 03-Mar-2016 Neil Fuller <nfuller@google.com> Merge "Change libraries needed by layoutlib to "host" libs" into nyc-dev
c9f0a1103ea307e5e157e63e7915b38f83d27ca3 03-Mar-2016 Vadim Tryshev <vadimt@google.com> Merge "Adding getManagedUserBadgedDrawableForDensity() to PackageManager." into nyc-dev
66ae66a7f74ee835807a141a216afbb254664510 19-Feb-2016 Vadim Tryshev <vadimt@google.com> Adding getManagedUserBadgedDrawableForDensity() to PackageManager.

It allows badging an image regardless of of the user (no
user id parameter). The styling for managed users is applied.

This is useful for new cases where the existing functions
wouldn't badge the icon, but we need it.

Bug: 25192539
Change-Id: I2fd2f226f626fb2e6cda1cfe072013350e12b41c
ridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
1aeb31bdbb86faef361567e37a71fe500a8f19ac 02-Mar-2016 Deepanshu Gupta <deepanshu@google.com> Merge "Add StubMethodAdapterTest" into nyc-dev
a9de835c17a8d8d36ef4ccab7cd06254f3a081fa 02-Mar-2016 Deepanshu Gupta <deepanshu@google.com> Add StubMethodAdapterTest

This tests the bugfix in StubMethodAdapter made in the change with id
I098996e43e330e995d33f12df1c16355bbc02f0f (commit 491523d)

Change-Id: I1ac897a49071dd9558bdc6b8abec29df913a6047
reate/tests/com/android/tools/layoutlib/create/DelegateClassAdapterTest.java
reate/tests/com/android/tools/layoutlib/create/StubMethodAdapterTest.java
reate/tests/com/android/tools/layoutlib/create/dataclass/StubClass.java
dbe8a0fe3b4f01f7457aafc30783e50b77c33ff3 07-Oct-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Reference android's junit in intellij project.

Prevents errors due to mismatch in junit version.

Change-Id: I2adf32efb16472aa5f5e51025b6bb75afc76a8b4
idea/libraries/junit.xml
idea/runConfigurations/Create.xml
ridge/bridge.iml
reate/create.iml
d34e33bc831b51c62630829c188ee0039580ac60 01-Mar-2016 Neil Fuller <nfuller@google.com> Change libraries needed by layoutlib to "host" libs

They are only used on host and are one of the few places
in the build that use LOCAL_JACK_ENABLED := disabled.

Bug: 27218410
Change-Id: Ida6e649ad33decc743e8190a86486e7c4f8e5c88
ndroid.mk
5d1013cf13e59b7f8dc8f16b5811cb29982e0ef3 23-Feb-2016 Diego Perez <diegoperez@google.com> Implement native methods in VectorDrawable

Most of the VectorDrawable implementation has been moved to native code.
This CL implements most of the required functionality that existed in
Marshmallow.

Change-Id: I009bcd5c166f2bfa0795d2718fabab4a549eba9f
ridge/src/android/content/res/BridgeTypedArray.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/android/graphics/drawable/VectorDrawable_Delegate.java
ridge/src/android/util/PathParser_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
e6423ee0eda00466172d86917d6d66112974f342 02-Mar-2016 Diego Perez <diegoperez@google.com> Merge "Fix layoutlib expand unit test" into nyc-dev
a67932374dbbfbe4c6440d223fc7922b313dd957 24-Feb-2016 Todd Kennedy <toddke@google.com> Revert "Revert "Remove deprecated methods / classes""

This reverts commit 5cbeb5902633646fbc0a1be252081e77aaaee7b4.

Change-Id: Id96010364d65e6131221ebbcc8ce5889a2da256c
ridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
52c2030f422c05ebec1aeb3a7476b0ecb72fb935 01-Mar-2016 Diego Perez <diegoperez@google.com> Fix layoutlib expand unit test

Changing the theme used to "Light" since currently the "Dark" theme
seems to be missing at least one value. This test doesn't visually
depend on the theme so just changing it to "Light" to make it pass.

Change-Id: Ibb885bf3948dcf587de08896540dda622f86e8b3
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
1db8850b793109da0fc4a65ec837b1a329072b07 29-Feb-2016 Diego Perez <diegoperez@google.com> Merge "Fix StackMap renaming in Java 8" into nyc-dev
70f97ba54a727e456fd8d4647ad633a03281321e 24-Feb-2016 Diego Perez <diegoperez@google.com> Fix StackMap renaming in Java 8

With the move to Java 8 of layoutlib, we now need to make sure that the
method stackmaps are kept up to date or the class verification step will
fail. Up until now, we were ignoring them but this caused TestDelegates
to start failing.
This updates the code to make sure that when we modify a class name, we
also update the stackmap in the calls.

Change-Id: Iddbde7454f065ddb8da5bb1ab499ec0616f9b4fe
reate/src/com/android/tools/layoutlib/create/RefactorClassAdapter.java
94ce94e96069ab6c2ece4864ba4c7692f3168352 25-Feb-2016 Muyuan Li <muyuanli@google.com> Allows components to register shortcut key.

The registered shortcut will be called from PhoneWindowManager,
before dispatching

Change-Id: If26128939b45a639c8895719a7a23ca433f39fd9
(cherry picked from commit 4da863c5a8872dcabb179a978a2b2157d9081679)
ridge/src/android/view/IWindowManagerImpl.java
fe01ea05dd196acaf95a61e169f6b75654ae0875 24-Feb-2016 Todd Kennedy <toddke@google.com> Merge "Revert "Remove deprecated methods / classes"" into nyc-dev
5cbeb5902633646fbc0a1be252081e77aaaee7b4 24-Feb-2016 Todd Kennedy <toddke@google.com> Revert "Remove deprecated methods / classes"

This reverts commit 9706c01f9b92cee64bb84782138735225c8588e0.

Change-Id: I14c53ab140220e48f6728b1173ea58760bbeb7f9
ridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
ca67844e0c6b564970b8d329009c0d110888a3fc 24-Feb-2016 Todd Kennedy <toddke@google.com> Merge "Remove deprecated methods / classes" into nyc-dev
c87e2b46fb949f1ba5d72b842bad443b36fd9abc 24-Feb-2016 Jorim Jaggi <jjaggi@google.com> Fix build

Change-Id: Id21200a8239908c18379d67639c090ccfd3772f2
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
7eeacc27e3466cffcdb617b852ea6ae99ac0ee4a 23-Feb-2016 Diego Perez <diegoperez@google.com> Fix FontFamily nAddFontWeightStyle in nyc

Change-Id: I156812384c758edbd6efa23fd18a0ce7b9b82993
ridge/src/android/graphics/FontFamily_Delegate.java
5cf733f89b4016aecc3b96e2a72e98b2a571aeb8 23-Feb-2016 Yohei Yukawa <yukawa@google.com> Fix build breakage.

This follows up to my previous CL [1], which forgot to update
BridgeIInputMethodManager.java (again!).

[1] I56934f18e30d90fcdf77bcbb0c35a92a5feb1b82
05c25f8a3a033816ac25aa5cd7db5b1ab495bc3f

Bug: 25373872
Change-Id: I0643069fd0b677115c89c340b7a23f1d12bd7988
ridge/src/com/android/layoutlib/bridge/android/BridgeIInputMethodManager.java
26b27543109689a7a25cc0ddf764cf785b700ae0 22-Feb-2016 Diego Perez <diegoperez@google.com> Remove layoutlib RunQueue implementation

Change-Id: Id2b666f086a48f101ff7ef4177fe28ad17d10783
ridge/src/android/view/ViewRootImpl_RunQueue_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
18780f60ef4c71a7de3509d9978ef81df7f5f372 22-Feb-2016 Diego Perez <diegoperez@google.com> DO NOT MERGE: Fix Canvas memory leak
am: b75a0426d8

* commit 'b75a0426d8c2339f2d552f96cc4dfcd86deb3447':
DO NOT MERGE: Fix Canvas memory leak
f5650cf3a3a1a8d6ced9fc7b0f399689c9adc1b8 01-Feb-2016 Diego Perez <diegoperez@google.com> Fix Canvas memory leak

Every RenderSession would call the AttachInfo.setAttachInfo but wouldn't
issue a View.dispatchDetachedFromWindow.
This caused some Canvas to be slowly leaked in the DelegateManager in
every session.

Change-Id: Iec418a86f5c5e55c2a2860ef945268c51c0e8173
ridge/src/android/view/AttachInfo_Accessor.java
ridge/src/android/view/HandlerActionQueue_Delegate.java
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
b75a0426d8c2339f2d552f96cc4dfcd86deb3447 01-Feb-2016 Diego Perez <diegoperez@google.com> DO NOT MERGE: Fix Canvas memory leak

Every RenderSession would call the AttachInfo.setAttachInfo but wouldn't
issue a View.dispatchDetachedFromWindow.
This caused some Canvas to be slowly leaked in the DelegateManager in
every session.

Change-Id: Ib0392303e6d00a4fe5494ae484f28135b1fe6b28
ridge/src/android/view/AttachInfo_Accessor.java
ridge/src/android/view/ViewRootImpl_RunQueue_Delegate.java
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
4f2103631a44303257e3adbe89fa2a6854841bbb 19-Feb-2016 Diego Perez <diegoperez@google.com> Merge "Revert "Fix Canvas memory leak"" into mnc-ub-dev
am: 44f92b00d1

* commit '44f92b00d1a060773625de5884fc86e7218e2dd5':
Revert "Fix Canvas memory leak"
44f92b00d1a060773625de5884fc86e7218e2dd5 19-Feb-2016 Diego Perez <diegoperez@google.com> Merge "Revert "Fix Canvas memory leak"" into mnc-ub-dev
cf935728897e9f208e250d3bb57296c84cfa0ef9 19-Feb-2016 Diego Perez <diegoperez@google.com> Revert "Fix Canvas memory leak"

This reverts commit e82bd72b6e7ab3135d3b28fc2c2694d08af45c3d.

Change-Id: Ie9ef25b17d5f725d5054c039992a8cd2912868a6
ridge/src/android/view/AttachInfo_Accessor.java
ridge/src/android/view/ViewRootImpl_RunQueue_Delegate.java
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
1d3c41e563c30d85d5524df598f4bd6e6a226362 19-Feb-2016 Diego Perez <diegoperez@google.com> Merge "Fix Canvas memory leak" into mnc-ub-dev
am: bad0e07ee9

* commit 'bad0e07ee9163d6b0f0bf73ad591ff6e453199ef':
Fix Canvas memory leak
bad0e07ee9163d6b0f0bf73ad591ff6e453199ef 19-Feb-2016 Diego Perez <diegoperez@google.com> Merge "Fix Canvas memory leak" into mnc-ub-dev
e82bd72b6e7ab3135d3b28fc2c2694d08af45c3d 01-Feb-2016 Diego Perez <diegoperez@google.com> Fix Canvas memory leak

Every RenderSession would call the AttachInfo.setAttachInfo but wouldn't
issue a View.dispatchDetachedFromWindow.
This caused some Canvas to be slowly leaked in the DelegateManager in
every session.

Change-Id: I0322767e5fffc6053ce1be852dd8ca904dfaa137
ridge/src/android/view/AttachInfo_Accessor.java
ridge/src/android/view/ViewRootImpl_RunQueue_Delegate.java
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
003ee198518490c9572e610ddc21e8b3a024364c 18-Feb-2016 Jeff Sharkey <jsharkey@google.com> Merge "Make BackupManager encryption aware." into nyc-dev
16e17a77301a8b8d46d5762d301fc29ceb0673ab 18-Feb-2016 Diego Perez <diegoperez@google.com> resolve merge conflicts of aa9c9fb29e to nyc-dev

Change-Id: Id46238cb759f2d63a072cb7ea8a27c5fd8a6672e
2c1ba9a961d4f96c26df260ee437655ad9e7c03e 17-Feb-2016 Jeff Sharkey <jsharkey@android.com> Make BackupManager encryption aware.

Backup requires both CE and DE storage to be available, so delay
spinning up the backup system until the user is unlocked, since
that's when CE storage becomes available. Note that devices without
FBE immediately transition USER_SYSTEM into the unlocked state,
since their CE is always available.

Offer to backup and restore files under both CE and DE. Since DE
is effectively the same as CE, most logic is simply duplicated for
now, but it could be simplified in the future. Since system apps
can force their default storage location to DE, we always build
explicit CE and DE paths.

Add getDataDir() to give clean access to the top-level private data
directory, but disclaim that apps shouldn't create files there.

Bug: 26279618
Change-Id: Ic34a4b330223725db93b1d0f5c9dffc88002c61f
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
621c43d8e538a82047100ec56b88e74bb5dea57e 18-Feb-2016 Deepanshu Gupta <deepanshu@google.com> Revert "Switch LayoutLib to Java 8"

This reverts commit 7914e4ca03322427740d6f8c00837375dbf3031a.

Change-Id: I0f7c40199e4c31c4f321d40d4d4dfe60a0fda299
ndroid.mk
ridge/Android.mk
ridge/tests/Android.mk
reate/Android.mk
reate/tests/Android.mk
3b6ea2e3a8545fb6e9a62079fa4fcdbe859b0d49 18-Feb-2016 Deepanshu Gupta <deepanshu@google.com> Entry -> Map.Entry. Fixes build break

Change-Id: I72fe70d6f617c7753a278e134ac22d71125d8def
ridge/src/android/graphics/FontFamily_Delegate.java
7914e4ca03322427740d6f8c00837375dbf3031a 18-Feb-2016 Deepanshu Gupta <deepanshu@google.com> Switch LayoutLib to Java 8

The main build hasn't swtiched to java 8, but lambdas are already used
in layoutlib. This fixes the build break.

Change-Id: I4dd69ebd736179067899f5d86d3608d5fdb03d93
ndroid.mk
ridge/Android.mk
ridge/tests/Android.mk
reate/Android.mk
reate/tests/Android.mk
491523d52cd8368ef9a92e95fb3e9332bf86a996 07-Oct-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib fixes for N

Moves LayoutLib to Java 8 - YAY!
Fix delegates

Change-Id: I098996e43e330e995d33f12df1c16355bbc02f0f
idea/inspectionProfiles/Project_Default.xml
idea/misc.xml
idea/runConfigurations/Bridge_quick.xml
ndroid.mk
ridge/Android.mk
ridge/src/android/content/res/BridgeResources.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/FontFamily_Delegate.java
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/android/graphics/Typeface_Delegate.java
ridge/src/android/text/Hyphenator_Delegate.java
ridge/src/android/util/PathParser_Delegate.java
ridge/src/android/widget/TimePickerClockDelegate_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/binding/AdapterHelper.java
ridge/src/libcore/util/NativeAllocationRegistry_Delegate.java
ridge/tests/Android.mk
ridge/tests/src/com/android/layoutlib/bridge/intensive/ImageUtils.java
reate/src/com/android/tools/layoutlib/create/AbstractClassAdapter.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/StubMethodAdapter.java
aa9c9fb29e0630f252fb60e1972d333bbc54d70d 17-Feb-2016 Diego Perez <diegoperez@google.com> Replace SimpleDateFormat implementation

This will process all the classes and replace all the uses of
java.text.DateFormat and java.text.SimpleDateFormat with the
android.icu.text. package implementations. The original ones do not
match the Android platform behaviour.

Change-Id: Id55f103c21117a8d6403bf2124b6c1a0e1fb2f71
ridge/src/android/widget/SimpleMonthView_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
eb84b1843a3f6805c6109c1d9d023550229a3fc5 26-Jan-2016 Andrei Stingaceanu <stg@google.com> Suspend packages - one call for multiple packages

Refactor setPackageSuspended into setPackagesSuspended. The rationale
is that the consumers of this API are likely to want to remove
multiple packages at once. Rather than calling the API N times, call
it just once.

The good part is that we already have the broadcast intent for
suspended packages take an array so only one broadcast. Less stress
on the system.

Another good part is that (right now) we only have one consumer of
this API and it will be easy to make changes once this CL goes in.

As a shell command, for consistency only allowed one package at
a time.

Bug: 22776761
Change-Id: Ic8b8cf64d0a288ea3a282bb7b72f9d663b3b0049
ridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
5ae4e73ef0747c2d08a901f1a76d8fb8ee64a53a 17-Feb-2016 Andrei Stingaceanu <stg@google.com> Merge "Suspend packages - new API for retrieving the suspended status" into nyc-dev
9706c01f9b92cee64bb84782138735225c8588e0 13-Feb-2016 Todd Kennedy <toddke@google.com> Remove deprecated methods / classes

Now that we've moved the majority of system components to the
PackageInstaller, we can remove the majority of the "installPackage"
methods and the VerificationParams/ContainerEncryptionParams
classes. There are still some lingering references to the two
installPackage() methods left [both internal and external; play
is using these methods via reflection].

Bug: 24542768
Change-Id: Ib65323d842d9f0e7fed60e37e6b5f103c94c859b
ridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
355b232d7998cfc9b29d42a0356390e25191bcbd 12-Feb-2016 Andrei Stingaceanu <stg@google.com> Suspend packages - new API for retrieving the suspended status

Instead of always rebuilding the full ApplicationInfo for a
package when callers are only interested in the suspended status
add a new fast API in Packagemanager (which only checks the
suspended user setting for the requested package and returns
a boolean) and change the appropriate caller code too.

Bug: 26794775
Bug: 22776761
Change-Id: Ide8428ef734479360d5a8a75fd8e0ed8ddf2da7a
ridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
115d2c189a46f535778d9dd0923f703ff2f888fe 16-Feb-2016 Jeff Sharkey <jsharkey@android.com> Add feature versions for devices and apps.

We're starting to see more instances of device features that will
increment separately from the SDK API level, such as camera HAL,
GPU capabilities, Bluetooth, and other hardware standards.

This change adds the ability for device features to specify a
version, which is defined to be backwards compatible. That is, apps
requesting an older version of a feature must continue working on
devices with a newer version of that same feature.

When a version is undefined, we assume the default version "0".

Bug: 27162500
Change-Id: If890bf3f3dbb715e8feb80e7059a0d65618482ea
ridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
989b58a633ed6f2192a172855525d86477452884 10-Feb-2016 Vladislav Kaznacheev <kaznacheev@google.com> Update pointer icon when View.setPointerIcon is called

Currently the updated pointer icon is only displayed after
the next mouse move.

Bug:27107871
Change-Id: Ieed57b07fe44699735179cf57968a9bb08981396
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
a87b07d7fafd59ae26073a80cd742b17ea427ecd 06-Nov-2015 Ben Wagner <bungeman@google.com> Add support for gx font variation axes.

This adds an 'axis' child element to the 'font' element. The 'axis'
element has attributes 'tag' (a four byte identifier) and 'stylevalue'
(a float value) to the parser. This also modifies reading the font file
name in a backwards compatible fashion by using only the direct #text
children of the 'font' element. (Both the Minikin and Skia parsers now
allow the font file name on a separate line in the fonts.xml file).

This information is then passed through to Skia in order to select the
desired variation. The Skia parser already parses this way and has for
some time, so Chrome and WebView can already read this format.

Change-Id: I15623fe864fa92b2bf0705af5e389daedfb77e5c
(cherry picked from commit b8e367fb7428076ff2e4aa2a97adaed1ef806e92)
ridge/src/android/graphics/FontFamily_Delegate.java
69d9feb93829601b586685f919650e0f77daf390 11-Feb-2016 Jerome Gaillard <jgaillard@google.com> Layoutlib supports rounded corners of different sizes am: 3381cde9f2
am: 6f35d2c6ea

* commit '6f35d2c6ea1d18decd6b646035fd02fd5b1f0256':
Layoutlib supports rounded corners of different sizes
3381cde9f293c52f195b31b0e4049649db31181a 05-Feb-2016 Jerome Gaillard <jgaillard@google.com> Layoutlib supports rounded corners of different sizes

Bug: http://b.android.com/29098
Change-Id: I4e7dc3810559b509baf5ea306221c1d2504be0e1
ridge/src/android/graphics/Path_Delegate.java
ridge/src/android/graphics/RoundRectangle.java
8c6d8a7ef9ef057833e36efa074138d06a8f01ca 10-Feb-2016 Svet Ganov <svetoslavganov@google.com> Fix build

Change-Id: I7c0601f873e37c7ebf71068ba81366704672bd70
ridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
e12aece4cad849efbbe6a806f132613a56699230 03-Feb-2016 Robert Carr <racarr@google.com> Ensure surfaces stay alive until activity stop.

Prior to this commit in this case of activity pause, with finishing=true
the activity manager will notify us of app visibility and we will begin
an exit animation. When this exit animation finishes, we will destroy
the application surface (unless its eligible for saving). However there
are two cases where this breaks down:

1. The exit animation finishes before the activity thread handles
the stop transition. Many activities stop rendering on Pause
but many do not and it is totally legal to do so. Sometimes this
results in non fatal dequeue buffer errors and sometimes results in
fatal errors with Pixel Buffers, etc...
2. We may resume the activity shortly after asking the window manager
to pause it. If the window wasn't eligible for animation, we will
immediately destroy it after being told of the visibility change
following PAUSE_FINISHING. It's possible for this to complete
before we process the resume. On the other hand the client
happilly processes the resume and transitions back from PAUSE
and then crashes once it attempts to use it's surface.

In this commit we have the activity manager notify the window manager
when an application has actually finished (or we have timed out
waiting). For windows which have not been explicitly removed by the
client, we defer destruction until we have received both this signal
and the animation has completed.

Bug: 26793431
Change-Id: Ib6ee8fbdd1f03450fbbfd62468a19e97774befab
ridge/src/android/view/IWindowManagerImpl.java
c1a8e3311fe63d3b1edad542aea9c7e4f118808a 08-Feb-2016 Diego Perez <diegoperez@google.com> Remove BufferedImage allocation from PorterDuff filter

Change-Id: Iedc280081e1889d316df17863f6ddf377592bc4c
ridge/src/android/graphics/PorterDuffColorFilter_Delegate.java
08df538482f00611133a0b3aba64e8fed663afc3 01-Feb-2016 Deepanshu Gupta <deepanshu@google.com> Remove obsolete try catch am: ebdcc80ac2
am: 29e8071d2e

* commit '29e8071d2e9f3a8171624fd63b849f5c14360b21':
Remove obsolete try catch
1444cfd50efd95662e848009d1c2e8a81291efee 01-Feb-2016 Jorim Jaggi <jjaggi@google.com> Fix build

Change-Id: Ifed64dc2a4db9a58c3588ea0ca899f628efe685a
ridge/src/android/view/IWindowManagerImpl.java
ebdcc80ac26ae51ba27d9469a501a6242256aa50 01-Feb-2016 Deepanshu Gupta <deepanshu@google.com> Remove obsolete try catch

The try catch was to prevent crashing on preview releases of Android
Studio. We don't support them anymore.

Change-Id: I8e33cae98117c0034aea1b56903b623fcb64435e
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
35871f2c2bb114806b4e3f109960b7f863d7885c 30-Jan-2016 Jeff Sharkey <jsharkey@android.com> Offer to migrate databases and SharedPreferences.

Databases and SharedPreferences often involve multiple files under
the hood, so developers wanting to migrate them between different
storage contexts should ask us to make sure all relevant files are
migrated correctly.

This makes a best-effort attempt to recover from battery pulls
during migration, while still trying to alert developers to
conflicting files.

Bug: 26668510, 25860525
Change-Id: I9ffa3e8cb6191dfd4237b9466a081d6d77df3ba0
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
b1faf60b896afe235175354ffd90290ff93a54b4 27-Jan-2016 Wale Ogunwale <ogunwale@google.com> Use resizeMode integer instead of resizeable boolean.

Changes activity manager and window manager to use resizeMode
as defined by ActivityInfo#resizeMode instead of a boolean.

Bug: 26774816
Change-Id: I8cef46d9fba6bfdd21df7da63ed5d5330ad03d4b
ridge/src/android/view/IWindowManagerImpl.java
a4a58efe8203d63a9a6bf78b0fa9f2992b25871b 27-Jan-2016 Jorim Jaggi <jjaggi@google.com> Fix app staying in drag resizing when undocking

When dismissing the docked stack, the fullscreen stack stayed in drag
resize mode because it got a relayout, but because the bounds didn't
change (it switches to the fullscreen layout a bit earlier) it never
called WM.relayoutWindow, so it stayed in drag resize mode indefinitely.

To fix this, introduce forceRelayout in Window.resized(), which makes
sure the client always calls relayoutWindow. Set this to true whenever
drag resizing is changing.

For some very weird reason this also broke that home button was not
responding anymore.

Bug: 26806532
Change-Id: I4b39c1c419a166aa7093c31226f2a4915f642328
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
2260a618424b1cbdb1a051e613bd9e24a25d8436 26-Jan-2016 Ian Pedowitz <ijpedowitz@google.com> Fix build and reorder methods to match ec6a447c86b03f5896fdb717de530c8abf8887f9

Change-Id: I39ee2864eda489bf0e485ea96d30e56b29500865
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
0a66b6bc9226c170f1a522f81aca04cf03fd41a2 26-Jan-2016 Filip Gruszczynski <gruszczy@google.com> Fix build.

Change-Id: I68d6fade1b2a44a3542182914e0cd5853f4f0a81
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
676ae8c8c95e4246cfd03c232c080c25b3ca5dea 23-Jan-2016 Deepanshu Gupta <deepanshu@google.com> Merge "Remove GregorianCalendar hack" am: 187c022bf1
am: 08f736e7b1

* commit '08f736e7b143f825fe3c29e70e9b505bbf8e1ae6':
Remove GregorianCalendar hack
c8680438c0481b9c1e2b0bc856f900057ea14ba2 23-Jan-2016 Vladislav Kaznacheev <kaznacheev@google.com> Merge "Change mouse pointer when drag and drop is active"
08f736e7b143f825fe3c29e70e9b505bbf8e1ae6 23-Jan-2016 Deepanshu Gupta <deepanshu@google.com> Merge "Remove GregorianCalendar hack"
am: 187c022bf1

* commit '187c022bf187f137d48d9031c43cfc233c9fc158':
Remove GregorianCalendar hack
ba761124e624ffed2681a9e171cd3f7d8c6ed59e 22-Jan-2016 Vladislav Kaznacheev <kaznacheev@google.com> Change mouse pointer when drag and drop is active

Mouse pointer is set to STYLE_GRAB when the drag has started and
reset to STYLE_DEFAULT when the drag has ended.

Resetting the pointer shape to the one defined by an underlying
view will be handled in a separate patch.

Bug: 24415739
Change-Id: I8df0a08c5701a34a48f10ec6b43c2cf2e6362d61
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
4f3d0c6caab16a7296ad46179762e0c80e55e130 22-Jan-2016 Deepanshu Gupta <deepanshu@google.com> Remove GregorianCalendar hack

Bug: http://b.android.com/199424
Change-Id: I589d153e1f57b6302c6fe3c031c5c63e33ad9996
ridge/src/libcore/util/ZoneInfo_WallTime_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
e797745d757ef8eda5e36c33fec3ca74c0f4ec99 22-Jan-2016 Selim Cinek <cinek@google.com> Fix build by adding missing method

Change-Id: I4309225f9c799237857ce4c8f7ae2f8667d0b8be
ridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
751766a561048a3dbf20e423ad57dab7f69b7b7e 21-Jan-2016 Jerome Gaillard <jgaillard@google.com> Deals with translation and scaling in layoutlib am: ded4d14e33
am: cc90965d8f

* commit 'cc90965d8f3b8779fc477ec8a43b16306e5da535':
Deals with translation and scaling in layoutlib
ded4d14e3348ebb0cdfa3498a53d3fbfc58b2043 21-Jan-2016 Jerome Gaillard <jgaillard@google.com> Deals with translation and scaling in layoutlib

Layoutlib now correctly interprets the translation and scaling
xml attributes of views, by implementing what the Android platform
does in native code.

Change-Id: Ie8465f40ef4508d3c31796200800f12cb8f883a4
ridge/src/android/view/RenderNode_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
b384adf63fe227798db859e403c6a2a75dd204a6 20-Jan-2016 Jerome Gaillard <jgaillard@google.com> Merge "Deals with android:rotation attribute in layoutlib" into mnc-ub-dev am: 7efb74d54a
am: 426910e4df

* commit '426910e4dfb1f84f93697017c90400c0b4f8e6c0':
Deals with android:rotation attribute in layoutlib
7efb74d54a22d0c693ebddf5438815b65bc67616 20-Jan-2016 Jerome Gaillard <jgaillard@google.com> Merge "Deals with android:rotation attribute in layoutlib" into mnc-ub-dev
0102a8a8e957c38e8fe40e6cd184339ea9f38906 19-Jan-2016 Rob Carr <racarr@google.com> Merge "Replace SurfaceViews across resize trigerred relaunches."
23fa16b759f023ea18ab9f84e89df50d4b449dfd 13-Jan-2016 Robert Carr <racarr@google.com> Replace SurfaceViews across resize trigerred relaunches.

In resize modes where we are preserving the main application
window, we need to tell the WindowManager to prepare to replace
the child surfaces, or they will dissapear across relaunches.

Bug: 26070641
Change-Id: I864168688dc320e9280e651f9c5df614f52bc96c
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
c92d70dff716a8b38982b3d6ec05427ad66497fa 19-Jan-2016 Jerome Gaillard <jgaillard@google.com> Deals with android:rotation attribute in layoutlib

The way Android views deal with their rotation xml attribute is through
native code called for hardware accelerated rendering. So layoutlib
has to bypass that in order to take those attributes into account.

Bug: http://b.android.com/73300
Change-Id: Ieb5bf0567a25a9021491ebf3250cedd0752f7863
ridge/src/android/view/RenderNode_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
82b425f85397ae9ed89bc423b1a382ecba6798a7 19-Jan-2016 Diego Perez <diegoperez@google.com> Fix bug in PropertyValuesHolder_Delegate method index am: ada8c117b1
am: 0eac32be0b

* commit '0eac32be0b7804184ad5e61af87f79d45b82c6b2':
Fix bug in PropertyValuesHolder_Delegate method index
ada8c117b197dd61bd472399147dd18ff337a204 19-Jan-2016 Diego Perez <diegoperez@google.com> Fix bug in PropertyValuesHolder_Delegate method index

The method index in PropertyValuesHolder was using only the method name
+ the number of parameters in the call to index the different properties
methods. This worked ok most of the time because, for a given method
name (let's say setTrimStartOffset), the class is usually the same.
However, if the same method name is used in multiple classes, this will
cause collisions and will most likely crash.

Change-Id: Ie6fa8872c5c5e69e690f4f1bb79191a31bef2a28
ridge/src/android/animation/PropertyValuesHolder_Delegate.java
365bd8f9b12e1c3d7314e165894980f1c1314112 19-Jan-2016 Diego Perez <diegoperez@google.com> New path interpolation to paint vector drawables am: b9c48d8f49
am: 6952063e71

* commit '6952063e7166599f5300427019ca845bbaafa660':
New path interpolation to paint vector drawables
b9c48d8f49d35e2682c7205a9d8d5fcc25d7c736 18-Dec-2015 Diego Perez <diegoperez@google.com> New path interpolation to paint vector drawables

Before this CL, PathMeasure_Delegate would use Path_Delegate.approximate
to get a path segment to draw. Path_Delegate.approximate uses a
flattening iterator to do the path approximation.
Unfortunately, because we do not control the stroke mode while painting,
in some cases the approximation would draw unwanted artifacts caused by
the rough approximation and the use of wrong miter values.
This CL does a much better calculation of the path and interpolates the
segments of the curves instead of replacing them with line segments.

This also fixes an issue with the calculation of empty paths.

Bug: http://b.android.com/187256

Change-Id: I450f7aa4c3d9efcbf902a40c3b4d6d388546893f
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/PathMeasure_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/com/android/layoutlib/bridge/util/CachedPathIteratorFactory.java
ridge/tests/res/testApp/MyApplication/golden/vector_drawable.png
ridge/tests/res/testApp/MyApplication/src/main/res/drawable/multi_path.xml
ridge/tests/res/testApp/MyApplication/src/main/res/layout/vector_drawable.xml
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
0da43029fd73129e39e8d00d17cd7423d99f9634 16-Jan-2016 Jorim Jaggi <jjaggi@google.com> Fix build

Change-Id: I6d4bebf90c11a4a00d259aac34bb9459d973da9b
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
15cc7bba8d04c7ced6fa41bafc9810f0b55bbe12 15-Jan-2016 Deepanshu Gupta <deepanshu@google.com> Merge "Fix custom font rendering" into mnc-ub-dev am: f5984d5fce
am: 14df39f9e5

* commit '14df39f9e5855caef8d272fb136abe17b225d971':
Fix custom font rendering
9757c933b0d809f2777231d312a59fbbd2f97a1d 15-Jan-2016 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Fix device used comments in intensive tests am: 1665a621da
am: bbd0b324ba

* commit 'bbd0b324ba8e89bd51aad0a59b1a1c891383779f':
LayoutLib: Fix device used comments in intensive tests
4da12f19a62ff72cbdc31825a6338d196d3c4846 15-Jan-2016 Deepanshu Gupta <deepanshu@google.com> Merge "Minor fix to wrong error message"
8b4a6981fdd7849a57de2f56203cfd81e9eb6e99 15-Jan-2016 Tor Norbye <tnorbye@google.com> Minor fix to wrong error message

Change-Id: I3d34c90d37d35d0649a6ef8a73ca0d9320f975dd
ridge/src/com/android/layoutlib/bridge/impl/binding/AdapterHelper.java
f5984d5fce511a669e8d4bb6eaeb9679ff2ba9f0 15-Jan-2016 Deepanshu Gupta <deepanshu@google.com> Merge "Fix custom font rendering" into mnc-ub-dev
2ea852541fd7c7af14b6919c5c2f57584b896d2b 14-Jan-2016 Deepanshu Gupta <deepanshu@google.com> Fix custom font rendering

The context was using the wrong asset manager.

Bug: http://b.android.com/198897
Change-Id: Id58473a4539ed93a9f338c730686128c7089fc92
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
1665a621da2d503d405fb784bd50b5a8596539a1 05-Jan-2016 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Fix device used comments in intensive tests

Change-Id: I65ee2f8bdf096ea991e72c99777c8981da7b5ae2
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
b2d135694f5a2979e7acef48255a6ea10f749dd2 14-Jan-2016 Wale Ogunwale <ogunwale@google.com> Fix build breakage.

Bug: 22405482
Change-Id: I8fc522885801e9735544ec3820c8fdd4a4368d71
ridge/src/android/view/IWindowManagerImpl.java
ridge/src/android/view/WindowCallback.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
ridge/src/com/android/layoutlib/bridge/android/view/WindowManagerImpl.java
0beaeadbe3a32825229066dac9a7d659172a1cd9 11-Jan-2016 Deepanshu Gupta <deepanshu@google.com> Merge "Fix ninepatch scaling." into mnc-ub-dev am: 0c08fc0fc5
am: 2aebcddf02

* commit '2aebcddf02383c84a8a21279d32fd00376b8c25e':
Fix ninepatch scaling.
63ebf34d6d7b228c477341bbe0fd214ab8a74b0b 11-Jan-2016 Jerome Gaillard <jgaillard@google.com> Merge "Get color state list file content from PSI instead of disk" into mnc-ub-dev am: 171a2a9322
am: 1bddf2b19d

* commit '1bddf2b19dbfc3f1edc540a5aaaacd84f8831412':
Get color state list file content from PSI instead of disk
0c08fc0fc58be4f52527d7a0529960752056e83b 11-Jan-2016 Deepanshu Gupta <deepanshu@google.com> Merge "Fix ninepatch scaling." into mnc-ub-dev
171a2a932234cdbc25ab672c5ea2285adb6eca84 11-Jan-2016 Jerome Gaillard <jgaillard@google.com> Merge "Get color state list file content from PSI instead of disk" into mnc-ub-dev
b63da06a7ab9ad06184b0359abddd9137742ea4a 14-Dec-2015 Jerome Gaillard <jgaillard@google.com> Get color state list file content from PSI instead of disk

Use new functionality from callback to get the content of state list files
from PSI instead of disks.

Bug: http://b.android.com/183767
Change-Id: Ic256d1e7787209d772ccd42c2e3c7f409cac2964
ridge/src/android/content/res/BridgeTypedArray.java
cd65448ccd13c4c2d0fe9e9623fec3a898ab9372 09-Jan-2016 Jeff Sharkey <jsharkey@android.com> Even more PackageManager caller triage.

Finish moving all UID/GID callers to single AIDL method that requires
callers to provide flags.

Triage AppWidgets and PrintServices, which currently can only live on
internal storage; we should revisit that later.

Fix two bugs where we'd drop pending install sessions and persisted
Uri grants for apps installed on external storage.

Bug: 26471205
Change-Id: I66fdfc737fda0042050d81ff8839de55c2b4effd
ridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
80dc34e3587bad9334d79f91eb1a7f3e2478205b 08-Jan-2016 Deepanshu Gupta <deepanshu@google.com> Merge "Java 8 in layoutlib-create"
23e47f5621271db9b84f53f15a3e3d81d8b8b48d 08-Jan-2016 Deepanshu Gupta <deepanshu@google.com> Java 8 in layoutlib-create

Upgrade to ASM 5 and diamond operators.

Also minor fixes here and there.

Bug: 26442940
Change-Id: I5611ed0889aa94cca8655fec47799e1ddccb0150
idea/compiler.xml
reate/Android.mk
reate/create.iml
reate/src/com/android/tools/layoutlib/create/AbstractClassAdapter.java
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/ClassHasNativeVisitor.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/DelegateClassAdapter.java
reate/src/com/android/tools/layoutlib/create/DelegateMethodAdapter.java
reate/src/com/android/tools/layoutlib/create/DependencyFinder.java
reate/src/com/android/tools/layoutlib/create/InjectMethodRunnables.java
reate/src/com/android/tools/layoutlib/create/InjectMethodsAdapter.java
reate/src/com/android/tools/layoutlib/create/Main.java
reate/src/com/android/tools/layoutlib/create/MethodListener.java
reate/src/com/android/tools/layoutlib/create/OverrideMethod.java
reate/src/com/android/tools/layoutlib/create/PromoteFieldClassAdapter.java
reate/src/com/android/tools/layoutlib/create/ReplaceMethodCallsAdapter.java
reate/src/com/android/tools/layoutlib/create/StubMethodAdapter.java
reate/src/com/android/tools/layoutlib/create/TransformClassAdapter.java
reate/src/com/android/tools/layoutlib/java/AutoCloseable.java
reate/tests/Android.mk
reate/tests/com/android/tools/layoutlib/create/AsmAnalyzerTest.java
reate/tests/com/android/tools/layoutlib/create/AsmGeneratorTest.java
reate/tests/com/android/tools/layoutlib/create/ClassHasNativeVisitorTest.java
reate/tests/com/android/tools/layoutlib/create/DelegateClassAdapterTest.java
e7565ad9593df7f4b1ef37bca2d88cb2f25aa02d 07-Jan-2016 Alex Klyubin <klyubin@google.com> Merge "[1/3] Remove unnecessary throws statement in ServiceManager" am: d1240219aa
am: 4a06b7ea7e

* commit '4a06b7ea7e493bf7b575da5219429e2cbeb5b3e8':
[1/3] Remove unnecessary throws statement in ServiceManager
4a06b7ea7e493bf7b575da5219429e2cbeb5b3e8 07-Jan-2016 Alex Klyubin <klyubin@google.com> Merge "[1/3] Remove unnecessary throws statement in ServiceManager"
am: d1240219aa

* commit 'd1240219aadedc867b50158c67d1737a27fa7c6f':
[1/3] Remove unnecessary throws statement in ServiceManager
8588bc1ef1f020bbe4a24d46874f675708149a57 07-Jan-2016 Jeff Sharkey <jsharkey@android.com> Add flags to requests for package UID/GIDs.

This gives callers the ability to request details for missing
packages. Also add annotations for userId and appId variables and
start tagging their usage.

Change-Id: I63d5d7f870ac4b7ebae501e0ba4f40e08b14f3f6
ridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
9ccebbfc370b24bfc4bba1ed65f254b2ed9d4e07 06-Jan-2016 Umair Khan <omerjerk@gmail.com> [1/3] Remove unnecessary throws statement in ServiceManager

The exception is already caught by the try-catch block.

Change-Id: I0c10fe51d12a10cbc02a25c719d03a4ba6497767
Signed-off-by: Umair Khan <omerjerk@gmail.com>
ridge/src/android/os/ServiceManager.java
e06b4d1d9f718b9fe02980fea794a36831a16db2 06-Jan-2016 Jeff Sharkey <jsharkey@android.com> Consistent naming for PackageManager methods.

When hidden PackageManager methods take a userId argument, they
should be named explicitly with the "AsUser" suffix. This fixes
several lagging examples so that we can pave the way to safely
start passing flags to new methods without scary overloading.

Also fix spacing issues in various logging statements.

Change-Id: I1e42f7f66427410275df713bea04f6e0445fba28
ridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
4f6d400b0fa4c94e0f785a7b15ffb30126e6759d 05-Jan-2016 Alex Klyubin <klyubin@google.com> Merge "No need to pass digest of AndroidManifest.xml around."
2a37455a285c831dbe4e367bdb632f687f3d3f5d 05-Jan-2016 Jorim Jaggi <jjaggi@google.com> Fix build

Change-Id: Ifd69818ca6d5dbf129f6c956c1a7dfae760e30d6
ridge/src/android/view/IWindowManagerImpl.java
a65ebea1ad62526633933205929a65a6e90f1f9f 05-Jan-2016 Jerome Gaillard <jgaillard@google.com> Create new Navigation Bar for the Theme Editor Preview am: 3b90b74cf9
am: 968ee5368b

* commit '968ee5368b7d626e7ac64b0befd212a04e9533cf':
Create new Navigation Bar for the Theme Editor Preview
66d2dd686e14ff8cbdf4544cac7ecacbcaac469c 05-Jan-2016 Wale Ogunwale <ogunwale@google.com> Fix build breakage.

Change-Id: I694a885e705d2543e671fd2809bbb518176c3804
ridge/src/android/view/IWindowManagerImpl.java
31ffb442414bd9cf6c0225799d7d0c5409f3769d 21-Dec-2015 Alex Klyubin <klyubin@google.com> No need to pass digest of AndroidManifest.xml around.

When an APK is being installed, the full path to the file is
occasionally passed between processes. To detect changes to the file
during these handovers, the digest of the AndroidManifest.xml entry
could be passed around as well.

This security feature is no longer used and is no longer needed. APKs
should be installed using the modern Package Installer API
(android.content.pm.PackageInstaller).

Bug: 24542768
Change-Id: I2762634c85448e7adcd47ffc9a5294c021e127bd
ridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
3b90b74cf96c88267e20a410b639b68de84c3323 18-Dec-2015 Jerome Gaillard <jgaillard@google.com> Create new Navigation Bar for the Theme Editor Preview

The standard navigation bar was not working well in the Theme Editor preview
when in a wide configuration. The bar then did not fit entirely inside the display.
So we created a new Navigation Bar to use in the Theme Editor preview, that fixes
the size problem.

Bug: http://b.android.com/198179
Change-Id: Ifb1fa7b8f399f17392934de89078696337eca3e1
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/bars/NavigationBar.java
ridge/src/com/android/layoutlib/bridge/bars/ThemePreviewNavigationBar.java
f59c02a65e9fd529467c4e5083d94ed6453e70f7 24-Dec-2015 Narayan Kamath <narayan@google.com> Merge changes from topic \'aosp-merge-24-12\'
am: e0e81bf407

* commit 'e0e81bf407508ec096c752948f8794af5fd480ca':
Special case system_server to not create the JIT code cache.
Don't use IntegralToString
Track libcore commit 85d69e16fe1e59e50c1ad228e754abf325088362.
Track API changes to java.lang.ref.Reference.
Remove merge markers from preloaded-classes
Move StrictJarFile from libcore to framework
Switch RecoverySystem impl to use sun.security.pkcs
API update for OpenJdk based libcore
Use libcore/known_oj_tags for the javadoc stage.
Stop preloading fortress classes
Use HexDump instead of java.lang.IntegralToString
Add core-oj to the list of core library jars.
62ed63185c4fb9fa5fb74c7bddcf9885fa06ac6d 17-Feb-2015 Piotr Jastrzebski <haaawk@google.com> Add core-oj to the list of core library jars.

With some core classes moved to separate core-oj jar
we need to use the new jar.

(cherry picked from commit cfa292e1dad184648bf673167f3f35b4fb34fc93)

Change-Id: Iba481c3df029902a2bd0f9661d0819f4a191b2aa
ndroid.mk
1e2839188fb49575b86646d3aadb355c81ef9cc5 26-Nov-2015 Andrei Stingaceanu <stg@google.com> Wire call to suspend a package

Adds APIs in DevicePolicyManager and PackageManager for allowing
a device admin to suspend a package. PackageManagerService sets
or unsets a new PackageUserState 'suspended' setting. Terminal
command to suspend/unsuspend has been added via
PackageManagerShellCommand (as root).

Next steps:
* use the new 'suspended' setting for denying access to start app
(probably in ActivityStackSupervisor)
* broadcast a PACKAGE_(UN)SUSPENDED intent for launchers to pick up
* remove app from recents (go further and kill it if it is running)
* erase existing notifications for this app

Bug: 22776576
Change-Id: I718b3498f6a53cc0c6fdfb6d15031e53ddca4353
ridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
48748c5d5b84920c95156ef711ccffe852b6b7ff 11-Dec-2015 Jerome Gaillard <jgaillard@google.com> Use RenderDrawable to render mipmaps am: 4b0fe7f14b
am: e298bcf755

* commit 'e298bcf7552d95475ab3ca9195e12bc14768fdb5':
Use RenderDrawable to render mipmaps
4b0fe7f14bb36769ef30c59c407bd6ed5b3d5cf7 11-Dec-2015 Jerome Gaillard <jgaillard@google.com> Use RenderDrawable to render mipmaps

Bug: http://b.android.com/179714
Change-Id: If05e71b33ee3a95590eb892f4fffbff4cfca1867
ridge/src/com/android/layoutlib/bridge/impl/RenderDrawable.java
0c6cc308cfd26ae102a1a3deb258e675da2c1eb0 10-Dec-2015 Dianne Hackborn <hackbod@google.com> Merge "Add new target SDK filtering feature to BroadcastOptions."
e0e413e2b17a0164e15c77f4ab51b3166f9111d2 10-Dec-2015 Dianne Hackborn <hackbod@google.com> Add new target SDK filtering feature to BroadcastOptions.

You can now control the range of target SDKs that receivers
will be need to have in order to receive your broadcast.

Use this for CONNECTIVITY_ACTION to not allow N+ applications
to receive these broadcasts through their manifest.

Also tweak the broadcast debug output code to now include the
disposition of each receiver in the list. This is becoming
important as skipping receivers is becoming a more common
thing to have happen.

Change-Id: I251daf68575c07cbb447536286ab4e68b7015148
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
98cb23dccfb65ddd2802c49d8714979f7dbae1df 09-Dec-2015 Jeff Sharkey <jsharkey@google.com> Merge "Slight API renaming, better behavior."
e13529a4adb60e5a18c2e36ce6c5bf8f2d1db78f 09-Dec-2015 Jeff Sharkey <jsharkey@android.com> Slight API renaming, better behavior.

Rename APIs to reflect that they're storage-related. Also move
credential-storage APIs to be system API.

Return a null Context when device-encrypted storage isn't
supported. This is the easiest way to keep legacy apps working when
upgrading from M to N.

Reduce strictness of path checking so we don't crash when working
with special packages like "android".

Bug: 22358539, 26104027
Change-Id: I38c24fc003488186210a6ae3b64270f86e1efe56
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
103d61b9f79de4d7b907227a7925e809e3e183c2 08-Dec-2015 Jeff Sharkey <jsharkey@google.com> Merge "Shift around encryption public APIs."
7a30a30ebece75f4a73fa604d4c7721d28eecc16 08-Dec-2015 Jeff Sharkey <jsharkey@android.com> Shift around encryption public APIs.

There are far too many Context APIs with special directory paths
to replicate device-encryption versions of them all. Instead, add
methods to clone a Context that explicitly stores its data in either
credential- or device-encrypted storage.

Methods to test the behavior of a given Context.

Bug: 22358539
Change-Id: I6a6290a9b282605ce9a1f82742fc2c4c50536754
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
2acf063da08dfff69f184c9a6a90a7a5fe60d818 25-Nov-2015 Svet Ganov <svetoslavganov@google.com> Ephemeral cookie API

Add APIs for an ephemeral app to set a cookie which is a small
peice of data cached longer than the app itself. This is useful
for avoiding the user to login every time they use the ephemeral
app. The cookie is stored after an ephemeral app is uninstalled.
Normal apps or ephemeral apps upgraded to full apps can also use
these APIs with the difference that once they are uninstalled
the cookie is deleted.

The cookie size defaults to 16KB and is configurable by a global
settings which can be adjusted via gservices. Also eviction policy
is time based with a default of one month and is configurable by
a global setting which can be adjusted via gservices. If the cert
of the app cahnges (when ephemeral is installed, uninstalled and
installed again) the cooke is wiped to prevent data leaks.

This cahange also adds an API for apps to know whether they run in
an ephemeral mode since it this mode some APIs will not be available.
Another API exposed by this change is private for the system and
exposes all ephemeral apps - installed and uninstalled. Only the
system can call this API. When an ephemeral app is uninstalled the
system stores its name, icon, and permissions. When the app is
reinstalled or a full version is installed the permissions are
propagated.

Change-Id: Id4a73a7750bfbabda0bfcb9bf9018d2062e94367
ridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
6a6cdafaec56fcd793214678c7fcc52f0b860cfc 08-Dec-2015 Jeff Sharkey <jsharkey@android.com> APIs to obtain SharedPreferences paths.

Needed for apps that want to migrate SharedPreferences from CE to DE
storage. Note that a device will only ever enter a CE mode with a
factory reset, so apps should only be using these APIs when they
want to migrate files to a consistent location on non-FBE devices
for simplicity.

Bug: 25503089
Change-Id: Ic846215da1617d116a048e036415ac7ad523b770
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
95e58deaa2ab56de3df827ad615f5b7799506edc 07-Dec-2015 Deepanshu Gupta <deepanshu@google.com> Fix ninepatch scaling.

Really fix the bug now. Also add tests for the same and update
allwidgets golden file for M.

Bug: http://b.android.com/187939
Change-Id: I98cd55da0561fef9d47d8759bcd287ee36d03cc2
ridge/src/android/graphics/BitmapFactory_Delegate.java
ridge/tests/res/testApp/MyApplication/golden/allwidgets.png
ridge/tests/res/testApp/MyApplication/golden/allwidgets_tab.png
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/setup/ConfigGenerator.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
2998eef694f6e3bb348df98a6127890e71427381 03-Dec-2015 Wale Ogunwale <ogunwale@google.com> Set proper stack in WM when activity is moved to stack in AM

When an activity is moved to a stack using the
ActivityStack#moveActivityToStack API a new task is created to
hold the activity in the stack. However, when the new task is
created in the window manager side it uses the stack id of the
previous stack the activity was in. We now pass the stack to use
from activity manager to window manager.

Bug: 25987309
Bug: 25961636
Change-Id: Iecc71f6d9b3e70a8d88e134b42f7532ba5327bad
ridge/src/android/view/IWindowManagerImpl.java
7c4420bd04f8f56f6044f88e34616d8c5d96c7e9 02-Dec-2015 Deepanshu Gupta <deepanshu@google.com> Revert "Revert "Add support for Choreographer animations""

This reverts commit 8390b2ac85765e768d4b685077a96e6395d208b4.

The build break should now be fixed by
cbb1ba7f493116882b79578ec68646366f29cde4

Change-Id: I9bf21cc6dbdb5d515a665384dc6dfa464c3e6e2e
ridge/src/android/animation/FakeAnimator.java
ridge/src/android/animation/PropertyValuesHolder_Delegate.java
ridge/src/android/graphics/PathMeasure_Delegate.java
ridge/src/android/os/SystemClock_Delegate.java
ridge/src/android/view/Choreographer_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/tests/res/testApp/MyApplication/golden/animated_vector.png
ridge/tests/res/testApp/MyApplication/golden/animated_vector_1.png
ridge/tests/res/testApp/MyApplication/src/main/res/layout/indeterminate_progressbar.xml
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/ReplaceMethodCallsAdapter.java
reate/src/com/android/tools/layoutlib/java/System_Delegate.java
cbb1ba7f493116882b79578ec68646366f29cde4 02-Dec-2015 Deepanshu Gupta <deepanshu@google.com> Add ability to promote fields.

This adds the ability to promote private fields to public ones to
enable layoutlib to access them. This was first added in change
b556decf75b2b084e1aed54ac7fa23a141eedb7f, but reverted in
847b0d3ad22a47e0bca3d8bc8168fea7a0ba2f80. This is essentially a revert
of the change again, but without the SimpleMonthView related stuff.

Also, promote the Choreographer's field as is needed to support
animations.

Change-Id: Iee45a465c7a1cadd362c1841385941e6232e4900
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/ICreateInfo.java
reate/src/com/android/tools/layoutlib/create/PromoteFieldClassAdapter.java
reate/tests/com/android/tools/layoutlib/create/AsmGeneratorTest.java
8390b2ac85765e768d4b685077a96e6395d208b4 02-Dec-2015 Diego Perez <diegoperez@google.com> Revert "Add support for Choreographer animations"

This reverts commit 29ed07524ce0fc2e5950f5340d306247145d0efa.
ridge/src/android/animation/FakeAnimator.java
ridge/src/android/animation/PropertyValuesHolder_Delegate.java
ridge/src/android/graphics/PathMeasure_Delegate.java
ridge/src/android/os/SystemClock_Delegate.java
ridge/src/android/view/Choreographer_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/tests/res/testApp/MyApplication/golden/animated_vector.png
ridge/tests/res/testApp/MyApplication/golden/animated_vector_1.png
ridge/tests/res/testApp/MyApplication/src/main/res/layout/indeterminate_progressbar.xml
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/ReplaceMethodCallsAdapter.java
reate/src/com/android/tools/layoutlib/java/System_Delegate.java
2ee825f507bec9c01667787ce11ddb5d8786d863 02-Dec-2015 Diego Perez <diegoperez@google.com> resolve merge conflicts of 956cad8870 to master.

Change-Id: Iebad149b2768bcd7a52ee2c7c8c260a9279d1742
29ed07524ce0fc2e5950f5340d306247145d0efa 14-Oct-2015 Diego Perez <diegoperez@google.com> Add support for Choreographer animations

First step to add support for Choreographer based animations. The
Choreographer_Delegate avoid using a handler so the animation callbacks
can be called on-demand (by using doFrame). This allows things like
frame by frame animation or selecting a specific frame, and doesn't need
a separate thread to run.

The CL also changes the System and SystemClock implementations to allow
to set specific times. Because animations heavily rely on the system
time, this allows controlling it. It can also be useful to ensure that
the rendering produces a deterministic result when using controls like
the Calendar widget.

Change-Id: Iff221d2698a82075cafbb60f341be01741f7aa13
ridge/src/android/animation/FakeAnimator.java
ridge/src/android/animation/PropertyValuesHolder_Delegate.java
ridge/src/android/graphics/PathMeasure_Delegate.java
ridge/src/android/os/SystemClock_Delegate.java
ridge/src/android/view/Choreographer_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/tests/res/testApp/MyApplication/golden/animated_vector.png
ridge/tests/res/testApp/MyApplication/golden/animated_vector_1.png
ridge/tests/res/testApp/MyApplication/src/main/res/layout/indeterminate_progressbar.xml
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/ReplaceMethodCallsAdapter.java
reate/src/com/android/tools/layoutlib/java/System_Delegate.java
18201f89ee0d098efc6ffa5e74443947fd24b74d 01-Dec-2015 Jeff Sharkey <jsharkey@google.com> Merge "API to create SharedPreferences from File."
8fc29cf1052fd951a3a0828b65506db30df89ece 01-Dec-2015 Jeff Sharkey <jsharkey@android.com> API to create SharedPreferences from File.

Needed to support storage of SharedPreferences on both credential-
encrypted and device-encrypted storage paths.

Bug: 22358539
Change-Id: I576b696951b2a9de817d5be63d31b06f7e166a19
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
64cdc1458bcf0d09781463a6e421b9b870b09687 30-Nov-2015 Filip Gruszczynski <gruszczy@google.com> Remove dock divider surface when it's not visible.

We achieve the removal by notifying System UI about the visibility of
the dock divider. This way System UI can change visibility of the root
view, which in turn will cause the WMS to destroy or create the surface
as necessary.

Bug: 25844096
Bug: 25683717

Change-Id: Idbc33368db697a059af49106dfadb80c3d7d06c1
ridge/src/android/view/IWindowManagerImpl.java
c428d4742d51440012c08174630b5ae28c20c15f 25-Nov-2015 Yohei Yukawa <yukawa@google.com> Fix build breakage in BridgeIInputMethodManager.

This is a follow up CL for 35d3f37bd51268cc99d81a3f537ac364d178e851 [1],
which changed some method signatures of IInputMethodManager.

[1]: Ia1fe120af7d71495c5f3a4fc0ec6390efb8240ca

We need to update BridgeIInputMethodManager.java every time when we
change IInputMethodManager.

Bug: 25373872
Change-Id: I126dc4234f921039a9d29010ea411a0a7d2ef6c6
ridge/src/com/android/layoutlib/bridge/android/BridgeIInputMethodManager.java
8b1871d74137d7e36ba0fed5608772f51f62015b 20-Nov-2015 Winson <winsonc@google.com> Adding tuner params for paging and full screen thumbnails.

- Adding “focused” stack state to support paging
- Changing the paging to match UX spec (only auto-page after the first
tap)
- Removing old header focus animation

Change-Id: Id72825b8a1b1c0a2238ee184a6695b13c1d8cb1c
ridge/src/android/view/IWindowManagerImpl.java
82063913ae6d3b158cb0c599141e473b691363a8 20-Nov-2015 Vladislav Kaznacheev <kaznacheev@google.com> Implement View.cancelDragAndDrop

View.cancelDragAndDrop cancels a drag operation initiated by
View.startDragAndDrop.

It has to be called on a View in the same window (under the
same ViewRootImpl) that the view which started the drag.

Bug: 24415683
Change-Id: If9a265fd8cc4d26b207d582d0d02d5c9ae78eba1
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
cfa292e1dad184648bf673167f3f35b4fb34fc93 17-Feb-2015 Piotr Jastrzebski <haaawk@google.com> Add core-oj to the list of core library jars.

With some core classes moved to separate core-oj jar
we need to use the new jar.

(cherry-picked from f898cda2f499b14f92bc7fb75f44110cdec7654f)

Change-Id: Ica148f11bcc77f57d22944ff78c501611a293167
ndroid.mk
17dc40e642904e6842df546530fd4a519a0f8eb1 20-Nov-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Revert "Revert "Update StaticLayout_Delegate to use new nLoadHyphenator""" into mnc-ub-dev am: 35f7562495 am: 2d887558df am: 0627cd0c40
am: adca23bb4c

* commit 'adca23bb4c59b1514b5d86f1ab8100c400d7a71e':
Revert "Revert "Update StaticLayout_Delegate to use new nLoadHyphenator""
760a2141684d02a694d657f73975ad203cf30b80 20-Nov-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Revert "Update StaticLayout_Delegate to use new nLoadHyphenator"" into mnc-ub-dev am: 8c971ae5a0 am: 867c370465 am: 4d9df358ec
am: 138a901db4

* commit '138a901db492989ae7db53d664cac698cc5bfdc7':
Revert "Update StaticLayout_Delegate to use new nLoadHyphenator"
adca23bb4c59b1514b5d86f1ab8100c400d7a71e 20-Nov-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Revert "Revert "Update StaticLayout_Delegate to use new nLoadHyphenator""" into mnc-ub-dev am: 35f7562495 am: 2d887558df
am: 0627cd0c40

* commit '0627cd0c404838a0251ee359ed75041f430fa83b':
Revert "Revert "Update StaticLayout_Delegate to use new nLoadHyphenator""
138a901db492989ae7db53d664cac698cc5bfdc7 20-Nov-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Revert "Update StaticLayout_Delegate to use new nLoadHyphenator"" into mnc-ub-dev am: 8c971ae5a0 am: 867c370465
am: 4d9df358ec

* commit '4d9df358ec847262872c09962105537be350f8fd':
Revert "Update StaticLayout_Delegate to use new nLoadHyphenator"
dd311b259823951288bf3b0a28bbe2416fdbcc89 19-Nov-2015 Vladislav Kaznacheev <kaznacheev@google.com> Merge "Revert "Fix broken build""
4a13b870929e1461fba626559db69226ccbeac89 19-Nov-2015 Vladislav Kaznacheev <kaznacheev@google.com> Revert "Fix broken build"

This reverts commit 88d753291c834c41ad6c9229082146be72cf8014.

Revert required because the base class change
has been reverted in http://ag/816441

Change-Id: Iee8a8272bda0a92aed8ae46af8439910d8f1ecdc
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
35f75624958bc061764c7cc71843ca7ea60c0666 19-Nov-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Revert "Revert "Update StaticLayout_Delegate to use new nLoadHyphenator""" into mnc-ub-dev
66098964e240e76e6136b4dec3f9cc6234012695 19-Nov-2015 Deepanshu Gupta <deepanshu@google.com> Revert "Revert "Update StaticLayout_Delegate to use new nLoadHyphenator""

This reverts commit 65a834980cdbb9407a3f27e48cd0a8c472182cd6.


The original revert was only for cherry-pick to release
branch.

Change-Id: Ib78f9a06ce49681c767f65b262058f18a670e38e
ridge/src/android/text/Hyphenator_Delegate.java
ridge/src/android/text/StaticLayout_Delegate.java
8c971ae5a0d294175481426d4543e23dc8d4a349 19-Nov-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Revert "Update StaticLayout_Delegate to use new nLoadHyphenator"" into mnc-ub-dev
65a834980cdbb9407a3f27e48cd0a8c472182cd6 19-Nov-2015 Deepanshu Gupta <deepanshu@google.com> Revert "Update StaticLayout_Delegate to use new nLoadHyphenator"

This reverts commit 631c2ffd6ff1bfa7463d29a39a7ee74be019b3f9.

The revert is only for cherry-pick back to mnc-sdk-release.

Change-Id: I42cb392528b7890b58d689c732f90c3b9ba5f74c
ridge/src/android/text/Hyphenator_Delegate.java
ridge/src/android/text/StaticLayout_Delegate.java
865ad592fe01301a1d623e7b6e4bb5f693d48ab2 19-Nov-2015 Diego Perez <diegoperez@google.com> Merge "Fix delegation of methods within inner static classes" into mnc-ub-dev am: 603544d4c4 am: 14a826380d am: 0b76d094c6
am: f9281b6dfe

* commit 'f9281b6dfe94f1df0fac3ddbad846012b0a6fb7d':
Fix delegation of methods within inner static classes
88d753291c834c41ad6c9229082146be72cf8014 18-Nov-2015 Vladislav Kaznacheev <kaznacheev@google.com> Fix broken build

Followup to ag/808050

Change-Id: I9912eae6a8c09b90685e19b3a9080b2d557c857b
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
f9281b6dfe94f1df0fac3ddbad846012b0a6fb7d 18-Nov-2015 Diego Perez <diegoperez@google.com> Merge "Fix delegation of methods within inner static classes" into mnc-ub-dev am: 603544d4c4 am: 14a826380d
am: 0b76d094c6

* commit '0b76d094c6e121f21135d851e4ee6ce8b6ee625f':
Fix delegation of methods within inner static classes
ae03bc0be3357b4a11861f211d2c1d3a3a4e52d8 18-Nov-2015 Deepanshu Gupta <deepanshu@google.com> Revert "LayoutLib: Fix true transparency in status bar." am: 4ea74d2960
am: 377cc4887d

* commit '377cc4887d3557377f63bfe9d179623985c9484e':
Revert "LayoutLib: Fix true transparency in status bar."
71daca031e5ecf65969479f8b416c43394187926 18-Nov-2015 Deepanshu Gupta <deepanshu@google.com> Merge "AppCompatActionBar: use findClass to test presence" into mnc-ub-dev am: 42a893b50b
am: dd97829cf2

* commit 'dd97829cf2b8599058f0410ea45bc84cd86e839b':
AppCompatActionBar: use findClass to test presence
603544d4c42cd8e0cc46da04f28a8fead64665e3 17-Nov-2015 Diego Perez <diegoperez@google.com> Merge "Fix delegation of methods within inner static classes" into mnc-ub-dev
377cc4887d3557377f63bfe9d179623985c9484e 17-Nov-2015 Deepanshu Gupta <deepanshu@google.com> Revert "LayoutLib: Fix true transparency in status bar."
am: 4ea74d2960

* commit '4ea74d2960688db6aa13452765dd5f2d07a40189':
Revert "LayoutLib: Fix true transparency in status bar."
e4826981f250e24e057f81c9a38bae92dd891631 17-Nov-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: IntelliJ changed project files. am: 22931224d9 am: 66840955d8 am: e45abdb126
am: 606e5a0c56

* commit '606e5a0c562a461919e90ddf1e41036d926c9716':
LayoutLib: IntelliJ changed project files.
dd97829cf2b8599058f0410ea45bc84cd86e839b 17-Nov-2015 Deepanshu Gupta <deepanshu@google.com> Merge "AppCompatActionBar: use findClass to test presence" into mnc-ub-dev
am: 42a893b50b

* commit '42a893b50b2763d7a2a3da4006c9433afaf86cfd':
AppCompatActionBar: use findClass to test presence
4ea74d2960688db6aa13452765dd5f2d07a40189 17-Nov-2015 Deepanshu Gupta <deepanshu@google.com> Revert "LayoutLib: Fix true transparency in status bar."

This reverts commit 4eb298a941c3f465944b63f1a06518e911681c89.

Even though this is techinically closer to what the framework does, the
fix is not complete. As a result, it looks worse when using AppCompat
themes. Revert the change for the release.

Change-Id: I67c1002ea17dee7234d78e2d13aab876467bd70f
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/NavigationBar.java
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
42a893b50b2763d7a2a3da4006c9433afaf86cfd 17-Nov-2015 Deepanshu Gupta <deepanshu@google.com> Merge "AppCompatActionBar: use findClass to test presence" into mnc-ub-dev
ab45fc1a4f9726630322b7579168835d84711bdf 17-Nov-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: IntelliJ changed project files.
am: 22931224d9

* commit '22931224d9a9845d316a9ea30e56557bec0b2e45':
LayoutLib: IntelliJ changed project files.
22931224d9a9845d316a9ea30e56557bec0b2e45 17-Nov-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: IntelliJ changed project files.

Change-Id: I1f99ab678067c26ba2e9938c9dce40c99a6725c3
idea/encodings.xml
99b54b364b6d4e0689933393a9b584e542fc2c54 17-Nov-2015 Deepanshu Gupta <deepanshu@google.com> AppCompatActionBar: use findClass to test presence

To test the presence of WindowDecorActionBar class, use findClass()
instead of loadClass() which logs warnings.

Change-Id: Ice8a5a6badd764c7f75b5a64a07c48f0a7cfef98
ridge/src/com/android/layoutlib/bridge/bars/AppCompatActionBar.java
efc90e4f60af2058670d6e287184a33e63e6f7c5 17-Nov-2015 Deepanshu Gupta <deepanshu@google.com> Merge "WindowDecorActionBar name change fix." into mnc-ub-dev am: 62302bd72a am: 80bd5e6fd7 am: 9f275ec3fd
am: d00380a560

* commit 'd00380a560dff6a2237086f2f4c96313785ce93f':
WindowDecorActionBar name change fix.
ce400cd75e1e1a90c0b4da4de90d7314fd21dca8 17-Nov-2015 Deepanshu Gupta <deepanshu@google.com> Merge "WindowDecorActionBar name change fix." into mnc-ub-dev
am: 62302bd72a

* commit '62302bd72aaa6b0f934257447e8dcd636799180e':
WindowDecorActionBar name change fix.
2b0551175d57ce0f063566eea7670442b8b624fc 17-Nov-2015 Deepanshu Gupta <deepanshu@google.com> WindowDecorActionBar name change fix.

In change id I7582e242c7564c32feeb044fc9eff6bfb5c56536,
WindowDecorActionBar's package name was changed. This breaks layoutlib.
Fix the issue by checking both package names when loading the class.

Change-Id: I5723a97f0f164d61c56061fef6cff18e3cdafaee
ridge/src/com/android/layoutlib/bridge/bars/AppCompatActionBar.java
6777f54fa44341dd4b23456c97d97c6e4ffe915f 13-Nov-2015 Diego Perez <diegoperez@google.com> Fix delegation of methods within inner static classes

Currently, delegation of inner static classes methods is broken since
the rewritten method tries to pass an instance to the outer class. This
updates the method generation to only pass the reference if the inner
class is not static.

Change-Id: I8493929cafdbd80968989b422af0f956fa65681a
reate/src/com/android/tools/layoutlib/create/DelegateClassAdapter.java
reate/src/com/android/tools/layoutlib/create/DelegateMethodAdapter.java
reate/tests/com/android/tools/layoutlib/create/DelegateClassAdapterTest.java
reate/tests/com/android/tools/layoutlib/create/dataclass/OuterClass.java
reate/tests/com/android/tools/layoutlib/create/dataclass/OuterClass_StaticInnerClass_Delegate.java
b39ca7fa47de1a8211cf810d531da73a15754b15 13-Nov-2015 Deepanshu Gupta <deepanshu@google.com> Improve error reporting on Exceptions in fw views. am: d30c141a2d
am: e0c9dd1b4f

* commit 'e0c9dd1b4fbeb2667a58686ab8a71e5cfd070e49':
Improve error reporting on Exceptions in fw views.
e0c9dd1b4fbeb2667a58686ab8a71e5cfd070e49 12-Nov-2015 Deepanshu Gupta <deepanshu@google.com> Improve error reporting on Exceptions in fw views.
am: d30c141a2d

* commit 'd30c141a2dee881fd83e1415a50161def1acf227':
Improve error reporting on Exceptions in fw views.
d30c141a2dee881fd83e1415a50161def1acf227 21-Oct-2015 Deepanshu Gupta <deepanshu@google.com> Improve error reporting on Exceptions in fw views.

When there's an exception during the inflation of a framework view (for
example invalid attributes), report the exception correctly. The earlier
behaviour assumed the exception to be a ClassNotFoundException and tried
to load it from the user's project. This is not longer the case.

Also, update the MockView class to a FrameLayout with a single TextView.
This means that the MockView is a ViewGroup and will not choke when
someone attempts to add a View to it (although, the view will be
silently dropped).

Change-Id: Ice003817ceb627ebfbbbb245ab6be10f9141e728
ridge/src/android/view/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/MockView.java
64aadd08491172e90f6d6512d8affc9a4cfa04cc 06-Nov-2015 Robert Carr <racarr@google.com> Clarify geometry management for SurfaceView

In the hardware accelerated case, RenderThread needs
to be the authority of information on the geometry of
the SurfaceView (this will occur via moving the
repositionWindow call to RenderThread). In order
to support this we have to enable calling relayoutWindow
without geometry (so that it will not fight with
repositionWindow). Add such a mode to relayoutWindow
and use it from SurfaceView. Add size to repositionChild
while we are here.

Bug: 22802885
Change-Id: Ie45132c22f34cc6ecfe2446912b30bd1df414406
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
94d0b64d4fed8377be2374eb7d31aa270a9c9aff 07-Nov-2015 Jeff Sharkey <jsharkey@google.com> Merge "Initial file-based encryption public APIs."
15447798a38d2b5acb1998731340255f4203f294 06-Nov-2015 Jeff Sharkey <jsharkey@android.com> Initial file-based encryption public APIs.

Define two explicit directories where device-encrypted and
credential-encrypted data will be stored. Third-party apps only
need access to the device-encrypted directory, so that's the only
API exposed for now.

General cleanup in how ApplicationInfo details are derived.

Bug: 22358539
Change-Id: If0a0108721a4aa1c3052b4912e08604bbf24e1ae
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
13d30660ef6da2d924e4fc943ccd187767ee0cd2 07-Nov-2015 Winson <winsonc@google.com> Fixing issue with canceling the thumbnail in addition to the app window.

Bug: 25392381
Change-Id: Ib507f53bcd2aad4771c2546f5e8bfe771769e9a2
ridge/src/android/view/IWindowManagerImpl.java
1a2f3ab485f8f3abfdeb10cf9cbe640bdfc1233f 06-Nov-2015 Jorim Jaggi <jjaggi@google.com> Fix build

Change-Id: Ie716bbec49920af459ceddf8e51387ccf5946a7f
ridge/src/android/view/IWindowManagerImpl.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
2b23bc32cc17082edb41c99f3d97e208ce521bec 05-Nov-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Fix Switch colors" into mnc-ub-dev am: 71093465ab
am: ceb2b54909

* commit 'ceb2b549095b5f9a70baef6a0a847b453735f97a':
Fix Switch colors
ceb2b549095b5f9a70baef6a0a847b453735f97a 05-Nov-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Fix Switch colors" into mnc-ub-dev
am: 71093465ab

* commit '71093465abbdf887c705b40fb0cb8a2919894c4b':
Fix Switch colors
c9b8f95c99688c71184d90f53dcf90e52816d02f 05-Nov-2015 Deepanshu Gupta <deepanshu@google.com> Fix Switch colors

The conversion of the PorterDuff mode from int to enum was incorrect
resulting in the wrong PorterDuff Mode being used.

Change-Id: I7607d505b6e4382e6101869971154f6a77db279c
ridge/src/com/android/layoutlib/bridge/impl/PorterDuffUtility.java
14b4e57c1ba427f07186dbff8491242162028c71 04-Nov-2015 Filip Gruszczynski <gruszczy@google.com> Remove blink during the freeform -> recents transition.

We achieve the desired result by prolonging the last frame of the
animation until recents tells that it drew its content. The CL also
includes cleanup that moves code that depends heavily on WindowState
fields into that class.

Bug: 24913782
Change-Id: I5ee5b18504dd4a86c24033d17eca21cd31936bca
ridge/src/android/view/IWindowManagerImpl.java
96eb6d3e571591feb5d5481558c65ae00f17d68e 04-Nov-2015 Diego Perez <diegoperez@google.com> Merge "Remove auto-boxing during the inflate" into mnc-ub-dev am: 1c442aca0a
am: 7cdbfaf459

* commit '7cdbfaf459ede7ede430188ed4b1a990ba762144':
Remove auto-boxing during the inflate
fdf89c162f9db19f1cbe23565f7e145528c7754f 04-Nov-2015 Diego Perez <diegoperez@google.com> Merge "Update StaticLayout_Delegate to use new nLoadHyphenator" into mnc-ub-dev am: 7dda46e740
am: 724af9ce6f

* commit '724af9ce6fceb9ddf2ef4536d0da41a520928d5e':
Update StaticLayout_Delegate to use new nLoadHyphenator
7cdbfaf459ede7ede430188ed4b1a990ba762144 04-Nov-2015 Diego Perez <diegoperez@google.com> Merge "Remove auto-boxing during the inflate" into mnc-ub-dev
am: 1c442aca0a

* commit '1c442aca0a1b054e3aa0a40ba89c08b39099be2f':
Remove auto-boxing during the inflate
724af9ce6fceb9ddf2ef4536d0da41a520928d5e 04-Nov-2015 Diego Perez <diegoperez@google.com> Merge "Update StaticLayout_Delegate to use new nLoadHyphenator" into mnc-ub-dev
am: 7dda46e740

* commit '7dda46e740250d753bb9d01e129e91695ab8cfe2':
Update StaticLayout_Delegate to use new nLoadHyphenator
1c442aca0a1b054e3aa0a40ba89c08b39099be2f 04-Nov-2015 Diego Perez <diegoperez@google.com> Merge "Remove auto-boxing during the inflate" into mnc-ub-dev
631c2ffd6ff1bfa7463d29a39a7ee74be019b3f9 04-Nov-2015 Diego Perez <diegoperez@google.com> Update StaticLayout_Delegate to use new nLoadHyphenator

Small fix to update call parameters

Change-Id: I4322aa212493ec2970ae17ec1918b9b7e2f8e93a
ridge/src/android/text/Hyphenator_Delegate.java
ridge/src/android/text/StaticLayout_Delegate.java
91fa3ba4cc8acd4caeeb88f90ce39198b5fea414 03-Nov-2015 Diego Perez <diegoperez@google.com> Remove auto-boxing during the inflate

Change-Id: I3f9ba5d78363f878fa0c58ca8cbf736bd43fe1c0
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
faa09f531f3a6fcd6518057315a52fdd0ffd3cba 03-Nov-2015 Brian Carlstrom <bdc@google.com> Fix layoutlib-tests build by adding dummy implementation of IWindowSession.repositionChild to BridgeWindowSession

Change-Id: I9c3a609c76716b35595b82a33f32883d4f46c517
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
6b05f8030e113d6328ca094da25502681f1353ee 03-Nov-2015 Winson <winsonc@google.com> Fixing build breakage.

Change-Id: Idf8759c7bc88af534103731eef535fc310bed7e5
ridge/src/android/view/IWindowManagerImpl.java
f254e95d4217d2b89265d9c06615411c0a074f41 31-Oct-2015 Filip Gruszczynski <gruszczy@google.com> Fix build.

Change-Id: If103e0fbef656d565ce912c3fd13aa6497ab9d4a
ridge/src/android/view/IWindowManagerImpl.java
a79795a89293094aa1278104ec6099bd428db38a 20-Oct-2015 Deepanshu Gupta <deepanshu@google.com> Fix build

Change-Id: I0e85f40955bfbf25e917f27c210c2f6f24d885a0
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
c08b0e0dd3e3befa57d497f7560d577651194c7e 13-Oct-2015 Dianne Hackborn <hackbod@google.com> Merge "Revert "Fix build.""
0b128232d22cd15c6100734b4d859499f82afb22 13-Oct-2015 Dianne Hackborn <hackbod@google.com> Revert "Fix build."

This reverts commit 7a9687f1d7693907189fc315d640c1ad770ab88d.

Change-Id: I5b2f68a4e2b4c399d87c18adc223500b0e1bfcc7
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
98f16c6d1aff6ac9d32fcec7fcb397bac075e7a0 13-Oct-2015 Dianne Hackborn <hackbod@google.com> Merge "Fix build."
7a9687f1d7693907189fc315d640c1ad770ab88d 13-Oct-2015 Dianne Hackborn <hackbod@google.com> Fix build.

Change-Id: Iade965d86ce5f53cf476468423db47c8e6a602b2
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
e8a04cd5a68a5e5aa78a4f40b3269c86cc3f152f 13-Oct-2015 Ian Pedowitz <ijpedowitz@google.com> Fix Build

Mimicking what was done for bdbd2d9c1878432eca6933e06c980663e2579d85

Change-Id: I5aef245b7a426edaa90e7e237acd4608b431c073
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
b072ff9e4115090ea948f2e66ac60abdeaebb8b1 10-Oct-2015 Deepanshu Gupta <deepanshu@google.com> am 467f6a4f: am 2aa403fe: Merge "LayoutLib: Fix android:dependency for preferences." into mnc-ub-dev

* commit '467f6a4f0d788fa0bad86bb6545a8254912b99b0':
LayoutLib: Fix android:dependency for preferences.
467f6a4f0d788fa0bad86bb6545a8254912b99b0 10-Oct-2015 Deepanshu Gupta <deepanshu@google.com> am 2aa403fe: Merge "LayoutLib: Fix android:dependency for preferences." into mnc-ub-dev

* commit '2aa403fe0c86291c6fd65317e93a72549e6e10de':
LayoutLib: Fix android:dependency for preferences.
2f01cf2ea6d8cc07711fccd6157f33226a77da93 09-Oct-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Fix android:dependency for preferences.

Bug: http://b.android.com/189314
Change-Id: I229632d11a2529e865f3f2e8eca3a78b47ad462c
ridge/src/android/preference/Preference_Delegate.java
51747638ed8db603a1464f74a89f52e9b85b5d1c 07-Oct-2015 Deepanshu Gupta <deepanshu@google.com> am d7b7e93a: am 9969f858: LayoutLib: Fix ring rendering.

* commit 'd7b7e93a47e99fb54c91fb0d5b37971c8638074d':
LayoutLib: Fix ring rendering.
d7b7e93a47e99fb54c91fb0d5b37971c8638074d 07-Oct-2015 Deepanshu Gupta <deepanshu@google.com> am 9969f858: LayoutLib: Fix ring rendering.

* commit '9969f858c34ba7e35a977c819f2d1e24de586990':
LayoutLib: Fix ring rendering.
9969f858c34ba7e35a977c819f2d1e24de586990 07-Oct-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Fix ring rendering.

Bug: http://b.android.com/65503
Change-Id: I6ed901703cffee345f3083ea3ddeb52a28f4ac64
ridge/src/android/graphics/drawable/GradientDrawable_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
1430fdc277c9a90802a885765370d785b0e65e0e 07-Oct-2015 Deepanshu Gupta <deepanshu@google.com> am 24ca6320: am 8db8bc63: Merge "Skip drawing empty shapes to keep Apple JRE happy." into mnc-ub-dev

* commit '24ca6320b88afabd854fae176988be02bb6d92aa':
Skip drawing empty shapes to keep Apple JRE happy.
24ca6320b88afabd854fae176988be02bb6d92aa 07-Oct-2015 Deepanshu Gupta <deepanshu@google.com> am 8db8bc63: Merge "Skip drawing empty shapes to keep Apple JRE happy." into mnc-ub-dev

* commit '8db8bc63624bbd1d803e02571fa865f1f7fa584c':
Skip drawing empty shapes to keep Apple JRE happy.
8db8bc63624bbd1d803e02571fa865f1f7fa584c 07-Oct-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Skip drawing empty shapes to keep Apple JRE happy." into mnc-ub-dev
4064e118e2d738ddd13366bf08210bb8de9e32ca 07-Oct-2015 Deepanshu Gupta <deepanshu@google.com> Skip drawing empty shapes to keep Apple JRE happy.

Bug: http://b.android.com/178278
Change-Id: I693912678ed79e9c6690560b618a605da5a807c6
ridge/src/android/graphics/Canvas_Delegate.java
f32a1089c672470fa16217c08647e69af30ad987 07-Oct-2015 Diego Perez <diegoperez@google.com> am 4a36d982: am 081cebf5: Implement Path.approximate and add PathMeasure support

* commit '4a36d982592c3a3238009be785574dd65ff33cc6':
Implement Path.approximate and add PathMeasure support
4a36d982592c3a3238009be785574dd65ff33cc6 07-Oct-2015 Diego Perez <diegoperez@google.com> am 081cebf5: Implement Path.approximate and add PathMeasure support

* commit '081cebf52b19e848c07fb781b35fa1f96695c311':
Implement Path.approximate and add PathMeasure support
081cebf52b19e848c07fb781b35fa1f96695c311 07-Oct-2015 Diego Perez <diegoperez@google.com> Implement Path.approximate and add PathMeasure support

PathMeasure is needed to use the trimPath* properties in drawables.
These properties are used in the vector drawable for indeterminate
progress bars in Material so this is needed to be able to render them
correctly in the preview.
PathMeasure makes use of Path.approximate to calculate which segments to
paint.

Change-Id: Ic513f0a30a6aac0317f7c13cd75e9154c37405c8
ridge/src/android/animation/AnimatorInflater_Delegate.java
ridge/src/android/graphics/PathMeasure_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
dfc39aee6417e900e04669e66c473b682faa1863 06-Oct-2015 Deepanshu Gupta <deepanshu@google.com> am 034d10bf: am e5d3baf2: LayoutLib: Fix bitmap scaling.

* commit '034d10bf6c6d817d316597620c74dd1e8bd2931d':
LayoutLib: Fix bitmap scaling.
034d10bf6c6d817d316597620c74dd1e8bd2931d 06-Oct-2015 Deepanshu Gupta <deepanshu@google.com> am e5d3baf2: LayoutLib: Fix bitmap scaling.

* commit 'e5d3baf22f046d0a579128fc258f6b92e700ca02':
LayoutLib: Fix bitmap scaling.
e5d3baf22f046d0a579128fc258f6b92e700ca02 05-Oct-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Fix bitmap scaling.

Bug: http://b.android.com/187939
Change-Id: I20bf61746e8af3bb87ba9cfcc9bf58854ac7c5be
ridge/src/android/content/res/BridgeResources.java
ridge/src/android/graphics/BitmapFactory_Delegate.java
9c450411058ab9af71932c756fb0f478b3988f1b 01-Oct-2015 Chet Haase <chet@google.com> Enable activity rendering during window animations

A change was made back in ICS that prevents the view hierarchy from rendering
during window animations. Specifically, it allows the hierarchy to render once (to draw
the results of its first layout), but further drawing is suppressed at the
ViewRoot/performTraversals level until the window animation is complete.

This change was introduced to avoid jank problems that were resulting from
thrashing the GPU by issuing drawing commands from multiple processes simultaneously,
and limited the number of rendering processes to mainly the system server (and
possibly the System UI), which allowed window animations to be much smoother.

This fix contributed to another source of jank, however, in which applications
which attempt to animate when they first appear will not render any frames of
animations until the window animation is done, resulting is a snapping to the resulting
state once the window animations are complete.

Meanwhile, hardware has gotten faster and GPUs have gotten better, and it is time to
revisit this logic. This change disables the earlier fix and allows view hierarchies
to draw normally, regardless of whether window animations are taking place.

Issue #22232939 Remove flag that prevents drawing during window animations

Change-Id: I4c960180771ff09a7088abd77b437586e835a991
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
0cdfc4d273061dcc7e10a8cd403ea08a536e5063 01-Oct-2015 Deepanshu Gupta <deepanshu@google.com> am 21af84d3: am 7a9f771f: Merge "Don\'t break error string (easier grepping)" into mnc-ub-dev

* commit '21af84d3e4bf82e9dd8b5087b60630f29668bda3':
Don't break error string (easier grepping)
21af84d3e4bf82e9dd8b5087b60630f29668bda3 01-Oct-2015 Deepanshu Gupta <deepanshu@google.com> am 7a9f771f: Merge "Don\'t break error string (easier grepping)" into mnc-ub-dev

* commit '7a9f771fe010c697c6a9fb143f0a26778d440c8c':
Don't break error string (easier grepping)
7a9f771fe010c697c6a9fb143f0a26778d440c8c 01-Oct-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Don't break error string (easier grepping)" into mnc-ub-dev
1bd276f6f7ddce7959dc2e9e6f480d9be1e26fef 30-Sep-2015 Deepanshu Gupta <deepanshu@google.com> Don't break error string (easier grepping)

Change-Id: If52097ba90481644707dd0323ec63ca3ddf0986b
ridge/src/com/android/layoutlib/bridge/impl/LayoutParserWrapper.java
a1ac052ac2638979de5028fce5d3b7e9614de078 30-Sep-2015 Diego Perez <diegoperez@google.com> am 6aeedbc7: am b9c4cccf: Merge "Reduce the amount of allocations on Paint_Delegate" into mnc-ub-dev

* commit '6aeedbc7613d3be4a785ed43e2fb35c62fb0a006':
Reduce the amount of allocations on Paint_Delegate
6aeedbc7613d3be4a785ed43e2fb35c62fb0a006 30-Sep-2015 Diego Perez <diegoperez@google.com> am b9c4cccf: Merge "Reduce the amount of allocations on Paint_Delegate" into mnc-ub-dev

* commit 'b9c4cccf672d725e75d393c492c917ba726c365c':
Reduce the amount of allocations on Paint_Delegate
b9c4cccf672d725e75d393c492c917ba726c365c 30-Sep-2015 Diego Perez <diegoperez@google.com> Merge "Reduce the amount of allocations on Paint_Delegate" into mnc-ub-dev
6dac0d4b7c55da32cb5deb9b589b1acb43cb536d 24-Sep-2015 Diego Perez <diegoperez@google.com> Reduce the amount of allocations on Paint_Delegate

When the text properties of the Paint object are updated, or when .set()
is called, updateFontObject will be called. This method is currently at the
top of the methods for number of allocations.
This CL reduces the number of calls to updateFontObject by a 90%,
reducing the number of Font allocations.

Change-Id: I3e232f9e6e230da8ecdd19921faadf2d3f4ff763
ridge/src/android/graphics/FontFamily_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
cd4b26c8a9fb629efc8d2e7b907537c549eeef72 30-Sep-2015 Deepanshu Gupta <deepanshu@google.com> am 3dde4493: am 4e27221d: Merge "Support databinding in listitem layouts." into mnc-ub-dev

* commit '3dde44935df567f840de2600a3e408f9ba7c7b1f':
Support databinding in listitem layouts.
3dde44935df567f840de2600a3e408f9ba7c7b1f 30-Sep-2015 Deepanshu Gupta <deepanshu@google.com> am 4e27221d: Merge "Support databinding in listitem layouts." into mnc-ub-dev

* commit '4e27221d49151ba91af59029659e666fa756b645':
Support databinding in listitem layouts.
4e27221d49151ba91af59029659e666fa756b645 30-Sep-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Support databinding in listitem layouts." into mnc-ub-dev
e91096c03dda225240b1487f019bf3d082854587 29-Sep-2015 Deepanshu Gupta <deepanshu@google.com> Support databinding in listitem layouts.

Add a wrapper around the PullParser to support stripping out databinding
parts.

Bug: http://b.android.com/187428
Change-Id: I88080d8f4108cb5ae27a137ad20c5dd7d516f3ea
ridge/src/android/content/res/BridgeResources.java
ridge/src/android/view/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/impl/LayoutParserWrapper.java
ridge/src/com/android/layoutlib/bridge/impl/ParserFactory.java
ridge/tests/src/com/android/layoutlib/bridge/impl/LayoutParserWrapperTest.java
8392b394f26ef726a002cd380979058203438dc8 29-Sep-2015 Nicolas Prévot <nprevot@google.com> Merge "Add more methods that take a userId to PackageManager."
f77a6dbac6d8da23dea08449e930b29b62311ddb 27-Sep-2015 Filip Gruszczynski <gruszczy@google.com> Merge "Refactoring: Delete AppWindowToken.willBeHidden field."
8aafd3a81ba4ffe04bc36990d18df9f2b8623743 27-Sep-2015 Filip Gruszczynski <gruszczy@google.com> Refactoring: Delete AppWindowToken.willBeHidden field.

The only time AppWindowToken.willBeHidden is used is for determining
if the app should contribute to calculating orientation. In the same
check AppWindowToken.hiddenRequested will be or-ed with willBeHiden,
so it's enough that hiddenRequested to be set.

The only place where willBeHidden is set, is right before
WMS.setAppVisibility is called, which will set hiddenRequested.
Because of this willBeHidden is unnecessary.

Change-Id: Iea35f39f72e7f0dcd76205ef580f3a74cac72d08
ridge/src/android/view/IWindowManagerImpl.java
9a80e53b27cd1ca00364a30a0ad153c83000b9d2 23-Sep-2015 Nicolas Prevot <nprevot@google.com> Add more methods that take a userId to PackageManager.

Add methods installPackageAsUser and installExistingPackageAsUser
and deletePackageAsUser and getPackageInfoAsUser.

BUG:23516394
Change-Id: I15e30d2ec45ab18c7f8c0ac02cfc617c50fedb44
ridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
ef6439c8574e2c9fe32a8b228716d056f75fad8f 24-Sep-2015 Deepanshu Gupta <deepanshu@google.com> am e5346dca: am 51a05d74: Merge "Fix TypedArray.getTextArray()" into mnc-ub-dev

* commit 'e5346dca479ecf87d5a3e412307e5f7ebe28ccb9':
Fix TypedArray.getTextArray()
e5346dca479ecf87d5a3e412307e5f7ebe28ccb9 24-Sep-2015 Deepanshu Gupta <deepanshu@google.com> am 51a05d74: Merge "Fix TypedArray.getTextArray()" into mnc-ub-dev

* commit '51a05d74a81aeb334ef095fc6f1aa98e5163763f':
Fix TypedArray.getTextArray()
6649ca371139831369e063b937e25d7d6e97b9e6 24-Sep-2015 Deepanshu Gupta <deepanshu@google.com> Fix TypedArray.getTextArray()

Change-Id: Ic55b52840892fbf2a4258ba97ed31ca0283da8ed
ridge/src/android/content/res/BridgeResources.java
ridge/src/android/content/res/BridgeTypedArray.java
184427444b335dc2fd67a8df4147c6d8a18dbf4d 22-Sep-2015 Diego Perez <diegoperez@google.com> am 36152328: am 0e766de7: Avoid calling scrollBy(0,0) on render

* commit '361523281c88a7e453e0eef961ed7f16a55785a5':
Avoid calling scrollBy(0,0) on render
361523281c88a7e453e0eef961ed7f16a55785a5 22-Sep-2015 Diego Perez <diegoperez@google.com> am 0e766de7: Avoid calling scrollBy(0,0) on render

* commit '0e766de7c52d7e375e04676c93a872cb2d6eea63':
Avoid calling scrollBy(0,0) on render
0e766de7c52d7e375e04676c93a872cb2d6eea63 22-Sep-2015 Diego Perez <diegoperez@google.com> Avoid calling scrollBy(0,0) on render

Usually scrollBy(0, 0) won't have any effect but when called on the
NumberPicker but, in some cases, it seems to cause an endless loop.
When called from layoutlib, this will hold the read lock causing all
operations trying to acquire the write lock to block forever.

Bug: http://b.android.com/182506
Change-Id: Ib25427d3f32d804d1c481d979795eee71fbdbc6d
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
61b009e0591df4fcaf5c57c6ce598044263d952f 17-Sep-2015 Wale Ogunwale <ogunwale@google.com> Don't crop home activity windows to stack bounds.

We crop windows to their stack bounds when the docked stack
exists. We don't want to do this for the home activity since
the docked stack isn't visible when the home activity is visible.

Change-Id: Ibb3157dabbb6c979358ddc2098a01c6ddf6540e8
ridge/src/android/view/IWindowManagerImpl.java
173b6c2d1abce67ce802802621eaef43023b24fd 13-Sep-2015 Chong Zhang <chz@google.com> Fix build break with startMovingTask API

Change-Id: I4dc44ca04c75a9dfed079338e4906d317f50a1e3
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
8e89b31a62fb9ec5ad33908c5e8e9c7ab2fd949f 10-Sep-2015 Chong Zhang <chz@google.com> Move window moving and resizing handling to WindowManager

- add a startMoving API to initiate a window move from app, once
the move starts WindowManager will take over the event handling.

- detect touch events along window's outside border and start
a resize if necessary

Change-Id: Ic7e8baba34e0aa27a43173e044ffb46e93e219e0
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
44c75820b4ecdd454a9c4446bb7e3608dcd88ba0 03-Sep-2015 Deepanshu Gupta <deepanshu@google.com> am b3382661: am ee1eed7e: am 7209945f: am 0e150a8b: am 0c5fd7e3: am eb541727: am dd21212f: am eb26f5ce: LayoutLib: Fix typedArray caching.

* commit 'b3382661eb3af61815812bd762ac1fcc2f5d9ef5':
LayoutLib: Fix typedArray caching.
b3382661eb3af61815812bd762ac1fcc2f5d9ef5 03-Sep-2015 Deepanshu Gupta <deepanshu@google.com> am ee1eed7e: am 7209945f: am 0e150a8b: am 0c5fd7e3: am eb541727: am dd21212f: am eb26f5ce: LayoutLib: Fix typedArray caching.

* commit 'ee1eed7e711228008dc91a7da800be6527539e87':
LayoutLib: Fix typedArray caching.
ee1eed7e711228008dc91a7da800be6527539e87 02-Sep-2015 Deepanshu Gupta <deepanshu@google.com> am 7209945f: am 0e150a8b: am 0c5fd7e3: am eb541727: am dd21212f: am eb26f5ce: LayoutLib: Fix typedArray caching.

* commit '7209945fd38d22078b2fd208abe0aa976c311dde':
LayoutLib: Fix typedArray caching.
0c5fd7e3791f0b1a3a3b1c1ebe34f568155ba11f 02-Sep-2015 Deepanshu Gupta <deepanshu@google.com> am eb541727: am dd21212f: am eb26f5ce: LayoutLib: Fix typedArray caching.

* commit 'eb54172719db60740a0b8dde6380db54d4006159':
LayoutLib: Fix typedArray caching.
eb54172719db60740a0b8dde6380db54d4006159 02-Sep-2015 Deepanshu Gupta <deepanshu@google.com> am dd21212f: am eb26f5ce: LayoutLib: Fix typedArray caching.

* commit 'dd21212fa1a9c907d5d2f80f3de2413f6c14da7a':
LayoutLib: Fix typedArray caching.
eb26f5cecd5366b29b3cb746a7edaf3769f40480 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Fix typedArray caching.

The typedArray depends on the current context (more specifically, the
themes set on the context). The fact was ignored in the caching of the
typedArray and caused the android:theme attribute to be ignored in
certain cases.

Change-Id: If095580919474f12c0eb4e1f8fb7f076cf3c4ed0
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
1bca297bd3602304e5cc977bd6c36e77183c2008 01-Sep-2015 Filip Gruszczynski <gruszczy@google.com> Fix build.

Change-Id: Ibda30d85280cc72641e0baf2c6a69171a03fc7fb
ridge/src/android/view/IWindowManagerImpl.java
45b50acf61ed548d5f7b3f1e4e86bb8692133315 29-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 4845fa72: am b8ae1879: Merge "Fix android:theme parsing for custom views." into mnc-ub-dev

* commit '4845fa72c236f7c70572a9ae24a8e183edfd485f':
Fix android:theme parsing for custom views.
4845fa72c236f7c70572a9ae24a8e183edfd485f 29-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am b8ae1879: Merge "Fix android:theme parsing for custom views." into mnc-ub-dev

* commit 'b8ae187932ff783711ea8715d7f5891d9e4ebb32':
Fix android:theme parsing for custom views.
753517700dc6ee95b9945a6c8857aa8c633cde2a 28-Aug-2015 Deepanshu Gupta <deepanshu@google.com> Fix android:theme parsing for custom views.

Change-Id: Iba83ba1d2e4a96461cc298a759e32e4e51e311a0
ridge/src/android/view/BridgeInflater.java
c81612250136b60e37674d88785265f99440e402 28-Aug-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Revert "LayoutLib: Switch SimpleDateFormat to icu.""
0fdf3fc659d136675ee4e8dc7ce99f858b5e28b1 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 3a6567a8: am 4eb298a9: LayoutLib: Fix true transparency in status bar.

* commit '3a6567a86e33071871ed950006ae286750727b0e':
LayoutLib: Fix true transparency in status bar.
ebdedb47e5a24f980e7820c65c60c5bc04c5895d 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 42994097: am a1be8b43: LayoutLib: Update golden test images. [DO NOT MERGE]

* commit '4299409775ffd5cb70a8970c15807f33fc8b08d4':
LayoutLib: Update golden test images. [DO NOT MERGE]
68ff174b09d9c2bbacf4baa2ba88045df52af4db 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 2b99b5da: am c9862b44: An ugly hack to render CalendarView. [DO NOT MERGE]

* commit '2b99b5da279a7cbf1f6412a8ac7d6bfdd82e26c6':
An ugly hack to render CalendarView. [DO NOT MERGE]
d9600c986dac7e133280ea812dd809532ab90d76 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 7eb81868: am b1ad4a15: LayoutLib: Fix true transparency in status bar. [DO NOT MERGE]

* commit '7eb81868c338fc78139592ac81845c080f53b1c5':
LayoutLib: Fix true transparency in status bar. [DO NOT MERGE]
5769732e6e945196bb8bc3e10231d63d6c8686b9 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 9d6e87b6: am da687918: Make getInt in BridgeTypedArray accept empty String. [DO NOT MERGE]

* commit '9d6e87b67eb0d39d7584b12a3e843db68c8c9f3b':
Make getInt in BridgeTypedArray accept empty String. [DO NOT MERGE]
728fc73130908157770decc593d6e3131e1efd80 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am c43506fc: am 8c674fda: Fix layout mirroring. [DO NOT MERGE]

* commit 'c43506fc2dbe3fea6885e74ac8c67b91a0a644ff':
Fix layout mirroring. [DO NOT MERGE]
37ae8f4ef8921e8810c0a42fc11f3b45a72ffc03 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 918e62f1: am 7aa36129: Fix typo: s/FullScreen/Fullscreen/ in LayoutLib. [DO NOT MERGE]

* commit '918e62f1cb7e5802cfb7435dd606380fa5d3a278':
Fix typo: s/FullScreen/Fullscreen/ in LayoutLib. [DO NOT MERGE]
e4b4b08446a5f74ba4a5b12c56f1157ab549e72a 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am eb15670c: am 92f373fe: Fix Matrix_Delegate.native_getValues() [DO NOT MERGE]

* commit 'eb15670ccc46c688537cd99fa1af2e475a5fd2be':
Fix Matrix_Delegate.native_getValues() [DO NOT MERGE]
05ed2d91484f6185bcca17a71f045be36810e409 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 42e53ecb: am 66d91401: Revert to using AppTheme for LayoutLib tests. [DO NOT MERGE]

* commit '42e53ecbc146c4b131961e1f1764fcf886204b07':
Revert to using AppTheme for LayoutLib tests. [DO NOT MERGE]
21f66a6b9feb449f837f94c65595d67b4b91bf33 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 5078ad32: am 6b1b651f: Fix imports. [DO NOT MERGE]

* commit '5078ad325b0da36fe798df1df428d12732548217':
Fix imports. [DO NOT MERGE]
34f6f597901b50426b805a62bc0dbf32ef4b6692 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 4a213763: am 5ad4dae1: Fix theme namespace in tests. [DO NOT MERGE]

* commit '4a2137639aba761dcf289f1e2cc2e48dd42e7a3f':
Fix theme namespace in tests. [DO NOT MERGE]
39b4f4cc75e3e4e2a306102a76d4f9f2b9a1e2e6 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am f988761c: am 723e136f: Run setup for full tests only once. [DO NOT MERGE]

* commit 'f988761c0acc02bb4b21b6357e418da7799f11e7':
Run setup for full tests only once. [DO NOT MERGE]
de8da2793df3b3cb05215fa5dd02542548a54b9f 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am e54dbc4a: am 3ba16c1d: LayoutLib: fix layout when nav bar is absent. [DO NOT MERGE]

* commit 'e54dbc4ac74d110c4121932a22d04447a0e15b65':
LayoutLib: fix layout when nav bar is absent. [DO NOT MERGE]
963cac18adefa1e60a827183b95b4e61a23929d3 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 147c0506: am 55a36337: LayoutLib: Fix Status/Navigation Bar color. [DO NOT MERGE]

* commit '147c0506d5425633f0d45e1489262d4e27a35921':
LayoutLib: Fix Status/Navigation Bar color. [DO NOT MERGE]
76111ecbbde11e0cdddbb76530cf865f8846603e 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am e093bbf3: am d861fd81: Set support flag for custom layouts for RecyclerView. [DO NOT MERGE]

* commit 'e093bbf3997de7d2dddc2122c1349f734478f09f':
Set support flag for custom layouts for RecyclerView. [DO NOT MERGE]
c5bd6146f73a24008414d5bb8c07550e2c7f66ed 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 8a50ecea: am 82fae621: LayoutLib: translucent sys ui bars [DO NOT MERGE]

* commit '8a50ecea2ea0218377f7af8b4334b4ee4d386ef7':
LayoutLib: translucent sys ui bars [DO NOT MERGE]
6dcfe1e2b42f4c20860a34e47359cb559ae8c8f1 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am d4be80d9: am 9068539a: Update nav bar icons. [DO NOT MERGE]

* commit 'd4be80d9962cdf5d68dccd3291ed1cabb76b6df2':
Update nav bar icons. [DO NOT MERGE]
5eaa09ff9e4cbf71fd8ca312029987c0c3d43f9e 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am d1dde055: am e5afc311: Move the layout code out of RenderSessionImpl. [DO NOT MERGE]

* commit 'd1dde055060d63f8981ba51aeb75ab8a459db9b4':
Move the layout code out of RenderSessionImpl. [DO NOT MERGE]
1f2c15ca8e976f3378c9e4cf63b55de3484bb2cc 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 87f5fd6b: am c989950d: CalendarView rendering: use R.styleable to find attr. [DO NOT MERGE]

* commit '87f5fd6bf2c0d72fd37fb923b4d38225caa55d55':
CalendarView rendering: use R.styleable to find attr. [DO NOT MERGE]
36e164e095ab4a7f6d8a631a6c209f2e6ced41cb 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am e3eecca9: am b2fdaca9: Add tools:openDrawer to open a DrawerLayout. [DO NOT MERGE]

* commit 'e3eecca924e7c7961c54eb37336767c995c936e7':
Add tools:openDrawer to open a DrawerLayout. [DO NOT MERGE]
13cd7660813d52f5538a088612c3098d13484b12 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am b4060700: am a14ec6f4: Change tools:list_item to listitem. [DO NOT MERGE]

* commit 'b406070040d1370b6ef6154cba3965c4ab016d66':
Change tools:list_item to listitem. [DO NOT MERGE]
a556d7566b09e4743f859f3ca0878f2084448cfc 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 8bfc5a9d: am b1e21330: Implement tools:list_item for RecyclerView. [DO NOT MERGE]

* commit '8bfc5a9d14000a436e54350099bd460f55418f27':
Implement tools:list_item for RecyclerView. [DO NOT MERGE]
413d41aac4d573ad4f0270c0fefd94ef4e864225 26-Aug-2015 Jens Ole Lauridsen <jlauridsen@google.com> am 67b73b60: am cd4d5b3f: Support AppBar from Material Design. [DO NOT MERGE]

* commit '67b73b60bf9c9f433ed282abdc3691ee0cc6dda0':
Support AppBar from Material Design. [DO NOT MERGE]
7a92c26e20734df4f48ae74def6689691ef2ce29 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 6f5709ca: am de13095d: Update tests per new layoutlib_api [DO NOT MERGE]

* commit '6f5709ca97b27db9877c2fc65b083783d3f41e02':
Update tests per new layoutlib_api [DO NOT MERGE]
c5c2ea04780ddf77c37618f7ed37d575a5cd0744 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 9a13b1e7: am db67caa6: Add missing resolveResValue call. [DO NOT MERGE]

* commit '9a13b1e7502734fbe54d6f0e1c386f5382dfa662':
Add missing resolveResValue call. [DO NOT MERGE]
e4acf0ad4a83b22ea0ac4ecc23b41864df84714a 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am ad16968d: am 6eef1246: LayoutLib: Skip classes from java package. [DO NOT MERGE]

* commit 'ad16968d506840a1c1824c4ab6b5c181c8e04086':
LayoutLib: Skip classes from java package. [DO NOT MERGE]
7911c8b97d1c11de96e5fe3495d5e3cb979d0f9f 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 15e549a8: am 4f5e6c63: Skip warnings for some unresolved references. [DO NOT MERGE]

* commit '15e549a81f59daf016f29c6ed6f1aa3d5f65d41c':
Skip warnings for some unresolved references. [DO NOT MERGE]
13670bc6dea025bfd9b35c604547fe2b0bd2047a 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 669e4969: am 3e875dbb: Fix import order. [DO NOT MERGE]

* commit '669e4969a7245cf9d1febc5d4e67a0f2063e87fb':
Fix import order. [DO NOT MERGE]
6dc8bab993c55d239bc42822eb9a8003f7803dfd 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am c0fd1316: am e5fa12ad: Fix ParserFactory not initialized error. [DO NOT MERGE]

* commit 'c0fd131642f21eabec570147cf9f4116c900e8a0':
Fix ParserFactory not initialized error. [DO NOT MERGE]
bf7907bfc855478c16650e77a7a8a72370c6f35f 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 6b836cd0: am a287b842: Fix NPE in BridgeContext.obtainStyledAttributes() [DO NOT MERGE]

* commit '6b836cd06b1a2ebe5d31336486bb1b54e42439df':
Fix NPE in BridgeContext.obtainStyledAttributes() [DO NOT MERGE]
f2bf5470a3ec1f5eb8584e0d7c1a8eb3c08d8d20 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 91e456d2: am e698bb27: Fix BridgeTypedArray.getType() [DO NOT MERGE]

* commit '91e456d235256c385a7da1e45f098386bc68e86a':
Fix BridgeTypedArray.getType() [DO NOT MERGE]
7ec7805a50893be6242a41de01299cb1de44b461 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 8a6295e8: am e481e713: Include Shapes in LayoutLib. [DO NOT MERGE]

* commit '8a6295e82a2aed91eb26fa15479bf295c2bd79d7':
Include Shapes in LayoutLib. [DO NOT MERGE]
594939fc07e83445ef4507df6fcd457069352189 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 66d5f24d: am ba5a02c5: LayoutLib: Support getting resource arrays. [DO NOT MERGE]

* commit '66d5f24df0c3627028812ee23da8d4f08cc83e5c':
LayoutLib: Support getting resource arrays. [DO NOT MERGE]
bd343c1fbf05087094e1dbf40048137e3a3e08fa 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am b32e44ff: am a5ffed0b: LayoutLib: Change nullity annotations. [DO NOT MERGE]

* commit 'b32e44ff0c5fd410720bb28c87bc9cea83556edf':
LayoutLib: Change nullity annotations. [DO NOT MERGE]
9b1ac26921b9c7aaf3c43c8094d81cfabc5cc085 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 1754824c: am c96ef952: Add documentation about hack in commit: f8ea750455 [DO NOT MERGE]

* commit '1754824c2835d6f3a17c4a2c0ab668991797fcf9':
Add documentation about hack in commit: f8ea750455 [DO NOT MERGE]
6b7f9ae6f56375b1bd84f31206cac179e09b8146 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 678f0ea2: am b318ff54: Make DatePicker rendering not fail (style search fix). [DO NOT MERGE]

* commit '678f0ea2ba47f06387670e9f75b13637a6446899':
Make DatePicker rendering not fail (style search fix). [DO NOT MERGE]
d6363d86060126e20b913dcd6db3c5cc2019804c 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 2e57c1e2: am cc5e69e4: Inject anonymous inner classes of injected classes [DO NOT MERGE]

* commit '2e57c1e23f43bb0ede6280720559ccc1e866024b':
Inject anonymous inner classes of injected classes [DO NOT MERGE]
5b886bb08ff59e405c365db51abf71999e8f6c93 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 899daf75: am d7e89906: Update platformDir search in tests. [DO NOT MERGE]

* commit '899daf759e02bef0de14dc1a14b96b4d71f0b9fc':
Update platformDir search in tests. [DO NOT MERGE]
aae9c9309ca5155124f740b10a40c68b09ed0ce6 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 2f50403f: am afedbc47: Make Context.getClassLoader() work. [DO NOT MERGE]

* commit '2f50403fe0a8a035757b047af00c7520fadb9015':
Make Context.getClassLoader() work. [DO NOT MERGE]
522e67e4ac600fb19c18f55f0e51096af9ae37d3 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am de3ac8f9: am 92480a9a: Fix include tag rendering. [DO NOT MERGE]

* commit 'de3ac8f9fc5987ac1f1223da02b4275fdbae3d56':
Fix include tag rendering. [DO NOT MERGE]
8df6131ac103ac58ab03f6aae01e136df3c6a7b1 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 50e1406a: am f6b08547: Show better error message for color attr not found. [DO NOT MERGE]

* commit '50e1406a4ad668179a9a3d28c58d68c0eee44237':
Show better error message for color attr not found. [DO NOT MERGE]
59f026e937e749a77f12614010f8be05123f4837 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 81990c3f: am b1370c26: Fix build: udpate parser factory method [DO NOT MERGE]

* commit '81990c3f988369c755590288b93508e30024c56c':
Fix build: udpate parser factory method [DO NOT MERGE]
b44f7fda759394b6447f19c0b3c9a3fdf8f9cd95 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 0a07bb95: am aa729889: Don\'t keep LayoutlibCallback reference. [DO NOT MERGE]

* commit '0a07bb95a1dd94c3457860a934d3ee546919cff2':
Don't keep LayoutlibCallback reference. [DO NOT MERGE]
78d77bc379f42dfe020cf0719ceae14174cf1c33 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am bbbdc2ad: am 5c90c4f4: Remove kxml dependency [DO NOT MERGE]

* commit 'bbbdc2ad8939c28828a8441c0b24812c53a9eb66':
Remove kxml dependency [DO NOT MERGE]
3a6567a86e33071871ed950006ae286750727b0e 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 4eb298a9: LayoutLib: Fix true transparency in status bar.

* commit '4eb298a941c3f465944b63f1a06518e911681c89':
LayoutLib: Fix true transparency in status bar.
4eb298a941c3f465944b63f1a06518e911681c89 22-Aug-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Fix true transparency in status bar.

Change-Id: Ieedf23cde9ab3e36c77501d30cc7e808e66a4782
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/NavigationBar.java
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
a1be8b43e49d7b3555af6f284e4bb416ae6d477f 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Update golden test images. [DO NOT MERGE]

Also update the generated classes from the MyApplication test project.

Change-Id: I97bce3737c0cb528a61fa652988a2edb09ec885d
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$layout.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$menu.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$string.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$style.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R.class
ridge/tests/res/testApp/MyApplication/golden/activity.png
ridge/tests/res/testApp/MyApplication/golden/allwidgets.png
ridge/tests/res/testApp/MyApplication/golden/array_check.png
ridge/tests/res/testApp/MyApplication/golden/expand_horz_layout.png
c9862b4429b32985d5267fa6ae28025278bdd603 26-Aug-2015 Deepanshu Gupta <deepanshu@google.com> An ugly hack to render CalendarView. [DO NOT MERGE]

This is an ugly hack to switch the field
android.widget.SimpleMonthView.mDayFormatter from
java.text.SimpleDateFormat to icu's version of the same class. The hack
is only for the L version of the LayoutLib. It's done in a better way in
M and even better in N.

Change-Id: Id84a1d32040211c46b20cdaf3a77119676e748b6
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/SimpleMonthViewAdapter.java
b1ad4a155957160de9c4ad5c5beb39ce00ef6799 22-Aug-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Fix true transparency in status bar. [DO NOT MERGE]

Change-Id: Ieedf23cde9ab3e36c77501d30cc7e808e66a4782
(cherry picked from commit f9662c006c650c9f61f19a5e1ea4a76640eb85ca)
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/NavigationBar.java
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
da687918e13010d56e3d067e0ef477165cf38e10 04-Aug-2015 Deepanshu Gupta <deepanshu@google.com> Make getInt in BridgeTypedArray accept empty String. [DO NOT MERGE]

The XML editor already warns about the empty strings in places where an
int value is required. There's no need to show another warning for it in
the rendering panel. Also, the rendering might have also failed when the
empty string is encountered. Try an continue the rendering, because no
rendering state is really bad.

Change-Id: I85106f37e4462f237e85f0b065b4ce8a4bfabf4d
(cherry picked from commit 0437cac76c24dc6cac7b530e6d80f789565550ec)
ridge/src/android/content/res/BridgeTypedArray.java
8c674fda8939c2d30f85e0341b70d9f3edd04d6c 04-Aug-2015 Deepanshu Gupta <deepanshu@google.com> Fix layout mirroring. [DO NOT MERGE]

Change-Id: I7db398aa2d11dac1210e84922138f78f0c23bb9b
(cherry picked from commit a9090705efcc44f015486944e5aeb926173a7968)
ridge/src/com/android/layoutlib/bridge/impl/Layout.java
7aa36129403de74c485f286d290787e38565ddae 31-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Fix typo: s/FullScreen/Fullscreen/ in LayoutLib. [DO NOT MERGE]

Change-Id: Ia8d223ae01f08df945ab05615b07075b98a54a32
(cherry picked from commit 5a8f33f1b09b0311f1bbd1ec6b90db706edb5219)
ridge/src/com/android/layoutlib/bridge/impl/Layout.java
92f373fe3209f9372d6168b016ae613f7df0625b 03-Aug-2015 Deepanshu Gupta <deepanshu@google.com> Fix Matrix_Delegate.native_getValues() [DO NOT MERGE]

The bug manifested itself by not rendering the wifi icon in the status
bar.

Change-Id: I7debf3eef387965d774bf66e856812e67c8552a7
(cherry picked from commit 9f280a9301566c94a583cc45b6abea8a4488e33c)
ridge/src/android/graphics/Matrix_Delegate.java
66d914018cf605c25fb6b2f53627ef702decbdd1 03-Aug-2015 Deepanshu Gupta <deepanshu@google.com> Revert to using AppTheme for LayoutLib tests. [DO NOT MERGE]

Use AppTheme for all tests other than testExpand. AppTheme contains an
attribute needed by testArrayCheck. Also, since the AppTheme extends
Theme.Material.Light.DarkActionBar, other tests should be unaffected.

Also, update the golden image for the testArrayCheck.

Change-Id: Ib5f53f3b029c5aceef2b622e5ac63952d6b1972a
(cherry picked from commit 89a045c31f4f08bc0d9d533ef47f321e6423f656)
ridge/tests/res/testApp/MyApplication/golden/array_check.png
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
6b1b651fedc421265d328f1b74512e62ac8a2e13 27-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Fix imports. [DO NOT MERGE]

Also remove null checks on return value of ReflectionUtils.getMethod()
as the method always return non null.

Change-Id: Ib476302c2cf0504a0f54db4e795955ad10e5df3f
(cherry picked from commit 671b7f9b99316f7224c1213d6923d449a2de9b62)
ridge/src/com/android/layoutlib/bridge/android/support/DesignLibUtil.java
ridge/src/com/android/layoutlib/bridge/android/support/RecyclerViewUtil.java
ridge/src/com/android/layoutlib/bridge/impl/Layout.java
5ad4dae1578dd6823da93ee8382f07ec2814e3ba 29-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Fix theme namespace in tests. [DO NOT MERGE]

The tests used framework theme (Material), but the ResourceResolver was
created with project theme. This caused tests to fail becasue of missing
resources.

Change-Id: Ia17ee19054f6689f85e3423e83c1f47a2cc4364f
(cherry picked from commit 4a6ee98d39ab2300b2cd17c60221e43bf4ade8e7)
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
723e136f96a06360a62dc981da1c8ea0ae546660 09-May-2015 Deepanshu Gupta <deepanshu@google.com> Run setup for full tests only once. [DO NOT MERGE]

Change-Id: Iee64dbd88d473b7be08581f26ccddf649aed8e56
(cherry picked from commit a12ec8f1e28cb5a8601bf606852f1d34d7c91996)
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
3ba16c1d9d53d520543e1bd363236453101096ec 29-Jul-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: fix layout when nav bar is absent. [DO NOT MERGE]

Change-Id: I0d3ee6fd5a4656156a630d3b298533ea13eb8415
(cherry picked from commit 6e8d8ad2b7cffed751b2a382ac7b761954767188)
ridge/src/com/android/layoutlib/bridge/impl/Layout.java
55a363376b4d877870650a5a4b757d286f571345 27-Jul-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Fix Status/Navigation Bar color. [DO NOT MERGE]

If the color value for status bar or navigation bar is declared directly
in the theme (i.e. doesn't reference a color resource via @color/foo),
the ResourceType for the attribute is not assigned by the IDE. LayoutLib
used to ignore resources that were not of type color. This change fixes
the issue by also checking the resources without a type.

Change-Id: I94735ec225415282db06ab9db5c3233ad89c052f
(cherry picked from commit e3f9834ebd8a6e4ee155c8e4c9456dfc98e8b832)
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
d861fd81f7a2e62a31c4f2c7aed66fceb475d0c8 24-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Set support flag for custom layouts for RecyclerView. [DO NOT MERGE]

Change-Id: I3a0349c0482ae45e226b2016a0f24707c85edff4
(cherry picked from commit f7712d3524309c365b68f93497771084e6b5a66b)
ridge/src/com/android/layoutlib/bridge/Bridge.java
82fae621533f9d8fc92f5a8d330ebe94a67ff07d 23-Jul-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: translucent sys ui bars [DO NOT MERGE]

Change-Id: I9c294329fc78418c505a5115bc9c07da29595af2
(cherry picked from commit fc8f4aad7395eca11f6d9b82eb266b1f4ee5041b)
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/NavigationBar.java
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
ridge/src/com/android/layoutlib/bridge/impl/Layout.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
9068539a48e13a7d32342e46db32b6f5fa3d531e 14-May-2015 Deepanshu Gupta <deepanshu@google.com> Update nav bar icons. [DO NOT MERGE]

- Add a script to copy the icons from the original source.
- Update layout used for the navigation bar to be closer to the original
layout.
- Update test image with the latest rendering.
- Add a nexus 5 landscape device config to help with testing.

Change-Id: I0b6674955e0970a6a8cce148b1b7aa61e1752ccd
(cherry picked from commit 139d6ff12d395a888624113fdd2521861b47d761)
ridge/resources/bars/hdpi/stat_sys_battery_100.png
ridge/resources/bars/mdpi/stat_sys_battery_100.png
ridge/resources/bars/navigation_bar.xml
ridge/resources/bars/v21/hdpi/ic_sysbar_back.png
ridge/resources/bars/v21/hdpi/ic_sysbar_home.png
ridge/resources/bars/v21/hdpi/ic_sysbar_recent.png
ridge/resources/bars/v21/ldrtl-hdpi/ic_sysbar_back.png
ridge/resources/bars/v21/ldrtl-mdpi/ic_sysbar_back.png
ridge/resources/bars/v21/ldrtl-xhdpi/ic_sysbar_back.png
ridge/resources/bars/v21/ldrtl-xxhdpi/ic_sysbar_back.png
ridge/resources/bars/v21/mdpi/ic_sysbar_back.png
ridge/resources/bars/v21/mdpi/ic_sysbar_home.png
ridge/resources/bars/v21/mdpi/ic_sysbar_recent.png
ridge/resources/bars/v21/xhdpi/ic_sysbar_back.png
ridge/resources/bars/v21/xhdpi/ic_sysbar_home.png
ridge/resources/bars/v21/xhdpi/ic_sysbar_recent.png
ridge/resources/bars/v21/xxhdpi/ic_sysbar_back.png
ridge/resources/bars/v21/xxhdpi/ic_sysbar_home.png
ridge/resources/bars/v21/xxhdpi/ic_sysbar_recent.png
ridge/resources/bars/xhdpi/stat_sys_battery_100.png
ridge/src/com/android/layoutlib/bridge/bars/NavigationBar.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/setup/ConfigGenerator.java
ridge/update_nav_icons.sh
e5afc3117be394fdd92496b39e9bad248972902a 22-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Move the layout code out of RenderSessionImpl. [DO NOT MERGE]

Also, switch to using a RelativeLayout from a LinearLayout. The change
will help in future when enabling transparent status and nav bar.

Change-Id: Ie4db5d28313f1c5ef775603788598a56409f92c7
(cherry picked from commit b1484862e2367d87d3ccbd0fd0a6d2598ed5918a)
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/bars/AppCompatActionBar.java
ridge/src/com/android/layoutlib/bridge/bars/BridgeActionBar.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/FrameworkActionBar.java
ridge/src/com/android/layoutlib/bridge/bars/FrameworkActionBarWrapper.java
ridge/src/com/android/layoutlib/bridge/bars/NavigationBar.java
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
ridge/src/com/android/layoutlib/bridge/bars/TitleBar.java
ridge/src/com/android/layoutlib/bridge/impl/Layout.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
c989950dbf18dc294aebfff47c86bfd0349377a0 17-Jul-2015 Deepanshu Gupta <deepanshu@google.com> CalendarView rendering: use R.styleable to find attr. [DO NOT MERGE]

Not all attr are added to R.attr. This results in some attr not being
found and hence a broken rendering. Fix the issue by adding all attr
referenced in R.styleable to the map of attr before adding any remaining
values from R.attr.

Change-Id: I1ebf8a394b9e1edbf7490e011833d20a00d38317
(cherry picked from commit e8018480dbefc896bd26e5eedfdde802ce3731a7)
ridge/src/com/android/layoutlib/bridge/Bridge.java
b2fdaca9590f808fda08e055edbf6fca8030d7d3 11-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Add tools:openDrawer to open a DrawerLayout. [DO NOT MERGE]

Store a list of drawer layouts with tools:openDrawer encountered and
call openDrawer on them during the post-inflation processing.

Change-Id: Idee299a9af1bb106509a03bb2e8424c372b93dc5
(cherry picked from commit ccbc11770397888cf7780925bb4c7cf1d2f2f80e)
ridge/src/android/view/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/BridgeConstants.java
ridge/src/com/android/layoutlib/bridge/android/support/DrawerLayoutUtil.java
ridge/src/com/android/layoutlib/bridge/android/support/RecyclerViewUtil.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/util/ReflectionUtils.java
a14ec6f450eaff09b6800fc40616a00cf4899df8 08-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Change tools:list_item to listitem. [DO NOT MERGE]

The listitem is already in use for ListView. Reuse the same attribute
for RecyclerView rather than creating a new one.

Change-Id: I82aabe7d04fbe3e61645bc427a81c14c454d03c5
(cherry picked from commit 111dc04a28f0181bf429e5ded9024d3fdff7be50)
ridge/src/com/android/layoutlib/bridge/BridgeConstants.java
b1e21330f82ec0940658b16dfe7e14e8da8c5d33 07-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Implement tools:list_item for RecyclerView. [DO NOT MERGE]

It's now possible to use tools:list_item attribute for RecyclerView to
point to a default layout, rather than always using a TextView.

Change-Id: I5d522b2f0ca38b420fddfcb0f73a26d95707da79
(cherry picked from commit 61f23e9bf7d784e7a52168196758c4f6c6853e77)
ridge/src/android/view/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/BridgeConstants.java
ridge/src/com/android/layoutlib/bridge/android/support/RecyclerViewUtil.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/util/ReflectionUtils.java
cd4d5b3f38186f845e00454b4b95bec77c3ac8fd 05-Jun-2015 Jens Ole Lauridsen <jlauridsen@google.com> Support AppBar from Material Design. [DO NOT MERGE]

This CL is a start for making the design able to render the AppBar.
We are still missing support for: system menu and the app icon.

Change-Id: I19600f8ee1e7e6492186a0b7ae7fb38c82e15c02
(cherry picked from commit 4dfe4d43ce5634f059a3ba669e3cac4551c3a3ee)
ridge/src/android/view/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/support/DesignLibUtil.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
de13095d5d6b404c41d36d18d060fb41a9a4fc31 07-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Update tests per new layoutlib_api [DO NOT MERGE]

Change-Id: Idc89ffceaf171abcf2b579f4e934b514ef209210
(cherry picked from commit d7b846c1814de34f2cea8507907f70618ec7cae0)
ridge/tests/src/com/android/layoutlib/bridge/intensive/setup/ConfigGenerator.java
db67caa60c6050e7a46d1b90ccb6847a5b8ec661 30-Jun-2015 Deepanshu Gupta <deepanshu@google.com> Add missing resolveResValue call. [DO NOT MERGE]

Bug: http://b.android.com/178504
Change-Id: I7dde8094cf762893e4f7ea0d3de87a281c9602cd
(cherry picked from commit 5d1eaf4a197130f561b16c4ed083cf016b20ab92)
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
6eef124657a6e7d2c70b284f22d6c0006cfea93a 01-Jun-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Skip classes from java package. [DO NOT MERGE]

Classes in "java" package can't be defined at runtime anyway. No use
including them in LayoutLib.

Change-Id: I7e7c46f0d74e32c893b23093828569b4fa5e3a73
(cherry picked from commit 86caef1892e1ce063e0e880396c8deaa3a6a171d)
reate/src/com/android/tools/layoutlib/create/DependencyFinder.java
4f5e6c631522649796413c63695ae45b8759eba8 27-May-2015 Deepanshu Gupta <deepanshu@google.com> Skip warnings for some unresolved references. [DO NOT MERGE]

Some applications rename the newer RTL attributes to the older
attributes in order to target RTL locales, but not need to include two
attributes everywhere it's needed. For example, iosched renames
paddingStart to paddingLeft (among other attributes) for API 17 and
above. This leads to hundreds of warnings about missing attributes.
This change suppresses such warnings.

Also, skip adding unresolved attributes to the typed array. This is more
in line with the actual implementation on device, and prevents
unexpected warnings/errors/crashes later.

Change-Id: Iee616fa6295aa9731ede0cf9dcd6dd2bd1fe8f20
(cherry picked from commit b3e872be9e634c8d1f34d07778ea753880bbf2d9)
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
3e875dbb38c812e3684193fdefa04433c84541db 13-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Fix import order. [DO NOT MERGE]

Change-Id: I50bfbf4011290683a1c6adb94e0b6fa301dcc75b
(cherry picked from commit b9b8aef94e5bad8f5f03f686a2d3d8a09c045a7b)
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
e5fa12ad781c1759e0ff94dbc649be0e14844306 30-May-2015 Deepanshu Gupta <deepanshu@google.com> Fix ParserFactory not initialized error. [DO NOT MERGE]

Bug: http://b.android.com/175129
Change-Id: I2111673767e0f62ee910560022b559a177d55abd
(cherry picked from commit 996458b76c944f78eee26d7bd8cb4d39303b9119)
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
a287b8428ac6d9073f84f9b2f47ba5fc73939f10 28-May-2015 Deepanshu Gupta <deepanshu@google.com> Fix NPE in BridgeContext.obtainStyledAttributes() [DO NOT MERGE]

Replace direct member access with getter that checks for nullness.

Change-Id: I4a56a0ee903ae7d8c89b91d74b128302e1965586
(cherry picked from commit d758e042ce08c46712db3db2d63fc84795028dfe)
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
e698bb27f3a0090e01132fd7b5a6d95abcbbfc18 28-May-2015 Deepanshu Gupta <deepanshu@google.com> Fix BridgeTypedArray.getType() [DO NOT MERGE]

Also includes some fixes for BridgeTypedArray.getInt() - when value is a
color, when value is an octal int, when value is true/false.

Bug: http://b.android.com/162438
Change-Id: I0b985ea3437be8018d0e116e7a599843cc7aacd6
(cherry picked from commit 5779ad71eabed3aabaefef1e4749693f8320816e)
ridge/src/android/content/res/BridgeTypedArray.java
e481e713f24c83a3347fd83580d07252d589ec3b 26-May-2015 Deepanshu Gupta <deepanshu@google.com> Include Shapes in LayoutLib. [DO NOT MERGE]

Change-Id: Ifb32882c478f8d407ad904e224b67fe2bd65dc08
(cherry picked from commit 59164ec0551aa49f497acca81222f304cf4f344b)
reate/src/com/android/tools/layoutlib/create/Main.java
ba5a02c5aa3c9850cdd72e592e9fa8a8d92db7ef 23-May-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Support getting resource arrays. [DO NOT MERGE]

- Don't crash when Resources.get<Type>Array() is called.
- If the IDE supports it, actually return the value.
- Add tests for getArray.
- Update test app to latest gradle plugin version.
- Switch to using AppTheme for tests, since the tests depend on some
custom theme attributes. The AppTheme now inherits from
Material.Light.DarkActionBar, so other tests should be unaffected.

Depends on a newer version of sdk-common, which fixes the parsing of
array resource in value files.

Bug: 12372031
Change-Id: I313b61511e98ac1402d75056ebfdeeb005ebb96d
(cherry picked from commit 642cff50f8f7a67eed09eac1e56d7133b26a192c)
ridge/src/android/content/res/BridgeResources.java
ridge/tests/res/testApp/MyApplication/build.gradle
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/ArraysCheckWidget.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/MyActivity.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$array.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$attr.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$dimen.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$drawable.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$id.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$integer.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$layout.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$menu.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$string.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$style.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R.class
ridge/tests/res/testApp/MyApplication/golden/array_check.png
ridge/tests/res/testApp/MyApplication/src/main/java/com/android/layoutlib/test/myapplication/ArraysCheckWidget.java
ridge/tests/res/testApp/MyApplication/src/main/res/layout/array_check.xml
ridge/tests/res/testApp/MyApplication/src/main/res/values/arrays.xml
ridge/tests/res/testApp/MyApplication/src/main/res/values/attrs.xml
ridge/tests/res/testApp/MyApplication/src/main/res/values/styles.xml
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
a5ffed0b69ac41d65aacc6ee586688a22226f64b 22-May-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Change nullity annotations. [DO NOT MERGE]

Switch from using tools nullity annotations (com.android.annotations)
to android framework annotations (android.annotation).

A new sdk-common prebuilt is required for LayoutLib tests. The new
sdk-common requires an updated tools-common. The updated tools-common
doesn't have nullity annotations. So, instead of adding the annotation
dependency, just reuse the platform ones. This also paves the way to
include other platform annotations like IdRes etc.

Change-Id: I87b8f767d3681d914abe7d1329e26a87f49f50a7
(cherry picked from commit 476e582d2ffdf25102d4c55f8c242baa3d21d37f)
idea/misc.xml
ridge/src/android/content/res/BridgeTypedArray.java
ridge/src/android/content/res/Resources_Theme_Delegate.java
ridge/src/android/graphics/BitmapFactory_Delegate.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/FontFamily_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/Typeface_Delegate.java
ridge/src/android/view/ShadowPainter.java
ridge/src/android/view/accessibility/AccessibilityManager.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/support/RecyclerViewUtil.java
ridge/src/com/android/layoutlib/bridge/bars/AppCompatActionBar.java
ridge/src/com/android/layoutlib/bridge/bars/BridgeActionBar.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/FrameworkActionBar.java
ridge/src/com/android/layoutlib/bridge/bars/FrameworkActionBarWrapper.java
ridge/src/com/android/layoutlib/bridge/impl/DelegateManager.java
ridge/src/com/android/layoutlib/bridge/impl/ParserFactory.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
ridge/src/com/android/layoutlib/bridge/util/DynamicIdMap.java
ridge/src/com/android/layoutlib/bridge/util/ReflectionUtils.java
ridge/tests/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParserTest.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/ImageUtils.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/setup/LayoutLibTestCallback.java
reate/src/com/android/tools/layoutlib/create/Main.java
c96ef95285e935034377dee30f3b8a0329f6c3a2 21-May-2015 Deepanshu Gupta <deepanshu@google.com> Add documentation about hack in commit: f8ea750455 [DO NOT MERGE]

Change-Id: I9ce871a67fb67e02e0c4df1eb5c3261ea52a914b
(cherry picked from commit 6330971ed293a2777bbdab09288f90ea4b2d0255)
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
b318ff54fcd17e7aadd1b0251c34cba348898704 24-Aug-2015 Deepanshu Gupta <deepanshu@google.com> Make DatePicker rendering not fail (style search fix). [DO NOT MERGE]

Only cherry picked for the style not found fix.

Change-Id: Ied2b71de5b32bcb640bf4ec445e8a39509f800e9
(cherry picked from commit d5b82845450beac2d3c7db9cd80e9fc34d43a297)
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
cc5e69e4fed8bb797dc3f83c1de32eaf4a52f324 20-May-2015 Deepanshu Gupta <deepanshu@google.com> Inject anonymous inner classes of injected classes [DO NOT MERGE]

When injecting classes in LayoutLib (eg. CreateInfo), so that LayoutLib
can refer back to the changes, also inject the anonymous inner classes.
Without this, the injected classes are not loadable. Although, LayoutLib
itself doesn't load these classes, but some tests do.

Change-Id: Ib5f6b779ef4d79dec8d614d3dbb26eeac88a1064
(cherry picked from commit bfc9c3bcbe3b7056d3330f754811c1506f181b88)
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/ICreateInfo.java
reate/src/com/android/tools/layoutlib/create/InjectMethodRunnables.java
d7e89906a453a562a8fef303fc6c4068dfa5c0d0 20-May-2015 Deepanshu Gupta <deepanshu@google.com> Update platformDir search in tests. [DO NOT MERGE]

When trying to find the SDK Platform Dir for LayoutLib tests, also
test if the dir from which the tests are run is module dir.

Change-Id: Id5c6038d07ebbb122e38f907ad488ed1f2bcde32
(cherry picked from commit 612a05e7e15184b21437731b9aa5db2d1d4fc54c)
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
afedbc47b3c8f3fa9955496e6ceb7f5702dd90a3 19-May-2015 Deepanshu Gupta <deepanshu@google.com> Make Context.getClassLoader() work. [DO NOT MERGE]

Context.getClassLoader() is used by the LayoutInflater and can be used
by custom views. However, when called from the LayoutInflater, this
needs to return only the Framework classes. This is so that the IDE gets
a chance to instantiate the custom views, which helps in better error
reporting and better fallback in case of exceptions, like MockView.

To workaround this need of the same method returning different results
based on where it's called from, the method call in LayoutInflater is
renamed to getFrameworkClassLoader() and the new method is injected in
Context. The implementation of getFrameworkClassLoader() maintains the
existing behaviour of getClassLoader().

Context.getClassLoader() is now modified to return classes from both
Framework and the app namespace.

Also, update the list of packages to search for Framework views.

Change-Id: I1a6be4aa1fc5c1c5520b5440a348a52f10b6eb3b
(cherry picked from commit f8ea750455eec81e4e6d877b3e18e29a86d4ec95)
ridge/src/android/view/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/ICreateInfo.java
reate/src/com/android/tools/layoutlib/create/InjectMethodRunnables.java
reate/src/com/android/tools/layoutlib/create/InjectMethodsAdapter.java
reate/src/com/android/tools/layoutlib/create/ReplaceMethodCallsAdapter.java
reate/tests/com/android/tools/layoutlib/create/AsmGeneratorTest.java
92480a9ad89a813bdf36185fa8c4d227d8415b4c 19-May-2015 Deepanshu Gupta <deepanshu@google.com> Fix include tag rendering. [DO NOT MERGE]

A missing catch clause caused rendering to be failed when there is an
include tag that doesn't specify layout_width and layout_height. Also
improve the error messages to make debugging easier next time.

Change-Id: I617762636973a010b34da167c7b5fcd328b7d178
(cherry picked from commit 21b564573327b1ed2f7e06146b8a01c47ede3089)
ridge/src/android/content/res/BridgeTypedArray.java
ridge/src/android/view/LayoutInflater_Delegate.java
f6b08547458b9219da1717a79363f778bfc57dd0 18-May-2015 Deepanshu Gupta <deepanshu@google.com> Show better error message for color attr not found. [DO NOT MERGE]

Change-Id: I1ca32989522d30fec336eb607ee81f9e5cb5f48f
(cherry picked from commit 5f1bf496948fb6383ae17e5467a26a00489d7564)
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
b1370c2687f4b03f7b9b36f89bb636b5b65f9531 15-May-2015 Deepanshu Gupta <deepanshu@google.com> Fix build: udpate parser factory method [DO NOT MERGE]

Change-Id: I78ad55bc924427b44451ec32fbd1032d6cd77544
(cherry picked from commit 3dc19883c571a829c36aa603c04a55c91b00dd57)
ridge/tests/src/com/android/layoutlib/bridge/intensive/setup/LayoutLibTestCallback.java
aa72988955789be6e790c344daba3ef17abfcd98 15-May-2015 Deepanshu Gupta <deepanshu@google.com> Don't keep LayoutlibCallback reference. [DO NOT MERGE]

Switch to the newer API that enables keeping a reference only to the
ParserFactory which is a much leaner object as compared to
LayoutlibCallback.

Conflicts:
tools/layoutlib/bridge/tests/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParserTest.java

Change-Id: I9b7afd93226db23786a00b2951cbf5ae5b8f3e5f
(cherry picked from commit f2d408b51debadca830eefbf8131185ac55ce699)
ridge/src/com/android/layoutlib/bridge/impl/ParserFactory.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
ridge/tests/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParserTest.java
5c90c4f459c2a7213a197f7ee98ad71e85af31bc 09-May-2015 Deepanshu Gupta <deepanshu@google.com> Remove kxml dependency [DO NOT MERGE]

Create XmlPullParser using callback provided by the client. This enables
clients to choose which XmlPullParser implementation they want.

Change-Id: I9ad97a4777820cdbe5c8fc3716f74ddec9065c70
(cherry picked from commit 78af25584633462e4ab8cf9bafe10f43e7cb2d83)
ridge/Android.mk
ridge/bridge.iml
ridge/src/android/util/Xml_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/ParserFactory.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
ridge/tests/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParserTest.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/setup/LayoutLibTestCallback.java
ad98eeb16c990b5c48e0a0858f04b847f8099ea6 20-Aug-2015 Filip Gruszczynski <gruszczy@google.com> Fix build.

Change-Id: I4be1b58cb5348ffe8b6dd5b1a2c612de737d0d91
ridge/src/android/view/IWindowManagerImpl.java
6a199fd543b21e52eb7b5dd25fd3e458f14292e0 11-Aug-2015 Diego Perez <diegoperez@google.com> am e56287ed: am 62db64f4: am 83ec22a8: am af8c19e7: am 7d85b543: Merge "Make DelegateManager thread safe" into mnc-dev

* commit 'e56287edcd564f2dfa57c0a9f6fe829f20c22377':
Make DelegateManager thread safe
e56287edcd564f2dfa57c0a9f6fe829f20c22377 11-Aug-2015 Diego Perez <diegoperez@google.com> am 62db64f4: am 83ec22a8: am af8c19e7: am 7d85b543: Merge "Make DelegateManager thread safe" into mnc-dev

* commit '62db64f4f3bf93ee25cc54b74f906e74db2dbf1c':
Make DelegateManager thread safe
7d85b5435d01f8d4856a718d655e30fb5a703560 11-Aug-2015 Diego Perez <diegoperez@google.com> Merge "Make DelegateManager thread safe" into mnc-dev
847b0d3ad22a47e0bca3d8bc8168fea7a0ba2f80 07-Aug-2015 Deepanshu Gupta <deepanshu@google.com> Revert "LayoutLib: Switch SimpleDateFormat to icu."

This reverts commit b556decf75b2b084e1aed54ac7fa23a141eedb7f.

This is no longer needed as the SimpleDateFormat has been switched in
the framework. Also, the revert leaves the change to intellij inspection
profiles as is, because that change was independent of the main issue.

Change-Id: I6f4d7d9ddc10262b087ad6a2604fa50562fac043
ridge/src/android/widget/SimpleMonthView_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/ICreateInfo.java
reate/src/com/android/tools/layoutlib/create/PromoteFieldClassAdapter.java
reate/tests/com/android/tools/layoutlib/create/AsmGeneratorTest.java
511e48728a4b8f8736fcb2ea28dd1ab7cc699972 06-Aug-2015 Diego Perez <diegoperez@google.com> Make DelegateManager thread safe

We have been seeing crashes on the Theme editor related to an assertion
on getDelegate when the object does not exist
(http://b.android.com/181951).
When debugging, the crash was happening without seeing a previous call
to removeJavaReference. This seems to completely remove that crash.
Since the DelegateManager can be called at least from two threads
(main thread and the finalizer), it should be thread safe.

Bug: http://b.android.com/181951
Change-Id: I1b28f863ff198f8592f170a98f9de391b2ac3ea2
ridge/src/com/android/layoutlib/bridge/impl/DelegateManager.java
12985e04c6bd79d783e1b4486600c727aaafa6d4 07-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 3a133801: am c344ac57: am fbdf2032: am cfe5778d: am 8f26616d: Merge "LayoutLib: Switch SimpleDateFormat to icu." into mnc-dev

* commit '3a133801776fd51342cf1f0896bb7aff34ad6c60':
LayoutLib: Switch SimpleDateFormat to icu.
3a133801776fd51342cf1f0896bb7aff34ad6c60 07-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am c344ac57: am fbdf2032: am cfe5778d: am 8f26616d: Merge "LayoutLib: Switch SimpleDateFormat to icu." into mnc-dev

* commit 'c344ac576f79b5ba7940007b712fb79a220ab4b0':
LayoutLib: Switch SimpleDateFormat to icu.
022f5e80b2ff7263c3a3c8054e6a689fad02c985 07-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 7fe85fa7: am 63790291: am 2081769f: am 618d96da: am 385ce0a3: Merge "Replace Locale.getDefault with custom impl." into mnc-dev

* commit '7fe85fa70b22c70a9a9eb90664f0aa4442cacdbe':
Replace Locale.getDefault with custom impl.
7fe85fa70b22c70a9a9eb90664f0aa4442cacdbe 07-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 63790291: am 2081769f: am 618d96da: am 385ce0a3: Merge "Replace Locale.getDefault with custom impl." into mnc-dev

* commit '63790291a4c385d3e92680af816f4fe32d6535ef':
Replace Locale.getDefault with custom impl.
b556decf75b2b084e1aed54ac7fa23a141eedb7f 07-Aug-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Switch SimpleDateFormat to icu.

Use ICU's implementation of SimpleDateFormat in LayoutLib. The format
patterns used are not supported by java.text.SimpleDateFormat.

The change required adding a mechanism for promoting visibility of
fields in the framework in the create tool.
TODO: Add additional tests in the create tool for this new
functionality.

Change-Id: Id0f4be41f9731c42a28919c32cc5ef271a656982
idea/inspectionProfiles/Project_Default.xml
ridge/src/android/widget/SimpleMonthView_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/ICreateInfo.java
reate/src/com/android/tools/layoutlib/create/PromoteFieldClassAdapter.java
reate/tests/com/android/tools/layoutlib/create/AsmGeneratorTest.java
82c7fdb1f6346862de373c95c618e370f81d8df6 05-Aug-2015 Deepanshu Gupta <deepanshu@google.com> Replace Locale.getDefault with custom impl.

In LayoutLib the default locale should always be the locale set the
rendering params. This change replaces all calls to Locale.getDefault in
the framework with calls to AndroidLocale.getDefault() which tries to
find the locale from the current context, but falls back to the original
call.

Change-Id: I496b35dcfc17fd61fedee21c7495541ab870b1fc
ridge/src/com/android/layoutlib/bridge/android/AndroidLocale.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
reate/src/com/android/tools/layoutlib/create/ReplaceMethodCallsAdapter.java
861aaa9b67f6cdf0d45d0207cd2e4cf239f220da 06-Aug-2015 Wale Ogunwale <ogunwale@google.com> Fixed build breakage.

Change-Id: I338e6469da24b5ed30961cf66dbacbe1424eb204
ridge/src/android/view/IWindowManagerImpl.java
f22a58d1de4612b9555f25d1091a791dd81e4382 06-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am 0889fd29: am 0e0d254c: am c34288be: am 2c1a22d9: Merge changes I85106f37,I7db398aa into mnc-dev

* commit '0889fd295974ce589ccd0e7a44932012ede577db':
Make getInt in BridgeTypedArray accept empty String.
Fix layout mirroring.
0437cac76c24dc6cac7b530e6d80f789565550ec 04-Aug-2015 Deepanshu Gupta <deepanshu@google.com> Make getInt in BridgeTypedArray accept empty String.

The XML editor already warns about the empty strings in places where an
int value is required. There's no need to show another warning for it in
the rendering panel. Also, the rendering might have also failed when the
empty string is encountered. Try an continue the rendering, because no
rendering state is really bad.

Change-Id: I85106f37e4462f237e85f0b065b4ce8a4bfabf4d
ridge/src/android/content/res/BridgeTypedArray.java
a9090705efcc44f015486944e5aeb926173a7968 04-Aug-2015 Deepanshu Gupta <deepanshu@google.com> Fix layout mirroring.

Change-Id: I7db398aa2d11dac1210e84922138f78f0c23bb9b
ridge/src/com/android/layoutlib/bridge/impl/Layout.java
529be16e61c0380ac4a42d2125381dd3aaf0a3ba 04-Aug-2015 Diego Perez <diegoperez@google.com> am daacad45: am 616ae85e: am 126973d4: am 405eceb2: Merge "Restore session params "no decoration" flag" into mnc-dev

* commit 'daacad45fd19d35b2b8f8bce9c4cd19d4f735200':
Restore session params "no decoration" flag
534d9485f2fad985791e947a7b8ba7dff92268c6 04-Aug-2015 Deepanshu Gupta <deepanshu@google.com> am e92b2645: am 33bdfe75: am df776b76: am d985e3b6: Merge changes Ib5f53f3b,I7debf3ee,Ic494ee7f,Ia8d223ae,Iff7dbbf6 into mnc-dev

* commit 'e92b2645b234a7e3555a26aacb964706509269df':
Revert to using AppTheme for LayoutLib tests.
Fix Matrix_Delegate.native_getValues()
Update test image for upated nav icons.
Fix typo: s/FullScreen/Fullscreen/ in LayoutLib.
Fix bugs introduced in 78aa664.
405eceb20a3f3e7a22d922fc2d0fb8283be337fa 03-Aug-2015 Diego Perez <diegoperez@google.com> Merge "Restore session params "no decoration" flag" into mnc-dev
89a045c31f4f08bc0d9d533ef47f321e6423f656 03-Aug-2015 Deepanshu Gupta <deepanshu@google.com> Revert to using AppTheme for LayoutLib tests.

Use AppTheme for all tests other than testExpand. AppTheme contains an
attribute needed by testArrayCheck. Also, since the AppTheme extends
Theme.Material.Light.DarkActionBar, other tests should be unaffected.

Also, update the golden image for the testArrayCheck.

Change-Id: Ib5f53f3b029c5aceef2b622e5ac63952d6b1972a
ridge/tests/res/testApp/MyApplication/golden/array_check.png
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
82e780743046e620b724c28023b580e0e624bb15 03-Aug-2015 Yusuke Sato <yusukes@google.com> am b98e2353: am 158560ad: Merge "Distinguish user-requested shutdown from power-related ones"

* commit 'b98e235364c2b221521f622c546733b2862e4677':
Distinguish user-requested shutdown from power-related ones
9f280a9301566c94a583cc45b6abea8a4488e33c 03-Aug-2015 Deepanshu Gupta <deepanshu@google.com> Fix Matrix_Delegate.native_getValues()

The bug manifested itself by not rendering the wifi icon in the status
bar.

Change-Id: I7debf3eef387965d774bf66e856812e67c8552a7
ridge/src/android/graphics/Matrix_Delegate.java
71a85575d41d08e1fcde5cd5c996e948b368a1ff 03-Aug-2015 Diego Perez <diegoperez@google.com> Restore session params "no decoration" flag

This seems to have removed from a previous version and the theme editor
relies on it to remove the decoration around the preview.

Change-Id: Ifab99e9c1689bfe44ca593e8c66c24e57c3e8c4c
ridge/src/com/android/layoutlib/bridge/impl/Layout.java
c2622d8923d961e20e3141950d8a90e6dd989c91 31-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Update test image for upated nav icons.

The image shows the nav icons to be separated by a significant distance.
This is because the switch to wide-screen layout happens based on
shortest width. The layout has a small shortest width and hence it uses
the phone layout for a horizontal nav bar and it doesn't look nice. Real
devices will never have this config, so it's okay.

Change-Id: Ic494ee7fdfb1116db39bcab6d6ee7a1e514b23df
ridge/tests/res/testApp/MyApplication/golden/expand_horz_layout.png
5a8f33f1b09b0311f1bbd1ec6b90db706edb5219 31-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Fix typo: s/FullScreen/Fullscreen/ in LayoutLib.

Change-Id: Ia8d223ae01f08df945ab05615b07075b98a54a32
ridge/src/com/android/layoutlib/bridge/impl/Layout.java
7b1e486e8778c042eb95e1517ed4ff8cac461759 31-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Fix bugs introduced in 78aa664.

Fix a couple of bugs (ArrayIndexOutOfBoundsException due to
miscalculation and a typo - swapped src and dst) introduced in the CL:
78aa664 Poor implementation of Path.approximate()

Change-Id: Iff7dbbf66d2714df51699ddb9a4169c38feefa7b
ridge/src/android/graphics/Path_Delegate.java
e5d926deb211d82f2602134c901c201dd3cd72db 31-Jul-2015 Dianne Hackborn <hackbod@google.com> Fix build.

Change-Id: I9c6b6cd354039ff2914837cfe97a783564ded66f
ridge/src/com/android/layoutlib/bridge/bars/Config.java
705ffd1efe529bb291e90fa06e92c8090ee98627 22-Jul-2015 Yusuke Sato <yusukes@google.com> Distinguish user-requested shutdown from power-related ones

With this patch, when the user requested shutdown,
PowerManagerService sets sys.powerctl is set to
"shutdown,userrequested", and init runs fsck on shutdown.

When shutdown is triggered due to a low power state etc.,
the service sets the property to "shutdown,", and init
immediately shuts down the system without running the
command.

This is a follow-up CL for http://r.android.com/158525.

Bug: 21853106
Change-Id: Iae72990130fe9aa479c802f77301438190dbbfb3
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
7676e403bd65435eb3d2f34e7e0174fd37f6e818 30-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Merge changes I4c215676,Ib476302c,I0aede288,I9241dec7,Ibe7167a6, ... into mnc-dev

* changes:
Update status bar time.
Fix imports.
Add MockView constructor used by LayoutInflater.
Poor implementation of Path.approximate()
Include EpicenterTranslateClipReveal in LayoutLib
Fix theme namespace in tests.
LayoutLib: fix layout when nav bar is absent.
LayoutLib: Fix Status/Navigation Bar color.
36e3fa55b6537d32d36e215cd5af9bcda82f7f1d 30-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Update status bar time.

Copy the value from the demo mode (commit 33b60bb45f)

Change-Id: I4c215676e7ae26a68aa370e99db005226d8a05d9
ridge/src/com/android/layoutlib/bridge/bars/Config.java
671b7f9b99316f7224c1213d6923d449a2de9b62 27-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Fix imports.

Also remove null checks on return value of ReflectionUtils.getMethod()
as the method always return non null.

Change-Id: Ib476302c2cf0504a0f54db4e795955ad10e5df3f
ridge/src/com/android/layoutlib/bridge/android/support/DesignLibUtil.java
ridge/src/com/android/layoutlib/bridge/android/support/RecyclerViewUtil.java
ridge/src/com/android/layoutlib/bridge/impl/Layout.java
9bf4b6f8c0a0d28402894b7a9660e8aced47545b 30-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Add MockView constructor used by LayoutInflater.

Change-Id: I0aede28866c1b87fb66c8a416c5026a9b2cb04fe
ridge/src/com/android/layoutlib/bridge/MockView.java
78aa664b027dbcebb0d0dc1dca9f3a8172d9a78c 29-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Poor implementation of Path.approximate()

Include a very poor implementation of Path.approximate() in LayoutLib
that only returns the first and last coordinate of the path. This avoids
crashing the rendering when certain assumptions are made on the value
returned from the method.

Also change the error to a warning.

Change-Id: I9241dec734d4df90a9eebd1e6de8b3e443eee3c8
ridge/src/android/graphics/Path_Delegate.java
214466c777e11eb7c8ab569b8fd7d2c38357003a 29-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Include EpicenterTranslateClipReveal in LayoutLib

Needed by Spinner to create transitions that are then ignored :)

Change-Id: Ibe7167a643ecb186e97c9af446c0e1d2eb2d6f86
reate/src/com/android/tools/layoutlib/create/Main.java
4a6ee98d39ab2300b2cd17c60221e43bf4ade8e7 29-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Fix theme namespace in tests.

The tests used framework theme (Material), but the ResourceResolver was
created with project theme. This caused tests to fail becasue of missing
resources.

Change-Id: Ia17ee19054f6689f85e3423e83c1f47a2cc4364f
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
f1b7f20bb839c96e8254ccb65398135f10fd45d9 29-Jul-2015 Svet Ganov <svetoslavganov@google.com> Remove dependencies on the package installer's package name

bug:22700053

Change-Id: I8540eb8577fbec84e1a67e31e1c31ba654c828a4
ridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
6e8d8ad2b7cffed751b2a382ac7b761954767188 29-Jul-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: fix layout when nav bar is absent.

Change-Id: I0d3ee6fd5a4656156a630d3b298533ea13eb8415
ridge/src/com/android/layoutlib/bridge/impl/Layout.java
e3f9834ebd8a6e4ee155c8e4c9456dfc98e8b832 27-Jul-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Fix Status/Navigation Bar color.

If the color value for status bar or navigation bar is declared directly
in the theme (i.e. doesn't reference a color resource via @color/foo),
the ResourceType for the attribute is not assigned by the IDE. LayoutLib
used to ignore resources that were not of type color. This change fixes
the issue by also checking the resources without a type.

Change-Id: I94735ec225415282db06ab9db5c3233ad89c052f
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
f199ac84f39ee92f314f5c8740b13a21a14fada9 24-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Set support flag for custom layouts for RecyclerView." into mnc-dev
f7712d3524309c365b68f93497771084e6b5a66b 24-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Set support flag for custom layouts for RecyclerView.

Change-Id: I3a0349c0482ae45e226b2016a0f24707c85edff4
ridge/src/com/android/layoutlib/bridge/Bridge.java
49fcfdd4ba6b9e19139b0650542d573cf493dc5b 24-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Merge changes I9c294329,Ie4db5d28 into mnc-dev

* changes:
LayoutLib: translucent sys ui bars
Move the layout code out of RenderSessionImpl.
f33c0f8516768b0259c750fdb14946f5a9b68647 24-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Merge "CalendarView rendering: use R.styleable to find attr." into mnc-dev
fc8f4aad7395eca11f6d9b82eb266b1f4ee5041b 23-Jul-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: translucent sys ui bars

Change-Id: I9c294329fc78418c505a5115bc9c07da29595af2
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/NavigationBar.java
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
ridge/src/com/android/layoutlib/bridge/impl/Layout.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
b1484862e2367d87d3ccbd0fd0a6d2598ed5918a 22-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Move the layout code out of RenderSessionImpl.

Also, switch to using a RelativeLayout from a LinearLayout. The change
will help in future when enabling transparent status and nav bar.

Change-Id: Ie4db5d28313f1c5ef775603788598a56409f92c7
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/bars/AppCompatActionBar.java
ridge/src/com/android/layoutlib/bridge/bars/BridgeActionBar.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/FrameworkActionBar.java
ridge/src/com/android/layoutlib/bridge/bars/FrameworkActionBarWrapper.java
ridge/src/com/android/layoutlib/bridge/bars/NavigationBar.java
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
ridge/src/com/android/layoutlib/bridge/bars/TitleBar.java
ridge/src/com/android/layoutlib/bridge/impl/Layout.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
e8018480dbefc896bd26e5eedfdde802ce3731a7 17-Jul-2015 Deepanshu Gupta <deepanshu@google.com> CalendarView rendering: use R.styleable to find attr.

Not all attr are added to R.attr. This results in some attr not being
found and hence a broken rendering. Fix the issue by adding all attr
referenced in R.styleable to the map of attr before adding any remaining
values from R.attr.

Change-Id: I1ebf8a394b9e1edbf7490e011833d20a00d38317
ridge/src/com/android/layoutlib/bridge/Bridge.java
b9935889b1be2aac4a47d1acbf7547a832edf9f3 21-Jul-2015 Diego Perez <diegoperez@google.com> resolved conflicts for merge of 112d8a36 to mnc-dev

Change-Id: Ic9511a57db8a96f54dba0704800789a8602b9dd2
112d8a364126ecf8cf53f6e75a6af051cc47a860 21-Jul-2015 Diego Perez <diegoperez@google.com> am d6f2a9ef: am 7720eb18: Merge "Render to measured size when using expand mode" into lmp-mr1-dev

* commit 'd6f2a9efbb0e0525f6cf970fd9c9b9b7082b19f9':
Render to measured size when using expand mode
7720eb18c1c2fe06e8f4b2f6e2936a4072494da8 21-Jul-2015 Diego Perez <diegoperez@google.com> Merge "Render to measured size when using expand mode" into lmp-mr1-dev
a6ad75fbe0944f236e27986c23ca75b7db8cdfd8 16-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Add tools:openDrawer to open a DrawerLayout." into mnc-dev
432862667643cf8966a0c727b6772a6bae787da1 16-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Change tools:list_item to listitem." into mnc-dev
ccbc11770397888cf7780925bb4c7cf1d2f2f80e 11-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Add tools:openDrawer to open a DrawerLayout.

Store a list of drawer layouts with tools:openDrawer encountered and
call openDrawer on them during the post-inflation processing.

Change-Id: Idee299a9af1bb106509a03bb2e8424c372b93dc5
ridge/src/android/view/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/BridgeConstants.java
ridge/src/com/android/layoutlib/bridge/android/support/DrawerLayoutUtil.java
ridge/src/com/android/layoutlib/bridge/android/support/RecyclerViewUtil.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/util/ReflectionUtils.java
111dc04a28f0181bf429e5ded9024d3fdff7be50 08-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Change tools:list_item to listitem.

The listitem is already in use for ListView. Reuse the same attribute
for RecyclerView rather than creating a new one.

Change-Id: I82aabe7d04fbe3e61645bc427a81c14c454d03c5
ridge/src/com/android/layoutlib/bridge/BridgeConstants.java
a503b62b1597ba6f5fcff537cecbe2dad1d088f7 15-Jul-2015 Dianne Hackborn <hackbod@google.com> Fix build.

Change-Id: Ib165c32d1d87e971902b4dd7300ccebd65e71a7d
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
fd854ee58c5d56f84047007ead9f88a767ae956f 14-Jul-2015 Dianne Hackborn <hackbod@google.com> Fix issue #21626564: MMS should be receivied while Dozing

We now place whoever is receiving the MMS on the temporary
whitelist while doing so, so they can get network access to
download it.

There was also an issue that needed to be fixed where we
were no longer updating the list of allowed uids while
dozing based on their proc states... we now do that.

Also did a bit of optimization of the temp white list update
path do the network policy manager, instead of going through
a broadcast we now directly call in to the network policy
manager. This also allows us to have a synchronous version
of updating the list, so we can know the app has network access
before we tell it to do anything.

Finally added battery stats events for things going on and off
the whitelist so we can diagnose the behavior there.

Change-Id: Ic7fe010af680034d9f8cb014bb135b2addef7455
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
d4fd8c766da8a70e3359bbc7efbbc79496efe71a 14-Jul-2015 Fyodor Kupolov <fkupolov@google.com> Added sendBroadcastMultiplePermissions method

Added Context.sendBroadcastMultiplePermissions(Intent intent, String[]
receiverPermissions) method, which allows an array of required permissions
to be enforced.

Bug: 21852542
Change-Id: I27c9130e8f004b428452501ebc8a36aabde1f343
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
e37520b49da8fc2b7b7501c6dbbe1e6ac984dd9f 15-Jul-2015 Fyodor Kupolov <fkupolov@google.com> Revert "Allow array of required permissions in sendBroadcast"

This reverts commit b4e7283c9afd9fb15ebd63f6ce9b75c9c1af658b.

Change-Id: Ie8390964bda5bdfa869cee8f46584043d8e7c664
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
b4e7283c9afd9fb15ebd63f6ce9b75c9c1af658b 14-Jul-2015 Fyodor Kupolov <fkupolov@google.com> Allow array of required permissions in sendBroadcast

Added Context.sendBroadcast(Intent intent, String[] receiverPermissions)
method, which allows an array of required permissions to be enforced.

Bug: 21852542
Change-Id: I3b8ff258fa9f3249c344bb8093b820b24eef00c0
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
0236e6b2d614abd11678de4cec4ed67b582541ff 10-Jul-2015 Bart Sears <bsears@google.com> Fix the build.

Correct a typo.

Change-Id: I16131cf7c0ce17fa09dedc67264e8199482cd27e
ridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
2bb3842a06af972888b83088a81258b237ee7bd9 10-Jul-2015 Svetoslav <svetoslavganov@google.com> Fix build

Change-Id: I1b56c07aa5b85662f25158156d2c0eff115e9544
ridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
cd595f1998b1331fe0efba02d96c95ee43e791da 07-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Fix Paint_Delegate.native_getRunAdvance()

Bug: 22249573
Change-Id: I29f7abe6448f439059547e1c1e310d3d651ac2d8
ridge/src/android/graphics/Paint_Delegate.java
490dd90c707de8426a068a90d74ec83c9c11fc83 07-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Add a default PackageManager to BridgeContext.

Needed for EditText.

Change-Id: I6c831467659ce814e86c13e928a2b77c14e1c139
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgePackageManager.java
c71450114131c59bb3a8d65968faae4995cd2345 07-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Revert "Replace infinite loop with foreach."

This reverts commit c77f9c76e4142db8dd76a28ad99b8f0395b82eba.

Class.getDeclaredClasses() doesn't return anonymous inner class and
hence the change was wrong.

The revert doesn't undo the typo fixed in the original change.

Change-Id: Id0595c4bc3db1185dd1ce39808a6b8c3610a1e11
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
008e1fb9ed9ab18726762839bcfc74cb0feb82c8 07-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Update intellij project for tools-common sources.

Use the sources.jar for tools-common instead of the environment
variable.

Change-Id: Ia1a3e8c32f66610e761bacce08c7eb5915e7ed0f
ridge/bridge.iml
61f23e9bf7d784e7a52168196758c4f6c6853e77 07-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Implement tools:list_item for RecyclerView.

It's now possible to use tools:list_item attribute for RecyclerView to
point to a default layout, rather than always using a TextView.

Change-Id: I5d522b2f0ca38b420fddfcb0f73a26d95707da79
ridge/src/android/view/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/BridgeConstants.java
ridge/src/com/android/layoutlib/bridge/android/support/RecyclerViewUtil.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/util/ReflectionUtils.java
295ef6be084d1c2f22ef25a87e508c1f5c14ee5a 07-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Add roundess to configuration

Change-Id: Icc85b38dd091fc5aa13092d6abb06ac169f7b0b5
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
d7b846c1814de34f2cea8507907f70618ec7cae0 07-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Update tests per new layoutlib_api

Change-Id: Idc89ffceaf171abcf2b579f4e934b514ef209210
ridge/tests/src/com/android/layoutlib/bridge/intensive/setup/ConfigGenerator.java
81f8cd92fa003a8625df1098662d0afa50f07e89 01-Jul-2015 Filip Gruszczynski <gruszczy@google.com> am 3ce79f6c: am 96496e2d: Merge "Build fix after changing IWindowSession." into cw-d-mr1-dev

* commit '3ce79f6c0c3435eca05ea34c5a8b34ac59bcb992':
Build fix after changing IWindowSession.
c77f9c76e4142db8dd76a28ad99b8f0395b82eba 30-Jun-2015 Deepanshu Gupta <deepanshu@google.com> Replace infinite loop with foreach.

A method call exists to find all inner classes. Use it instead of
manually enumerating the possibilities and checking.

Also fix a typo.

Change-Id: I2af678e92ea0c11b53617b247d8cda324391c185
ridge/src/com/android/layoutlib/bridge/bars/AppCompatActionBar.java
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
3ce79f6c0c3435eca05ea34c5a8b34ac59bcb992 01-Jul-2015 Filip Gruszczynski <gruszczy@google.com> am 96496e2d: Merge "Build fix after changing IWindowSession." into cw-d-mr1-dev

* commit '96496e2d17607a8bfa944461c2458b0dcdeee872':
Build fix after changing IWindowSession.
7e3b61e73d6971c35acfa0798eb4d8da412ec3af 30-Jun-2015 Filip Gruszczynski <gruszczy@google.com> Build fix after changing IWindowSession.

Change-Id: I339fecb0138e8b8907fc53372b694021f6327260
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
5d1eaf4a197130f561b16c4ed083cf016b20ab92 30-Jun-2015 Deepanshu Gupta <deepanshu@google.com> Add missing resolveResValue call.

Bug: http://b.android.com/178504
Change-Id: I7dde8094cf762893e4f7ea0d3de87a281c9602cd
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
a750a63d639f6936af456df904fa6b9ba941885e 17-Jun-2015 Dianne Hackborn <hackbod@google.com> Fix issue #21814207 and issue #21814212 (alarm manager)

Issue #21814207: AlarmManager.setAndAllowWhileIdle should also allow wake locks.

Introduce a whole new infrastructure for providing options when
sending broadcasts, much like ActivityOptions. There is a single
option right now, asking the activity manager to apply a tempory
whitelist to each receiver of the broadcast.

Issue #21814212: Need to allow configuration of alarm manager parameters

The various alarm manager timing configurations are not modifiable
through settings, much like DeviceIdleController. Also did a few
tweaks in the existing DeviceIdleController impl.

Change-Id: Ifd01013185acc4de668617b1e46e78e30ebed041
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
898be8bc76c873cf885d7bdf293b4f58563a1648 15-Jun-2015 Diego Perez <diegoperez@google.com> am fa794eb0: am 2f710356: am 13c06d6c: am 1f33bdad: am 5e50e00c: Merge "Fix for shadows on theme editor" into lmp-mr1-dev

* commit 'fa794eb0025dbec6c1b90135495081d42f06bdaf':
Fix for shadows on theme editor
dc929e28acd32f7adebdc0d5afd3dc7eaa1a09fe 15-Jun-2015 Diego Perez <diegoperez@google.com> am 40a216d9: am df6f63ba: am 2422011d: am b2411c62: am ead59b0d: Merge "Fix GcSnapshot drawInLayer when clipping is used." into lmp-mr1-dev

* commit '40a216d95973bb897ee0d755ef260a616f176798':
Fix GcSnapshot drawInLayer when clipping is used.
b39e85afb160997a51df1dff18e118266c692243 15-Jun-2015 Diego Perez <diegoperez@google.com> am ce5a79da: am d717682d: am 5c597c1d: am a8854564: am ce4a9d91: Merge "New custom widgets library" into lmp-mr1-dev

* commit 'ce5a79dacfb152317429cb69c28fe8bb39c02f4c':
New custom widgets library
8df6d037be43bdf98af011d0188e06a21b033aab 15-Jun-2015 Diego Perez <diegoperez@google.com> resolved conflicts for merge of 5a53816b to mnc-dev

Change-Id: Ice1ba8cb9793432e18635e77f4e3309f50bb7b3f
fa794eb0025dbec6c1b90135495081d42f06bdaf 15-Jun-2015 Diego Perez <diegoperez@google.com> am 2f710356: am 13c06d6c: am 1f33bdad: am 5e50e00c: Merge "Fix for shadows on theme editor" into lmp-mr1-dev

* commit '2f7103565cf1732d6d1281195cfa49a1564751d7':
Fix for shadows on theme editor
40a216d95973bb897ee0d755ef260a616f176798 15-Jun-2015 Diego Perez <diegoperez@google.com> am df6f63ba: am 2422011d: am b2411c62: am ead59b0d: Merge "Fix GcSnapshot drawInLayer when clipping is used." into lmp-mr1-dev

* commit 'df6f63badfe2572284dad8e34f152fd1c24a873e':
Fix GcSnapshot drawInLayer when clipping is used.
2f7103565cf1732d6d1281195cfa49a1564751d7 15-Jun-2015 Diego Perez <diegoperez@google.com> am 13c06d6c: am 1f33bdad: am 5e50e00c: Merge "Fix for shadows on theme editor" into lmp-mr1-dev

* commit '13c06d6c91e67962b7ffdf92c56e3b01125e4a8d':
Fix for shadows on theme editor
df6f63badfe2572284dad8e34f152fd1c24a873e 15-Jun-2015 Diego Perez <diegoperez@google.com> am 2422011d: am b2411c62: am ead59b0d: Merge "Fix GcSnapshot drawInLayer when clipping is used." into lmp-mr1-dev

* commit '2422011d867f4d4516605148641bbeb7d9c2501b':
Fix GcSnapshot drawInLayer when clipping is used.
13c06d6c91e67962b7ffdf92c56e3b01125e4a8d 15-Jun-2015 Diego Perez <diegoperez@google.com> am 1f33bdad: am 5e50e00c: Merge "Fix for shadows on theme editor" into lmp-mr1-dev

* commit '1f33bdad98dd5138f887642d39c9495e1d7df14b':
Fix for shadows on theme editor
2422011d867f4d4516605148641bbeb7d9c2501b 15-Jun-2015 Diego Perez <diegoperez@google.com> am b2411c62: am ead59b0d: Merge "Fix GcSnapshot drawInLayer when clipping is used." into lmp-mr1-dev

* commit 'b2411c622cf9124f6af5f70d416adb179f9c88bb':
Fix GcSnapshot drawInLayer when clipping is used.
5e50e00c663a5d0b11d1f41509e1fb4e56d166f1 15-Jun-2015 Diego Perez <diegoperez@google.com> Merge "Fix for shadows on theme editor" into lmp-mr1-dev
ead59b0d479c3a911be87261b523255e8e51f76a 15-Jun-2015 Diego Perez <diegoperez@google.com> Merge "Fix GcSnapshot drawInLayer when clipping is used." into lmp-mr1-dev
ce5a79dacfb152317429cb69c28fe8bb39c02f4c 12-Jun-2015 Diego Perez <diegoperez@google.com> am d717682d: am 5c597c1d: am a8854564: am ce4a9d91: Merge "New custom widgets library" into lmp-mr1-dev

* commit 'd717682df97e812d4a25f93b0c9e84548767d8e1':
New custom widgets library
5a53816b0da74f2f7ca302fc7361e7f105ac6bb6 12-Jun-2015 Diego Perez <diegoperez@google.com> am c051c556: am e10e8005: am 68155986: am f5a99437: Merge "Fix crash when shadowSize is 0" into lmp-mr1-dev

* commit 'c051c556669f88e284f2922f8d28fad2138598ae':
Fix crash when shadowSize is 0
d717682df97e812d4a25f93b0c9e84548767d8e1 12-Jun-2015 Diego Perez <diegoperez@google.com> am 5c597c1d: am a8854564: am ce4a9d91: Merge "New custom widgets library" into lmp-mr1-dev

* commit '5c597c1d89c529675096c2d326c452145403979d':
New custom widgets library
c051c556669f88e284f2922f8d28fad2138598ae 12-Jun-2015 Diego Perez <diegoperez@google.com> am e10e8005: am 68155986: am f5a99437: Merge "Fix crash when shadowSize is 0" into lmp-mr1-dev

* commit 'e10e8005903572158cbb9c7f869508a247ff51ad':
Fix crash when shadowSize is 0
5c597c1d89c529675096c2d326c452145403979d 12-Jun-2015 Diego Perez <diegoperez@google.com> am a8854564: am ce4a9d91: Merge "New custom widgets library" into lmp-mr1-dev

* commit 'a885456426ec267d37c6a527285d965f81e14f9d':
New custom widgets library
e10e8005903572158cbb9c7f869508a247ff51ad 12-Jun-2015 Diego Perez <diegoperez@google.com> am 68155986: am f5a99437: Merge "Fix crash when shadowSize is 0" into lmp-mr1-dev

* commit '68155986508ef8b497228f8e60346d317e87991d':
Fix crash when shadowSize is 0
ce4a9d9110436a2ea825976af7895c58303a3dac 12-Jun-2015 Diego Perez <diegoperez@google.com> Merge "New custom widgets library" into lmp-mr1-dev
4dfe4d43ce5634f059a3ba669e3cac4551c3a3ee 05-Jun-2015 Jens Ole Lauridsen <jlauridsen@google.com> Support AppBar from Material Design.

This CL is a start for making the design able to render the AppBar.
We are still missing support for: system menu and the app icon.

Change-Id: I19600f8ee1e7e6492186a0b7ae7fb38c82e15c02
ridge/src/android/view/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/support/DesignLibUtil.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
4362443cd9a5df6c5cc012881a0aaf96c927b923 02-Jun-2015 Diego Perez <diegoperez@google.com> Render to measured size when using expand mode

When using RenderingMode.V_SCROLL or RenderingMode.H_SCROLL, if the
screen size is smaller than the measured size but as large as the
desired size, the layout will render incorrectly and won't expand.
This changes that to expand to at least the size of the screen.

Added tests for the V_SCROLL and H_SCROLL modes.

Bug: http://b.android.com/174928
Change-Id: I22686903560775e2e4f362af1d7b50c9b985467d
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$layout.class
ridge/tests/res/testApp/MyApplication/golden/expand_horz_layout.png
ridge/tests/res/testApp/MyApplication/golden/expand_vert_layout.png
ridge/tests/res/testApp/MyApplication/src/main/res/layout/expand_horz_layout.xml
ridge/tests/res/testApp/MyApplication/src/main/res/layout/expand_layout.xml
ridge/tests/res/testApp/MyApplication/src/main/res/layout/expand_vert_layout.xml
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
e5be1d7a397db08a4dd75c66bdbbc6e2b61baaa8 02-Jun-2015 Diego Perez <diegoperez@google.com> Fix for shadows on theme editor

If the preferred ColorModel doesn't support alpha, the shadows are
incorrectly rendered. In the theme editor on Linux, the graphics device
object doesn't support alpha so we need to use a different color model.
We default to ARGB which works fine.

Change-Id: I3e71e3d086fa4975a9149d36792e574813f37dfd
ridge/src/android/graphics/LinearGradient_Delegate.java
ridge/src/android/graphics/RadialGradient_Delegate.java
86caef1892e1ce063e0e880396c8deaa3a6a171d 01-Jun-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Skip classes from java package.

Classes in "java" package can't be defined at runtime anyway. No use
including them in LayoutLib.

Change-Id: I7e7c46f0d74e32c893b23093828569b4fa5e3a73
reate/src/com/android/tools/layoutlib/create/DependencyFinder.java
b3e872be9e634c8d1f34d07778ea753880bbf2d9 27-May-2015 Deepanshu Gupta <deepanshu@google.com> Skip warnings for some unresolved references.

Some applications rename the newer RTL attributes to the older
attributes in order to target RTL locales, but not need to include two
attributes everywhere it's needed. For example, iosched renames
paddingStart to paddingLeft (among other attributes) for API 17 and
above. This leads to hundreds of warnings about missing attributes.
This change suppresses such warnings.

Also, skip adding unresolved attributes to the typed array. This is more
in line with the actual implementation on device, and prevents
unexpected warnings/errors/crashes later.

Change-Id: Iee616fa6295aa9731ede0cf9dcd6dd2bd1fe8f20
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
8825de1751b4362d3a6fce2e402c51e481bb2729 01-Jun-2015 Filip Gruszczynski <gruszczy@google.com> Merge "Revert "Revert "Fix build.""" into mnc-dev
919f93265de94156d2cb32b598b5e08aa8da27c3 01-Jun-2015 Filip Gruszczynski <gruszczy@google.com> Revert "Revert "Fix build.""

This reverts commit 944a6c937cd3576ecae5c3fdd0dcf265329e6bcf.

Change-Id: I7daa255f331a1e39308eb626580aa00c63c5cb3e
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
99bcc3eee23ed8bd15bd108d068d6f9f694e4393 01-Jun-2015 Filip Gruszczynski <gruszczy@google.com> Merge "Revert "Revert "resolved conflicts for merge of 47249f2a to mnc-dev""" into mnc-dev
996458b76c944f78eee26d7bd8cb4d39303b9119 30-May-2015 Deepanshu Gupta <deepanshu@google.com> Fix ParserFactory not initialized error.

Bug: http://b.android.com/175129
Change-Id: I2111673767e0f62ee910560022b559a177d55abd
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
d758e042ce08c46712db3db2d63fc84795028dfe 28-May-2015 Deepanshu Gupta <deepanshu@google.com> Fix NPE in BridgeContext.obtainStyledAttributes()

Replace direct member access with getter that checks for nullness.

Change-Id: I4a56a0ee903ae7d8c89b91d74b128302e1965586
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
5779ad71eabed3aabaefef1e4749693f8320816e 28-May-2015 Deepanshu Gupta <deepanshu@google.com> Fix BridgeTypedArray.getType()

Also includes some fixes for BridgeTypedArray.getInt() - when value is a
color, when value is an octal int, when value is true/false.

Bug: http://b.android.com/162438
Change-Id: I0b985ea3437be8018d0e116e7a599843cc7aacd6
ridge/src/android/content/res/BridgeTypedArray.java
2217f61e51ba4b19c56b19297c1e9cf74d7d860f 26-May-2015 Filip Gruszczynski <gruszczy@google.com> Revert "Revert "resolved conflicts for merge of 47249f2a to mnc-dev""

This includes the fix for the broken dialog windows. The outsets will
only be calculated and applied if the window is full screen, since
they don't make much sense otherwise.

This reverts commit 4bb6b751fbbb218e8a298db4aa008472a0aa8d31.

Change-Id: I977a85a78c990c1840784dc0be0dddd5a6d84e6b
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
bcbe9ba0f939803dfa9b48519e113dc1c32268dc 27-May-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Include Shapes in LayoutLib." into mnc-dev
a268ae5f51b8b4697aeb337a7d0700ed6e281f66 27-May-2015 Deepanshu Gupta <deepanshu@google.com> Merge "LayoutLib: Support getting resource arrays." into mnc-dev
c801e91528705145bd403333e69ee7c01eb63d35 27-May-2015 Deepanshu Gupta <deepanshu@google.com> Merge "LayoutLib: Change nullity annotations." into mnc-dev
642cff50f8f7a67eed09eac1e56d7133b26a192c 23-May-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Support getting resource arrays.

- Don't crash when Resources.get<Type>Array() is called.
- If the IDE supports it, actually return the value.
- Add tests for getArray.
- Update test app to latest gradle plugin version.
- Switch to using AppTheme for tests, since the tests depend on some
custom theme attributes. The AppTheme now inherits from
Material.Light.DarkActionBar, so other tests should be unaffected.

Depends on a newer version of sdk-common, which fixes the parsing of
array resource in value files.

Bug: 12372031
Change-Id: I313b61511e98ac1402d75056ebfdeeb005ebb96d
ridge/src/android/content/res/BridgeResources.java
ridge/tests/res/testApp/MyApplication/build.gradle
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/ArraysCheckWidget.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/MyActivity.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$array.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$attr.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$dimen.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$drawable.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$id.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$integer.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$layout.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$menu.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$string.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$style.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R.class
ridge/tests/res/testApp/MyApplication/golden/array_check.png
ridge/tests/res/testApp/MyApplication/src/main/java/com/android/layoutlib/test/myapplication/ArraysCheckWidget.java
ridge/tests/res/testApp/MyApplication/src/main/res/layout/array_check.xml
ridge/tests/res/testApp/MyApplication/src/main/res/values/arrays.xml
ridge/tests/res/testApp/MyApplication/src/main/res/values/attrs.xml
ridge/tests/res/testApp/MyApplication/src/main/res/values/styles.xml
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
59164ec0551aa49f497acca81222f304cf4f344b 26-May-2015 Deepanshu Gupta <deepanshu@google.com> Include Shapes in LayoutLib.

Change-Id: Ifb32882c478f8d407ad904e224b67fe2bd65dc08
reate/src/com/android/tools/layoutlib/create/Main.java
d0acf0627aa5f78cbf5bb189c7097546b86abebc 23-May-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Revert "Fix build."" into mnc-dev
944a6c937cd3576ecae5c3fdd0dcf265329e6bcf 23-May-2015 Deepanshu Gupta <deepanshu@google.com> Revert "Fix build."

This reverts commit 97b3ae1a8766616675ebf2323a97d8adfd41bfdc.

Reverted since 4bb6b751fbbb218e8a298db4aa008472a0aa8d31 reverts
the commit that warranted this change.

Change-Id: I56d0eb8ffba44a673ae357e9543dd18f6c03c54f
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
476e582d2ffdf25102d4c55f8c242baa3d21d37f 22-May-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Change nullity annotations.

Switch from using tools nullity annotations (com.android.annotations)
to android framework annotations (android.annotation).

A new sdk-common prebuilt is required for LayoutLib tests. The new
sdk-common requires an updated tools-common. The updated tools-common
doesn't have nullity annotations. So, instead of adding the annotation
dependency, just reuse the platform ones. This also paves the way to
include other platform annotations like IdRes etc.

Change-Id: I87b8f767d3681d914abe7d1329e26a87f49f50a7
idea/misc.xml
ridge/src/android/content/res/BridgeTypedArray.java
ridge/src/android/content/res/Resources_Theme_Delegate.java
ridge/src/android/graphics/BitmapFactory_Delegate.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/FontFamily_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/Typeface_Delegate.java
ridge/src/android/text/GreedyLineBreaker.java
ridge/src/android/text/LineBreaker.java
ridge/src/android/text/OptimizingLineBreaker.java
ridge/src/android/text/Primitive.java
ridge/src/android/text/StaticLayout_Delegate.java
ridge/src/android/text/TabStops.java
ridge/src/android/view/ShadowPainter.java
ridge/src/android/view/accessibility/AccessibilityManager.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/support/RecyclerViewUtil.java
ridge/src/com/android/layoutlib/bridge/bars/AppCompatActionBar.java
ridge/src/com/android/layoutlib/bridge/bars/BridgeActionBar.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/FrameworkActionBar.java
ridge/src/com/android/layoutlib/bridge/bars/FrameworkActionBarWrapper.java
ridge/src/com/android/layoutlib/bridge/impl/DelegateManager.java
ridge/src/com/android/layoutlib/bridge/impl/ParserFactory.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
ridge/src/com/android/layoutlib/bridge/util/DynamicIdMap.java
ridge/src/com/android/layoutlib/bridge/util/ReflectionUtils.java
ridge/tests/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParserTest.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/ImageUtils.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/setup/LayoutLibTestCallback.java
reate/src/com/android/tools/layoutlib/create/Main.java
4bb6b751fbbb218e8a298db4aa008472a0aa8d31 23-May-2015 Dianne Hackborn <hackbod@google.com> Revert "resolved conflicts for merge of 47249f2a to mnc-dev"

This reverts commit c7becb7ee78881646251ff4846e63eb6b96bf7ec, reversing
changes made to 8562b08f04c1309cf40db1e749d612b6824f1d12.
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
97b3ae1a8766616675ebf2323a97d8adfd41bfdc 21-May-2015 Filip Gruszczynski <gruszczy@google.com> Fix build.

Cherry picking because automerger is stuck.

Change-Id: I49f669ee8eed53cf2fc30077cf0a066312865733
(cherry picked from commit c1b736a0cdf41ab5863bfe6901e46c95cc396342)
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
91e5b0f598f19499e55dcb8f0243b430e3c1ee4f 22-May-2015 Filip Gruszczynski <gruszczy@google.com> Merge "resolved conflicts for merge of 47249f2a to mnc-dev" into mnc-dev
a5e6298b35fa212a7f20740174c553ce4079cce2 22-May-2015 Deepanshu Gupta <deepanshu@google.com> Add LayoutLibDelegate for new Bitmap method.

Original method added in: 721ae5fec5f1fd4f93aa2a361a0ac298e15ce353

Change-Id: Ie14d132459638cf103c390fae3f4c0c02bef2f34
ridge/src/android/graphics/Bitmap_Delegate.java
6330971ed293a2777bbdab09288f90ea4b2d0255 21-May-2015 Deepanshu Gupta <deepanshu@google.com> Add documentation about hack in commit: f8ea750455

Change-Id: I9ce871a67fb67e02e0c4df1eb5c3261ea52a914b
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
c7becb7ee78881646251ff4846e63eb6b96bf7ec 21-May-2015 Filip Gruszczynski <gruszczy@google.com> resolved conflicts for merge of 47249f2a to mnc-dev

This is a merge of chin support.

Change-Id: I436b751b3c4aaa6b46cfcdb475e02eedfa5a5635
479b1c77ce7b033f7160614f5a0d7305d1268129 21-May-2015 Filip Gruszczynski <gruszczy@google.com> am 037c9cac: Merge "Fix build." into cw-d-mr1-dev

* commit '037c9caccdc98bfe9d952e797535611c791787aa':
Fix build.
037c9caccdc98bfe9d952e797535611c791787aa 21-May-2015 Filip Gruszczynski <gruszczy@google.com> Merge "Fix build." into cw-d-mr1-dev
c1b736a0cdf41ab5863bfe6901e46c95cc396342 21-May-2015 Filip Gruszczynski <gruszczy@google.com> Fix build.

Change-Id: I49f669ee8eed53cf2fc30077cf0a066312865733
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
4d8e078c7c9c9f8407ebc7e88673e53b67723e18 21-May-2015 Deepanshu Gupta <deepanshu@google.com> Fix overrides for BridgeResources.

New method overloads have been introduces in android.content.Resources.
Change BridgeResources to overrides the appropriate ones. Also, fix the
implementation to the new behaviour.

Change-Id: I7b83b329f04286512f223c0fafc3f989f1b9a244
ridge/src/android/content/res/BridgeResources.java
d5b82845450beac2d3c7db9cd80e9fc34d43a297 21-May-2015 Deepanshu Gupta <deepanshu@google.com> Make DatePicker rendering not fail.

Ensures that having a DatePicker in the layout doesn't crash the
complete rendering. The rendering is still not perfect, but at least it
works.

- Return a non-null window token so that ViewPager thinks that it's
attached to a window and doesn't skip populating the views.
- Fix a style not found issue.

Change-Id: Ied2b71de5b32bcb640bf4ec445e8a39509f800e9
ridge/src/android/view/View_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
10dff451f3998728f4bb54585e4c5402edca06ba 21-May-2015 Deepanshu Gupta <deepanshu@google.com> Use non deprecated method for creating ColorStateList

Change-Id: I9fce928276c8a2af55eb0615a4895abb6a973be5
ridge/src/android/content/res/BridgeTypedArray.java
719c9b93f1f1b0a42addceb99484879b4ba10d50 21-May-2015 Deepanshu Gupta <deepanshu@google.com> Fix line breaking.

Essentially moves line breaking measurement later in the process when
character widths have already been computed.

Change-Id: I17c5bc10d373d8906c5caf86604ce8504650cd7f
ridge/src/android/text/StaticLayout_Delegate.java
f2049a4fcbe3775493636054b7597edfabc88342 21-May-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Inject anonymous inner classes of injected classes" into mnc-dev
bfc9c3bcbe3b7056d3330f754811c1506f181b88 20-May-2015 Deepanshu Gupta <deepanshu@google.com> Inject anonymous inner classes of injected classes

When injecting classes in LayoutLib (eg. CreateInfo), so that LayoutLib
can refer back to the changes, also inject the anonymous inner classes.
Without this, the injected classes are not loadable. Although, LayoutLib
itself doesn't load these classes, but some tests do.

Change-Id: Ib5f6b779ef4d79dec8d614d3dbb26eeac88a1064
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/ICreateInfo.java
reate/src/com/android/tools/layoutlib/create/InjectMethodRunnables.java
d45867a498db7a874ea40c5ec41861b0886fc3c9 21-May-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Update platformDir search in tests." into mnc-dev
47249f2a9e49aa9626369517315eafc6b42fd8e9 21-May-2015 Filip Gruszczynski <gruszczy@google.com> am cb89ac84: Merge "Support for devices with a chin." into cw-d-mr1-dev

* commit 'cb89ac84c621e047d81873428325dfd747b90a6b':
Support for devices with a chin.
3e11bf33a6094da92d97702213aa12c67b21c4d1 20-Apr-2015 Filip Gruszczynski <gruszczy@google.com> Support for devices with a chin.

Information about the chin is now part of the config.xml instead of the
theme. It is retrieved by WindowManagerService and passed to the clients
as insets. Clients can adjust their behavior in a way that makes it
invisible to the user, that part of the surface doesn't actually exist.

Bug: 19908853

Change-Id: Iedf57bf3c848201b854f91ffeb3b59187d375c1f
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
612a05e7e15184b21437731b9aa5db2d1d4fc54c 20-May-2015 Deepanshu Gupta <deepanshu@google.com> Update platformDir search in tests.

When trying to find the SDK Platform Dir for LayoutLib tests, also
test if the dir from which the tests are run is module dir.

Change-Id: Id5c6038d07ebbb122e38f907ad488ed1f2bcde32
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
1c5bf7f1ddc8c9c9844a1bc1a7e4ce53dcc5d5bd 20-May-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Make Context.getClassLoader() work." into mnc-dev
f8ea750455eec81e4e6d877b3e18e29a86d4ec95 19-May-2015 Deepanshu Gupta <deepanshu@google.com> Make Context.getClassLoader() work.

Context.getClassLoader() is used by the LayoutInflater and can be used
by custom views. However, when called from the LayoutInflater, this
needs to return only the Framework classes. This is so that the IDE gets
a chance to instantiate the custom views, which helps in better error
reporting and better fallback in case of exceptions, like MockView.

To workaround this need of the same method returning different results
based on where it's called from, the method call in LayoutInflater is
renamed to getFrameworkClassLoader() and the new method is injected in
Context. The implementation of getFrameworkClassLoader() maintains the
existing behaviour of getClassLoader().

Context.getClassLoader() is now modified to return classes from both
Framework and the app namespace.

Also, update the list of packages to search for Framework views.

Change-Id: I1a6be4aa1fc5c1c5520b5440a348a52f10b6eb3b
ridge/src/android/view/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/ICreateInfo.java
reate/src/com/android/tools/layoutlib/create/InjectMethodRunnables.java
reate/src/com/android/tools/layoutlib/create/InjectMethodsAdapter.java
reate/src/com/android/tools/layoutlib/create/ReplaceMethodCallsAdapter.java
reate/tests/com/android/tools/layoutlib/create/AsmGeneratorTest.java
5deaa138443433f861a52f4cdc461a677437c416 19-May-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Fix include tag rendering." into mnc-dev
21b564573327b1ed2f7e06146b8a01c47ede3089 19-May-2015 Deepanshu Gupta <deepanshu@google.com> Fix include tag rendering.

A missing catch clause caused rendering to be failed when there is an
include tag that doesn't specify layout_width and layout_height. Also
improve the error messages to make debugging easier next time.

Change-Id: I617762636973a010b34da167c7b5fcd328b7d178
ridge/src/android/content/res/BridgeTypedArray.java
ridge/src/android/view/LayoutInflater_Delegate.java
9354a3ac006001b10c3a3de59737798034794c89 19-May-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Show better error message for color attr not found." into mnc-dev
5f1bf496948fb6383ae17e5467a26a00489d7564 18-May-2015 Deepanshu Gupta <deepanshu@google.com> Show better error message for color attr not found.

Change-Id: I1ca32989522d30fec336eb607ee81f9e5cb5f48f
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
71dc5ee2244aa409c0426d3583a014e30d6cf07e 18-May-2015 Deepanshu Gupta <deepanshu@google.com> Fix nav bar spacing for tablets.

Change-Id: Ieee2c2174a3041a0f967cc75bbe74d8bf882ced7
ridge/resources/bars/navigation_bar.xml
ridge/resources/bars/navigation_bar600dp.xml
ridge/src/com/android/layoutlib/bridge/bars/NavigationBar.java
3dc19883c571a829c36aa603c04a55c91b00dd57 15-May-2015 Deepanshu Gupta <deepanshu@google.com> Fix build: udpate parser factory method

Change-Id: I78ad55bc924427b44451ec32fbd1032d6cd77544
ridge/tests/src/com/android/layoutlib/bridge/intensive/setup/LayoutLibTestCallback.java
f2d408b51debadca830eefbf8131185ac55ce699 15-May-2015 Deepanshu Gupta <deepanshu@google.com> Don't keep LayoutlibCallback reference.

Switch to the newer API that enables keeping a reference only to the
ParserFactory which is a much leaner object as compared to
LayoutlibCallback.

Change-Id: I9b7afd93226db23786a00b2951cbf5ae5b8f3e5f
ridge/src/com/android/layoutlib/bridge/impl/ParserFactory.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
ridge/tests/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParserTest.java
fc41c2c02e9092d21e10fcc38a928d26d9f05a4e 15-May-2015 Deepanshu Gupta <deepanshu@google.com> Move couple of intellij libraries to project level.

Move framework and layoutlib api libraries back to being project
libraries so that other modules can depend on it. This enables custom
widget libraries project to merge through cleanly.

Change-Id: I4f00d6fb378a80662f32491a2b0061d6bf61899f
idea/libraries/framework_jar.xml
idea/libraries/layoutlib_api_prebuilt.xml
ridge/bridge.iml
aa3b2043f0403d064afcf0977f6e713662aceaff 14-May-2015 Diego Perez <diegoperez@google.com> New custom widgets library

Adds the widgets needed by the theme editor as a jar file that will be
linked from AS. The controls currently are:
- ThemePreviewLayout: A custom layout that allows to dynamically reflow
cards that display the theme preview.
- PressedButton: Custom button to display in a pressed state (currently
we can only do it programatically).
- ErrorCatcher: View that can wrap other view and stops a view throwing
exceptions that will break the theme editor rendering. This is
currently used to wrap the custom controls loaded from the source
code.

The new library currently depends on bridge to be able to use the logger
for the ErrorCatcher view. The ErrorCatcher view is a temporary solution
that will be replaced in a future CL and the dependency will be removed.

Change-Id: I832c447e22e1381abff74c46c4282921b3f6fa23
idea/artifacts/studio_android_widgets_jar.xml
idea/artifacts/studio_android_widgets_src_jar.xml
idea/modules.xml
tudio-custom-widgets/src/com/android/tools/idea/editors/theme/widgets/ErrorCatcher.java
tudio-custom-widgets/src/com/android/tools/idea/editors/theme/widgets/PressedButton.java
tudio-custom-widgets/src/com/android/tools/idea/editors/theme/widgets/ThemePreviewLayout.java
tudio-custom-widgets/studio-android-widgets.iml
4ebbfd778790d4d4fb4c1ac4cee98edb4475bd3d 14-May-2015 Deepanshu Gupta <deepanshu@google.com> Fix build.

When doing the full build, javalib.jar wasn't created. However, mm had
created the javalib.jar. Fix the build by not depending on javalib.jar,
but on classes.jar

Change-Id: I643676b1d73cbfce42946a065a2ada6c50cc959a
idea/runConfigurations/Create.xml
ndroid.mk
1ae505060e9726782bc14af4e612b624cf2d038a 14-May-2015 Deepanshu Gupta <deepanshu@google.com> Update rendering fidelity tag to use constant.

Change-Id: If6c1076aa1e070c6bda7be16516fe0e18a95fe2d
ridge/src/android/graphics/Paint_Delegate.java
88b92541be0447f71430960811e95a5ae7eea415 14-May-2015 Deepanshu Gupta <deepanshu@google.com> Use Balanced line breaker instead of HighQuality.

Fallback to the Balanced line breaker till the time HighQuality one is
implemented.

Change-Id: I51e9882c5c733e5409f932ef740684829340ced9
ridge/src/android/text/StaticLayout_Delegate.java
139d6ff12d395a888624113fdd2521861b47d761 14-May-2015 Deepanshu Gupta <deepanshu@google.com> Update nav bar icons.

- Add a script to copy the icons from the original source.
- Update layout used for the navigation bar to be closer to the original
layout.
- Update test image with the latest rendering.
- Add a nexus 5 landscape device config to help with testing.

Change-Id: I0b6674955e0970a6a8cce148b1b7aa61e1752ccd
ridge/resources/bars/hdpi/stat_sys_battery_100.png
ridge/resources/bars/mdpi/stat_sys_battery_100.png
ridge/resources/bars/navigation_bar.xml
ridge/resources/bars/v21/hdpi/ic_sysbar_back.png
ridge/resources/bars/v21/hdpi/ic_sysbar_home.png
ridge/resources/bars/v21/hdpi/ic_sysbar_recent.png
ridge/resources/bars/v21/ldrtl-hdpi/ic_sysbar_back.png
ridge/resources/bars/v21/ldrtl-mdpi/ic_sysbar_back.png
ridge/resources/bars/v21/ldrtl-xhdpi/ic_sysbar_back.png
ridge/resources/bars/v21/ldrtl-xxhdpi/ic_sysbar_back.png
ridge/resources/bars/v21/mdpi/ic_sysbar_back.png
ridge/resources/bars/v21/mdpi/ic_sysbar_home.png
ridge/resources/bars/v21/mdpi/ic_sysbar_recent.png
ridge/resources/bars/v21/xhdpi/ic_sysbar_back.png
ridge/resources/bars/v21/xhdpi/ic_sysbar_home.png
ridge/resources/bars/v21/xhdpi/ic_sysbar_recent.png
ridge/resources/bars/v21/xxhdpi/ic_sysbar_back.png
ridge/resources/bars/v21/xxhdpi/ic_sysbar_home.png
ridge/resources/bars/v21/xxhdpi/ic_sysbar_recent.png
ridge/resources/bars/xhdpi/stat_sys_battery_100.png
ridge/src/com/android/layoutlib/bridge/bars/NavigationBar.java
ridge/tests/res/testApp/MyApplication/golden/allwidgets.png
ridge/tests/src/com/android/layoutlib/bridge/intensive/setup/ConfigGenerator.java
ridge/update_nav_icons.sh
eca056926a5acacbd1fe6b144df2d2952dc4a86e 13-May-2015 Deepanshu Gupta <deepanshu@google.com> Load ICU data in LayoutLib

Also return the correct version numbers for ICU data.

Change-Id: I7de973b5553c73948870b97bdc12a880bb2fdd85
idea/runConfigurations/Create.xml
ndroid.mk
ridge/src/libcore/icu/ICU_Delegate.java
reate/src/com/android/tools/layoutlib/create/Main.java
d77b9ed7dcc42efca33b225c4594a30aab9e709c 12-May-2015 Deepanshu Gupta <deepanshu@google.com> Add missing delegates for M preview.

- Remove ICU dependency (use the version bundled with platform).
- Restructure intelliJ project to move dependencies to module.
- Minor fixes to layoutlib tests.

TODO:
- Load ICU data.
- Hyphenator doesn't work.
- High quality line breaker not present.

Change-Id: I965e096e17bfc97ee995a649c3f4f6f64bb4f70d
idea/libraries/asm_4_0.xml
idea/libraries/framework_jar.xml
idea/libraries/guava.xml
idea/libraries/icu4j.xml
idea/libraries/kxml2_2_3_0.xml
idea/libraries/layoutlib_api_prebuilt.xml
idea/libraries/ninepatch_prebuilt.xml
idea/libraries/tools_common_prebuilt.xml
ridge/Android.mk
ridge/bridge.iml
ridge/src/android/content/res/BridgeTypedArray.java
ridge/src/android/graphics/BidiRenderer.java
ridge/src/android/graphics/BitmapShader_Delegate.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/Shader_Delegate.java
ridge/src/android/text/AndroidBidi_Delegate.java
ridge/src/android/text/GreedyLineBreaker.java
ridge/src/android/text/Hyphenator_Delegate.java
ridge/src/android/text/LineBreaker.java
ridge/src/android/text/StaticLayout_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/android/AndroidLocale.java
ridge/src/com/android/layoutlib/bridge/impl/DelegateManager.java
ridge/src/libcore/icu/DateIntervalFormat_Delegate.java
ridge/src/libcore/icu/ICU_Delegate.java
ridge/tests/Android.mk
ridge/tests/res/testApp/MyApplication/golden/allwidgets.png
ridge/tests/src/com/android/layoutlib/bridge/TestDelegates.java
ridge/tests/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParserTest.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
reate/create.iml
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/Main.java
a12ec8f1e28cb5a8601bf606852f1d34d7c91996 09-May-2015 Deepanshu Gupta <deepanshu@google.com> Run setup for full tests only once.

Change-Id: Iee64dbd88d473b7be08581f26ccddf649aed8e56
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
78af25584633462e4ab8cf9bafe10f43e7cb2d83 09-May-2015 Deepanshu Gupta <deepanshu@google.com> Remove kxml dependency.

Create XmlPullParser using callback provided by the client. This enables
clients to choose which XmlPullParser implementation they want.

Change-Id: I9ad97a4777820cdbe5c8fc3716f74ddec9065c70
ridge/Android.mk
ridge/bridge.iml
ridge/src/android/util/Xml_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/ParserFactory.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
ridge/tests/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParserTest.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/setup/LayoutLibTestCallback.java
11274bb3e44c714dc3c1d214251eea288b756606 14-May-2015 Jorim Jaggi <jjaggi@google.com> Merge "Fix build" into mnc-dev
2bf49b1a9f4898a3bb353a9b902b8e6c1642037a 14-May-2015 Jorim Jaggi <jjaggi@google.com> Fix build

Change-Id: Ia9277c6c983758d301c89312e39b59a2db0b29c4
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
645edef4834c2911386b659cc775840fb7479e01 14-May-2015 Jorim Jaggi <jjaggi@google.com> Merge "Make sure the app can draw a frame before unlocking" into mnc-dev
827e0facfefd0c0033dcfb1747b4fa6f80f9e0e2 07-May-2015 Jorim Jaggi <jjaggi@google.com> Make sure the app can draw a frame before unlocking

- The mechanism to stop windows drawing while window animator was
animating was somehow flaky. It relied on the fact that the client
would call relayout() whenever the animating state changed. This is
mostly the case, but not for lockscreen animations. Instead, we now
use a push model, where window manager tells the app that the state
has changed.
- In addition, it only stopped drawing if that window was animating,
but then only resumed drawing after all windows have finished
animating. Now, we do this per window, so we only stop drawing for
windows that are currently animating.
- We resume the top activity now at the very beginning of the
unlocking sequence. This gives the app a chance to draw a frame
before the user sees anything. If it's to slow, then we just use the
outdated framebuffer.

Bug: 19964562
Change-Id: Ifef8abd189a3146d854b81b9b948861e4d38c155
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
caa6226b1735ae074ec3861e2424bbd2276b88a0 13-May-2015 Chris Craik <ccraik@google.com> Revert "Anti-alias by default"

bug:20948129

Keep HIDDEN_DEFAULT_PAINT_FLAGS name.

This reverts commit 1b60cc0529161b5eca6407b551d67d355994c567.

Change-Id: I97cd9c556375c74c52b006bda4fc7b3a2cfa89e1
ridge/src/android/graphics/Paint_Delegate.java
635d8f4fe771a0bb2771b23991f7ca758861b884 27-Feb-2015 Diego Perez <diegoperez@google.com> Fix crash when shadowSize is 0

Change-Id: I9f131afc95a2571fbc8a737df37f43653cfbb90d
(cherry picked from commit e81096458f689ab3c0c4dbab2452722c3e3623c4)
ridge/src/android/view/ShadowPainter.java
78f12e43f08a1b2acda7b565a310c48e507f5e47 08-May-2015 Alan Viverette <alanv@google.com> Update LayoutLib for theme key changes to fix build

Change-Id: I47b400b320f16688cd32c1d8955a660637d93f4d
ridge/src/android/content/res/Resources_Theme_Delegate.java
14e139179be7daab6ed452105387a3922752c219 07-May-2015 Seigo Nonaka <nona@gogole.com> Retry "Always show auxiliary subtypes from NavBar keyboard icon."

This CL relands I1e50ee42838a1bf64a612da4904aa93458d44ea4, which was
reverted by I3decaf37198e5864a1763a059df4a36ebc70c5a7 due to the build
breakage in 'layoutlib' target, with a proper fix.

Hereafter the original CL description is repeated.

The auxiliary subtypes should be listed if the input method picker is
opened from NavBar keyboard icon. However there is only
IMM#showInputMethodPicker() API to open input method picker and this is
also used from LockScreen or Settings UI. Auxiliary subtypes should not
be listed there(Id7cf5d122). Thus framework shows auxiliary subtypes
based on IMMS#mInputShown and LockScreen state, but it is not a perfect
solution. If a physical keyboard is connected, the soft input may be
gone. As the result, auxiliary subtypes won't be listed even if it is
opened from NavBar keyboard icon.

To fix this issue, this CL introduces IMM#showInputMethodPicker(boolean)
to be able to decide showing auxiliary subtypes by caller.
Note that IMM#showInputMethodPicker(boolean) is still hidden with @hide.
There is no public API change in this CL.

Bug: 20763994
Change-Id: Id156c85535a221235737ea6dcc15a67f1c4b9f71
ridge/src/com/android/layoutlib/bridge/android/BridgeIInputMethodManager.java
70280a20f379e416d9cff20b7c6764844e7c2ff4 07-May-2015 Diego Perez <diegoperez@google.com> am 0fe14486: am 2021c877: am 33e54563: am 4b125836: Merge "Added function to render a drawable in all available states" into lmp-mr1-dev

* commit '0fe14486211e3ade7f29ea76e16211853fe9cd7a':
Added function to render a drawable in all available states
0fe14486211e3ade7f29ea76e16211853fe9cd7a 07-May-2015 Diego Perez <diegoperez@google.com> am 2021c877: am 33e54563: am 4b125836: Merge "Added function to render a drawable in all available states" into lmp-mr1-dev

* commit '2021c8773150dd47d8781375af94143cb22afd9d':
Added function to render a drawable in all available states
2021c8773150dd47d8781375af94143cb22afd9d 07-May-2015 Diego Perez <diegoperez@google.com> am 33e54563: am 4b125836: Merge "Added function to render a drawable in all available states" into lmp-mr1-dev

* commit '33e54563daa0db610f9dc8b9d4fca8f826ffec73':
Added function to render a drawable in all available states
4b12583653561f69a5780126485380cac187c478 07-May-2015 Diego Perez <diegoperez@google.com> Merge "Added function to render a drawable in all available states" into lmp-mr1-dev
681c7d142a6d25d3215d5f879074cd4359c6f106 05-Mar-2015 Andrew Shulaev <ddrone@google.com> Added function to render a drawable in all available states

This reverts commit 01cdf8b135be3bf67b9386dc929109c3db82c730.

Change-Id: I596855047d78c3c718744ad61432fc45e1239634
(cherry picked from commit 1f158819bc7cf58f97e47fabfaf23b2fb838f2eb)
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/impl/RenderDrawable.java
c000db78d7dabc244e9bda42d33977fc4d259b20 07-May-2015 Diego Perez <diegoperez@google.com> am 9af506fb: am 143eaa81: am 2ea82244: am 263e6dfa: Merge "Make status and navigation bars widgets and usable from layouts" into lmp-mr1-dev

* commit '9af506fb5b5f1c7f36fb439c2b120ad2b0cda602':
Make status and navigation bars widgets and usable from layouts
9207b8567af2ea3913aec6085e8e610a70925e09 07-May-2015 Diego Perez <diegoperez@google.com> am ae4619dd: am df4c977d: am 24e10c0b: am 19dbe50b: Merge "Move StatusBar to use statusBarColor theme attribute" into lmp-mr1-dev

* commit 'ae4619dd7f3d48cae2e9b83681849a77a8201142':
Move StatusBar to use statusBarColor theme attribute
790f6925a7381f5a59623854fcbd04c84f529fd1 07-May-2015 Deepanshu Gupta <deepanshu@google.com> am a131bfe0: am 3dbd18cd: am 872e9950: am 1f8e3de4: Merge "More layoutlib tests." into lmp-mr1-dev

* commit 'a131bfe094c007721d006fc9ca21cfa74f41dfef':
More layoutlib tests.
c2ba7391704cd4025c890b37148c16bf32b55a93 07-May-2015 Diego Perez <diegoperez@google.com> am 613aef87: am 86bff0bb: am 0e20bd8e: Merge changes I60c09f33,Ie0134c2b into lmp-mr1-dev

* commit '613aef87cf6a5958ff2fd255348f92f8d3de152e':
Add new parameter to the render method to allow forcing a measure pass.
Avoid caching mImage on the main render loop and use clipping.
2ab7b460562ca9cf52a5c47a9c61a5cc31fd3a13 07-May-2015 Deepanshu Gupta <deepanshu@google.com> resolved conflicts for merge of a663e012 to mnc-dev

Change-Id: I279cad7db6e9b5e97da3ea3c3bb91e09cabc7076
8ab069f3aed15c7e5de32ff52a3b4710218f9895 22-Apr-2015 Diego Perez <diegoperez@google.com> Fix GcSnapshot drawInLayer when clipping is used.

GcSnapshot only allocates an image for tinting that is the size of the
current clipping area. When drawing to that image, the wrong
coordinate system was used since now we are dealing with only the
clipping rect we need to translate -clipX, -clipY the drawing so it's
painted at 0,0 of the new BufferedImage.

Change-Id: Id8639d5ea9bef36ac07743df332161d6eadc6a81
ridge/src/com/android/layoutlib/bridge/impl/GcSnapshot.java
d7a53dab44babb38acc7cd0cc3067ae95152614d 07-May-2015 Diego Perez <diegoperez@google.com> am 9efcb308: am 21246bd9: am 8e75e307: am 1bc7fb2d: Merge "Fix isThemeAppCompat NPE when using an invalid theme" into lmp-mr1-dev

* commit '9efcb308615c0adaf418d430adabea3d271bcbb4':
Fix isThemeAppCompat NPE when using an invalid theme
15432daa6e35d8978393da083f934848957f147c 07-May-2015 Deepanshu Gupta <deepanshu@google.com> am 9c9bcd34: am cae76a70: am 46241071: am 4f8a9996: Merge "Nullity annotations to some tests." into lmp-mr1-dev

* commit '9c9bcd3486d9f7557329dea90b3c5fa1bdace91c':
Nullity annotations to some tests.
dbcedeea2031554d5ebf9b3c09df90374b3273a7 07-May-2015 Deepanshu Gupta <deepanshu@google.com> am b2951490: am b19325be: am 2e3c41a4: am 92e79868: Merge "Fix title bar showing when not required." into lmp-mr1-dev

* commit 'b2951490eabf71e14c8fc5d50397adf869a2a291':
Fix title bar showing when not required.
c49b8f9d1b00e89e24f598eaeab6f7395fc68f32 07-May-2015 Deepanshu Gupta <deepanshu@google.com> am 88b193d7: am 047a28ec: am 96437fb4: am 9aa600e7: Merge "LayoutLib: fix crash when shadow size <=0." into lmp-mr1-dev

* commit '88b193d717bb73cbe555e4e621f7b6efdf49cdaa':
LayoutLib: fix crash when shadow size <=0.
613aef87cf6a5958ff2fd255348f92f8d3de152e 07-May-2015 Diego Perez <diegoperez@google.com> am 86bff0bb: am 0e20bd8e: Merge changes I60c09f33,Ie0134c2b into lmp-mr1-dev

* commit '86bff0bb63f3667f0b450420514c931b1f4d25d2':
Add new parameter to the render method to allow forcing a measure pass.
Avoid caching mImage on the main render loop and use clipping.
9af506fb5b5f1c7f36fb439c2b120ad2b0cda602 07-May-2015 Diego Perez <diegoperez@google.com> am 143eaa81: am 2ea82244: am 263e6dfa: Merge "Make status and navigation bars widgets and usable from layouts" into lmp-mr1-dev

* commit '143eaa81934e47c8acb8338d1a2383eb79b690ef':
Make status and navigation bars widgets and usable from layouts
ae4619dd7f3d48cae2e9b83681849a77a8201142 07-May-2015 Diego Perez <diegoperez@google.com> am df4c977d: am 24e10c0b: am 19dbe50b: Merge "Move StatusBar to use statusBarColor theme attribute" into lmp-mr1-dev

* commit 'df4c977d760ccfcf929c77b100faa5f8f38df158':
Move StatusBar to use statusBarColor theme attribute
52ef7fce1626868d6be34f4038cd852259ad6a26 07-May-2015 Diego Perez <diegoperez@google.com> am ffeb8117: am 9c13c8de: am bc47abe4: Merge "Make sure shaders use a color model compatible with the destination." into lmp-mr1-dev

* commit 'ffeb8117b139f61dd7c92bda6a7d47b83871cb66':
Make sure shaders use a color model compatible with the destination.
a131bfe094c007721d006fc9ca21cfa74f41dfef 07-May-2015 Deepanshu Gupta <deepanshu@google.com> am 3dbd18cd: am 872e9950: am 1f8e3de4: Merge "More layoutlib tests." into lmp-mr1-dev

* commit '3dbd18cdfe6af1a9c36261551ef98d39e849d389':
More layoutlib tests.
a663e012049d5a159a7b51c072ffd413d7877426 07-May-2015 Deepanshu Gupta <deepanshu@google.com> am 9abe4232: am 7e4c1a92: am b4ca896f: Merge "RecyclerView in LayoutLib: better XML attrs." into lmp-mr1-dev

* commit '9abe42324f2252460b003e6fcdb097910e16178a':
RecyclerView in LayoutLib: better XML attrs.
9efcb308615c0adaf418d430adabea3d271bcbb4 07-May-2015 Diego Perez <diegoperez@google.com> am 21246bd9: am 8e75e307: am 1bc7fb2d: Merge "Fix isThemeAppCompat NPE when using an invalid theme" into lmp-mr1-dev

* commit '21246bd92f54be468496848b659bf47f2522430a':
Fix isThemeAppCompat NPE when using an invalid theme
9c9bcd3486d9f7557329dea90b3c5fa1bdace91c 07-May-2015 Deepanshu Gupta <deepanshu@google.com> am cae76a70: am 46241071: am 4f8a9996: Merge "Nullity annotations to some tests." into lmp-mr1-dev

* commit 'cae76a70bfca9f37a10f34582cddbe0792625f26':
Nullity annotations to some tests.
b2951490eabf71e14c8fc5d50397adf869a2a291 07-May-2015 Deepanshu Gupta <deepanshu@google.com> am b19325be: am 2e3c41a4: am 92e79868: Merge "Fix title bar showing when not required." into lmp-mr1-dev

* commit 'b19325be074e466c39e86fd4418726a7c305546c':
Fix title bar showing when not required.
88b193d717bb73cbe555e4e621f7b6efdf49cdaa 07-May-2015 Deepanshu Gupta <deepanshu@google.com> am 047a28ec: am 96437fb4: am 9aa600e7: Merge "LayoutLib: fix crash when shadow size <=0." into lmp-mr1-dev

* commit '047a28ec506bb40081eef6eaf8434884157709ce':
LayoutLib: fix crash when shadow size <=0.
0e20bd8e50724ab264425ba830cdf1beb96f7404 07-May-2015 Diego Perez <diegoperez@google.com> Merge changes I60c09f33,Ie0134c2b into lmp-mr1-dev

* changes:
Add new parameter to the render method to allow forcing a measure pass.
Avoid caching mImage on the main render loop and use clipping.
143eaa81934e47c8acb8338d1a2383eb79b690ef 07-May-2015 Diego Perez <diegoperez@google.com> am 2ea82244: am 263e6dfa: Merge "Make status and navigation bars widgets and usable from layouts" into lmp-mr1-dev

* commit '2ea82244f0b4396444ec891ab664f9ac40c0b55b':
Make status and navigation bars widgets and usable from layouts
df4c977d760ccfcf929c77b100faa5f8f38df158 07-May-2015 Diego Perez <diegoperez@google.com> am 24e10c0b: am 19dbe50b: Merge "Move StatusBar to use statusBarColor theme attribute" into lmp-mr1-dev

* commit '24e10c0bad54bdd3b37f6f7effea8f76b687ce3f':
Move StatusBar to use statusBarColor theme attribute
ffeb8117b139f61dd7c92bda6a7d47b83871cb66 07-May-2015 Diego Perez <diegoperez@google.com> am 9c13c8de: am bc47abe4: Merge "Make sure shaders use a color model compatible with the destination." into lmp-mr1-dev

* commit '9c13c8de8291aac69958a106248d3229ff90609f':
Make sure shaders use a color model compatible with the destination.
3dbd18cdfe6af1a9c36261551ef98d39e849d389 07-May-2015 Deepanshu Gupta <deepanshu@google.com> am 872e9950: am 1f8e3de4: Merge "More layoutlib tests." into lmp-mr1-dev

* commit '872e9950a227128d323c24eb369863e16964493a':
More layoutlib tests.
9abe42324f2252460b003e6fcdb097910e16178a 07-May-2015 Deepanshu Gupta <deepanshu@google.com> am 7e4c1a92: am b4ca896f: Merge "RecyclerView in LayoutLib: better XML attrs." into lmp-mr1-dev

* commit '7e4c1a92b8f3ce02df0a1502be45c450308d81b7':
RecyclerView in LayoutLib: better XML attrs.
21246bd92f54be468496848b659bf47f2522430a 07-May-2015 Diego Perez <diegoperez@google.com> am 8e75e307: am 1bc7fb2d: Merge "Fix isThemeAppCompat NPE when using an invalid theme" into lmp-mr1-dev

* commit '8e75e307373a03dcbc55ce71be5b50f80e0474db':
Fix isThemeAppCompat NPE when using an invalid theme
cae76a70bfca9f37a10f34582cddbe0792625f26 07-May-2015 Deepanshu Gupta <deepanshu@google.com> am 46241071: am 4f8a9996: Merge "Nullity annotations to some tests." into lmp-mr1-dev

* commit '4624107185135db9db6bfbfb3d0c3a0951c19ee1':
Nullity annotations to some tests.
b19325be074e466c39e86fd4418726a7c305546c 07-May-2015 Deepanshu Gupta <deepanshu@google.com> am 2e3c41a4: am 92e79868: Merge "Fix title bar showing when not required." into lmp-mr1-dev

* commit '2e3c41a4e4fbb811cdafc754708d62cba7c6c1b6':
Fix title bar showing when not required.
047a28ec506bb40081eef6eaf8434884157709ce 07-May-2015 Deepanshu Gupta <deepanshu@google.com> am 96437fb4: am 9aa600e7: Merge "LayoutLib: fix crash when shadow size <=0." into lmp-mr1-dev

* commit '96437fb4b05be2602bb0fa215988be646aec28fc':
LayoutLib: fix crash when shadow size <=0.
263e6dfa6aa3286b71ef908c8b2f06206e747ab1 07-May-2015 Diego Perez <diegoperez@google.com> Merge "Make status and navigation bars widgets and usable from layouts" into lmp-mr1-dev
19dbe50bb534db6fa46f0df47f589a69212e9458 07-May-2015 Diego Perez <diegoperez@google.com> Merge "Move StatusBar to use statusBarColor theme attribute" into lmp-mr1-dev
bc47abe4b444d0386d1d939e4a223a976fade565 07-May-2015 Diego Perez <diegoperez@google.com> Merge "Make sure shaders use a color model compatible with the destination." into lmp-mr1-dev
1f8e3de40c0aed9fa8b9216ddd3224b7ac94acf1 07-May-2015 Deepanshu Gupta <deepanshu@google.com> Merge "More layoutlib tests." into lmp-mr1-dev
b4ca896f05eed9d36ac9971810d102a9139502f9 07-May-2015 Deepanshu Gupta <deepanshu@google.com> Merge "RecyclerView in LayoutLib: better XML attrs." into lmp-mr1-dev
1bc7fb2dcc954caac78d3fc02eb98ec30658d4d0 07-May-2015 Diego Perez <diegoperez@google.com> Merge "Fix isThemeAppCompat NPE when using an invalid theme" into lmp-mr1-dev
4f8a999682fdb8b38ee5671b8a8f527569ebb5ff 07-May-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Nullity annotations to some tests." into lmp-mr1-dev
92e798682b5e45a05bffecb40a9b9f473420ea79 07-May-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Fix title bar showing when not required." into lmp-mr1-dev
0aa004c3cff627167e302d7320629ccb41cab585 29-Apr-2015 Deepanshu Gupta <deepanshu@google.com> LayoutLib: fix crash when shadow size <=0.

Drawing empty rects results in IllegalArgumentException on Mac JRE 1.6.
Prevent that by checking the bounds before attempting to draw the rect.

Bug: 20687353
Change-Id: I45f48ee125196480bb6510cc49b24d2122bc3e48
ridge/src/android/view/RectShadowPainter.java
5181f279c8740b9786be37a3a9459114e3f06dfd 01-May-2015 Alan Viverette <alanv@google.com> Fix layoutlib build breakage

Change-Id: Id3a9b79ac47ef27b04a96ff3ee50688bbb58f9c0
ridge/src/android/view/LayoutInflater_Delegate.java
d0546353a8ce2d9df5b390d0df967c0ee5eb7ca5 30-Apr-2015 Diego Perez <diegoperez@google.com> Move StatusBar to use statusBarColor theme attribute

Change-Id: Ic0d8f4520a6dcb7225a2947cc56dc06a7340d3ba
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
8ff8de2cf2ebc136d3dd8d8a8b5e4912e483bb2b 05-Nov-2014 Diego Perez <diegoperez@google.com> Add new parameter to the render method to allow forcing a measure pass.

Change-Id: I60c09f3375fc85c257a449f4372220741e01db54
(cherry picked from commit c13aa0c035cd226d27323bc0e533632ba32f6a84)
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
8381e2cdcc24a5099b1e8811b0d7b8c125145899 28-Apr-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Fix view outline for shadows in LayoutLib." into mnc-dev
c6abf5bff6bbfafa1f133644f02a5d50d5269b7f 24-Apr-2015 Raph Levien <raph@google.com> Expose drawTextRun publicly

For correct low-level drawing of low level text, a method that
includes context for shaping is necessary, and it's similarly useful
to provide the direction explicitly rather than running the BiDi
algorithm on the text. The drawTextRun method (in both char[] and
CharSequence variants) has provided this functionality for several
major releases but has been internal. This patch exposes the
methods publicly, and also improves the doc strings for both
the new method and some related ones.

Bug: 20193553
Change-Id: I9be33ca5ae3e7db2b69a56298400671d5ef8ad05
ridge/src/android/graphics/Canvas_Delegate.java
1b60cc0529161b5eca6407b551d67d355994c567 24-Apr-2015 Chris Craik <ccraik@google.com> Anti-alias by default

Change-Id: I19434717dd3af4fdcffbfcca2ffbb485dfebe644
ridge/src/android/graphics/Paint_Delegate.java
dbc7ca0bac64e6f0e6f8463ac8e3d43dfac27eae 20-Apr-2015 Deepanshu Gupta <deepanshu@google.com> Fix view outline for shadows in LayoutLib.

Set the bounds on the drawable before getting the view outline for
shadow. Also, reuse the temp outline object in AttachInfo rather than
allocating a new one each time.

Change-Id: I69793d38d60c5b9f9050569f2b22fbc7b90620bf
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/view/ViewGroup_Delegate.java
f3cb4ba213a0fa4d1c184c430a2eaac7e27ccf6f 16-Feb-2015 Diego Perez <diegoperez@google.com> 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
(cherry picked from commit 2c5e85b303077d2120b428bd4c7e6ecb6970935b)
ridge/src/com/android/layoutlib/bridge/impl/GcSnapshot.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
9b39c49bfcf9caf434799976304e492ef4599b86 15-Apr-2015 Diego Perez <diegoperez@google.com> Make status and navigation bars widgets and usable from layouts

This will allow the theme editor to render these components
separately.

Change-Id: I8b2e0e78039b44623152e34f68ffcdfab5aa9885
ridge/src/com/android/layoutlib/bridge/bars/Config.java
ridge/src/com/android/layoutlib/bridge/bars/NavigationBar.java
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
6aa5a44d9b65ee608df03df29dad640258548f10 21-Apr-2015 Diego Perez <diegoperez@google.com> Fix isThemeAppCompat NPE when using an invalid theme

When the theme does not longer exists on the Android Studio side,
getDefaultTheme will return null causing isThemeAppCompat to crash.

Change-Id: I5a5c17126dce72e9872522643219b9438666bc04
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
e8b6debd9b1035a8b8da102cfe476b71986b341c 18-Apr-2015 Svet Ganov <svetoslavganov@google.com> Fix build for real

Change-Id: I5742226e9b873cd5a035f11be0e228188e215365
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
6762301a10ba1176dc97083bef6785ec169378ff 18-Apr-2015 Svet Ganov <svetoslavganov@google.com> Fix build

Change-Id: If469dce767b492c3fcc1ad8cf7ab1041eb61096f
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
f647832bd4ca9c083aa2748f2a21bc433cb26be3 17-Apr-2015 Jeff Brown <jeffbrown@google.com> Merge "Add support for disabling display scaling for development."
a035dfbf8ddfc8d301dd96088eb50e8c2e63e487 17-Apr-2015 Deepanshu Gupta <deepanshu@google.com> More layoutlib tests.

- Add another layout including more widgets and thus testing layoutlib
better.
- Update targetSdk Version to 22.
- Handling of dynamic ids (@+id/) in LayoutLibTestCallback is buggy.
Since this is not a problem in Studio, and this is not testing the
callback, work around the issue by declaring the ids in
values/ids.xml.

Change-Id: I457c105e8556c4df13cd86da2250fe5fd37843a8
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/MyActivity.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$id.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$layout.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$menu.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$string.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$style.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R.class
ridge/tests/res/testApp/MyApplication/golden/allwidgets.png
ridge/tests/res/testApp/MyApplication/src/main/res/layout/allwidgets.xml
ridge/tests/res/testApp/MyApplication/src/main/res/values/ids.xml
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/setup/ConfigGenerator.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/setup/LayoutLibTestCallback.java
2bc2daa74eef01135f717eadfab87538a9bef29f 31-Mar-2015 Deepanshu Gupta <deepanshu@google.com> RecyclerView in LayoutLib: better XML attrs.

- RecyclerView now supports XML attributes natively. Thus, remove the
custom support via tools attribute. Users with older versions of
RecyclerView should update.
- Add Context.getPackageName() support used by RecyclerView.
- Update SessionParamsFlags with the new changes and rename it to
RenderParamsFlags.

The attribute behaves slightly different from the original tools
attribute. For usage, see commit 044b5b61e96 in frameworks/support.

Change-Id: I12073e37a2ba411558ca1d3e30c399e3d9a0b144
ridge/src/android/view/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/RenderParamsFlags.java
ridge/src/com/android/layoutlib/bridge/android/SessionParamsFlags.java
ridge/src/com/android/layoutlib/bridge/android/support/RecyclerViewUtil.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
eca0b3d9ec1cff4ee1d1a0dc41ef4c0f482033f8 16-Apr-2015 Deepanshu Gupta <deepanshu@google.com> Nullity annotations to some tests.

Change-Id: I2939d7fab30f3b8fe32f2fdf720c630d677373ff
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
666748728f40e0638860663eabb7a6c66248ad82 16-Apr-2015 Deepanshu Gupta <deepanshu@google.com> Fix title bar showing when not required.

Bug: http://b.android.com/166383
Change-Id: I5ea051ffdbf9a2d73a83f62d56a0f4006b014348
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
4967201a2c524906b90739c9a549174fb1175a24 16-Apr-2015 Deepanshu Gupta <deepanshu@google.com> resolved conflicts for merge of 186fe7b1 to master

Change-Id: I60886d3e44ae23a11c8f129517df87ee29625ada
c4affce9df0817b84df3e61c3932f53b77ee0986 16-Apr-2015 Deepanshu Gupta <deepanshu@google.com> am 1f3c7f3f: am f18ceefc: am cd6e00c6: Merge changes from topic \'layoutlib-api-15\' into lmp-mr1-dev

* commit '1f3c7f3f500bdbfd790c20872961d84ef617f066':
Update golden image for tests.
Update to using LayoutlibCallback.
Remove implementation of deprecated method.
Add @empty support.
1f3c7f3f500bdbfd790c20872961d84ef617f066 16-Apr-2015 Deepanshu Gupta <deepanshu@google.com> am f18ceefc: am cd6e00c6: Merge changes from topic \'layoutlib-api-15\' into lmp-mr1-dev

* commit 'f18ceefcf0d3cc91e74737e0a93f16775e3bf18b':
Update golden image for tests.
Update to using LayoutlibCallback.
Remove implementation of deprecated method.
Add @empty support.
d46747a1c64b6ca3282e8841833980ab91829436 16-Apr-2015 Jeff Brown <jeffbrown@google.com> Add support for disabling display scaling for development.

Added two new options to the wm command.

1. Set the screen size based on dips rather than pixels using the
current screen density.

eg. adb shell wm size 320dpx320dp

2. Disable automatic scaling of the contents of the display.
When combined with the previous command, this is useful for seeing
how the UI would behave if the screen remained at its current density
but changed physical size.

eg. adb shell wm scaling off

Bug: 19899223
Change-Id: I545f893ba4861494e995cf0457ebeba1050d28dc
ridge/src/android/view/IWindowManagerImpl.java
54862febaf519281ac61ebe31caf49c69820449a 15-Apr-2015 Deepanshu Gupta <deepanshu@google.com> Update golden image for tests.

Change-Id: If07edcbfb7016a6b80f4bd00cffab494f74bfc03
ridge/tests/res/testApp/MyApplication/golden/activity.png
37dbb8b7f3c069196040eed3a03006647db7fa5b 15-Apr-2015 Deepanshu Gupta <deepanshu@google.com> Update to using LayoutlibCallback.

Change-Id: Ia89d418b0d40ca8efef8968a4a2a635616b945ac
ridge/src/android/app/Fragment_Delegate.java
ridge/src/android/content/res/BridgeResources.java
ridge/src/android/content/res/BridgeTypedArray.java
ridge/src/android/util/BridgeXmlPullAttributes.java
ridge/src/android/view/BridgeInflater.java
ridge/src/com/android/internal/policy/PolicyManager.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/support/RecyclerViewUtil.java
ridge/src/com/android/layoutlib/bridge/bars/AppCompatActionBar.java
ridge/src/com/android/layoutlib/bridge/bars/BridgeActionBar.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/binding/AdapterHelper.java
ridge/src/com/android/layoutlib/bridge/impl/binding/FakeAdapter.java
ridge/src/com/android/layoutlib/bridge/impl/binding/FakeExpandableAdapter.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/setup/LayoutLibTestCallback.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/setup/ModuleClassLoader.java
49ce36e1754243eedc124b4f7e68af1b458c821c 15-Apr-2015 Deepanshu Gupta <deepanshu@google.com> Remove implementation of deprecated method.

BridgeResources.getDrawable(int) is not needed anymore, since the super
method is deprecated and it calls the alternative
getDrawable(int, Theme), which we override.

Change-Id: I00c0bfaef6c4167a787bb74990b91cebb951c847
ridge/src/android/content/res/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
9ca97747260b9906fc3a159ce3930109022cf2dd 30-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Add @empty support.

Bug: http://b.android.com/162428
Change-Id: Id7a981de2fce21213e12cdabcce4104f146fd4d3
ridge/src/android/content/res/BridgeTypedArray.java
2d3449f982f9f4b9f4370142bb846d2dbab5a38e 12-Mar-2015 Diego Perez <diegoperez@google.com> Make sure shaders use a color model compatible with the destination.

Change-Id: Iaf6e14bb86835c36a5b0c37519ac2ee794d10081
(cherry picked from commit 158ac454073a460375123d7d05152a7c6490efb6)
ridge/src/android/graphics/BitmapShader_Delegate.java
ridge/src/android/graphics/LinearGradient_Delegate.java
ridge/src/android/graphics/RadialGradient_Delegate.java
ridge/src/android/graphics/SweepGradient_Delegate.java
6a975b3c3597a4ad9202432f3c3d867a03d43fa4 10-Apr-2015 Tim Kilbourn <tkilbourn@google.com> Save search context when dispatching onSearchRequested.

The InputDevice used to trigger the search is saved in a SearchEvent
so an application implementing onSearchRequested determine the device
triggering the search.

Bug: 15374820
Change-Id: If2cd14f77ce572a5ee131697cd63145fbea63f27
ridge/src/android/view/WindowCallback.java
1fd5d21e0da2f1e467827fa5cd634be77021a69d 06-Apr-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Be lenient in accepting version strings."
d654b6f981dbef7c6a6a57c8725fc9f510dd7a09 06-Apr-2015 Deepanshu Gupta <deepanshu@google.com> Be lenient in accepting version strings.

Don't throw exceptions for malformed version strings in font files, and
try to rename the font as is.

Change-Id: Ib4f74e68593abb5b551fbcb049484efc925a3d6e
ename_font/build_font.py
ename_font/build_font_single.py
26d443aee4ee5a8791417b4ca09e8c78ba8dc78b 30-Mar-2015 Raph Levien <raph@google.com> Revert "Fix build: Revert "Record hyphens from Minikin and draw them""

This reverts commit 5a6eeb3cbe0896ddf4bdccc0b1a81d7aac49821e and
fixes the underlying issue (needed to @hide getHyphen() for subclasses
of Layout, not just the base class), and layoutlib changes for
checkbuild.

Change-Id: I7a2b5f20ae014ea8e224d8c4079cf9131e17e1c1
ridge/src/android/text/GreedyLineBreaker.java
ridge/src/android/text/LineBreaker.java
ridge/src/android/text/OptimizingLineBreaker.java
22ed7996223ae79d6c4118d7dcd4b61df7cc9489 27-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am c1c3b88e: am 80d5c425: am fb37c97c: am 61bb0b4f: am 4e6ae02a: am 17bb697b: am ec8df9af: Fix tests for Java 6.

* commit 'c1c3b88ebd853425e931a5c07a045bae6ac1085f':
Fix tests for Java 6.
80d5c4250f6a7b55b34bb033620df54cdbb31499 27-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am fb37c97c: am 61bb0b4f: am 4e6ae02a: am 17bb697b: am ec8df9af: Fix tests for Java 6.

* commit 'fb37c97c251cc9bef81dbf5b9acc58328656a980':
Fix tests for Java 6.
fb37c97c251cc9bef81dbf5b9acc58328656a980 27-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 61bb0b4f: am 4e6ae02a: am 17bb697b: am ec8df9af: Fix tests for Java 6.

* commit '61bb0b4f58f794ff468f2cfaf958cb5cc0b09026':
Fix tests for Java 6.
4e6ae02a29dd432648a81f3803f3ccf712621d43 27-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 17bb697b: am ec8df9af: Fix tests for Java 6.

* commit '17bb697b3bce1b23137553829dd62e0e7c16b472':
Fix tests for Java 6.
17bb697b3bce1b23137553829dd62e0e7c16b472 27-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am ec8df9af: Fix tests for Java 6.

* commit 'ec8df9af2f35eb5be4df01d66b1add4a4e7546c7':
Fix tests for Java 6.
ec8df9af2f35eb5be4df01d66b1add4a4e7546c7 26-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Fix tests for Java 6.

- Change the guava version used to match the one included in the SDK.
The test server uses the same. However, the command line build still
uses the guava present at platform/external/guava, which is compiled
with Java 7. Thus, running the tests from inside the IDE can be done
via Java 6.
- Rebuilt the test app classes with Java 6 compatibility.
- Change similarity threshold to prevent differences due to some locale
settings different java versions.

Change-Id: Ic71d43256a8cf6f9df296e63550667a202c7105f
idea/libraries/guava.xml
idea/runConfigurations/All_in_bridge.xml
ridge/tests/res/testApp/MyApplication/build.gradle
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/androidTest/debug/com/android/layoutlib/test/myapplication/test/BuildConfig.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/BuildConfig.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/CustomCalendar.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/CustomDate.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/MyActivity.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$attr.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$dimen.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$drawable.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$id.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$layout.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$menu.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$string.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$style.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R.class
ridge/tests/src/com/android/layoutlib/bridge/intensive/ImageUtils.java
6386b8dae77dc264513e6da2e48a6abaa3eed8b2 23-Mar-2015 Diego Perez <diegoperez@google.com> More layoutlib delegate native methods to do text rendering.

Moving some more methods to measure the text and compute the line
breaks.
The missing methods were causing crashes when running layoutlib from
master.

Change-Id: I910e1509836186fcff5cdd40c1dc38466b44c434
ridge/src/android/text/StaticLayout_Delegate.java
0ad58deca1bea95ea052ec2c4257bdf62d53fd54 25-Mar-2015 Bryce Lee <brycelee@google.com> am 5f11a1af: add correct exception throw declaration to isScreenBrightnessBoosted.

* commit '5f11a1af572730567d9e35d6792a720585a268c6':
add correct exception throw declaration to isScreenBrightnessBoosted.
5f11a1af572730567d9e35d6792a720585a268c6 25-Mar-2015 Bryce Lee <brycelee@google.com> add correct exception throw declaration to isScreenBrightnessBoosted.

Change-Id: I9b861002d7719ad43643d68f6795df6938bd0fc3
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
a6045ec8ed8eb46454c260649abe2f4eb6fcb0f6 25-Mar-2015 Bryce Lee <brycelee@google.com> am 40a4f4a6: Implement isScreenBrightnessBoosted in BridgePowerManager.

* commit '40a4f4a61fbb2172901eda763bf928ae9b1b5300':
Implement isScreenBrightnessBoosted in BridgePowerManager.
cffef341f957b55c166065f0c4be258279aa8a8c 25-Mar-2015 Bryce Lee <brycelee@google.com> Implement isScreenBrightnessBoosted in BridgePowerManager.

Change-Id: I7da132c7522e5c352e14123f059b900008d94c95
(cherry picked from commit 40a4f4a61fbb2172901eda763bf928ae9b1b5300)
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
40a4f4a61fbb2172901eda763bf928ae9b1b5300 25-Mar-2015 Bryce Lee <brycelee@google.com> Implement isScreenBrightnessBoosted in BridgePowerManager.

Change-Id: I7da132c7522e5c352e14123f059b900008d94c95
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
ab11ec39173a6081a65b7d6cfd7579afb84526e8 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am e773c20d: am 693236b3: am c263a07a: am 862f5900: am 44b5a1c8: am e541f350: Merge "Update JRE for runConfigurations." into lmp-dev

* commit 'e773c20d43a4a8b7504a91df5dd7cb216b89eaef':
Update JRE for runConfigurations.
3ae0bc032ae52db536f19d4468d08941b851d8a6 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am e2b85016: am ce2b74f7: am e51f5cdc: am e97079d9: am a16bb347: am 44fea603: Merge "Fix RoundRect radius." into lmp-dev

* commit 'e2b8501695c4ba5712d49313e86a566e95a5b0df':
Fix RoundRect radius.
cb580742e364f29bdd78ee5532d1c00279419e48 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 659413d6: am 5c03cd8a: am 96a67430: am 2b98abde: am 8f9ebc65: am 3bd5cbb1: Merge "Use right colors for status bar and nav bar." into lmp-dev

* commit '659413d6a2ccd8c8ade06bc3420ca90def3e3be6':
Use right colors for status bar and nav bar.
88c2fdc00c0877c384aae359c0c3c36a3c64bf9e 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am eb96b231: am 25557e0a: am 5f0252de: am 6fa9d554: am 0b76cf6f: am 34751c79: Merge "Better shadows." into lmp-dev

* commit 'eb96b231b2755d50db4f931cc11203fd32a90820':
Better shadows.
5eda5a3d22ff7faac91eb2bccdc0f19e5af20852 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am f0e713a6: am 01f9ad1c: am 2ceb310d: am 5bc625d8: am a62a18e3: am 311a0f54: Merge "Fix layoutlib tests." into lmp-dev

* commit 'f0e713a67a0b5ea5f146900b3d4e53f6e1481c49':
Fix layoutlib tests.
693236b367050f40b02ab22991d30eb260ec53ea 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am c263a07a: am 862f5900: am 44b5a1c8: am e541f350: Merge "Update JRE for runConfigurations." into lmp-dev

* commit 'c263a07a55a9806147304a1420ceec2d27a6b49d':
Update JRE for runConfigurations.
ce2b74f729ea79b86a69cd3f8dd505aa93d0025b 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am e51f5cdc: am e97079d9: am a16bb347: am 44fea603: Merge "Fix RoundRect radius." into lmp-dev

* commit 'e51f5cdcf34fe127792a177a3953dad03ef23647':
Fix RoundRect radius.
5c03cd8aadcfbf118405bfa5fb2fb95b5561da04 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 96a67430: am 2b98abde: am 8f9ebc65: am 3bd5cbb1: Merge "Use right colors for status bar and nav bar." into lmp-dev

* commit '96a67430c0088168f21b230c64c348a53e672538':
Use right colors for status bar and nav bar.
25557e0a96c3987c35405fbec56c561ceeb6daf0 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 5f0252de: am 6fa9d554: am 0b76cf6f: am 34751c79: Merge "Better shadows." into lmp-dev

* commit '5f0252dee43a1cd0f1591b3c9bea2d47ad1f3df0':
Better shadows.
01f9ad1c671f0b14554ce6ccec10f34e86a49a2a 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 2ceb310d: am 5bc625d8: am a62a18e3: am 311a0f54: Merge "Fix layoutlib tests." into lmp-dev

* commit '2ceb310d09a865c56145ba8b5d643a11a7ad2ce5':
Fix layoutlib tests.
c263a07a55a9806147304a1420ceec2d27a6b49d 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 862f5900: am 44b5a1c8: am e541f350: Merge "Update JRE for runConfigurations." into lmp-dev

* commit '862f5900e8abce1cc20979a4dca76e1f0b982880':
Update JRE for runConfigurations.
e51f5cdcf34fe127792a177a3953dad03ef23647 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am e97079d9: am a16bb347: am 44fea603: Merge "Fix RoundRect radius." into lmp-dev

* commit 'e97079d97a5c914d06c24cb9deda1da9bea88aeb':
Fix RoundRect radius.
96a67430c0088168f21b230c64c348a53e672538 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 2b98abde: am 8f9ebc65: am 3bd5cbb1: Merge "Use right colors for status bar and nav bar." into lmp-dev

* commit '2b98abde26aa2033562b48d635d6f2ba11c48908':
Use right colors for status bar and nav bar.
5f0252dee43a1cd0f1591b3c9bea2d47ad1f3df0 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 6fa9d554: am 0b76cf6f: am 34751c79: Merge "Better shadows." into lmp-dev

* commit '6fa9d5546fa27665de3f64564897a77735b2a1b0':
Better shadows.
2ceb310d09a865c56145ba8b5d643a11a7ad2ce5 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 5bc625d8: am a62a18e3: am 311a0f54: Merge "Fix layoutlib tests." into lmp-dev

* commit '5bc625d83d60fbb27ab2297051971be91fb3e415':
Fix layoutlib tests.
862f5900e8abce1cc20979a4dca76e1f0b982880 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 44b5a1c8: am e541f350: Merge "Update JRE for runConfigurations." into lmp-dev

* commit '44b5a1c8471ef5e1cd3dcfffec5a9e439f228766':
Update JRE for runConfigurations.
e97079d97a5c914d06c24cb9deda1da9bea88aeb 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am a16bb347: am 44fea603: Merge "Fix RoundRect radius." into lmp-dev

* commit 'a16bb347e120ba17e87f33ff0364380211d01baf':
Fix RoundRect radius.
2b98abde26aa2033562b48d635d6f2ba11c48908 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 8f9ebc65: am 3bd5cbb1: Merge "Use right colors for status bar and nav bar." into lmp-dev

* commit '8f9ebc65939ed3ac2e7fdc135e8513fd8d65daaf':
Use right colors for status bar and nav bar.
6fa9d5546fa27665de3f64564897a77735b2a1b0 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 0b76cf6f: am 34751c79: Merge "Better shadows." into lmp-dev

* commit '0b76cf6ff56c59a04783714d40163576e3081cf1':
Better shadows.
5bc625d83d60fbb27ab2297051971be91fb3e415 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am a62a18e3: am 311a0f54: Merge "Fix layoutlib tests." into lmp-dev

* commit 'a62a18e341180ccf6f5379a7d753584f6cee2e7c':
Fix layoutlib tests.
44b5a1c8471ef5e1cd3dcfffec5a9e439f228766 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am e541f350: Merge "Update JRE for runConfigurations." into lmp-dev

* commit 'e541f35055709ec43407649b8517639ff00e42d6':
Update JRE for runConfigurations.
cbb4ec78675c8179cdedafba1972ac062844c70a 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 6f5fac81: Merge "Fix project settings. [DO NOT MERGE]" into lmp-dev

* commit '6f5fac817abee63d9211e8e43646196950c43707':
Fix project settings. [DO NOT MERGE]
a16bb347e120ba17e87f33ff0364380211d01baf 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 44fea603: Merge "Fix RoundRect radius." into lmp-dev

* commit '44fea60376e4e851b07eb365fd581c5b9404611f':
Fix RoundRect radius.
8f9ebc65939ed3ac2e7fdc135e8513fd8d65daaf 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 3bd5cbb1: Merge "Use right colors for status bar and nav bar." into lmp-dev

* commit '3bd5cbb1f3d837d7799fb4b33b4dda99adbeeeb4':
Use right colors for status bar and nav bar.
0b76cf6ff56c59a04783714d40163576e3081cf1 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 34751c79: Merge "Better shadows." into lmp-dev

* commit '34751c79d6696054b19b5fd0e2946c1dbe5bd9bd':
Better shadows.
a62a18e341180ccf6f5379a7d753584f6cee2e7c 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 311a0f54: Merge "Fix layoutlib tests." into lmp-dev

* commit '311a0f54ac95a1649474498748fff8327b0c917d':
Fix layoutlib tests.
e541f35055709ec43407649b8517639ff00e42d6 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Update JRE for runConfigurations." into lmp-dev
6f5fac817abee63d9211e8e43646196950c43707 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Fix project settings. [DO NOT MERGE]" into lmp-dev
44fea60376e4e851b07eb365fd581c5b9404611f 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Fix RoundRect radius." into lmp-dev
3bd5cbb1f3d837d7799fb4b33b4dda99adbeeeb4 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Use right colors for status bar and nav bar." into lmp-dev
34751c79d6696054b19b5fd0e2946c1dbe5bd9bd 25-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Better shadows." into lmp-dev
e4df25eded03c110e5feca6ba811ae10dd03735c 24-Mar-2015 Dianne Hackborn <hackbod@google.com> Fix build.

Change-Id: Ib0b9ffb9cbf53df3d76b8de6619d09ba18b4d345
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
00c2adf5db17ec2ab8c6709c5afde503cf6ea273 04-Feb-2015 Deepanshu Gupta <deepanshu@google.com> Better shadows.

Better shadows for rectangles and rounded rectangles (includes circles).

The shadow painting code is mostly from CardView library, but modified
heavily since CardView needs to draw the shadow inside view bounds.

Change-Id: I88c9f19b1c16839b8d6db6df2bebff126fa5a9a3
ridge/src/android/view/RectShadowPainter.java
ridge/src/android/view/ViewGroup_Delegate.java
7c834296ac2561d0d630b2ef6b2530344be7afbd 24-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Fix RoundRect radius.

Android APIs use radius for measuring the corner's curvature, but Java2D
APIs use diameter. Add the missing conversion.

Change-Id: I630fc8712e8301324c641885c0c4adf644d13b7e
ridge/src/android/graphics/Canvas_Delegate.java
c6d1c345f41cf817bf2c07c97b97107d94296064 26-Feb-2015 Svetoslav <svetoslavganov@google.com> Runtime permissions: per user permission tracking.

Before all permissions were granted at install time at once, so the user
was persented with an all or nothing choice. In the new runtime permissions
model all dangarous permissions (nomal are always granted and signature
one are granted if signatures match) are not granted at install time and
the app can request them as necessary at runtime.

Before, all granted permission to an app were identical for all users as
granting is performed at install time. However, the new runtime model
allows the same app running under two different users to have different
runtime permission grants. This change refactors the permissions book
keeping in the package manager to enable per user permission tracking.

The change also adds the app facing APIs for requesting runtime permissions.

Change-Id: Icbf2fc2ced15c42ca206c335996206bd1a4a4be5
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
58ca246c834d7ab45939367367a5932d8e348f41 18-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Use right colors for status bar and nav bar.

Bug: http://b.android.com/81862
Change-Id: Ia10297e83e54c01a50de6cbcac2b7fef48e8d238
ridge/src/com/android/layoutlib/bridge/bars/Config.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/NavigationBar.java
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
ridge/src/com/android/layoutlib/bridge/bars/TitleBar.java
6194d728cf9d43a3a40f8a0e96283d92887c5bcd 20-Mar-2015 Alan Viverette <alanv@google.com> Correctly apply android:theme attribute from <include> tag

Bug: 19865544
Change-Id: I6b50fa9f28a9d7f1685f9f55e505c630c12c53a2
ridge/src/android/view/BridgeInflater.java
ridge/src/android/view/LayoutInflater_Delegate.java
1599a4a0dc066646e06a63cddb9cb28211a1160d 19-Mar-2015 Diego Perez <diegoperez@google.com> Merge "Make sure shaders use a color model compatible with the destination."
4f3b8527e33c6922e329c790d12d328380040c4c 19-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Update JRE for runConfigurations.

The intensive bridge tests use some libraries that are compiled with
1.7. All other tests are capable of running on JRE 1.6. Thus, change the
run configurations appropriately.

Change-Id: Iaea0fef2e58877578b36ac2ffe0b20b3a55f572c
idea/runConfigurations/All_in_bridge.xml
idea/runConfigurations/Bridge_quick.xml
idea/runConfigurations/Create.xml
6092c044aaee2e27f6d0a469f1a314b48292a722 11-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Fix project settings. [DO NOT MERGE]

1. Update layoutlib_api source path.
2. Update jdk version
3. Update nullity annotations.

Change-Id: I48db7dbd7ba5ff02fcf11672608b75e072385166
(cherry picked from commit 7b2cae5072321da5d67f9d12dea10871326f3477)
idea/libraries/layoutlib_api_prebuilt.xml
idea/misc.xml
4025c96faceb38eae15bd7f9e54214417c1aa628 18-Mar-2015 Dianne Hackborn <hackbod@google.com> Fix build.

Change-Id: I6797bb2b5c85961c3bcb3fa8950bae121232f592
ridge/src/android/view/IWindowManagerImpl.java
84e550f5e6b286f6f2194d0a01b460df331dae03 18-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Fix layoutlib tests.

The date picker and calendar widgets show the current date. Comparing
widgets showing current date with a static golden image wasn't the best
idea.

- Change the widgets to custom widgets that set a predefined date/time
so that the rendering is independent of the system date.
- Change the layout slightly to make it look nicer.
- Update gradle plugin version.

Change-Id: Ia3fb4965a372a28087a0d8c9df40fd6779df6050
ridge/tests/res/testApp/MyApplication/build.gradle
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/BuildConfig.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/CustomCalendar.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/CustomDate.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/MyActivity.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$attr.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$dimen.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$drawable.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$id.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$layout.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$menu.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$string.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$style.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R.class
ridge/tests/res/testApp/MyApplication/golden/activity.png
ridge/tests/res/testApp/MyApplication/gradle/wrapper/gradle-wrapper.properties
ridge/tests/res/testApp/MyApplication/src/androidTest/java/com/android/layoulib/test/myapplication/ApplicationTest.java
ridge/tests/res/testApp/MyApplication/src/main/java/com/android/layoutlib/test/myapplication/CustomCalendar.java
ridge/tests/res/testApp/MyApplication/src/main/java/com/android/layoutlib/test/myapplication/CustomDate.java
ridge/tests/res/testApp/MyApplication/src/main/res/layout/layout.xml
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
74bf54037cdf23759530da0560aede33e6a35c5c 17-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 199a70f1: am 576801ff: am 842eee9f: am 1f9a26af: am 158c08bc: am ada85905: Fix AppCompat action bar theming.

* commit '199a70f1820c38a9f1db1697ad91c4f5f07d00aa':
Fix AppCompat action bar theming.
a0c3191b74d1119999d94c71de8d916e128ea009 17-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 0f8c9d1d: am a5be9a7d: am 38467b5f: am 9a00f1c8: am 79f7fce7: am 2e4d9324: Fix NoActionBar themes rendering.

* commit '0f8c9d1df28ed10b1c9013ddd315b306868e349d':
Fix NoActionBar themes rendering.
199a70f1820c38a9f1db1697ad91c4f5f07d00aa 17-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 576801ff: am 842eee9f: am 1f9a26af: am 158c08bc: am ada85905: Fix AppCompat action bar theming.

* commit '576801ff82a85c4de19404dfe364eef7184b84e0':
Fix AppCompat action bar theming.
0f8c9d1df28ed10b1c9013ddd315b306868e349d 17-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am a5be9a7d: am 38467b5f: am 9a00f1c8: am 79f7fce7: am 2e4d9324: Fix NoActionBar themes rendering.

* commit 'a5be9a7d2d2cbcd3892fc916c9a944745024881d':
Fix NoActionBar themes rendering.
576801ff82a85c4de19404dfe364eef7184b84e0 17-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 842eee9f: am 1f9a26af: am 158c08bc: am ada85905: Fix AppCompat action bar theming.

* commit '842eee9f816a2e35bf3c9ce6c14cd5e43684265b':
Fix AppCompat action bar theming.
a5be9a7d2d2cbcd3892fc916c9a944745024881d 17-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 38467b5f: am 9a00f1c8: am 79f7fce7: am 2e4d9324: Fix NoActionBar themes rendering.

* commit '38467b5fbbc09ad05624454f735d27ada25565c8':
Fix NoActionBar themes rendering.
1f9a26af95abba385b612c734d1d5e32d9e3f363 17-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 158c08bc: am ada85905: Fix AppCompat action bar theming.

* commit '158c08bcf1cd0bc702748ee2a4cf6aa259c26147':
Fix AppCompat action bar theming.
9a00f1c84b7a7936a12415a08604ac8fb98ec5ea 17-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 79f7fce7: am 2e4d9324: Fix NoActionBar themes rendering.

* commit '79f7fce7a49e7b7cd414ff5c3fdb5cbaae45c1f1':
Fix NoActionBar themes rendering.
158c08bcf1cd0bc702748ee2a4cf6aa259c26147 17-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am ada85905: Fix AppCompat action bar theming.

* commit 'ada8590547348b77d8cbd56abdb8fadb3e72c015':
Fix AppCompat action bar theming.
79f7fce7a49e7b7cd414ff5c3fdb5cbaae45c1f1 17-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 2e4d9324: Fix NoActionBar themes rendering.

* commit '2e4d93245764a1c1d7515361ddbb8fc1665f814e':
Fix NoActionBar themes rendering.
ada8590547348b77d8cbd56abdb8fadb3e72c015 13-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Fix AppCompat action bar theming.

Use themed context to inflate the action bar when AppCompat is used.
Also fix minor issues exposed as a result.

- Set project callback when LayoutInflater is created by
LayoutInflater.from(context).
- Remove duplication of code to get base context from context wrapper.

Bug: http://b.android.com/159711
Change-Id: I379ba2ba71c0ef547460987c3aa5db521c7de967
ridge/src/android/view/BridgeInflater.java
ridge/src/android/view/MenuInflater_Delegate.java
ridge/src/android/view/ViewGroup_Delegate.java
ridge/src/com/android/internal/view/menu/BridgeMenuItemImpl.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/bars/AppCompatActionBar.java
ridge/src/com/android/layoutlib/bridge/bars/BridgeActionBar.java
b9b8aef94e5bad8f5f03f686a2d3d8a09c045a7b 13-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Fix import order.

Change-Id: I50bfbf4011290683a1c6adb94e0b6fa301dcc75b
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
2e4d93245764a1c1d7515361ddbb8fc1665f814e 13-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Fix NoActionBar themes rendering.

Also fix some warnings.

Bug: http://b.android.com/159780
Change-Id: I64fd4259b802722af7a271f51d5943018ed11e9e
ridge/src/com/android/layoutlib/bridge/bars/AppCompatActionBar.java
ridge/src/com/android/layoutlib/bridge/bars/BridgeActionBar.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
4423d91de5300d3fd318bf5bc2d4d7e5bb856abf 02-Mar-2015 Clara Bayarri <clarabayarri@google.com> Add a type parameter to startActionMode() calls.

This requires adding a new method to View and Window.Callback to pass
down the type as a parameter.

For compatibility purposes, the new method implementations keep the
type and call the old method, in case clients have subclassed it.

Change-Id: If5d857f131e33be8cc6a8814f2e9c4e85ad2da25
ridge/src/android/view/WindowCallback.java
28070f43a64069a95f7cb2e5c463bdee41e58294 13-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am a4277e14: am a4ed5e94: am e770c5e4: am c44430a3: Merge "Tools attribute improvements for RecyclerView LayoutManager." into lmp-mr1-dev

* commit 'a4277e149355c53fde73a4e1ef44aa665af31cf0':
Tools attribute improvements for RecyclerView LayoutManager.
a53f76dccefed73de71bb396179ad4291d669e1f 13-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 3d024d4c: am 65215edd: am f0d324e5: am 71ba1230: am efc09c64: am 78660423: Merge "Fix cyclic dependency in BlendComposite and BlendingMode." into lmp-dev

* commit '3d024d4c22b896c95ef4c98610c3db7c58a639ed':
Fix cyclic dependency in BlendComposite and BlendingMode.
1bbb9e1d5d6c5620cf5da3309159620c74f64cd1 13-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am fceec0e1: am c7fc094d: am d44af610: am b3cfb334: Merge "Fix rare NPE in BridgeContext." into lmp-mr1-dev

* commit 'fceec0e124a55b25d59f2af5279c70ac045d6771':
Fix rare NPE in BridgeContext.
cfed1b5222d6889312cfa8b7226fb07effd06297 13-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am ca9264ea: am a695f87d: am fa3c6650: am 71518174: Merge "Fix project settings." into lmp-mr1-dev

* commit 'ca9264eab03cf787fb4dfc62a2313d9c3b45a05e':
Fix project settings.
d88a9bc821a660bd86056e39fe8189d521b0f860 13-Mar-2015 Andreas Gampe <agampe@google.com> resolved conflicts for merge of ef1741d2 to master

Change-Id: I5379d5f756695f5176d92249ac6304bffcf95751
158ac454073a460375123d7d05152a7c6490efb6 12-Mar-2015 Diego Perez <diegoperez@google.com> Make sure shaders use a color model compatible with the destination.

Change-Id: Iaf6e14bb86835c36a5b0c37519ac2ee794d10081
ridge/src/android/graphics/BitmapShader_Delegate.java
ridge/src/android/graphics/LinearGradient_Delegate.java
ridge/src/android/graphics/RadialGradient_Delegate.java
ridge/src/android/graphics/SweepGradient_Delegate.java
a4277e149355c53fde73a4e1ef44aa665af31cf0 12-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am a4ed5e94: am e770c5e4: am c44430a3: Merge "Tools attribute improvements for RecyclerView LayoutManager." into lmp-mr1-dev

* commit 'a4ed5e94117a2c6c1734138faed09490245c602f':
Tools attribute improvements for RecyclerView LayoutManager.
a4ed5e94117a2c6c1734138faed09490245c602f 12-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am e770c5e4: am c44430a3: Merge "Tools attribute improvements for RecyclerView LayoutManager." into lmp-mr1-dev

* commit 'e770c5e45a139d709976f8c1dbb821733968b5a8':
Tools attribute improvements for RecyclerView LayoutManager.
c44430a36813dc4afb6000279254e578bc5d0391 12-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Tools attribute improvements for RecyclerView LayoutManager." into lmp-mr1-dev
3d024d4c22b896c95ef4c98610c3db7c58a639ed 12-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 65215edd: am f0d324e5: am 71ba1230: am efc09c64: am 78660423: Merge "Fix cyclic dependency in BlendComposite and BlendingMode." into lmp-dev

* commit '65215edd7acada70c2bcb060daec6ff718ae92ba':
Fix cyclic dependency in BlendComposite and BlendingMode.
65215edd7acada70c2bcb060daec6ff718ae92ba 12-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am f0d324e5: am 71ba1230: am efc09c64: am 78660423: Merge "Fix cyclic dependency in BlendComposite and BlendingMode." into lmp-dev

* commit 'f0d324e531e395674f71b3944623bd17fe74b372':
Fix cyclic dependency in BlendComposite and BlendingMode.
fceec0e124a55b25d59f2af5279c70ac045d6771 12-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am c7fc094d: am d44af610: am b3cfb334: Merge "Fix rare NPE in BridgeContext." into lmp-mr1-dev

* commit 'c7fc094d319998572087e983e21c62de9f318139':
Fix rare NPE in BridgeContext.
ca9264eab03cf787fb4dfc62a2313d9c3b45a05e 12-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am a695f87d: am fa3c6650: am 71518174: Merge "Fix project settings." into lmp-mr1-dev

* commit 'a695f87db757e89ee99d3c672037b479dce3e4e7':
Fix project settings.
ef1741d27b19fe63a7d8541b8745e166eb135252 12-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 05cba2f8: am 338a5a88: am b171be1a: Merge "Add RecyclerView support." into lmp-mr1-dev

* commit '05cba2f8acd88d40e1bb149915fe590d4a21b74d':
Add RecyclerView support.
71ba12308e338595d8068ff788bb5c8abfcfe515 12-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am efc09c64: am 78660423: Merge "Fix cyclic dependency in BlendComposite and BlendingMode." into lmp-dev

* commit 'efc09c644fa4e8354d54485aab6c0b18868284eb':
Fix cyclic dependency in BlendComposite and BlendingMode.
c7fc094d319998572087e983e21c62de9f318139 12-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am d44af610: am b3cfb334: Merge "Fix rare NPE in BridgeContext." into lmp-mr1-dev

* commit 'd44af6108b18f3de05ed3f61d056d9c5b36ff8be':
Fix rare NPE in BridgeContext.
a695f87db757e89ee99d3c672037b479dce3e4e7 12-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am fa3c6650: am 71518174: Merge "Fix project settings." into lmp-mr1-dev

* commit 'fa3c665019ace11140b3c5677d02c9711fc4d86d':
Fix project settings.
05cba2f8acd88d40e1bb149915fe590d4a21b74d 12-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 338a5a88: am b171be1a: Merge "Add RecyclerView support." into lmp-mr1-dev

* commit '338a5a88fe8ecf8a724fcfaa2888a7c0fe53cb34':
Add RecyclerView support.
efc09c644fa4e8354d54485aab6c0b18868284eb 12-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 78660423: Merge "Fix cyclic dependency in BlendComposite and BlendingMode." into lmp-dev

* commit '78660423900fa255cc83b85320e98d5184be393b':
Fix cyclic dependency in BlendComposite and BlendingMode.
0412b317acfb64c9d78edcdfd3a92634e9b62b80 12-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Tools attribute improvements for RecyclerView LayoutManager.

1. Change tools attribute for layout manager from layoutManagerType to
LayoutManager.
2. Support classnames in the tools attribute.

This change doesn't try to supprt arbitrary classnames for now. The
reason for this is that the new layoutlib API is supposed to contain a
new method for inflating custom classes that are not views. This will
allow us to throw better error messages. Without the new API, trying for
different constructors, will result in a error messages being logged.

Change-Id: I3a31359c06b7452bfd973c3e5e54f9038acccfaa
ridge/src/android/view/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/BridgeConstants.java
ridge/src/com/android/layoutlib/bridge/android/support/RecyclerViewUtil.java
5521f65ecb0b91a6847bd78afc4e8c927b6b78ef 12-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Fix cyclic dependency in BlendComposite and BlendingMode.

Introduced in commit 1a10ca7e526736b4fd143f7c9f3b29643c0062a4

Bug: http://b.android.com/159708
Change-Id: I6add5be3a933bbe4f8d888906e2aa1b2e35d045a
ridge/src/android/graphics/BlendComposite.java
85d72c4535003af3b9df77bd6eaa2b33e8a7cba2 11-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Fix rare NPE in BridgeContext.

Also fixed some deprecation warnings.

Change-Id: I2fa00996dab0b008b9ca07a5382a059e5780529d
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
7b2cae5072321da5d67f9d12dea10871326f3477 11-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Fix project settings.

1. Update layoutlib_api source path.
2. Update jdk version
3. Update nullity annotations.

Change-Id: I48db7dbd7ba5ff02fcf11672608b75e072385166
idea/libraries/layoutlib_api_prebuilt.xml
idea/misc.xml
d345f44a87de1088fcd19e021238852bbffbbaec 06-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Add RecyclerView support.

Bug: http://b.android.com/72117
Change-Id: Iba95baff59f1b715f91da25e15acf27bc052d95e
ridge/src/android/view/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/BridgeConstants.java
ridge/src/com/android/layoutlib/bridge/android/SessionParamsFlags.java
ridge/src/com/android/layoutlib/bridge/android/support/RecyclerViewUtil.java
ridge/src/com/android/layoutlib/bridge/impl/RenderDrawable.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/util/ReflectionUtils.java
fe12aa77743c4a4a98409418a6cbb0be11b8fee5 09-Mar-2015 Diego Perez <diegoperez@google.com> Add support for the new native Builder class on StaticLayout.

This patch updates StaticLayout_Delegate to support the new Builder
class introduced in ag/646289.

Change-Id: I9f8c528b8751ce69482e33ac6f1bc42406a0b606
ridge/src/android/text/StaticLayout_Delegate.java
f4faeac3525fe1ce3707ab785a1651aec367589d 05-Mar-2015 John Reck <jreck@google.com> Cleanup Bitmap JNI attempt #2

Original version missed a spot

This reverts commit c02977e3bbfaaedcb1b1d67e1692becc7dddd59b.

Change-Id: I56244ce10d709fcdef42a001fe4c6ba7b6bbb04d
ridge/src/android/graphics/Bitmap_Delegate.java
3782882192905147d05cf09a0ae568c19c2c2e22 05-Mar-2015 Andrew Shulaev <ddrone@google.com> Merge "Added function to render a drawable in all available states"
1f158819bc7cf58f97e47fabfaf23b2fb838f2eb 05-Mar-2015 Andrew Shulaev <ddrone@google.com> Added function to render a drawable in all available states

This reverts commit 01cdf8b135be3bf67b9386dc929109c3db82c730.

Change-Id: I596855047d78c3c718744ad61432fc45e1239634
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/android/RenderParamsFlags.java
ridge/src/com/android/layoutlib/bridge/android/SessionParamsFlags.java
ridge/src/com/android/layoutlib/bridge/impl/RenderDrawable.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
d5e11f6f4717cee4ccbd3fb01af802dc208cb9c9 05-Mar-2015 Diego Perez <diegoperez@google.com> Merge "Fix crash when shadowSize is 0"
01cdf8b135be3bf67b9386dc929109c3db82c730 04-Mar-2015 Andrew Shulaev <ddrone@google.com> Revert "Added function to render a drawable in all available states"

This reverts commit 63483e17de4d2441acaabcee4185b0bb25e1d94c.

Change-Id: I07fced229759e63d4fa4f94b7dac48b3e9342b18
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/android/RenderParamsFlags.java
ridge/src/com/android/layoutlib/bridge/android/SessionParamsFlags.java
ridge/src/com/android/layoutlib/bridge/impl/RenderDrawable.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
63483e17de4d2441acaabcee4185b0bb25e1d94c 04-Mar-2015 Andrew Shulaev <ddrone@google.com> Added function to render a drawable in all available states

Change-Id: I230cc5775a09120efe9c82a4017b001aa510ddff
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/android/RenderParamsFlags.java
ridge/src/com/android/layoutlib/bridge/android/SessionParamsFlags.java
ridge/src/com/android/layoutlib/bridge/impl/RenderDrawable.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
e81096458f689ab3c0c4dbab2452722c3e3623c4 27-Feb-2015 Diego Perez <diegoperez@google.com> Fix crash when shadowSize is 0

Change-Id: I9f131afc95a2571fbc8a737df37f43653cfbb90d
ridge/src/android/view/ShadowPainter.java
6672afbe7d84f2debcc712459d5415808cf59a57 02-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 70775bed: am fb96187b: am 32dc37b7: am f2c1c096: am 6ed9b75a: am 72d75f8d: Merge "Correct PorterDuff filters." into lmp-dev

* commit '70775beddd3773a942084f5ef939da0a70065475':
Correct PorterDuff filters.
5ae7f103beb9064044af42236491a9b4efba375e 02-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 6e64fabe: am 7c4ab9de: am 4e87709b: am 2022b0ff: am d003e813: am 369ad57b: Merge "Fix codestyle for switch statements." into lmp-dev

* commit '6e64fabecafcc4c367dc04cd071ff8ddc8bb3d85':
Fix codestyle for switch statements.
a104b1886b202e8d1414bd0041aaf5ce234beb86 02-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 1fe1022d: am 4a194d3b: am 62500307: am aff0ec93: am 81449b2c: am 10d620ff: Merge "Better error msg for StateList/Hexadecimal Color." into lmp-dev

* commit '1fe1022dbd7642373e0e2d465d29ad3e1226a8b2':
Better error msg for StateList/Hexadecimal Color.
4c74da90dba32e608e956cccb6c150db0540a78b 02-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am c74295db: am bf815f49: am 7b4caab1: am 07d453fa: Merge "Add status bar time for 5.1" into lmp-mr1-dev

* commit 'c74295db3048d964679913f146511ce3ad838089':
Add status bar time for 5.1
70775beddd3773a942084f5ef939da0a70065475 02-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am fb96187b: am 32dc37b7: am f2c1c096: am 6ed9b75a: am 72d75f8d: Merge "Correct PorterDuff filters." into lmp-dev

* commit 'fb96187bb6004e5d0b22e4d942aa236a08d8913b':
Correct PorterDuff filters.
6e64fabecafcc4c367dc04cd071ff8ddc8bb3d85 02-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 7c4ab9de: am 4e87709b: am 2022b0ff: am d003e813: am 369ad57b: Merge "Fix codestyle for switch statements." into lmp-dev

* commit '7c4ab9deaaea0e0a273c7bdf37b6d9d1c8cbab07':
Fix codestyle for switch statements.
1fe1022dbd7642373e0e2d465d29ad3e1226a8b2 02-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 4a194d3b: am 62500307: am aff0ec93: am 81449b2c: am 10d620ff: Merge "Better error msg for StateList/Hexadecimal Color." into lmp-dev

* commit '4a194d3b7f3ea4aebc5a1a8f95ccaac248c1b89d':
Better error msg for StateList/Hexadecimal Color.
fb96187bb6004e5d0b22e4d942aa236a08d8913b 02-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 32dc37b7: am f2c1c096: am 6ed9b75a: am 72d75f8d: Merge "Correct PorterDuff filters." into lmp-dev

* commit '32dc37b72e787ca9323c01aa86e65694b6ff0cf7':
Correct PorterDuff filters.
7c4ab9deaaea0e0a273c7bdf37b6d9d1c8cbab07 02-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 4e87709b: am 2022b0ff: am d003e813: am 369ad57b: Merge "Fix codestyle for switch statements." into lmp-dev

* commit '4e87709b8b41a12d6caf2bd1110beed20e5b88e5':
Fix codestyle for switch statements.
4a194d3b7f3ea4aebc5a1a8f95ccaac248c1b89d 02-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 62500307: am aff0ec93: am 81449b2c: am 10d620ff: Merge "Better error msg for StateList/Hexadecimal Color." into lmp-dev

* commit '6250030736e3ea25bacc92eba4c269dc6a6ee3db':
Better error msg for StateList/Hexadecimal Color.
c74295db3048d964679913f146511ce3ad838089 02-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am bf815f49: am 7b4caab1: am 07d453fa: Merge "Add status bar time for 5.1" into lmp-mr1-dev

* commit 'bf815f495270b466e53bec20772b41ff4397ac83':
Add status bar time for 5.1
f2c1c09683a5cfa23e8394fe5a10e84803f4168b 02-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 6ed9b75a: am 72d75f8d: Merge "Correct PorterDuff filters." into lmp-dev

* commit '6ed9b75a45ec4bc62b4a0fac2c86479d61918863':
Correct PorterDuff filters.
2022b0ffdd7c91e8435bc204ad9aedd658254166 02-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am d003e813: am 369ad57b: Merge "Fix codestyle for switch statements." into lmp-dev

* commit 'd003e8133167f2b6741f8eb925fdc9f77c2800a5':
Fix codestyle for switch statements.
aff0ec93f2a734a68673f1f7337533b6d93cb256 02-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 81449b2c: am 10d620ff: Merge "Better error msg for StateList/Hexadecimal Color." into lmp-dev

* commit '81449b2c4a63392bff22d77f331f4db52011884b':
Better error msg for StateList/Hexadecimal Color.
bf815f495270b466e53bec20772b41ff4397ac83 02-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 7b4caab1: am 07d453fa: Merge "Add status bar time for 5.1" into lmp-mr1-dev

* commit '7b4caab1a87b659498d30af194ae511526c503ba':
Add status bar time for 5.1
6ed9b75a45ec4bc62b4a0fac2c86479d61918863 02-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 72d75f8d: Merge "Correct PorterDuff filters." into lmp-dev

* commit '72d75f8d9fb46c04f0458e1f36b064e2b8c3de71':
Correct PorterDuff filters.
d003e8133167f2b6741f8eb925fdc9f77c2800a5 02-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 369ad57b: Merge "Fix codestyle for switch statements." into lmp-dev

* commit '369ad57b00f1c94c80f0f80ef2e7063a23a94a84':
Fix codestyle for switch statements.
81449b2c4a63392bff22d77f331f4db52011884b 02-Mar-2015 Deepanshu Gupta <deepanshu@google.com> am 10d620ff: Merge "Better error msg for StateList/Hexadecimal Color." into lmp-dev

* commit '10d620ff2c4770e926b693e833105e8dbbd5fa86':
Better error msg for StateList/Hexadecimal Color.
72d75f8d9fb46c04f0458e1f36b064e2b8c3de71 02-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Correct PorterDuff filters." into lmp-dev
369ad57b00f1c94c80f0f80ef2e7063a23a94a84 02-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Fix codestyle for switch statements." into lmp-dev
10d620ff2c4770e926b693e833105e8dbbd5fa86 02-Mar-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Better error msg for StateList/Hexadecimal Color." into lmp-dev
2045061aac9e8b0f93e426a2cf67cecc813a9020 27-Feb-2015 Deepanshu Gupta <deepanshu@google.com> Add status bar time for 5.1

Change-Id: I9469cdbbc5cbfe5cb99d9c4ee6f4e299246d409f
ridge/src/com/android/layoutlib/bridge/bars/Config.java
1a10ca7e526736b4fd143f7c9f3b29643c0062a4 26-Feb-2015 Deepanshu Gupta <deepanshu@google.com> Correct PorterDuff filters.

1. Remove unused modes - makes the class more manageable, and missing
modes can always be readded from the git history.
2. Reuse the existing BlendComposite instances where possible.
3. Fix incorrect alpha computation for multiply mode.
4. Change the alpha computation for all blend modes to compenstate for
the fact that the color filter image that we create extends beyond the
image it is inteded to be applied to.

Change-Id: Iedebf289a23325ee4c6d406dcad46a9edb1855c7
ridge/src/android/graphics/BlendComposite.java
ridge/src/android/graphics/PorterDuffColorFilter_Delegate.java
d68448a601687e6f1fbd44b8f8471ad06686a7fa 26-Feb-2015 Deepanshu Gupta <deepanshu@google.com> Fix codestyle for switch statements.

Fix intellij's codestyle settings for indenting switch/case statement.

Change-Id: I905231538fef0fcd7fa4e742f937b8da34f2e30f
idea/codeStyleSettings.xml
6e53931f49f49245deef8622eb8e7dc6ccf04536 25-Feb-2015 Jeff Brown <jeffbrown@google.com> Add Context.getSystemService(Class<?>).

Added an overload of getSystemService() that takes a class instead of a
service name to eliminate the extra cast and provide more type safety.

Cleaned up docs.

Removed the default constructor of BatteryManager which should not have
existed.

Change-Id: I9da46b20641fc83ecd3342560e5b94cb721f289c
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
1fb55286438967f82e305a8449c0528a7cd07fce 24-Feb-2015 Chad Jones <chadj@google.com> resolved conflicts for merge of 57bb5f5c to master

Change-Id: Id5dfe7fc919305658312771a031c0764cef5515c
a13ca400d17750321ac66f6362d7467a3f21d845 24-Feb-2015 Deepanshu Gupta <deepanshu@google.com> 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.
57bb5f5c8bf1875d2c6843237f518e5a1f9fe597 24-Feb-2015 Joe LaPenna <jlapenna@google.com> 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.
c0c395162ff14b83694158663470ad60e065d9a9 24-Feb-2015 Joe LaPenna <jlapenna@google.com> Merge "Hold a wake lock while dozing when display updates are pending." into lmp-mr1-modular-dev
68501b87d2891ae9bf65d400f9cd755e197fda0c 23-Feb-2015 Deepanshu Gupta <deepanshu@google.com> 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
ridge/src/android/content/res/BridgeResources.java
01d5286f388303551a2eb8f57e210f6d7a690cb5 23-Feb-2015 Deepanshu Gupta <deepanshu@google.com> 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.
99142d298213e93f673057c2334b04b38f7e4450 23-Feb-2015 Deepanshu Gupta <deepanshu@google.com> am 3f8e2b93: am 30a67cd1: Merge "Set forceFramework correctly for included layouts." into lmp-dev

* commit '3f8e2b9302fba0ace67fb0459d6ffb0884c4d80b':
Set forceFramework correctly for included layouts.
3f8e2b9302fba0ace67fb0459d6ffb0884c4d80b 23-Feb-2015 Deepanshu Gupta <deepanshu@google.com> am 30a67cd1: Merge "Set forceFramework correctly for included layouts." into lmp-dev

* commit '30a67cd17af03e53b8be5638f7f70d2989a7cd78':
Set forceFramework correctly for included layouts.
33c1c0779637cd1e90c671f35e6c1340301d44ab 23-Feb-2015 Deepanshu Gupta <deepanshu@google.com> Set forceFramework correctly for included layouts.

Bug: http://b.android.com/151326
Change-Id: I759f6e1a7a1c83bbbb771ddbb92843a105acffa4
ridge/src/android/view/BridgeInflater.java
2c5e85b303077d2120b428bd4c7e6ecb6970935b 16-Feb-2015 Diego Perez <diegoperez@google.com> 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
ridge/src/com/android/layoutlib/bridge/android/SessionParamsFlags.java
ridge/src/com/android/layoutlib/bridge/impl/GcSnapshot.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
c2932a1be3e320679034212698aff376d5104dbe 21-Nov-2014 Jeff Brown <jeffbrown@google.com> 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
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
dc630c64be672b9330a272a40cee699e463fd248 18-Feb-2015 Deepanshu Gupta <deepanshu@google.com> 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.
dde889111f71ba505a0671f657f5d8537d9f293b 18-Feb-2015 Diego Perez <diegoperez@google.com> 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
7b78e8373e5f3a6c80237607cbd2abba13b0fb33 18-Feb-2015 Deepanshu Gupta <deepanshu@google.com> 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
7bf58d0c5523a9b76ab1d570acb92514e8fff8ba 17-Feb-2015 Deepanshu Gupta <deepanshu@google.com> 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.
412e6439b2d372565f14cc1dce0ff25f106975af 17-Feb-2015 Diego Perez <diegoperez@google.com> 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
5cc0e76464f170d987370bb7bf9c04d746795f12 17-Feb-2015 Deepanshu Gupta <deepanshu@google.com> 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
0a300b897711bfa39e0d30e2fa61664f01fb58d8 17-Feb-2015 Deepanshu Gupta <deepanshu@google.com> am ad879adb: Merge "Add Asset management support for fonts." into lmp-dev
automerge: 0684991

* commit '068499111c173fdd9869e7dbe5b9de857aca1c2d':
Add Asset management support for fonts.
a0fb87a3b831e8eb4e4f7e03fc170cf8f93a2161 17-Feb-2015 Diego Perez <diegoperez@google.com> 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
221d732005b04b5f979d2e03e8ebe00160e52ca3 17-Feb-2015 Deepanshu Gupta <deepanshu@google.com> am 12c9e498: Merge "Changes made by intelliJ 14.1" into lmp-dev
automerge: 4e47416

* commit '4e47416012b8cb88d564a04a29c0b79a28b9e529':
Changes made by intelliJ 14.1
068499111c173fdd9869e7dbe5b9de857aca1c2d 13-Feb-2015 Deepanshu Gupta <deepanshu@google.com> am ad879adb: Merge "Add Asset management support for fonts." into lmp-dev

* commit 'ad879adb65ffa577844738522ab6d7d30aba2ead':
Add Asset management support for fonts.
a912fedbc5fba99fb75884a1941d58170822ceb4 13-Feb-2015 Diego Perez <diegoperez@google.com> 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
4e47416012b8cb88d564a04a29c0b79a28b9e529 13-Feb-2015 Deepanshu Gupta <deepanshu@google.com> am 12c9e498: Merge "Changes made by intelliJ 14.1" into lmp-dev

* commit '12c9e4980e889d1c72656a4062f9cee9a0e6f15a':
Changes made by intelliJ 14.1
ad879adb65ffa577844738522ab6d7d30aba2ead 13-Feb-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Add Asset management support for fonts." into lmp-dev
98c3461acd6699ab0448f1785909d0d39cd61b5a 13-Feb-2015 Diego Perez <diegoperez@google.com> Merge "Do not paint shadow if outside of the clip area" into lmp-dev
12c9e4980e889d1c72656a4062f9cee9a0e6f15a 13-Feb-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Changes made by intelliJ 14.1" into lmp-dev
10e23ab61b820fb3149b2f89003753d98ebd6a80 12-Feb-2015 Chet Haase <chet@google.com> Add ClipReveal window transition for application launch

Issue #19362772 Better material launch animations

Change-Id: Ic94fde910b6b5554ee954dfbbf374949f9eb189d
ridge/src/android/view/IWindowManagerImpl.java
b10e33ff804a831c71be9303146cea892b9aeb5d 04-Feb-2015 Jorim Jaggi <jjaggi@google.com> Split up android.policy into framework.jar and services.jar 1/3

Change-Id: Ifd69f1f3dd308a7e17a1442e2f3950da8b03cec4
ridge/src/com/android/internal/policy/PolicyManager.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
19740a62124a2a6cf13f9fec78a6d629d7bea1bd 04-Feb-2015 Deepanshu Gupta <deepanshu@google.com> Changes made by intelliJ 14.1

Change-Id: Ia130266ad994ef327629db25a18f9d5702b983f4
idea/codeStyleSettings.xml
idea/misc.xml
0dfba38010dc3d3dbab5801427726f252113ac6c 04-Feb-2015 Diego Perez <diegoperez@google.com> Do not paint shadow if outside of the clip area

Change-Id: I064ccc1d1b206a29d9d0db1384782cb5dd5c65ca
ridge/src/android/view/ViewGroup_Delegate.java
d51834bdfad0cd3142ac464ab3a3b0db14f884c3 28-Jan-2015 Deepanshu Gupta <deepanshu@google.com> Add Asset management support for fonts.

Change-Id: I10ca67dcffe244667d4ae0bda65dbc1aa6691d50
ridge/src/android/content/res/BridgeAssetManager.java
ridge/src/android/graphics/FontFamily_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
b4506586dc4374697220408a63b6a5b293cb89f4 31-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 3d5535cf: Merge "Limited AppCompat support" into lmp-dev automerge: 7789447 automerge: 580937f automerge: c053438
automerge: df5a198

* commit 'df5a1987108539c703477adff3749d647ba313c5':
Limited AppCompat support
a925a06a9da181b5293885ff51193e9b23473292 31-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 1d59871e: Merge "Resource resolution fixes." into lmp-dev automerge: 7e683bd automerge: 1575ca6 automerge: 862cdd6
automerge: 6a43990

* commit '6a439908fcc103696dd90bc42494231b54b7a10b':
Resource resolution fixes.
df5a1987108539c703477adff3749d647ba313c5 31-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 3d5535cf: Merge "Limited AppCompat support" into lmp-dev automerge: 7789447 automerge: 580937f
automerge: c053438

* commit 'c05343828611ed0b82fae4edf7fe11e0e9087db1':
Limited AppCompat support
6a439908fcc103696dd90bc42494231b54b7a10b 31-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 1d59871e: Merge "Resource resolution fixes." into lmp-dev automerge: 7e683bd automerge: 1575ca6
automerge: 862cdd6

* commit '862cdd6f11490c060842599a58a400e284c937d9':
Resource resolution fixes.
580937fc45bc5ef97e45f1eaf67945a07c5ce41f 31-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 3d5535cf: Merge "Limited AppCompat support" into lmp-dev
automerge: 7789447

* commit '7789447bd97c851b7a09623a417300590e5439d5':
Limited AppCompat support
1575ca6e1a713f9d2e4a9f91bc6943ae10fde083 31-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 1d59871e: Merge "Resource resolution fixes." into lmp-dev
automerge: 7e683bd

* commit '7e683bdaddff77a24a36d420c5782b47795c5ccb':
Resource resolution fixes.
7789447bd97c851b7a09623a417300590e5439d5 31-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 3d5535cf: Merge "Limited AppCompat support" into lmp-dev

* commit '3d5535cfb7755c20619529649b025c4682013b85':
Limited AppCompat support
7e683bdaddff77a24a36d420c5782b47795c5ccb 31-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 1d59871e: Merge "Resource resolution fixes." into lmp-dev

* commit '1d59871e4e8a3a657dab3931d684706c45630a2f':
Resource resolution fixes.
224e931fed1220f175805fdec71a882649270aa7 16-Jan-2015 Deepanshu Gupta <deepanshu@google.com> Limited AppCompat support

Change-Id: I4ac7234c9533b9f47f070335c4cb6ae605d8a89f
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
ridge/src/com/android/layoutlib/bridge/bars/AppCompatActionBar.java
ridge/src/com/android/layoutlib/bridge/bars/BridgeActionBar.java
ridge/src/com/android/layoutlib/bridge/bars/CustomActionBarWrapper.java
ridge/src/com/android/layoutlib/bridge/bars/FrameworkActionBar.java
ridge/src/com/android/layoutlib/bridge/bars/FrameworkActionBarWrapper.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
165be0c70d128f0ece876d54e1c7e95ef04c6960 28-Jan-2015 Craig Mautner <cmautner@google.com> Remove TYPE_UNIVERSE_BACKGROUND from system

An experiment that is over and has been occupying space.

Fixes bug 18088522 item #7

Change-Id: Ib0fcaa24243ed9b0581143e1d5114c1fd2b0aa6e
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
83162a90278d9d52d8fca7ee20ba314b452261de 26-Jan-2015 Craig Mautner <cmautner@google.com> Eliminate groupId and add task to AppWindowToken

Simplifies access by eliminating indirect referencing.

Fixes bug 18088522 item #15.

Change-Id: I9049192a7f3e1028d60c4f2d4d4a0d4aad590aa4
ridge/src/android/view/IWindowManagerImpl.java
b6864ac6cde109be320e18188209eb8420c585f1 16-Jan-2015 Deepanshu Gupta <deepanshu@google.com> Resource resolution fixes.

1. Some dynamic ids weren't created and resulted in ResourceNotFound
exceptions.
2. Prevent NPE if a style attribute (eg. style="?attr/foo"), which
cannot be resolved, is resolved. This effectively, also results in
making it harder to catch misconfigured themes. However, support
library does it, and we don't want to throw errors when the library is
working as intended.

Change-Id: I731d8fb9209eb72b464d235d1072d416e132970b
ridge/src/android/content/res/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
c8807ebbd2f9a129372b4142b6db1378dad44127 10-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am f2e04ac7: am c598047d: am ca67a249: am bb600de6: am 74147527: am 8505c387: Special case AppCompat to show action bar. automerge: 8e2dd14
automerge: 2223018

* commit '22230189be8e811881ba24de1cde97f9882a7d45':
Special case AppCompat to show action bar.
22230189be8e811881ba24de1cde97f9882a7d45 10-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am f2e04ac7: am c598047d: am ca67a249: am bb600de6: am 74147527: am 8505c387: Special case AppCompat to show action bar.
automerge: 8e2dd14

* commit '8e2dd14e7d327f3d92d57092c24ea2064f04fd1c':
Special case AppCompat to show action bar.
f2e04ac7ea1cc2f91ca1562a14c7e0c261f869fe 10-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am c598047d: am ca67a249: am bb600de6: am 74147527: am 8505c387: Special case AppCompat to show action bar.

* commit 'c598047d67f64e690f682d82c0e77989c79ae465':
Special case AppCompat to show action bar.
c598047d67f64e690f682d82c0e77989c79ae465 10-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am ca67a249: am bb600de6: am 74147527: am 8505c387: Special case AppCompat to show action bar.

* commit 'ca67a249293d021808f349fa2e2f799451aeafe8':
Special case AppCompat to show action bar.
ca67a249293d021808f349fa2e2f799451aeafe8 10-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am bb600de6: am 74147527: am 8505c387: Special case AppCompat to show action bar.

* commit 'bb600de6e7c5c7a0a1d4b872d2ee100ccc353213':
Special case AppCompat to show action bar.
bb600de6e7c5c7a0a1d4b872d2ee100ccc353213 10-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 74147527: am 8505c387: Special case AppCompat to show action bar.

* commit '74147527357b9abd9d30b3a2dbd72a5172a35625':
Special case AppCompat to show action bar.
dbd64f7c904287f9e1bf5bb22385aace85274cab 15-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Support Locale.toLanguageTag on Java 6

Change-Id: I255e79e2c288cd24b350b7c26128bbbb0b2cb9a3
(cherry picked from commit 5cd9dde5a2a77c5095f985186d8f03147fd22870)
ridge/src/com/android/layoutlib/bridge/android/AndroidLocale.java
reate/README.txt
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/ReplaceMethodCallsAdapter.java
51fb7754fc9a232a225b31b37219f4b0dcba6711 10-Jul-2014 Deepanshu Gupta <deepanshu@google.com> 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
(cherry picked from commit e1960cc0b541cda93db94de5bef42dff922b9ec3)
reate/README.txt
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/ReplaceMethodCallsAdapter.java
8505c3870a17f41d23329344fe381cd9ff324bd2 09-Jan-2015 Deepanshu Gupta <deepanshu@google.com> Special case AppCompat to show action bar.

Bug: http://b.android.com/78944
Change-Id: I02d68d592d812016744716f99376cfefd519b21b
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
e1d1abc35d65c14ea702aa8e154cf31561aa667e 08-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 321bf433: am 2d14feb4: Merge "Replace java.util.LinkedHashMap.eldest()" into lmp-mr1-dev automerge: 03c822a

* commit '321bf43315ace2f091a54d514dd56902990bec7a':
Replace java.util.LinkedHashMap.eldest()
96cdef7b75bb8e29cef21d1f9258a4d0b71000e4 08-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am f0da92bf: am 169c11dd: Merge "Add missing DateFormat method." into lmp-mr1-dev automerge: 33b2de7

* commit 'f0da92bfda9a7b393cac87436173c1284c7d48be':
Add missing DateFormat method.
d00d143fbf00be44defffb96a9f50c856435883a 08-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am f45420d0: am 565b6b41: Merge "Update platform.dir search in tests." into lmp-mr1-dev automerge: 7e39385

* commit 'f45420d0bd912de3da9506bbae12a0e4b789bd84':
Update platform.dir search in tests.
321bf43315ace2f091a54d514dd56902990bec7a 08-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 2d14feb4: Merge "Replace java.util.LinkedHashMap.eldest()" into lmp-mr1-dev
automerge: 03c822a

* commit '03c822aa585c319fb9cd05f392d8518501cc4f79':
Replace java.util.LinkedHashMap.eldest()
f0da92bfda9a7b393cac87436173c1284c7d48be 08-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 169c11dd: Merge "Add missing DateFormat method." into lmp-mr1-dev
automerge: 33b2de7

* commit '33b2de7f34180983fe596ff9faa6955b032fa157':
Add missing DateFormat method.
f45420d0bd912de3da9506bbae12a0e4b789bd84 08-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 565b6b41: Merge "Update platform.dir search in tests." into lmp-mr1-dev
automerge: 7e39385

* commit '7e393853656387757da2531d4e504d7cf32e738e':
Update platform.dir search in tests.
2d14feb4c7185008111f3a6340f114a4c891e01c 08-Jan-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Replace java.util.LinkedHashMap.eldest()" into lmp-mr1-dev
169c11dd39ec44364168785a7a83fb747e893c9a 08-Jan-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Add missing DateFormat method." into lmp-mr1-dev
565b6b415a18ee0b99af8cb693b980e57136282b 08-Jan-2015 Deepanshu Gupta <deepanshu@google.com> Merge "Update platform.dir search in tests." into lmp-mr1-dev
1330f79f95fd14b53c393402fbcbf7b7bbdcbc60 08-Jan-2015 Deepanshu Gupta <deepanshu@google.com> Replace java.util.LinkedHashMap.eldest()

Provide an alternate implementation for the above method and replace the
calls to it, since the method is not available on host VM.

Change-Id: I329d86b457d1859b137da8fb2790ddd7f8efa788
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/ReplaceMethodCallsAdapter.java
reate/src/com/android/tools/layoutlib/java/LinkedHashMap_Delegate.java
ec4b131db5ebd8bc69c55ff4175d482b7adcda77 08-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 5df729ad: am a98a9b30: am d8e99c58: am 3bd33f1d: Merge "Fix tests on jenkins, take 2." into lmp-dev automerge: 0b1188e

* commit '5df729ad09b85cb68bdf37d58c5d429c2c8663a4':
Fix tests on jenkins, take 2.
5df729ad09b85cb68bdf37d58c5d429c2c8663a4 08-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am a98a9b30: am d8e99c58: am 3bd33f1d: Merge "Fix tests on jenkins, take 2." into lmp-dev automerge: 0b1188e

* commit 'a98a9b30bea74478b9d1b3f16e3713f5c864e648':
Fix tests on jenkins, take 2.
d8e99c5861b09de8f709c9284240e2c3115507bb 08-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 3bd33f1d: Merge "Fix tests on jenkins, take 2." into lmp-dev
automerge: 0b1188e

* commit '0b1188e3c1ff6c814dc64c51c83b19afa36d8ce9':
Fix tests on jenkins, take 2.
6aede34e246e03be618c30504fc2fc8b07f23225 07-Jan-2015 Deepanshu Gupta <deepanshu@google.com> Add missing DateFormat method.

Change-Id: Ia03023e65ef4a7ec90b61f1f538cbe74868c63c5
ridge/src/android/text/format/DateFormat_Delegate.java
0359b4b19962a4e3c44925907dedb4a9bfd916d0 07-Jan-2015 Deepanshu Gupta <deepanshu@google.com> Update platform.dir search in tests.

The tests search for a built sdk using some heuristics. The default path
of the built sdk has changed now, and this updates the search
accordingly.

Change-Id: I36d465d8c5f6cfd971bbdf95878fb144de233c6c
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
0b1188e3c1ff6c814dc64c51c83b19afa36d8ce9 07-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 3bd33f1d: Merge "Fix tests on jenkins, take 2." into lmp-dev

* commit '3bd33f1d9e8af826fa95095ca391d40f6c75ca2a':
Fix tests on jenkins, take 2.
d657b149274aeba0561e68f7172907b300d1b452 07-Jan-2015 Deepanshu Gupta <deepanshu@google.com> Fix tests on jenkins, take 2.

Change-Id: I67386c34a7abd7c3afdf9f0768f36f4786399be0
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
b5af276e5e5e0bf3d07df6845c0e323a59f6ae1b 07-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 2458f2b1: am fa490b78: am 984823f5: am 7f9582ce: am 48603a39: Fix tests on jenkins

* commit '2458f2b12b5ec266538b2019b0f14fca4e772bdf':
Fix tests on jenkins
2458f2b12b5ec266538b2019b0f14fca4e772bdf 07-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am fa490b78: am 984823f5: am 7f9582ce: am 48603a39: Fix tests on jenkins

* commit 'fa490b78df732f484475e214eec033f89c5b40b7':
Fix tests on jenkins
984823f543b58ff3c064a203762530f972870d64 07-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 7f9582ce: am 48603a39: Fix tests on jenkins

* commit '7f9582ce616a81b70794d7942b39f8442f5ef9d5':
Fix tests on jenkins
7f9582ce616a81b70794d7942b39f8442f5ef9d5 07-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 48603a39: Fix tests on jenkins

* commit '48603a39d4dd721d231c99e10908f4f00c4ec6b9':
Fix tests on jenkins
48603a39d4dd721d231c99e10908f4f00c4ec6b9 07-Jan-2015 Deepanshu Gupta <deepanshu@google.com> Fix tests on jenkins

When the tests are run on the build server, they are run from the jar,
as opposed to the extracted build, which is default when run from an
IDE. Thus, when class.getResourceAsStream() is called with ".." in the
path, it is not resolved properly. This change explicitly resolves the
relative path, so that the test is run properly on the server.

Change-Id: Ib5fabd617dca4052220e5173a8bf4fb4234254ff
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
416891cff2349ddf303d3d52a5cea62903228dc0 07-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 27ce2763: Merge "resolve conflict for 8c831b2f -> lmp-mr1-dev-plus-aosp again" into lmp-mr1-dev-plus-aosp

* commit '27ce2763325bcb7940232a11892e12fb86053cf7':
resolve conflict for 8c831b2f -> lmp-mr1-dev-plus-aosp again
31326967cf9ef9856ad3339a85dfb43b01e4e9ec 07-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am d5455fed: am aebd7fdb: am 565f2245: am a6671b70: am 6461e054: Merge "Add image comparison to LayoutLib tests." into lmp-dev

* commit 'd5455fedaf0a55dfe25cf94d6bbb9ecf6f305725':
Add image comparison to LayoutLib tests.
f509c98ae9c58a51164cd8817fe75a9a111ef8eb 07-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am a2a5ce49: resolved conflicts for merge of 8c831b2f to lmp-mr1-dev-plus-aosp

* commit 'a2a5ce49b29b8e3bf3cd695ff9f968e5579f4be2':
Remove Time from CreateInfo
148d8641c537d992f42ac107cd8017c798f8ed71 07-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 5760f153: am c2e9875d: am 229ce665: am 937db7a3: am 53f73a97: Merge "Add DatePicker, CalendarView to LayoutLib tests" into lmp-dev

* commit '5760f1535b0bb619c72e8d4478fc65283bd89eb7':
Add DatePicker, CalendarView to LayoutLib tests
af03e6eafc3cad45d8c12fe2159c73b096baf736 07-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 67cf0bf4: am 84097e39: am b187106c: am e69e4f8b: am f9bb0b5e: Merge "Fix DatePicker rendering." into lmp-dev

* commit '67cf0bf421370c756d93ca52697fbce03e34c09c':
Fix DatePicker rendering.
08de06ddf7ca806161c2403e97634e6076051119 07-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am adcd2241: am c7fe9793: am 48ab6bec: am 8c686ddd: am d20a518c: Merge "Make Preference-cookie map non static." into lmp-dev

* commit 'adcd224135e3c12f483547ffa8bb2cb0250ba923':
Make Preference-cookie map non static.
b79d83d34c564d100332cd06bb312d7621c0177c 07-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am d050df72: am addaeff9: am b88a65df: am cec8e5a1: am f861c0ce: Merge "Fix default initial value for preferences" into lmp-dev

* commit 'd050df7275137f9c57ce79a7b46d51e2d1fb9290':
Fix default initial value for preferences
b95475404e70f4f0c7a8d4a6a452439223ffe297 07-Jan-2015 Deepanshu Gupta <deepanshu@google.com> resolved conflicts for merge of 20db8770 to master

Change-Id: Ifffcf8e2741ec242d940c3ba81244d4df57642fc
27ce2763325bcb7940232a11892e12fb86053cf7 07-Jan-2015 Deepanshu Gupta <deepanshu@google.com> Merge "resolve conflict for 8c831b2f -> lmp-mr1-dev-plus-aosp again" into lmp-mr1-dev-plus-aosp
e88c120ebf42f5a16565414415fa292f5ef9525b 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> resolve conflict for 8c831b2f -> lmp-mr1-dev-plus-aosp again

The earlier resolution (a2a5ce49b29b8e3bf3cd695ff9f968e5579f4be2)
wasn't the right one. This fixes it.

Change-Id: I6a6dc908d3e7dd510064a46df932d129a58eed98
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
d5455fedaf0a55dfe25cf94d6bbb9ecf6f305725 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am aebd7fdb: am 565f2245: am a6671b70: am 6461e054: Merge "Add image comparison to LayoutLib tests." into lmp-dev

* commit 'aebd7fdb66b41b77a3cf51a7cf6911e8db3c7199':
Add image comparison to LayoutLib tests.
a2a5ce49b29b8e3bf3cd695ff9f968e5579f4be2 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> resolved conflicts for merge of 8c831b2f to lmp-mr1-dev-plus-aosp

Change-Id: I8894287fd43afc863d070cab04cfaa1bf70f7ebb
5760f1535b0bb619c72e8d4478fc65283bd89eb7 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am c2e9875d: am 229ce665: am 937db7a3: am 53f73a97: Merge "Add DatePicker, CalendarView to LayoutLib tests" into lmp-dev

* commit 'c2e9875dcb173a4965b5c0e6022fc2e81f0a37ef':
Add DatePicker, CalendarView to LayoutLib tests
67cf0bf421370c756d93ca52697fbce03e34c09c 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 84097e39: am b187106c: am e69e4f8b: am f9bb0b5e: Merge "Fix DatePicker rendering." into lmp-dev

* commit '84097e3977c82554aafc2e461cd51d6f5eb03866':
Fix DatePicker rendering.
adcd224135e3c12f483547ffa8bb2cb0250ba923 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am c7fe9793: am 48ab6bec: am 8c686ddd: am d20a518c: Merge "Make Preference-cookie map non static." into lmp-dev

* commit 'c7fe979303eb924d7fbb9fa342cc5cd7b929c2d2':
Make Preference-cookie map non static.
d050df7275137f9c57ce79a7b46d51e2d1fb9290 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am addaeff9: am b88a65df: am cec8e5a1: am f861c0ce: Merge "Fix default initial value for preferences" into lmp-dev

* commit 'addaeff9b28d833616376f802b7a38e32397edd1':
Fix default initial value for preferences
20db87702b816c5f861041626e04590a3058fa5a 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am e15f580b: am 2bd01ebf: am 7ed14549: am 7081a114: Merge "Add preferences rendering." into lmp-dev

* commit 'e15f580b9d7a555bff96efd3cec195b39637e679':
Add preferences rendering.
565f2245402f4fe6038942b03b9a35cfc0d48d86 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am a6671b70: am 6461e054: Merge "Add image comparison to LayoutLib tests." into lmp-dev

* commit 'a6671b707446963f402a71219725f317a57b42af':
Add image comparison to LayoutLib tests.
86f96d07c7d531d69bab3d402d33eb8f15038eee 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 0db2524c: am b2ebb968: Merge "Remove Time from CreateInfo" into lmp-dev

* commit '0db2524caa01022629075a113d3370a1b7c3da30':
Remove Time from CreateInfo
229ce66583a51baabf83fec4d0c42af0d3ecba38 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 937db7a3: am 53f73a97: Merge "Add DatePicker, CalendarView to LayoutLib tests" into lmp-dev

* commit '937db7a39ef6f5e88a936f78a729f9578123e60b':
Add DatePicker, CalendarView to LayoutLib tests
b187106c5397072b6ae26061cec847ec9343caee 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am e69e4f8b: am f9bb0b5e: Merge "Fix DatePicker rendering." into lmp-dev

* commit 'e69e4f8b4db142f024e170cf6faabb36095799b7':
Fix DatePicker rendering.
48ab6becea828c0bcaaf79fe930aac31881f59db 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 8c686ddd: am d20a518c: Merge "Make Preference-cookie map non static." into lmp-dev

* commit '8c686ddd540f3a15cdba4893f104c0e8e9af5716':
Make Preference-cookie map non static.
b88a65df73798becc57004b3fc55fdf8c0a83a13 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am cec8e5a1: am f861c0ce: Merge "Fix default initial value for preferences" into lmp-dev

* commit 'cec8e5a10de413c733223b8b1cc11b70c6254647':
Fix default initial value for preferences
2bd01ebfa99815d4fb6b4e77754146a22cf66d03 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 7ed14549: am 7081a114: Merge "Add preferences rendering." into lmp-dev

* commit '7ed145493d3f5bea32c567980f77cc42f613197e':
Add preferences rendering.
02cab444fbcedcee50b8563d80f87cd6b125d85d 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 9c8f8ed8: am 4a5baeae: Merge "resolved conflicts for a0bc2e7e to lmp-mr1-dev" into lmp-mr1-dev
automerge: f4d3973

* commit 'f4d3973c319502fc8aa3e1aa1d7e7502274ea3aa':
resolved conflicts for a0bc2e7e to lmp-mr1-dev
f4d3973c319502fc8aa3e1aa1d7e7502274ea3aa 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 9c8f8ed8: am 4a5baeae: Merge "resolved conflicts for a0bc2e7e to lmp-mr1-dev" into lmp-mr1-dev

* commit '9c8f8ed8a8bee42ee48a27b055b11ace6255d09a':
resolved conflicts for a0bc2e7e to lmp-mr1-dev
a6671b707446963f402a71219725f317a57b42af 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 6461e054: Merge "Add image comparison to LayoutLib tests." into lmp-dev

* commit '6461e05420c6f42b0e70134a4e0d2a626161ab74':
Add image comparison to LayoutLib tests.
0db2524caa01022629075a113d3370a1b7c3da30 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am b2ebb968: Merge "Remove Time from CreateInfo" into lmp-dev

* commit 'b2ebb9683fb5b21543b50772a0d4c646ced7764b':
Remove Time from CreateInfo
937db7a39ef6f5e88a936f78a729f9578123e60b 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 53f73a97: Merge "Add DatePicker, CalendarView to LayoutLib tests" into lmp-dev

* commit '53f73a97542c277a519b973060dfa217849b66de':
Add DatePicker, CalendarView to LayoutLib tests
e69e4f8b4db142f024e170cf6faabb36095799b7 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am f9bb0b5e: Merge "Fix DatePicker rendering." into lmp-dev

* commit 'f9bb0b5e133b0c364c3f87623f0fdff0fedc5226':
Fix DatePicker rendering.
8c686ddd540f3a15cdba4893f104c0e8e9af5716 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am d20a518c: Merge "Make Preference-cookie map non static." into lmp-dev

* commit 'd20a518c82e5e33d33e3dc5d74bf3c17d807f7d7':
Make Preference-cookie map non static.
cec8e5a10de413c733223b8b1cc11b70c6254647 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am f861c0ce: Merge "Fix default initial value for preferences" into lmp-dev

* commit 'f861c0ce3ff42550f3d5ede837e7bfb3855f5964':
Fix default initial value for preferences
7ed145493d3f5bea32c567980f77cc42f613197e 06-Jan-2015 Deepanshu Gupta <deepanshu@google.com> am 7081a114: Merge "Add preferences rendering." into lmp-dev

* commit '7081a114d4ee190c746f337057b0f84928c162dd':
Add preferences rendering.
58df125bbc76fd71a9c056c6b6108fc149733b0e 07-Dec-2014 Deepanshu Gupta <deepanshu@google.com> Add image comparison to LayoutLib tests.

The LayoutLib rendering tests now compares the rendered image with a
golden file from a previous execution. This will help catch any
unexpected changes in the final rendering.

Change-Id: I80251a778e89df7d7ec13863a8f299967f3d747d
ridge/tests/res/testApp/MyApplication/golden/activity.png
ridge/tests/src/com/android/layoutlib/bridge/intensive/ImageUtils.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
4022272a4f714a8d140c09804881ad338964f324 02-Jan-2015 Deepanshu Gupta <deepanshu@google.com> Remove Time from CreateInfo

Time_Delegate was removed in change with Change-Id:
Iae5ef65678f0e6c7c5af520c45bd15980ce3fa55. But the name wasn't removed
from CreateInfo. This didn't cause any problems at runtime, but caused
the layoutlib_create tests to fail.

Change-Id: I079b1e024b97d389eb07d4f088fd860efbb02eb3
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
eae390a94ee63676bc6cbe3b36dbe5bb48e82f6b 02-Jan-2015 Deepanshu Gupta <deepanshu@google.com> Add DatePicker, CalendarView to LayoutLib tests

Change-Id: Ice8c41ff90ccb0ffe90fcbfcccc91ea24225a3d9
idea/codeStyleSettings.xml
ridge/tests/res/testApp/MyApplication/src/main/res/layout/layout.xml
f5b02eb7c43a96d3f70a3ecc81738b0dff86df13 18-Nov-2014 Deepanshu Gupta <deepanshu@google.com> resolved conflicts for a0bc2e7e to lmp-mr1-dev

The original change wasn't properly merged into lmp-mr1-dev because of
merge conflicts. This change manually resolves the conflicts. The main
reason for the conflict was that TimePickerSpinnerDelegate was swapped
with TimePickerClockDelegate.

This change also fixes the typo in the original change which was fixed
in a subsequent change.

Original commit: 12b6d29b7b5592dcfb6e6fd6f0c21a40f37d014a
fix for typo: cb09bc45c58740af953874f9915306d351fc3d9d

Change-Id: I50bf8c2d86318f632465a38adfad16d1382a9319
ridge/src/android/widget/TimePickerClockDelegate_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
e64a5bd2fb54d84d6fd2119ef831df1eba4185ff 29-Dec-2014 Deepanshu Gupta <deepanshu@google.com> Fix DatePicker rendering.

1. Return AccessibilityManager service from context.
2. Don't throw an exception if no style specifited in
obtainStyledAttributes. Specifying no style is valid and it's supposed
to use the default theme in that case.

Bug: http://b.android.com/82712 and http://b.android.com/79218
Change-Id: Iba7097f36996e4d6f1e9db778dc73294f2854c79
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
0ff4568ca07c16f2ad4c61872995200115292ecf 08-Oct-2014 Deepanshu Gupta <deepanshu@google.com> Make Preference-cookie map non static.

Moved the map from Preference to View Cookie to BridgeContext. This
means the map need not be static anymore.

NO_SQ: Depends on unsubmitted changes.
Change-Id: I662513def17bd6ec3a2646c3bec9bf4f9f89fc15
ridge/src/android/preference/BridgePreferenceInflater.java
ridge/src/android/preference/Preference_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
dfeffd4c0ae165a3f225b818ef8d6f5d1cb89a2c 06-Oct-2014 Deepanshu Gupta <deepanshu@google.com> Fix default initial value for preferences

NO_SQ: Depends on unsubmitted changes.
Change-Id: I061cf71f6167d382e9ef060abeb4d5cff83c4104
ridge/src/android/preference/Preference_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeSharedPreferences.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
10bb1371dca38b5b59f083ee963f7987da6511f2 05-Oct-2014 Deepanshu Gupta <deepanshu@google.com> Add preferences rendering.

NO_SQ: Depends on updating layoutlib-api-prebuilt.jar
Change-Id: Iae93ab74c478e6f2158e1528467bec9ee2d7ee9b
ridge/src/android/preference/BridgePreferenceInflater.java
ridge/src/android/preference/Preference_Delegate.java
ridge/src/android/text/StaticLayout_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/android/SessionParamsFlags.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/Main.java
9eb695f0a3882845534094864821ed1cbfa22614 04-Dec-2014 Deepanshu Gupta <deepanshu@google.com> am 9c403d85: am 43d0e675: am 7e168ad0: am 6cbef4bd: am 03af0c42: Merge "Ensure that RandomAccessFile is not leaked." into lmp-dev

* commit '9c403d8513db5790364e9f5fafca5c6cf896d369':
Ensure that RandomAccessFile is not leaked.
1f4bafef128830907b929ecb4f4685b483bf828e 04-Dec-2014 Deepanshu Gupta <deepanshu@google.com> am 940a1e56: am 52a60ff6: am 302a7cc1: am 4628d51a: am 141c7614: Merge "Fix AnalogClock rendering" into lmp-dev

* commit '940a1e563fd94f912a7322cea8f0a5662b79050f':
Fix AnalogClock rendering
6c8175fcc47f756274da39a06e23a3126fa8acef 04-Dec-2014 Deepanshu Gupta <deepanshu@google.com> am 028df22f: am c16d1448: am b2ded18a: Merge "resolved conflicts for merge of fb30a783 to lmp-mr1-dev" into lmp-mr1-dev

* commit '028df22fd774c8a545dedb03124587b7a19e047b':
Fix typos in previous bugfixes.
9c403d8513db5790364e9f5fafca5c6cf896d369 04-Dec-2014 Deepanshu Gupta <deepanshu@google.com> am 43d0e675: am 7e168ad0: am 6cbef4bd: am 03af0c42: Merge "Ensure that RandomAccessFile is not leaked." into lmp-dev

* commit '43d0e67573e8122d9e75accb00eaa453e2755713':
Ensure that RandomAccessFile is not leaked.
940a1e563fd94f912a7322cea8f0a5662b79050f 04-Dec-2014 Deepanshu Gupta <deepanshu@google.com> am 52a60ff6: am 302a7cc1: am 4628d51a: am 141c7614: Merge "Fix AnalogClock rendering" into lmp-dev

* commit '52a60ff6366a4f5cf1ed9697b7cebd6f9300de2b':
Fix AnalogClock rendering
028df22fd774c8a545dedb03124587b7a19e047b 04-Dec-2014 Deepanshu Gupta <deepanshu@google.com> am c16d1448: am b2ded18a: Merge "resolved conflicts for merge of fb30a783 to lmp-mr1-dev" into lmp-mr1-dev

* commit 'c16d1448bb139384cc86d14d9412ffe1a62817c8':
Fix typos in previous bugfixes.
7e168ad04a4553c23bca1e9bd427ba6088493908 04-Dec-2014 Deepanshu Gupta <deepanshu@google.com> am 6cbef4bd: am 03af0c42: Merge "Ensure that RandomAccessFile is not leaked." into lmp-dev

* commit '6cbef4bd3e1f16647ab01dc29df9a357d54a85de':
Ensure that RandomAccessFile is not leaked.
302a7cc13a02863ef2e9d9102df761e92150de65 04-Dec-2014 Deepanshu Gupta <deepanshu@google.com> am 4628d51a: am 141c7614: Merge "Fix AnalogClock rendering" into lmp-dev

* commit '4628d51a0d01641ca7fe2cf8403ad551ea6f50ce':
Fix AnalogClock rendering
f708d27fa012d7949a761cb7033b874ba86b353e 04-Dec-2014 Deepanshu Gupta <deepanshu@google.com> resolved conflicts for merge of fb30a783 to lmp-mr1-dev

Change-Id: I91fdb76c748b97376d6469c8d1198a15c4395463
6cbef4bd3e1f16647ab01dc29df9a357d54a85de 03-Dec-2014 Deepanshu Gupta <deepanshu@google.com> am 03af0c42: Merge "Ensure that RandomAccessFile is not leaked." into lmp-dev

* commit '03af0c42d80734c44198b96a99488bb94816ae97':
Ensure that RandomAccessFile is not leaked.
4628d51a0d01641ca7fe2cf8403ad551ea6f50ce 03-Dec-2014 Deepanshu Gupta <deepanshu@google.com> am 141c7614: Merge "Fix AnalogClock rendering" into lmp-dev

* commit '141c7614fdef45d1a95ccb325da762a79412aae2':
Fix AnalogClock rendering
fb30a783d349578948a57d4e61bb7ddc09edb023 03-Dec-2014 Deepanshu Gupta <deepanshu@google.com> am 7e55c292: Merge "Fix typos in previous bugfixes." into lmp-dev

* commit '7e55c29281f8a62154451e87b45d95ec5f97c5ac':
Fix typos in previous bugfixes.
5ceb7f6431f447aa9d4e949578ce5d4b90b8297c 01-Dec-2014 Deepanshu Gupta <deepanshu@google.com> Ensure that RandomAccessFile is not leaked.

This change ensures that RandomAccessFile is always closed. Also, it
changes the BufferIterator implementation to delegate to the byte buffer
directly instead of mainitaining the position itself.

Change-Id: I8f93e80c91a7c35e6a7fb015185b8b11e36b6286
ridge/src/com/android/layoutlib/bridge/libcore/io/BridgeBufferIterator.java
ridge/src/libcore/io/MemoryMappedFile_Delegate.java
17a6170c62e6f74f2881623a9c16f0b6fea54721 21-Nov-2014 Deepanshu Gupta <deepanshu@google.com> Fix AnalogClock rendering

1. Change calls to java.lang.System.log* since they don't exist on the
host.
2. Clean up method rewrite mechanism in ReplaceMethodCallsAdapter.
3. Stub out creation of uninitialized GregorianCalendar.
4. Memory map the time zone data base file and provide a custom
implementation of BufferIterator for use by ZoneInfoDB
5. Delete unused Time_Delegate

Also fixed a comment in BridgeAssetManager and an error message in
FontFamily_Delegate.

Bug: http://b.android.com/79160
Change-Id: Iae5ef65678f0e6c7c5af520c45bd15980ce3fa55
ridge/src/android/content/res/BridgeAssetManager.java
ridge/src/android/graphics/FontFamily_Delegate.java
ridge/src/android/text/format/Time_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/libcore/io/BridgeBufferIterator.java
ridge/src/libcore/io/MemoryMappedFile_Delegate.java
ridge/src/libcore/util/ZoneInfo_WallTime_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/ReplaceMethodCallsAdapter.java
reate/src/com/android/tools/layoutlib/java/System_Delegate.java
7cfcfba9d31246e48d8eb1448bd784b8f38ec14e 21-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am fbff0191: am 58238d90: am 9ab79551: am 4104abf8: Merge "Fix setTextAppearance for styles with dots." into lmp-dev automerge: ddc83df

* commit 'fbff0191f60722894291529af28f14af7bb967e4':
Fix setTextAppearance for styles with dots.
fbff0191f60722894291529af28f14af7bb967e4 21-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am 58238d90: am 9ab79551: am 4104abf8: Merge "Fix setTextAppearance for styles with dots." into lmp-dev automerge: ddc83df

* commit '58238d900b43f6b780890b7ea93c11a877936ed7':
Fix setTextAppearance for styles with dots.
9ab79551ac9cee85e019d524dae6a5a6b4004cb5 21-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am 4104abf8: Merge "Fix setTextAppearance for styles with dots." into lmp-dev
automerge: ddc83df

* commit 'ddc83dfa8f17db1a8a566c8b92b0fea56dedd00a':
Fix setTextAppearance for styles with dots.
f8c36914250a2274ce20102b350915cd6ffaa6eb 21-Nov-2014 Dianne Hackborn <hackbod@google.com> am 42fec57f: am d9968438: Merge "Fix issue with call backs from media process." into lmp-mr1-dev
automerge: 377d6f0

* commit '377d6f00dc2ab42df501fd12b23e1dab54cea6b7':
Fix issue with call backs from media process.
377d6f00dc2ab42df501fd12b23e1dab54cea6b7 21-Nov-2014 Dianne Hackborn <hackbod@google.com> am 42fec57f: am d9968438: Merge "Fix issue with call backs from media process." into lmp-mr1-dev

* commit '42fec57f3addfb1958f814b5d6772ff81341ba20':
Fix issue with call backs from media process.
cb09bc45c58740af953874f9915306d351fc3d9d 18-Nov-2014 Deepanshu Gupta <deepanshu@google.com> Fix typos in previous bugfixes.

The commits 2c9fbdd and 12b6d29 introduced minor bugs. This change fixes
them.
ridge/src/android/widget/TimePickerSpinnerDelegate_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ddc83dfa8f17db1a8a566c8b92b0fea56dedd00a 20-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am 4104abf8: Merge "Fix setTextAppearance for styles with dots." into lmp-dev

* commit '4104abf875e16ad54c248ce602e573d2144732dd':
Fix setTextAppearance for styles with dots.
a0bc2e7e3c2f075a23449df00659c96d0cddb417 20-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am 455654cf: Merge "LayoutLib: Stub AM/PM keycodes in Time Picker." into lmp-dev

* commit '455654cffdaebcbbd4fa33de5bb18fa2752d6c9a':
LayoutLib: Stub AM/PM keycodes in Time Picker.
4104abf875e16ad54c248ce602e573d2144732dd 19-Nov-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Fix setTextAppearance for styles with dots." into lmp-dev
ff17024e583b170312d82089fd358d278ce16c9a 19-Nov-2014 Dianne Hackborn <hackbod@google.com> Fix issue with call backs from media process.

All but a few lines of this is for issue #16013164, which allowed
apps to do some operations as the media uid by having it call
back to them to open a file. The problem here is with the tempory
identity stuff in the activity manager, allowing us to make the open
call as the original caller... ideally we should figure out a way
to just get rid of all of that, but the solution here is actually
easier (even though it doesn't look it) -- we now hand a token over
to the openFile() call that it can use when doing permission checks
to say "yes I would like the check to be against whoever is responsible
for the open". This allows us to do the uid remapping for only this
one specific set of permission checks, and nothing else.

Also fix issue #17487348: Isolated services can access system services
they shouldn't be able to. Don't send any system service IBinder objects
down for the first initialization of an isolated process.

Change-Id: I3c70e16e0899d7eef0bae458e83958b41ed2b75e
ridge/src/com/android/layoutlib/bridge/android/BridgeContentProvider.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
2c9fbdd29c2f68f7e32583d47109c8f446865d88 18-Nov-2014 Deepanshu Gupta <deepanshu@google.com> Fix setTextAppearance for styles with dots.

Bug: http://b.android.com/78842
Change-Id: I65923134b2d3812030e2b7dd8ab96363b0647c1f
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
12b6d29b7b5592dcfb6e6fd6f0c21a40f37d014a 18-Nov-2014 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Stub AM/PM keycodes in Time Picker.

TimePickerSpinnerDelegate doesn't need to deal with input when running
inside LayoutLib. So, we just return the keycodes as if it's running in
English locale.

Bug: http://b.android.com/79189
Change-Id: Ife0ae91a1e34a8dac379bc1dda1c1c8ed461c164
ridge/src/android/widget/TimePickerSpinnerDelegate_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
70170261cbd966501a673ba5548dcab823037cfb 12-Nov-2014 Jeff Brown <jeffbrown@google.com> am 32f7a6d8: Merge "Move device admin max screen off timeout to internal interface." into lmp-mr1-dev automerge: c1275e7
automerge: a473878

* commit 'a4738781584d58e133fc4d0f55d9b7ebcb246ff6':
Move device admin max screen off timeout to internal interface.
a4738781584d58e133fc4d0f55d9b7ebcb246ff6 12-Nov-2014 Jeff Brown <jeffbrown@google.com> am 32f7a6d8: Merge "Move device admin max screen off timeout to internal interface." into lmp-mr1-dev
automerge: c1275e7

* commit 'c1275e72eceb171544aaf517f0cb6e3d1cbd9e08':
Move device admin max screen off timeout to internal interface.
32f7a6d813d7f936c7aa6a1f3abe2f05022a6cd9 11-Nov-2014 Jeff Brown <jeffbrown@google.com> Merge "Move device admin max screen off timeout to internal interface." into lmp-mr1-dev
83e5329b3bbffd5d737c852f0b3216598372a4e7 11-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am 028372b0: am 7ed525bf: am 5ad9b395: am a44fdb9e: Merge "Don\'t skip loading object animator." into lmp-dev automerge: 8f6e7a8

* commit '028372b070d3d293ac6b1b42681339bee7848407':
Don't skip loading object animator.
028372b070d3d293ac6b1b42681339bee7848407 11-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am 7ed525bf: am 5ad9b395: am a44fdb9e: Merge "Don\'t skip loading object animator." into lmp-dev
automerge: 8f6e7a8

* commit '8f6e7a868ce7715184a0d9239c6a72d269083c38':
Don't skip loading object animator.
7ed525bf92749113a177815ffce5d6545bd59314 11-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am 5ad9b395: am a44fdb9e: Merge "Don\'t skip loading object animator." into lmp-dev

* commit '5ad9b395db341b3360d481039f152f8ce1d8360c':
Don't skip loading object animator.
5ad9b395db341b3360d481039f152f8ce1d8360c 11-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am a44fdb9e: Merge "Don\'t skip loading object animator." into lmp-dev

* commit 'a44fdb9e216810ba62f20c1b4571ebc240931efa':
Don't skip loading object animator.
2c5cddbd07bb46b22617a362f3af23be7720f9d5 11-Nov-2014 Deepanshu Gupta <deepanshu@google.com> Don't skip loading object animator.

This is used by Buttons as part of StateListAnimator.

Change-Id: Id370869e71898d46e11bbd17ad31169c9f9f5274
ridge/src/android/animation/AnimatorInflater_Delegate.java
reate/src/com/android/tools/layoutlib/create/DelegateClassAdapter.java
4985297bd7452376afa8f3c06490431fc03bf310 11-Nov-2014 Diego Perez <diegoperez@google.com> Merge "Add new parameter to the render method to allow forcing a measure pass."
de4731eafa25e5762455e839a7cdcb3c6a3a2de0 11-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am fb5877a4: am 4c0f0e6c: Merge "Fix setting styles in custom views." into lmp-dev automerge: 5c22a79 automerge: 7d3d5fe automerge: 1f33b2f

* commit 'fb5877a4e7ac63df741489484f1642af0d592397':
Fix setting styles in custom views.
8d7a834dffa267f04da9c98fb79bbe83968445fd 11-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am 7cc11f8b: am 3cf0640d: Merge "Add primitive shadows support to LayoutLib" into lmp-dev automerge: 97c04ac automerge: 828db35 automerge: 1adeba2

* commit '7cc11f8bf3aedeb199331dca064c89ea58312a68':
Add primitive shadows support to LayoutLib
0ca185adaf095e88a721d89a7b5a439b45be24bf 11-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am 9713d740: am 0e3925df: Merge "Remove needlessly thrown IOException." into lmp-dev automerge: f305d2c automerge: a09dda8 automerge: aa53920

* commit '9713d740182f37f15849997979384fde00a1f9c1':
Remove needlessly thrown IOException.
fb5877a4e7ac63df741489484f1642af0d592397 11-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am 4c0f0e6c: Merge "Fix setting styles in custom views." into lmp-dev automerge: 5c22a79 automerge: 7d3d5fe
automerge: 1f33b2f

* commit '1f33b2f6f61f66b751d6ecb2660bed8f36c91986':
Fix setting styles in custom views.
7cc11f8bf3aedeb199331dca064c89ea58312a68 11-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am 3cf0640d: Merge "Add primitive shadows support to LayoutLib" into lmp-dev automerge: 97c04ac automerge: 828db35
automerge: 1adeba2

* commit '1adeba2c7399e619760b413d810de9c6371b3159':
Add primitive shadows support to LayoutLib
9713d740182f37f15849997979384fde00a1f9c1 11-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am 0e3925df: Merge "Remove needlessly thrown IOException." into lmp-dev automerge: f305d2c automerge: a09dda8
automerge: aa53920

* commit 'aa53920479b7e1916e0d2afbf6846250a2deeabf':
Remove needlessly thrown IOException.
f2d9b008322238298a474731a752783991b5f774 10-Nov-2014 Dan Sandler <dsandler@android.com> am 34f24aef: am eba923cc: am 04a1557c: Merge "Fix inset hinting when adding window" into lmp-mr1-dev

* commit '34f24aef58b015709447cb09bad5f7ae0ca7989c':
Fix inset hinting when adding window
7d3d5feb31e393c97381f512995d9d799d18304f 10-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am 4c0f0e6c: Merge "Fix setting styles in custom views." into lmp-dev automerge: 5c22a79

* commit '4c0f0e6c852dd933bcfaf95380cca49a46fa3912':
Fix setting styles in custom views.
828db35568459638e09f86be40340d281804858d 10-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am 3cf0640d: Merge "Add primitive shadows support to LayoutLib" into lmp-dev automerge: 97c04ac

* commit '3cf0640d944a0718b9e29a2134a577e72a9432b4':
Add primitive shadows support to LayoutLib
a09dda8162ca48bea0fea0e2804af38e216996d8 10-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am 0e3925df: Merge "Remove needlessly thrown IOException." into lmp-dev automerge: f305d2c

* commit '0e3925dfb3ea4e9185202dd963f03f5ca1df17d0':
Remove needlessly thrown IOException.
34f24aef58b015709447cb09bad5f7ae0ca7989c 10-Nov-2014 Dan Sandler <dsandler@android.com> am eba923cc: am 04a1557c: Merge "Fix inset hinting when adding window" into lmp-mr1-dev

* commit 'eba923ccce573ac9f426d58d79e23a1fcd8ee1a7':
Fix inset hinting when adding window
4c0f0e6c852dd933bcfaf95380cca49a46fa3912 10-Nov-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Fix setting styles in custom views." into lmp-dev
automerge: 5c22a79

* commit '5c22a79baf81727b56a85a194d678c18449b5150':
Fix setting styles in custom views.
3cf0640d944a0718b9e29a2134a577e72a9432b4 10-Nov-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Add primitive shadows support to LayoutLib" into lmp-dev
automerge: 97c04ac

* commit '97c04ac7ed4f34ca0cfb75646cc00687fb0954d4':
Add primitive shadows support to LayoutLib
0e3925dfb3ea4e9185202dd963f03f5ca1df17d0 10-Nov-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Remove needlessly thrown IOException." into lmp-dev
automerge: f305d2c

* commit 'f305d2c4a80af9e2011824349adc6f133cd8822c':
Remove needlessly thrown IOException.
8657baa06d2efe845cafef571bd9dce627cf5045 10-Nov-2014 Deepanshu Gupta <deepanshu@google.com> Fix setting styles in custom views.

Bug: http://b.android.com/78842
Change-Id: I5d4571d94d96b00419acc258c9e2b519367b689d
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
37d7a68de7e353c31a3a4736054cd86f0e002eaf 06-Nov-2014 Adrian Roos <roosa@google.com> Fix inset hinting when adding window

Windows with FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS were
getting an incorrect content inset hint, because the
hinting didn't see the adjusted systemUiVisibility.

Also adds hinting for the stable insets.

Bug: 17508238
Change-Id: If9647277feb6811b15665b801accd896c51dbd12
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
796e9b7f9910f2ba8133cdb6f137107585b2e5fa 05-Nov-2014 Deepanshu Gupta <deepanshu@google.com> Add primitive shadows support to LayoutLib

The shadows rendered are not the same as rendered by the framework. The
main purpose of the shadows here is let the user know when shadows will
be cast.

Currently rectangular shadows are available in only two intensities. Any
elevation below 10dp uses one shadow and any elevation over 10 dp uses
the other.

Also, even though the code for arbitrary shapes exist, it doesn't quite
work yet. No shadows are visible when that code is run.

Change-Id: Ie8235ffccf1d3809713f5d8f82afde434817d6b2
ridge/resources/icons/shadow-b.png
ridge/resources/icons/shadow-bl.png
ridge/resources/icons/shadow-br.png
ridge/resources/icons/shadow-l.png
ridge/resources/icons/shadow-r.png
ridge/resources/icons/shadow-tl.png
ridge/resources/icons/shadow-tr.png
ridge/resources/icons/shadow2-b.png
ridge/resources/icons/shadow2-bl.png
ridge/resources/icons/shadow2-br.png
ridge/resources/icons/shadow2-l.png
ridge/resources/icons/shadow2-r.png
ridge/resources/icons/shadow2-tl.png
ridge/resources/icons/shadow2-tr.png
ridge/src/android/view/RenderNode_Delegate.java
ridge/src/android/view/ShadowPainter.java
ridge/src/android/view/ViewGroup_Delegate.java
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
ridge/src/com/android/layoutlib/bridge/bars/CustomActionBarWrapper.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
c5f9ec3e271aa34a38497db8152f13dcb29b70f5 07-Nov-2014 Winson Chung <winsonc@google.com> am 675a0b6b: am 513aa792: am 3ed9f2f9: Merge "Adding bounce animation for affiliated tasks. (Bug 16656169)" into lmp-mr1-dev

* commit '675a0b6bc9ee2f2e80f28381c0f34d98e0447ad6':
Adding bounce animation for affiliated tasks. (Bug 16656169)
5ce1cb240b13db98fbdc21e1ef069b5f9cec8d72 07-Nov-2014 Jeff Brown <jeffbrown@google.com> Move device admin max screen off timeout to internal interface.

The setting was previously exposed in IPowerManager but it
doesn't need to be there.

Bug: 17656076
Change-Id: If3ed0cbe89f67c60aa00376be0c54b1bd9656144
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
675a0b6bc9ee2f2e80f28381c0f34d98e0447ad6 07-Nov-2014 Winson Chung <winsonc@google.com> am 513aa792: am 3ed9f2f9: Merge "Adding bounce animation for affiliated tasks. (Bug 16656169)" into lmp-mr1-dev

* commit '513aa79290dd17400c4cce82d1d801c05ff3776f':
Adding bounce animation for affiliated tasks. (Bug 16656169)
044d52934e57a337665f707aa4be1d423ee3fb29 06-Nov-2014 Winson Chung <winsonc@google.com> Adding bounce animation for affiliated tasks. (Bug 16656169)

Change-Id: I39e4a57c4e6b707d15513dacde2d40c23bb05058
ridge/src/android/view/IWindowManagerImpl.java
9173c8a2e90a48959dedc9d4aa415482f5014844 04-Nov-2014 Deepanshu Gupta <deepanshu@google.com> Remove needlessly thrown IOException.

Change-Id: If34986367554c98f96f6f9a1088f5e25077a1be1
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/RenderDrawable.java
c13aa0c035cd226d27323bc0e533632ba32f6a84 05-Nov-2014 Diego Perez <diegoperez@google.com> Add new parameter to the render method to allow forcing a measure pass.

Change-Id: I60c09f3375fc85c257a449f4372220741e01db54
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
85c6637344438aa9088906d72bbe929b732a8a28 04-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am b490d5d3: am 0267541c: am 0a2e42d4: Merge "Fix BridgeContext.get*ResourceValue()" into lmp-dev automerge: 9b64954 automerge: fef5001

* commit 'b490d5d3ece9b0617feacd71e4b2a85a0e1b26a8':
Fix BridgeContext.get*ResourceValue()
a2ccfb386a8867f2d652d3f0b997406f830e0913 04-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am 9549824d: am 6479282e: am 33996b98: Merge "Support framework menus in ActionBar" into lmp-dev automerge: c23487a automerge: 9a6d8ae

* commit '9549824d2b7363b69d9ccc529dabf0d608b1ab39':
Support framework menus in ActionBar
0ad1eb33499aee3a506fc880db5f055753fdf61f 04-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am 837e65be: am a3698098: am cd5f3bab: Merge "Use the right layout for inflating Action Bar." into lmp-dev automerge: 84a89ed automerge: 5ad0763

* commit '837e65be0d7259bdc122c19676f9ad0b711b000f':
Use the right layout for inflating Action Bar.
b490d5d3ece9b0617feacd71e4b2a85a0e1b26a8 04-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am 0267541c: am 0a2e42d4: Merge "Fix BridgeContext.get*ResourceValue()" into lmp-dev automerge: 9b64954 automerge: fef5001

* commit '0267541c90a33c2558d93a0250791ac8fb679688':
Fix BridgeContext.get*ResourceValue()
9549824d2b7363b69d9ccc529dabf0d608b1ab39 04-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am 6479282e: am 33996b98: Merge "Support framework menus in ActionBar" into lmp-dev automerge: c23487a automerge: 9a6d8ae

* commit '6479282ef584285a2da4d3750acec5ce7d13b6bb':
Support framework menus in ActionBar
837e65be0d7259bdc122c19676f9ad0b711b000f 04-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am a3698098: am cd5f3bab: Merge "Use the right layout for inflating Action Bar." into lmp-dev automerge: 84a89ed automerge: 5ad0763

* commit 'a36980980886a645627542a7bcabf0d718ea79c9':
Use the right layout for inflating Action Bar.
fef500107ea558bfc210230a3cd8281d7fea6fd5 04-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am 0a2e42d4: Merge "Fix BridgeContext.get*ResourceValue()" into lmp-dev automerge: 9b64954

* commit '0a2e42d4afe9aa81cc41674102dfc999496db845':
Fix BridgeContext.get*ResourceValue()
9a6d8ae25522f88191e8b7d817c1d4e5816b642b 04-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am 33996b98: Merge "Support framework menus in ActionBar" into lmp-dev automerge: c23487a

* commit '33996b98787c4625f9cd4a8e38e6a88458773276':
Support framework menus in ActionBar
5ad076396c43b2d26f9c020f0914623972cadd0e 04-Nov-2014 Deepanshu Gupta <deepanshu@google.com> am cd5f3bab: Merge "Use the right layout for inflating Action Bar." into lmp-dev automerge: 84a89ed

* commit 'cd5f3bab37ef1dc041489f53f565416d295916d9':
Use the right layout for inflating Action Bar.
0a2e42d4afe9aa81cc41674102dfc999496db845 04-Nov-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Fix BridgeContext.get*ResourceValue()" into lmp-dev
automerge: 9b64954

* commit '9b64954cb5b30b03abaae0b24132e1b1876f8af1':
Fix BridgeContext.get*ResourceValue()
33996b98787c4625f9cd4a8e38e6a88458773276 04-Nov-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Support framework menus in ActionBar" into lmp-dev
automerge: c23487a

* commit 'c23487aa18a9882cb9c8c800c7c44ccb93ce60b9':
Support framework menus in ActionBar
cd5f3bab37ef1dc041489f53f565416d295916d9 04-Nov-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Use the right layout for inflating Action Bar." into lmp-dev
automerge: 84a89ed

* commit '84a89ed0f56d4c35cde5a1451a22a6edb59db06a':
Use the right layout for inflating Action Bar.
9b64954cb5b30b03abaae0b24132e1b1876f8af1 04-Nov-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Fix BridgeContext.get*ResourceValue()" into lmp-dev
c23487aa18a9882cb9c8c800c7c44ccb93ce60b9 04-Nov-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Support framework menus in ActionBar" into lmp-dev
84a89ed0f56d4c35cde5a1451a22a6edb59db06a 04-Nov-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Use the right layout for inflating Action Bar." into lmp-dev
b3d18f2c2e4dc25ebd4fc220855efd5212b7e596 01-Nov-2014 Jeff Brown <jeffbrown@google.com> am 5177979b: am e333e674: Add a function to boost screen brightness temporarily. automerge: 0ed053e automerge: a80162f

* commit '5177979bbd7459179648057ba00a6399aeb26357':
Add a function to boost screen brightness temporarily.
5177979bbd7459179648057ba00a6399aeb26357 01-Nov-2014 Jeff Brown <jeffbrown@google.com> am e333e674: Add a function to boost screen brightness temporarily. automerge: 0ed053e
automerge: a80162f

* commit 'a80162f0d124e7400e268440c864289a9a7be11e':
Add a function to boost screen brightness temporarily.
0ed053ef537daa11659e70c91974cded7c9bddc6 01-Nov-2014 Jeff Brown <jeffbrown@google.com> am e333e674: Add a function to boost screen brightness temporarily.

* commit 'e333e674a758c39885d4d9779a1aad387fb0e6aa':
Add a function to boost screen brightness temporarily.
e333e674a758c39885d4d9779a1aad387fb0e6aa 28-Oct-2014 Jeff Brown <jeffbrown@google.com> Add a function to boost screen brightness temporarily.

When PowerManager.boostScreenBrightness() is called, the screen
brightness is set to maximum for 5 seconds. This action is
also considered to be user activity.

Bug: 17934954
Change-Id: I1cb4a03a60705c6c1c5cc9ff84b1c5dbd2932fcd
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
585b0c3dc1a602433177f614c4b91bd70256a463 31-Oct-2014 Craig Mautner <cmautner@google.com> am 6a80527f: am 3bfd2b7b: am 159da3db: Merge "Add enter-animation-done callback for system windows" into lmp-mr1-dev

* commit '6a80527f617e603b3c4931ce88c7804d570de501':
Add enter-animation-done callback for system windows
6a80527f617e603b3c4931ce88c7804d570de501 31-Oct-2014 Craig Mautner <cmautner@google.com> am 3bfd2b7b: am 159da3db: Merge "Add enter-animation-done callback for system windows" into lmp-mr1-dev

* commit '3bfd2b7b8fb83d47d4a624993c096e1f716df551':
Add enter-animation-done callback for system windows
38d1fdede38517ff9b4a4e10c8487e8466b4ca6e 31-Oct-2014 Deepanshu Gupta <deepanshu@google.com> am 9f4979bf: am c2a72054: am 5456230d: am 03b100e1: am 617e8097: Add missing delegate for AnimatorInflater.

* commit '9f4979bf1159e156a8bc0936474f3378a274d96e':
Add missing delegate for AnimatorInflater.
719b92f3c7bc00e0ebeab36c0e2a149e18a25b15 31-Oct-2014 Deepanshu Gupta <deepanshu@google.com> am a9f20a25: am 2df4ea46: am bf59e897: am de4ee0f1: am 75bf1b1c: Merge "Skip loading animations." into lmp-dev

* commit 'a9f20a25d2bd417a13c9ab56476c9b52cf1463b2':
Skip loading animations.
7d86136592fddf12e425026797ec4c629027efc9 31-Oct-2014 Deepanshu Gupta <deepanshu@google.com> am b9bbcccb: am f82046b2: am 122ccfb0: am 916d7796: am c55eb170: Merge "Fix multiple styles case in resource resolution." into lmp-dev

* commit 'b9bbcccb5aaae55bcb0a7e14982fb06ae21f5d0c':
Fix multiple styles case in resource resolution.
95052e3bb0c11b8c88d5f3c9b740efa9623074fc 31-Oct-2014 Deepanshu Gupta <deepanshu@google.com> am 73b1b5a6: am c5afeb2c: am 62cf56cf: am 6fb2fda8: am 92a52142: Merge "Use right theme for drawable inflation." into lmp-dev

* commit '73b1b5a69f8987228f7b84b236c15148560982b8':
Use right theme for drawable inflation.
9f4979bf1159e156a8bc0936474f3378a274d96e 31-Oct-2014 Deepanshu Gupta <deepanshu@google.com> am c2a72054: am 5456230d: am 03b100e1: am 617e8097: Add missing delegate for AnimatorInflater.

* commit 'c2a72054b158b318fdef54989e39e9220023d4a8':
Add missing delegate for AnimatorInflater.
a9f20a25d2bd417a13c9ab56476c9b52cf1463b2 31-Oct-2014 Deepanshu Gupta <deepanshu@google.com> am 2df4ea46: am bf59e897: am de4ee0f1: am 75bf1b1c: Merge "Skip loading animations." into lmp-dev

* commit '2df4ea4601075b3b0ef3e87d67f7107cbaeb5de2':
Skip loading animations.
b9bbcccb5aaae55bcb0a7e14982fb06ae21f5d0c 31-Oct-2014 Deepanshu Gupta <deepanshu@google.com> am f82046b2: am 122ccfb0: am 916d7796: am c55eb170: Merge "Fix multiple styles case in resource resolution." into lmp-dev

* commit 'f82046b23367e844b43318d9cb73200750a042a5':
Fix multiple styles case in resource resolution.
73b1b5a69f8987228f7b84b236c15148560982b8 31-Oct-2014 Deepanshu Gupta <deepanshu@google.com> am c5afeb2c: am 62cf56cf: am 6fb2fda8: am 92a52142: Merge "Use right theme for drawable inflation." into lmp-dev

* commit 'c5afeb2cbbbf762013306397507fa2059d3aaf13':
Use right theme for drawable inflation.
159da3dba8811017c683fcee26c795be1948b0c4 30-Oct-2014 Craig Mautner <cmautner@google.com> Merge "Add enter-animation-done callback for system windows" into lmp-mr1-dev
9c79504225f60c72c947220b6aca928f11279e1c 29-Oct-2014 Craig Mautner <cmautner@google.com> Add enter-animation-done callback for system windows

Existing hidden methods allow activities to be notified when their
windows have completed animating in. This change adds that capability
to system windows using a ViewTreeObserver callback since system
windows lack an activity token.

The first subsystem to use this is the UserSwitchingDialog which was
previously using a 250 msec timeout to dismiss the dialog. That
deadline was often missed leaving the user with no dialog on the
screen during the transition.

Fixes bug 16661752.

Change-Id: I70789e0d9c07112f275e76fb82850926305f290d
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
9fa48b09ad06c39be0923d5ca64b81f6b0eee993 30-Oct-2014 Deepanshu Gupta <deepanshu@google.com> Fix BridgeContext.get*ResourceValue()

getFrameworkResourceValue() and getProjectResourceValue() never really
returned the defValue passed to them, instead creating a new id for
non-existent resources. We now checks for the existence of the resources
before trying to obtain the id.

Change-Id: Ie3103ba32af6186651a5f77c27d1efc33dc2bcc7
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/bars/CustomActionBarWrapper.java
ridge/src/com/android/layoutlib/bridge/util/DynamicIdMap.java
df0ebab0f954044c39b171160ab4276dd2391993 30-Oct-2014 Deepanshu Gupta <deepanshu@google.com> Support framework menus in ActionBar

Add support for adding menus in the framework namespace to the ActionBar
preview. If a menu id name begins with the android namespace prefix
(android:) we find the framework menu and render it.

Change-Id: If52910b46154591883af2b2f357e72eea6f84235
ridge/src/com/android/layoutlib/bridge/bars/CustomActionBarWrapper.java
0bffc736e1f260724764d31f7499cbc09471a535 27-Oct-2014 Deepanshu Gupta <deepanshu@google.com> Use the right layout for inflating Action Bar.

The choice of Action Bar layout depends on the theme. This also affects
the widget used to render the Action Bar.

Bug: http://b.android.com/77853
Change-Id: I6219a02853b4cd207a6125a5ed96fa5d16699460
ridge/src/android/view/WindowCallback.java
ridge/src/android/widget/Toolbar_Accessor.java
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
ridge/src/com/android/layoutlib/bridge/bars/CustomActionBarWrapper.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
5456230d3b071cf699a4523f3f33bfcb5be4f54c 29-Oct-2014 Deepanshu Gupta <deepanshu@google.com> am 03b100e1: am 617e8097: Add missing delegate for AnimatorInflater.

* commit '03b100e11dad5bef34e71ccfd45b6c7adc9bfee4':
Add missing delegate for AnimatorInflater.
bf59e8974d0c18dd3fd14631ad03de66d271a186 29-Oct-2014 Deepanshu Gupta <deepanshu@google.com> am de4ee0f1: am 75bf1b1c: Merge "Skip loading animations." into lmp-dev

* commit 'de4ee0f1be350a52d642a447269a91f6d28e73fc':
Skip loading animations.
122ccfb08fdde43793159d17d263271a0d311a1f 29-Oct-2014 Deepanshu Gupta <deepanshu@google.com> am 916d7796: am c55eb170: Merge "Fix multiple styles case in resource resolution." into lmp-dev

* commit '916d779650352059b08b7257f71a7aab8b333eba':
Fix multiple styles case in resource resolution.
62cf56cf99204bc3912119e8bed06e43f7ba6da9 29-Oct-2014 Deepanshu Gupta <deepanshu@google.com> am 6fb2fda8: am 92a52142: Merge "Use right theme for drawable inflation." into lmp-dev

* commit '6fb2fda85c410e23a1b9366c025fe288447bf027':
Use right theme for drawable inflation.
617e809731d775d9e05758689bab024e34c9afbf 29-Oct-2014 Deepanshu Gupta <deepanshu@google.com> Add missing delegate for AnimatorInflater.

Change-Id: I96ef2b1085dadfae280df6740aebc10f57e3b949
ridge/src/android/animation/AnimatorInflater_Delegate.java
75bf1b1c6af0bc0d09b04292565915fab0e49a30 29-Oct-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Skip loading animations." into lmp-dev
c55eb170cccea10158cedaeccd991b4b97d0036c 29-Oct-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Fix multiple styles case in resource resolution." into lmp-dev
92a52142fd988590aa61aedd54f48e9d249a2f53 29-Oct-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Use right theme for drawable inflation." into lmp-dev
0b42936d860238be9321f05cf70e934f81b94d72 28-Oct-2014 Deepanshu Gupta <deepanshu@google.com> Skip loading animations.

This is a temporary fix until Path.approximate() is supported.

Bug: http://b.android.com/77865
Change-Id: I28739e58f51fabaaf1dcc1c9be61cd0b17e84eec
ridge/src/android/animation/AnimatorInflater_Delegate.java
ridge/src/android/animation/FakeAnimator.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
b6444c43094353065f083d1ae6e4617f098a8b2b 28-Oct-2014 Deepanshu Gupta <deepanshu@google.com> Fix multiple styles case in resource resolution.

When multiple styles are applied to a theme, we only remembered the last
one. This change fixes the issue.

Change-Id: I46490e882edc3eabe522a641c83366234b5bb25d
ridge/src/android/content/res/AssetManager_Delegate.java
ridge/src/android/content/res/Resources_Theme_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
4a605c6fa0027ee116beb29fbc9625721f0441f0 28-Oct-2014 Deepanshu Gupta <deepanshu@google.com> Use right theme for drawable inflation.

The theme information was lost when inflating drawables. As a result,
drawables inflated in the ActionBar did not have the right tint.

Change-Id: I13d5c78039e35085ed4902289fcb735bb15d972e
ridge/src/android/content/res/BridgeResources.java
ridge/src/android/content/res/BridgeTypedArray.java
ridge/src/android/content/res/Resources_Theme_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
3886d8c7a06337fbf033de26c9207e19f4e15376 22-Oct-2014 Deepanshu Gupta <deepanshu@google.com> am c719872b: am 22387d9d: am 01c80f15: am 37779f07: Merge "Check Bridge init before disposing." into lmp-dev automerge: 568f16c

* commit 'c719872b4e4eb9329eab4ce9f3976a44e142e141':
Check Bridge init before disposing.
c719872b4e4eb9329eab4ce9f3976a44e142e141 22-Oct-2014 Deepanshu Gupta <deepanshu@google.com> am 22387d9d: am 01c80f15: am 37779f07: Merge "Check Bridge init before disposing." into lmp-dev automerge: 568f16c

* commit '22387d9d3529515e64dfc01e81f14fddb2da463c':
Check Bridge init before disposing.
01c80f155d095ccd77a5f3038d4d02663219684e 22-Oct-2014 Deepanshu Gupta <deepanshu@google.com> am 37779f07: Merge "Check Bridge init before disposing." into lmp-dev automerge: 568f16c

* commit '37779f07496462afa4b5d88725e8a004a7e10bc0':
Check Bridge init before disposing.
eea621810c4925de43968284b67f314ded2181e4 22-Oct-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Add Optimized Line breaking to LayoutLib"
7053919a3a55ad1b58e6db701afda18850037732 16-Oct-2014 Deepanshu Gupta <deepanshu@google.com> Add Optimized Line breaking to LayoutLib

Change-Id: I308a7d07d98ddd7747f16e06bcffcfd14d667534
ridge/src/android/text/GreedyLineBreaker.java
ridge/src/android/text/LineBreaker.java
ridge/src/android/text/LineWidth.java
ridge/src/android/text/OptimizingLineBreaker.java
ridge/src/android/text/Primitive.java
ridge/src/android/text/StaticLayout_Delegate.java
ridge/src/android/text/TabStops.java
b69ec7708b61535355d278ac0ea8f9a61540d1fb 20-Oct-2014 Deepanshu Gupta <deepanshu@google.com> Check Bridge init before disposing.

In some cases ADT may dispose the Bridge even before init is called on
it. This caused an NPE. Fixed this by checking for the initialization
before disposing resources.

Bug: http://b.android.com/77726
Change-Id: I741d6ea3595a3b7cb816abd0417f23aecca6370e
ridge/src/android/graphics/FontFamily_Delegate.java
ridge/src/android/graphics/Typeface_Accessor.java
ridge/src/android/graphics/Typeface_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
f4242b107caa1b760304dc9ea547206c391bc05e 15-Oct-2014 Derek Sollenberger <djsollen@google.com> Ensure that all requests for the Paint's nativePtr use p.getNativeInstance()

Since requesting the native pointer triggers specific paint behavior we need
to ensure that the field is private and that callers use the public method.

Change-Id: I598a8bf2904960023397728c1ce4502ce408348e
ridge/src/android/graphics/Paint_Delegate.java
7c5020db4f5fc8f72179d6e34b9189e70f14eb5c 10-Oct-2014 Deepanshu Gupta <deepanshu@google.com> am d8497e45: am 0a61c7ee: am 985d59d7: am 908a4f9a: am 4f133894: Exclude KXmlParser from LayoutLib.

* commit 'd8497e45c72fbb27961d096499984906af19d35f':
Exclude KXmlParser from LayoutLib.
b913af540834b34d74b65a4bdb77a092dca39a04 09-Oct-2014 Elliott Hughes <enh@google.com> Track change to private libcore data structure.

Bug: 15476051

(cherry picked from commit d47acaeecd991ecd01ecc9a37e60011f545712d7)

Change-Id: Iac79ce3602282a2780dd895995f42ab03f346ad4
ridge/src/libcore/icu/ICU_Delegate.java
90e01b3b401a038796a2e2e3a8611bb3b706d82c 09-Oct-2014 Elliott Hughes <enh@google.com> am b68fe9e5: am ae1b6805: Merge "Track change to private libcore data structure."

* commit 'b68fe9e5f355a3d13ed74cb89fb3e3818b356cee':
Track change to private libcore data structure.
b68fe9e5f355a3d13ed74cb89fb3e3818b356cee 09-Oct-2014 Elliott Hughes <enh@google.com> am ae1b6805: Merge "Track change to private libcore data structure."

* commit 'ae1b6805a2609759186af8d7131c4750e011019a':
Track change to private libcore data structure.
d47acaeecd991ecd01ecc9a37e60011f545712d7 09-Oct-2014 Elliott Hughes <enh@google.com> Track change to private libcore data structure.

Bug: 15476051
Change-Id: I4e28ecfa3a1d03c21f9bbde7f3daf79a79d96fe6
ridge/src/libcore/icu/ICU_Delegate.java
908a4f9a4372a9627e821b5800936095b0f0b5b0 08-Oct-2014 Deepanshu Gupta <deepanshu@google.com> am 4f133894: Exclude KXmlParser from LayoutLib.

* commit '4f133894a6e98d8d30557ea42cec92cfb21fa5c9':
Exclude KXmlParser from LayoutLib.
4f133894a6e98d8d30557ea42cec92cfb21fa5c9 08-Oct-2014 Deepanshu Gupta <deepanshu@google.com> Exclude KXmlParser from LayoutLib.

The class was incorrectly being included in the LayoutLib.

Change-Id: I3c86662efa068019fe9165f2fc49a00d0a1b7f2d
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/ICreateInfo.java
reate/src/com/android/tools/layoutlib/create/Main.java
reate/tests/com/android/tools/layoutlib/create/AsmGeneratorTest.java
11b14e3996d3602155d6a61afb286e5bc0941a1f 02-Aug-2014 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Use ICU's line break algo. [DO NOT MERGE]

Change-Id: I7e5b0ab7423a72f5a4b0e1163d0a537f0b03ba07
(cherry picked from commit 760f6394d0f65fbb5365186e8e068d53c506b653)
ridge/src/android/text/StaticLayout_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
fe54f8a4962d1b6366f98c24155432a9a45fd6b8 03-Oct-2014 Deepanshu Gupta <deepanshu@google.com> am 09714a76: am 82e28181: am c62da8a0: am c74a2b34: Merge "Minor style changes." into lmp-dev

* commit '09714a76a9463f5e18ea8ac91ba040f6fd2235fd':
Minor style changes.
3c8140ab4b39922f92682910ce24de77fd512db4 02-Oct-2014 Deepanshu Gupta <deepanshu@google.com> Minor style changes.

Addressing code review comments on previous change: 171804201dd

Change-Id: I2c9e0ce35e755c23d8292749828d15a87109d6dc
ridge/src/android/content/res/BridgeTypedArray.java
e4ef95bfe0e2c328cf20ecddb2bf168613223185 02-Oct-2014 Deepanshu Gupta <deepanshu@google.com> am 2e67a882: am 92c40bbd: am 8989290b: am 7b13c4d8: Merge "Always resolve enum when resolving resources." into lmp-dev

* commit '2e67a88214fa93a325a84a4b8e6ae122544c8edb':
Always resolve enum when resolving resources.
c2a0b4482d7144e8382346ea4c22c7b89368fec0 02-Oct-2014 Neil Fuller <nfuller@google.com> resolved conflicts for merge of ee665151 to lmp-mr1-dev-plus-aosp

Change-Id: I2588c65b7a9fa43f968151a206924a804f0595a7
ee665151a4c6359cbfbb9a6795aa9097c4622083 02-Oct-2014 Neil Fuller <nfuller@google.com> am 0c1faf43: Merge "Switch from FloatMath -> Math and Math.hypot where possible"

* commit '0c1faf43aecadc37b78c4ad6cb669eb351d21385':
Switch from FloatMath -> Math and Math.hypot where possible
409bd3d77491359195b2c247d2863c26ca5a3c98 19-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Resource resolution bug fix. [DO NOT MERGE]

Fix a bug where "?attr/foo" in framework resources wasn't resolved
properly.

Change-Id: I9a56974f526774fde79685f668f01021136d68f1
(cherry picked from commit 19c7842082d831ad432abe906f4c37c6ed08e414)
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
fea51feb5c1639398c9d3949f8086e322b6d5f44 19-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Fix Tests after cherry picks. [DO NOT MERGE]

1. Updated the intelliJ run configuration for the layoutlib_create tool.
2. Updated the code to search for the platform.dir.
3. Update tests to use AppTheme and Target SDK 19

Change-Id: I6f1cc6ff2a53e4474c746537029c7f89c6dd6dc1
(cherry picked from commit 8592eeafd01370d1a17e34602290becf7f611c75)
idea/runConfigurations/Create.xml
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
98a03e771e405b434131a91f4efc040149dee40d 13-Aug-2014 Deepanshu Gupta <deepanshu@google.com> Update intelliJ copyright profile [DO NOT MERGE]

Change-Id: Ib9386b686cb24e1f187d0b636b59b4b13d59bbcd
(cherry picked from commit 91fa62ac67a5e294124b5bfb70b35addc7687c34)
idea/copyright/profiles_settings.xml
039d5849ea3acd011e0c3dc75e1cfa24e0162b49 09-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Build layoutlib create tests as part of sdk build. [DO NOT MERGE]

LayoutLib Create tests are now built whenever LayoutLib create is built.

Change-Id: Id215e8690e435019579dba1734090a0d585f37e1
(cherry picked from commit 4efe6264f1251fa200427f54ea6f5dd4c4d03665)
reate/Android.mk
6fb5fdc23364f922cb2c554f52b6927925d1fb15 05-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Add layoutlib tests to DIST_DIR [DO NOT MERGE]

Add the layoutlib and layoutlib-create tests to DIST_DIR for sdk
targets. These can be used for continuous testing on the build server.

Change-Id: I747dddcddfd8009937668bec4d75cb99bf63235f
(cherry picked from commit f9c749c9901c459f77ffc6f4fbbc15f4142c6e0a)
ridge/tests/Android.mk
reate/tests/Android.mk
bd4133133a55d0cf6a36bb39e89cfd09078d01e9 03-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Build layoutlib_create tests. [DO NOT MERGE]

Change-Id: Ia13a090f8ec29b2b2a107825b6a13d7db77e6d61
(cherry picked from commit 2294f939bc79ce902a40db37def64cc28394d56b)
reate/tests/Android.mk
3f0e467a0627b435493e5f45d672421bfb931c22 25-Aug-2014 Deepanshu Gupta <deepanshu@google.com> Remove ANDROID_BUILD_TOP from intelliJ path variables. [DO NOT MERGE]

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
(cherry picked from commit 5377695d4ecf3cc6dc1abe59bbfca63f6137b722)
idea/libraries/asm_4_0.xml
idea/libraries/framework_jar.xml
idea/libraries/guava.xml
idea/libraries/icu4j.xml
idea/libraries/kxml2_2_3_0.xml
idea/libraries/layoutlib_api_prebuilt.xml
idea/libraries/ninepatch_prebuilt.xml
idea/libraries/tools_common_prebuilt.xml
idea/runConfigurations/All_in_bridge.xml
idea/runConfigurations/Create.xml
idea/vcs.xml
ridge/bridge.iml
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
2f3715aaaa79d1a1aa329860d28ae9f5628a132b 04-Aug-2014 Deepanshu Gupta <deepanshu@google.com> Get filename from File faster [DO NOT MERGE]

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
(cherry picked from commit 7dbf91fee96790fbeb9858740be1bb375f29ecb5)
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
b6a37d897aca9d09a09d5c4fa9e60f6f43d6a166 31-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Add testing framework to LayoutLib. [DO NOT MERGE]

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
(cherry picked from commit a8e9517470869fa29946ae1fa1ceeb24c7970391)
gitignore
idea/.name
idea/codeStyleSettings.xml
idea/compiler.xml
idea/copyright/Android.xml
idea/copyright/profiles_settings.xml
idea/encodings.xml
idea/inspectionProfiles/Project_Default.xml
idea/inspectionProfiles/profiles_settings.xml
idea/libraries/asm_4_0.xml
idea/libraries/framework_jar.xml
idea/libraries/guava.xml
idea/libraries/icu4j.xml
idea/libraries/kxml2_2_3_0.xml
idea/libraries/layoutlib_api_prebuilt.xml
idea/libraries/ninepatch_prebuilt.xml
idea/libraries/tools_common_prebuilt.xml
idea/misc.xml
idea/modules.xml
idea/runConfigurations/All_in_bridge.xml
idea/runConfigurations/All_in_create.xml
idea/runConfigurations/Create.xml
idea/scopes/scope_settings.xml
idea/uiDesigner.xml
idea/vcs.xml
ridge/.classpath
ridge/bridge.iml
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/tests/Android.mk
ridge/tests/res/testApp/MyApplication/.gitignore
ridge/tests/res/testApp/MyApplication/build.gradle
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/BuildConfig.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/MyActivity.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$attr.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$dimen.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$drawable.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$id.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$layout.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$menu.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$string.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$style.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R.class
ridge/tests/res/testApp/MyApplication/gradle.properties
ridge/tests/res/testApp/MyApplication/gradle/wrapper/gradle-wrapper.jar
ridge/tests/res/testApp/MyApplication/gradle/wrapper/gradle-wrapper.properties
ridge/tests/res/testApp/MyApplication/gradlew
ridge/tests/res/testApp/MyApplication/gradlew.bat
ridge/tests/res/testApp/MyApplication/proguard-rules.pro
ridge/tests/res/testApp/MyApplication/src/androidTest/java/com/android/layoulib/test/myapplication/ApplicationTest.java
ridge/tests/res/testApp/MyApplication/src/main/AndroidManifest.xml
ridge/tests/res/testApp/MyApplication/src/main/java/com/android/layoutlib/test/myapplication/MyActivity.java
ridge/tests/res/testApp/MyApplication/src/main/res/drawable/ic_launcher.xml
ridge/tests/res/testApp/MyApplication/src/main/res/layout/activity.xml
ridge/tests/res/testApp/MyApplication/src/main/res/layout/layout.xml
ridge/tests/res/testApp/MyApplication/src/main/res/menu/my.xml
ridge/tests/res/testApp/MyApplication/src/main/res/values/dimens.xml
ridge/tests/res/testApp/MyApplication/src/main/res/values/strings.xml
ridge/tests/res/testApp/MyApplication/src/main/res/values/styles.xml
ridge/tests/src/android/graphics/Matrix_DelegateTest.java
ridge/tests/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParserTest.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/setup/ConfigGenerator.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/setup/LayoutLibTestCallback.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/setup/LayoutPullParser.java
reate/create.iml
23f09423cb2cb59333d2f410e89534f0a08ac424 27-Feb-2014 Deepanshu Gupta <deepanshu@google.com> Add tests to the layoutlib eclipse project. [DO NOT MERGE]

Specify the test folder in the layoutlib/bridge eclipse project.

Also add the sourcepath for layoutlib-api-prebuilt.jar

Change-Id: I194ed182618e564388d6df645e2de7f59897fa1e
(cherry picked from commit 36acf8baebc9ab72b3b5fe75d865399ddf7b0132)
ridge/.classpath
33253a4baa6279f81a73425b49dfb6abe5f5416e 01-Oct-2014 Neil Fuller <nfuller@google.com> Switch from FloatMath -> Math and Math.hypot where possible

The motivation is an API change: FloatMath is going to be
deprecated and/or removed. Performance is not the goal of
this change.

That said...

Math is faster than FloatMath with AOT compilation.

While making the change, occurances of:

{Float}Math.sqrt(x * x + y * y) and
{Float}Math.sqrt({Float}Math.pow(x, 2) + {Float}Math.pow(y, 2))

have been replaced with:

{(float)} Math.hypot(x, y)

Right now there is no runtime intrinsic for hypot so is not faster
in all cases for AOT compilation:

Math.sqrt(x * x + y * y) is faster than Math.hypot(x, y) with
AOT, but all other combinations of FloatMath, use of pow() etc.
are slower than hypot().

hypot() has the advantage of being self documenting and
could be optimized in future. None of the behavior differences
around NaN and rounding appear to be important for the cases
looked at: they all assume results and arguments are in range
and usually the results are cast to float.

Different implementations measured on hammerhead / L:

AOT compiled:

[FloatMath.hypot(x, y)]
benchmark=Hypot_FloatMathHypot} 633.85 ns; σ=0.32 ns @ 3 trials

[FloatMath.sqrt(x*x + y*y)]
benchmark=Hypot_FloatMathSqrtMult} 684.17 ns; σ=4.83 ns @ 3 trials

[FloatMath.sqrt(FloatMath.pow(x, 2) + FloatMath.pow(y, 2))]
benchmark=Hypot_FloatMathSqrtPow} 1270.65 ns; σ=12.20 ns @ 6 trials

[(float) Math.hypot(x, y)]
benchmark=Hypot_MathHypot} 96.80 ns; σ=0.05 ns @ 3 trials

[(float) Math.sqrt(x*x + y*y)]
benchmark=Hypot_MathSqrtMult} 23.97 ns; σ=0.01 ns @ 3 trials

[(float) Math.sqrt(Math.pow(x, 2) + Math.pow(y, 2))]
benchmark=Hypot_MathSqrtPow} 156.19 ns; σ=0.12 ns @ 3 trials

Interpreter:

benchmark=Hypot_FloatMathHypot} 1180.54 ns; σ=5.13 ns @ 3 trials
benchmark=Hypot_FloatMathSqrtMult} 1121.05 ns; σ=3.80 ns @ 3 trials
benchmark=Hypot_FloatMathSqrtPow} 3327.14 ns; σ=7.33 ns @ 3 trials
benchmark=Hypot_MathHypot} 856.57 ns; σ=1.41 ns @ 3 trials
benchmark=Hypot_MathSqrtMult} 1028.92 ns; σ=9.11 ns @ 3 trials
benchmark=Hypot_MathSqrtPow} 2539.47 ns; σ=24.44 ns @ 3 trials

Bug: https://code.google.com/p/android/issues/detail?id=36199
Change-Id: I06c91f682095e627cb547d60d936ef87941be692
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/RadialGradient_Delegate.java
ridge/src/android/util/FloatMath_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
171804201dd556f8ce7ee7618661a5c8ee71507a 29-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Always resolve enum when resolving resources.

Enums were resolved only for integers and dimensions. This change
resolves enums for all resource types. Well, almost all. For color and
colorStateList, enums are still not referenced.

Bug: http://b.android.com/76091
Change-Id: Ie43bd1b54fb9877655d31773bdf71d9a6a65c473
ridge/src/android/content/res/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
8d5a15b69160aed1c6239283508b6c113df233fe 27-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Update time in layout preview

Change-Id: Ic32a9cb1f20b472c6898a5f370d8578c011a09bf
ridge/src/com/android/layoutlib/bridge/bars/Config.java
803a59cae71f8b5a76a48c73579ee6d3d34a78f7 26-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Fix error when using list as actionBarNavMode. [DO NOT MERGE]

A bug in the framework leads to the wrong argument being passed to
defStyleRes when obtaining styled attributes. The framework however just
ignores the attribute in such a case. LayoutLib logs an error to help
developers find bugs in their code.

The bug was seen when using list as the actionBarNavMode.

This change ignores the attribute if it detects that it's the framework
bug. Also, we change the error to a warning.

Change-Id: I58e1fe4469de0329a27b577d75c0a59c48d0381b
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
c8cbff8bdc6c8e61a177eeb1aa728038e0aa86dd 26-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Fix error when using list as actionBarNavMode. [DO NOT MERGE]

A bug in the framework leads to the wrong argument being passed to
defStyleRes when obtaining styled attributes. The framework however just
ignores the attribute in such a case. LayoutLib logs an error to help
developers find bugs in their code.

The bug was seen when using list as the actionBarNavMode.

This change ignores the attribute if it detects that it's the framework
bug. Also, we change the error to a warning.

Change-Id: I58e1fe4469de0329a27b577d75c0a59c48d0381b
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
bc1944560ca6fe96ad7d2170c13b823f90cd48fd 16-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Build LayoutLib tests with Java 6" into lmp-dev
0f6e5d2ab775d23961a460b289030cf4db841a03 16-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Build LayoutLib tests with Java 6

Build the layoutlib tests with Java 6, so that we can test LayoutLib on
Java 6 also.

Change-Id: I8ab344af29c880dafdc195d8b061a1d08e724e26
ridge/tests/Android.mk
8d4e6cb06005a2ce994360340a6191f0690db8f4 14-Sep-2014 John Spurlock <jspurlock@google.com> Saver: PowerManager call to set low power mode.

- Add an explicit power manager call to set the low power mode state,
instead of trying manage everything around a single setting.
- When low-power mode is triggered by falling below the configured
threshold, it does not update the setting.
- The "is-enabled" api returns setting || below configured trigger.
- Move the snooze management into the new api call.
- Callers (sysui + settings) updated to use the api instead of the
setting.
- Handles the case where the level does an unpowered leap out of the
low battery level. (Possible if powered in-between while the device
is off)

Bug:17460535
Change-Id: Ic030504c9cad9868a7137abbe837b170da37852b
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
820ce63cea8b458bf96b002accab99acb2f49c0a 11-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Merge "LayoutLib: support font weights." into lmp-dev
145bc2d067faa3fb49b71e9e8c8c70b40564061a 28-Aug-2014 Deepanshu Gupta <deepanshu@google.com> LayoutLib: support font weights.

Also fixes a shader delegate method.

Change-Id: I86be80ab55d04760084d5bf39235f2ee4de7be23
ridge/src/android/graphics/FontFamily_Delegate.java
ridge/src/android/graphics/Shader_Delegate.java
ridge/src/android/graphics/Typeface_Delegate.java
f5cc3644f6d246138d22f35d00f1ce562cd715d5 10-Sep-2014 Dianne Hackborn <hackbod@google.com> Fix build.

Change-Id: I92eabc35168acfe58641917179be0d90a14f2f11
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
8f92d92a0992456b56f3d552531129c787db7a08 09-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Build layoutlib create tests as part of sdk build.

LayoutLib Create tests are now built whenever LayoutLib create is built.

Change-Id: Id215e8690e435019579dba1734090a0d585f37e1
reate/Android.mk
8d29a06ad770d52ba4e62d0991efd8325c0eadfd 09-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Update IntelliJ project file for IntelliJ 14" into lmp-dev
93b828de58f02ab85371cb1eaa7f1a23a03a609e 09-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Add layoutlib tests to DIST_DIR" into lmp-dev
fa4e214814b795350366225b76e1ae6e3224b91d 09-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Remove warning for null entries in resource array." into lmp-dev
8c766fea936121e311745099adea1efc03d0d199 08-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Update IntelliJ project file for IntelliJ 14

IntelliJ keeps reordering the options this way each time the project is
opened.

Change-Id: I0e19b5b0a858b3fa9a1134b883ed5180c4ef146e
idea/codeStyleSettings.xml
2e7f3bdcc9ec0b3e95b565b943ecee2210f4b937 05-Sep-2014 Winson Chung <winsonc@google.com> Removing unnecessary delays, ensuring transition thumbnail is the size of the header. (Bug. 16987565)

Change-Id: Ic104876c5fe16997eca00e0a2b3d8644c927120c
ridge/src/android/view/IWindowManagerImpl.java
a0904bf7aa0ec7a954b5740c67bd922171c72ca1 05-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Add layoutlib tests to DIST_DIR

Add the layoutlib and layoutlib-create tests to DIST_DIR for sdk
targets. These can be used for continuous testing on the build server.

Change-Id: I747dddcddfd8009937668bec4d75cb99bf63235f
ridge/tests/Android.mk
reate/tests/Android.mk
cd0bb17d30e360c44e03b33bae3d42114b8cc2fb 04-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Remove warning for null entries in resource array.

Change-Id: I32e0b8129e29f3e1e5a472b26e16f3fd06d4b91b
ridge/src/android/content/res/BridgeTypedArray.java
a780eee46244062d699f76875fd05775c2ee92de 04-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Resolve color xml attributes properly. [DO NOT MERGE]" into klp-modular-dev
509e5db14908f85c1ad4b93e8bbed5afd4c2c8fe 04-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Resolve color xml attributes properly. [DO NOT MERGE]" into klp-dev
708df7bc45bc29bac3f2a7ed448249a9417df6c0 04-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Remove ANDROID_BUILD_TOP from intelliJ path variables." into lmp-dev
db0b8a1997ef64536d27744e261e6bf094019f76 04-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Merge "enums in dimension attributes." into lmp-dev
351ed32961365c735713ee68c71fc007f532f752 04-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Null out "@null" attributes." into lmp-dev
bcbe8fcdb1a285d2d26ae29496f2ea604836bb4e 04-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Merge "LayoutLib: Fix warnings in ResourceHelper." into lmp-dev
a7c2419ec9ea8f5bdc45e67cbd8866be1d4c7e41 04-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Merge "LayoutLib: Allow '+' in float attributes." into lmp-dev
d75edc41a608e2f60ceffa590089d08faaa12e51 04-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Fix invalid conditional check." into lmp-dev
b988c8fa66f35a3f046ee9066ed0dc0f2b4c495b 03-Sep-2014 Deepanshu Gupta <deepanshu@google.com> Build layoutlib_create tests.

Change-Id: Ia13a090f8ec29b2b2a107825b6a13d7db77e6d61
reate/tests/Android.mk
1a12b805698c7cba9c2daa78c76c055afbdfa9fc 27-Aug-2014 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Fix warnings in ResourceHelper.

Fix intelliJ warnings in ResourceHelper. Most of them just change
boolean checks "x == false" with "!x".

Change-Id: I278645e2807affd8b3183a4a6f5e4fa2ab7b3d21
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
458f2a7bbbcc45d12b575fe9f3b2f8e1a20f9b1c 27-Aug-2014 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Allow '+' in float attributes.

Earlier change to fix the invalid conditional check inadvertedly
disallowed '+'.

Change-Id: I75a37926681fe3a496482d6fb75161ac75326109
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
ca22ba9eafe4193d213c5897f9303d02062effb4 27-Aug-2014 Deepanshu Gupta <deepanshu@google.com> 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
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
bc34eb11f67c46b0808d2a65628077faed0eefb0 26-Aug-2014 Deepanshu Gupta <deepanshu@google.com> 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
ridge/src/android/content/res/BridgeTypedArray.java
d4cf391c618e5f370f2cfd9f344baa895d5d3242 26-Aug-2014 Deepanshu Gupta <deepanshu@google.com> 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
ridge/src/android/content/res/BridgeTypedArray.java
a4ccb86ddc8f9f486aee25fb836f4aff97bf7679 23-Aug-2014 Winson Chung <winsonc@google.com> 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
ridge/src/android/view/IWindowManagerImpl.java
ffee9b2740986560a507fc9726c2e4e2eba5db7f 20-Aug-2014 Deepanshu Gupta <deepanshu@google.com> Fix "@null" resource values in LayoutLib. [DO NOT MERGE]

Bug: http://b.android.com/74072
Change-Id: Ib84906d86772ac3df2407e71ad2167797bec4542
(cherry picked from commit c9cd725f1013bed27e6f6594b176c10a6a4c0f16)
ridge/src/android/content/res/BridgeTypedArray.java
e2370f092f1648afd28c007c48e560fc2f7736cd 20-Aug-2014 Deepanshu Gupta <deepanshu@google.com> Fix "@null" resource values in LayoutLib. [DO NOT MERGE]

Bug: http://b.android.com/74072
Change-Id: Ib84906d86772ac3df2407e71ad2167797bec4542
(cherry picked from commit c9cd725f1013bed27e6f6594b176c10a6a4c0f16)
ridge/src/android/content/res/BridgeTypedArray.java
cc7ccc3fc1ea8e287a532b34d4d54ec97bf5aaa8 09-Aug-2014 Deepanshu Gupta <deepanshu@google.com> Resolve color xml attributes properly. [DO NOT MERGE]

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
(cherry picked from commit 81564dfe60020fa977d39d168f682e9d61825660)
ridge/src/android/util/BridgeXmlPullAttributes.java
cb6dfc2869020f73d95e9951387bc310085bee8d 09-Aug-2014 Deepanshu Gupta <deepanshu@google.com> Resolve color xml attributes properly. [DO NOT MERGE]

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
(cherry picked from commit 81564dfe60020fa977d39d168f682e9d61825660)
ridge/src/android/util/BridgeXmlPullAttributes.java
0774bc4605fdd47178cc38258d1b4c40ae113b2f 25-Aug-2014 Deepanshu Gupta <deepanshu@google.com> 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
idea/libraries/asm_4_0.xml
idea/libraries/framework_jar.xml
idea/libraries/guava.xml
idea/libraries/icu4j.xml
idea/libraries/kxml2_2_3_0.xml
idea/libraries/layoutlib_api_prebuilt.xml
idea/libraries/ninepatch_prebuilt.xml
idea/libraries/tools_common_prebuilt.xml
idea/runConfigurations/All_in_bridge.xml
idea/runConfigurations/Create.xml
idea/vcs.xml
ridge/bridge.iml
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
151b68ddc222d66b60b5447a60ab6e246a4d2ac0 20-Aug-2014 Deepanshu Gupta <deepanshu@google.com> Fix "@null" resource values in LayoutLib.

Bug: http://b.android.com/74072
Change-Id: Ib84906d86772ac3df2407e71ad2167797bec4542
ridge/src/android/content/res/BridgeTypedArray.java
553a4e91385111f20ddf426f81b3193b9e951762 15-Aug-2014 Deepanshu Gupta <deepanshu@google.com> 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
ridge/resources/bars/status_bar.xml
ridge/resources/bars/v21/hdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/v21/mdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/v21/xhdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/v21/xhdpi/stat_sys_wifi_signal_4_fully.xml
ridge/src/com/android/layoutlib/bridge/bars/Config.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
ridge/src/com/android/layoutlib/bridge/bars/TitleBar.java
6e8a98c8b75b0a9cc4910285747eb858a3c4a520 18-Aug-2014 Deepanshu Gupta <deepanshu@google.com> am a4ceb9e6: am 32faabbe: Layoutlib: Update wifi and battery icon for KK

* commit 'a4ceb9e64cd1ee6302e41c7799ebb6610af96d0e':
Layoutlib: Update wifi and battery icon for KK
a4ceb9e64cd1ee6302e41c7799ebb6610af96d0e 16-Aug-2014 Deepanshu Gupta <deepanshu@google.com> am 32faabbe: Layoutlib: Update wifi and battery icon for KK

* commit '32faabbe14252397b35516caa9c0d0245bfcc719':
Layoutlib: Update wifi and battery icon for KK
32faabbe14252397b35516caa9c0d0245bfcc719 16-Aug-2014 Deepanshu Gupta <deepanshu@google.com> Layoutlib: Update wifi and battery icon for KK

Change-Id: Ic5c80e83366bb7672049a6bf726d11cf6717f400
(cherry picked from commit 59eedf528ca29a32b6d7f358f5076929f8fbb164)
ridge/resources/bars/hdpi/stat_sys_battery_100.png
ridge/resources/bars/hdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/hdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/hdpi/status_bar_background.9.png
ridge/resources/bars/mdpi/stat_sys_battery_100.png
ridge/resources/bars/mdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/mdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/mdpi/status_bar_background.9.png
ridge/resources/bars/xhdpi/stat_sys_battery_100.png
ridge/resources/bars/xhdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/xhdpi/stat_sys_wifi_signal_4_fully.png
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
59eedf528ca29a32b6d7f358f5076929f8fbb164 16-Aug-2014 Deepanshu Gupta <deepanshu@google.com> Layoutlib: Update wifi and battery icon for KK

Change-Id: Ic5c80e83366bb7672049a6bf726d11cf6717f400
ridge/resources/bars/hdpi/stat_sys_battery_100.png
ridge/resources/bars/hdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/hdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/hdpi/status_bar_background.9.png
ridge/resources/bars/mdpi/stat_sys_battery_100.png
ridge/resources/bars/mdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/mdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/mdpi/status_bar_background.9.png
ridge/resources/bars/xhdpi/stat_sys_battery_100.png
ridge/resources/bars/xhdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/xhdpi/stat_sys_wifi_signal_4_fully.png
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
84a3e7aacf6dbeccf4afb36a29f2f069dca7d486 13-Aug-2014 Jorim Jaggi <jjaggi@google.com> 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
ridge/src/android/view/IWindowManagerImpl.java
a3a3775599d45a0246d70f3f65b06c36289baff7 14-Aug-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Update intelliJ copyright profile" into lmp-dev
aabf346d44933a5d3136160b8a02902f7eab93cd 14-Aug-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Add KitKat wifi and battery icons." into lmp-dev
84cc05cacd2786261b01d3be2364944c90765801 13-Aug-2014 Deepanshu Gupta <deepanshu@google.com> 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
ridge/resources/bars/README
ridge/resources/bars/status_bar.xml
ridge/resources/bars/v11/README
ridge/resources/bars/v11/hdpi/ic_sysbar_back.png
ridge/resources/bars/v11/hdpi/ic_sysbar_home.png
ridge/resources/bars/v11/hdpi/ic_sysbar_recent.png
ridge/resources/bars/v11/ldrtl-hdpi/ic_sysbar_back.png
ridge/resources/bars/v11/ldrtl-hdpi/ic_sysbar_recent.png
ridge/resources/bars/v11/ldrtl-mdpi/ic_sysbar_back.png
ridge/resources/bars/v11/ldrtl-mdpi/ic_sysbar_recent.png
ridge/resources/bars/v11/ldrtl-xhdpi/ic_sysbar_back.png
ridge/resources/bars/v11/ldrtl-xhdpi/ic_sysbar_recent.png
ridge/resources/bars/v11/mdpi/ic_sysbar_back.png
ridge/resources/bars/v11/mdpi/ic_sysbar_home.png
ridge/resources/bars/v11/mdpi/ic_sysbar_recent.png
ridge/resources/bars/v11/xhdpi/ic_sysbar_back.png
ridge/resources/bars/v11/xhdpi/ic_sysbar_home.png
ridge/resources/bars/v11/xhdpi/ic_sysbar_recent.png
ridge/resources/bars/v18/hdpi/stat_sys_battery_100.png
ridge/resources/bars/v18/hdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/v18/mdpi/stat_sys_battery_100.png
ridge/resources/bars/v18/mdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/v18/xhdpi/stat_sys_battery_100.png
ridge/resources/bars/v18/xhdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/v19/hdpi/ic_sysbar_back.png
ridge/resources/bars/v19/hdpi/ic_sysbar_home.png
ridge/resources/bars/v19/hdpi/ic_sysbar_recent.png
ridge/resources/bars/v19/hdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/v19/ldrtl-hdpi/ic_sysbar_back.png
ridge/resources/bars/v19/ldrtl-hdpi/ic_sysbar_recent.png
ridge/resources/bars/v19/ldrtl-mdpi/ic_sysbar_back.png
ridge/resources/bars/v19/ldrtl-mdpi/ic_sysbar_recent.png
ridge/resources/bars/v19/ldrtl-xhdpi/ic_sysbar_back.png
ridge/resources/bars/v19/ldrtl-xhdpi/ic_sysbar_recent.png
ridge/resources/bars/v19/mdpi/ic_sysbar_back.png
ridge/resources/bars/v19/mdpi/ic_sysbar_home.png
ridge/resources/bars/v19/mdpi/ic_sysbar_recent.png
ridge/resources/bars/v19/mdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/v19/xhdpi/ic_sysbar_back.png
ridge/resources/bars/v19/xhdpi/ic_sysbar_home.png
ridge/resources/bars/v19/xhdpi/ic_sysbar_recent.png
ridge/resources/bars/v19/xhdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/v19/xxhdpi/ic_sysbar_back.png
ridge/resources/bars/v19/xxhdpi/ic_sysbar_home.png
ridge/resources/bars/v19/xxhdpi/ic_sysbar_recent.png
ridge/resources/bars/v19/xxhdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/v21/hdpi/stat_sys_battery_100.png
ridge/resources/bars/v21/hdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/v21/hdpi/status_bar_background.9.png
ridge/resources/bars/v21/mdpi/stat_sys_battery_100.png
ridge/resources/bars/v21/mdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/v21/mdpi/status_bar_background.9.png
ridge/resources/bars/v21/xhdpi/stat_sys_battery_100.png
ridge/resources/bars/v21/xhdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/v21/xxhdpi/stat_sys_battery_100.png
ridge/resources/bars/v9/hdpi/stat_sys_battery_100.png
ridge/resources/bars/v9/hdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/v9/ldpi/stat_sys_battery_100.png
ridge/resources/bars/v9/mdpi/stat_sys_battery_100.png
ridge/resources/bars/v9/mdpi/stat_sys_wifi_signal_4_fully.png
ridge/src/com/android/layoutlib/bridge/bars/Config.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/IconLoader.java
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
2e7a0355b4ba912241cc1feda049c714118e82a5 13-Aug-2014 Deepanshu Gupta <deepanshu@google.com> Update intelliJ copyright profile

Change-Id: Ib9386b686cb24e1f187d0b636b59b4b13d59bbcd
idea/copyright/profiles_settings.xml
0e4be2540984235a0a7b84ea0466ef3c92d27b07 12-Aug-2014 Deepanshu Gupta <deepanshu@google.com> 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
ridge/src/android/graphics/FontFamily_Delegate.java
14690b0aa380697179eb0432939a8ce96e6561f0 12-Aug-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Improve error reporting when renaming fonts." into lmp-dev
556f941f55a51d85ca49cf1d78b0e042435df1a1 12-Aug-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Don't show warnings for fonts not bundled." into lmp-dev
93b1483e57df2ca5d3a2127e2049c484c5d6f060 12-Aug-2014 Deepanshu Gupta <deepanshu@google.com> Improve error reporting when renaming fonts.

Log a better error in case of invalid input.

Change-Id: Ifb122c1cc624111769e650439aa24290155dbbc4
ename_font/build_font_single.py
e644ff8d92ba040d11636be0fb6c433b52bcc6c2 09-Aug-2014 Deepanshu Gupta <deepanshu@google.com> 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
ridge/src/android/graphics/BidiRenderer.java
ridge/src/android/graphics/FontFamily_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/Typeface_Delegate.java
99d90a621084ec0f799dc7840cc05565a0589031 09-Aug-2014 Deepanshu Gupta <deepanshu@google.com> 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
ridge/src/android/util/BridgeXmlPullAttributes.java
c8f2d5e6dc55f284c0d7e97d007437157858ade7 31-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Add font rename script to rename one font only.

This change adds a script that renames only font at a time. This helps
in writing better Makefile rules and passes the job for parallelization
to the make rather than doing it in python which doesn't support ctrl-c
properly.

Change-Id: Icd380e3cc5d744260d6a9f497aa65a1a6c829c2e
ename_font/build_font_single.py
7ec9d001a96701d530b50bfee23a2ef03482a005 07-Aug-2014 Deepanshu Gupta <deepanshu@google.com> Create a copy of the build_font.py

The copy will be modified to support renaming only one font at a time.
This is done in two steps to improve the diffs.

Change-Id: I47283745c25882283f0464c17e603396a8c9141e
ename_font/build_font_single.py
4e01c59e6c0d953c40153afc080c01d844f76aef 07-Aug-2014 Deepanshu Gupta <deepanshu@google.com> 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.
6ebeefa04cb3c360d8028eb77e60bacf8a800cb1 07-Aug-2014 Deepanshu Gupta <deepanshu@google.com> 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.
7b561be3a6fedebfce412cecd8c36d6686f6576c 07-Aug-2014 Deepanshu Gupta <deepanshu@google.com> 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.
db94ea9ed03dbaa0ca075a433a986d7e414e8f8d 07-Aug-2014 Deepanshu Gupta <deepanshu@google.com> 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.
f970d2c201649843b8d51d094b865f16b15bc0bc 07-Aug-2014 Deepanshu Gupta <deepanshu@google.com> 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.
72cf03a27a73e91d4a3eabf74e0384b310f4a5b2 07-Aug-2014 Deepanshu Gupta <deepanshu@google.com> am 3a544a81: resolved conflicts for merge of a232a68d to jb-mr1.1-docs

* commit '3a544a81b3d2d529b2995f4b5db2077760d440b5':
Fix SystemProperties in LayoutLib.
3a544a81b3d2d529b2995f4b5db2077760d440b5 07-Aug-2014 Deepanshu Gupta <deepanshu@google.com> resolved conflicts for merge of a232a68d to jb-mr1.1-docs

Change-Id: I1ea220e3e0a81880db68abab87beab56dc4a336c
a232a68d4ccf2960350adff6af99a52bde2b021d 06-Aug-2014 Deepanshu Gupta <deepanshu@google.com> resolved conflicts for merge of 5476cfee to jb-mr1-dev

Change-Id: I5197271e6fdd36fed9ca9f9b7221d9a99141a4b4
5476cfee6b8b5e17a7fa72bb141ca95ef913a4f5 06-Aug-2014 Deepanshu Gupta <deepanshu@google.com> am 505c675c: Fix SystemProperties in LayoutLib.

* commit '505c675c3a536ac7c6ad264eb62542537532119c':
Fix SystemProperties in LayoutLib.
505c675c3a536ac7c6ad264eb62542537532119c 06-Aug-2014 Deepanshu Gupta <deepanshu@google.com> 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
ridge/src/android/os/Build_Delegate.java
ridge/src/android/os/SystemProperties_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
4f6a6c48a4e6b9f6e4ced3d10bb51db5d2c22ead 06-Aug-2014 Svetoslav <svetoslavganov@google.com> Fix build

Change-Id: I96eec52472bec122074b0ec2ee051c1b55eaa8f4
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
70d1574db986610232d59ee1406d7532f71812f5 04-Aug-2014 Deepanshu Gupta <deepanshu@google.com> 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
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
b0d767dcf17dd393646b8fc3e8c9f46dfe12e230 04-Aug-2014 Deepanshu Gupta <deepanshu@google.com> Skip loading otf fonts on Java 6

Change-Id: I9668b84812e9be333d10603657dd911024fc292d
ridge/src/android/graphics/BidiRenderer.java
ridge/src/android/graphics/FontFamily_Delegate.java
0c5cd96522bae516a43d79d9014e93bca4727785 02-Aug-2014 Deepanshu Gupta <deepanshu@google.com> Add SystemProperties native method implementations.

Bug: http://b.android.com/73046
Change-Id: Ia695e7beb81f426509b646cfd929201f7e0a4ade
ridge/src/android/os/SystemProperties_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
45aab0eb8f479b9967e7c3c43d0342412fb49b57 02-Aug-2014 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Use ICU's line break algo.

Change-Id: I7e5b0ab7423a72f5a4b0e1163d0a537f0b03ba07
ridge/src/android/text/StaticLayout_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
b80e42f93ff26984c410da0235dd10f463e5722a 31-Jul-2014 Deepanshu Gupta <deepanshu@google.com> 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
ridge/src/com/android/layoutlib/bridge/android/AndroidLocale.java
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/ReplaceMethodCallsAdapter.java
1840e8f2c73570e7b51c66c03d3a50bd00f3f742 31-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Fix Delegates

Change-Id: I2b6a6b679b7a5b2532b76b723155bc2763b70768
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/Shader_Delegate.java
ridge/src/android/text/format/Time_Delegate.java
ridge/src/android/view/accessibility/AccessibilityManager.java
ridge/src/libcore/icu/ICU_Delegate.java
d2a411840c58eaee05499bab0190e3f3656e2e84 31-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Fix LayoutLib Create tests.

Change-Id: Ica3efe417d54da7dc74b21d28215199d37600744
reate/src/com/android/tools/layoutlib/create/AbstractClassAdapter.java
reate/src/com/android/tools/layoutlib/create/DependencyFinder.java
reate/src/com/android/tools/layoutlib/create/Main.java
reate/src/com/android/tools/layoutlib/create/OverrideMethod.java
reate/src/com/android/tools/layoutlib/create/RenameClassAdapter.java
reate/src/com/android/tools/layoutlib/create/StubMethodAdapter.java
reate/src/com/android/tools/layoutlib/create/TransformClassAdapter.java
reate/tests/com/android/tools/layoutlib/create/DelegateClassAdapterTest.java
86eb8b4e29b1ad889fc814bae723d4d6e491f53f 31-Jul-2014 Deepanshu Gupta <deepanshu@google.com> 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
gitignore
idea/.name
idea/codeStyleSettings.xml
idea/compiler.xml
idea/copyright/Android.xml
idea/copyright/profiles_settings.xml
idea/encodings.xml
idea/inspectionProfiles/Project_Default.xml
idea/inspectionProfiles/profiles_settings.xml
idea/libraries/asm_4_0.xml
idea/libraries/framework_jar.xml
idea/libraries/guava.xml
idea/libraries/icu4j.xml
idea/libraries/kxml2_2_3_0.xml
idea/libraries/layoutlib_api_prebuilt.xml
idea/libraries/ninepatch_prebuilt.xml
idea/libraries/tools_common_prebuilt.xml
idea/misc.xml
idea/modules.xml
idea/runConfigurations/All_in_bridge.xml
idea/runConfigurations/All_in_create.xml
idea/runConfigurations/Create.xml
idea/scopes/scope_settings.xml
idea/uiDesigner.xml
idea/vcs.xml
ridge/.classpath
ridge/bridge.iml
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/tests/Android.mk
ridge/tests/res/testApp/MyApplication/.gitignore
ridge/tests/res/testApp/MyApplication/build.gradle
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/BuildConfig.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/MyActivity.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$attr.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$dimen.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$drawable.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$id.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$layout.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$menu.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$string.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R$style.class
ridge/tests/res/testApp/MyApplication/build/intermediates/classes/debug/com/android/layoutlib/test/myapplication/R.class
ridge/tests/res/testApp/MyApplication/gradle.properties
ridge/tests/res/testApp/MyApplication/gradle/wrapper/gradle-wrapper.jar
ridge/tests/res/testApp/MyApplication/gradle/wrapper/gradle-wrapper.properties
ridge/tests/res/testApp/MyApplication/gradlew
ridge/tests/res/testApp/MyApplication/gradlew.bat
ridge/tests/res/testApp/MyApplication/proguard-rules.pro
ridge/tests/res/testApp/MyApplication/src/androidTest/java/com/android/layoulib/test/myapplication/ApplicationTest.java
ridge/tests/res/testApp/MyApplication/src/main/AndroidManifest.xml
ridge/tests/res/testApp/MyApplication/src/main/java/com/android/layoutlib/test/myapplication/MyActivity.java
ridge/tests/res/testApp/MyApplication/src/main/res/drawable/ic_launcher.xml
ridge/tests/res/testApp/MyApplication/src/main/res/layout/activity.xml
ridge/tests/res/testApp/MyApplication/src/main/res/layout/layout.xml
ridge/tests/res/testApp/MyApplication/src/main/res/menu/my.xml
ridge/tests/res/testApp/MyApplication/src/main/res/values/dimens.xml
ridge/tests/res/testApp/MyApplication/src/main/res/values/strings.xml
ridge/tests/res/testApp/MyApplication/src/main/res/values/styles.xml
ridge/tests/src/android/graphics/Matrix_DelegateTest.java
ridge/tests/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParserTest.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/setup/ConfigGenerator.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/setup/LayoutLibTestCallback.java
ridge/tests/src/com/android/layoutlib/bridge/intensive/setup/LayoutPullParser.java
reate/create.iml
a87863a8bddb033ca9ace11e7d78932d70d08ce3 29-Jul-2014 Sander Alewijnse <salewijnse@google.com> 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
ridge/src/android/view/IWindowManagerImpl.java
72c60ab7d487c487806f0f20564693c2264fc99d 31-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Fix classpath for AndroidLocale

Change-Id: I9af9ac05ec26f12529d51e566bf38789a2579390
reate/src/com/android/tools/layoutlib/create/ReplaceMethodCallsAdapter.java
549d39e5496633852467d3245386151cae88fce9 23-Jul-2014 Sander Alewijnse <salewijnse@google.com> 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.
d2a1eec400128f39e1b223a720a88dbd395f3e6e 09-Jul-2014 Sander Alewijnse <salewijnse@google.com> 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
ridge/src/android/view/IWindowManagerImpl.java
aa474ff0f3bf68110dc60f9472c062ff1a4a44ae 22-Jul-2014 Deepanshu Gupta <deepanshu@google.com> am 9a61270d: Merge "LayoutLib: Fix EditText rendering [DO NOT MERGE]" into klp-modular-dev

* commit '9a61270d67f654f3558b29f6b3e78c0b2fbe0178':
LayoutLib: Fix EditText rendering [DO NOT MERGE]
b51750fda671c8ec7a7ed9037aad1a65e49539ec 22-Jul-2014 Deepanshu Gupta <deepanshu@google.com> am 0ca0853c: Merge "Update layoutlib create README [DO NOT MERGE]" into klp-modular-dev

* commit '0ca0853c52a81b317996b2997373f5882b369c80':
Update layoutlib create README [DO NOT MERGE]
c54100d449e30919db4879d52ee2cc25942b44d5 09-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Update layoutlib create README [DO NOT MERGE]

Update the doc to reflect the current state of the tool and use a
consistent 100 char column limit.

Change-Id: I64fb58cc46abbc2f3759cb1f99d42b5090c1409f
(cherry picked from commit 88585f404cb493129847e4487b628062674a4ede)
reate/README.txt
f5fbff9b1aeb3abb94b7ee45f989b965424ee43f 10-Jun-2014 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Fix EditText rendering [DO NOT MERGE]

Framework has overloaded java.lang.System.arraycopy() for char[]. The
method is not present on the Desktop VMs. This change replaces the calls
to this method by its more general alternative - the one using Objects.

TODO: Make it more configurable and flexible to allow rewrite of any
such methods in the future.

Change-Id: I6823b13e52b1c555eb257d02b79707d84e73236f
(cherry picked from commit fc3e93300733b4a161adb9cceebea6cda353d085)
reate/README.txt
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/Main.java
reate/src/com/android/tools/layoutlib/create/ReplaceMethodCallsAdapter.java
0804e0aded17c1aee8cbd2c34247b390051123c3 18-Jul-2014 Deepanshu Gupta <deepanshu@google.com> 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]
87234e8544370d86b305fc55d6a5021c38b65495 18-Jul-2014 Deepanshu Gupta <deepanshu@google.com> 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]
a9e488a6d2b20ecc91412072a5f39022d7fe6926 18-Jul-2014 Deepanshu Gupta <deepanshu@google.com> 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]
d7f2bf067fce644ed902122fffb9e22b6596a0ff 18-Jul-2014 Deepanshu Gupta <deepanshu@google.com> 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]
9c48ab82084828087c47086f2379b4927ec057e2 18-Jul-2014 Deepanshu Gupta <deepanshu@google.com> am ccf7b2aa: am 5af7324a: Fix style resolution for styles with \'.\' [DO NOT MERGE]

* commit 'ccf7b2aac600b6069f03f7f420872b64cc5e6726':
Fix style resolution for styles with '.' [DO NOT MERGE]
610341b3eb99ef2f070c96d60ca30c28283f1dea 18-Jul-2014 Deepanshu Gupta <deepanshu@google.com> 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]
f75489f2f1f2dc4f75205f4b242800777bf7d5ec 18-Jul-2014 Deepanshu Gupta <deepanshu@google.com> am c425c438: am 710a55b4: Fix default level flags for bidi. [DO NOT MERGE]

* commit 'c425c438a38f9065c4fbae76602bce66563950c0':
Fix default level flags for bidi. [DO NOT MERGE]
ccf7b2aac600b6069f03f7f420872b64cc5e6726 18-Jul-2014 Deepanshu Gupta <deepanshu@google.com> am 5af7324a: Fix style resolution for styles with \'.\' [DO NOT MERGE]

* commit '5af7324ace4f318d7395b680beabec7a0f0e39b3':
Fix style resolution for styles with '.' [DO NOT MERGE]
696eb4da44097693a18e99e1f38d062ac1f0e147 18-Jul-2014 Deepanshu Gupta <deepanshu@google.com> 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]
4627c98da4ecb66e32a3273ea3713df528cda6b2 18-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Fix style resolution for styles with '.' [DO NOT MERGE]" into klp-dev
5efee91e12420e59214946c526f80961738a9c1d 18-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Fix style resolution for styles with '.' [DO NOT MERGE]" into jb-mr2-dev
d3ac01ff7616f7135b8b5044816690c93fba8548 18-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Fix style resolution for styles with '.' [DO NOT MERGE]" into jb-mr1.1-dev
871296d9766662f25e8e49d904627cbb48bf8499 22-Jul-2014 Ying Wang <wangying@google.com> am 044a4fc9: am 7c5fe1db: am 1e976fd5: Build framework.jar with multidex support.

* commit '044a4fc9d4b4e13c509be5a0929fd785dd98e178':
Build framework.jar with multidex support.
88e199045bbe10296124203837b24dea116bf108 21-Jul-2014 Ying Wang <wangying@google.com> Build framework.jar with multidex support.

We don't need the framework/framework2 split now with the multidex
support.

Change-Id: I30ee5c7e24df87b2c54e854f17fbf0b5adef4c60
ndroid.mk
e32bac5ef056cd3d7eeda5f0aba8128dad3fd75a 21-Jul-2014 Deepanshu Gupta <deepanshu@google.com> am 37423bbb: am db2a5ff1: am 78d85419: Fix missing initial moveto in path definition.

* commit '37423bbbeab2822b39d859412aa80117a4b85282':
Fix missing initial moveto in path definition.
3b3795601051f9ae7008e2b3e29e683f5d4a2e53 17-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Fix missing initial moveto in path definition.

The Path_Delegate was missing a moveTo call which resulted in
IllegalPathStateException when rendering the ProgressBar.

Change-Id: Ibdae5f90ffd0a71a3de4ba945238239faa0b18b2
ridge/src/android/graphics/Path_Delegate.java
43aab0f419bdc99fa3a6c8e5c5fe4ff3c63ffd01 18-Jul-2014 Deepanshu Gupta <deepanshu@google.com> am cdcebcef: Merge "Fix style resolution for styles with \'.\'" into lmp-preview-dev

* commit 'cdcebcefed9a9bbf6835025d722ae31da1a93c85':
Fix style resolution for styles with '.'
4f8500594f110e9ab36f5daefcec62324abb770a 18-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Fix style resolution for styles with '.'" into lmp-preview-dev
4b8aa28ef2a3c2d0ef602a39262e82eb4134a82d 17-Jul-2014 Ying Wang <wangying@google.com> Fix sdk build.

Change-Id: I9073747f7a12f826fabf99c34dce813edf6462c1
ridge/src/android/content/res/BridgeAssetManager.java
6c57fc30198e8f3a2756aab6bc832450391eec94 16-Jul-2014 Deepanshu Gupta <deepanshu@google.com> DO NOT MERGE - Fix LayoutLib.

This fixes a bad merge and contains partial cherrypicks of the following
commits to make LayoutLib working again:
103d40960daa0420995aa12881bef33892a0a2ab
803d77d8904a8fd66f0370cca6ed7f8b7cf68907
6a08225cee197e5baf80dd06dae46988db284122

Bug: 15987446
Change-Id: I41563305206d30ecdbc7f609c4b90d53edb42689
ridge/src/libcore/icu/ICU_Delegate.java
reate/src/com/android/tools/layoutlib/create/AbstractClassAdapter.java
76dd54b64f0f8a9e321cee157c7778e22adc982f 16-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Use BlendComposite for advanced PorterDuff Modes." into lmp-preview-dev
85d43f01ed0f252df7b5374593792174d50779b7 16-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Use BlendComposite for advanced PorterDuff Modes.

Not all PorterDuff modes are supported by Java's AlphaComposite. Use
BlendComposite for such modes.

Change-Id: I51486a40f09186cf8a87ce1e6a3d1cfcf39fb2d3
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/PorterDuffColorFilter_Delegate.java
ridge/src/android/graphics/PorterDuffXfermode_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/PorterDuffUtility.java
303b908d6176ddec7b9defb683a34dc21208a007 07-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Optimize Blend composites.

Removed redundant array allocations to improve performance for various
blending modes.

Change-Id: Iaba1d6ff3ad03eebdc859c599b610cc593370438
(cherry picked from commit 9ce074610413ce3a5dd0cef9295f0ae9061402b7)
ridge/src/android/graphics/BlendComposite.java
e6bf903db90b491e4dd654ea26da981200d39875 07-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Add BlendComposite.java

The class is adapted from a demo tool for Blending Modes written by
Romain Guy (romainguy@android.com). The tool is available at
http://www.curious-creature.org/2006/09/20/new-blendings-modes-for-java2d/

Change-Id: I8f7c7ca08d3078106056764a4e2f1ce95d990137
(cherry picked from commit 882e08759137a77090c3c7dff8cba425a3393474)
ridge/src/android/graphics/BlendComposite.java
f94ecba4034f84da6fb32fa67a7c9f643bb23aa8 16-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Optimize Blend composites." into lmp-preview-dev
8ee6bcf8096803fe5c4fbc3838a296a692173e49 16-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Use BlendComposite for advanced PorterDuff Modes. [DO NOT MERGE]

Not all PorterDuff modes are supported by Java's AlphaComposite. Use
BlendComposite for such modes.

Change-Id: I51486a40f09186cf8a87ce1e6a3d1cfcf39fb2d3
(cherry picked from commit b15709cd36d28c47660b0ae30918642bfd3d85f7)
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/PorterDuffColorFilter_Delegate.java
ridge/src/android/graphics/PorterDuffXfermode_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/PorterDuffUtility.java
47fa5c920d6eb93e435794544b96a0e4ede4403a 07-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Optimize Blend composites. [DO NOT MERGE]

Removed redundant array allocations to improve performance for various
blending modes.

Change-Id: Iaba1d6ff3ad03eebdc859c599b610cc593370438
(cherry picked from commit 9ce074610413ce3a5dd0cef9295f0ae9061402b7)
ridge/src/android/graphics/BlendComposite.java
3dfc1c21d58a7a6764a436cbf5c3c8ba09db45e5 07-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Add BlendComposite.java [DO NOT MERGE]

The class is adapted from a demo tool for Blending Modes written by
Romain Guy (romainguy@android.com). The tool is available at
http://www.curious-creature.org/2006/09/20/new-blendings-modes-for-java2d/

Change-Id: I8f7c7ca08d3078106056764a4e2f1ce95d990137
(cherry picked from commit 882e08759137a77090c3c7dff8cba425a3393474)
ridge/src/android/graphics/BlendComposite.java
a17674319d3423453507728cb2658e3d8a7922ce 16-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Add BlendComposite.java" into lmp-preview-dev
4ed745d359ada6986ac15d8718452e5c55f40170 16-Jul-2014 Jeff Sharkey <jsharkey@android.com> Add code cache directory for apps.

This provides a directory where apps can cache compiled or optimized
code generated at runtime. The platform will delete all files in
this location on both app and platform upgrade.

Bug: 16187224
Change-Id: I641b21d841c436247f35ff235317e3a4ba520441
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
39488dc3d4c48fe398c4e5dcbac6a7511e815fce 15-Jul-2014 Deepanshu Gupta <deepanshu@google.com> am 7b97e426: Merge "Optimize Blend composites."

* commit '7b97e426bd77b22a64b49112ce2455a51bac0b5b':
Optimize Blend composites.
aaef3efa227e13739085a4e4418f2b004f55faf1 15-Jul-2014 Deepanshu Gupta <deepanshu@google.com> am e147445a: Merge "Add BlendComposite.java"

* commit 'e147445a5e10b3e0fd01c7792e560ad677cd77ab':
Add BlendComposite.java
d8176941eb6466ebe26816d79b37a808103fd81d 15-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Enable assertions in LayoutLib create" into lmp-dev
197d488d5824b2ea2f9e9ee6207a458a6e928e23 15-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Enable assertions in LayoutLib create

Change-Id: Ia74285ae50f5caf118aab9eca4123f8aa71f27b4
ndroid.mk
5cd9dde5a2a77c5095f985186d8f03147fd22870 15-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Support Locale.toLanguageTag on Java 6

Change-Id: I255e79e2c288cd24b350b7c26128bbbb0b2cb9a3
ridge/src/android/content/res/Resources_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/AndroidLocale.java
reate/README.txt
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/ReplaceMethodCallsAdapter.java
c97b4d399699766c13fc26f3a87f909cdfa157e9 15-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Support Locale.toLanguageTag on Java 6" into lmp-dev
bb742462781a73bb25516067c8fe6311c1c8a93e 08-Jul-2014 Craig Mautner <cmautner@google.com> Launch activity behind launching task.

Use ActivityOptions.makeLaunchTaskBehindAnimation() to launch tasks
behind the current task. Includes animations for launching and
launched tasks.

Fixes bug 16157517.

Change-Id: I0a94af70b4748592e94673b958ee824cfb3d7ec0
ridge/src/android/view/IWindowManagerImpl.java
65665aac6387d644f0f40c6bdddf558f096b6e6e 15-Jul-2014 Christopher Tate <ctate@google.com> Fix build

BridgeContext didn't show up in the working tree as a build participant.
Tsk tsk.

Change-Id: I2b52d99f319b43c2906a7fb9b25139a3df5b3676
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
357ebfc5e43ecb35da9207d78a9a8a6c117a1002 10-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Fix default level flags for bidi. [DO NOT MERGE]

Bug: b.android.com/69432
Change-Id: I26ff34a6d1f85c928a9a1cb3dfd739fc7d3a8fb6
(cherry picked from commit 95e636130dfc2c0203f16f5315a7fe14b03eb689)
ridge/src/android/text/AndroidBidi_Delegate.java
10395cbb5cdec35a0ebee1d0b18b58c4803092a1 10-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Fix default level flags for bidi. [DO NOT MERGE]

Bug: b.android.com/69432
Change-Id: I26ff34a6d1f85c928a9a1cb3dfd739fc7d3a8fb6
(cherry picked from commit 95e636130dfc2c0203f16f5315a7fe14b03eb689)
ridge/src/android/text/AndroidBidi_Delegate.java
710a55b419908068529a8e95c4eba88297f67e3f 10-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Fix default level flags for bidi. [DO NOT MERGE]

Bug: b.android.com/69432
Change-Id: I26ff34a6d1f85c928a9a1cb3dfd739fc7d3a8fb6
(cherry picked from commit 95e636130dfc2c0203f16f5315a7fe14b03eb689)
ridge/src/android/text/AndroidBidi_Delegate.java
c5a58437e62698f34abde93ec785c4cbe36aec2d 11-Jul-2014 Deepanshu Gupta <deepanshu@google.com> 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
reate/README.txt
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/DelegateClassAdapter.java
reate/src/com/android/tools/layoutlib/create/DelegateMethodAdapter.java
reate/src/com/android/tools/layoutlib/create/DelegateMethodAdapter2.java
reate/src/com/android/tools/layoutlib/create/Main.java
reate/src/com/android/tools/layoutlib/create/TransformClassAdapter.java
reate/tests/com/android/tools/layoutlib/create/DelegateClassAdapterTest.java
26e32ea559da98dcdebaefb74d4f3c1a5ce705c3 10-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Update delegates

Change-Id: Icd93c31b4e8c8ee5ea242fb8295578937f48ff2a
ridge/src/android/content/res/BridgeTypedArray.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/Typeface_Delegate.java
e1960cc0b541cda93db94de5bef42dff922b9ec3 10-Jul-2014 Deepanshu Gupta <deepanshu@google.com> 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
reate/README.txt
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/ReplaceMethodCallsAdapter.java
69684533cded9923e98789694dea4dd36ace9fab 11-Jul-2014 Yohei Yukawa <yukawa@google.com> Fix SDK build breakage

This should have been included in I3c6b69bd9d79b199afe68d838f25effa6

BUG: 15812658
BUG: 16118603
Change-Id: I298206008fc28faa4f6576a77d56251f873f233c
ridge/src/com/android/layoutlib/bridge/android/BridgeIInputMethodManager.java
3a6cedfe7266163e436f659d9d36d95bea8dcda0 10-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Fix default level flags for bidi. [DO NOT MERGE]

Bug: b.android.com/69432
Change-Id: I26ff34a6d1f85c928a9a1cb3dfd739fc7d3a8fb6
ridge/src/android/text/AndroidBidi_Delegate.java
5af7324ace4f318d7395b680beabec7a0f0e39b3 10-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Fix style resolution for styles with '.' [DO NOT MERGE]

Bug: b.android.com/72698
Change-Id: I96fb549cf5787d9e8cde2245524a8173471a60ca
(cherry picked from commit f2fa79e9b56b71f8aa30e6675255df69f88a173d)
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
da28101757e62602a743b95488f4670f9759bb26 10-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Fix style resolution for styles with '.' [DO NOT MERGE]

Bug: b.android.com/72698
Change-Id: I96fb549cf5787d9e8cde2245524a8173471a60ca
(cherry picked from commit f2fa79e9b56b71f8aa30e6675255df69f88a173d)
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
0f49025998e1d70e3b71a4157c5bab7ae7f6167d 10-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Fix style resolution for styles with '.' [DO NOT MERGE]

Bug: b.android.com/72698
Change-Id: I96fb549cf5787d9e8cde2245524a8173471a60ca
(cherry picked from commit f2fa79e9b56b71f8aa30e6675255df69f88a173d)
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
f2fa79e9b56b71f8aa30e6675255df69f88a173d 10-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Fix style resolution for styles with '.' [DO NOT MERGE]

Bug: b.android.com/72698
Change-Id: I96fb549cf5787d9e8cde2245524a8173471a60ca
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
4f8ce228195be123eeb9b5f066a6abc92b8d923a 10-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Fix style resolution for styles with '.'

Bug: b.android.com/72698
Change-Id: I96fb549cf5787d9e8cde2245524a8173471a60ca
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
4c0f9664de6a69580ea480344e61dc5e7695fd86 09-Jul-2014 Deepanshu Gupta <deepanshu@google.com> am 61d3dea6: am 8c8bb83e: am 8e11659a: Change font family name. [DO NOT MERGE]

* commit '61d3dea672ed8f2f4f90860580c37766b0197a58':
Change font family name. [DO NOT MERGE]
0b4876043be6eb9c2eaccb8270370b9275d4d899 09-Jul-2014 Deepanshu Gupta <deepanshu@google.com> am d53a9fcb: am 979f9c68: am e30d3fdd: Change font family name. [DO NOT MERGE]

* commit 'd53a9fcb7c56d6495e88cc3e39e2892e449a9171':
Change font family name. [DO NOT MERGE]
61d3dea672ed8f2f4f90860580c37766b0197a58 09-Jul-2014 Deepanshu Gupta <deepanshu@google.com> am 8c8bb83e: am 8e11659a: Change font family name. [DO NOT MERGE]

* commit '8c8bb83e623e1932853230cb25a3330fcedb73ff':
Change font family name. [DO NOT MERGE]
10e540733416a94206a656ce749fa046ab3e7655 09-Jul-2014 Deepanshu Gupta <deepanshu@google.com> am ca82da92: am 5d0db7f2: am 5455ddc4: Merge "Add a script to rename fonts for SDK. [DO NOT MERGE]" into jb-mr1.1-dev

* commit 'ca82da92db2949f134af01f577167639cbfc79bc':
Add a script to rename fonts for SDK. [DO NOT MERGE]
e30d3fdd04840bfd90a172492edcacffeeea81da 28-Jun-2014 Deepanshu Gupta <deepanshu@google.com> Change font family name. [DO NOT MERGE]

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
(cherry picked from commit 24f58dbce27f8fa56de992d0c03168a88ae80bad)
ename_font/build_font.py
ename_font/test.py
432d16f97adab9d845904e25b50671cf35cfb628 28-Jun-2014 Deepanshu Gupta <deepanshu@google.com> Change font family name. [DO NOT MERGE]

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
(cherry picked from commit 24f58dbce27f8fa56de992d0c03168a88ae80bad)
ename_font/build_font.py
ename_font/test.py
5455ddc48fc31faea739a21cb46bda04bf36bb92 09-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Add a script to rename fonts for SDK. [DO NOT MERGE]" into jb-mr1.1-dev
8e11659a43b34d465deb631575425b1706547dcc 28-Jun-2014 Deepanshu Gupta <deepanshu@google.com> Change font family name. [DO NOT MERGE]

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
(cherry picked from commit 24f58dbce27f8fa56de992d0c03168a88ae80bad)
ename_font/build_font.py
ename_font/test.py
9ce074610413ce3a5dd0cef9295f0ae9061402b7 07-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Optimize Blend composites.

Removed redundant array allocations to improve performance for various
blending modes.

Change-Id: Iaba1d6ff3ad03eebdc859c599b610cc593370438
ridge/src/android/graphics/BlendComposite.java
882e08759137a77090c3c7dff8cba425a3393474 07-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Add BlendComposite.java

The class is adapted from a demo tool for Blending Modes written by
Romain Guy (romainguy@android.com). The tool is available at
http://www.curious-creature.org/2006/09/20/new-blendings-modes-for-java2d/

Change-Id: I8f7c7ca08d3078106056764a4e2f1ce95d990137
ridge/src/android/graphics/BlendComposite.java
1f1a71bed1f868d2bd65ce1e8d9ac62f0786d593 02-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Support Typeface.createFromFile()" into lmp-preview-dev
3c937cf5c730519e750cdee4d5fa61e2a593e33a 01-Jul-2014 Deepanshu Gupta <deepanshu@google.com> 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
ridge/src/android/graphics/FontFamily_Delegate.java
ridge/src/android/graphics/Typeface_Delegate.java
7ea293bc6a31c5b1bf3b2663376a39dc3a79b671 28-Jun-2014 Deepanshu Gupta <deepanshu@google.com> 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
ename_font/build_font.py
ename_font/test.py
19c5349b73c6333a442a975c7a227a0ca99f6829 02-Jul-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Change font family name." into lmp-preview-dev
cbc13f057f8cf6d2fda86d661117d8df3e03c40e 02-Jul-2014 Deepanshu Gupta <deepanshu@google.com> am bdf7f8b0: Merge "Support Typeface.createFromFile()" into lmp-preview-dev

* commit 'bdf7f8b009ca9f276b5368a1cea037c1605f7261':
Support Typeface.createFromFile()
9fe0718492cb1b31596e9bf4bbfefd371f0d2c19 02-Jul-2014 Deepanshu Gupta <deepanshu@google.com> am 1ae18e43: Merge "Change font family name." into lmp-preview-dev

* commit '1ae18e43e9b3727ce855a2a8a799e703484bc5bf':
Change font family name.
3a57d506e9a3ca621f43482eeff98b44e8dea97d 02-Jul-2014 Deepanshu Gupta <deepanshu@google.com> am 036557b6: Merge "Update system icon resolution in LayoutLib." into lmp-preview-dev

* commit '036557b60df5e5425b3563e99ffb21685160e4ab':
Update system icon resolution in LayoutLib.
9657804afb9eb628fa5485750c43e78458b2d002 02-Jul-2014 Adrian Roos <roosa@google.com> Fix layoutlib breakage due to I681b711f6f40a94c25b7acd3a44eb3539486afab

Change-Id: I141f49718c4d538875a68c00101c098fdd7e967b
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
84d1d431cfe3e66029380fa038f8816b06da120a 26-Jun-2014 Deepanshu Gupta <deepanshu@google.com> 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
ridge/src/android/graphics/BidiRenderer.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/text/AndroidBidi_Delegate.java
509d860907691a8eb7ff4c8b949fbee36db70fea 26-Jun-2014 Deepanshu Gupta <deepanshu@google.com> 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
ridge/src/android/graphics/Canvas_Delegate.java
bb5d0cc4369590ce892cca2f717f5d5568c5f655 26-Jun-2014 Deepanshu Gupta <deepanshu@google.com> Update LayoutLib delegates.

Change-Id: I64828bfb963048effbc49a622f5f2aa0203665e6
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/libcore/icu/ICU_Delegate.java
3c989eaa0af6e3c4427af4119cf4949b1f05dba2 25-Jun-2014 Deepanshu Gupta <deepanshu@google.com> 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
ridge/src/dalvik/system/VMRuntime_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
fe2a71bb13d65a2e8d6bcc60e6bda181029c78a0 25-Jun-2014 Deepanshu Gupta <deepanshu@google.com> Report all TestDelegate failures in a single run.

Change-Id: I37fa0a6f300ea89c8d0a60380b77b7d61db01cb7
ridge/tests/src/com/android/layoutlib/bridge/TestDelegates.java
1076be31f1c14f39295cc2ce7a747ee9ad96ee73 27-Jun-2014 Deepanshu Gupta <deepanshu@google.com> 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
ridge/resources/bars/hdpi-v21/ic_sysbar_back.png
ridge/resources/bars/hdpi-v21/ic_sysbar_home.png
ridge/resources/bars/hdpi-v21/ic_sysbar_recent.png
ridge/resources/bars/hdpi/ic_sysbar_back.png
ridge/resources/bars/hdpi/ic_sysbar_home.png
ridge/resources/bars/hdpi/ic_sysbar_recent.png
ridge/resources/bars/hdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/hdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/hdpi/status_bar_background.9.png
ridge/resources/bars/ldrtl-hdpi-v21/ic_sysbar_back.png
ridge/resources/bars/ldrtl-hdpi/ic_sysbar_back.png
ridge/resources/bars/ldrtl-hdpi/ic_sysbar_recent.png
ridge/resources/bars/ldrtl-mdpi-v21/ic_sysbar_back.png
ridge/resources/bars/ldrtl-mdpi/ic_sysbar_back.png
ridge/resources/bars/ldrtl-mdpi/ic_sysbar_recent.png
ridge/resources/bars/ldrtl-xhdpi-v21/ic_sysbar_back.png
ridge/resources/bars/ldrtl-xhdpi/ic_sysbar_back.png
ridge/resources/bars/ldrtl-xhdpi/ic_sysbar_recent.png
ridge/resources/bars/mdpi-v21/ic_sysbar_back.png
ridge/resources/bars/mdpi-v21/ic_sysbar_home.png
ridge/resources/bars/mdpi-v21/ic_sysbar_recent.png
ridge/resources/bars/mdpi/ic_sysbar_back.png
ridge/resources/bars/mdpi/ic_sysbar_home.png
ridge/resources/bars/mdpi/ic_sysbar_recent.png
ridge/resources/bars/mdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/mdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/mdpi/status_bar_background.9.png
ridge/resources/bars/v11/README
ridge/resources/bars/v11/hdpi/ic_sysbar_back.png
ridge/resources/bars/v11/hdpi/ic_sysbar_home.png
ridge/resources/bars/v11/hdpi/ic_sysbar_recent.png
ridge/resources/bars/v11/ldrtl-hdpi/ic_sysbar_back.png
ridge/resources/bars/v11/ldrtl-hdpi/ic_sysbar_recent.png
ridge/resources/bars/v11/ldrtl-mdpi/ic_sysbar_back.png
ridge/resources/bars/v11/ldrtl-mdpi/ic_sysbar_recent.png
ridge/resources/bars/v11/ldrtl-xhdpi/ic_sysbar_back.png
ridge/resources/bars/v11/ldrtl-xhdpi/ic_sysbar_recent.png
ridge/resources/bars/v11/mdpi/ic_sysbar_back.png
ridge/resources/bars/v11/mdpi/ic_sysbar_home.png
ridge/resources/bars/v11/mdpi/ic_sysbar_recent.png
ridge/resources/bars/v11/xhdpi/ic_sysbar_back.png
ridge/resources/bars/v11/xhdpi/ic_sysbar_home.png
ridge/resources/bars/v11/xhdpi/ic_sysbar_recent.png
ridge/resources/bars/v21/hdpi/ic_sysbar_back.png
ridge/resources/bars/v21/hdpi/ic_sysbar_home.png
ridge/resources/bars/v21/hdpi/ic_sysbar_recent.png
ridge/resources/bars/v21/hdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/v21/hdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/v21/hdpi/status_bar_background.9.png
ridge/resources/bars/v21/ldrtl-hdpi/ic_sysbar_back.png
ridge/resources/bars/v21/ldrtl-mdpi/ic_sysbar_back.png
ridge/resources/bars/v21/ldrtl-xhdpi/ic_sysbar_back.png
ridge/resources/bars/v21/ldrtl-xxhdpi/ic_sysbar_back.png
ridge/resources/bars/v21/mdpi/ic_sysbar_back.png
ridge/resources/bars/v21/mdpi/ic_sysbar_home.png
ridge/resources/bars/v21/mdpi/ic_sysbar_recent.png
ridge/resources/bars/v21/mdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/v21/mdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/v21/mdpi/status_bar_background.9.png
ridge/resources/bars/v21/xhdpi/ic_sysbar_back.png
ridge/resources/bars/v21/xhdpi/ic_sysbar_home.png
ridge/resources/bars/v21/xhdpi/ic_sysbar_recent.png
ridge/resources/bars/v21/xhdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/v21/xhdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/v21/xxhdpi/ic_sysbar_back.png
ridge/resources/bars/v21/xxhdpi/ic_sysbar_home.png
ridge/resources/bars/v21/xxhdpi/ic_sysbar_recent.png
ridge/resources/bars/xhdpi-v21/ic_sysbar_back.png
ridge/resources/bars/xhdpi-v21/ic_sysbar_home.png
ridge/resources/bars/xhdpi-v21/ic_sysbar_recent.png
ridge/resources/bars/xhdpi/ic_sysbar_back.png
ridge/resources/bars/xhdpi/ic_sysbar_home.png
ridge/resources/bars/xhdpi/ic_sysbar_recent.png
ridge/resources/bars/xhdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/xhdpi/stat_sys_wifi_signal_4_fully.png
ridge/src/com/android/layoutlib/bridge/bars/Config.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
ridge/src/com/android/layoutlib/bridge/impl/Config.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
7a139f3fc9b8c90e4580bb3f4f8f4c90a2b8d088 25-Jun-2014 Deepanshu Gupta <deepanshu@google.com> 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
ridge/src/android/graphics/PorterDuffColorFilter_Delegate.java
baffd0f85b76382b346c18b0eedb0bc9d2766c49 25-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am ac626a67: Merge "Improve PorterDuff support." into lmp-preview-dev

* commit 'ac626a6724bc239fcf3d5b2e207de02c59595c5a':
Improve PorterDuff support.
ead9ce3ff6c7dd9c0607b3eb6496317f8e58e871 24-Jun-2014 Deepanshu Gupta <deepanshu@google.com> 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
ridge/src/android/graphics/PorterDuffColorFilter_Delegate.java
16af3691f5c99089457a6dd16a90e828c3482f0f 24-Jun-2014 Deepanshu Gupta <deepanshu@google.com> Fix bug to render status bar icons

Change-Id: I653c765105dafb02e30322384ca8e4791ac185d2
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
e1d04d5421c3aa3c4cea5da56b3201a942392a85 24-Jun-2014 Deepanshu Gupta <deepanshu@google.com> Fix NPE in Ninepatch creation.

Change-Id: Icead69cd8503e90aeb54ff42f9ec297e7af2b518
ridge/src/android/graphics/BitmapFactory_Delegate.java
8dcfd4abe898bb2cd7a13edf77d41e4063180652 24-Jun-2014 Deepanshu Gupta <deepanshu@google.com> Resource resolution bug fix.

Fix a bug where "?attr/foo" in framework resources wasn't resolved
properly.

Change-Id: I9a56974f526774fde79685f668f01021136d68f1
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
42c7ce02f4023c94b315253754a20c20800be731 23-Jun-2014 Deepanshu Gupta <deepanshu@google.com> 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
ridge/resources/bars/hdpi-v21/ic_sysbar_back.png
ridge/resources/bars/hdpi-v21/ic_sysbar_home.png
ridge/resources/bars/hdpi-v21/ic_sysbar_recent.png
ridge/resources/bars/hdpi/ic_sysbar_back.png
ridge/resources/bars/hdpi/ic_sysbar_home.png
ridge/resources/bars/hdpi/ic_sysbar_recent.png
ridge/resources/bars/ldrtl-hdpi-v21/ic_sysbar_back.png
ridge/resources/bars/ldrtl-hdpi/ic_sysbar_back.png
ridge/resources/bars/ldrtl-hdpi/ic_sysbar_recent.png
ridge/resources/bars/ldrtl-mdpi-v21/ic_sysbar_back.png
ridge/resources/bars/ldrtl-mdpi/ic_sysbar_back.png
ridge/resources/bars/ldrtl-mdpi/ic_sysbar_recent.png
ridge/resources/bars/ldrtl-xhdpi-v21/ic_sysbar_back.png
ridge/resources/bars/ldrtl-xhdpi/ic_sysbar_back.png
ridge/resources/bars/ldrtl-xhdpi/ic_sysbar_recent.png
ridge/resources/bars/mdpi-v21/ic_sysbar_back.png
ridge/resources/bars/mdpi-v21/ic_sysbar_home.png
ridge/resources/bars/mdpi-v21/ic_sysbar_recent.png
ridge/resources/bars/mdpi/ic_sysbar_back.png
ridge/resources/bars/mdpi/ic_sysbar_home.png
ridge/resources/bars/mdpi/ic_sysbar_recent.png
ridge/resources/bars/xhdpi-v21/ic_sysbar_back.png
ridge/resources/bars/xhdpi-v21/ic_sysbar_home.png
ridge/resources/bars/xhdpi-v21/ic_sysbar_recent.png
ridge/resources/bars/xhdpi/ic_sysbar_back.png
ridge/resources/bars/xhdpi/ic_sysbar_home.png
ridge/resources/bars/xhdpi/ic_sysbar_recent.png
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/NavigationBar.java
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
ridge/src/com/android/layoutlib/bridge/bars/TitleBar.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
091208709ab2dffa2ab7b22ee17dbb42e1d725e6 24-Jun-2014 Deepanshu Gupta <deepanshu@google.com> 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
d8ef316f1f42ea8e5417ea82bd4e432442cc8c97 24-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am 91977396: Merge "Fix bug to render status bar icons" into lmp-preview-dev

* commit '9197739603eb34df6cbc85c6a7fa0ea359e4776b':
Fix bug to render status bar icons
09348a10be57e4dfaaac582d3a18d37afcd9d53b 24-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am 3a812f47: Merge "Fix NPE in Ninepatch creation." into lmp-preview-dev

* commit '3a812f4755015a7384a8d28bbdeca445c87598b3':
Fix NPE in Ninepatch creation.
2b46b7eed71231b6def62c4d30810a6ad56c25e6 24-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am cd4b38ea: Merge "Resource resolution bug fix." into lmp-preview-dev

* commit 'cd4b38ea1d3605e0e62e5ddc70c052e221fef73c':
Resource resolution bug fix.
08b59fcb217d06d10fc67f376ebfa183d8d759db 24-Jun-2014 Deepanshu Gupta <deepanshu@google.com> 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.
3510c58ad6db0ab06f0e63507fbc34205e3b04a6 24-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am e558d180: Merge "LayoutLib: Support PorterDuffColorFilter" into lmp-preview-dev

* commit 'e558d1806b29385aa14ba60f18e103e2c9aeef1b':
LayoutLib: Support PorterDuffColorFilter
e2f83fac78257241be303747be806368264ecf49 24-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am 52abbced: Merge "Fix SurfaceView in LayoutLib." into lmp-preview-dev

* commit '52abbced58ace68f8a91c4d092061d115af3b268':
Fix SurfaceView in LayoutLib.
f2af1f5d8aaff684f8cc6d8e31454c945e190976 22-Jun-2014 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Support PorterDuffColorFilter

Add support for select modes for PorterDuffColorFilter.

Change-Id: Ia7b4a6a92c326be977dd87a70f54c1f8954b546d
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/ColorFilter_Delegate.java
ridge/src/android/graphics/ColorMatrixColorFilter_Delegate.java
ridge/src/android/graphics/LightingColorFilter_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/PorterDuffColorFilter_Delegate.java
ridge/src/android/graphics/PorterDuffXfermode_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/GcSnapshot.java
ridge/src/com/android/layoutlib/bridge/impl/PorterDuffUtility.java
367a0ce902edbdbea7d63aedd9c98820c00909ae 21-Jun-2014 Deepanshu Gupta <deepanshu@google.com> Fix SurfaceView in LayoutLib.

Added missing constructor.

Change-Id: I3dc8eb510bf4210568d4bb71ad551446d6835ae2
ridge/src/android/view/SurfaceView.java
ridge/src/com/android/layoutlib/bridge/MockView.java
b33729565421c892f2da95f548abdd50b6fad0f6 22-Jun-2014 Deepanshu Gupta <deepanshu@google.com> Merge "LayoutLib: Better support for compact/elegant fonts." into lmp-preview-dev
a88738ff52cfc98bfab71df8d26462032903e2e2 22-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am 3daec197: Merge "LayoutLib: Better support for compact/elegant fonts." into lmp-preview-dev

* commit '3daec1972493c1e867c6cac7f4a2a43a157d52b9':
LayoutLib: Better support for compact/elegant fonts.
4a2ff7a4d8197309d209ff01417b408cb435768a 22-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am f791b120: Merge "Material navigation bar for layoutlib." into lmp-preview-dev

* commit 'f791b1205192e525590f72c465e7e4c185112eb0':
Material navigation bar for layoutlib.
80f1fe5f7cc80b6f1da142c782ccbbad45d878a8 19-Jun-2014 Brian Carlstrom <bdc@google.com> am f8077cf2: am 8e21e215: Merge "Switch from core to core-libart"

* commit 'f8077cf2d7ee55dbf02ec0c65a05db7e5c2fabfc':
Switch from core to core-libart
f8077cf2d7ee55dbf02ec0c65a05db7e5c2fabfc 19-Jun-2014 Brian Carlstrom <bdc@google.com> am 8e21e215: Merge "Switch from core to core-libart"

* commit '8e21e21550eddce01ad06fdf05b342993bf44c6a':
Switch from core to core-libart
dbcae5ceb766b0bc65fa819841f9bfab9ae11c2f 19-Jun-2014 Brian Carlstrom <bdc@google.com> Switch from core to core-libart

Bug: 14298175
Change-Id: I89db18bf3d88f9511cb2ad943c64ecdbaf09d96f
ndroid.mk
17f6f35f90e589becebc9dd2f43f324bd501fd18 19-Jun-2014 Deepanshu Gupta <deepanshu@google.com> Material navigation bar for layoutlib.

Change-Id: Id65600e5f4ffb3cd0f90c3c710f88d9b668f754f
ridge/resources/bars/hdpi/ic_sysbar_back.png
ridge/resources/bars/hdpi/ic_sysbar_home.png
ridge/resources/bars/hdpi/ic_sysbar_recent.png
ridge/resources/bars/ldrtl-hdpi/ic_sysbar_back.png
ridge/resources/bars/ldrtl-hdpi/ic_sysbar_recent.png
ridge/resources/bars/ldrtl-mdpi/ic_sysbar_back.png
ridge/resources/bars/ldrtl-mdpi/ic_sysbar_recent.png
ridge/resources/bars/ldrtl-xhdpi/ic_sysbar_back.png
ridge/resources/bars/ldrtl-xhdpi/ic_sysbar_recent.png
ridge/resources/bars/mdpi/ic_sysbar_back.png
ridge/resources/bars/mdpi/ic_sysbar_home.png
ridge/resources/bars/mdpi/ic_sysbar_recent.png
ridge/resources/bars/xhdpi/ic_sysbar_back.png
ridge/resources/bars/xhdpi/ic_sysbar_home.png
ridge/resources/bars/xhdpi/ic_sysbar_recent.png
5ba5ab3111d3738ac33efbeb7c4e87f46d923b37 18-Jun-2014 Deepanshu Gupta <deepanshu@google.com> 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]
1595c61d2f1f081111958b4a22e8fec25402f3cd 18-Jun-2014 Deepanshu Gupta <deepanshu@google.com> 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]
7f047f02ad713305acf1de5db7d07792318d69c2 19-Jun-2014 Brian Carlstrom <bdc@google.com> am 80f1fe5f: am f8077cf2: am 8e21e215: Merge "Switch from core to core-libart"

* commit '80f1fe5f7cc80b6f1da142c782ccbbad45d878a8':
Switch from core to core-libart
21b0aab838a1e665e440c4e2d0f4aa4f3769c4a7 16-May-2014 Deepanshu Gupta <deepanshu@google.com> 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.

Change-Id: I675a98db39fea4525e3673656af1764eb7e5bb96
(cherry picked from commit b49e21e153c59b31503a376d62257e4fc6e7ce4f)
ename_font/README
ename_font/Roboto-Regular.ttf
ename_font/build_font.py
ename_font/test.py
b49e21e153c59b31503a376d62257e4fc6e7ce4f 16-May-2014 Deepanshu Gupta <deepanshu@google.com> 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.

Change-Id: I675a98db39fea4525e3673656af1764eb7e5bb96
(cherry picked from commit c57b410c8ef41e269f82f3b42a8d22a15c08755b)
ename_font/README
ename_font/Roboto-Regular.ttf
ename_font/build_font.py
ename_font/test.py
c57b410c8ef41e269f82f3b42a8d22a15c08755b 16-May-2014 Deepanshu Gupta <deepanshu@google.com> 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
ename_font/README
ename_font/Roboto-Regular.ttf
ename_font/build_font.py
ename_font/test.py
1434ea749f669b09aff3f7a98859d2593da32f61 12-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am 92b7c67e: Merge "LayoutLib fixes for API 20 [DO NOT MERGE]" into klp-modular-dev

* commit '92b7c67e719fa125a5af368eb9e00f724c88601d':
LayoutLib fixes for API 20 [DO NOT MERGE]
86837dc24a64af7fb007e5f2ff6b3e1cfe98f844 12-Jun-2014 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Better support for compact/elegant fonts.

Change-Id: I67439924bc6323490ea0c7d7864985b400906f8c
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/Typeface_Delegate.java
9c80488e117d01bfe3f9e8ecf18658cbea9259cf 12-Jun-2014 Deepanshu Gupta <deepanshu@google.com> LayoutLib fixes for API 20 [DO NOT MERGE]

Fixes a bunch of issues with delegate method signatures.

Also cherrypicked commit 664d6f1fe4d6dfa742b3e98051f924dbc190f8ca
which is needed in this branch also.

Bug: 15492736
Change-Id: If99ff279b0d0cabe22942da27388ecb4b800c330
ridge/src/android/graphics/BitmapFactory_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/LightingColorFilter_Delegate.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/libcore/icu/ICU_Delegate.java
a3874f0ac649a865d6ad7a8a032f57539bd0d0c3 13-Jun-2014 Ji-Hwan Lee <jihwan@google.com> LayoutLib: Fix broken sdk builds

Change-Id: I301b312195eb3e57cb581d015e7c0b0492084b3e
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
9ad11ca07fb0c91997cb911015a9f86119b9f387 11-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am e3e1591c: Merge "Remove lxml dependency." into lmp-preview-dev

* commit 'e3e1591cd8d748ba5da228fe857dd785ec7965a9':
Remove lxml dependency.
6370c7f554f140c8fc77fe29c43b075ac3757287 11-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am fe01ace8: Merge "LayoutLib: Support more ContextThemeWrappers" into lmp-preview-dev

* commit 'fe01ace8ac5da2c9716a0eb0cb53fdda823b3910':
LayoutLib: Support more ContextThemeWrappers
3e950680c4aa6492eb20d7a6e2c69af52e36563f 11-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am 0a89c1b0: Merge "LayoutLib: Fix EditText rendering" into lmp-preview-dev

* commit '0a89c1b00762b404966e32beef1ea9a53e4a8b08':
LayoutLib: Fix EditText rendering
1160e6d2f7018117b0c29a7e2adba9ece36faec1 10-Jun-2014 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Fix EditText rendering

Framework has overloaded java.lang.System.arraycopy() for char[]. The
method is not present on the Desktop VMs. This change replaces the calls
to this method by its more general alternative - the one using Objects.

TODO: Make it more configurable and flexible to allow rewrite of any
such methods in the future.

Change-Id: I6823b13e52b1c555eb257d02b79707d84e73236f
reate/README.txt
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/Main.java
reate/src/com/android/tools/layoutlib/create/ReplaceMethodCallsAdapter.java
352d84fb0744adf01c86f890971b6114ef4441ac 11-Jun-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Remove lxml dependency." into lmp-preview-dev
125714173b5ef296f8d50191edcfceedcb19dbde 10-Jun-2014 Deepanshu Gupta <deepanshu@google.com> Remove lxml dependency.

The encoding for the .ttx file generated is now hard-coded to be utf-8.

Change-Id: I71c208327995651fcf44b6961510f84bafb05848
ename_font/build_font.py
ename_font/test.py
b54b78e21554b8450893d4c28e0fe3e9b8c4425e 10-Jun-2014 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Support more ContextThemeWrappers

ContextThemeWrapper may be the base context for another
ContextThemeWrapper. We now extract the base context till we reach the
final context.

Change-Id: I034444a2d1579241543fd24248530b299e72498a
ridge/src/android/view/BridgeInflater.java
ridge/src/android/view/MenuInflater_Delegate.java
ridge/src/com/android/internal/view/menu/BridgeMenuItemImpl.java
75814c19d33d8f206e7b1113d15fe4ae9f2a7c26 09-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am e23620e6: Merge "Build LayoutLib with Java 6" into lmp-preview-dev

* commit 'e23620e684ae73558e42a51f93004c8de07ba8d5':
Build LayoutLib with Java 6
0fcedfd8ea4a613a6669bbe02cb0434c67bdbe01 09-Jun-2014 Yohei Yukawa <yukawa@google.com> Merge "Introduce a sequence number to avoid redundant IPCs"
3d1e8129ebd69db49d80e5d598f608c59b884cdf 06-Jun-2014 Yohei Yukawa <yukawa@google.com> Introduce a sequence number to avoid redundant IPCs

This CL introduces a sequence number to avoid redundant IPCs
between IMM and IMMS. The basic concept is that:
1. IMMS maintains a sequence number for #notifyUserAction.
2. IMMS increases the sequence number whenever the current
IME/subtype is changed.
3. IMMS notifies the new sequence number to IMM.
4. IMM maintains the last sent sequence number and the next
sequence number. IMM should call #notifyUserAction only
once per particular sequence number.
5. IMMS ignores #notifyUserAction if the specified sequence
number is not the expected one.

BUG: 7043015
Change-Id: I19ad8542659bc092b92ee13eb9f1d68ddd4b815a
ridge/src/com/android/layoutlib/bridge/android/BridgeIInputMethodManager.java
acb119f0a257e4e542a4450f60405b21a53f3545 08-Jun-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Build LayoutLib with Java 6" into lmp-preview-dev
f4058c8d6b7d3d36b3ba93eb5996848f8a8412c9 07-Jun-2014 Deepanshu Gupta <deepanshu@google.com> Build LayoutLib with Java 6

Add source and target flags to LayoutLib Bridge to enable compatibility
with Java 6.

Change-Id: I81266af758bb57df037541d6e82600e5020a3c0d
ndroid.mk
ridge/Android.mk
34e0888c99e001bc7bc785658725f8ab15f8a00d 06-Jun-2014 Amith Yamasani <yamasani@google.com> am 87590b53: Merge "Add missing abstract method override in BridgePowerManager." into lmp-preview-dev

* commit '87590b5342c5c4b1fb7b1c6037d64cffd1806025':
Add missing abstract method override in BridgePowerManager.
da8738fabdc0fda6a02606d4d678f399e5d50f29 06-Jun-2014 Amith Yamasani <yamasani@google.com> Add missing abstract method override in BridgePowerManager.

Change-Id: I28a24f33f8a598e487ec21861e918a39a8875d43
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
d8883df650b77dba3be38fb2ca8980594b901461 06-Jun-2014 Dianne Hackborn <hackbod@google.com> am 87bc3c25: Merge "Improvements to low power mode." into lmp-preview-dev

* commit '87bc3c258d8be516bc0fcedeb6eec34088582061':
Improvements to low power mode.
421e2fd044815f00f0160810a052658abd95c4d8 06-Jun-2014 Dianne Hackborn <hackbod@google.com> Merge "Improvements to low power mode." into lmp-preview-dev
eb94fa7975b1e8742f3b00cec6bd4f9d6b329e3a 04-Jun-2014 Dianne Hackborn <hackbod@google.com> Improvements to low power mode.

Add new public API for monitoring low power mode.

BatteryService now puts device in to low power mode when
battery level is low.

Window manager now watches low power mode to turn off
animations.

Modifying the animator scale now gets propagated to all
processes.

Change-Id: I8fa566994764ddd4e1977631e28381ab9409f8ee
ridge/src/android/view/IWindowManagerImpl.java
b78cc309201b85a81f5ce72a7649570924319385 01-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Add missing dependency in layoutlib build file [DO NOT MERGE]

Add missing dependency on built_ext_data

Change-Id: I4e7cca7f6cbc7f5b7416ac9b85a9aec01e61ecd4
(cherry picked from commit e345507ca4b7b83c6e0446788f4404eb697f945b)
ndroid.mk
eaa55cdc8731b13b18ca7eb5c6c1835164c86f01 06-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am ee001119: Merge "LayoutLib: Add assertions for typeface." into lmp-preview-dev

* commit 'ee0011198ff150f972c8afbc5dff695bce2af1f1':
LayoutLib: Add assertions for typeface.
6d14163a1e8e52004236a01d9b3636702933b908 06-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am 242dded6: Merge "LayoutLib: Font variants" into lmp-preview-dev

* commit '242dded6e8b7e5851ad7b80a0c05e4883d2a9f42':
LayoutLib: Font variants
6c1f78f5d6a3070f1c311ac6cf9c64d896c5526f 06-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am 9a9d96bf: Merge "LayoutLib: Add capability to simulate old versions" into lmp-preview-dev

* commit '9a9d96bf044bd75e0d75e16a6002dc20e5399866':
LayoutLib: Add capability to simulate old versions
a19b8c111b6961f20e1fc9132c62d1fd7f98bafe 05-Jun-2014 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Add assertions for typeface.

Framework passes typeface along with the paint object at many places.
Paint_Delegate is supposed to have the typeface object with it. Add
assertions to ensure that the two typefaces are indeed the same.

Change-Id: I68193513c2d99f269c0458d6493f23025bbda385
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ad69aee5ed503d9592c10a0f6d1a5b617d99e6c5 31-May-2014 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Font variants

Update to support font variants properly.

Change-Id: Iabe37babd9ddce80a9ba9eca7e0e5a0ffb090646
ridge/src/android/graphics/FontFamily_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/Typeface_Delegate.java
0297051162193ef2b7d906409868e404f77e4c31 05-Jun-2014 Yohei Yukawa <yukawa@google.com> Trivial method renaming for notifyTextCommitted

This CL does not change existing behavior but only renames
notifyTextCommitted with notifyUserAction so that we can use
not only text commit but also other actions such as just typing
a character will be used as a trigger to update the IME
rotation order for better IME switching experience.

BUG: 7043015
Change-Id: I7f3e13a7226ef0dceee82b67e8a0d8536f7e9807
ridge/src/com/android/layoutlib/bridge/android/BridgeIInputMethodManager.java
d0ca7b623b873b4159d7d77be1771ab573e22028 05-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am dfc3bc9b: Fix build.

* commit 'dfc3bc9b3cf27a72dfd133ce62f5e791ef74659d':
Fix build.
c8e2d0a4f88539f44da405597ede529ceb6339f6 31-May-2014 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Add capability to simulate old versions

Let the IDE know that we can simulate older versions of platform.

Change-Id: Idec6d24296dd0ae04a2d808c14604629e265d458
ridge/src/com/android/layoutlib/bridge/Bridge.java
33dff284df61ed3a2d74839ff4c1f3cb93ab093b 05-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am 4c0d33f2: Merge "Add basic support for simulating older versions." into lmp-preview-dev

* commit '4c0d33f29f295e5ae27ba057fc8cb2270295865a':
Add basic support for simulating older versions.
58ff7de971a8172e40c09c3a8489eb276441e1b6 05-Jun-2014 Deepanshu Gupta <deepanshu@google.com> Fix build.

Change-Id: I877532b5056a035dbd4b0c6c55b5969d6292846a
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
648a309d9badc405bc969bcb4461369bf89fe7ef 05-Jun-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Add basic support for simulating older versions." into lmp-preview-dev
e43dcc1d64b849a878d1994bfdd634e462d16005 05-Jun-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Distinguish between menus in ActionBar and popup." into lmp-preview-dev
9288548527e318f748d0bcbe7e99647a85703ac8 04-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am e478c562: am 905e113f: am 03df93bc: am 5cde33a6: am dcfba78f: am ed5ab0f0: am 022d8a9f: am bad112f2: am c8235b8e: am ffcad247: am 904b89c5: am 295184bc: am 8782a120: resolved conflicts for merge of 61fb5784 to jb-mr1-dev

* commit 'e478c5624d5eeca5adc088d9328582bd5b487963':
Distinguish between menus in ActionBar and popup. [DO NOT MERGE]
e478c5624d5eeca5adc088d9328582bd5b487963 04-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am 905e113f: am 03df93bc: am 5cde33a6: am dcfba78f: am ed5ab0f0: am 022d8a9f: am bad112f2: am c8235b8e: am ffcad247: am 904b89c5: am 295184bc: am 8782a120: resolved conflicts for merge of 61fb5784 to jb-mr1-dev

* commit '905e113f97560dbcf71cab517ab4c1ee4faaa4d3':
Distinguish between menus in ActionBar and popup. [DO NOT MERGE]
905e113f97560dbcf71cab517ab4c1ee4faaa4d3 04-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am 03df93bc: am 5cde33a6: am dcfba78f: am ed5ab0f0: am 022d8a9f: am bad112f2: am c8235b8e: am ffcad247: am 904b89c5: am 295184bc: am 8782a120: resolved conflicts for merge of 61fb5784 to jb-mr1-dev

* commit '03df93bcb854eedc600ef0120fd238ec974c44a1':
Distinguish between menus in ActionBar and popup. [DO NOT MERGE]
5cde33a6ffd6a3be87f6622e67c3d83fb61519cb 04-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am dcfba78f: am ed5ab0f0: am 022d8a9f: am bad112f2: am c8235b8e: am ffcad247: am 904b89c5: am 295184bc: am 8782a120: resolved conflicts for merge of 61fb5784 to jb-mr1-dev

* commit 'dcfba78fbb4dad6792113383b2d32eff7f2c1f88':
Distinguish between menus in ActionBar and popup. [DO NOT MERGE]
3c15d8d6889806d0b517eec03ed6a4f8728ebc16 04-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am 14104896: am e4aa3138: am a9e82914: Merge branch \'klp-dev\' of https://googleplex-android.googlesource.com/_direct/platform/frameworks/base into klp-dev

* commit '14104896770dd26195cd9ccfac8c1604cb95dbc6':
Distinguish between menus in ActionBar and popup. [DO NOT MERGE]
022d8a9f4400dc7ec2926b133fc7151d8a5c24a3 04-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am bad112f2: am c8235b8e: am ffcad247: am 904b89c5: am 295184bc: am 8782a120: resolved conflicts for merge of 61fb5784 to jb-mr1-dev

* commit 'bad112f23f09f8839b4b7294439b0fe725cc2034':
Distinguish between menus in ActionBar and popup. [DO NOT MERGE]
14104896770dd26195cd9ccfac8c1604cb95dbc6 04-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am e4aa3138: am a9e82914: Merge branch \'klp-dev\' of https://googleplex-android.googlesource.com/_direct/platform/frameworks/base into klp-dev

* commit 'e4aa31382139ee2e319110fbfff402e0c6315952':
Distinguish between menus in ActionBar and popup. [DO NOT MERGE]
bad112f23f09f8839b4b7294439b0fe725cc2034 04-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am c8235b8e: am ffcad247: am 904b89c5: am 295184bc: am 8782a120: resolved conflicts for merge of 61fb5784 to jb-mr1-dev

* commit 'c8235b8e7446c849df10ff2f897d2a3743b4934d':
Distinguish between menus in ActionBar and popup. [DO NOT MERGE]
bac0d9ae796920360ee2f2babd8f2c03d4c3c2b8 15-May-2014 Deepanshu Gupta <deepanshu@google.com> Distinguish between menus in ActionBar and popup.

Mark the menus in the ActionBar and the ones in the Overflow popup
separately. This enables the IDE to differentiate between the two and
enable gestures such as double-click to open the menu xml for menus in
the ActionBar and single click for the menus in the Overflow popup.

Change-Id: I7a23f87d34d618a134ffbe3a665be695915d4bae
(cherry picked from commit f542f28a31b38a4e454535a1fea63968811b418c)
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/SystemViewInfo.java
904b89c58465b0d0822478be514572ec752df3e8 04-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am 295184bc: am 8782a120: resolved conflicts for merge of 61fb5784 to jb-mr1-dev

* commit '295184bc71a32a4e9418d34b2adeb0cef4b39781':
Distinguish between menus in ActionBar and popup. [DO NOT MERGE]
295184bc71a32a4e9418d34b2adeb0cef4b39781 04-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am 8782a120: resolved conflicts for merge of 61fb5784 to jb-mr1-dev

* commit '8782a12005e90bbd49be579fb8ede3a42a007380':
Distinguish between menus in ActionBar and popup. [DO NOT MERGE]
e87c63e0e41cf34ef4b1ea1b06bf6a94c1f229c6 04-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am d2dff39b: am b1ca2a0c: am f52fcc70: Merge "Distinguish between menus in ActionBar and popup. [DO NOT MERGE]" into jb-mr1.1-dev

* commit 'd2dff39b587bd073fcf5c97753c8a29e16f4ef57':
Distinguish between menus in ActionBar and popup. [DO NOT MERGE]
8782a12005e90bbd49be579fb8ede3a42a007380 04-Jun-2014 Deepanshu Gupta <deepanshu@google.com> resolved conflicts for merge of 61fb5784 to jb-mr1-dev

Change-Id: I079d5db0d69fd1972e6754cdd1829dfd1645202d
61fb5784322fce5198e74834c32c8d8c547a8adf 04-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am 3ff08eb6: Distinguish between menus in ActionBar and popup. [DO NOT MERGE]

* commit '3ff08eb6bf68868d4f4e872fbbf1ecaf521934a9':
Distinguish between menus in ActionBar and popup. [DO NOT MERGE]
f3f8a73a57a34b405e73c83af8f4d42e9592079c 04-Jun-2014 Craig Mautner <cmautner@google.com> am 05cd6c39: Merge "Force all windows to redraw before unblanking screen" into lmp-preview-dev

* commit '05cd6c39824653e0f7e8641444a7134e8cac72f4':
Force all windows to redraw before unblanking screen
8a0da0184f6c5c95d94ab6adfee79bace4040abd 01-Jun-2014 Craig Mautner <cmautner@google.com> Force all windows to redraw before unblanking screen

The screen turning on would show windows as they were when the screen
turned off. This fix forces all showing windows to redraw first and
only then allow the screen to turn on.

Fixes bug 15092354.

Change-Id: I52c3f47438176a5ac00ba9a4d5205b56a5aa48f9
ridge/src/android/view/IWindowManagerImpl.java
22af5b842869abff5418263e6fb0b4b925077629 04-Jun-2014 Craig Mautner <cmautner@google.com> am 81dfc082: Merge "Force all windows to redraw before unblanking screen" into klp-modular-dev

* commit '81dfc082d2add8463469e3eac9db94d6d93005ce':
Force all windows to redraw before unblanking screen
81dfc082d2add8463469e3eac9db94d6d93005ce 04-Jun-2014 Craig Mautner <cmautner@google.com> Merge "Force all windows to redraw before unblanking screen" into klp-modular-dev
4f69d5b8e976751e9dd0ff2c8bf1b385f06435c4 03-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am 8af310c0: am 8f6a9a65: am 8974a5e6: LayoutLib: Correctly resolve ?attr/foo [DO NOT MERGE]

* commit '8af310c0c6a0922d2a84600f9abf7877009d12ba':
LayoutLib: Correctly resolve ?attr/foo [DO NOT MERGE]
0ab0d875d46d6d8974c9cf3ea5856dcfb557e9a4 03-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am 28f550f0: am 03a83266: am 08d2007b: LayoutLib: Correctly resolve ?attr/foo [DO NOT MERGE]

* commit '28f550f010045d5df9e7762a567fb0351499b846':
LayoutLib: Correctly resolve ?attr/foo [DO NOT MERGE]
ffbf24476c153bbd9293261cc14d9648f72b7369 03-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am 083af20d: am 531bdb5b: am fe6f3049: Remove @NonNull attribute [DO NOT MERGE]

* commit '083af20d9dc0d14eadd2ba03951579f88cd1f671':
Remove @NonNull attribute [DO NOT MERGE]
8af310c0c6a0922d2a84600f9abf7877009d12ba 03-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am 8f6a9a65: am 8974a5e6: LayoutLib: Correctly resolve ?attr/foo [DO NOT MERGE]

* commit '8f6a9a658a8a06eb4f11cfff5dca7edf3c7462ad':
LayoutLib: Correctly resolve ?attr/foo [DO NOT MERGE]
704954c96a797e45d421b8d910ca2426d19f6b37 03-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am 5f56ea8d: am f48ab8fe: am 3b7c09b4: LayoutLib: Correctly resolve ?attr/foo [DO NOT MERGE]

* commit '5f56ea8d802b3a7ce5ba8992a84dd3b462676e0e':
LayoutLib: Correctly resolve ?attr/foo [DO NOT MERGE]
5f56ea8d802b3a7ce5ba8992a84dd3b462676e0e 03-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am f48ab8fe: am 3b7c09b4: LayoutLib: Correctly resolve ?attr/foo [DO NOT MERGE]

* commit 'f48ab8feec71419e574a2d2f08a29be87743ef07':
LayoutLib: Correctly resolve ?attr/foo [DO NOT MERGE]
f48ab8feec71419e574a2d2f08a29be87743ef07 03-Jun-2014 Deepanshu Gupta <deepanshu@google.com> am 3b7c09b4: LayoutLib: Correctly resolve ?attr/foo [DO NOT MERGE]

* commit '3b7c09b4336f421c489523c10278ecfbfb0708a7':
LayoutLib: Correctly resolve ?attr/foo [DO NOT MERGE]
228742d2781c2c6b924e2c2dc0ac2a6b62e33e10 01-Jun-2014 Craig Mautner <cmautner@google.com> Force all windows to redraw before unblanking screen

The screen turning on would show windows as they were when the screen
turned off. This fix forces all showing windows to redraw first and
only then allow the screen to turn on.

Fixes bug 15092354.

Change-Id: I349995bf6446d6c462dccdc2b599bab9ab0ab2c8
ridge/src/android/view/IWindowManagerImpl.java
9ec2eabe5ae9b17064412833ae11b113da453b75 02-Jun-2014 Florin Malita <fmalita@google.com> Merge "Add a native Canvas wrapper."
2ee3c1e189819cc6efb4d7de24f1438bdb824087 31-May-2014 Jeff Sharkey <jsharkey@android.com> Per-app media directories on external storage.

This change defines per-app directories on external storage that
will be scanned and included in MediaStore. This gives apps a way
to write content to secondary shared storage in a way that can
easily be surfaced to other apps.

Bug: 14382377
Change-Id: I4cb367c870509e76f0c2c598f01e2f699780030a
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
3ff08eb6bf68868d4f4e872fbbf1ecaf521934a9 15-May-2014 Deepanshu Gupta <deepanshu@google.com> Distinguish between menus in ActionBar and popup. [DO NOT MERGE]

Mark the menus in the ActionBar and the ones in the Overflow popup
separately. This enables the IDE to differentiate between the two and
enable gestures such as double-click to open the menu xml for menus in
the ActionBar and single click for the menus in the Overflow popup.

Change-Id: I7a23f87d34d618a134ffbe3a665be695915d4bae
(cherry picked from commit 03c0735017a34bac9ea69600b8cf980775331f0e)
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/SystemViewInfo.java
3b7c09b4336f421c489523c10278ecfbfb0708a7 16-May-2014 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Correctly resolve ?attr/foo [DO NOT MERGE]

?attr/foo in platform files wasn't resolved properly. The IDE checked
the app namespace for the attribute even though it is being referenced
from a platform file.

Change-Id: I7db6dfef5b540d99804c298120578da9d060b886
(cherry picked from commit 08d2007b33838570a96c8df890f0757fa920904c)
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
03c0735017a34bac9ea69600b8cf980775331f0e 15-May-2014 Deepanshu Gupta <deepanshu@google.com> Distinguish between menus in ActionBar and popup. [DO NOT MERGE]

Mark the menus in the ActionBar and the ones in the Overflow popup
separately. This enables the IDE to differentiate between the two and
enable gestures such as double-click to open the menu xml for menus in
the ActionBar and single click for the menus in the Overflow popup.

Change-Id: I7a23f87d34d618a134ffbe3a665be695915d4bae
(cherry picked from commit 866d40fc39f7364d95085650244db59f52d4c002)
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/SystemViewInfo.java
08d2007b33838570a96c8df890f0757fa920904c 16-May-2014 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Correctly resolve ?attr/foo [DO NOT MERGE]

?attr/foo in platform files wasn't resolved properly. The IDE checked
the app namespace for the attribute even though it is being referenced
from a platform file.

Change-Id: I7db6dfef5b540d99804c298120578da9d060b886
(cherry picked from commit a0fc1f46264e316449402525fbeb033138ec5f49)
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
fe6f30491f8506a4b2ad895a0f3e68de180e4243 30-May-2014 Deepanshu Gupta <deepanshu@google.com> Remove @NonNull attribute [DO NOT MERGE]

The tools prebuilt in this branch doesn't have the annotation.

Change-Id: I852f91c5202ed5f4c393d1226a4fa0b6fa4d63c1
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
5c3d927e17e98e8fd4a9f3c86f7f4def0bcfa816 08-May-2014 Florin Malita <fmalita@google.com> Add a native Canvas wrapper.

Instead of storing a direct SkCanvas reference, Canvas now tracks
an opaque native wrapper class. The native wrapper can be used to
store additional info for emulating deprecated Skia features
(at this point it only stores a canvas).

Some notes:

* all native handle -> SkCanvas conversions are routed through a
handful of native utility methods.
* safeCanvasSwap() refactored as a lower level setNativeBitmp() - which
is what clients need.
* removed unused get_thread_msec() (Canvas.cpp)

Change-Id: I715a5a6f1e1621c1cfc1e510ae4f2ea15cf11114
ridge/src/android/graphics/Canvas_Delegate.java
866d40fc39f7364d95085650244db59f52d4c002 15-May-2014 Deepanshu Gupta <deepanshu@google.com> Distinguish between menus in ActionBar and popup. [DO NOT MERGE]

Mark the menus in the ActionBar and the ones in the Overflow popup
separately. This enables the IDE to differentiate between the two and
enable gestures such as double-click to open the menu xml for menus in
the ActionBar and single click for the menus in the Overflow popup.

Change-Id: I7a23f87d34d618a134ffbe3a665be695915d4bae
(cherry picked from commit 79f45b43db4dfd605d1e7ddd2c71be4ef8285269)
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/SystemViewInfo.java
a0fc1f46264e316449402525fbeb033138ec5f49 16-May-2014 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Correctly resolve ?attr/foo [DO NOT MERGE]

?attr/foo in platform files wasn't resolved properly. The IDE checked
the app namespace for the attribute even though it is being referenced
from a platform file.

Change-Id: I7db6dfef5b540d99804c298120578da9d060b886
(cherry picked from commit 8974a5e6d8408b4cd93f1befb05cc9b654b71e4a)
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
79f45b43db4dfd605d1e7ddd2c71be4ef8285269 15-May-2014 Deepanshu Gupta <deepanshu@google.com> Distinguish between menus in ActionBar and popup. [DO NOT MERGE]

Mark the menus in the ActionBar and the ones in the Overflow popup
separately. This enables the IDE to differentiate between the two and
enable gestures such as double-click to open the menu xml for menus in
the ActionBar and single click for the menus in the Overflow popup.

Change-Id: I7a23f87d34d618a134ffbe3a665be695915d4bae
(cherry picked from commit f542f28a31b38a4e454535a1fea63968811b418c)
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/SystemViewInfo.java
8974a5e6d8408b4cd93f1befb05cc9b654b71e4a 16-May-2014 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Correctly resolve ?attr/foo [DO NOT MERGE]

?attr/foo in platform files wasn't resolved properly. The IDE checked
the app namespace for the attribute even though it is being referenced
from a platform file.

Change-Id: I7db6dfef5b540d99804c298120578da9d060b886
(cherry picked from commit e21c7ec8a02922a6bec19436897f9ee02be3d6c2)
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
3885220ed562b82d9109bb305c2f9db75853c6ed 15-May-2014 Deepanshu Gupta <deepanshu@google.com> Distinguish between menus in ActionBar and popup.

Mark the menus in the ActionBar and the ones in the Overflow popup
separately. This enables the IDE to differentiate between the two and
enable gestures such as double-click to open the menu xml for menus in
the ActionBar and single click for the menus in the Overflow popup.

Change-Id: I7a23f87d34d618a134ffbe3a665be695915d4bae
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/SystemViewInfo.java
8bd94d502d2dfe17a2147ca4fd7c8baa6bbc06d5 29-May-2014 Craig Mautner <cmautner@google.com> implement keyguardGoingAway() fixes build.

Fix bug 15326529.

Change-Id: I9095fe70721bfb031dd1080da1d61ff4e1a8c8ab
ridge/src/android/view/IWindowManagerImpl.java
85c69944bd40024dfb9a3d036e0dbabd6a457dbb 29-May-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Recurse into directories to find fonts. [DO NOT MERGE]" into lmp-preview-dev
f251b0608900499104da834758b89930a13ab1cc 29-May-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Parallel processing of the fonts. [DO NOT MERGE]" into lmp-preview-dev
28b13b2332ca38869df2825789620e66c6062672 29-May-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Add multiple dir support to build_font.py [DO NOT MERGE]" into lmp-preview-dev
2cb50d45a8ad5534c089e9ae016a855377067bfe 29-May-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Layoutlib: Fix FontFamily_Delegate use after unref" into lmp-preview-dev
1a5b0de877c0392e07c023b6facd12ce8622cce7 29-May-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Update delegates" into lmp-preview-dev
de5637b9ecc7b5ebd6bcf039bbe87a36a42b4ca9 29-May-2014 Xavier Ducrohet <xav@google.com> am ec9aa23e: Merge "Stopgap fix for layoutlib." into lmp-preview-dev

* commit 'ec9aa23e1e214c9359e38205495db225560c2753':
Stopgap fix for layoutlib.
30c624c49c753f502bed59b3a113abdeeac36bf9 29-May-2014 Brian Carlstrom <bdc@google.com> am 1240221a: Tracking ActionBarView change 1181f77bdfaa7bf8a8250cdd13c7b7a1d6ee0c44

* commit '1240221ac9cdc70ce2c79fcc48628d277e00354d':
Tracking ActionBarView change 1181f77bdfaa7bf8a8250cdd13c7b7a1d6ee0c44
4f9c216448bee6eb4c33a57c73c817b187385b97 29-May-2014 Brian Carlstrom <bdc@google.com> am da1d4828: Tracking IWindowManager change 2ea3814083f27567ae07a1b449da3d596dd4d9d5

* commit 'da1d48285f2fc992de691a5abaf7c651a86201a2':
Tracking IWindowManager change 2ea3814083f27567ae07a1b449da3d596dd4d9d5
7ee26070eaa4a8b1cde8e265c7136fba7e79a172 29-May-2014 Xavier Ducrohet <xav@google.com> Merge "Stopgap fix for layoutlib." into lmp-preview-dev
312da405eb82206cdd2581176252241f22d2ad44 29-May-2014 Brian Carlstrom <bdc@google.com> Tracking ActionBarView change 1181f77bdfaa7bf8a8250cdd13c7b7a1d6ee0c44

Change-Id: I29a486557428806f26f900974e74f42f3afa4ad4
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
8c9360f3aace9a6b158b0257655925d08d75fa02 29-May-2014 Brian Carlstrom <bdc@google.com> Tracking IWindowManager change 2ea3814083f27567ae07a1b449da3d596dd4d9d5

Change-Id: I6945cc9b4be174b55173ac2081edc5ee1bee6e67
ridge/src/android/view/IWindowManagerImpl.java
dc62340f18becf51f6f3c94d3994665bcd7dd537 23-May-2014 Deepanshu Gupta <deepanshu@google.com> Stopgap fix for layoutlib.

This is a temporary fix for changes made to TypedArray regrading theme
attributes.

Change-Id: I173fde6d8d3259479b0654ff331bc27bf2814fb0
ridge/src/android/content/res/BridgeTypedArray.java
ridge/src/android/content/res/TypedArray_Delegate.java
5a734548455e5bcc8a5fd6b3972017086d3c1287 29-May-2014 Deepanshu Gupta <deepanshu@google.com> Add basic support for simulating older versions.

This adds rudimentary support for older versions of layoutlib by
changing the color of the status bar to white for froyo and earlier and
omitting the navigation bar for pre-ICS devices.

The color of the icons in the status bar is not changed yet.

Change-Id: I56a16b206ad357b6f3bc5c3d10701d03551847bc
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
ridge/src/com/android/layoutlib/bridge/impl/Config.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
9113968f9570b0c8ada2dec34fa6cf893da7c022 23-May-2014 Deepanshu Gupta <deepanshu@google.com> Layoutlib: Fix FontFamily_Delegate use after unref

FontFamily_Delegate was being reused after the nUnref call. The issue is
fixed by storing the reference to the FontFamily_Delegate directly in
the Typeface_Delegate rather than storing the native pointer.

Change-Id: I0db724a83c4be3d7b64ccba0989cd64129f2a785
ridge/src/android/graphics/FontFamily_Delegate.java
ridge/src/android/graphics/Typeface_Delegate.java
79ee46172b45b0652b2bf8dc8b8889da51ff2459 29-May-2014 Deepanshu Gupta <deepanshu@google.com> Update delegates

Update layoutlib delegates in response to commit
a631a36de986acea2ef6fdfbaf3441a28b914b15

Change-Id: I897a7e3a61286bfae9054415d555febe16410106
ridge/src/android/graphics/BitmapShader_Delegate.java
ridge/src/android/graphics/ComposeShader_Delegate.java
ridge/src/android/graphics/LinearGradient_Delegate.java
ridge/src/android/graphics/RadialGradient_Delegate.java
ridge/src/android/graphics/Shader_Delegate.java
ridge/src/android/graphics/SweepGradient_Delegate.java
baef8c1ffe5c900fb0da9512654bf249b5fc9269 20-May-2014 Deepanshu Gupta <deepanshu@google.com> Layoutlib fixes for L [DO NOT MERGE]

This adds the new delegates that were missing. This starts the work on
changes related to Minikin Fonts.

There are some changes related to TypedArray that still need to be
fixed.

Change-Id: Ic2397b64aa3f1f48926e849b14689c47d9ee7f8c
(cherry picked from commit 7ca3612094270183243938e79337c84effea7ad0)
ridge/src/android/content/res/Resources_Theme_Delegate.java
ridge/src/android/content/res/TypedArray_Delegate.java
ridge/src/android/graphics/BidiRenderer.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/FontFamily_Delegate.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/Typeface_Delegate.java
ridge/src/android/util/Xml_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/impl/FontLoader.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
46eff27c32166f007132bfa5f4effc3c306b5f47 27-May-2014 Deepanshu Gupta <deepanshu@google.com> Recurse into directories to find fonts. [DO NOT MERGE]

We now recurse into directories to find all fonts. This change is needed
to prevent having to list all fonts in external/google-fonts
individually.

As a side effect, we now only copy xml files over.

Change-Id: Ifdea3b8451878c2449ac7c5e17ef3d1b00d1b955
(cherry picked from commit c6364fd90de1600526d3431ce0740b6b856e48f0)
ename_font/build_font.py
d23417ab5d1c623977d11b499c7f3bf2d5fb83b4 27-May-2014 Deepanshu Gupta <deepanshu@google.com> Parallel processing of the fonts. [DO NOT MERGE]

Font renaming for the SDK is now done in parallel.

This now reduces the running time for this script from about 30 mins to
about 5 to 10 mins. More speedup is expected when fonttools is updated.

Change-Id: I2c405f6d3e637e3067c8a1653e3cae206c32c0c3
(cherry picked from commit c6364fd90de1600526d3431ce0740b6b856e48f0)
ename_font/build_font.py
49a60d4d6d1a512f1c193b38b2e7c8153f1150d9 20-May-2014 Deepanshu Gupta <deepanshu@google.com> Add multiple dir support to build_font.py [DO NOT MERGE]

Change-Id: I705d3fbad688a0db309d3062463bf206442b2709
(cherry picked from commit 7e149f02c4e4403101e7e0e88af36cd4ab6f3554)
ename_font/build_font.py
b00cb8b8c7c58843d568da6abcb5fea248cb8299 27-May-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Layoutlib fixes for L"
b6f583aa70a8afd35e0afa1c6e36d7830d93d016 27-May-2014 Deepanshu Gupta <deepanshu@google.com> Recurse into directories to find fonts.

We now recurse into directories to find all fonts. This change is needed
to prevent having to list all fonts in external/google-fonts
individually.

As a side effect, we now only copy xml files over.

Change-Id: Ifdea3b8451878c2449ac7c5e17ef3d1b00d1b955
ename_font/build_font.py
c7919924c63a38dac54277ef5e99c67d510fd501 27-May-2014 Deepanshu Gupta <deepanshu@google.com> Parallel processing of the fonts.

Font renaming for the SDK is now done in parallel.

This now reduces the running time for this script from about 30 mins to
about 5 to 10 mins. More speedup is expected when fonttools is updated.

Change-Id: I2c405f6d3e637e3067c8a1653e3cae206c32c0c3
ename_font/build_font.py
cba9fb915f6bd06fffdca5412132874529d9718c 20-May-2014 Deepanshu Gupta <deepanshu@google.com> Add multiple dir support to build_font.py

Change-Id: I705d3fbad688a0db309d3062463bf206442b2709
ename_font/build_font.py
130d2353edda445b8e36a6b5e4b176fd748035b0 20-May-2014 Deepanshu Gupta <deepanshu@google.com> Layoutlib fixes for L

This adds the new delegates that were missing. This starts the work on
changes related to Minikin Fonts.

There are some changes related to TypedArray that still need to be
fixed.

Change-Id: Ic2397b64aa3f1f48926e849b14689c47d9ee7f8c
ridge/src/android/content/res/Resources_Theme_Delegate.java
ridge/src/android/content/res/TypedArray_Delegate.java
ridge/src/android/graphics/BidiRenderer.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/FontFamily_Delegate.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/Typeface_Delegate.java
ridge/src/android/util/Xml_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/impl/FontLoader.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
e6652217647af133de6981e59abac16a3e908166 21-May-2014 Jeff Brown <jeffbrown@google.com> am c2871696: am 6099fd21: Merge "Fix build." into klp-modular-dev

* commit 'c28716964c4525bf9a291404d7f14e74de23f36f':
Fix build.
c28716964c4525bf9a291404d7f14e74de23f36f 21-May-2014 Jeff Brown <jeffbrown@google.com> am 6099fd21: Merge "Fix build." into klp-modular-dev

* commit '6099fd21e190ffdf8e03ba6d96cce0d53c2765fd':
Fix build.
61116acdc617f0da4ce3019d9332b289b6a5a0ea 21-May-2014 Jeff Brown <jeffbrown@google.com> Fix build.

Change-Id: I00f040ab16cf8a3b7a995b4626d49e70b97fb294
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
779b59ced27c518479c466f45e6bc69ea295a5bf 16-May-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Add a script to rename fonts for SDK."
891e65c5ceff6a7859afab34f75f149b3aefa0c6 16-May-2014 Amith Yamasani <yamasani@google.com> Merge "Variant of sendBroadcast with appOp flag for cross-user."
3cf75729d5a27b8ddd1ea174626dbcf0349a1d07 16-May-2014 Amith Yamasani <yamasani@google.com> Variant of sendBroadcast with appOp flag for cross-user.

Needed for delivering SMS notifications to multiple users.

Change-Id: Ib772292699aba37144621742e6f0ee5c68aadd78
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ad3f2883112102c5ca4f0ce5d8f9e9df62a62f57 16-May-2014 Deepanshu Gupta <deepanshu@google.com> Add a script to rename fonts for SDK.

Create a script that will rename the PS name encoded in the font that is
to be shipped with the SDK.

Change-Id: I675a98db39fea4525e3673656af1764eb7e5bb96
ename_font/README
ename_font/Roboto-Regular.ttf
ename_font/build_font.py
ename_font/test.py
528d876821ea6760f6013e8714f77d8d40975d0d 16-May-2014 Deepanshu Gupta <deepanshu@google.com> Merge "LayoutLib: Correctly resolve ?attr/foo"
fba1dd24bf7b56071490ac62428f96d14f682244 16-May-2014 Deepanshu Gupta <deepanshu@google.com> LayoutLib: Correctly resolve ?attr/foo

?attr/foo in platform files wasn't resolved properly. The IDE checked
the app namespace for the attribute even though it is being referenced
from a platform file.

Change-Id: I7db6dfef5b540d99804c298120578da9d060b886
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
6376c407d433c91174e4cef735ddb0014461a906 15-May-2014 Deepanshu Gupta <deepanshu@google.com> Layoutlib: Update delegates for L

Update delegate method signatures for L.

Change-Id: Ie607293bcae60b2d3a61d1cad3ac5f04bda2a238
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/android/os/Build_Delegate.java
ridge/src/android/os/SystemProperties_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
14edfa8f658066a1d59a890a19218167ad6121a4 14-May-2014 Deepanshu Gupta <deepanshu@google.com> am c1a74400: am 7dfe1fda: am c289ec6b: am 3a559d56: am b5b47565: am 98822f0e: am 6e923e1b: am 90d57721: am 209745a3: am c251147a: am 85ec1445: am f266873c: am 1c55797d: Fix build

* commit 'c1a7440094c94f4369f04f062485c9ea1162a78b':
Fix build
c1a7440094c94f4369f04f062485c9ea1162a78b 14-May-2014 Deepanshu Gupta <deepanshu@google.com> am 7dfe1fda: am c289ec6b: am 3a559d56: am b5b47565: am 98822f0e: am 6e923e1b: am 90d57721: am 209745a3: am c251147a: am 85ec1445: am f266873c: am 1c55797d: Fix build

* commit '7dfe1fdac6f0306e1e31417d58a1a36d4280d2cc':
Fix build
7dfe1fdac6f0306e1e31417d58a1a36d4280d2cc 14-May-2014 Deepanshu Gupta <deepanshu@google.com> am c289ec6b: am 3a559d56: am b5b47565: am 98822f0e: am 6e923e1b: am 90d57721: am 209745a3: am c251147a: am 85ec1445: am f266873c: am 1c55797d: Fix build

* commit 'c289ec6b465648d7d93e6f2dc9ed28822683f7d6':
Fix build
3a559d56a627687d56dc06cc459ef1e7e6b1cd79 14-May-2014 Deepanshu Gupta <deepanshu@google.com> am b5b47565: am 98822f0e: am 6e923e1b: am 90d57721: am 209745a3: am c251147a: am 85ec1445: am f266873c: am 1c55797d: Fix build

* commit 'b5b4756565a5f74c6eb2ca7f90ac839a4289daae':
Fix build
6e923e1b51c87e7b20a98dfc2fff52ca9115c9d4 14-May-2014 Deepanshu Gupta <deepanshu@google.com> am 90d57721: am 209745a3: am c251147a: am 85ec1445: am f266873c: am 1c55797d: Fix build

* commit '90d57721692e45fe6259136296e3cd5b669443fc':
Fix build
90d57721692e45fe6259136296e3cd5b669443fc 14-May-2014 Deepanshu Gupta <deepanshu@google.com> am 209745a3: am c251147a: am 85ec1445: am f266873c: am 1c55797d: Fix build

* commit '209745a32f0a68584aba57acf7c8d1de633b1cda':
Fix build
85ec144538de6c27b22dff1bd45491a334f626ef 14-May-2014 Deepanshu Gupta <deepanshu@google.com> am f266873c: am 1c55797d: Fix build

* commit 'f266873c8059e78410bf43c83fb8f0fd5bfe3362':
Fix build
e0be42a9f915f06dcabfa67f4dd86fb45ff67dbd 14-May-2014 Deepanshu Gupta <deepanshu@google.com> am 40bfb60e: Fix build due to incorrect merges [DO NOT MERGE]

* commit '40bfb60efa0e92259a417a5cbfd6095759c678b7':
Fix build due to incorrect merges [DO NOT MERGE]
f266873c8059e78410bf43c83fb8f0fd5bfe3362 14-May-2014 Deepanshu Gupta <deepanshu@google.com> am 1c55797d: Fix build

* commit '1c55797d0e786b6594e769c2fa424e1b8386648e':
Fix build
40bfb60efa0e92259a417a5cbfd6095759c678b7 14-May-2014 Deepanshu Gupta <deepanshu@google.com> Fix build due to incorrect merges [DO NOT MERGE]

Change-Id: Ib3b4dafeed6ba4c07450d13d9908fb05a1a4542f
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
1c55797d0e786b6594e769c2fa424e1b8386648e 14-May-2014 Deepanshu Gupta <deepanshu@google.com> Fix build

remove a line that shouldn't have been merged into this branch.

The build will still be broken for this branch, but this will fix it for
many branches downstream.

Change-Id: I2f556636640eb823dc2834afae7b536e79b79607
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
e3950823b6126e16158d3c969c2bdd6d914b22dc 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 465a9926: am 21dc46b1: am 569dc64c: am 69ab5946: am fcfb8801: am 18b1525a: am ef24a509: am 900954e3: am 2100476a: am 31a3760a: am 964023c5: am 8bf73eae: am 0ad4f2ce: resolved conflicts for merge of 7377c7be to jb-mr1-dev

* commit '465a99260ea1d868e9aa43d08e63cb85892f188e':
Add Navigation Bar to BridgeWindowManager [DO NOT MERGE]
465a99260ea1d868e9aa43d08e63cb85892f188e 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 21dc46b1: am 569dc64c: am 69ab5946: am fcfb8801: am 18b1525a: am ef24a509: am 900954e3: am 2100476a: am 31a3760a: am 964023c5: am 8bf73eae: am 0ad4f2ce: resolved conflicts for merge of 7377c7be to jb-mr1-dev

* commit '21dc46b14df9456eede9d4eb7082c85bec732058':
Add Navigation Bar to BridgeWindowManager [DO NOT MERGE]
21dc46b14df9456eede9d4eb7082c85bec732058 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 569dc64c: am 69ab5946: am fcfb8801: am 18b1525a: am ef24a509: am 900954e3: am 2100476a: am 31a3760a: am 964023c5: am 8bf73eae: am 0ad4f2ce: resolved conflicts for merge of 7377c7be to jb-mr1-dev

* commit '569dc64cd6b0bb7bdfec97967b192d2a706e3f81':
Add Navigation Bar to BridgeWindowManager [DO NOT MERGE]
69ab594625e274ed4ca6d4a1dc7f8fb19d44f020 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am fcfb8801: am 18b1525a: am ef24a509: am 900954e3: am 2100476a: am 31a3760a: am 964023c5: am 8bf73eae: am 0ad4f2ce: resolved conflicts for merge of 7377c7be to jb-mr1-dev

* commit 'fcfb8801b27fd40ff27c380b8bad9b9a210effca':
Add Navigation Bar to BridgeWindowManager [DO NOT MERGE]
ef24a5091b63fb512d4ca9eb34df6394c3842d33 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 900954e3: am 2100476a: am 31a3760a: am 964023c5: am 8bf73eae: am 0ad4f2ce: resolved conflicts for merge of 7377c7be to jb-mr1-dev

* commit '900954e3cd135bf43db975961056e7661f26a6c6':
Add Navigation Bar to BridgeWindowManager [DO NOT MERGE]
900954e3cd135bf43db975961056e7661f26a6c6 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 2100476a: am 31a3760a: am 964023c5: am 8bf73eae: am 0ad4f2ce: resolved conflicts for merge of 7377c7be to jb-mr1-dev

* commit '2100476ace68858bc7b7356b33aa525e38795592':
Add Navigation Bar to BridgeWindowManager [DO NOT MERGE]
964023c5dcd0334cdcf624eff26d791d9c9617a8 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 8bf73eae: am 0ad4f2ce: resolved conflicts for merge of 7377c7be to jb-mr1-dev

* commit '8bf73eae6c98532c8a597b885b948b9878555441':
Add Navigation Bar to BridgeWindowManager [DO NOT MERGE]
425645c738f200b44d0c9344ec286562a841d155 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 567f948b: am 872a5a1a: am 01fefec9: am 5fc8f945: am b0f2ded5: am 40db4a13: am 9ddb073b: am c70ce72a: am af9fde96: am 425addb9: am a43aaf00: resolved conflicts for merge of 9c00e673 to jb-mr1.1-dev

* commit '567f948b60e9a647610454745b0629c136d492db':
Fix CalendarView to show the right labels. [DO NOT MERGE]
567f948b60e9a647610454745b0629c136d492db 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 872a5a1a: am 01fefec9: am 5fc8f945: am b0f2ded5: am 40db4a13: am 9ddb073b: am c70ce72a: am af9fde96: am 425addb9: am a43aaf00: resolved conflicts for merge of 9c00e673 to jb-mr1.1-dev

* commit '872a5a1a93eef53a18d18778104bb8669b4bc073':
Fix CalendarView to show the right labels. [DO NOT MERGE]
70efbad0648eb96e9becbd0529cc1f34b6ffb986 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am bd5a3e65: am 1677a9bd: Merge "resolve conflicts for merge 5a7b3b65 correctly" into jb-dev-plus-aosp

* commit 'bd5a3e6510e83b161a0e40c191d349524ae4a8e6':
resolve conflicts for merge 5a7b3b65 correctly
8bf73eae6c98532c8a597b885b948b9878555441 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 0ad4f2ce: resolved conflicts for merge of 7377c7be to jb-mr1-dev

* commit '0ad4f2cedde037c2b09a7f09c5f95f0984267c64':
Add Navigation Bar to BridgeWindowManager [DO NOT MERGE]
872a5a1a93eef53a18d18778104bb8669b4bc073 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 01fefec9: am 5fc8f945: am b0f2ded5: am 40db4a13: am 9ddb073b: am c70ce72a: am af9fde96: am 425addb9: am a43aaf00: resolved conflicts for merge of 9c00e673 to jb-mr1.1-dev

* commit '01fefec9397569cf9c7c5b599c16126f1b4d6870':
Fix CalendarView to show the right labels. [DO NOT MERGE]
bd5a3e6510e83b161a0e40c191d349524ae4a8e6 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 1677a9bd: Merge "resolve conflicts for merge 5a7b3b65 correctly" into jb-dev-plus-aosp

* commit '1677a9bdeba3961625236925e754920fca1b7e89':
resolve conflicts for merge 5a7b3b65 correctly
5fc8f945ee6a763b08e47019319432ec71ba1d1a 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am b0f2ded5: am 40db4a13: am 9ddb073b: am c70ce72a: am af9fde96: am 425addb9: am a43aaf00: resolved conflicts for merge of 9c00e673 to jb-mr1.1-dev

* commit 'b0f2ded5e9e84fb51ec5b2cb6b419b040b008276':
Fix CalendarView to show the right labels. [DO NOT MERGE]
0ad4f2cedde037c2b09a7f09c5f95f0984267c64 13-May-2014 Deepanshu Gupta <deepanshu@google.com> resolved conflicts for merge of 7377c7be to jb-mr1-dev

Change-Id: I26d2e3478536826608413094e17cd36da43b4e23
5454be00b182b206bbc9dcd35b88da63631f7e8e 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 5dae7fda: am 9359dc2e: am 2d3fa7ba: Support actionProviderClass attribute for menus [DO NOT MERGE]

* commit '5dae7fda38850a5146a6b8a4edbfd9aa96aea484':
Support actionProviderClass attribute for menus [DO NOT MERGE]
d388afada25c950f87fa285ccfeb1c3343454762 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am b6de60e0: am df2da3d7: am 7bc363ba: Add special system view cookie to OverflowButton. [DO NOT MERGE]

* commit 'b6de60e0020dbed906b1d275de17f8c615b2b242':
Add special system view cookie to OverflowButton. [DO NOT MERGE]
b161d6ba7f85b49e4e19d69bd107d30cdd3c0bc1 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 673d9734: resolved conflicts for merge of 00d09649 to jb-mr1-dev

* commit '673d9734c2d9b62ecd41dcac3c730d242952989e':
Fix style warnings in RenderSessionImpl [DO NOT MERGE]
5dae7fda38850a5146a6b8a4edbfd9aa96aea484 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 9359dc2e: am 2d3fa7ba: Support actionProviderClass attribute for menus [DO NOT MERGE]

* commit '9359dc2e7d6bc671af3fee0c1dc540dd3685365c':
Support actionProviderClass attribute for menus [DO NOT MERGE]
b6de60e0020dbed906b1d275de17f8c615b2b242 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am df2da3d7: am 7bc363ba: Add special system view cookie to OverflowButton. [DO NOT MERGE]

* commit 'df2da3d7c9f82ff2304f630f4ff9fc2cb3001c6f':
Add special system view cookie to OverflowButton. [DO NOT MERGE]
9ddb073bf72d9ca587ecc626dcc9721dd33447c9 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am c70ce72a: am af9fde96: am 425addb9: am a43aaf00: resolved conflicts for merge of 9c00e673 to jb-mr1.1-dev

* commit 'c70ce72a986f029c9f8c43b4060001624176068d':
Fix CalendarView to show the right labels. [DO NOT MERGE]
c70ce72a986f029c9f8c43b4060001624176068d 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am af9fde96: am 425addb9: am a43aaf00: resolved conflicts for merge of 9c00e673 to jb-mr1.1-dev

* commit 'af9fde9680922f072981a4853e37ccfcf974920a':
Fix CalendarView to show the right labels. [DO NOT MERGE]
673d9734c2d9b62ecd41dcac3c730d242952989e 13-May-2014 Deepanshu Gupta <deepanshu@google.com> resolved conflicts for merge of 00d09649 to jb-mr1-dev

Change-Id: Ib3c34a1989d4251c3ac4755c52fe05a81644930a
cc9e359699e9464ac8a8d6bbd4f12c23a0009d3c 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 5280c911: am 0df5ae65: am 0f209967: Add view cookies for action bar menus. [DO NOT MERGE]

* commit '5280c911d81a7db5ec8854850bef60d8b0951358':
Add view cookies for action bar menus. [DO NOT MERGE]
9978c0363e7db4002d4c86d225cd6b1437bca1fc 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 1867f58d: am 3027b69e: am f7e57949: Overflow menu popup for Action Bar in Layoutlib [DO NOT MERGE]

* commit '1867f58d6ceebac899b60b029e34f3a1fcabba7f':
Overflow menu popup for Action Bar in Layoutlib [DO NOT MERGE]
8e015b7ba46b18a4a0741be7d64f389433c79230 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am a5461ebf: resolved conflicts for merge of 6d3c4ab2 to jb-mr1-dev

* commit 'a5461ebfaebf3337a0cf1c752334f23de145a6d1':
Action bar rendering in layoutlib [DO NOT MERGE]
5280c911d81a7db5ec8854850bef60d8b0951358 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 0df5ae65: am 0f209967: Add view cookies for action bar menus. [DO NOT MERGE]

* commit '0df5ae65a91174c99d1af633b45b3a1a7861cd1c':
Add view cookies for action bar menus. [DO NOT MERGE]
1867f58d6ceebac899b60b029e34f3a1fcabba7f 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 3027b69e: am f7e57949: Overflow menu popup for Action Bar in Layoutlib [DO NOT MERGE]

* commit '3027b69e154cffc6e286caf90b0f9af01c473c14':
Overflow menu popup for Action Bar in Layoutlib [DO NOT MERGE]
a43aaf00b583e8a88681cdcc6ebe1ae2c52f6f20 13-May-2014 Deepanshu Gupta <deepanshu@google.com> resolved conflicts for merge of 9c00e673 to jb-mr1.1-dev

Change-Id: I4ab1b0a71b99692458efc3a67c8a8da3690afb7b
a5461ebfaebf3337a0cf1c752334f23de145a6d1 13-May-2014 Deepanshu Gupta <deepanshu@google.com> resolved conflicts for merge of 6d3c4ab2 to jb-mr1-dev

Change-Id: I5c4634897882deb663f32d8148202d7c9189521d
0f26b5102574f0a989023485f4d63a9ac50107d2 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 9053261a: am 052e0c58: am 770e40f8: Fix theme/style resolution in Layoutlib [DO NOT MERGE]

* commit '9053261a5413f401168d25fa4a9749723b232949':
Fix theme/style resolution in Layoutlib [DO NOT MERGE]
727ad35081570c30f9b9ecde84d309a82b653856 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 5594616c: am 9602fc1c: am 87665388: Fix visitFieldInsn in layoutlib_create. [DO NOT MERGE]

* commit '5594616c4f4513dc97b08d6cabb6fd7127dde131':
Fix visitFieldInsn in layoutlib_create. [DO NOT MERGE]
627cab1257bbd80e74ad5db1963aeedbe056b462 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 45693e50: am c9a4badb: am d915dcac: Layoutlib tests now check methods return value [DO NOT MERGE]

* commit '45693e50ecdae9b456e4974dd91758f9e25df2b4':
Layoutlib tests now check methods return value [DO NOT MERGE]
effef17297dffc05511597ccc0f437deb278647f 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am e3b43270: am bdd8fbf6: am 877ae535: Set default text style in layoutlib as NORMAL [DO NOT MERGE]

* commit 'e3b43270e87fd85a6281c91f2897233aac6b6397':
Set default text style in layoutlib as NORMAL [DO NOT MERGE]
c3a0c9f679cf18a512ca194e14a74dde852af831 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 45ca5ba7: am 01cdd312: am 669792b3: Fix sans-serif-thin and sans-serif-light fonts in layoutlib. [DO NOT MERGE]

* commit '45ca5ba7dc3b70dd39991217894eed114eefb1b8':
Fix sans-serif-thin and sans-serif-light fonts in layoutlib. [DO NOT MERGE]
835cbaa192f324ec14361afc700cc44a6bfa47b7 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 9f965258: am d094742d: am cda89ca0: Fix a bug in Nine Patch library. [DO NOT MERGE]

* commit '9f9652587dd08e5a4f7c8195eb904cd0f0c3f6c4':
Fix a bug in Nine Patch library. [DO NOT MERGE]
ce9e87f7436ab6506b5a2949930ce00cd0bc65f5 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 8c5c2410: am 7bb8de58: am a2b34c96: Optimize layout rendering in layoutlib [DO NOT MERGE]

* commit '8c5c2410ae9df60d9462784370965a0417e06fa4':
Optimize layout rendering in layoutlib [DO NOT MERGE]
8a4f39351f5784c81501462fc84d6fe199bdedca 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 48bf7b49: am 69b3115e: am e183855c: Add methods for Time_Delegate [DO NOT MERGE]

* commit '48bf7b49bb361a4084e5fb4c6d0ae497a606c700':
Add methods for Time_Delegate [DO NOT MERGE]
838e54826bbb03cec41684340c63be993d2dc160 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 94d33cfc: am 82d5bd98: am e5a2347b: Fix NPE in layoutlib. [DO NOT MERGE]

* commit '94d33cfce1f32af4480f941fdd6c9942bb203d2c':
Fix NPE in layoutlib. [DO NOT MERGE]
df8a15b31ec4c72042f80a90365867939bddffd1 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am d4e6727d: am d5de1bd6: am 30505abe: Fix text size in Fake Action Bar. [DO NOT MERGE]

* commit 'd4e6727d02f7507fdfd6cbbabd03d6e922127e4b':
Fix text size in Fake Action Bar. [DO NOT MERGE]
5f61e9b4ef31274f64965cf676757c84b368a2f1 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am ed98abec: am 8a70bcef: resolved conflicts for merge 5a7b3b65 to jb-dev-plus-aosp

* commit 'ed98abecad359ab1765ac1f698c8ba06dbd00745':
Remove references to non-std Java classes. [DO NOT MERGE]
520f585bc6409b5c0024105a46b282245dad42e0 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 2cbe100a: am 40fea8b1: am 4b5da86d: Fix DatePicker and Calendar widget in layoutlib. [DO NOT MERGE]

* commit '2cbe100a9bc6d2b3bf828432a1527f0ac239e575':
Fix DatePicker and Calendar widget in layoutlib. [DO NOT MERGE]
2c167d0f6a370f9272ef24746222772586c1758c 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 632c9e2d: am 065ce2e8: am 5c166c9c: Layoutlib: Update the wifi icon in the status bar. [DO NOT MERGE]

* commit '632c9e2dabc44b24f04c3418e4a3540b22db792b':
Layoutlib: Update the wifi icon in the status bar. [DO NOT MERGE]
9053261a5413f401168d25fa4a9749723b232949 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 052e0c58: am 770e40f8: Fix theme/style resolution in Layoutlib [DO NOT MERGE]

* commit '052e0c589e5cf714ca71bc8d7b3ce8b3f6c4cb96':
Fix theme/style resolution in Layoutlib [DO NOT MERGE]
5594616c4f4513dc97b08d6cabb6fd7127dde131 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 9602fc1c: am 87665388: Fix visitFieldInsn in layoutlib_create. [DO NOT MERGE]

* commit '9602fc1c00e5e5cdf26cdc3fe22022ffcd115361':
Fix visitFieldInsn in layoutlib_create. [DO NOT MERGE]
45693e50ecdae9b456e4974dd91758f9e25df2b4 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am c9a4badb: am d915dcac: Layoutlib tests now check methods return value [DO NOT MERGE]

* commit 'c9a4badb54320f8c52d2da06a762b5e6eef00ee0':
Layoutlib tests now check methods return value [DO NOT MERGE]
e3b43270e87fd85a6281c91f2897233aac6b6397 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am bdd8fbf6: am 877ae535: Set default text style in layoutlib as NORMAL [DO NOT MERGE]

* commit 'bdd8fbf6eae886dc3b2cd716745ede918773a2c4':
Set default text style in layoutlib as NORMAL [DO NOT MERGE]
45ca5ba7dc3b70dd39991217894eed114eefb1b8 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 01cdd312: am 669792b3: Fix sans-serif-thin and sans-serif-light fonts in layoutlib. [DO NOT MERGE]

* commit '01cdd3123f408dc41a2bd4786f3a943157ab6c69':
Fix sans-serif-thin and sans-serif-light fonts in layoutlib. [DO NOT MERGE]
9f9652587dd08e5a4f7c8195eb904cd0f0c3f6c4 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am d094742d: am cda89ca0: Fix a bug in Nine Patch library. [DO NOT MERGE]

* commit 'd094742d2e19371291409886bb80f070df099533':
Fix a bug in Nine Patch library. [DO NOT MERGE]
8c5c2410ae9df60d9462784370965a0417e06fa4 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 7bb8de58: am a2b34c96: Optimize layout rendering in layoutlib [DO NOT MERGE]

* commit '7bb8de580a451621480913d7839fd7eb784ab689':
Optimize layout rendering in layoutlib [DO NOT MERGE]
48bf7b49bb361a4084e5fb4c6d0ae497a606c700 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 69b3115e: am e183855c: Add methods for Time_Delegate [DO NOT MERGE]

* commit '69b3115e1c02f2b22165b93bd9bcc5c90ec69b12':
Add methods for Time_Delegate [DO NOT MERGE]
94d33cfce1f32af4480f941fdd6c9942bb203d2c 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 82d5bd98: am e5a2347b: Fix NPE in layoutlib. [DO NOT MERGE]

* commit '82d5bd98b77a9955e375b075e262639625c40232':
Fix NPE in layoutlib. [DO NOT MERGE]
d4e6727d02f7507fdfd6cbbabd03d6e922127e4b 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am d5de1bd6: am 30505abe: Fix text size in Fake Action Bar. [DO NOT MERGE]

* commit 'd5de1bd6305dc8885027504996602755b1e79099':
Fix text size in Fake Action Bar. [DO NOT MERGE]
ed98abecad359ab1765ac1f698c8ba06dbd00745 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 8a70bcef: resolved conflicts for merge 5a7b3b65 to jb-dev-plus-aosp

* commit '8a70bcef5a724906e3c35c58cb2266ee9c9e1b78':
Remove references to non-std Java classes. [DO NOT MERGE]
2cbe100a9bc6d2b3bf828432a1527f0ac239e575 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 40fea8b1: am 4b5da86d: Fix DatePicker and Calendar widget in layoutlib. [DO NOT MERGE]

* commit '40fea8b1bf689933e63941b5fa5e3379f82c88b5':
Fix DatePicker and Calendar widget in layoutlib. [DO NOT MERGE]
632c9e2dabc44b24f04c3418e4a3540b22db792b 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 065ce2e8: am 5c166c9c: Layoutlib: Update the wifi icon in the status bar. [DO NOT MERGE]

* commit '065ce2e8b3e11ff8bb1699748edbd23d272bc8a6':
Layoutlib: Update the wifi icon in the status bar. [DO NOT MERGE]
9c00e6739c3d0a11a714a0f654b893531b0f1c5d 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 2fb139e0: resolved conflicts for merge of 9f2f5e77 to jb-mr1-dev

* commit '2fb139e02c1e9d2d7c92acf813445a063e73d94f':
Fix CalendarView to show the right labels. [DO NOT MERGE]
1677a9bdeba3961625236925e754920fca1b7e89 13-May-2014 Deepanshu Gupta <deepanshu@google.com> Merge "resolve conflicts for merge 5a7b3b65 correctly" into jb-dev-plus-aosp
51cce0ec42a04f94569e8da544b02c888b82b31d 13-May-2014 Deepanshu Gupta <deepanshu@google.com> resolve conflicts for merge 5a7b3b65 correctly

Change-Id: I832b7ee50002bcd1429bf431cc91f12e60d19f84
reate/src/com/android/tools/layoutlib/create/Main.java
7377c7be6abcb3bccabb6cdf2af0ecfed355606c 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 3a115628: Add Navigation Bar to BridgeWindowManager [DO NOT MERGE]

* commit '3a115628236ee9051518d4f96840cbb76070cf92':
Add Navigation Bar to BridgeWindowManager [DO NOT MERGE]
9359dc2e7d6bc671af3fee0c1dc540dd3685365c 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 2d3fa7ba: Support actionProviderClass attribute for menus [DO NOT MERGE]

* commit '2d3fa7ba782238afb891db38e29ef7ec755bfdf6':
Support actionProviderClass attribute for menus [DO NOT MERGE]
df2da3d7c9f82ff2304f630f4ff9fc2cb3001c6f 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 7bc363ba: Add special system view cookie to OverflowButton. [DO NOT MERGE]

* commit '7bc363ba72d4cdd9a0b3b1601e432acfc09c0dc0':
Add special system view cookie to OverflowButton. [DO NOT MERGE]
00d096490189dadfc5e2a1e129d8b524d90da247 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 85f53c33: Fix style warnings in RenderSessionImpl [DO NOT MERGE]

* commit '85f53c3335daf0e55cec757fd66fe560e0b020ef':
Fix style warnings in RenderSessionImpl [DO NOT MERGE]
0df5ae65a91174c99d1af633b45b3a1a7861cd1c 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 0f209967: Add view cookies for action bar menus. [DO NOT MERGE]

* commit '0f209967bfc4a6f1eec46cc34a39cfe8af9f8af9':
Add view cookies for action bar menus. [DO NOT MERGE]
3027b69e154cffc6e286caf90b0f9af01c473c14 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am f7e57949: Overflow menu popup for Action Bar in Layoutlib [DO NOT MERGE]

* commit 'f7e5794990831df87d4097126f6d24455da50efe':
Overflow menu popup for Action Bar in Layoutlib [DO NOT MERGE]
6d3c4ab2456a30c5517f4ad6fb8df8d64c517beb 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 43b15371: Action bar rendering in layoutlib [DO NOT MERGE]

* commit '43b15371f9f1da7d97fe0500eb1536d981097e31':
Action bar rendering in layoutlib [DO NOT MERGE]
052e0c589e5cf714ca71bc8d7b3ce8b3f6c4cb96 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 770e40f8: Fix theme/style resolution in Layoutlib [DO NOT MERGE]

* commit '770e40f839f059e1e3a15a2b14157c7cbb3b0553':
Fix theme/style resolution in Layoutlib [DO NOT MERGE]
9602fc1c00e5e5cdf26cdc3fe22022ffcd115361 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 87665388: Fix visitFieldInsn in layoutlib_create. [DO NOT MERGE]

* commit '87665388466812897e888680c0b2a1d7db1b9cbd':
Fix visitFieldInsn in layoutlib_create. [DO NOT MERGE]
c9a4badb54320f8c52d2da06a762b5e6eef00ee0 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am d915dcac: Layoutlib tests now check methods return value [DO NOT MERGE]

* commit 'd915dcac365b6d3ad88afab52e74ccca7dfbefec':
Layoutlib tests now check methods return value [DO NOT MERGE]
bdd8fbf6eae886dc3b2cd716745ede918773a2c4 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 877ae535: Set default text style in layoutlib as NORMAL [DO NOT MERGE]

* commit '877ae53586c3f7f5b788a40dfb0a58bef54a7446':
Set default text style in layoutlib as NORMAL [DO NOT MERGE]
01cdd3123f408dc41a2bd4786f3a943157ab6c69 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 669792b3: Fix sans-serif-thin and sans-serif-light fonts in layoutlib. [DO NOT MERGE]

* commit '669792b303b99a003bbcbf8d962f5be1debf9b63':
Fix sans-serif-thin and sans-serif-light fonts in layoutlib. [DO NOT MERGE]
d094742d2e19371291409886bb80f070df099533 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am cda89ca0: Fix a bug in Nine Patch library. [DO NOT MERGE]

* commit 'cda89ca02548c19250ae55671c055536b64b74f8':
Fix a bug in Nine Patch library. [DO NOT MERGE]
7bb8de580a451621480913d7839fd7eb784ab689 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am a2b34c96: Optimize layout rendering in layoutlib [DO NOT MERGE]

* commit 'a2b34c96f1ef24d96854d1e23426dec7774510e8':
Optimize layout rendering in layoutlib [DO NOT MERGE]
69b3115e1c02f2b22165b93bd9bcc5c90ec69b12 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am e183855c: Add methods for Time_Delegate [DO NOT MERGE]

* commit 'e183855c1eb7baf750c67bb20e70fb887eba7af6':
Add methods for Time_Delegate [DO NOT MERGE]
82d5bd98b77a9955e375b075e262639625c40232 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am e5a2347b: Fix NPE in layoutlib. [DO NOT MERGE]

* commit 'e5a2347bc6cf1506799136af4c9724275ca0247e':
Fix NPE in layoutlib. [DO NOT MERGE]
d5de1bd6305dc8885027504996602755b1e79099 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 30505abe: Fix text size in Fake Action Bar. [DO NOT MERGE]

* commit '30505abeb6cda9d042ec41f2563d561714eac46b':
Fix text size in Fake Action Bar. [DO NOT MERGE]
1103ece28c695fc26fcee812870c553dca8d840d 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am f20c9c66: am 06c4f23d: am 64dc0380: Fix layoutlib [DO NOT MERGE]

* commit 'f20c9c660edcce0fe90ba5f8464f726dcd51229e':
Fix layoutlib [DO NOT MERGE]
42556c394b1f7bf53f59aa6905dc0d20fe495389 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 3990ec34: am cdb87d8d: am a59c27dd: Fix ClassCastException when rendering ListView [DO NOT MERGE]

* commit '3990ec3490cc43a2690163f2a973b5ac6c4bdc46':
Fix ClassCastException when rendering ListView [DO NOT MERGE]
202800b12d7bbfd719da1c5fa50f646188312e97 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 4d69ca22: am edae4e69: am 8a39c3af: Add orientation to configuration for layoutlib. [DO NOT MERGE]

* commit '4d69ca223b268d4ed93baf9d3c354e1df79d55ce':
Add orientation to configuration for layoutlib. [DO NOT MERGE]
2fb139e02c1e9d2d7c92acf813445a063e73d94f 13-May-2014 Deepanshu Gupta <deepanshu@google.com> resolved conflicts for merge of 9f2f5e77 to jb-mr1-dev

Change-Id: Id8cb5e2e9d0c41bdaf767563ebd6e3951ae68a3c
06a8702729309fa8eb5977142b26b8d8d0d6df7b 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 995c4d51: am b7bafba7: am 099f40a9: Support actionProviderClass attribute for menus [DO NOT MERGE]

* commit '995c4d51532dcd4f556e352f273396a70cea88e2':
Support actionProviderClass attribute for menus [DO NOT MERGE]
70b2be8e0d9aecd1215210b9e253680192e486bc 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 59a0f746: am 51dd8878: am 60b52ee9: Fix class name for OverflowMenuButton [DO NOT MERGE]

* commit '59a0f746eb9de9086048419a5aec3dedc7ec9d94':
Fix class name for OverflowMenuButton [DO NOT MERGE]
0fef2d24c0147597c4853fa070f997f794dd6158 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am a51ac1bd: am 503aaa48: am 7c6f6481: Add special system view cookie to OverflowButton. [DO NOT MERGE]

* commit 'a51ac1bd065904ba7102d1b1565b4a47d7cbcb4a':
Add special system view cookie to OverflowButton. [DO NOT MERGE]
c7a27371235b70cd466a71042f12964ed75d075f 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 09a42524: am 30db282f: am 22de7c4c: Fix style warnings in RenderSessionImpl [DO NOT MERGE]

* commit '09a42524dd693a68517b9827e3d7df77c6bbf537':
Fix style warnings in RenderSessionImpl [DO NOT MERGE]
6f6989f3532b0022c8ebed59dbd9e4fdc5362978 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 80f2914b: am b67b1b45: am 094fd8ec: Add view cookies for action bar menus. [DO NOT MERGE]

* commit '80f2914b4b12340ff590882125789144d4f00ce0':
Add view cookies for action bar menus. [DO NOT MERGE]
6c600df67388706d24486022fa73ed8786119faf 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am e686fbce: am 2c8fea2a: am 56759be8: Overflow menu popup for Action Bar in Layoutlib [DO NOT MERGE]

* commit 'e686fbced9271cc7e35f4b17c7cd1b43d118ce0f':
Overflow menu popup for Action Bar in Layoutlib [DO NOT MERGE]
e7c3ed442753c0ada27450868adcf1ff98fe9c39 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 21404483: am 0bb06b91: am fe38489f: Action bar rendering in layoutlib [DO NOT MERGE]

* commit '21404483adbd4f26b5a2c7ebee7c09e83f42607e':
Action bar rendering in layoutlib [DO NOT MERGE]
c88d4c572f95a6b2397cd2c2931b1a51c673a3c8 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am b172b780: am f3264738: am cc5340bc: Add missing dependency in layoutlib build file [DO NOT MERGE]

* commit 'b172b7805160d4a6875d694cb218fe05b117beb3':
Add missing dependency in layoutlib build file [DO NOT MERGE]
57c0cf454ab8d8d321f2a10c4914eb4414722392 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 71acfa6c: am 49d47a02: am 76dccb7f: Fix theme/style resolution in Layoutlib [DO NOT MERGE]

* commit '71acfa6c1933806a080fc6efb820833f8de68d54':
Fix theme/style resolution in Layoutlib [DO NOT MERGE]
3195ff0afad61fbb0787b80023bdb22ece4ecb6f 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am b90db3e6: am de3b2c06: am 1ed75bde: Remove references to non-std Java classes. [DO NOT MERGE]

* commit 'b90db3e6ab1bc89752ce8d7bd286268c41843693':
Remove references to non-std Java classes. [DO NOT MERGE]
4654bfc14ce664e6a6247ffa0fdace17f3eeb964 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am c2a6f3b1: am 2f94c1db: am 6136af32: Fix visitFieldInsn in layoutlib_create. [DO NOT MERGE]

* commit 'c2a6f3b1eda89365eec2508aec4a3a5024c140e5':
Fix visitFieldInsn in layoutlib_create. [DO NOT MERGE]
863b49ccaa77c7b0960220fca158099f3a79cb6a 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 9b89fcc0: am ef9596a1: am 2bd65db1: Layoutlib tests now check methods return value [DO NOT MERGE]

* commit '9b89fcc09d0e5da7b81f1910d6ed29b152f730f9':
Layoutlib tests now check methods return value [DO NOT MERGE]
8a70bcef5a724906e3c35c58cb2266ee9c9e1b78 13-May-2014 Deepanshu Gupta <deepanshu@google.com> resolved conflicts for merge 5a7b3b65 to jb-dev-plus-aosp

Change-Id: I6bafdb9c6a8dfc6f55a4d9adf67f447661137eb8
f20c9c660edcce0fe90ba5f8464f726dcd51229e 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 06c4f23d: am 64dc0380: Fix layoutlib [DO NOT MERGE]

* commit '06c4f23d737082717f37f5f3583d9c12f4b64bf2':
Fix layoutlib [DO NOT MERGE]
3990ec3490cc43a2690163f2a973b5ac6c4bdc46 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am cdb87d8d: am a59c27dd: Fix ClassCastException when rendering ListView [DO NOT MERGE]

* commit 'cdb87d8d83e8a76a4cf78d24d5c49ee8548eba1f':
Fix ClassCastException when rendering ListView [DO NOT MERGE]
4d69ca223b268d4ed93baf9d3c354e1df79d55ce 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am edae4e69: am 8a39c3af: Add orientation to configuration for layoutlib. [DO NOT MERGE]

* commit 'edae4e69512a7c9df1076fde70de83e15053a30a':
Add orientation to configuration for layoutlib. [DO NOT MERGE]
40fea8b1bf689933e63941b5fa5e3379f82c88b5 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 4b5da86d: Fix DatePicker and Calendar widget in layoutlib. [DO NOT MERGE]

* commit '4b5da86d04200ba278b62ff99da91e212b87e9af':
Fix DatePicker and Calendar widget in layoutlib. [DO NOT MERGE]
065ce2e8b3e11ff8bb1699748edbd23d272bc8a6 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 5c166c9c: Layoutlib: Update the wifi icon in the status bar. [DO NOT MERGE]

* commit '5c166c9c04b6ea9d4955830e7ba277be71f17a6f':
Layoutlib: Update the wifi icon in the status bar. [DO NOT MERGE]
9f2f5e776aed6bfcd87be0b7dd6aa9d22af28817 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 2d82586b: Fix CalendarView to show the right labels. [DO NOT MERGE]

* commit '2d82586b96593b1b3b5280d77d5ae9a09df9d1fd':
Fix CalendarView to show the right labels. [DO NOT MERGE]
06c4f23d737082717f37f5f3583d9c12f4b64bf2 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 64dc0380: Fix layoutlib [DO NOT MERGE]

* commit '64dc0380127047ffcf135b6848c9150aa8dbed85':
Fix layoutlib [DO NOT MERGE]
cdb87d8d83e8a76a4cf78d24d5c49ee8548eba1f 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am a59c27dd: Fix ClassCastException when rendering ListView [DO NOT MERGE]

* commit 'a59c27dd6674a31c875b0baa86519caec628ca2d':
Fix ClassCastException when rendering ListView [DO NOT MERGE]
edae4e69512a7c9df1076fde70de83e15053a30a 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 8a39c3af: Add orientation to configuration for layoutlib. [DO NOT MERGE]

* commit '8a39c3afb29f2540b05319042e758dd4d5f73a1e':
Add orientation to configuration for layoutlib. [DO NOT MERGE]
0e595741cf0ce90f6f2874371f74e509fb013a87 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am 5fbb6118: am c014eb68: am 7a5f7265: Merge "Support actionProviderClass attribute for menus [DO NOT MERGE]" into klp-dev

* commit '5fbb6118b57ff522942de7e73dadd093e9c44f86':
Support actionProviderClass attribute for menus [DO NOT MERGE]
5fbb6118b57ff522942de7e73dadd093e9c44f86 13-May-2014 Deepanshu Gupta <deepanshu@google.com> am c014eb68: am 7a5f7265: Merge "Support actionProviderClass attribute for menus [DO NOT MERGE]" into klp-dev

* commit 'c014eb681bd700c24b9513c847cc6ee88c5410d7':
Support actionProviderClass attribute for menus [DO NOT MERGE]
3a115628236ee9051518d4f96840cbb76070cf92 07-May-2014 Deepanshu Gupta <deepanshu@google.com> Add Navigation Bar to BridgeWindowManager [DO NOT MERGE]

Return the right value for presence of software navigation bar in
BridgeWindowManager. This is required to render the overflow menu button
correctly in the Action Bar.

Change-Id: I73de3b299f6a3a113425c436a59e800cd1d6b97f
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
2d3fa7ba782238afb891db38e29ef7ec755bfdf6 02-May-2014 Deepanshu Gupta <deepanshu@google.com> Support actionProviderClass attribute for menus [DO NOT MERGE]

The change adds support for view cookies for actionProviderClasses (for
example, ShareActionProvider) in the action bar menus.

This also provides a more robust search for the overflowMenuButton.

Change-Id: I316c8b9a69e2e337b41ba0fe4e61af9fe850f750
(cherry picked from commit 099f40a950a14b66005b17657d967ef080569a15)
ridge/src/com/android/internal/view/menu/BridgeMenuItemImpl.java
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
7bc363ba72d4cdd9a0b3b1601e432acfc09c0dc0 25-Apr-2014 Deepanshu Gupta <deepanshu@google.com> 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 7c6f6481f46b8244406790604c5f8b3f712c369f)
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
85f53c3335daf0e55cec757fd66fe560e0b020ef 23-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Fix style warnings in RenderSessionImpl [DO NOT MERGE]

Change-Id: I9d3cb23e4ea692f737a3e3d6c18cc8de18b66a3c
(cherry-picked from commit 22de7c4c3d44e51aef6937e1b39540703ad01f5c)
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
0f209967bfc4a6f1eec46cc34a39cfe8af9f8af9 18-Apr-2014 Deepanshu Gupta <deepanshu@google.com> 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 094fd8ecb6f4b666be6c9e7332679bce28fdc3ca)
ridge/src/android/view/BridgeInflater.java
ridge/src/android/view/MenuInflater_Delegate.java
ridge/src/com/android/internal/view/menu/BridgeMenuItemImpl.java
ridge/src/com/android/internal/view/menu/MenuBuilder_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
f7e5794990831df87d4097126f6d24455da50efe 13-Feb-2014 Deepanshu Gupta <deepanshu@google.com> 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 56759be8960ea1b5dc8b6de1810a84e2f10e2058)
ridge/resources/bars/action_bar.xml
ridge/src/com/android/internal/view/menu/MenuBuilderAccessor.java
ridge/src/com/android/internal/widget/ActionBarAccessor.java
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
ridge/src/com/android/layoutlib/bridge/bars/OverflowMenuAdapter.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
c677675e9c465dc1de21ecf2e0421835c7eb55b4 07-May-2014 Florin Malita <fmalita@google.com> Encapsulate Canvas.mNativeCanvas

Currently, the native canvas is accessed/manipulated from several
unrelated classes.

In order to facilitate SaveFlags emulation, this CL encapsulates
the field and refactors its external users.

Two main changes:

* new getNativeCanvas() getter for use in Java-level clients.
* JNI canvas swappers (GraphicsBuffers, Surface, TextureView &
AssetAtlasService) are refactored based on the exising/equivalent
safeCanvasSwap() Canvas method.

Change-Id: I966bd4898f0838fb3699e226d3d3d51e0224ea97
ridge/src/android/graphics/Canvas_Delegate.java
43b15371f9f1da7d97fe0500eb1536d981097e31 12-Dec-2013 Deepanshu Gupta <deepanshu@google.com> 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 fe38489f6734fefd0a216e9cfe12f8f978ff371f)
ridge/resources/bars/action_bar.xml
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
ridge/src/com/android/layoutlib/bridge/bars/FakeActionBar.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
ridge/src/com/android/layoutlib/bridge/impl/SystemViewInfo.java
reate/src/com/android/tools/layoutlib/create/Main.java
770e40f839f059e1e3a15a2b14157c7cbb3b0553 12-Mar-2014 Deepanshu Gupta <deepanshu@google.com> Fix theme/style resolution in Layoutlib [DO NOT MERGE]

Change-Id: Icfb91e566666408802dadc0e2070991151b16b9d
(cherry picked from commit 76dccb7f436565136ff5e15b1ca57530940f5642)
ridge/src/android/content/res/AssetManager_Delegate.java
ridge/src/android/content/res/Resources_Theme_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
87665388466812897e888680c0b2a1d7db1b9cbd 01-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Fix visitFieldInsn in layoutlib_create. [DO NOT MERGE]

The bug caused some classes to be missed when computing the dependencies
of the existing classes.

This change includes the new mock_android.jar compiled from the mock
sources again.

Change-Id: I7285ff67e016ce5d73a8550501f49acc73cfadfa
(cherry-picked from 6136af326e64037184a7a2a3ae60c399f04d631f)
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/tests/com/android/tools/layoutlib/create/AsmAnalyzerTest.java
reate/tests/data/mock_android.jar
reate/tests/mock_data/mock_android/util/EmptyArray.java
reate/tests/mock_data/mock_android/widget/LinearLayout.java
d915dcac365b6d3ad88afab52e74ccca7dfbefec 16-Apr-2014 Deepanshu Gupta <deepanshu@google.com> 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 2bd65db15fa6a265ccc4023161611088bc791b4e)
ridge/tests/src/com/android/layoutlib/bridge/TestDelegates.java
877ae53586c3f7f5b788a40dfb0a58bef54a7446 19-Feb-2014 Deepanshu Gupta <deepanshu@google.com> 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 bcbeaf83ca75e4a819377938fdf3ec1e07fa30a7)
ridge/src/android/graphics/Typeface_Delegate.java
669792b303b99a003bbcbf8d962f5be1debf9b63 19-Feb-2014 Deepanshu Gupta <deepanshu@google.com> 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 5be65fda15c6f66067da3cc623811427e9d541e4)
ridge/src/com/android/layoutlib/bridge/impl/FontLoader.java
cda89ca02548c19250ae55671c055536b64b74f8 06-Feb-2014 Deepanshu Gupta <deepanshu@google.com> 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 5bb3414d148f1309dade9333fe9b89c8d1c2f308)
ridge/src/android/graphics/NinePatch_Delegate.java
a2b34c96f1ef24d96854d1e23426dec7774510e8 21-Jan-2014 Deepanshu Gupta <deepanshu@google.com> 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 5712b5fc3fec0dc376e84f660f2fe0d1102c0cbb)
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
e183855c1eb7baf750c67bb20e70fb887eba7af6 01-Feb-2014 Deepanshu Gupta <deepanshu@google.com> Add methods for Time_Delegate [DO NOT MERGE]

Bug: http://b.android.com/65359
Change-Id: I7c2d09286d6bcd9899444aaa5a4a5a342e39d923
(cherry-picked from 02cde9ceeb4c052ee273a5d809816dfd355ebb56)
ridge/src/android/text/format/Time_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
e5a2347bc6cf1506799136af4c9724275ca0247e 12-Nov-2013 Deepanshu Gupta <deepanshu@google.com> Fix NPE in layoutlib. [DO NOT MERGE]

Change-Id: I36623304d83b344ea078044001577b8005a63c02
(cherry picked from commit 689c0dfe72a57c0555560012cbc6806375e7d4b7)
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
30505abeb6cda9d042ec41f2563d561714eac46b 08-Nov-2013 Deepanshu Gupta <deepanshu@google.com> 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 083d1562e00631630b5594462ce4a867a3508d8d)
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
5a7b3b65b691edbdb855eb6154b8b30f5700acbb 11-Sep-2013 Deepanshu Gupta <deepanshu@google.com> 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. This also
includes the following change that includes some changes that the
original cherrypick missed.
Change-Id: I76c87c74ee088778b37d1a7a7d531e0fde5c758f
commit: 1ed75bde09275c9f2bd1f81830e381ea864ac7f5

Change-Id: Iac5b272652e2780c9bb72d19f415d150948ca589
(cherry picked from 80c668f2a076e91d887dbf77776cd503ff88b0b4)
reate/.classpath
reate/README.txt
reate/src/com/android/tools/layoutlib/create/AbstractClassAdapter.java
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/ICreateInfo.java
reate/src/com/android/tools/layoutlib/create/Main.java
reate/src/com/android/tools/layoutlib/create/RefactorClassAdapter.java
reate/src/com/android/tools/layoutlib/create/RenameClassAdapter.java
reate/src/com/android/tools/layoutlib/java/AutoCloseable.java
reate/src/com/android/tools/layoutlib/java/Charsets.java
reate/src/com/android/tools/layoutlib/java/IntegralToString.java
reate/src/com/android/tools/layoutlib/java/ModifiedUtf8.java
reate/src/com/android/tools/layoutlib/java/UnsafeByteSequence.java
reate/tests/com/android/tools/layoutlib/create/AsmAnalyzerTest.java
reate/tests/com/android/tools/layoutlib/create/AsmGeneratorTest.java
reate/tests/com/android/tools/layoutlib/create/RenameClassAdapterTest.java
reate/tests/com/android/tools/layoutlib/create/dataclass/JavaClass.java
reate/tests/data/mock_android.jar
reate/tests/data/mock_android.jardesc
reate/tests/mock_android/dummy/InnerTest.java
reate/tests/mock_android/view/View.java
reate/tests/mock_android/view/ViewGroup.java
reate/tests/mock_android/widget/LinearLayout.java
reate/tests/mock_android/widget/TableLayout.java
reate/tests/mock_data/java/lang/JavaClass.java
reate/tests/mock_data/mock_android/dummy/InnerTest.java
reate/tests/mock_data/mock_android/view/View.java
reate/tests/mock_data/mock_android/view/ViewGroup.java
reate/tests/mock_data/mock_android/widget/LinearLayout.java
reate/tests/mock_data/mock_android/widget/TableLayout.java
4b5da86d04200ba278b62ff99da91e212b87e9af 13-Oct-2013 Deepanshu Gupta <deepanshu@google.com> 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 6335590aa8997944cc7fb358a315dbb9b789f87f)
ridge/src/libcore/icu/ICU_Delegate.java
5c166c9c04b6ea9d4955830e7ba277be71f17a6f 13-Oct-2013 Deepanshu Gupta <deepanshu@google.com> 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 11ee746dc5e77f4f33aac45ac9e344444223012d)
ridge/resources/bars/hdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/hdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/mdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/mdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/status_bar.xml
ridge/resources/bars/xhdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/xhdpi/stat_sys_wifi_signal_4_fully.png
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
2d82586b96593b1b3b5280d77d5ae9a09df9d1fd 15-Oct-2013 Deepanshu Gupta <deepanshu@google.com> Fix CalendarView to show the right labels. [DO NOT MERGE]

Change-Id: I95431f1054678d4192bd1621c1f69b29268f55e9
(cherry picked from commit 44bcd64e5b9fd211dd56b0598693a0559f65dc1a)
ridge/src/android/text/format/Time_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
64dc0380127047ffcf135b6848c9150aa8dbed85 17-Oct-2013 Deepanshu Gupta <deepanshu@google.com> 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 87be67f91719234cbd381ff0242b5efc8b6aa257)
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
a59c27dd6674a31c875b0baa86519caec628ca2d 11-Sep-2013 Deepanshu Gupta <deepanshu@google.com> Fix ClassCastException when rendering ListView [DO NOT MERGE]

Bug: b.android.com/59300
Change-Id: Ia350adb3308daa8170bff755302760790163c811
(cherry picked from commit 7b5d54f05be61a7ab40021644a91c466e2897627)
ridge/src/com/android/layoutlib/bridge/impl/binding/AdapterHelper.java
ridge/src/com/android/layoutlib/bridge/impl/binding/AdapterItem.java
ridge/src/com/android/layoutlib/bridge/impl/binding/BaseAdapter.java
ridge/src/com/android/layoutlib/bridge/impl/binding/FakeAdapter.java
ridge/src/com/android/layoutlib/bridge/impl/binding/FakeExpandableAdapter.java
8a39c3afb29f2540b05319042e758dd4d5f73a1e 13-Jul-2013 Deepanshu Gupta <deepanshu@google.com> 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 d4875e19f5b7c69226783b0a6590831466159f84)
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
099f40a950a14b66005b17657d967ef080569a15 02-May-2014 Deepanshu Gupta <deepanshu@google.com> Support actionProviderClass attribute for menus [DO NOT MERGE]

The change adds support for view cookies for actionProviderClasses (for
example, ShareActionProvider) in the action bar menus.

This also provides a more robust search for the overflowMenuButton.

Change-Id: I316c8b9a69e2e337b41ba0fe4e61af9fe850f750
(cherry picked from commit 7f56beb8403b597a676faf12643fef585a31007e)
ridge/src/com/android/internal/view/menu/BridgeMenuItemImpl.java
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
60b52ee929c8765c2d99f1b1e35d326e03895ba0 30-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Fix class name for OverflowMenuButton [DO NOT MERGE]

Change-Id: Ie3e709e7aadb2193397df8befef0c55624d7e4e3
(cherry picked from commit f61bd0020642cf0868486d307f2e68c8c02d6102)
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
7c6f6481f46b8244406790604c5f8b3f712c369f 25-Apr-2014 Deepanshu Gupta <deepanshu@google.com> 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)
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
22de7c4c3d44e51aef6937e1b39540703ad01f5c 23-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Fix style warnings in RenderSessionImpl [DO NOT MERGE]

Change-Id: I9d3cb23e4ea692f737a3e3d6c18cc8de18b66a3c
(cherry-picked from commit a98121ef5251b5ebdb8c1b0b6780d570844284b2)
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
094fd8ecb6f4b666be6c9e7332679bce28fdc3ca 18-Apr-2014 Deepanshu Gupta <deepanshu@google.com> 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)
ridge/src/android/view/BridgeInflater.java
ridge/src/android/view/MenuInflater_Delegate.java
ridge/src/com/android/internal/view/menu/BridgeMenuItemImpl.java
ridge/src/com/android/internal/view/menu/MenuBuilder_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
7f56beb8403b597a676faf12643fef585a31007e 02-May-2014 Deepanshu Gupta <deepanshu@google.com> Support actionProviderClass attribute for menus [DO NOT MERGE]

The change adds support for view cookies for actionProviderClasses (for
example, ShareActionProvider) in the action bar menus.

This also provides a more robust search for the overflowMenuButton.

Change-Id: I316c8b9a69e2e337b41ba0fe4e61af9fe850f750
(cherry picked from commit 28fa661f79e18fc9fc46bf112edded9c0d07696f)
ridge/src/com/android/internal/view/menu/BridgeMenuItemImpl.java
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
f61bd0020642cf0868486d307f2e68c8c02d6102 30-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Fix class name for OverflowMenuButton [DO NOT MERGE]

Change-Id: Ie3e709e7aadb2193397df8befef0c55624d7e4e3
(cherry picked from commit 4b5fa4d318e7efaffdc678e0cb8953ffc78c2b1e)
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
d558ebdb433af498a87e25673f7dd828a0e7439a 25-Apr-2014 Deepanshu Gupta <deepanshu@google.com> 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 c967d8dc62c429ecf3e27bf3714a953636e75cbf)
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
a98121ef5251b5ebdb8c1b0b6780d570844284b2 23-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Fix style warnings in RenderSessionImpl [DO NOT MERGE]

Change-Id: I9d3cb23e4ea692f737a3e3d6c18cc8de18b66a3c
(cherry-picked from commit fbfeb1a90b6f8f3966c60a69d50ce8f608d9d861)
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
7704837947455909f295b088a3d15a20e107dbd7 18-Apr-2014 Deepanshu Gupta <deepanshu@google.com> 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 5ba2f230faa355eb9bc1e90f6c48eeeb437f390c)
ridge/src/android/view/BridgeInflater.java
ridge/src/android/view/MenuInflater_Delegate.java
ridge/src/com/android/internal/view/menu/BridgeMenuItemImpl.java
ridge/src/com/android/internal/view/menu/MenuBuilder_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
56759be8960ea1b5dc8b6de1810a84e2f10e2058 13-Feb-2014 Deepanshu Gupta <deepanshu@google.com> 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)
ridge/resources/bars/action_bar.xml
ridge/src/com/android/internal/view/menu/MenuBuilderAccessor.java
ridge/src/com/android/internal/widget/ActionBarAccessor.java
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
ridge/src/com/android/layoutlib/bridge/bars/OverflowMenuAdapter.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
fe38489f6734fefd0a216e9cfe12f8f978ff371f 12-Dec-2013 Deepanshu Gupta <deepanshu@google.com> 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)
ridge/resources/bars/action_bar.xml
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
ridge/src/com/android/layoutlib/bridge/bars/FakeActionBar.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
ridge/src/com/android/layoutlib/bridge/impl/SystemViewInfo.java
reate/src/com/android/tools/layoutlib/create/Main.java
cc5340bc6301f8d9bf2cdb6ad2036964a3d179f5 01-Apr-2014 Deepanshu Gupta <deepanshu@google.com> 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)
ndroid.mk
76dccb7f436565136ff5e15b1ca57530940f5642 12-Mar-2014 Deepanshu Gupta <deepanshu@google.com> Fix theme/style resolution in Layoutlib [DO NOT MERGE]

Change-Id: Icfb91e566666408802dadc0e2070991151b16b9d
(cherry picked from commit 3c00b28bf60ab01b449e16df045238f4bae4d700)
ridge/src/android/content/res/AssetManager_Delegate.java
ridge/src/android/content/res/Resources_Theme_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
1ed75bde09275c9f2bd1f81830e381ea864ac7f5 11-Sep-2013 Deepanshu Gupta <deepanshu@google.com> 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
reate/README.txt
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/java/Charsets.java
6136af326e64037184a7a2a3ae60c399f04d631f 01-Apr-2014 Deepanshu Gupta <deepanshu@google.com> 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)
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/DependencyFinder.java
reate/tests/com/android/tools/layoutlib/create/AsmAnalyzerTest.java
reate/tests/data/mock_android.jar
reate/tests/mock_data/mock_android/util/EmptyArray.java
reate/tests/mock_data/mock_android/widget/LinearLayout.java
2bd65db15fa6a265ccc4023161611088bc791b4e 16-Apr-2014 Deepanshu Gupta <deepanshu@google.com> 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)
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/tests/src/com/android/layoutlib/bridge/TestDelegates.java
495c14d8b8e8a52554cfc0776c48d328657cda95 02-May-2014 Deepanshu Gupta <deepanshu@google.com> am 47ad22ed: am 961e3281: am 6df2860b: Add missing files to fix libphonenumber for layoutlib. [DO NOT MERGE]

* commit '47ad22edb7df502356598d417adbce0b0ce35616':
Add missing files to fix libphonenumber for layoutlib. [DO NOT MERGE]
8ad4b8b1fedc9a200b49f322e73d406d43e32327 02-May-2014 Deepanshu Gupta <deepanshu@google.com> am 9932e589: am 9e2dadae: am bcbeaf83: Set default text style in layoutlib as NORMAL [DO NOT MERGE]

* commit '9932e589b0f604b1c553e043cd6a60adbc1b7055':
Set default text style in layoutlib as NORMAL [DO NOT MERGE]
826a215c8b27babd041a77a8cdd2f42a29b240bd 02-May-2014 Deepanshu Gupta <deepanshu@google.com> am 320f1126: am cf3f108e: am 5be65fda: Fix sans-serif-thin and sans-serif-light fonts in layoutlib. [DO NOT MERGE]

* commit '320f1126a35fae6e5c2f72f75db5b38bdb207a76':
Fix sans-serif-thin and sans-serif-light fonts in layoutlib. [DO NOT MERGE]
0a37981cad7b00991c3b759b3ab1918c1ebf4bc0 02-May-2014 Deepanshu Gupta <deepanshu@google.com> am 1b28d8d4: am d642de58: am ec4623d0: Improve text rendering and measurement. [DO NOT MERGE]

* commit '1b28d8d4a0b4193b23ed4647a18c4242beb74038':
Improve text rendering and measurement. [DO NOT MERGE]
f4b35c6a832d3db694b2487fc30d1d1975114944 02-May-2014 Deepanshu Gupta <deepanshu@google.com> am ef822b3f: am 62a4a1f9: am 2a82a48f: Fix the measurement of text bounds. [DO NOT MERGE]

* commit 'ef822b3f13204d084196c1124d22a153868b017f':
Fix the measurement of text bounds. [DO NOT MERGE]
e0537c1d498a2baab23e2afdcd9d88d1a1065d87 02-May-2014 Deepanshu Gupta <deepanshu@google.com> am c7f8e64c: am 1830a58f: am 5bb3414d: Fix a bug in Nine Patch library. [DO NOT MERGE]

* commit 'c7f8e64cb9b6ff81b2188a31c3d804b763c63fe8':
Fix a bug in Nine Patch library. [DO NOT MERGE]
5e6a2990805ec630fb97197910ecfbf7645bf8a6 02-May-2014 Deepanshu Gupta <deepanshu@google.com> am 4d887ec3: am bcd50a7c: am 5712b5fc: Optimize layout rendering in layoutlib [DO NOT MERGE]

* commit '4d887ec388da13c6b65455416a0b829d81e0160a':
Optimize layout rendering in layoutlib [DO NOT MERGE]
73f9e4675c0ebc23dd977a51f248dd6e603f7e33 02-May-2014 Deepanshu Gupta <deepanshu@google.com> am edd67cb1: am 7c02c6e2: am 02cde9ce: Add methods for Time_Delegate [DO NOT MERGE]

* commit 'edd67cb194b54bb7c6c25eb570d28614900446cf':
Add methods for Time_Delegate [DO NOT MERGE]
95fd97aa820dae4ba5040b6c040408b66887fe73 02-May-2014 Deepanshu Gupta <deepanshu@google.com> am 84e7a6b8: am 443372dd: am 9d7b5165: Add libphonenumber to layoutlib.jar. [DO NOT MERGE]

* commit '84e7a6b82303b52c7b44f1a2a295177361edf9ea':
Add libphonenumber to layoutlib.jar. [DO NOT MERGE]
88a12f5744846511e1861cf0f2e311f642109012 02-May-2014 Deepanshu Gupta <deepanshu@google.com> am 43034b54: am 62591cff: am 689c0dfe: Fix NPE in layoutlib. [DO NOT MERGE]

* commit '43034b541cecd924b4b79a5caff850a53516ec26':
Fix NPE in layoutlib. [DO NOT MERGE]
43ed35da99e500182b176ea74f0cd051a3325f39 02-May-2014 Deepanshu Gupta <deepanshu@google.com> am ce205d0a: am 600539c7: am 083d1562: Fix text size in Fake Action Bar. [DO NOT MERGE]

* commit 'ce205d0a3b88e12127a8c717ff913fce2d59e36d':
Fix text size in Fake Action Bar. [DO NOT MERGE]
aab9d9a75cac9f1ed8291a5820d676c2eadc8b4d 02-May-2014 Deepanshu Gupta <deepanshu@google.com> am 1a434aa8: am 697c511d: am 80c668f2: Remove references to non-std Java classes. [DO NOT MERGE]

* commit '1a434aa8fcc118df13bea58e112da081d47ae73b':
Remove references to non-std Java classes. [DO NOT MERGE]
d15bbac6316bb7d3838489f7eaab58147479dc92 02-May-2014 Deepanshu Gupta <deepanshu@google.com> am a2b530fb: am e39de9ae: am 6335590a: Fix DatePicker and Calendar widget in layoutlib. [DO NOT MERGE]

* commit 'a2b530fb7a11e5d0490daf5e9fea56ead5181caa':
Fix DatePicker and Calendar widget in layoutlib. [DO NOT MERGE]
3e9bc262105b9fe0d3f538a4ec0143606a7de0d1 02-May-2014 Deepanshu Gupta <deepanshu@google.com> am 9d209905: am 6f469e54: am 11ee746d: Layoutlib: Update the wifi icon in the status bar. [DO NOT MERGE]

* commit '9d2099052d207a4ca3bf3e4ef021feadf20c260f':
Layoutlib: Update the wifi icon in the status bar. [DO NOT MERGE]
2bb672a20800c5372e16b9a1fd72e2c0a444992f 02-May-2014 Deepanshu Gupta <deepanshu@google.com> am 582bb0dc: am fbb1561a: am 44bcd64e: Fix CalendarView to show the right labels. [DO NOT MERGE]

* commit '582bb0dc7498997f441c5209b1558a4640b5a107':
Fix CalendarView to show the right labels. [DO NOT MERGE]
27f0cf0b135917b52fea14406e806b35e721949e 02-May-2014 Deepanshu Gupta <deepanshu@google.com> am 10fd7f6b: am ca2c6307: am 87be67f9: Fix layoutlib [DO NOT MERGE]

* commit '10fd7f6b4192fdbd847106fb0d9ec87095092ee3':
Fix layoutlib [DO NOT MERGE]
5c7a844ca19873a03bac861ed021bdeea3712ca8 02-May-2014 Deepanshu Gupta <deepanshu@google.com> am 23726255: am 77d1eca7: am 7b5d54f0: Fix ClassCastException when rendering ListView [DO NOT MERGE]

* commit '237262558b818ce52ec53281f2270be3e4f1ee28':
Fix ClassCastException when rendering ListView [DO NOT MERGE]
d60d0c1ce70a83263daa91d7c4c44d73878e6696 02-May-2014 Deepanshu Gupta <deepanshu@google.com> am f5512973: am fe675441: am ce22440d: Fix text rendering [DO NOT MERGE]

* commit 'f55129731005f6939d40d7c8a0c0f8c93b472f98':
Fix text rendering [DO NOT MERGE]
44cc867f7d4ca212b7003057148b8cdabb8f85fb 02-May-2014 Deepanshu Gupta <deepanshu@google.com> am 9a1f13a4: am afc623e3: am bd9e181b: Fix layout rendering for RTL locales [DO NOT MERGE]

* commit '9a1f13a47bfe29e344efc05f0ecabbfcb5671e06':
Fix layout rendering for RTL locales [DO NOT MERGE]
1197605876d8c3029238ca9b93a95f9c41ed3266 02-May-2014 Deepanshu Gupta <deepanshu@google.com> am b80247d3: am 811b331a: am d4875e19: Add orientation to configuration for layoutlib. [DO NOT MERGE]

* commit 'b80247d351b88f69192260a661dbf3d4d71e9527':
Add orientation to configuration for layoutlib. [DO NOT MERGE]
e821d0cc549923d0e3d2535acfa5b70fc89a1ebe 02-May-2014 Deepanshu Gupta <deepanshu@google.com> am b27d8814: am 21cf9843: am d1084cc0: Add missing native methods. [DO NOT MERGE]

* commit 'b27d881467869539a5c8ec2510e8415912abb617':
Add missing native methods. [DO NOT MERGE]
6df2860b2316fb42e8686c3154b2156619c7777f 16-Jan-2014 Deepanshu Gupta <deepanshu@google.com> Add missing files to fix libphonenumber for layoutlib. [DO NOT MERGE]

Change-Id: I8102da6c1c4625e887293a8823770d199521c53f
(cherry-picked from 8a16f8e29a67c383e065ba9c47d5d1e80d7d2db9)
ndroid.mk
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/Main.java
reate/tests/com/android/tools/layoutlib/create/AsmAnalyzerTest.java
reate/tests/com/android/tools/layoutlib/create/AsmGeneratorTest.java
reate/tests/data/mock_android.jar
reate/tests/mock_data/mock_android/data/anotherDataFile
reate/tests/mock_data/mock_android/data/dataFile
bcbeaf83ca75e4a819377938fdf3ec1e07fa30a7 19-Feb-2014 Deepanshu Gupta <deepanshu@google.com> 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)
ridge/src/android/graphics/Typeface_Delegate.java
5be65fda15c6f66067da3cc623811427e9d541e4 19-Feb-2014 Deepanshu Gupta <deepanshu@google.com> 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)
ridge/src/com/android/layoutlib/bridge/impl/FontLoader.java
ec4623d0d47734c21ee915ea6ec58e60f668bd2f 07-Jan-2014 Deepanshu Gupta <deepanshu@google.com> 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)
ridge/src/android/graphics/BidiRenderer.java
2a82a48fefb7877f8162133db81788c12eae7582 07-Jan-2014 Deepanshu Gupta <deepanshu@google.com> Fix the measurement of text bounds. [DO NOT MERGE]

Bug: 12366230
Change-Id: I203b678363dc7b688c744503ee10216baca658a9
(cherry-picked from eb1fae940df0117deb0dc891f9f9bfeca35b1ac1)
ridge/src/android/graphics/BidiRenderer.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
5bb3414d148f1309dade9333fe9b89c8d1c2f308 06-Feb-2014 Deepanshu Gupta <deepanshu@google.com> 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)
ridge/src/android/graphics/NinePatch_Delegate.java
5712b5fc3fec0dc376e84f660f2fe0d1102c0cbb 21-Jan-2014 Deepanshu Gupta <deepanshu@google.com> 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)
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
02cde9ceeb4c052ee273a5d809816dfd355ebb56 01-Feb-2014 Deepanshu Gupta <deepanshu@google.com> Add methods for Time_Delegate [DO NOT MERGE]

Bug: http://b.android.com/65359
Change-Id: I7c2d09286d6bcd9899444aaa5a4a5a342e39d923
(cherry-picked from ddb7f3273c3c00e6520794dcaabdaad20fd98e26)
ridge/src/android/text/format/Time_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
9d7b5165576e3cf491fe47cf335feb6d204140b3 13-Nov-2013 Deepanshu Gupta <deepanshu@google.com> Add libphonenumber to layoutlib.jar. [DO NOT MERGE]

Issue: http://b.android.com/59497
Change-Id: Ief11e602703b6041db66241f1699cc1de72e65a5
(cherry picked from commit 317f304893c58c5e50255bd712448ca233ae5cec)
ndroid.mk
reate/src/com/android/tools/layoutlib/create/Main.java
689c0dfe72a57c0555560012cbc6806375e7d4b7 12-Nov-2013 Deepanshu Gupta <deepanshu@google.com> Fix NPE in layoutlib. [DO NOT MERGE]

Change-Id: I36623304d83b344ea078044001577b8005a63c02
(cherry picked from commit 80c55109b6351049498df294234dc0a75e75ec44)
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
083d1562e00631630b5594462ce4a867a3508d8d 08-Nov-2013 Deepanshu Gupta <deepanshu@google.com> 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)
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
80c668f2a076e91d887dbf77776cd503ff88b0b4 11-Sep-2013 Deepanshu Gupta <deepanshu@google.com> 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)
reate/.classpath
reate/README.txt
reate/src/com/android/tools/layoutlib/create/AbstractClassAdapter.java
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/ICreateInfo.java
reate/src/com/android/tools/layoutlib/create/Main.java
reate/src/com/android/tools/layoutlib/create/RefactorClassAdapter.java
reate/src/com/android/tools/layoutlib/create/RenameClassAdapter.java
reate/src/com/android/tools/layoutlib/java/AutoCloseable.java
reate/src/com/android/tools/layoutlib/java/IntegralToString.java
reate/src/com/android/tools/layoutlib/java/ModifiedUtf8.java
reate/src/com/android/tools/layoutlib/java/UnsafeByteSequence.java
reate/tests/com/android/tools/layoutlib/create/AsmAnalyzerTest.java
reate/tests/com/android/tools/layoutlib/create/AsmGeneratorTest.java
reate/tests/com/android/tools/layoutlib/create/RenameClassAdapterTest.java
reate/tests/com/android/tools/layoutlib/create/dataclass/JavaClass.java
reate/tests/data/mock_android.jar
reate/tests/data/mock_android.jardesc
reate/tests/mock_android/dummy/InnerTest.java
reate/tests/mock_android/view/View.java
reate/tests/mock_android/view/ViewGroup.java
reate/tests/mock_android/widget/LinearLayout.java
reate/tests/mock_android/widget/TableLayout.java
reate/tests/mock_data/java/lang/JavaClass.java
reate/tests/mock_data/mock_android/dummy/InnerTest.java
reate/tests/mock_data/mock_android/view/View.java
reate/tests/mock_data/mock_android/view/ViewGroup.java
reate/tests/mock_data/mock_android/widget/LinearLayout.java
reate/tests/mock_data/mock_android/widget/TableLayout.java
6335590aa8997944cc7fb358a315dbb9b789f87f 13-Oct-2013 Deepanshu Gupta <deepanshu@google.com> 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)
ridge/src/libcore/icu/ICU_Delegate.java
11ee746dc5e77f4f33aac45ac9e344444223012d 13-Oct-2013 Deepanshu Gupta <deepanshu@google.com> 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)
ridge/resources/bars/hdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/hdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/mdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/mdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/status_bar.xml
ridge/resources/bars/xhdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/xhdpi/stat_sys_wifi_signal_4_fully.png
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
44bcd64e5b9fd211dd56b0598693a0559f65dc1a 15-Oct-2013 Deepanshu Gupta <deepanshu@google.com> Fix CalendarView to show the right labels. [DO NOT MERGE]

Change-Id: I95431f1054678d4192bd1621c1f69b29268f55e9
(cherry picked from commit 083e3caf66c21f7cc9511db479726c38d90e2d2f)
ridge/src/android/text/format/Time_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
87be67f91719234cbd381ff0242b5efc8b6aa257 17-Oct-2013 Deepanshu Gupta <deepanshu@google.com> 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)
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
7b5d54f05be61a7ab40021644a91c466e2897627 11-Sep-2013 Deepanshu Gupta <deepanshu@google.com> Fix ClassCastException when rendering ListView [DO NOT MERGE]

Bug: b.android.com/59300
Change-Id: Ia350adb3308daa8170bff755302760790163c811
(cherry picked from commit 54d88f7678387a6eb871ec2dccd36af4ff35b1fe)
ridge/src/com/android/layoutlib/bridge/impl/binding/AdapterHelper.java
ridge/src/com/android/layoutlib/bridge/impl/binding/AdapterItem.java
ridge/src/com/android/layoutlib/bridge/impl/binding/BaseAdapter.java
ridge/src/com/android/layoutlib/bridge/impl/binding/FakeAdapter.java
ridge/src/com/android/layoutlib/bridge/impl/binding/FakeExpandableAdapter.java
ce22440d4ca94009a4fb22c3d4f924cfbf422a66 12-Jul-2013 Deepanshu Gupta <deepanshu@google.com> 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)
ridge/src/android/graphics/BidiRenderer.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/text/AndroidBidi_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/FontLoader.java
bd9e181b291af34f9d70db42715136f3c16ddbde 20-Jun-2013 Deepanshu Gupta <deepanshu@google.com> 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)
ridge/.classpath
ridge/Android.mk
ridge/resources/bars/ldrtl-hdpi/ic_sysbar_back.png
ridge/resources/bars/ldrtl-hdpi/ic_sysbar_recent.png
ridge/resources/bars/ldrtl-mdpi/ic_sysbar_back.png
ridge/resources/bars/ldrtl-mdpi/ic_sysbar_recent.png
ridge/resources/bars/ldrtl-xhdpi/ic_sysbar_back.png
ridge/resources/bars/ldrtl-xhdpi/ic_sysbar_recent.png
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/NavigationBar.java
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
d4875e19f5b7c69226783b0a6590831466159f84 13-Jul-2013 Deepanshu Gupta <deepanshu@google.com> 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)
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
d25d33cdebeb5a363b299939017a0cdfa42c7338 02-May-2014 Deepanshu Gupta <deepanshu@google.com> Support actionProviderClass attribute for menus [DO NOT MERGE]

The change adds support for view cookies for actionProviderClasses (for
example, ShareActionProvider) in the action bar menus.

This also provides a more robust search for the overflowMenuButton.

Change-Id: I316c8b9a69e2e337b41ba0fe4e61af9fe850f750
(cherry picked from commit 28fa661f79e18fc9fc46bf112edded9c0d07696f)
ridge/src/com/android/internal/view/menu/BridgeMenuItemImpl.java
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
1f5e678c08ca7e0b6734b7856187f1739fb4dbef 02-May-2014 Deepanshu Gupta <deepanshu@google.com> Support actionProviderClass attribute for menus.

The change adds support for view cookies for actionProviderClasses (for
example, ShareActionProvider) in the action bar menus.

This also provides a more robust search for the overflowMenuButton.

Change-Id: I316c8b9a69e2e337b41ba0fe4e61af9fe850f750
ridge/src/com/android/internal/view/menu/BridgeMenuItemImpl.java
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
cd50f7294654bf04195d9d1078a984ff9462093c 30-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am c046c767: am c0c96012: am 4b5fa4d3: Fix class name for OverflowMenuButton [DO NOT MERGE]

* commit 'c046c76739b210d912dae38bf945d60b8d69ab11':
Fix class name for OverflowMenuButton [DO NOT MERGE]
c046c76739b210d912dae38bf945d60b8d69ab11 30-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am c0c96012: am 4b5fa4d3: Fix class name for OverflowMenuButton [DO NOT MERGE]

* commit 'c0c96012c667d1d91d8f6b763df45e566cae0eaf':
Fix class name for OverflowMenuButton [DO NOT MERGE]
4b5fa4d318e7efaffdc678e0cb8953ffc78c2b1e 30-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Fix class name for OverflowMenuButton [DO NOT MERGE]

Change-Id: Ie3e709e7aadb2193397df8befef0c55624d7e4e3
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
4bf3c930684b1e697c87d3fdb520309c39e51b14 30-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am 92bc0753: am 8c15cd0d: am c967d8dc: Add special system view cookie to OverflowButton. [DO NOT MERGE]

* commit '92bc07534e511b9afa7edaffe867d2674c504d73':
Add special system view cookie to OverflowButton. [DO NOT MERGE]
92bc07534e511b9afa7edaffe867d2674c504d73 30-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am 8c15cd0d: am c967d8dc: Add special system view cookie to OverflowButton. [DO NOT MERGE]

* commit '8c15cd0dc1d04490b82fd7d8da7611ff3219a1f0':
Add special system view cookie to OverflowButton. [DO NOT MERGE]
c967d8dc62c429ecf3e27bf3714a953636e75cbf 25-Apr-2014 Deepanshu Gupta <deepanshu@google.com> 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 674af92fd3a618695448ff88568b03390e90bc66)
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
293513a59d36cd96a3e474dde5981380d372d8c9 30-Apr-2014 Bill Yi <byi@google.com> Merge commit '0b62467b142b61ee1e449ba958ba37dfd961ef56' into HEAD
d1084cc02549dc9ee67c879f78ae929095ec19b6 24-May-2013 Deepanshu Gupta <deepanshu@google.com> 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)
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/os/Looper_Accessor.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
b5cdfd97a5bbc2c52dec907467362550aff8afc4 13-Feb-2014 Deepanshu Gupta <deepanshu@google.com> 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)
ridge/resources/bars/action_bar.xml
ridge/src/com/android/internal/view/menu/MenuBuilderAccessor.java
ridge/src/com/android/internal/widget/ActionBarAccessor.java
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
ridge/src/com/android/layoutlib/bridge/bars/OverflowMenuAdapter.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
20e0695b554e883b095f5223be10b6e1097db49f 12-Dec-2013 Deepanshu Gupta <deepanshu@google.com> 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 4ccc4bd54f85d86818f61d728c6361d2003ddd8e)
ridge/resources/bars/action_bar.xml
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
ridge/src/com/android/layoutlib/bridge/bars/FakeActionBar.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
ridge/src/com/android/layoutlib/bridge/impl/SystemViewInfo.java
reate/src/com/android/tools/layoutlib/create/Main.java
3c00b28bf60ab01b449e16df045238f4bae4d700 12-Mar-2014 Deepanshu Gupta <deepanshu@google.com> Fix theme/style resolution in Layoutlib [DO NOT MERGE]

Cherry picked from klp-dev from
Change-Id: If1e7187645f0b0388f7b97d742395efd228b347a which was
cherrypicked from master with the following

Change-Id: Icfb91e566666408802dadc0e2070991151b16b9d
(cherry picked from commit f1e7187645f0b0388f7b97d742395efd228b347a)
ridge/src/android/content/res/AssetManager_Delegate.java
ridge/src/android/content/res/Resources_Theme_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
b85d30a2c88b6a23e251347b14a75456c4daeca9 01-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Add missing dependency in layoutlib build file [DO NOT MERGE]

Add missing dependency on built_ext_data

Change-Id: I4e7cca7f6cbc7f5b7416ac9b85a9aec01e61ecd4
(cherry-picked from commit e345507ca4b7b83c6e0446788f4404eb697f945b)
ndroid.mk
f8144032d1fb7319bfd24914b12597505cfcc91f 01-Apr-2014 Deepanshu Gupta <deepanshu@google.com> 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)
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/DependencyFinder.java
reate/tests/com/android/tools/layoutlib/create/AsmAnalyzerTest.java
reate/tests/data/mock_android.jar
reate/tests/mock_data/mock_android/util/EmptyArray.java
reate/tests/mock_data/mock_android/widget/LinearLayout.java
89fdc0c556cf0fe2562fb8f0476e03cd51045164 16-Apr-2014 Deepanshu Gupta <deepanshu@google.com> 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 bdd0ad79b9b027280bd371c7b6795b04ed89ac8f)
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/Region_Delegate.java
ridge/tests/src/com/android/layoutlib/bridge/TestDelegates.java
d4f0073f4805cd1036218f243d9b7c7c5bb90e41 18-Oct-2013 Deepanshu Gupta <deepanshu@google.com> Remove references to java package class Objects. [DO NOT MERGE]

Remove references to Java 7 class java.util.Objects and replace it with
a new class that can be loaded on Java 6.

Change-Id: Ibbd9b20b8bc89e247f1d0c48d743d06d1a4f0704
(cherry-picked from commit 45f5cd49fa898a59484edfd8e291dbe10df82db2)
reate/README.txt
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/java/Objects.java
674af92fd3a618695448ff88568b03390e90bc66 25-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Add special system view cookie to OverflowButton.

Add a special view cookie to enable the IDE to identify the overflow
menu button in the Action Bar.

Change-Id: Ida3ed776afb8c9fa8af23b73d4cf6d47eef0ab87
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
8f9d92c4ca5233607ca01dac0b3b66fde5539307 24-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am 7406e4b8: am 7947ec71: am b64732d9: Merge "Fix style warnings in RenderSessionImpl [DO NOT MERGE]" into klp-dev

* commit '7406e4b8102ffd71affd55a9f453c0ecce13a097':
Fix style warnings in RenderSessionImpl [DO NOT MERGE]
057dca97d9a486b94c82673a95a7a3933bca9a4d 24-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am 1668ae8d: am a019e772: am 6aaea1bd: Merge "Fix visitFieldInsn in layoutlib_create. [DO NOT MERGE]" into klp-dev

* commit '1668ae8d2a29b491c3ae421c5b0eca101fb10824':
Fix visitFieldInsn in layoutlib_create. [DO NOT MERGE]
5dee1a093abc4d6fd197ba2c3be012c9536ba1c5 24-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am e17ed922: am 126f4057: am 5ba2f230: Add view cookies for action bar menus. [DO NOT MERGE]

* commit 'e17ed922001cf70c48969eb7b10ee2e2557b41f9':
Add view cookies for action bar menus. [DO NOT MERGE]
7406e4b8102ffd71affd55a9f453c0ecce13a097 24-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am 7947ec71: am b64732d9: Merge "Fix style warnings in RenderSessionImpl [DO NOT MERGE]" into klp-dev

* commit '7947ec715d8b4a0c82135553abb4947b61bf802b':
Fix style warnings in RenderSessionImpl [DO NOT MERGE]
1668ae8d2a29b491c3ae421c5b0eca101fb10824 24-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am a019e772: am 6aaea1bd: Merge "Fix visitFieldInsn in layoutlib_create. [DO NOT MERGE]" into klp-dev

* commit 'a019e77252f86962b9803042c01b897f7f1aa89f':
Fix visitFieldInsn in layoutlib_create. [DO NOT MERGE]
e17ed922001cf70c48969eb7b10ee2e2557b41f9 24-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am 126f4057: am 5ba2f230: Add view cookies for action bar menus. [DO NOT MERGE]

* commit '126f4057a06756fbb1c194b5d9d40f9f922d14ee':
Add view cookies for action bar menus. [DO NOT MERGE]
b64732d977c023423cd01d32361a49401d9203cd 24-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Fix style warnings in RenderSessionImpl [DO NOT MERGE]" into klp-dev
6aaea1bd4aa056335776098cd9dc523e898716f1 24-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Fix visitFieldInsn in layoutlib_create. [DO NOT MERGE]" into klp-dev
7d3ae4f17d93125f8c45e17d3a6a22d5ab23b624 24-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Bug fix in layoutlib

Renaming a method wasn't completed properly.
The bug was introduced in the following change:
Idcfc263a8ebe0a4f25afa3a1eb085fa628fd03ca
(1001961f904bac5294aaf73a47c2497aa764bf7f)

Change-Id: I698437b428d696c656e2268ded654a612a3e0c80
ridge/src/android/view/MenuInflater_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
1ea1b21acd5517d5405bd3338ba24d5a03a8d792 23-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Fix style warnings in RenderSessionImpl [DO NOT MERGE]

Change-Id: I9d3cb23e4ea692f737a3e3d6c18cc8de18b66a3c
(cherry-picked from commit fbfeb1a90b6f8f3966c60a69d50ce8f608d9d861)
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
5ba2f230faa355eb9bc1e90f6c48eeeb437f390c 18-Apr-2014 Deepanshu Gupta <deepanshu@google.com> 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 1001961f904bac5294aaf73a47c2497aa764bf7f)
ridge/src/android/view/BridgeInflater.java
ridge/src/android/view/MenuInflater_Delegate.java
ridge/src/com/android/internal/view/menu/BridgeMenuItemImpl.java
ridge/src/com/android/internal/view/menu/MenuBuilder_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
6f9baea47757fef4745de434e09bd552fddc1f03 01-Apr-2014 Deepanshu Gupta <deepanshu@google.com> 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 4a0f93bd32b8dd9b3c351680ad82e461d5111f38)
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/DependencyFinder.java
reate/tests/com/android/tools/layoutlib/create/AsmAnalyzerTest.java
reate/tests/data/mock_android.jar
reate/tests/mock_data/mock_android/util/EmptyArray.java
reate/tests/mock_data/mock_android/widget/LinearLayout.java
fbfeb1a90b6f8f3966c60a69d50ce8f608d9d861 23-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Fix style warnings in RenderSessionImpl

Change-Id: I9d3cb23e4ea692f737a3e3d6c18cc8de18b66a3c
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
1001961f904bac5294aaf73a47c2497aa764bf7f 18-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Add view cookies for action bar menus.

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.

Change-Id: Idcfc263a8ebe0a4f25afa3a1eb085fa628fd03ca
ridge/src/android/view/BridgeInflater.java
ridge/src/android/view/MenuInflater_Delegate.java
ridge/src/com/android/internal/view/menu/BridgeMenuItemImpl.java
ridge/src/com/android/internal/view/menu/MenuBuilder_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
76bc2bb4c7a5ae94189067cf74f06e1fbaeaedbb 23-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Update Matrix_Delegate native methods."
6416152f7e59320439a89e824dbb6fbd481e64b1 23-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am be06a418: am cf5c3fc7: am 53b7df19: Merge "Add missing ICU_Delegate methods."

* commit 'be06a4182b9ff44a276f56d04b907672ee9e149a':
Add missing ICU_Delegate methods.
be06a4182b9ff44a276f56d04b907672ee9e149a 23-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am cf5c3fc7: am 53b7df19: Merge "Add missing ICU_Delegate methods."

* commit 'cf5c3fc70d4dcd5dc3c6054d0f7415ded0070e4f':
Add missing ICU_Delegate methods.
e2b67777ad8c46e4b7fd85e9cd54f82b8dbe57ea 21-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Add missing ICU_Delegate methods.

Update the ICU_Delegate to add methods originally added in
I5de58be7e8a701f2c40182ea54bceff85ec1aad2

Change-Id: I536834fe76cbc7dae05580182fee1bea956e3e77
ridge/src/libcore/icu/ICU_Delegate.java
385c6b3b6ca370301f82f83715e9004ddaf43cae 21-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Update Matrix_Delegate native methods.

Update the Matrix_Delegate native methods in layoutlib. The original
change is I5cdcea827ebff587df0bbddc0965e3e0fbf48002.

Change-Id: I2c94741fdaeb0c2279caefee0188f432267bb37d
ridge/src/android/graphics/Matrix_Delegate.java
311efc146cb68490aadd52f579cf2570012b8c59 19-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Add DisplayManager service to BridgeContext"
664d6f1fe4d6dfa742b3e98051f924dbc190f8ca 19-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Add DisplayManager service to BridgeContext

ViewRoot now holds a reference to the DisplayManager. The change updates
the BridgeContext to provide the DisplayManager instance.

Change-Id: I4a5f00eda337939c72bad47b0ca6a7403454228d
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
08ea918c86175d313c8e7f10c0b4a25c1424639b 19-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Add isElegantHeight to Layoutlib

Add the native stub methods for isElegantHeight in Paint.

Change-Id: Iaddde36528fb452e5a150ab35687da781091d14c
ridge/src/android/graphics/Paint_Delegate.java
59dfbb91ca9c7ef979a9f10e3875f881ed1ef0a5 17-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Fix build [DO NOT MERGE]

The branch is missing some CLs for 64-bit support. So, until they are
added, this change will fix the build.

Change-Id: Ia838caf60ca49b406101a3fb48a96afdcfb30c66
ridge/src/android/content/res/AssetManager_Delegate.java
492090a55e2fa94745aaf4e0e295845d8bb1351a 16-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am 16191f8c: resolved conflicts for merge of 0e2049cd to klp-modular-dev

* commit '16191f8c4fe92036c8ff2eecd4e57b4642068b99':
Layoutlib tests now check methods return value [DO NOT MERGE]
35d46778f49c962c990cfc17e521aa80b9e0c016 16-Apr-2014 Deepanshu Gupta <deepanshu@google.com> resolved conflicts for merge of ec6676dd to klp-modular-dev-plus-aosp

Change-Id: I2fec735ba65f56da7d17022074f8924a259b4bbf
16191f8c4fe92036c8ff2eecd4e57b4642068b99 16-Apr-2014 Deepanshu Gupta <deepanshu@google.com> resolved conflicts for merge of 0e2049cd to klp-modular-dev

Change-Id: I518e18d0c769a4cb5d325fc22165a8ead36e11de
82d5f137ed03dcd1020fb554a1d0f3029a826282 16-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am e5d0fce7: am 685b7d41: am 1b87390c: Overflow menu popup for Action Bar in Layoutlib [DO NOT MERGE]

* commit 'e5d0fce7aeb60c44849cd09815ccecda702422ef':
Overflow menu popup for Action Bar in Layoutlib [DO NOT MERGE]
ec6676ddf682e22dfb56aa54359c9480dfa661d3 16-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am 86384880: am f1e71876: Fix theme/style resolution in Layoutlib [DO NOT MERGE]

* commit '863848808d005fe1d2fd84a2982adfc02a3fbb9f':
Fix theme/style resolution in Layoutlib [DO NOT MERGE]
e5d0fce7aeb60c44849cd09815ccecda702422ef 16-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am 685b7d41: am 1b87390c: Overflow menu popup for Action Bar in Layoutlib [DO NOT MERGE]

* commit '685b7d4165c417ce20b1f6c49190eabcfda09940':
Overflow menu popup for Action Bar in Layoutlib [DO NOT MERGE]
f2d085e867dd59aa2aaff74f6e5b265b1bffbaba 16-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am d023360a: am 484c88c3: am 4ccc4bd5: Action bar rendering in layoutlib [DO NOT MERGE]

* commit 'd023360aa03db1a7831a5697d49faa2575e4a9c3':
Action bar rendering in layoutlib [DO NOT MERGE]
110a05c6bd2778b37c83ea5b4d9b753be0ac32ba 16-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am 2aee0712: am e75477cb: am acf0bce0: Support custom views using TimePickerDialog [DO NOT MERGE]

* commit '2aee07124cad720587a8c51de5650b6b93ae9150':
Support custom views using TimePickerDialog [DO NOT MERGE]
d023360aa03db1a7831a5697d49faa2575e4a9c3 16-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am 484c88c3: am 4ccc4bd5: Action bar rendering in layoutlib [DO NOT MERGE]

* commit '484c88c3655991759dc64276404d0cf7e33b455f':
Action bar rendering in layoutlib [DO NOT MERGE]
2aee07124cad720587a8c51de5650b6b93ae9150 16-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am e75477cb: am acf0bce0: Support custom views using TimePickerDialog [DO NOT MERGE]

* commit 'e75477cb3bf0f2e18c1f0bb743a6189fbc07c2a2':
Support custom views using TimePickerDialog [DO NOT MERGE]
5a1250532f159842c364accf02bcfd111a6b900b 16-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Merge changes I66792c4d,I203b6783 into jb-mr2-dev

* changes:
Improve text rendering and measurement. [DO NOT MERGE]
Fix the measurement of text bounds. [DO NOT MERGE]
04b4f8d11406c64b94797af67dd7530435187129 16-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Set default text style in layoutlib as NORMAL [DO NOT MERGE]" into jb-mr2-dev
fb120acd841f7d8d0e1845f5bdd98abf35cb25b4 16-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Add methods for Time_Delegate [DO NOT MERGE]" into jb-mr2-dev
b7fd6315328c3a38fd7928f3dbb43f44227eb78b 16-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Fix sans-serif-thin and sans-serif-light fonts in layoutlib. [DO NOT MERGE]" into jb-mr2-dev
f14cbb26edcf0838cee333bf0d6ee686bf6de333 16-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Optimize layout rendering in layoutlib [DO NOT MERGE]" into jb-mr2-dev
bdd0ad79b9b027280bd371c7b6795b04ed89ac8f 16-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Layoutlib tests now check methods return value [DO NOT MERGE]

The change is a cherry-pick of relevant fixes from the following
commits on master branch:
the followning commits:
9be03c4e980d3058aeb3fd730da5f7d4a4a4f8a8 and
e05bb956ce429618fd4f971a9dc708b9313c59ea

Change-Id: I87cef323c4eaee4e9f60475f01156b276593fa50
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/Region_Delegate.java
ridge/tests/src/com/android/layoutlib/bridge/TestDelegates.java
f1e7187645f0b0388f7b97d742395efd228b347a 12-Mar-2014 Deepanshu Gupta <deepanshu@google.com> Fix theme/style resolution in Layoutlib [DO NOT MERGE]

Change-Id: Icfb91e566666408802dadc0e2070991151b16b9d
(cherry picked from commit bfec73c2db5a34ced248213edf5519c80727a65f)

Conflicts:
core/java/android/content/res/Resources.java
tools/layoutlib/create/src/com/android/tools/layoutlib/create/CreateInfo.java
ridge/src/android/content/res/AssetManager_Delegate.java
ridge/src/android/content/res/Resources_Theme_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
1b87390c9426c4bc9119829e9375d712dfde11c3 13-Feb-2014 Deepanshu Gupta <deepanshu@google.com> Overflow menu popup for Action Bar in Layoutlib [DO NOT MERGE]

Adds MenuBuilderAccessor in addition to the cherry-picked changes.

Change-Id: Ib7cc314079099c010f7d53849e204db36c410357
(cherry-picked from commit 929eea6bc1824bf98d244550c0984ecf8ea98811)
ridge/resources/bars/action_bar.xml
ridge/src/com/android/internal/view/menu/MenuBuilderAccessor.java
ridge/src/com/android/internal/widget/ActionBarAccessor.java
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
ridge/src/com/android/layoutlib/bridge/bars/OverflowMenuAdapter.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
4ccc4bd54f85d86818f61d728c6361d2003ddd8e 12-Dec-2013 Deepanshu Gupta <deepanshu@google.com> 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 14bf0cef7eeed572a67c29a328581afac4decc20)
ridge/resources/bars/action_bar.xml
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
ridge/src/com/android/layoutlib/bridge/bars/FakeActionBar.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
ridge/src/com/android/layoutlib/bridge/impl/SystemViewInfo.java
reate/src/com/android/tools/layoutlib/create/Main.java
acf0bce09fec2cabe871d7146aa62e9258fbf06d 10-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Support custom views using TimePickerDialog [DO NOT MERGE]

Bug: http://b.android/com/61515

Change-Id: I0dc3357be0c058adde9d3ea5b6796004b786fd34
(cherry picked from commit 86e5218220a0e01f7eb574a2480bd91f9ebfae35)
reate/src/com/android/tools/layoutlib/create/Main.java
135a9ad4a51c9827fee40e3ff57639349fe7f236 15-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Add overflow menu popup for Action Bar in Layoutlib"
8d95b5009ce5592f55a9487536fa640724dc316b 15-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Action bar rendering in layoutlib"
929eea6bc1824bf98d244550c0984ecf8ea98811 13-Feb-2014 Deepanshu Gupta <deepanshu@google.com> Add overflow menu popup for Action Bar in Layoutlib

Change-Id: Ib7cc314079099c010f7d53849e204db36c410357
ridge/resources/bars/action_bar.xml
ridge/src/com/android/internal/widget/ActionBarAccessor.java
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
ridge/src/com/android/layoutlib/bridge/bars/OverflowMenuAdapter.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
352e108259bcb3305f034cfb042287d43a5e8f80 14-Apr-2014 Dan Sandler <dsandler@android.com> Merge "Merge remote-tracking branch 'goog/master-lockscreen-dev'"
dc800e85138f3ab57303a879b3e1abd109b90247 12-Apr-2014 Jeff Brown <jeffbrown@google.com> am eaa8a6b7: am a5c8d586: Fix build break due to layout lib.

* commit 'eaa8a6b7feb4a520f48654b087223ccaf49b6a2f':
Fix build break due to layout lib.
eaa8a6b7feb4a520f48654b087223ccaf49b6a2f 12-Apr-2014 Jeff Brown <jeffbrown@google.com> am a5c8d586: Fix build break due to layout lib.

* commit 'a5c8d586f6ceff252336f72c6e15efbf4785e794':
Fix build break due to layout lib.
a5c8d586f6ceff252336f72c6e15efbf4785e794 12-Apr-2014 Jeff Brown <jeffbrown@google.com> Fix build break due to layout lib.

Change-Id: I87b40125adad0a799214f6ebf0dc04ec7903efbf
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
c76faca60e0359e43e781eb3df403dc127733671 12-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am e2dc6985: am f1334ccc: am 849a8208: Add DatePickerDialog to layoutlib [DO NOT MERGE]

* commit 'e2dc69856879d41798545b2c113098195bf04fa6':
Add DatePickerDialog to layoutlib [DO NOT MERGE]
e2dc69856879d41798545b2c113098195bf04fa6 12-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am f1334ccc: am 849a8208: Add DatePickerDialog to layoutlib [DO NOT MERGE]

* commit 'f1334ccc1522241c0efc2449ed8bf472a5b01204':
Add DatePickerDialog to layoutlib [DO NOT MERGE]
7caa77e3ab81ffe76cda1204612088321e89218a 11-Apr-2014 Narayan Kamath <narayan@google.com> am 79d88d13: am 73e78c75: am af42a91c: Fix another build breakage.

* commit '79d88d138c07835d349f7c74f380eaeb7cac8d0b':
Fix another build breakage.
79d88d138c07835d349f7c74f380eaeb7cac8d0b 11-Apr-2014 Narayan Kamath <narayan@google.com> am 73e78c75: am af42a91c: Fix another build breakage.

* commit '73e78c75b770b3af0d48acac9c8565f7b4d035ff':
Fix another build breakage.
73e78c75b770b3af0d48acac9c8565f7b4d035ff 11-Apr-2014 Narayan Kamath <narayan@google.com> am af42a91c: Fix another build breakage.

* commit 'af42a91c118941d463b474574bf34bf05822350d':
Fix another build breakage.
af42a91c118941d463b474574bf34bf05822350d 11-Apr-2014 Narayan Kamath <narayan@google.com> Fix another build breakage.

Caused by 037c33eae74bee2774897d969d48947f9abe254f, which
was submitted without a checkbuild.

Change-Id: I0d48f6b941cc98a30904cdfbd7bcb56ed509734e
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
d4d46587665ede9cdd26d12d37368a35232a31e1 11-Apr-2014 Colin Cross <ccross@android.com> resolved conflicts for merge of 90b39aba to master-lockscreen-dev

Change-Id: I2871a1e49c3b443cc7479f2352c652be3b0fb85b
0b65c56eb0d56f35f7404944370220450ccb450c 11-Apr-2014 Colin Cross <ccross@android.com> fix build

Fix make checkbuild.

Change-Id: Ie9335a9e8afe4dc13ec47b2e84ab433b19ff315f
ridge/src/android/view/IWindowManagerImpl.java
dd137a85d3e0295989b5b9d1f67ff32027be867d 10-Apr-2014 Svetoslav <svetoslavganov@google.com> resolved conflicts for merge of 6be2f952 to master-lockscreen-dev

Conflicts:
core/java/android/view/IWindowManager.aidl
tools/layoutlib/bridge/src/android/view/IWindowManagerImpl.java

Change-Id: Idcbc581294cc52b53eabefd61e5c20cbcea611db
6be2f95202237b7284542e692273d13a5bd26913 10-Apr-2014 Svetoslav <svetoslavganov@google.com> Merge "Adding render stats APIs to UiAutomation (framework)."
14bf0cef7eeed572a67c29a328581afac4decc20 12-Dec-2013 Deepanshu Gupta <deepanshu@google.com> Action bar rendering in layoutlib

This also makes a couple of changes to the framework:
1. ShareActionProvider - Use edit mode to execute activity chooser code.
2. WindowDecorActionBar - 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
ridge/resources/bars/action_bar.xml
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/bars/ActionBarLayout.java
ridge/src/com/android/layoutlib/bridge/bars/FakeActionBar.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
ridge/src/com/android/layoutlib/bridge/impl/SystemViewInfo.java
reate/src/com/android/tools/layoutlib/create/Main.java
849a8208c88d38e55ec13a1fa76bf295fde96cb5 26-Feb-2014 Deepanshu Gupta <deepanshu@google.com> Add DatePickerDialog to layoutlib [DO NOT MERGE]

Includes android.app.DatePickerDialog in the layoutlib.jar

Bug: http://b.android.com/28318
Change-Id: I583dde4a8b88204bf98bfca8d91470e1aa4719ce
(cherry picked from commit c2016d4073c61e87439d4fa14837b397a3c1630a)
reate/src/com/android/tools/layoutlib/create/Main.java
def26cb43b38e230cfc6c7bbfdcd201ed3b2ee48 10-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am 8aa7a967: Merge "Support custom views using TimePickerDialog in layoutlib"

* commit '8aa7a9677af8f235ade204602014a5e2e9f9188e':
Support custom views using TimePickerDialog in layoutlib
86e5218220a0e01f7eb574a2480bd91f9ebfae35 10-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Support custom views using TimePickerDialog in layoutlib

Bug: http://b.android/com/61515

Change-Id: I0dc3357be0c058adde9d3ea5b6796004b786fd34
reate/src/com/android/tools/layoutlib/create/Main.java
7a2333631eaa9e7458260c1f487de4dbed47f05a 09-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am 733217e6: Merge "Update layoutlib create README"

* commit '733217e6768757c50e1ac38644c2ecdbe522e8f5':
Update layoutlib create README
a4ce30fd86cfa6650ab8abbea5c42c8b9620ebd9 09-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am 6e5e160f: Merge "Make layoutlib load on Java 7 VM"

* commit '6e5e160f19c404c272e70f7f0ade5b27850ebd05':
Make layoutlib load on Java 7 VM
733217e6768757c50e1ac38644c2ecdbe522e8f5 09-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Update layoutlib create README"
88585f404cb493129847e4487b628062674a4ede 09-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Update layoutlib create README

Update the doc to reflect the current state of the tool and use a
consistent 100 char column limit.

Change-Id: I64fb58cc46abbc2f3759cb1f99d42b5090c1409f
reate/README.txt
6e5e160f19c404c272e70f7f0ade5b27850ebd05 09-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Make layoutlib load on Java 7 VM"
6a08225cee197e5baf80dd06dae46988db284122 09-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Make layoutlib load on Java 7 VM

Prevent Java 7 VM from verifying the StackMapTable for methods by lying
about the class version.

The changeset also fixes the eclipse project by using the right asm
library in the checkout.

Change-Id: Idabf165380fb75fcc2d5c8fbd72388f52887a5df
reate/.classpath
reate/src/com/android/tools/layoutlib/create/AbstractClassAdapter.java
1c9d93dcb0ccca03184ba0293b52424bbab2cc8d 08-Apr-2014 Ying Wang <wangying@google.com> am 30f05c29: Merge "Fix sdk build."

* commit '30f05c29c56a04f8d8ab2851d0c20a2b66406cfa':
Fix sdk build.
ff0bb30752339046586ec7c495c53a7ae2cf29df 08-Apr-2014 Ying Wang <wangying@google.com> Fix sdk build.

Change-Id: I3e620315e082b46ba5fcd4511b9c258bf610ddf5
ridge/src/com/android/layoutlib/bridge/android/BridgeIInputMethodManager.java
1376d600d8e0eefdbc0aa11d398cf7517fc77129 13-Mar-2014 Svetoslav <svetoslavganov@google.com> Adding render stats APIs to UiAutomation (framework).

bug:12927198

Change-Id: Iae21481c75ae58dcdab3731bf5f1e2844e29d434
ridge/src/android/view/IWindowManagerImpl.java
d94d1fbecd8d7206d940647ee158c1ac4a00c488 08-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am e9abc279: Merge "Fix theme/style resolution in Layoutlib"

* commit 'e9abc279fd0e1cd3a7c0bfb878c9b5ae22840b9b':
Fix theme/style resolution in Layoutlib
e9abc279fd0e1cd3a7c0bfb878c9b5ae22840b9b 08-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Fix theme/style resolution in Layoutlib"
ce00b81c415ea1fc66e5a638ad2dfca1513fcd23 05-Apr-2014 Deepanshu Gupta <deepanshu@google.com> am 1cb3e814: Merge "Fix sdk build"

* commit '1cb3e81421ada146b35515942299fb867b82048d':
Fix sdk build
ddf286282d8a30d27184e8304bac6fca03f88b72 05-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Fix sdk build

Change-Id: Ic08b57fdf2a653071a403bcc2c6b239a19363f72
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
bfec73c2db5a34ced248213edf5519c80727a65f 12-Mar-2014 Deepanshu Gupta <deepanshu@google.com> Fix theme/style resolution in Layoutlib

Change-Id: Icfb91e566666408802dadc0e2070991151b16b9d
ridge/src/android/content/res/AssetManager_Delegate.java
ridge/src/android/content/res/Resources_Theme_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
c07a48bed2c772dc548423396b208331b22a679a 04-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Fix a bug in Nine Patch library. [DO NOT MERGE]" into jb-mr2-dev
70dfe865013f0c8fedf2c9468360a41b02fcce0a 04-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Add missing files to fix libphonenumber for layoutlib. [DO NOT MERGE]" into jb-mr2-dev
2eb5f9e5b25dc769e5ba205237097c67fa212fd6 04-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Add libphonenumber to layoutlib.jar. [DO NOT MERGE]" into jb-mr2-dev
b6588c522451f5015c2cbc902d5a72566f979f2b 04-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Fix NPE in layoutlib. [DO NOT MERGE]" into jb-mr2-dev
3bc5b23f8dbb6ecc4eeac4334f94682056d0cb3b 04-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Fix layoutlib [DO NOT MERGE]" into jb-mr2-dev
72b2f536908f0f3249c59c630f1a06af371b2bfa 04-Apr-2014 Xavier Ducrohet <xav@google.com> am 76c484de: am d93b0b67: am e448bcf7: Merge "Add missing dependency in layoutlib build file [DO NOT MERGE]" into klp-dev

* commit '76c484de88317fbadc8a070fc333d4fb14355335':
Add missing dependency in layoutlib build file [DO NOT MERGE]
76c484de88317fbadc8a070fc333d4fb14355335 04-Apr-2014 Xavier Ducrohet <xav@google.com> am d93b0b67: am e448bcf7: Merge "Add missing dependency in layoutlib build file [DO NOT MERGE]" into klp-dev

* commit 'd93b0b67754f6d06407086278298f44156458216':
Add missing dependency in layoutlib build file [DO NOT MERGE]
ae6ffcc3c74d12ebf59a26cce24d04fdd2b56f4e 02-Apr-2014 Jorim Jaggi <jjaggi@google.com> Merge "Wait for Keyguard to be drawn after boot." into master-lockscreen-dev
cff0acb6b1eea23c3f44a078a0a5e81c11faea35 31-Mar-2014 Jorim Jaggi <jjaggi@google.com> Wait for Keyguard to be drawn after boot.

The old logic with waiting for the Keyguard to be drawn assumed that
it is in an own window, and just checked for the visibility. This is
no longer possible as the Keyguard is in the status bar, and the status
bar might have been drawn without the Keyguard. So we have to wait
explicitely until Keyguard told PhoneWindowManager that it has now been
drawn and we can turn on the screen.

In addition, the starting logic of SystemUI is moved into
SystemUIApplication such the we can make sure that the status bar
already exists when the callbacks from PhoneWindowManager reach
KeyguardService. This simplifies the logic a lot.

Bug: 13635952
Change-Id: Ifd6ba795647edcf3501641e39052e4d04bc826fb
ridge/src/android/view/IWindowManagerImpl.java
831f3ce9b5b330101b090daf3163a843e0c6317e 26-Mar-2014 Deepanshu Gupta <deepanshu@google.com> Add stub getThemeAttributeId() to BridgeTypedArray

The method is used to obtain theme attribute IDs for drawables for
caching.

The changeset also fixes some minor style issues found by code
inspection.

Change-Id: Ib5fe05511397b5ec7cb8e64f6b2769ec2c355f41
ridge/src/android/content/res/BridgeTypedArray.java
779b0eea300509ef072a8aa043a3c486d565110b 01-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Fix visitFieldInsn in layoutlib_create."
4a0f93bd32b8dd9b3c351680ad82e461d5111f38 01-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Fix visitFieldInsn in layoutlib_create.

The bug caused some classes to be missed when computing the dependencies
of the existing classes.

Change-Id: I7285ff67e016ce5d73a8550501f49acc73cfadfa
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/DependencyFinder.java
reate/tests/com/android/tools/layoutlib/create/AsmAnalyzerTest.java
reate/tests/data/mock_android.jar
reate/tests/mock_data/mock_android/util/EmptyArray.java
reate/tests/mock_data/mock_android/widget/LinearLayout.java
e345507ca4b7b83c6e0446788f4404eb697f945b 01-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Add missing dependency in layoutlib build file [DO NOT MERGE]

Add missing dependency on built_ext_data

Change-Id: I4e7cca7f6cbc7f5b7416ac9b85a9aec01e61ecd4
(cherry picked from commit 411b9691e39c0bdd0dafdda7db2737b99b45769e)
ndroid.mk
411b9691e39c0bdd0dafdda7db2737b99b45769e 01-Apr-2014 Deepanshu Gupta <deepanshu@google.com> Add missing dependency in layoutlib build file

Add missing dependency on built_ext_data

Change-Id: I4e7cca7f6cbc7f5b7416ac9b85a9aec01e61ecd4
ndroid.mk
c63e87d53deb24c4286036313db11719173419b3 19-Feb-2014 Deepanshu Gupta <deepanshu@google.com> 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 0acfb16dcd95468fe032204f54618e86becfd1eb)
ridge/src/android/graphics/Typeface_Delegate.java
5fb41528a6192c41f7e2bb30161cc5af6061d5b8 19-Feb-2014 Deepanshu Gupta <deepanshu@google.com> 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 e327212adde1136807bbdf052e8cc3861f8a6aba)
ridge/src/com/android/layoutlib/bridge/impl/FontLoader.java
88301948c92fe1261cfa19383d4aaa5d5d0195ac 07-Jan-2014 Deepanshu Gupta <deepanshu@google.com> 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 45dbfcc781a3926d22571b6ccfa3f27ec896f119)
ridge/src/android/graphics/BidiRenderer.java
ddb7f3273c3c00e6520794dcaabdaad20fd98e26 01-Feb-2014 Deepanshu Gupta <deepanshu@google.com> Add methods for Time_Delegate [DO NOT MERGE]

Bug: http://b.android.com/65359
Change-Id: I7c2d09286d6bcd9899444aaa5a4a5a342e39d923
(cherry-picked from eb3c5459eb893061779b102236a81069efdbef73)
ridge/src/android/text/format/Time_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
9e5e993c7969ad60ff70cfdcf707247f38a705a1 21-Jan-2014 Deepanshu Gupta <deepanshu@google.com> 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 35d56c0d67537e56fafebd8edf790026644fe8de)
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
eb1fae940df0117deb0dc891f9f9bfeca35b1ac1 07-Jan-2014 Deepanshu Gupta <deepanshu@google.com> Fix the measurement of text bounds. [DO NOT MERGE]

Bug: 12366230
Change-Id: I203b678363dc7b688c744503ee10216baca658a9
(cherry-picked from 5ad7c183f39df43562c69aba21ea422ad69bdae0)
ridge/src/android/graphics/BidiRenderer.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ee1187a94feb61adbfade2505b2f92418a1b1038 06-Feb-2014 Deepanshu Gupta <deepanshu@google.com> 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 8a892279bd1b212311f4200f306a317985463918)
ridge/src/android/graphics/NinePatch_Delegate.java
8a16f8e29a67c383e065ba9c47d5d1e80d7d2db9 16-Jan-2014 Deepanshu Gupta <deepanshu@google.com> Add missing files to fix libphonenumber for layoutlib. [DO NOT MERGE]

Change-Id: I8102da6c1c4625e887293a8823770d199521c53f
(cherry-picked from 58037a4404e639d28695a0f1c17053b53b96b970)
ndroid.mk
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/Main.java
reate/tests/com/android/tools/layoutlib/create/AsmAnalyzerTest.java
reate/tests/com/android/tools/layoutlib/create/AsmGeneratorTest.java
reate/tests/data/mock_android.jar
reate/tests/mock_data/mock_android/data/anotherDataFile
reate/tests/mock_data/mock_android/data/dataFile
317f304893c58c5e50255bd712448ca233ae5cec 13-Nov-2013 Deepanshu Gupta <deepanshu@google.com> Add libphonenumber to layoutlib.jar. [DO NOT MERGE]

Issue: http://b.android.com/59497
Change-Id: Ief11e602703b6041db66241f1699cc1de72e65a5
(cherry-picked from 1f92d7fc0ffa72d7db93244c29a1a6575bb4b318)
ndroid.mk
reate/src/com/android/tools/layoutlib/create/Main.java
80c55109b6351049498df294234dc0a75e75ec44 12-Nov-2013 Deepanshu Gupta <deepanshu@google.com> Fix NPE in layoutlib. [DO NOT MERGE]

Change-Id: I36623304d83b344ea078044001577b8005a63c02
(cherry-picked from d0581d271e814670d81a6550aa7b1e86864d5710)
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
28873c1f008f4fe24441923e14f30e55d6f0967a 17-Oct-2013 Deepanshu Gupta <deepanshu@google.com> Fix layoutlib [DO NOT MERGE]

Fix a NPE, and update an ICU method to return the right value as
required by DatePicker widget.

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 39e75835399f4d979cf82069dae2bd1ec496fb81)
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
ridge/src/libcore/icu/ICU_Delegate.java
0b7d80765c21dbd9294a0245f92a655fdd61514e 08-Nov-2013 Deepanshu Gupta <deepanshu@google.com> 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 f4800bc3b122828d61a34caecbf782eee170ae59)
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
776abc24cdd18610232a50b997cce3cffa74609b 07-Mar-2014 Adam Lesinski <adamlesinski@google.com> Uses VMRuntime.newUnpaddedArray for ideal array sizes

Bug:13028925

Change-Id: I0a9301248b10a339afbdc5e4ffe3310ac4fa1fb7
ridge/src/com/android/layoutlib/bridge/util/SparseWeakArray.java
852472d9aa39eb4591eac43487ac3e0944e1daf6 24-Mar-2014 Dianne Hackborn <hackbod@google.com> Fix build.

Change-Id: I1dd79e932a551bd537d2c71e8fca29a299c9312f
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
1a5255d5475eaaf620078c60b0dddbf2657fcf27 20-Mar-2014 Svetoslav <svetoslavganov@google.com> Fixing yet another build breackage

Change-Id: I83597d5433fc6cc380d5ec1dd6f78e115e76db5b
ridge/src/android/view/IWindowManagerImpl.java
a72da3aec6419a3ae5edaec91f1d07f63f0bce7a 14-Mar-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Add native method delegates to layoutlib"
103d40960daa0420995aa12881bef33892a0a2ab 14-Mar-2014 Deepanshu Gupta <deepanshu@google.com> Add native method delegates to layoutlib

Add delegates for Path.native_isConvex and ICU.getCurrencyNumericCode.
The original methods were added in
5be83edd15e11420287cc0af93a95d5a6dfae68f and
d627bd4525e41b0503f94c2887c3e01618c73105 respectively.

TODO: Implement Path_Delegate.native_isConvex

Change-Id: If1046467d3950ab6955c6b81383a60fd6bd03fd2
ridge/src/android/graphics/Path_Delegate.java
ridge/src/libcore/icu/ICU_Delegate.java
ceb2e0a6058c31ebd3ef66e497d571134ba496c2 14-Mar-2014 Narayan Kamath <narayan@google.com> am 1abb7e0f: am 63938750: am c0232642: am 629daddd: Merge "Fix layoutlib build."

* commit '1abb7e0f3920b31cf216b99fc83231d80dfa7ca4':
Fix layoutlib build.
bd5e61fdee35d1adef260141fda9b203ac33f49a 14-Mar-2014 Narayan Kamath <narayan@google.com> am c0232642: am 629daddd: Merge "Fix layoutlib build."

* commit 'c0232642b74517aa2717673f0811ba65c620f491':
Fix layoutlib build.
6393875024e3b2ee6916d718d79dfbeb722537c1 14-Mar-2014 Narayan Kamath <narayan@google.com> am c0232642: am 629daddd: Merge "Fix layoutlib build."

* commit 'c0232642b74517aa2717673f0811ba65c620f491':
Fix layoutlib build.
c73991bda0ad7821e27c20940368b0c0212c5dc4 14-Mar-2014 Narayan Kamath <narayan@google.com> Fix layoutlib build.

Was using private data structures from libcore.

Change-Id: I5bd43190081891659e18b5c871686e6078efcc81
ridge/src/libcore/icu/ICU_Delegate.java
e5ad073d2ef974e97a613316aee5218375d30143 13-Mar-2014 Deepanshu Gupta <deepanshu@google.com> resolved conflicts for merge of c76345a3 to klp-dev-plus-aosp

Change-Id: I54e14e1c6cd53cd10b38b34cf31989a2aa487b83
f978f16e50374681b0ade2d14a5e39cedaea6c2f 12-Mar-2014 Deepanshu Gupta <deepanshu@google.com> resolved conflicts for merge of c76345a3 to klp-modular-dev-plus-aosp

Change-Id: Id0aae224e17651bc07aa3f5b1a06923603d025b8
1767ea649cdc91c688883073b715e2a018d8363b 11-Mar-2014 Xavier Ducrohet <xav@android.com> am 5e5602da: am 0c72b769: Merge "Update layoutlib method for SystemClock"

* commit '5e5602da5fa9cd2e1d135b2310af2a8352f65e8d':
Update layoutlib method for SystemClock
5860f4f5f06be6ffd5358442d94519c800894329 06-Mar-2014 Narayan Kamath <narayan@google.com> am 70986e19: am ab71f8b6: Merge "AArch64: Use of long for pointers in PropertyValuesHolder"

* commit '70986e197bbaf4de4f8126519a75df2b057c3b52':
AArch64: Use of long for pointers in PropertyValuesHolder
5b5b4aa21f5ff1cb497f88679982568eef92b186 06-Mar-2014 Brian Carlstrom <bdc@google.com> resolved conflicts for merge of cb7cdd50 to klp-dev-plus-aosp

Change-Id: Iba01a6617d4922ec2827b0465095695028c20681
0d7ebc51ffb63f886af2196f05910925126726b9 06-Mar-2014 Deepanshu Gupta <deepanshu@google.com> Fix the delegate method signatures in LayoutLib

Change-Id: I262c285c1047958afdb024724959d5afb3552802
ridge/src/android/graphics/BitmapFactory_Delegate.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/libcore/icu/DateIntervalFormat_Delegate.java
ridge/src/libcore/icu/ICU_Delegate.java
5ea4be5214363a52cf211041fa3b4ffacc36187a 28-Feb-2014 Xavier Ducrohet <xav@android.com> am b2334254: am ec84ada6: am 5e5602da: am 0c72b769: Merge "Update layoutlib method for SystemClock"

* commit 'b2334254ef497e0dcda68d257c096516c77679a4':
Update layoutlib method for SystemClock
ec84ada6e8f3dad738810e2f1cd085defbc6d0ab 28-Feb-2014 Xavier Ducrohet <xav@android.com> am 5e5602da: am 0c72b769: Merge "Update layoutlib method for SystemClock"

* commit '5e5602da5fa9cd2e1d135b2310af2a8352f65e8d':
Update layoutlib method for SystemClock
36acf8baebc9ab72b3b5fe75d865399ddf7b0132 27-Feb-2014 Deepanshu Gupta <deepanshu@google.com> Add tests to the layoutlib eclipse project.

Specify the test folder in the layoutlib/bridge eclipse project.

Also add the sourcepath for layoutlib-api-prebuilt.jar

Change-Id: I194ed182618e564388d6df645e2de7f59897fa1e
ridge/.classpath
84cd55e8bc67b5dc9e834b4691b710c6f133d493 26-Feb-2014 Jeff Davidson <jpd@google.com> Fix SDK build broken by ag/423985

Change-Id: I85480683531468b7a8a83749d9366f5cc334bd24
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
c2016d4073c61e87439d4fa14837b397a3c1630a 26-Feb-2014 Deepanshu Gupta <deepanshu@google.com> Add DatePickerDialog to layoutlib

Includes android.app.DatePickerDialog in the layoutlib.jar

Bug: http://b.android.com/28318
Change-Id: I583dde4a8b88204bf98bfca8d91470e1aa4719ce
reate/src/com/android/tools/layoutlib/create/Main.java
5ac6a9e9b72f9daa5a7d4ec073b2e5d6af8b3def 24-Feb-2014 Deepanshu Gupta <deepanshu@google.com> Update layoutlib method for SystemClock

Update layoutlib to reflect changes from
http://android-review.googlesource.com/83061/

Change-Id: If7326f3af2a97271ad1465382944e1f078b965d8
ridge/src/android/os/SystemClock_Delegate.java
9be03c4e980d3058aeb3fd730da5f7d4a4a4f8a8 22-Feb-2014 Deepanshu Gupta <deepanshu@google.com> Update layoutlib tests to check methods return value.

The test in layoutlib bridge has been updated to check the return
value of the delegate method match the value of the overriden method.

This changeset also fixes the problems found due to this change.

Change-Id: I87cef323c4eaee4e9f60475f01156b276593fa50
ridge/src/android/animation/PropertyValuesHolder_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/android/graphics/Region_Delegate.java
ridge/tests/src/com/android/layoutlib/bridge/TestDelegates.java
09fcce52b4c21f6c2bd5b425731aa02871804a5b 20-Feb-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Add ability to obtain themed Drawable from Context"
21c5c8e600d635df1d5bbfb9f4db6d0f60b9e2ad 20-Feb-2014 Xavier Ducrohet <xav@google.com> am 9edf7a11: am 2cb9147f: am 55542ee6: am 3e637042: Merge "Set default text style in layoutlib as NORMAL [DO NOT MERGE]" into klp-dev

* commit '9edf7a1159b528afa056e0d61ee4487ed310fe4c':
Set default text style in layoutlib as NORMAL [DO NOT MERGE]
c139177b13427ea3ea1bc88364136439125848af 20-Feb-2014 Deepanshu Gupta <deepanshu@google.com> am 65521c3c: am ca4b9a77: am e92c8542: am 01825b7a: Fix sans-serif-thin and sans-serif-light fonts in layoutlib. [DO NOT MERGE]

* commit '65521c3cf169808cd02ce09a7344bc633d51c1fc':
Fix sans-serif-thin and sans-serif-light fonts in layoutlib. [DO NOT MERGE]
2cb9147fc49e6474eaf30fd833e43df10e42b899 20-Feb-2014 Xavier Ducrohet <xav@google.com> am 55542ee6: am 3e637042: Merge "Set default text style in layoutlib as NORMAL [DO NOT MERGE]" into klp-dev

* commit '55542ee6449bd580f61bc005726b5c87773fbe25':
Set default text style in layoutlib as NORMAL [DO NOT MERGE]
ca4b9a77e7d20703287b33b203b2582bd43f7792 20-Feb-2014 Deepanshu Gupta <deepanshu@google.com> am e92c8542: am 01825b7a: Fix sans-serif-thin and sans-serif-light fonts in layoutlib. [DO NOT MERGE]

* commit 'e92c8542a5cf1160a1b701b9f176af64ba46d68d':
Fix sans-serif-thin and sans-serif-light fonts in layoutlib. [DO NOT MERGE]
3e6370425ea3ac4e5d89ce042512913062212ccc 20-Feb-2014 Xavier Ducrohet <xav@google.com> Merge "Set default text style in layoutlib as NORMAL [DO NOT MERGE]" into klp-dev
01825b7aa3c864426c78c08c2f6004a8362c2b47 19-Feb-2014 Deepanshu Gupta <deepanshu@google.com> 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 commit e327212adde1136807bbdf052e8cc3861f8a6aba)
ridge/src/com/android/layoutlib/bridge/impl/FontLoader.java
13aea18b34e527cffeaa6cb81f5ecb7c4a66cb11 19-Feb-2014 Deepanshu Gupta <deepanshu@google.com> 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 commit 0acfb16dcd95468fe032204f54618e86becfd1eb)
ridge/src/android/graphics/Typeface_Delegate.java
be727079a5b4f9a5b485d6763d38f5720a44f10f 19-Feb-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Set default text style in layoutlib as NORMAL"
0acfb16dcd95468fe032204f54618e86becfd1eb 19-Feb-2014 Deepanshu Gupta <deepanshu@google.com> Set default text style in layoutlib as NORMAL

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
ridge/src/android/graphics/Typeface_Delegate.java
e327212adde1136807bbdf052e8cc3861f8a6aba 19-Feb-2014 Deepanshu Gupta <deepanshu@google.com> Fix sans-serif-thin and sans-serif-light fonts in layoutlib.

For these font families, text was always rendered as italic. This
changeset fixes the issue.

Bug: http://b.android.com/57221
Change-Id: Ic8a299bd1e555f5bb914cd3d2fe72917ec7f471a
ridge/src/com/android/layoutlib/bridge/impl/FontLoader.java
8250a825c39a2f1f63920669cf233db3d8944b51 19-Feb-2014 Deepanshu Gupta <deepanshu@google.com> Add ability to obtain themed Drawable from Context

This is to fix the rendering in layoutlib broken due to
8eea3ea5591e59f55cbb4f6b2b7e9363a285ced3

Change-Id: I3da6691ad86502bd4fa4b302deb381a840b94655
ridge/src/android/content/res/BridgeResources.java
98f33350b10106cda14543700a6c46032a590bb1 18-Feb-2014 Deepanshu Gupta <deepanshu@google.com> Fix native methods

Fix native method signatures as changed by the following commits:
56f57ccbd4fbbf4d572cc966d1cb76d7ae7ad334
76d3a1b8d035d27bc80b0f2fc480a903bd001514

Change-Id: I5db31d3665a5e8c84c107cf84ec3bd5ccfb9a9fe
ridge/src/android/graphics/ColorFilter_Delegate.java
ridge/src/android/graphics/ColorMatrixColorFilter_Delegate.java
ridge/src/android/graphics/LightingColorFilter_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/android/graphics/PorterDuffColorFilter_Delegate.java
857ba4af8519479298a671461cd6f5cace35b99b 15-Feb-2014 Deepanshu Gupta <deepanshu@google.com> Fix layoutlib by avoiding Java7 calls

This change also fixes a NPE in TypedArray caused by changes in the
framework.

Change-Id: Ie64237c567fa16c35c807db22ce9a4b609ee411d
ridge/src/android/content/res/BridgeTypedArray.java
ridge/src/android/content/res/Resources_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
eaddb849629b6585d7c11699bb7a1f0d2b984783 10-Feb-2014 Deepanshu Gupta <deepanshu@google.com> am f7193bf8: am d9f9da39: am 56b86deb: am 1c91b1f7: am 45dbfcc7: Improve text rendering and measurement.

* commit 'f7193bf89780039cf924dd7d1bb67f4830517231':
Improve text rendering and measurement.
f7193bf89780039cf924dd7d1bb67f4830517231 10-Feb-2014 Deepanshu Gupta <deepanshu@google.com> am d9f9da39: am 56b86deb: am 1c91b1f7: am 45dbfcc7: Improve text rendering and measurement.

* commit 'd9f9da396b41f394991f676bc74dcfc59c7070a8':
Improve text rendering and measurement.
56b86debcfaf8f661011702d31854bb3804f5fe1 10-Feb-2014 Deepanshu Gupta <deepanshu@google.com> am 1c91b1f7: am 45dbfcc7: Improve text rendering and measurement.

* commit '1c91b1f7a2da5e5b1996217228399ef958c2be0c':
Improve text rendering and measurement.
45dbfcc781a3926d22571b6ccfa3f27ec896f119 07-Jan-2014 Deepanshu Gupta <deepanshu@google.com> 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
ridge/src/android/graphics/BidiRenderer.java
6886e3ac185b4ee2d5e2cf054b4beb0d9c55b18f 06-Feb-2014 Deepanshu Gupta <deepanshu@google.com> 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
f7994e89e94d55998e63e9ebe74a8f10c05ccb3a 06-Feb-2014 Deepanshu Gupta <deepanshu@google.com> 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
a859670d0a135d9a33b57fcc450fafa09d9c5a7f 06-Feb-2014 Deepanshu Gupta <deepanshu@google.com> 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.
3a9d89e28885d5d92423b9d28a1a2430b65e1559 06-Feb-2014 Deepanshu Gupta <deepanshu@google.com> 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.
1c06469101464c147058c01bc25c9e4b3c1aa16b 06-Feb-2014 Deepanshu Gupta <deepanshu@google.com> 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.
7bd287b70a1c95c96663a6028e9809fd3844f55a 06-Feb-2014 Deepanshu Gupta <deepanshu@google.com> am ea2ec77f: am 3adb34ee: am 9fcfbfe2: am 3bf38b41: Merge "Add methods for Time_Delegate" into klp-dev

* commit 'ea2ec77f9538de2ea795d3e257f19e8cff659665':
Add methods for Time_Delegate
6a9cbd5a2d56782e94b870735df51d32314684d8 06-Feb-2014 Deepanshu Gupta <deepanshu@google.com> am a0023027: am 23de8dc2: am 28e049ef: am 0db6e6a5: Merge "Optimize layout rendering in layoutlib" into klp-dev

* commit 'a0023027e5b7245e2cef304d96826a7ae1c361aa':
Optimize layout rendering in layoutlib
f9021e48bedc9fda9bff4e33244e689fb06e8ecb 06-Feb-2014 Deepanshu Gupta <deepanshu@google.com> 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.
1bcc286def646f98747bce2c4dedb0737d5fcf9d 06-Feb-2014 Deepanshu Gupta <deepanshu@google.com> 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.
1bceb9823f7af258489c91fa201214805744fa4a 06-Feb-2014 Deepanshu Gupta <deepanshu@google.com> am 650d30c5: am b156c019: am d5129e75: am 8a892279: Fix a bug in Nine Patch library.

* commit '650d30c5ec3c0b345651a56c45eb334fabf51b17':
Fix a bug in Nine Patch library.
3adb34ee079504b5854d23bc7a38dafc0a985219 06-Feb-2014 Deepanshu Gupta <deepanshu@google.com> am 9fcfbfe2: am 3bf38b41: Merge "Add methods for Time_Delegate" into klp-dev

* commit '9fcfbfe296d7033ee031171f61b3a33044abee42':
Add methods for Time_Delegate
23de8dc2625d4aeb4dc9085c5865ed571f96261a 06-Feb-2014 Deepanshu Gupta <deepanshu@google.com> am 28e049ef: am 0db6e6a5: Merge "Optimize layout rendering in layoutlib" into klp-dev

* commit '28e049ef73f5d9301a198ac53535442b697b7ef4':
Optimize layout rendering in layoutlib
096e43590381b218cec88adeac4261427c19e139 06-Feb-2014 Deepanshu Gupta <deepanshu@google.com> 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.
5800b19a7a3422620cb28e2327a96bf824f5cc9c 06-Feb-2014 Deepanshu Gupta <deepanshu@google.com> am 50b0ce4e: am fd8cba3a: Merge "Fix the measurement of text bounds." into klp-dev

* commit '50b0ce4e8ed353ed841782aeb58963bc084f2e16':
Fix the measurement of text bounds.
b156c0197d052dd4be71ad2b858acc01f50ad49f 06-Feb-2014 Deepanshu Gupta <deepanshu@google.com> am d5129e75: am 8a892279: Fix a bug in Nine Patch library.

* commit 'd5129e75968030620a1372e39fcfbc17fe584e17':
Fix a bug in Nine Patch library.
3bf38b4165877274067a385cfe6472639a203a58 06-Feb-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Add methods for Time_Delegate" into klp-dev
0db6e6a567e25d560586863c7be654a0c1da5795 06-Feb-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Optimize layout rendering in layoutlib" into klp-dev
a955314d905f8567c852226ce4f74994826e8777 06-Feb-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Add missing files to fix libphonenumber for layoutlib." into klp-dev
fd8cba3ab83972eefc796fa122b0ec9222078b1c 06-Feb-2014 Deepanshu Gupta <deepanshu@google.com> Merge "Fix the measurement of text bounds." into klp-dev
8a892279bd1b212311f4200f306a317985463918 06-Feb-2014 Deepanshu Gupta <deepanshu@google.com> 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
ridge/src/android/graphics/NinePatch_Delegate.java
edc4664d60af1f124d05f0a2b6ba58b837630f51 01-Feb-2014 Alan Viverette <alanv@google.com> Fix broken build in BridgeResources

Change-Id: Iec58a2acda6b9538bcb5974d3d5c45ea6e53eac5
ridge/src/android/content/res/BridgeResources.java
eb3c5459eb893061779b102236a81069efdbef73 01-Feb-2014 Deepanshu Gupta <deepanshu@google.com> Add methods for Time_Delegate

Bug: http://b.android.com/65359
Change-Id: I7c2d09286d6bcd9899444aaa5a4a5a342e39d923
ridge/src/android/text/format/Time_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
54b100ceedfe29c3d8f389437c0abb91160923d0 31-Jan-2014 Narayan Kamath <narayan@google.com> am 98ac6c79: resolved conflicts for merge of cb7cdd50 to klp-modular-dev-plus-aosp

* commit '98ac6c79a430e62a886b3a8278694425b5906300':
Fix a few more delegate methods in layoutlib.
5cdbac1e44aa85ccfedd19eb1a7376fe84b1ca72 31-Jan-2014 Narayan Kamath <narayan@google.com> am 70986e19: am ab71f8b6: Merge "AArch64: Use of long for pointers in PropertyValuesHolder"

* commit '70986e197bbaf4de4f8126519a75df2b057c3b52':
AArch64: Use of long for pointers in PropertyValuesHolder
98ac6c79a430e62a886b3a8278694425b5906300 31-Jan-2014 Narayan Kamath <narayan@google.com> resolved conflicts for merge of cb7cdd50 to klp-modular-dev-plus-aosp

Change-Id: I2fc48fb4bd779042fc9bc00e6c8aca876d4a5f0b
ab71f8b68fee0f2a4f2049c4345b5334948c9df9 30-Jan-2014 Narayan Kamath <narayan@google.com> Merge "AArch64: Use of long for pointers in PropertyValuesHolder"
34b16b854ae8c78554a75b136a1df403c385f2e9 30-Jan-2014 Deepanshu Gupta <deepanshu@google.com> Fix build

Change-Id: Ifcbf44bc310daee4410ccc6ddf6bdc44565e20da
ridge/src/android/graphics/Path_Delegate.java
e05bb956ce429618fd4f971a9dc708b9313c59ea 29-Jan-2014 Deepanshu Gupta <deepanshu@google.com> Fix native method signatures

Some new methods have been added which are yet to be implemented.

Change-Id: Ie5a0657c7ccbe95200c270d5c15b516a385b083b
ridge/src/android/animation/PropertyValuesHolder_Delegate.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/ColorFilter_Delegate.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/libcore/icu/ICU_Delegate.java
bd28e2d9d3c2a7e80babd39471d5788843a48d4a 27-Jan-2014 Deepanshu Gupta <deepanshu@google.com> 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
ndroid.mk
ridge/src/android/graphics/BitmapFactory_Delegate.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
ridge/src/libcore/icu/DateIntervalFormat_Delegate.java
ridge/src/libcore/icu/ICU_Delegate.java
reate/src/com/android/tools/layoutlib/create/Main.java
40582000e078361d2e5995abdf25f923fa656e86 29-Jan-2014 Narayan Kamath <narayan@google.com> Fix a few more delegate methods in layoutlib.

Change-Id: Icd7069452b9ac66498af69ec705d12c3acd1c848
ridge/src/android/graphics/BitmapFactory_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Matrix_Delegate.java
fbb35fb39eb74c6fa7ba6804faeaccb80483be14 17-Jan-2014 Ashok Bhat <ashok.bhat@arm.com> 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
ridge/src/android/animation/PropertyValuesHolder_Delegate.java
0141e884344a5c267239079d615e1c9d9898a222 17-Jan-2014 Ashok Bhat <ashok.bhat@arm.com> 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>
ridge/src/android/animation/PropertyValuesHolder_Delegate.java
8773d51eae2a40d95adfe517476e9098eec14166 28-Jan-2014 Narayan Kamath <narayan@google.com> resolved conflicts for merge of b82b2f98 to klp-dev-plus-aosp

Change-Id: Ia110056e5fdd2387c207748b17c5c17d1a18ac5b
84151432e7ead6666eb8cf6377bff577b2027694 27-Jan-2014 Narayan Kamath <narayan@google.com> Track 64bit changes to android/graphics.

All pointers are now 64bits wide, so should be
represented as java longs and not ints.

Also changed DelegateManager and SparseWeakArray to
reflect the new world order.

(cherry picked from commit 88a8364c386c694f7ad56662ef89713dbf7c9d63)

Change-Id: Ic2f55dd6235751169c5014f9d2ccf3f544259a87
ridge/src/android/graphics/AvoidXfermode_Delegate.java
ridge/src/android/graphics/BitmapShader_Delegate.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/BlurMaskFilter_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/ColorFilter_Delegate.java
ridge/src/android/graphics/ColorMatrixColorFilter_Delegate.java
ridge/src/android/graphics/ComposePathEffect_Delegate.java
ridge/src/android/graphics/ComposeShader_Delegate.java
ridge/src/android/graphics/CornerPathEffect_Delegate.java
ridge/src/android/graphics/DashPathEffect_Delegate.java
ridge/src/android/graphics/DiscretePathEffect_Delegate.java
ridge/src/android/graphics/DrawFilter_Delegate.java
ridge/src/android/graphics/EmbossMaskFilter_Delegate.java
ridge/src/android/graphics/LayerRasterizer_Delegate.java
ridge/src/android/graphics/LightingColorFilter_Delegate.java
ridge/src/android/graphics/LinearGradient_Delegate.java
ridge/src/android/graphics/MaskFilter_Delegate.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/android/graphics/PaintFlagsDrawFilter_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/PathDashPathEffect_Delegate.java
ridge/src/android/graphics/PathEffect_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/android/graphics/PixelXorXfermode_Delegate.java
ridge/src/android/graphics/PorterDuffColorFilter_Delegate.java
ridge/src/android/graphics/PorterDuffXfermode_Delegate.java
ridge/src/android/graphics/RadialGradient_Delegate.java
ridge/src/android/graphics/Rasterizer_Delegate.java
ridge/src/android/graphics/Region_Delegate.java
ridge/src/android/graphics/Shader_Delegate.java
ridge/src/android/graphics/SumPathEffect_Delegate.java
ridge/src/android/graphics/SweepGradient_Delegate.java
ridge/src/android/graphics/Typeface_Delegate.java
ridge/src/android/graphics/Xfermode_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/DelegateManager.java
ridge/src/com/android/layoutlib/bridge/util/SparseWeakArray.java
88a8364c386c694f7ad56662ef89713dbf7c9d63 27-Jan-2014 Narayan Kamath <narayan@google.com> Track 64bit changes to android/graphics.

All pointers are now 64bits wide, so should be
represented as java longs and not ints.

Also changed DelegateManager and SparseWeakArray to
reflect the new world order.

Change-Id: Ic32b6b53818dbae9b949f03004c4fb6dae26cdbe
ridge/src/android/graphics/AvoidXfermode_Delegate.java
ridge/src/android/graphics/BitmapShader_Delegate.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/BlurMaskFilter_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/ColorFilter_Delegate.java
ridge/src/android/graphics/ColorMatrixColorFilter_Delegate.java
ridge/src/android/graphics/ComposePathEffect_Delegate.java
ridge/src/android/graphics/ComposeShader_Delegate.java
ridge/src/android/graphics/CornerPathEffect_Delegate.java
ridge/src/android/graphics/DashPathEffect_Delegate.java
ridge/src/android/graphics/DiscretePathEffect_Delegate.java
ridge/src/android/graphics/DrawFilter_Delegate.java
ridge/src/android/graphics/EmbossMaskFilter_Delegate.java
ridge/src/android/graphics/LayerRasterizer_Delegate.java
ridge/src/android/graphics/LightingColorFilter_Delegate.java
ridge/src/android/graphics/LinearGradient_Delegate.java
ridge/src/android/graphics/MaskFilter_Delegate.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/android/graphics/PaintFlagsDrawFilter_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/PathDashPathEffect_Delegate.java
ridge/src/android/graphics/PathEffect_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/android/graphics/PixelXorXfermode_Delegate.java
ridge/src/android/graphics/PorterDuffColorFilter_Delegate.java
ridge/src/android/graphics/PorterDuffXfermode_Delegate.java
ridge/src/android/graphics/RadialGradient_Delegate.java
ridge/src/android/graphics/Rasterizer_Delegate.java
ridge/src/android/graphics/Region_Delegate.java
ridge/src/android/graphics/Shader_Delegate.java
ridge/src/android/graphics/SumPathEffect_Delegate.java
ridge/src/android/graphics/SweepGradient_Delegate.java
ridge/src/android/graphics/Typeface_Delegate.java
ridge/src/android/graphics/Xfermode_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/DelegateManager.java
ridge/src/com/android/layoutlib/bridge/util/SparseWeakArray.java
ebcef6b896b3b1693862aad9c5000c450ba598a5 09-Jan-2014 Alan Viverette <alanv@google.com> Update BridgeInflater and delegate to support inheritContext arg

Change-Id: I06673f35cd4625301677f74f3e6d49669df7c271
ridge/src/android/view/BridgeInflater.java
ridge/src/android/view/LayoutInflater_Delegate.java
24dffd0b0beb58d900bf232448596064f3c7d483 13-Nov-2013 Craig Mautner <cmautner@google.com> Support API change.

From
https://googleplex-android-review.git.corp.google.com/#/c/387811/.

Change-Id: I3958a55c72b095c53b054c11c5653ba581881188
ridge/src/android/view/IWindowManagerImpl.java
d8df6b570f10cec486b2af708e9a393f3012317d 10-Nov-2013 Deepanshu Gupta <deepanshu@google.com> Fix text size in Fake Action Bar

Merge f4800bc from frameworks/base

Issue: 11436018
Change-Id: Id74c11037cb43d01f6cd79126623c84edfc37aaf
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
03a057c1af9ca3f125c7924bf0b78da52223d8d3 06-Nov-2013 Deepanshu Gupta <deepanshu@google.com> Manual merge of changes from frameworks/base/tools

Manually merge of following changes:
9cb5f5b5233f2331748d108d71f4b685762f32a7
1cf5df38f4bdafa1beb2674ca548ad6d9650766b
083e3caf66c21f7cc9511db479726c38d90e2d2f
81f74f4bc96ea4266cebe1b785d095558f540800
39e75835399f4d979cf82069dae2bd1ec496fb81
272d1bce798a5fef42cc2ee31f629d00c89f66eb
45f5cd49fa898a59484edfd8e291dbe10df82db2

Change-Id: Ie21ca480ac117e16e28eb554474835b762ccb104
ridge/resources/bars/hdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/hdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/mdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/mdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/status_bar.xml
ridge/resources/bars/xhdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/xhdpi/stat_sys_wifi_signal_4_fully.png
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/android/text/format/Time_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/view/WindowManagerImpl.java
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
ridge/src/libcore/icu/DateIntervalFormat_Delegate.java
ridge/src/libcore/icu/ICU_Delegate.java
reate/.classpath
reate/README.txt
reate/src/com/android/tools/layoutlib/create/AbstractClassAdapter.java
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/ICreateInfo.java
reate/src/com/android/tools/layoutlib/create/Main.java
reate/src/com/android/tools/layoutlib/create/RefactorClassAdapter.java
reate/src/com/android/tools/layoutlib/create/RenameClassAdapter.java
reate/src/com/android/tools/layoutlib/java/AutoCloseable.java
reate/src/com/android/tools/layoutlib/java/Charsets.java
reate/src/com/android/tools/layoutlib/java/IntegralToString.java
reate/src/com/android/tools/layoutlib/java/Objects.java
reate/src/com/android/tools/layoutlib/java/UnsafeByteSequence.java
reate/tests/com/android/tools/layoutlib/create/AsmAnalyzerTest.java
reate/tests/com/android/tools/layoutlib/create/AsmGeneratorTest.java
reate/tests/com/android/tools/layoutlib/create/RenameClassAdapterTest.java
reate/tests/com/android/tools/layoutlib/create/dataclass/JavaClass.java
reate/tests/data/mock_android.jar
reate/tests/data/mock_android.jardesc
reate/tests/mock_android/dummy/InnerTest.java
reate/tests/mock_android/view/View.java
reate/tests/mock_android/view/ViewGroup.java
reate/tests/mock_android/widget/LinearLayout.java
reate/tests/mock_android/widget/TableLayout.java
reate/tests/mock_data/java/lang/JavaClass.java
reate/tests/mock_data/mock_android/dummy/InnerTest.java
reate/tests/mock_data/mock_android/view/View.java
reate/tests/mock_data/mock_android/view/ViewGroup.java
reate/tests/mock_data/mock_android/widget/LinearLayout.java
reate/tests/mock_data/mock_android/widget/TableLayout.java
6fbaf6cfd8c85984c75ca2ef8c1dc8bde844bb07 21-Oct-2013 Satoshi Kataoka <satok@google.com> Update a test corresponding to I11ed9a767588f808

Change-Id: Ic802c075390f11fa4a5c14b8397a045b2dfec75c
ridge/src/com/android/layoutlib/bridge/android/BridgeIInputMethodManager.java
24e4f21e78ffb7a46db3e03add5df99da3f1c945 19-Oct-2013 Nick Kralevich <nnk@google.com> fix build.

In frameworks/base commit 1125235da15a5655e1fdf3b5f24df48dafccee90,
the IPowerManager interface was updated to add updateWakeLockUids,
but this file was not updated.

Fixed.

Change-Id: I8d5def02b7cadf5a154634bdff18cacb84b718f4
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
f314dc01210d117959ae2a303d0311cd071ee927 15-Oct-2013 Satoshi Kataoka <satok@google.com> Update tests corresponding to I0e920ee79c526c3ae

Bug: 11035379
Bug: 5137498

Change-Id: Ief2a151bd83b75bf5b07d53b190a61f341541a21
ridge/src/com/android/layoutlib/bridge/android/BridgeIInputMethodManager.java
47dcb469db6e81b733a3f2eaa6bc4396ebfb3fd0 08-Oct-2013 Alan Viverette <alanv@google.com> Manual merge of e4ccb864 from frameworks/base/tools to frameworks/tools

Change-Id: I4893e72caf3dfd68bd503fd8daeabc8550d770a2
ridge/src/android/view/IWindowManagerImpl.java
492d16434acaaf050f676b6767fbf020fd6ff772 04-Oct-2013 John Reck <jreck@google.com> Update layoutlib

Change-Id: Ifafe5a47fbef7ff0894e679d04d71942eb8d1237
ridge/src/android/view/IWindowManagerImpl.java
c363be85de7b6cd67762b0f7fb2392fe421c553e 03-Oct-2013 Marco Nelissen <marcone@google.com> Update fake powermanager to new interface

Change-Id: I6f14498d7002b4720293a1c77f4fbb66869c36fb
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
29e746211878d5204e983ef1fc2812d444052f63 02-Oct-2013 Jim Miller <jaggies@google.com> resolved conflicts for merge of fb2e3c8d to master

Change-Id: I159b529adae04a33a965ec0d43fc9a47e82b6417
ridge/src/android/view/IWindowManagerImpl.java
e98d2cb65c0915d5278c593d14ff4bdc778557f7 11-Sep-2013 Deepanshu Gupta <deepanshu@google.com> Fix ClassCastException when rendering ListView

Bug: b.android.com/59300
Change-Id: I1e73910cf42de1b02f11cc77f575af9492320a19
ridge/src/com/android/layoutlib/bridge/impl/binding/AdapterHelper.java
ridge/src/com/android/layoutlib/bridge/impl/binding/AdapterItem.java
ridge/src/com/android/layoutlib/bridge/impl/binding/BaseAdapter.java
ridge/src/com/android/layoutlib/bridge/impl/binding/FakeAdapter.java
ridge/src/com/android/layoutlib/bridge/impl/binding/FakeExpandableAdapter.java
8732bd893ae507346dad068a33edcc4beb99faed 12-Sep-2013 Kenny Root <kroot@google.com> Add new getOpPackageName for BridgeContext

Change-Id: Ib39b0bd2d1eb794ae4565e54251e4355fa139a14
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
6ee095ba7a6ca31f0e92c34482ce8d1a5db084b3 12-Sep-2013 Jonathan Dixon <joth@google.com> Merge 'Preparation for deleting WebViewClassic'

Originally from I4d6773a88ea2932982278127a3c96d38be54ddf5

- file has move to a different git project in master, so manually
re-applied the diff that landed in klp-dev

Change-Id: I813210bd6160ab71c7a4dff9c221db31d8cc305c
ridge/src/android/webkit/WebView.java
70f5cc1d5bb9c67781fa6e076e21547547301a3b 09-Sep-2013 Deepanshu Gupta <deepanshu@google.com> Add isPremultiplied option to Bitmap_Delegate in LayoutLib

Change-Id: I2398af48913682ec698389b695aa256204c8aa47
ridge/src/android/graphics/BitmapFactory_Delegate.java
ridge/src/android/graphics/Bitmap_Delegate.java
f6ee5fa3e2219e6c6ea56c4bdb7b5df528d336c4 09-Sep-2013 Narayan Kamath <narayan@google.com> Fix build, fallout from change 451f6b981a2cd

Change-Id: Id85d06221eccbda786721a05f3f6d9d94c1cbb74
ridge/src/com/android/layoutlib/bridge/android/BridgeContentProvider.java
19acfb8e873a04d42619d222c43eda95d259d0a5 05-Sep-2013 Deepanshu Gupta <deepanshu@google.com> Fix text rendering

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: Ib7b008b4ab5e689038678825289199aeb4bd815b
ridge/src/android/graphics/BidiRenderer.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/text/AndroidBidi_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/FontLoader.java
8930cb4f37ff0fbde65f7afd4bbe06ab77677f78 05-Sep-2013 Deepanshu Gupta <deepanshu@google.com> Fix layout rendering for RTL locales

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: Icbb57ee2ac7c6d8dfc34c2f04dce34d820b9b1ed
ridge/.classpath
ridge/Android.mk
ridge/resources/bars/ldrtl-hdpi/ic_sysbar_back.png
ridge/resources/bars/ldrtl-hdpi/ic_sysbar_recent.png
ridge/resources/bars/ldrtl-mdpi/ic_sysbar_back.png
ridge/resources/bars/ldrtl-mdpi/ic_sysbar_recent.png
ridge/resources/bars/ldrtl-xhdpi/ic_sysbar_back.png
ridge/resources/bars/ldrtl-xhdpi/ic_sysbar_recent.png
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/NavigationBar.java
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
282e181b58cf72b6ca770dc7ca5f91f135444502 24-Jan-2014 Adam Lesinski <adamlesinski@google.com> Revert "Move frameworks/base/tools/ to frameworks/tools/"

This reverts commit 9f6a119c8aa276432ece4fe2118bd8a3c9b1067e.
gitignore
ndroid.mk
EADME
ridge/.classpath
ridge/.project
ridge/.settings/README.txt
ridge/.settings/org.eclipse.jdt.core.prefs
ridge/Android.mk
ridge/resources/bars/action_bar.xml
ridge/resources/bars/hdpi/ic_sysbar_back.png
ridge/resources/bars/hdpi/ic_sysbar_home.png
ridge/resources/bars/hdpi/ic_sysbar_recent.png
ridge/resources/bars/hdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/hdpi/status_bar_background.9.png
ridge/resources/bars/mdpi/ic_sysbar_back.png
ridge/resources/bars/mdpi/ic_sysbar_home.png
ridge/resources/bars/mdpi/ic_sysbar_recent.png
ridge/resources/bars/mdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/mdpi/status_bar_background.9.png
ridge/resources/bars/navigation_bar.xml
ridge/resources/bars/status_bar.xml
ridge/resources/bars/title_bar.xml
ridge/resources/bars/xhdpi/ic_sysbar_back.png
ridge/resources/bars/xhdpi/ic_sysbar_home.png
ridge/resources/bars/xhdpi/ic_sysbar_recent.png
ridge/src/android/animation/AnimationThread.java
ridge/src/android/animation/PropertyValuesHolder_Delegate.java
ridge/src/android/app/Fragment_Delegate.java
ridge/src/android/content/res/BridgeAssetManager.java
ridge/src/android/content/res/BridgeResources.java
ridge/src/android/content/res/BridgeTypedArray.java
ridge/src/android/content/res/Resources_Theme_Delegate.java
ridge/src/android/content/res/TypedArray_Delegate.java
ridge/src/android/graphics/AvoidXfermode_Delegate.java
ridge/src/android/graphics/BitmapFactory_Delegate.java
ridge/src/android/graphics/BitmapShader_Delegate.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/BlurMaskFilter_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/ColorFilter_Delegate.java
ridge/src/android/graphics/ColorMatrixColorFilter_Delegate.java
ridge/src/android/graphics/ComposePathEffect_Delegate.java
ridge/src/android/graphics/ComposeShader_Delegate.java
ridge/src/android/graphics/CornerPathEffect_Delegate.java
ridge/src/android/graphics/DashPathEffect_Delegate.java
ridge/src/android/graphics/DiscretePathEffect_Delegate.java
ridge/src/android/graphics/DrawFilter_Delegate.java
ridge/src/android/graphics/EmbossMaskFilter_Delegate.java
ridge/src/android/graphics/Gradient_Delegate.java
ridge/src/android/graphics/LayerRasterizer_Delegate.java
ridge/src/android/graphics/LightingColorFilter_Delegate.java
ridge/src/android/graphics/LinearGradient_Delegate.java
ridge/src/android/graphics/MaskFilter_Delegate.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/android/graphics/PaintFlagsDrawFilter_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/PathDashPathEffect_Delegate.java
ridge/src/android/graphics/PathEffect_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/android/graphics/PixelXorXfermode_Delegate.java
ridge/src/android/graphics/PorterDuffColorFilter_Delegate.java
ridge/src/android/graphics/PorterDuffXfermode_Delegate.java
ridge/src/android/graphics/RadialGradient_Delegate.java
ridge/src/android/graphics/Rasterizer_Delegate.java
ridge/src/android/graphics/Region_Delegate.java
ridge/src/android/graphics/Shader_Delegate.java
ridge/src/android/graphics/SumPathEffect_Delegate.java
ridge/src/android/graphics/SweepGradient_Delegate.java
ridge/src/android/graphics/Typeface_Accessor.java
ridge/src/android/graphics/Typeface_Delegate.java
ridge/src/android/graphics/Xfermode_Delegate.java
ridge/src/android/os/Build_Delegate.java
ridge/src/android/os/HandlerThread_Delegate.java
ridge/src/android/os/Handler_Delegate.java
ridge/src/android/os/Looper_Accessor.java
ridge/src/android/os/ServiceManager.java
ridge/src/android/os/SystemClock_Delegate.java
ridge/src/android/text/AndroidBidi_Delegate.java
ridge/src/android/text/format/DateFormat_Delegate.java
ridge/src/android/util/BridgeXmlPullAttributes.java
ridge/src/android/util/FloatMath_Delegate.java
ridge/src/android/util/Log_Delegate.java
ridge/src/android/util/LruCache.java
ridge/src/android/view/AttachInfo_Accessor.java
ridge/src/android/view/BridgeInflater.java
ridge/src/android/view/Choreographer_Delegate.java
ridge/src/android/view/Display_Delegate.java
ridge/src/android/view/IWindowManagerImpl.java
ridge/src/android/view/LayoutInflater_Delegate.java
ridge/src/android/view/SurfaceView.java
ridge/src/android/view/ViewConfiguration_Accessor.java
ridge/src/android/view/ViewRootImpl_Delegate.java
ridge/src/android/view/View_Delegate.java
ridge/src/android/view/WindowManagerGlobal_Delegate.java
ridge/src/android/view/accessibility/AccessibilityManager.java
ridge/src/android/view/inputmethod/InputMethodManager_Accessor.java
ridge/src/android/view/inputmethod/InputMethodManager_Delegate.java
ridge/src/android/webkit/WebView.java
ridge/src/com/android/internal/policy/PolicyManager.java
ridge/src/com/android/internal/textservice/ITextServicesManager_Stub_Delegate.java
ridge/src/com/android/internal/util/XmlUtils_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeConstants.java
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/MockView.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContentProvider.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContentResolver.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeIInputMethodManager.java
ridge/src/com/android/layoutlib/bridge/android/BridgeLayoutParamsMapAttributes.java
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
ridge/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParser.java
ridge/src/com/android/layoutlib/bridge/android/view/WindowManagerImpl.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/FakeActionBar.java
ridge/src/com/android/layoutlib/bridge/bars/NavigationBar.java
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
ridge/src/com/android/layoutlib/bridge/bars/TitleBar.java
ridge/src/com/android/layoutlib/bridge/impl/DelegateManager.java
ridge/src/com/android/layoutlib/bridge/impl/FontLoader.java
ridge/src/com/android/layoutlib/bridge/impl/GcSnapshot.java
ridge/src/com/android/layoutlib/bridge/impl/ParserFactory.java
ridge/src/com/android/layoutlib/bridge/impl/PlayAnimationThread.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
ridge/src/com/android/layoutlib/bridge/impl/RenderDrawable.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
ridge/src/com/android/layoutlib/bridge/impl/Stack.java
ridge/src/com/android/layoutlib/bridge/impl/binding/BaseAdapter.java
ridge/src/com/android/layoutlib/bridge/impl/binding/FakeAdapter.java
ridge/src/com/android/layoutlib/bridge/impl/binding/FakeExpandableAdapter.java
ridge/src/com/android/layoutlib/bridge/util/Debug.java
ridge/src/com/android/layoutlib/bridge/util/DynamicIdMap.java
ridge/src/com/android/layoutlib/bridge/util/SparseWeakArray.java
ridge/src/com/google/android/maps/MapView.java
ridge/src/libcore/icu/ICU_Delegate.java
ridge/tests/.classpath
ridge/tests/.project
ridge/tests/Android.mk
ridge/tests/res/com/android/layoutlib/testdata/layout1.xml
ridge/tests/src/android/graphics/Matrix_DelegateTest.java
ridge/tests/src/com/android/layoutlib/bridge/TestDelegates.java
ridge/tests/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParserTest.java
reate/.classpath
reate/.project
reate/.settings/README.txt
reate/.settings/org.eclipse.jdt.core.prefs
reate/Android.mk
reate/README.txt
reate/manifest.txt
reate/src/com/android/tools/layoutlib/annotations/LayoutlibDelegate.java
reate/src/com/android/tools/layoutlib/annotations/Nullable.java
reate/src/com/android/tools/layoutlib/annotations/VisibleForTesting.java
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/ClassHasNativeVisitor.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/DelegateClassAdapter.java
reate/src/com/android/tools/layoutlib/create/DelegateMethodAdapter2.java
reate/src/com/android/tools/layoutlib/create/DependencyFinder.java
reate/src/com/android/tools/layoutlib/create/ICreateInfo.java
reate/src/com/android/tools/layoutlib/create/Log.java
reate/src/com/android/tools/layoutlib/create/LogAbortException.java
reate/src/com/android/tools/layoutlib/create/Main.java
reate/src/com/android/tools/layoutlib/create/MethodAdapter.java
reate/src/com/android/tools/layoutlib/create/MethodListener.java
reate/src/com/android/tools/layoutlib/create/OverrideMethod.java
reate/src/com/android/tools/layoutlib/create/RenameClassAdapter.java
reate/src/com/android/tools/layoutlib/create/StubMethodAdapter.java
reate/src/com/android/tools/layoutlib/create/TransformClassAdapter.java
reate/tests/com/android/tools/layoutlib/create/AsmAnalyzerTest.java
reate/tests/com/android/tools/layoutlib/create/AsmGeneratorTest.java
reate/tests/com/android/tools/layoutlib/create/ClassHasNativeVisitorTest.java
reate/tests/com/android/tools/layoutlib/create/DelegateClassAdapterTest.java
reate/tests/com/android/tools/layoutlib/create/LogTest.java
reate/tests/com/android/tools/layoutlib/create/MockLog.java
reate/tests/com/android/tools/layoutlib/create/RenameClassAdapterTest.java
reate/tests/com/android/tools/layoutlib/create/dataclass/ClassWithNative.java
reate/tests/com/android/tools/layoutlib/create/dataclass/ClassWithNative_Delegate.java
reate/tests/com/android/tools/layoutlib/create/dataclass/OuterClass.java
reate/tests/com/android/tools/layoutlib/create/dataclass/OuterClass_Delegate.java
reate/tests/com/android/tools/layoutlib/create/dataclass/OuterClass_InnerClass_Delegate.java
reate/tests/data/mock_android.jar
reate/tests/data/mock_android.jardesc
reate/tests/mock_android/dummy/InnerTest.java
reate/tests/mock_android/view/View.java
reate/tests/mock_android/view/ViewGroup.java
reate/tests/mock_android/widget/LinearLayout.java
reate/tests/mock_android/widget/TableLayout.java
35d56c0d67537e56fafebd8edf790026644fe8de 21-Jan-2014 Deepanshu Gupta <deepanshu@google.com> Optimize layout rendering in layoutlib

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
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
58037a4404e639d28695a0f1c17053b53b96b970 16-Jan-2014 Deepanshu Gupta <deepanshu@google.com> Add missing files to fix libphonenumber for layoutlib.

Change-Id: I8102da6c1c4625e887293a8823770d199521c53f
ndroid.mk
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/Main.java
reate/tests/com/android/tools/layoutlib/create/AsmAnalyzerTest.java
reate/tests/com/android/tools/layoutlib/create/AsmGeneratorTest.java
reate/tests/data/mock_android.jar
reate/tests/mock_data/mock_android/data/anotherDataFile
reate/tests/mock_data/mock_android/data/dataFile
5ad7c183f39df43562c69aba21ea422ad69bdae0 07-Jan-2014 Deepanshu Gupta <deepanshu@google.com> Fix the measurement of text bounds.

Bug: 12366230
Change-Id: I203b678363dc7b688c744503ee10216baca658a9
ridge/src/android/graphics/BidiRenderer.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
24541255c312ee34f9bf17eb5852cdffd4807065 26-Nov-2013 Deepanshu Gupta <deepanshu@google.com> Update delegate methods in layoutlib.

Change-Id: I1f0fc274b6a74dbcf0ed46175c4a2fa4c2dd9a63
ridge/src/android/graphics/BitmapFactory_Delegate.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/libcore/icu/DateIntervalFormat_Delegate.java
0baec410c29206dc72d9f5afba5d45827e62c00c 13-Nov-2013 Deepanshu Gupta <deepanshu@google.com> Update ICU_Delegate methods. DO NOT MERGE

Bug: 11435966
Change-Id: Ib8ed2011fe62b2496795075b33b9ca7d5907b87a
ridge/src/libcore/icu/ICU_Delegate.java
1f92d7fc0ffa72d7db93244c29a1a6575bb4b318 13-Nov-2013 Deepanshu Gupta <deepanshu@google.com> Add libphonenumber to layoutlib.jar. DO NOT MERGE

Issue: http://b.android.com/59497
Change-Id: Ief11e602703b6041db66241f1699cc1de72e65a5
ndroid.mk
reate/src/com/android/tools/layoutlib/create/Main.java
d0581d271e814670d81a6550aa7b1e86864d5710 12-Nov-2013 Deepanshu Gupta <deepanshu@google.com> Fix NPE in layoutlib. DO NOT MERGE

Change-Id: I36623304d83b344ea078044001577b8005a63c02
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
78cfdf31b7c48589ea3a148ec1d6d573235bc06b 11-Nov-2013 Deepanshu Gupta <deepanshu@google.com> Update changed delegate method in Bitmap_Delegate. DO NOT MERGE

Issue: https://code.google.com/p/android/issues/detail?id=60167
Change-Id: I3e1d6b9d52ca899889ba758b0ea91bd742cf5005
ridge/src/android/graphics/Bitmap_Delegate.java
5d9f547720e07a2715d34320a9e11004654cede6 12-Nov-2013 Craig Mautner <cmautner@google.com> Relayout windows that handle their own config change.

If a window claims to handle its own configuration change then we
won't destroy and recreate its window on a configuration change.
Normally that recreation triggers the first layout following
orientation change because mHaveFrame is false. Windows that handle
their own configuration changes never got a relayout pass following a
change in orientation.

This change passes the configuration changes that an application
handles into the AppWindowToken. If the app says it handles
orientation or screen size changes then a relayout will occur when the
configuration has changed.

Fixes bug 11647107.

Change-Id: Ie8d49fd050442ebbdcf0b805087894e3a2fc4be9
ridge/src/android/view/IWindowManagerImpl.java
f4800bc3b122828d61a34caecbf782eee170ae59 08-Nov-2013 Deepanshu Gupta <deepanshu@google.com> Fix text size in Fake Action Bar

The density multiplier was being applied twice to the title text in
the fake action bar.

Bug: 11436018
Change-Id: Id74c11037cb43d01f6cd79126623c84edfc37aaf
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
738ffdc9da55db3127146df1b3fcb15b5163a335 16-Oct-2013 Marco Nelissen <marcone@google.com> Add a method to set a list of uids for a wake lock

Cherrypicked from master.

b/9464621

Change-Id: Ia6a9d36d55129ae87d3ec070fbf10dc02f4b6cb4
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
45f5cd49fa898a59484edfd8e291dbe10df82db2 18-Oct-2013 Deepanshu Gupta <deepanshu@google.com> Layoutlib Create: Remove references to java package class Objects.

Remove references to Java 7 class java.util.Objects and replace it with
a new class that can be loaded on Java 6.

Change-Id: Ibbd9b20b8bc89e247f1d0c48d743d06d1a4f0704
reate/README.txt
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/java/Objects.java
6c3a638dd852634097447ca7fea9210539529110 18-Oct-2013 Deepanshu Gupta <deepanshu@google.com> Merge "Fix layoutlib for KK" into klp-dev
272d1bce798a5fef42cc2ee31f629d00c89f66eb 17-Oct-2013 Deepanshu Gupta <deepanshu@google.com> Layoutlib: Add DateIntervalFormat_Delegate required by CalendarView

Change-Id: Ica79267a4eb231db833cb0232cfacf419fe73de3
ridge/src/libcore/icu/DateIntervalFormat_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
4fc655dd03acdf2251084568e7e5b8556f425912 17-Oct-2013 Deepanshu Gupta <deepanshu@google.com> am 873c76d0: am fb1ee08c: am a49c3585: Merge "Fix CalendarView to show the right month and year label." into jb-mr2-dev

* commit '873c76d0475def6f89fe02458828a549a7a7b5a2':
Fix CalendarView to show the right month and year label.
38d097b6d1102760cf25eee3d39cb687b8f7cf80 17-Oct-2013 Deepanshu Gupta <deepanshu@google.com> am 92a80b18: am 9b827a7d: am ec555902: Merge "Layoutlib: Update the wifi icon in the status bar." into jb-mr2-dev

* commit '92a80b1830082d109be4902c357424535305130d':
Layoutlib: Update the wifi icon in the status bar.
ca429e08fea319fa1baf527a6f12619be53afe34 17-Oct-2013 Deepanshu Gupta <deepanshu@google.com> am 9568ad39: am 94e5ada7: am 81f74f4b: Fix DatePicker and Calendar widget in layoutlib.

* commit '9568ad393194cbd42866e64dada88207b44462a6':
Fix DatePicker and Calendar widget in layoutlib.
198537c22cd88d837195c25d14c6220ca27b24f2 17-Oct-2013 Deepanshu Gupta <deepanshu@google.com> am 7dc35060: am df076962: am 1cf5df38: Layoutlib Create: Remove references to non-std Java classes.

* commit '7dc35060a828c473dcc75d13d31edaa75768a40f':
Layoutlib Create: Remove references to non-std Java classes.
a49c3585762ab7543d1f2445a7460d26ccb51538 17-Oct-2013 Deepanshu Gupta <deepanshu@google.com> Merge "Fix CalendarView to show the right month and year label." into jb-mr2-dev
ec555902169b9c64163abddf079a6a81f6fcafb4 17-Oct-2013 Deepanshu Gupta <deepanshu@google.com> Merge "Layoutlib: Update the wifi icon in the status bar." into jb-mr2-dev
39e75835399f4d979cf82069dae2bd1ec496fb81 17-Oct-2013 Deepanshu Gupta <deepanshu@google.com> Fix layoutlib for KK

Fix a NPE, update the native methods for NinePatch and update an ICU
method to return the right value as required by DatePicker widget.

Bug: 11140701
Change-Id: Id92fc5359acf6dde1bcdbc781aaf637fdb6eecbf
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/view/WindowManagerImpl.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
ridge/src/libcore/icu/ICU_Delegate.java
81f74f4bc96ea4266cebe1b785d095558f540800 13-Oct-2013 Deepanshu Gupta <deepanshu@google.com> Fix DatePicker and Calendar widget in layoutlib.

Issue: https://code.google.com/p/android/issues/detail?id=59732
Change-Id: I281b3fdad88c591281a3645592c84f3e2cb61d09
ridge/src/libcore/icu/ICU_Delegate.java
083e3caf66c21f7cc9511db479726c38d90e2d2f 15-Oct-2013 Deepanshu Gupta <deepanshu@google.com> Fix CalendarView to show the right month and year label.

Change-Id: I95431f1054678d4192bd1621c1f69b29268f55e9
ridge/src/android/text/format/Time_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
1cf5df38f4bdafa1beb2674ca548ad6d9650766b 11-Sep-2013 Deepanshu Gupta <deepanshu@google.com> Layoutlib Create: Remove references to non-std Java classes.

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.

Change-Id: Iac5b272652e2780c9bb72d19f415d150948ca589
reate/.classpath
reate/README.txt
reate/src/com/android/tools/layoutlib/create/AbstractClassAdapter.java
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/ICreateInfo.java
reate/src/com/android/tools/layoutlib/create/Main.java
reate/src/com/android/tools/layoutlib/create/RefactorClassAdapter.java
reate/src/com/android/tools/layoutlib/create/RenameClassAdapter.java
reate/src/com/android/tools/layoutlib/java/AutoCloseable.java
reate/src/com/android/tools/layoutlib/java/Charsets.java
reate/src/com/android/tools/layoutlib/java/IntegralToString.java
reate/src/com/android/tools/layoutlib/java/UnsafeByteSequence.java
reate/tests/com/android/tools/layoutlib/create/AsmAnalyzerTest.java
reate/tests/com/android/tools/layoutlib/create/AsmGeneratorTest.java
reate/tests/com/android/tools/layoutlib/create/RenameClassAdapterTest.java
reate/tests/com/android/tools/layoutlib/create/dataclass/JavaClass.java
reate/tests/data/mock_android.jar
reate/tests/data/mock_android.jardesc
reate/tests/mock_android/dummy/InnerTest.java
reate/tests/mock_android/view/View.java
reate/tests/mock_android/view/ViewGroup.java
reate/tests/mock_android/widget/LinearLayout.java
reate/tests/mock_android/widget/TableLayout.java
reate/tests/mock_data/java/lang/JavaClass.java
reate/tests/mock_data/mock_android/dummy/InnerTest.java
reate/tests/mock_data/mock_android/view/View.java
reate/tests/mock_data/mock_android/view/ViewGroup.java
reate/tests/mock_data/mock_android/widget/LinearLayout.java
reate/tests/mock_data/mock_android/widget/TableLayout.java
9cb5f5b5233f2331748d108d71f4b685762f32a7 13-Oct-2013 Deepanshu Gupta <deepanshu@google.com> Layoutlib: Update the wifi icon in the status bar.

Issue: https://code.google.com/p/android/issues/detail?id=60993

Change-Id: Ia43ed40b42c79f67dcd5809b827d4fecbc823c25
ridge/resources/bars/hdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/hdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/mdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/mdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/status_bar.xml
ridge/resources/bars/xhdpi/stat_sys_battery_charge_anim100.png
ridge/resources/bars/xhdpi/stat_sys_wifi_signal_4_fully.png
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
5a0f4eccfb1e1774c4aac825bf39bcc4f5fc00e0 08-Oct-2013 Alan Viverette <alanv@google.com> Ignore certain WindowManager flags when touch exploration is enabled

Specifically, ignore any flags that alter the visibility of the navigation
bar and transparency.

BUG: 11082573
Change-Id: I17264dc55a1c6c3cb9b9cf92d5121799cecee5b8
ridge/src/android/view/IWindowManagerImpl.java
fb45a2e9cde403c4bb7ac62195795bcfad4b8da6 03-Oct-2013 Marco Nelissen <marcone@google.com> Merge "Fix layoutlib build" into klp-dev
7e6f2ee4d22bc40c5aa1f01a6bacb91a34cab3c0 03-Oct-2013 Marco Nelissen <marcone@google.com> Fix layoutlib build

Change-Id: Ica9f506ae06311d9bcd98bc11e64a8699d4f88cb
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
5623d5f80f8031b9b67247b086723da08c383fa8 03-Oct-2013 John Reck <jreck@google.com> Update liblayout

Fix build

Change-Id: I6c9223205874f7709fcf9e69a7779c54f52ba48b
ridge/src/android/view/IWindowManagerImpl.java
6c9df5054a25f179ea7359a1a5e59e7d5d8da122 20-Sep-2013 Jim Miller <jaggies@google.com> Fix permissions on WindowManagerService.showAssistant()

Since binder call permissions are not transitive by design,
the proper way to fix this is to have the call talk directly
to keyguard from the navigation bar.

Fixes bug 9409008

Change-Id: Ibd90a79bb638c969b514455a2ad93c6ff668222d
ridge/src/android/view/IWindowManagerImpl.java
79a1a7c367214e86d1ea18fe07bc4d2d5bc00f76 14-Sep-2013 Deepanshu Gupta <deepanshu@google.com> am 31207780: am 0ecfe381: am 54d88f76: Fix ClassCastException when rendering ListView

* commit '31207780338b97e396927701ca0da7a61d6d44b2':
Fix ClassCastException when rendering ListView
caee47f096403068f02c41a91f8dad1aa5d13169 11-Sep-2013 Jonathan Dixon <joth@google.com> Merge "Preparation for deleting WebViewClassic" into klp-dev
95d785346b4dae808a2d8f77356175e55a572d96 11-Sep-2013 Dianne Hackborn <hackbod@google.com> Fix issue #10688644: Java crash in com.android.phone:

java.lang.SecurityException: Operation not allowed

There was a situation I wasn't taking into account -- components
declared by the system has a special ability to run in the processes
of other uids. This means that if that code loaded into another
process tries to do anything needing an app op verification, it will
fail, because it will say it is calling as the system package name but
it is not actually coming from the system uid.

To fix this, we add a new Context.getOpPackageName() to go along-side
getBasePackageName(). This is a special call for use by all app ops
verification, which will be initialized with either the base package
name, the actual package name, or now the default package name of the
process if we are creating a context for system code being loaded into
a non-system process.

I had to update all of the code doing app ops checks to switch to this
method to get the calling package name.

Also improve the security exception throw to have a more descriptive
error message.

Change-Id: Ic04f77b3938585b02fccabbc12d2f0dc62b9ef25
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
54d88f7678387a6eb871ec2dccd36af4ff35b1fe 11-Sep-2013 Deepanshu Gupta <deepanshu@google.com> Fix ClassCastException when rendering ListView

Bug: b.android.com/59300
Change-Id: Ia350adb3308daa8170bff755302760790163c811
ridge/src/com/android/layoutlib/bridge/impl/binding/AdapterHelper.java
ridge/src/com/android/layoutlib/bridge/impl/binding/AdapterItem.java
ridge/src/com/android/layoutlib/bridge/impl/binding/BaseAdapter.java
ridge/src/com/android/layoutlib/bridge/impl/binding/FakeAdapter.java
ridge/src/com/android/layoutlib/bridge/impl/binding/FakeExpandableAdapter.java
a71275401143bc259fd5804ab6852fc3265d88b7 09-Sep-2013 Deepanshu Gupta <deepanshu@google.com> Merge "Add isPremultiplied option to Bitmap_Delegate in LayoutLib" into klp-dev
01f8c0e27756599b2395514e27bd3b238326f220 08-Sep-2013 Dianne Hackborn <hackbod@google.com> Fix build.

Change-Id: Ifeac5d09a654ee1183ae26519c8b44f560afd636
ridge/src/com/android/layoutlib/bridge/android/BridgeContentProvider.java
0851945a72e10e1d31aafa459f7e69cdf7087bee 05-Sep-2013 Deepanshu Gupta <deepanshu@google.com> am b50de495: am dd4efc22: am 3a762d8b: Merge "Fix text rendering" into jb-mr2-dev

* commit 'b50de4951aaea6d6f01432dc17b7c5de778a2e71':
Fix text rendering
b654556213513885ff5be05d4d2808e34d50233e 05-Sep-2013 Deepanshu Gupta <deepanshu@google.com> am 97c88368: am c78d173b: am 68411471: Merge "Fix layout rendering for RTL locales" into jb-mr2-dev

* commit '97c88368e0036665507c8cd84c71d26953784c85':
Fix layout rendering for RTL locales
0d9c922c9614147d1277cb36cfb7296774415d15 12-Jul-2013 Deepanshu Gupta <deepanshu@google.com> Fix text rendering

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
ridge/src/android/graphics/BidiRenderer.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/text/AndroidBidi_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/FontLoader.java
490efa8bc4360e7dea3fe247f4fe434dd77763d7 04-Sep-2013 Deepanshu Gupta <deepanshu@google.com> Add isPremultiplied option to Bitmap_Delegate in LayoutLib

Change-Id: Id06921d8db2fe898fdc60ef9d05d05f8dfe3f94a
ridge/src/android/graphics/BitmapFactory_Delegate.java
ridge/src/android/graphics/Bitmap_Delegate.java
88db0ee2afbae38b53a0527506f0890914a7f115 20-Jun-2013 Deepanshu Gupta <deepanshu@google.com> Fix layout rendering for RTL locales

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
ridge/.classpath
ridge/Android.mk
ridge/resources/bars/ldrtl-hdpi/ic_sysbar_back.png
ridge/resources/bars/ldrtl-hdpi/ic_sysbar_recent.png
ridge/resources/bars/ldrtl-mdpi/ic_sysbar_back.png
ridge/resources/bars/ldrtl-mdpi/ic_sysbar_recent.png
ridge/resources/bars/ldrtl-xhdpi/ic_sysbar_back.png
ridge/resources/bars/ldrtl-xhdpi/ic_sysbar_recent.png
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/NavigationBar.java
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
9f6a119c8aa276432ece4fe2118bd8a3c9b1067e 28-Aug-2013 Mike Lockwood <lockwood@google.com> Move frameworks/base/tools/ to frameworks/tools/

Change-Id: I3ffafdab27cc4aca256c3a5806b630795b75d5c8
gitignore
ndroid.mk
EADME
ridge/.classpath
ridge/.project
ridge/.settings/README.txt
ridge/.settings/org.eclipse.jdt.core.prefs
ridge/Android.mk
ridge/resources/bars/action_bar.xml
ridge/resources/bars/hdpi/ic_sysbar_back.png
ridge/resources/bars/hdpi/ic_sysbar_home.png
ridge/resources/bars/hdpi/ic_sysbar_recent.png
ridge/resources/bars/hdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/hdpi/status_bar_background.9.png
ridge/resources/bars/mdpi/ic_sysbar_back.png
ridge/resources/bars/mdpi/ic_sysbar_home.png
ridge/resources/bars/mdpi/ic_sysbar_recent.png
ridge/resources/bars/mdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/mdpi/status_bar_background.9.png
ridge/resources/bars/navigation_bar.xml
ridge/resources/bars/status_bar.xml
ridge/resources/bars/title_bar.xml
ridge/resources/bars/xhdpi/ic_sysbar_back.png
ridge/resources/bars/xhdpi/ic_sysbar_home.png
ridge/resources/bars/xhdpi/ic_sysbar_recent.png
ridge/src/android/animation/AnimationThread.java
ridge/src/android/animation/PropertyValuesHolder_Delegate.java
ridge/src/android/app/Fragment_Delegate.java
ridge/src/android/content/res/BridgeAssetManager.java
ridge/src/android/content/res/BridgeResources.java
ridge/src/android/content/res/BridgeTypedArray.java
ridge/src/android/content/res/Resources_Theme_Delegate.java
ridge/src/android/content/res/TypedArray_Delegate.java
ridge/src/android/graphics/AvoidXfermode_Delegate.java
ridge/src/android/graphics/BitmapFactory_Delegate.java
ridge/src/android/graphics/BitmapShader_Delegate.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/BlurMaskFilter_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/ColorFilter_Delegate.java
ridge/src/android/graphics/ColorMatrixColorFilter_Delegate.java
ridge/src/android/graphics/ComposePathEffect_Delegate.java
ridge/src/android/graphics/ComposeShader_Delegate.java
ridge/src/android/graphics/CornerPathEffect_Delegate.java
ridge/src/android/graphics/DashPathEffect_Delegate.java
ridge/src/android/graphics/DiscretePathEffect_Delegate.java
ridge/src/android/graphics/DrawFilter_Delegate.java
ridge/src/android/graphics/EmbossMaskFilter_Delegate.java
ridge/src/android/graphics/Gradient_Delegate.java
ridge/src/android/graphics/LayerRasterizer_Delegate.java
ridge/src/android/graphics/LightingColorFilter_Delegate.java
ridge/src/android/graphics/LinearGradient_Delegate.java
ridge/src/android/graphics/MaskFilter_Delegate.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/android/graphics/PaintFlagsDrawFilter_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/PathDashPathEffect_Delegate.java
ridge/src/android/graphics/PathEffect_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/android/graphics/PixelXorXfermode_Delegate.java
ridge/src/android/graphics/PorterDuffColorFilter_Delegate.java
ridge/src/android/graphics/PorterDuffXfermode_Delegate.java
ridge/src/android/graphics/RadialGradient_Delegate.java
ridge/src/android/graphics/Rasterizer_Delegate.java
ridge/src/android/graphics/Region_Delegate.java
ridge/src/android/graphics/Shader_Delegate.java
ridge/src/android/graphics/SumPathEffect_Delegate.java
ridge/src/android/graphics/SweepGradient_Delegate.java
ridge/src/android/graphics/Typeface_Accessor.java
ridge/src/android/graphics/Typeface_Delegate.java
ridge/src/android/graphics/Xfermode_Delegate.java
ridge/src/android/os/Build_Delegate.java
ridge/src/android/os/HandlerThread_Delegate.java
ridge/src/android/os/Handler_Delegate.java
ridge/src/android/os/Looper_Accessor.java
ridge/src/android/os/ServiceManager.java
ridge/src/android/os/SystemClock_Delegate.java
ridge/src/android/text/AndroidBidi_Delegate.java
ridge/src/android/text/format/DateFormat_Delegate.java
ridge/src/android/util/BridgeXmlPullAttributes.java
ridge/src/android/util/FloatMath_Delegate.java
ridge/src/android/util/Log_Delegate.java
ridge/src/android/util/LruCache.java
ridge/src/android/view/AttachInfo_Accessor.java
ridge/src/android/view/BridgeInflater.java
ridge/src/android/view/Choreographer_Delegate.java
ridge/src/android/view/Display_Delegate.java
ridge/src/android/view/IWindowManagerImpl.java
ridge/src/android/view/LayoutInflater_Delegate.java
ridge/src/android/view/SurfaceView.java
ridge/src/android/view/ViewConfiguration_Accessor.java
ridge/src/android/view/ViewRootImpl_Delegate.java
ridge/src/android/view/View_Delegate.java
ridge/src/android/view/WindowManagerGlobal_Delegate.java
ridge/src/android/view/accessibility/AccessibilityManager.java
ridge/src/android/view/inputmethod/InputMethodManager_Accessor.java
ridge/src/android/view/inputmethod/InputMethodManager_Delegate.java
ridge/src/android/webkit/WebView.java
ridge/src/com/android/internal/policy/PolicyManager.java
ridge/src/com/android/internal/textservice/ITextServicesManager_Stub_Delegate.java
ridge/src/com/android/internal/util/XmlUtils_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeConstants.java
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/MockView.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContentProvider.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContentResolver.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeIInputMethodManager.java
ridge/src/com/android/layoutlib/bridge/android/BridgeLayoutParamsMapAttributes.java
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
ridge/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParser.java
ridge/src/com/android/layoutlib/bridge/android/view/WindowManagerImpl.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/FakeActionBar.java
ridge/src/com/android/layoutlib/bridge/bars/NavigationBar.java
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
ridge/src/com/android/layoutlib/bridge/bars/TitleBar.java
ridge/src/com/android/layoutlib/bridge/impl/DelegateManager.java
ridge/src/com/android/layoutlib/bridge/impl/FontLoader.java
ridge/src/com/android/layoutlib/bridge/impl/GcSnapshot.java
ridge/src/com/android/layoutlib/bridge/impl/ParserFactory.java
ridge/src/com/android/layoutlib/bridge/impl/PlayAnimationThread.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
ridge/src/com/android/layoutlib/bridge/impl/RenderDrawable.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
ridge/src/com/android/layoutlib/bridge/impl/Stack.java
ridge/src/com/android/layoutlib/bridge/impl/binding/BaseAdapter.java
ridge/src/com/android/layoutlib/bridge/impl/binding/FakeAdapter.java
ridge/src/com/android/layoutlib/bridge/impl/binding/FakeExpandableAdapter.java
ridge/src/com/android/layoutlib/bridge/util/Debug.java
ridge/src/com/android/layoutlib/bridge/util/DynamicIdMap.java
ridge/src/com/android/layoutlib/bridge/util/SparseWeakArray.java
ridge/src/com/google/android/maps/MapView.java
ridge/src/libcore/icu/ICU_Delegate.java
ridge/tests/.classpath
ridge/tests/.project
ridge/tests/Android.mk
ridge/tests/res/com/android/layoutlib/testdata/layout1.xml
ridge/tests/src/android/graphics/Matrix_DelegateTest.java
ridge/tests/src/com/android/layoutlib/bridge/TestDelegates.java
ridge/tests/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParserTest.java
reate/.classpath
reate/.project
reate/.settings/README.txt
reate/.settings/org.eclipse.jdt.core.prefs
reate/Android.mk
reate/README.txt
reate/manifest.txt
reate/src/com/android/tools/layoutlib/annotations/LayoutlibDelegate.java
reate/src/com/android/tools/layoutlib/annotations/Nullable.java
reate/src/com/android/tools/layoutlib/annotations/VisibleForTesting.java
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/ClassHasNativeVisitor.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/DelegateClassAdapter.java
reate/src/com/android/tools/layoutlib/create/DelegateMethodAdapter2.java
reate/src/com/android/tools/layoutlib/create/DependencyFinder.java
reate/src/com/android/tools/layoutlib/create/ICreateInfo.java
reate/src/com/android/tools/layoutlib/create/Log.java
reate/src/com/android/tools/layoutlib/create/LogAbortException.java
reate/src/com/android/tools/layoutlib/create/Main.java
reate/src/com/android/tools/layoutlib/create/MethodAdapter.java
reate/src/com/android/tools/layoutlib/create/MethodListener.java
reate/src/com/android/tools/layoutlib/create/OverrideMethod.java
reate/src/com/android/tools/layoutlib/create/RenameClassAdapter.java
reate/src/com/android/tools/layoutlib/create/StubMethodAdapter.java
reate/src/com/android/tools/layoutlib/create/TransformClassAdapter.java
reate/tests/com/android/tools/layoutlib/create/AsmAnalyzerTest.java
reate/tests/com/android/tools/layoutlib/create/AsmGeneratorTest.java
reate/tests/com/android/tools/layoutlib/create/ClassHasNativeVisitorTest.java
reate/tests/com/android/tools/layoutlib/create/DelegateClassAdapterTest.java
reate/tests/com/android/tools/layoutlib/create/LogTest.java
reate/tests/com/android/tools/layoutlib/create/MockLog.java
reate/tests/com/android/tools/layoutlib/create/RenameClassAdapterTest.java
reate/tests/com/android/tools/layoutlib/create/dataclass/ClassWithNative.java
reate/tests/com/android/tools/layoutlib/create/dataclass/ClassWithNative_Delegate.java
reate/tests/com/android/tools/layoutlib/create/dataclass/OuterClass.java
reate/tests/com/android/tools/layoutlib/create/dataclass/OuterClass_Delegate.java
reate/tests/com/android/tools/layoutlib/create/dataclass/OuterClass_InnerClass_Delegate.java
reate/tests/data/mock_android.jar
reate/tests/data/mock_android.jardesc
reate/tests/mock_android/dummy/InnerTest.java
reate/tests/mock_android/view/View.java
reate/tests/mock_android/view/ViewGroup.java
reate/tests/mock_android/widget/LinearLayout.java
reate/tests/mock_android/widget/TableLayout.java
22e90cf2b0e1629a82f9627886092b7a4cff9c42 26-Aug-2013 Jonathan Dixon <joth@google.com> Preparation for deleting WebViewClassic

Bug: 10427705

- layoutlib has references to classes that no longer build into the host
core JAR when WebViewClassic is removed.
- preloaded-classes should not reference WebViewClassic classes.

Change-Id: I4d6773a88ea2932982278127a3c96d38be54ddf5
ridge/src/android/webkit/WebView.java
98d6212327d1c483894b642d5e24c3aac9fca9cf 24-Aug-2013 Jeff Sharkey <jsharkey@android.com> Merge "Add CancellationSignal support to file operations." into klp-dev
bd3b902567b09379e1b62c60b3319ad82102efad 21-Aug-2013 Jeff Sharkey <jsharkey@android.com> Add CancellationSignal support to file operations.

Since ContentProvider file operations can end up doing substantial
network I/O before returning the file, allow clients to cancel their
file requests with CancellationSignal.

Ideally this would only be needed for openFile(), but ContentResolver
heavily relies on openAssetFile() and openTypedAssetFile() for common
cases.

Also improve documentation to mention reliable ParcelFileDescriptors
and encourage developers to move away from "rw" combination modes,
since they restrict provider flexibility. Mention more about places
where pipes or socket pairs could be returned.

Improve DocumentsContract documentation.

Bug: 10329944
Change-Id: I49b2825ea433eb051624c4da3b77612fe3ffc99c
ridge/src/com/android/layoutlib/bridge/android/BridgeContentProvider.java
9e104087978553f43fcb7767ff2ee265dbd15d2c 23-Aug-2013 satok <satok@google.com> DO NOT MERGE. Fix test breakage

Change-Id: I0b2b7ce4b9f50910b4795cb480aa86a662b16f7d
ridge/src/com/android/layoutlib/bridge/android/BridgeIInputMethodManager.java
1abf5d62429e5a9329520b2f7c2b5a5e7a8e72ec 16-Aug-2013 Chris Craik <ccraik@google.com> Add inPremutiplied option to BitmapFactory.Options, functionality in Bitmap

bug:2248948

Change-Id: I8fdd649332667598504a1076d5a447572bd53086
ridge/src/android/graphics/Bitmap_Delegate.java
c2f8da8756553bb682e0e202779063965a89dced 12-Aug-2013 Jeff Sharkey <jsharkey@android.com> Merge "Bring along BridgeContext for the ride." into klp-dev
b9be11c370712cfc4d54aef9202e61092b96960d 12-Aug-2013 Jeff Sharkey <jsharkey@android.com> Bring along BridgeContext for the ride.

Change-Id: Ic11c0df447c82be3922d529f18a290cfdfec6b05
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
667fe1039feae068d3333de8fb7115313f4a517b 03-Aug-2013 Jonathan Dixon <joth@google.com> Refactor Canvas.drawPicture() to delegate to Picture

Bug: 9814370

To allow WebView.capturePicture() to return a subclass, we need to
ensure the subclass is always consulted when being drawn into a canvas.

Change-Id: Ia0357f95b6fafb3ac81e6bcfaef05739e619897a
ridge/src/android/graphics/Canvas_Delegate.java
b3c21ac7c661022534135bf688a75ec35fe3a8f2 07-Aug-2013 Satoshi Kataoka <satok@google.com> Reduce the transaction fee of getEnabledInputMethodSubtypeList

Bug: 8467480
Change-Id: If18cce8fbe567df51f29adcdcedff3f743460b8b
ridge/src/com/android/layoutlib/bridge/android/BridgeIInputMethodManager.java
acb837fe632b79d52af0c683957cee8b567be74a 20-Jul-2013 Craig Mautner <cmautner@google.com> Merge "Fix home activity and user switch interactions."
ac6f843c917b68ea8805711965b149a9338e3a0e 17-Jul-2013 Craig Mautner <cmautner@google.com> Fix home activity and user switch interactions.

- Make sure Home activity goes in the correct task and on the correct
stack.
- Do not allow different users to be in the same task.
- Do not set stacks aside for each user.

Fixes bug 9775492.

Change-Id: I0e7954e917aac8482a1015a36923e02914e2b692
ridge/src/android/view/IWindowManagerImpl.java
903709d738a92de467e22f3923d2a7e4e92e9148 19-Jul-2013 Deepanshu Gupta <deepanshu@google.com> am 388f85eb: am a2f41b23: am bf8be2ee: Merge "Add orientation to configuration for layoutlib." into jb-mr2-dev

* commit '388f85eb451bd0b61c8f48b500de5db6bca941f1':
Add orientation to configuration for layoutlib.
b9ff71375a9cf55395984613eee767344ece47a9 19-Jul-2013 Jeff Brown <jeffbrown@google.com> Fix build.

Change-Id: Ie83f51ab4b8fddceda8d4f0ac24c532eab7458b8
ndroid.mk
d97d60c0fa4613a47d591d45736299702be1cc7a 13-Jul-2013 Deepanshu Gupta <deepanshu@google.com> Add orientation to configuration for layoutlib.

Update the configuration with the device orientation before rendering.

Change-Id: Icd40901204fd13f90b18353e53a15e25e5b2176c
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
144a6ae7e6e751388cd322bac70d6bbd950468d5 24-Jun-2013 Craig Mautner <cmautner@google.com> Fix build.

Change-Id: Icdfc6bcbe8603cf9bd3f8982a595336c0407e7d6
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
80f00c1f2375796dab09bc4ed5b7631c62f7e158 13-Jun-2013 John Spurlock <jspurlock@google.com> Remove concept of system bar from window manager.

It was already hardcoded to false, this change removes the dead code.

Change-Id: I5e543344e60f69cb9882a70ba29f7c09404ad9fc
ridge/src/android/view/IWindowManagerImpl.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
04fe6ebb9f919f196ec06a19bebc09b8e943f95b 31-May-2013 Adam Powell <adamp@google.com> Fix a bug resolving the correct icon/logo in action bars

Remove some abstraction-breaking magic in ActionBarView and replace it
with proper resolution of the icon/logo when creating a window. The
old implementation relied on the ActionBarView's context being an
Activity.

Bug 9171554

Change-Id: Idbbb1942622195dcb55e8119f2d64287b07bb509
ridge/src/android/view/IWindowManagerImpl.java
3d05476b1049bc35727a5432de7af99dd8e0a8c2 24-May-2013 Deepanshu Gupta <deepanshu@google.com> am fc691f9d: am 417e512b: Merge "Add missing native methods." into jb-mr2-dev

* commit 'fc691f9df0392a661c4d1708c905f82d50c17f27':
Add missing native methods.
279c00e8e0abb20f7e10577c77937c058da080bf 24-May-2013 Deepanshu Gupta <deepanshu@google.com> Add missing native methods.

Change-Id: I7b34e2ec0164520efc658053a80f307791a992b1
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/os/Looper_Accessor.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/libcore/icu/ICU_Delegate.java
19849d3c9a9def039f25323f95f98902e3feac60 21-May-2013 Dianne Hackborn <hackbod@google.com> Fix build.

Change-Id: I3dc503a3cd30276ac10582db44732d96b68230ee
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
b437a79b050e8928ce7187899b7754f049008085 09-Apr-2013 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of 21dffd5d to master

Change-Id: I37c48dee471c9d43f19c1fe4a01f70db53e2441f
f9e989d5f09e72f5c9a59d713521f37d3fdd93dd 05-Apr-2013 Jeff Brown <jeffbrown@google.com> Queues, queues, queues and input.

Redesigned how ViewRootImpl delivers input events to views,
the IME and to native activities to fix several issues.

The prior change to make IME input event delegation use
InputChannels failed to take into account that InputMethodManager
is a singleton attached to the main looper whereas UI may be
attached to any looper. Consequently interactions with the
InputChannel might occur on the wrong thread. Fixed this
problem by checking the current thread and posting input
events or callbacks to the correct looper when necessary.

NativeActivity has also been broken for a while because the
default event handling logic for joysticks and touch navigation
was unable to dispatch events back into the native activity.
In particular, this meant that DPad synthesis from touch navigation
would not work in any native activity. The plan is to fix
this problem by passing all events through ViewRootImpl as usual
then forwarding them to native activity as needed. This should
greatly simplify IME pre-dispatch and system key handling
and make everything more robust overall.

Fixed issues related to when input events are synthesized.
In particular, added a more robust mechanism to ensure that
synthetic events are canceled appropriately when we discover
that events are no longer being resynthesized (because the
application or IME is handling or dropping them).

The new design is structured as a pipeline with a chain of
responsibility consisting of InputStage objects. Each InputStage
is responsible for some part of handling each input event
such as dispatching to the view hierarchy or to the IME.
As a stage processes an input event, it has the option of
finishing the event, forwarding the event to the next stage
or handling the event asynchronously. Some queueing logic
takes care to ensure that events are forwarded downstream in
the correct order even if they are handled out of order
by a given stage.

Cleaned up the InputMethodManager singleton initialization logic
to make it clearer that it must be attached to the main looper.
We don't actually need to pass this looper around.

Deleted the LatencyTimer class since no one uses it and we have
better ways of measuring latency these days using systrace.

Added a hidden helper to Looper to determine whether the current
thread is the indicated Looper thread.

Note: NativeActivity's IME dispatch is broken by this patch.
This will be fixed later in another patch.

Bug: 8473020
Change-Id: Iac2a1277545195a7a0137bbbdf04514c29165c60
ridge/src/android/view/inputmethod/InputMethodManager_Accessor.java
ridge/src/android/view/inputmethod/InputMethodManager_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
c849fbcf3ddd3cbb08840c72f7f325294c5d2802 02-Apr-2013 Brian Colonna <bcolonna@google.com> resolved conflicts for merge of 5856ee4b to master

Change-Id: I60ba85bc246b9cf25d467b2099535aad47f82ca7
b1b9a8ac07ea7d438eda613f4c798dd8b10a66ce 29-Mar-2013 Brian Colonna <bcolonna@google.com> FUL now restarts when flipping tablet 180 (bug 7484464)

When a tablet rotates, FUL must be stopped and restarted in a new
position. 90 degree rotations cause a configuration change, causing
FUL to be automatically reconstructed in the new location. However,
a 180 degree rotation is not a configuration change, so FUL was not
restarting. A 180 degree rotation happens more often than one might
think. If you set the tablet down and later picked it up in the
opposite orientation, FUL would not work prior to this fix.

This change adds a rotation watcher to KeyguardFaceUnlockView. It
watches for 180 degree rotations and stops and restarts FUL
accordingly.

The rotation watcher callback must be unregistered when
KeyguardFaceUnlockView is recreated (as during 90 degree rotation
changes), otherwise the number of rotation watcher callbacks will keep
growing and they will never go away. This is a problem not just
because there are many callbacks hanging around, but also because the
old callbacks end up trying to access biometric unlock views that no
longer exist, resulting in crashes. So, a simple function was added
to the window manager to unregister a rotation watcher.

Change-Id: Ie1ef20a9a22b8f4e39918987dff2b8ad444fcfd1
ridge/src/android/view/IWindowManagerImpl.java
96f2fef2460adcf815baa1c2a74e417451fe1237 27-Mar-2013 Dianne Hackborn <hackbod@google.com> am 483ac9a7: am b404ecc9: Merge "Fix build." into jb-mr2-dev

* commit '483ac9a779af452d7ef4007d0e24c569ee894557':
Fix build.
f3d46ce88f0777dddfbecebc9bd7f2f216206365 27-Mar-2013 Dianne Hackborn <hackbod@google.com> Fix build.

Change-Id: I51b87ee5f0b7f396aad7e239893d9f0764f04bb6
ridge/src/android/view/IWindowManagerImpl.java
124af2d816c5337000e60c4d5a9c6b0319e5a3e6 19-Mar-2013 Craig Mautner <cmautner@google.com> Update layoutlib to latest interface.

Fix build..

Change-Id: I3504e8b8e8431ad76333e852cf42494b2404f8ad
ridge/src/android/view/IWindowManagerImpl.java
5c14d36c5980e3c56e367857620b387eee4358bd 05-Mar-2013 Dianne Hackborn <hackbod@google.com> am 892e0782: am ad4a174b: Merge "Fix build." into jb-mr2-dev

* commit '892e07829414fda01594f52c54352c8dbbd37499':
Fix build.
4ec6cc51087f310acf6f933ae2b69f1520b78453 05-Mar-2013 Dianne Hackborn <hackbod@google.com> Fix build.

Change-Id: Iaa70b05a3cfd372518ec35aa8bcea2f9d78b8292
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
2ad920759b1981eaf526fd37a314fbc5a3ed90ae 26-Feb-2013 Craig Mautner <cmautner@google.com> Revert ActivityManager changes for tasks. DO NOT MERGE

Keeping all activity=>task changes in master and removing them
from jb-mr2.

Revert "Update histories simultaneously."
Revert "Add null check to setAppGroupId."
Revert "Fix crashing bug in validator."
Revert "Switch topRunning* and moveTaskTo*"
Revert "Begin switch over to task based history."
Revert "Reset and reuse Iterators and don't new() one."
Revert "Remove AppWindowToken lists."
Revert "Fix build."
Revert "Remove unused App methods."
Revert "Stop using AppToken movement and start using Task."
Revert "Replace access to mAppTokens with AppTokenIterator"
Revert "Refactor setAppOpVisibility implementation."
Revert "Add AppWindowTokens to TaskList."
Revert "Make ActivityStack.mHistory private."
Revert "Migrate AppWindowToken lists into DisplayContent."

Change-Id: I5722c9a4956dccb52864207e2967690bc58e4ebb
ridge/src/android/view/IWindowManagerImpl.java
c4aad01cbbb69c916ef323693e1fd0560b0eccba 23-Feb-2013 Dianne Hackborn <hackbod@google.com> Formalize overscan metrics.

The window manager now maintains and reports a new formal
"overscan insets" for each window, much like the existing
content and visible insets. This is used to correctly
position the various UI elements in the various combination
of layout options. In particular, this allows us to have
an activity that is using fitSystemWindows to have the content
of its UI extend out to the visible content part of the screen
while still positioning its fixed UI elements inside the
standard content rect (and the entire window extending all
the way into the overscan area to fill the screen as desired).

Okay, maybe that is not written so clearly. Well, it made
my head hurt too, so suffer!

The key thing is that windows now need to know about three
rectangles: the overall rectangle of the window, the rectangle
inside of the overscan area, and the rectangle inside of the
content area. The FLAG_LAYOUT_IN_OVERSCAN option controls
whether the second rectangle is pushed out to fill the entire
overscan area.

Also did some improvements to debug dumping in the window
manager.

Change-Id: Ib2368c4aff5709d00662c799507c37b6826929fd
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
29ae06633d6e63fdb29f229f75de758a542c6b66 21-Feb-2013 Jim Miller <jaggies@google.com> am ec6156f9: Merge "Fix the build."

* commit 'ec6156f9e884ba85c76a9c4683f83f18b3f64afa':
Fix the build.
ef04a9b7e1dee38f191a8f70be89a1542ccbe367 21-Feb-2013 Jim Miller <jaggies@google.com> Fix the build.

Change-Id: If53878937fe1ca01ad8db9f9d201d0f9aaaec81b
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
4f7fb00f6cb74ef506e65994fb04af3280e958fc 19-Feb-2013 Dianne Hackborn <hackbod@google.com> am ee973c27: Fix build.

* commit 'ee973c27e339a23e0b93d816a97b33954af66bea':
Fix build.
ee973c27e339a23e0b93d816a97b33954af66bea 19-Feb-2013 Dianne Hackborn <hackbod@google.com> Fix build.

Change-Id: I277de38a70f3a2e5c1997a3fe5c2e825692ae9e1
ridge/src/android/view/IWindowManagerImpl.java
102f7110435415cf22187dcf6c01e599e544d5ce 14-Feb-2013 Craig Mautner <cmautner@google.com> am 534d136a: Merge "Remove unused App methods."

# Via Android (Google) Code Review (1) and Craig Mautner (1)
* commit '534d136aa66fb13f7c1b482513627de45c218c29':
Remove unused App methods.
b0c0b1fd70e3edeb724e2b2fb2c7063eb943f05e 14-Feb-2013 Craig Mautner <cmautner@google.com> Remove unused App methods.

Now that the Task methods have replaced the App methods remove
the App methods.

Change-Id: I0e7432f2c6f99708759ed8c871d20eb5bd38c3c2
ridge/src/android/view/IWindowManagerImpl.java
c932760f667cf56ca7a1aeffde505745dc3632e1 14-Feb-2013 Chris Craik <ccraik@google.com> Merge "Revert "Merge remote-tracking branch 'goog/master-chromium' into 'goog/master'" DO NOT MERGE"
7c1a49f5f5ed6613d736464bf5001b777e89ced2 13-Feb-2013 Chris Craik <ccraik@google.com> Revert "Merge remote-tracking branch 'goog/master-chromium' into 'goog/master'" DO NOT MERGE

This reverts commit 6c0307dd0aefe9a08794b155fc03ee60ebd14f25, reversing
changes made to a2cd828b749c444d55c2c41c7dbb85088ff94b9f.

Conflicts:
packages/SystemUI/res/values-sv/strings.xml

Change-Id: Ia178efe8b14751583d47b2826bfe3d3d5463dd2e
ridge/src/android/graphics/Typeface_Delegate.java
4f0dd02d00107fedda0fe42978ed98855dc53b85 13-Feb-2013 Xavier Ducrohet <xav@android.com> am 36ee5485: am 5d5c05de: am b7a4aed9: am f70b8c1c: Merge "Fix DateFormat for layoutlib." into jb-mr1.1-dev

# Via Android Git Automerger (3) and others
* commit '36ee5485b85e34008dc31e0f7bace1b2516c5db5':
Fix DateFormat for layoutlib.
36ee5485b85e34008dc31e0f7bace1b2516c5db5 13-Feb-2013 Xavier Ducrohet <xav@android.com> am 5d5c05de: am b7a4aed9: am f70b8c1c: Merge "Fix DateFormat for layoutlib." into jb-mr1.1-dev

# Via Android Git Automerger (2) and others
* commit '5d5c05dee9911eaf8add2d4298641e60f2a113d5':
Fix DateFormat for layoutlib.
47a021f7649799187e2d30d4d43e2363fd8f6bd3 12-Feb-2013 Xavier Ducrohet <xav@android.com> Fix DateFormat for layoutlib.

Change-Id: I389c9d106b93b9f81dd3614398a5b66ba2b39a70
ridge/src/android/text/format/DateFormat_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
23e500d168e8d649305445f6c1d2b49d8d2c00fd 06-Feb-2013 Derek Sollenberger <djsollen@google.com> Merge "Merge remote-tracking branch 'goog/master-chromium' into 'goog/master'"
961321fe4ed4431a6362d729d9e4ea26bdecde61 06-Feb-2013 Dianne Hackborn <hackbod@google.com> App ops: add op for writing settings.

Also fix a build.

And fix a bug that I think was introduced in the multi-user work
that removed the permission check for writing to settings...!

Change-Id: I5945682faa789ffc78fd3546c0df7d03693f106d
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
5cf6f8adfa2c0f83e09bdb4da9fc65f52e916292 29-Jan-2013 Svetoslav <svetoslavganov@google.com> am 573a18cc: Merge "Fixing the build"

# Via Android (Google) Code Review (1) and Svetoslav (1)
* commit '573a18ccd883d18046dea600855d34f5c9a57fa8':
Fixing the build
f5f7d9751a43b699b6e1c2e41ea0519bc54e39cd 29-Jan-2013 Svetoslav <svetoslavganov@google.com> Fixing the build

Change-Id: I8d47c7094efc8ff458cdac58a761d5f187c8fc32
ridge/src/android/view/IWindowManagerImpl.java
c152e16b07b3eb607d018a740f507af635db1e9d 19-Jan-2013 Dianne Hackborn <hackbod@google.com> am 8fea4e72: Merge "Rework ParceledListSlice to be much easier to use."

* commit '8fea4e72e4dcff9fa76168b9e26cf5907102f70b':
Rework ParceledListSlice to be much easier to use.
d8e1dbb6bc1fbaf4f2e38c3ba92ced94270deaac 18-Jan-2013 Dianne Hackborn <hackbod@google.com> Rework ParceledListSlice to be much easier to use.

Take advantage of this to return better information about
packages filtered by permissions -- include the permissions
they have in the requested array.

Also fix issue #8026793 (Contact picture shows default pic
while searching for a contact in qsb) by using the base
package name of the Context when reporting the app name
of an operation. Otherwise you could make a resource-only
context for another application and do calls through that
and get reported as the wrong app.

Change-Id: I5e0488bf773acea5a3d22f245641828e1a106fb8
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
7ed6c6d83b3301280a2150f0697a2a631a0168ad 16-Jan-2013 Dianne Hackborn <hackbod@google.com> am 35654b61: More work on App Ops service.

* commit '35654b61e8fe7bc85afcb076ddbb590d51c5865f':
More work on App Ops service.
35654b61e8fe7bc85afcb076ddbb590d51c5865f 15-Jan-2013 Dianne Hackborn <hackbod@google.com> More work on App Ops service.

Implemented reading and writing state to retain information
across boots, API to retrieve state from it, improved location
manager interaction to monitor both coarse and fine access
and only note operations when location data is being delivered
back to app (not when it is just registering to get the data at
some time in the future).

Also implement tracking of read/write ops on contacts and the
call log. This involved tweaking the content provider protocol
to pass over the name of the calling package, and some
infrastructure in the ContentProvider transport to note incoming
calls with the app ops service. The contacts provider and call
log provider turn this on for themselves.

This also implements some of the mechanics of being able to ignore
incoming provider calls... all that is left are some new APIs for
the real content provider implementation to be involved with
providing the correct behavior for query() (return an empty
cursor with the right columns) and insert() (need to figure out
what URI to return).

Change-Id: I36ebbcd63dee58264a480f3d3786891ca7cbdb4c
ridge/src/com/android/layoutlib/bridge/android/BridgeContentProvider.java
3cd80d949ca88fbef4d8da495992ac8855ad069c 05-Jan-2013 Tor Norbye <tnorbye@google.com> am 72c6137a: Handle empty flag attributes, such as gravity=""

* commit '72c6137a7aa5e5ada6a4aeca52f33d060742beb6':
Handle empty flag attributes, such as gravity=""
72c6137a7aa5e5ada6a4aeca52f33d060742beb6 05-Jan-2013 Tor Norbye <tnorbye@google.com> Handle empty flag attributes, such as gravity=""

Without this, an empty string will be passed into
XmlUtils.convertValueToInt, which throws an
index out of range exception.

Change-Id: Ibd1a140e207653b205852087f33ccb87fbbb9bbc
ridge/src/android/content/res/BridgeTypedArray.java
2fa54cef47887808d006f473a7d4f8dd5fb76704 19-Dec-2012 Derek Sollenberger <djsollen@google.com> Merge "Update framework to support r5967 of Skia." into master-chromium
330dd534848562515c6c67cb3de13067e86866a1 18-Dec-2012 John Spurlock <jspurlock@google.com> Remove remaining doc references to StyledAttributes.

It appears StyledAttributes was renamed to TypedArray
prior to fw 1.0. Leaving references to the old name
around in the public docs is confusing.

Deliberating leaving...
tests/coretests/src/android/widget/LabelView.java
... as is - it's clearly unused.

Change-Id: I3f66e5f9cbe945d9d86530d37b88369b401f054d
ridge/src/android/content/res/BridgeTypedArray.java
2ec5093e5a908cea532e571aead6a5c024c553f7 15-Dec-2012 Svetoslav Ganov <svetoslavganov@google.com> Fixing the build

Change-Id: I01349d65ac5915da090cfb018f99e0a508f9d5ad
ridge/src/android/view/IWindowManagerImpl.java
ca79cf69d09efa0c327e9b1237d86a119aea5da7 14-Aug-2012 Derek Sollenberger <djsollen@google.com> Update framework to support r5967 of Skia.

bug: 6906025
Change-Id: Iefdb830ec3aa2ab3472c1c142484a7aa21788a15
ridge/src/android/graphics/Typeface_Delegate.java
f9ae5f75af259437391e41dac7f3c4461c495dd9 04-Dec-2012 Dianne Hackborn <hackbod@google.com> am 23307cbb: am e0a676a3: Merge "Fix issue #7649590: Background windows sometimes not being hidden for secondary users" into jb-mr1.1-dev

* commit '23307cbb6b432b658b0fd7437dacfedd6298af94':
Fix issue #7649590: Background windows sometimes not being hidden for secondary users
bb4ca5271a806c94a59d98c5c718db7b89728246 03-Dec-2012 Dianne Hackborn <hackbod@google.com> Fix issue #7649590: Background windows sometimes not being hidden for secondary users

There are two things going on here:

(1) In secondary users, some times theme information such as whether
the window is full screen opaque was not being retrieved, so the window
manager didn't know that it could hide the windows behind the app.
This would just be a performance problem, except that:

(2) There appear to be a number of applications that declare that they
are full screen opaque, when in fact they are not. Instead they are
using window surfaces with an alpha channel, and setting some pixels
in their window to a non-opaque alpha level. This will allow you to
see whatever is behind the app. If the system happens to completely
remove the windows behind the app, and somebody is filling the frame
buffer with black, then you will see what the app intends -- those
parts of its UI blended with black. If one of those cases doesn't
hold (and though we have never guaranteed they would, in practice this
is generally what happens), then you will see something else.

At any rate, if nothing else than for performance reasons, we need to
fix issue #1.

It turns out what is happening here is that the AttributeCache used
by the activity manager and window manager to retreive theme and other
information about applications has not yet been updated for multi-user.

One of the things we retrieve from this is the theme information telling
the window manager whether an application's window should be treated
as full screen opaque, allowing it to hide any windows behind it. In
the current implementation, the AttributeCache always retrieves this
information about the application as the primary user (user 0).

So, if you have an application that is installed on a secondary user but
not installed on the primary user, when the AttributeCache tries to retrieve
the requested information for it, then from the perspective of the primary user
it considers the application not installed, and is not able to retrieve that
info.

The change here makes AttributeCache multi-user aware, keeping all of its
data separately per-user, and requiring that callers now provide the user
they want to retrieve information for. Activity manager and window manager
are updated to be able to pass in the user when needed. This required some
fiddling of the window manager to have that information available -- in
particular it needs to be associated with the AppWindowToken.

Change-Id: I4b50b4b3a41bab9d4689e61f3584778e451343c8
ridge/src/android/view/IWindowManagerImpl.java
152e9bb81aa5b2ab4637f4b2dae04b3ce89fa891 13-Oct-2012 Svetoslav Ganov <svetoslavganov@google.com> Refactoring of the screen magnification feature.

1. The screen magnification feature was implemented entirely as a part of the accessibility
manager. To achieve that the window manager had to implement a bunch of hooks for an
external client to observe its internal state. This was problematic since it dilutes
the window manager interface and allows code that is deeply coupled with the window
manager to reside outside of it. Also the observer callbacks were IPCs which cannot
be called with the window manager's lock held. To avoid that the window manager had
to post messages requesting notification of interested parties which makes the code
consuming the callbacks to run asynchronously of the window manager. This causes timing
issues and adds unnecessary complexity.

Now the magnification logic is split in two halves. The first half that is responsible
to track the magnified portion of the screen and serve as a policy which windows can be
magnified and it is a part of the window manager. This part exposes higher level APIs
allowing interested parties with the right permissions to control the magnification
of a given display. The APIs also allow a client to be registered for callbacks on
interesting changes such as resize of the magnified region, etc. This part servers
as a mediator between magnification controllers and the window manager.

The second half is a controller that is responsible to drive the magnification
state based on touch interactions. It also presents a highlight when magnified to
suggest the magnified potion of the screen. The controller is responsible for auto
zooming out in case the user context changes - rotation, new actitivity. The controller
also auto pans if a dialog appears and it does not interesect the magnified frame.

bug:7410464

2. By design screen magnification and touch exploration work separately and together. If
magnification is enabled the user sees a larger version of the widgets and a sub section
of the screen content. Accessibility services use the introspection APIs to "see" what
is on the screen so they can speak it, navigate to the next item in response to a
gesture, etc. Hence, the information returned to accessibility services has to reflect
what a sighted user would see on the screen. Therefore, if the screen is magnified
we need to adjust the bounds and position of the infos describing views in a magnified
window such that the info bounds are equivalent to what the user sees.

To improve performance we keep accessibility node info caches in the client process.
However, when magnification state changes we have to clear these caches since the
bounds of the cached infos no longer reflect the screen content which just got smaller
or larger.

This patch propagates not only the window scale as before but also the X/Y pan and the
bounds of the magnified portion of the screen to the introspected app. This information
is used to adjust the bounds of the node infos coming from this window such that the
reported bounds are the same as the user sees not as the app thinks they are. Note that
if magnification is enabled we zoom the content and pan it along the X and Y axis. Also
recomputed is the isVisibleToUser property of the reported info since in a magnified
state the user sees a subset of the window content and the views not in the magnified
viewport should be reported as not visible to the user.

bug:7344059

Change-Id: I6f7832c7a6a65c5368b390eb1f1518d0c7afd7d2
ridge/src/android/view/IWindowManagerImpl.java
061b4fae3daf40c90b46e16b12e7f22142eb498c 09-Nov-2012 Jim Miller <jaggies@google.com> am a2bf6181: am 2c29deaa: am 6be441c5: Merge "Add mechanism to kick keyguard to show the assistant" into jb-mr1-lockscreen-dev

* commit 'a2bf6181dfca0f93461fc041f2bd2444551a4515':
Add mechanism to kick keyguard to show the assistant
bef827572ce9644253ea42ab91b11b8107d2300f 09-Nov-2012 Jim Miller <jaggies@google.com> am c7dc250d: am fe7e94a0: am 088fb915: Merge "Add isSafeModeEnabled() API to WindowManagerService" into jb-mr1-lockscreen-dev

* commit 'c7dc250d5a3dab93ff87e9986a71ae58ff124399':
Add isSafeModeEnabled() API to WindowManagerService
4eeb4f664ac6b5901a8e874dcf70c0382295f792 08-Nov-2012 Jim Miller <jaggies@google.com> Add mechanism to kick keyguard to show the assistant

Fixes bug 7499778

Change-Id: Ic9ea514feb489feeee6716f40bdb9792842f9515
ridge/src/android/view/IWindowManagerImpl.java
58ed5d748c0b9b64845975ef5844ad313de7c3f6 07-Nov-2012 Kenny Root <kroot@google.com> am 768d9e1a: Merge "Correct executable bit for source files"

* commit '768d9e1a72ceee7d4a5f608776b87b62d6ce4a04':
Correct executable bit for source files
3a084af2e90849aaa8beb3a610189e3399c63ea0 07-Nov-2012 Kenny Root <kroot@google.com> Correct executable bit for source files

Many media files and source code files were marked as executable in Git.
Remove those.

Also a shell script and python script were not marked as executable.

Change-Id: Ieb51bafb46c895a21d2e83696f5a901ba752b2c5
ridge/src/android/util/Log_Delegate.java
reate/src/com/android/tools/layoutlib/annotations/Nullable.java
reate/src/com/android/tools/layoutlib/annotations/VisibleForTesting.java
reate/src/com/android/tools/layoutlib/create/DependencyFinder.java
bfec0a8616bc197ee3b7b71be6fed1939d0c3c4d 06-Nov-2012 Jim Miller <jaggies@google.com> Add isSafeModeEnabled() API to WindowManagerService

This adds a means of determining when the device is in safe mode,
as required by keyguard to disabled some features.

Change-Id: I31d357e6738c92e1837f9e0263e5f3f4de66315a
ridge/src/android/view/IWindowManagerImpl.java
fcc93e734be9fe4608fb5a6818163104cdec3fb5 19-Oct-2012 Xavier Ducrohet <xav@android.com> am 135b5ba5: Layoutlib: Read and close XML files as soon as possible. do not merge.

* commit '135b5ba52431b147d51a81b807784009cd0510dd':
Layoutlib: Read and close XML files as soon as possible. do not merge.
135b5ba52431b147d51a81b807784009cd0510dd 18-Oct-2012 Xavier Ducrohet <xav@android.com> Layoutlib: Read and close XML files as soon as possible. do not merge.

Because passing an InputStream to KXML does not close the
stream after the file has been parsed, the files are staying
locked on windows until the gc and finalizers are run.

This change preload the XML files and close their stream,
and then pass the content in a stream to the parser.

(cherry picked from commit c48b0b940d632b9862ff6aa32665e37fe9e50845)

Change-Id: I1b225454c166026c1aab6290c55ac8279e8862d5
ridge/src/com/android/layoutlib/bridge/impl/ParserFactory.java
c48b0b940d632b9862ff6aa32665e37fe9e50845 18-Oct-2012 Xavier Ducrohet <xav@android.com> Layoutlib: Read and close XML files as soon as possible.

Because passing an InputStream to KXML does not close the
stream after the file has been parsed, the files are staying
locked on windows until the gc and finalizers are run.

This change preload the XML files and close their stream,
and then pass the content in a stream to the parser.

Change-Id: Iabe27989dc616ec9e7de88e52b1ec3af9f007f7c
ridge/src/com/android/layoutlib/bridge/impl/ParserFactory.java
64b3de296cdbc8c02e2890f8853409c6d49cddb1 18-Oct-2012 Xavier Ducrohet <xav@android.com> am 434cd38f: Update layoutlib for jb mr1. do not merge.

* commit '434cd38f96a4a87220a8218901622f31e567354a':
Update layoutlib for jb mr1. do not merge.
434cd38f96a4a87220a8218901622f31e567354a 17-Oct-2012 Xavier Ducrohet <xav@android.com> Update layoutlib for jb mr1. do not merge.

Status bar displayed on all devices.
Update logic for displaying nav bar to whether or not
device has soft button.

Update navigation buttons to new look.
Remove battery and signal from navigation bar.

(cherry picked from commit 891b703f7b1e0e396d16477cc66a286da7161b49)

Change-Id: Id7cc9ad4255d2c4d2e6461a565dfe2cc17e12e75
ridge/resources/bars/hdpi/ic_sysbar_back.png
ridge/resources/bars/hdpi/ic_sysbar_back_default.png
ridge/resources/bars/hdpi/ic_sysbar_home.png
ridge/resources/bars/hdpi/ic_sysbar_home_default.png
ridge/resources/bars/hdpi/ic_sysbar_recent.png
ridge/resources/bars/hdpi/ic_sysbar_recent_default.png
ridge/resources/bars/mdpi/ic_sysbar_back.png
ridge/resources/bars/mdpi/ic_sysbar_back_default.png
ridge/resources/bars/mdpi/ic_sysbar_home.png
ridge/resources/bars/mdpi/ic_sysbar_home_default.png
ridge/resources/bars/mdpi/ic_sysbar_recent.png
ridge/resources/bars/mdpi/ic_sysbar_recent_default.png
ridge/resources/bars/navigation_bar.xml
ridge/resources/bars/phone_system_bar.xml
ridge/resources/bars/status_bar.xml
ridge/resources/bars/xhdpi/ic_sysbar_back.png
ridge/resources/bars/xhdpi/ic_sysbar_back_default.png
ridge/resources/bars/xhdpi/ic_sysbar_home.png
ridge/resources/bars/xhdpi/ic_sysbar_home_default.png
ridge/resources/bars/xhdpi/ic_sysbar_recent.png
ridge/resources/bars/xhdpi/ic_sysbar_recent_default.png
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/FakeActionBar.java
ridge/src/com/android/layoutlib/bridge/bars/NavigationBar.java
ridge/src/com/android/layoutlib/bridge/bars/PhoneSystemBar.java
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
ridge/src/com/android/layoutlib/bridge/bars/TabletSystemBar.java
ridge/src/com/android/layoutlib/bridge/bars/TitleBar.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
ridge/src/com/android/layoutlib/bridge/impl/RenderDrawable.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
891b703f7b1e0e396d16477cc66a286da7161b49 17-Oct-2012 Xavier Ducrohet <xav@android.com> Update layoutlib for jb mr1.

Status bar displayed on all devices.
Update logic for displaying nav bar to whether or not
device has soft button.

Update navigation buttons to new look.
Remove battery and signal from navigation bar.

Change-Id: I8241d71269a17126218a3062ba727e379a8e6c25
ridge/resources/bars/hdpi/ic_sysbar_back.png
ridge/resources/bars/hdpi/ic_sysbar_back_default.png
ridge/resources/bars/hdpi/ic_sysbar_home.png
ridge/resources/bars/hdpi/ic_sysbar_home_default.png
ridge/resources/bars/hdpi/ic_sysbar_recent.png
ridge/resources/bars/hdpi/ic_sysbar_recent_default.png
ridge/resources/bars/mdpi/ic_sysbar_back.png
ridge/resources/bars/mdpi/ic_sysbar_back_default.png
ridge/resources/bars/mdpi/ic_sysbar_home.png
ridge/resources/bars/mdpi/ic_sysbar_home_default.png
ridge/resources/bars/mdpi/ic_sysbar_recent.png
ridge/resources/bars/mdpi/ic_sysbar_recent_default.png
ridge/resources/bars/navigation_bar.xml
ridge/resources/bars/phone_system_bar.xml
ridge/resources/bars/status_bar.xml
ridge/resources/bars/tablet_system_bar.xml
ridge/resources/bars/xhdpi/ic_sysbar_back.png
ridge/resources/bars/xhdpi/ic_sysbar_back_default.png
ridge/resources/bars/xhdpi/ic_sysbar_home.png
ridge/resources/bars/xhdpi/ic_sysbar_home_default.png
ridge/resources/bars/xhdpi/ic_sysbar_recent.png
ridge/resources/bars/xhdpi/ic_sysbar_recent_default.png
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/FakeActionBar.java
ridge/src/com/android/layoutlib/bridge/bars/NavigationBar.java
ridge/src/com/android/layoutlib/bridge/bars/PhoneSystemBar.java
ridge/src/com/android/layoutlib/bridge/bars/StatusBar.java
ridge/src/com/android/layoutlib/bridge/bars/TabletSystemBar.java
ridge/src/com/android/layoutlib/bridge/bars/TitleBar.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
ridge/src/com/android/layoutlib/bridge/impl/RenderDrawable.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
6dfd0b39a63559999a769f93d5cdb48abe675344 15-Oct-2012 Xavier Ducrohet <xav@android.com> Fix SDK layout rendering in Eclipse.

Change-Id: I0e9e85632012c0929b987ee9d0ccf7c25eece322
ridge/src/android/os/SystemClock_Delegate.java
ridge/src/android/view/Choreographer_Delegate.java
ridge/src/android/view/Display_Delegate.java
ridge/src/android/view/IWindowManagerImpl.java
ridge/src/android/view/WindowManagerGlobal_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
ridge/src/com/android/layoutlib/bridge/android/view/WindowManagerImpl.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
33877e15b8bfc50bd874027689a4794aa93b923d 07-Oct-2012 Craig Mautner <cmautner@google.com> Merge "Adds showWhenLocked attribute to Activities." into jb-mr1-dev
5962b12bedc4a1d0354816c1cd6b06ba04f6d807 05-Oct-2012 Craig Mautner <cmautner@google.com> Adds showWhenLocked attribute to Activities.

The new attribute allows an Activity such as the alarm to appear
on all users screens.

Bug: 7213805 fixed.
Change-Id: If7866b13d88c04af07debc69e0e875d0adc6050a
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
c38c9be031ddad5cf551b55458889f11e01dc5b2 04-Oct-2012 Jeff Brown <jeffbrown@google.com> Coordinate screen on with the window manager.

Bug: 7267457
Change-Id: Ic2c322253639e1f0b2e4e72a7b145025d0240f93
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
f752202bee88e31ce765483ba2efa6999ae9c9ad 04-Oct-2012 Adam Cohen <adamcohen@google.com> Plumbing to allow keyguard to be shown with user switcher (issue 7175023)

-> Also reduced calls to lockNow, and moved this call in ActivityManagerService

Change-Id: I9ba34ca902f7c0f71fa4ec302104688ca8d11f55
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
c428aae6429c3fd5e2037c3793af399d9f6e23bf 04-Oct-2012 Dianne Hackborn <hackbod@google.com> Fix issue #7267494, issue #7212347

7267494 Calendar is not syncing
Check for whether a content provider is dead before returning
it. This is kind-of a band-aid, but probably the right thing
to do; I'm just not sure exactly the full details of why this
problem is happening. Hopefully this "fixes" it, though I don't
have a way to repro to tell.

7212347 System power off dialog is only visible to user 0
Make it visible. Also turn on some battery debugging stuff and
clean it up so we can just keep it.

Change-Id: I5add25bf2a763c8dfe1df23bc5c753a9ea5d157a
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
1e3b98d47df596d0c4eadbdf60143709f8465b28 01-Oct-2012 Jeff Brown <jeffbrown@google.com> New internal API to eliminate poke locks.

Added a new WindowManager.LayoutParams inputFeatures flag
to disable automatic user activity behavior when an input
event is sent to a window.

Added a new WindowManager.LayoutParams field userActivityTimeout.

Bug: 7165399
Change-Id: I204eafa37ef26aacc2c52a1ba1ecce1eebb0e0d9
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
edce6a797878792de2b0bde4360f3171b9e9d9d2 01-Oct-2012 Jeff Brown <jeffbrown@google.com> Remove clearUserActivityTimeout().

This function is not implemented and not needed.

Bug: 7165399
Change-Id: Ib1c50fabad6292ccf670404ba70aeb1242c4614d
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
120664816a9bf325b618d8dd40febae2e3636ec8 29-Sep-2012 Jeff Brown <jeffbrown@google.com> Get rid of preventScreenOn().

Bug: 7165399
Change-Id: I1968265ecd74fff4d85efd2ca03b1983425ea518
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
62c82e4d92cc0b856059f905d81885f7808a0e7d 26-Sep-2012 Jeff Brown <jeffbrown@google.com> Make DreamManagerService more robust.

Clearly isolated the DreamManagerService and DreamController
responsibilities. DreamManagerService contains just enough logic to
manage the global synchronous behaviors. All of the asynchronous
behaviors are in DreamController.

Added a new PowerManager function called nap() to request the device
to start napping. If it is a good time to nap, then the
PowerManagerService will call startDream() on the DreamManagerService
to start dreaming.

Fixed a possible multi-user issue by explicitly tracking for
which user a dream service is being started and stopping dreams
when the current user changes. The user id is also passed to
bindService() to ensure that the dream has the right environment.

Fix interactions with docks and the UI mode manager. It is
important that we always send the ACTION_DOCK_EVENT broadcast
to the system so that it can configure audio routing and the like.
When docked, the UI mode manager starts a dock app if there is
one, otherwise it starts a dream.

This change resolves issues with dreams started for reasons other
than a user activity timeout.

Bug: 7204211
Change-Id: I3193cc8190982c0836319176fa2e9c4dcad9c01f
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
6d51571835737c7502a2e111ee9dc2527ebad984 21-Sep-2012 Jeff Sharkey <jsharkey@android.com> Allow acquiring ContentProviders across users.

Otherwise services like SystemUI will always open content://-style
Uris as USER_OWNER. Surfaces through createPackageContextAsUser()
which points all ContentResolver operations towards a given user.

Start using in RemoteViews, so that Notifications correctly resolve
image Uris to the sending user. Also add user support for "content"
shell tool.

Bug: 7202982
Change-Id: I8cb7fb8a812e825bb0b5833799dba87055ff8699
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
9d9ece3c1e16001b63244459cdf4b428f4272d2e 11-Sep-2012 Dianne Hackborn <hackbod@google.com> Animations for user switching.

The window manager now has a facility to provide a full-screen
animation, which the activity manager uses every time a user
switch happens.

The current animation is just a simple dumb slide until we get
a design from UX.

Also some cleanup: moved the portrait task animations to the
default config so we always have an animation for them, and finally
got the java symbol stuff out of public.xml.

Change-Id: I726f77422b2ef5f2d98f961f8da003e045f0ebe8
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
4b15ab66a064ba4fae3bb1ff474d8b5fc38e5490 07-Sep-2012 Svetoslav Ganov <svetoslavganov@google.com> Fixing the build

Change-Id: I123b128f5d9e50653d8d4ed73ea07920b370b0fb
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
1cf70bbf96930662cab0e699d70b62865766ff52 06-Aug-2012 Svetoslav Ganov <svetoslavganov@google.com> Screen magnification - feature - framework.

This change is the initial check in of the screen magnification
feature. This feature enables magnification of the screen via
global gestures (assuming it has been enabled from settings)
to allow a low vision user to efficiently use an Android device.

Interaction model:

1. Triple tap toggles permanent screen magnification which is magnifying
the area around the location of the triple tap. One can think of the
location of the triple tap as the center of the magnified viewport.
For example, a triple tap when not magnified would magnify the screen
and leave it in a magnified state. A triple tapping when magnified would
clear magnification and leave the screen in a not magnified state.

2. Triple tap and hold would magnify the screen if not magnified and enable
viewport dragging mode until the finger goes up. One can think of this
mode as a way to move the magnified viewport since the area around the
moving finger will be magnified to fit the screen. For example, if the
screen was not magnified and the user triple taps and holds the screen
would magnify and the viewport will follow the user's finger. When the
finger goes up the screen will clear zoom out. If the same user interaction
is performed when the screen is magnified, the viewport movement will
be the same but when the finger goes up the screen will stay magnified.
In other words, the initial magnified state is sticky.

3. Pinching with any number of additional fingers when viewport dragging
is enabled, i.e. the user triple tapped and holds, would adjust the
magnification scale which will become the current default magnification
scale. The next time the user magnifies the same magnification scale
would be used.

4. When in a permanent magnified state the user can use two or more fingers
to pan the viewport. Note that in this mode the content is panned as
opposed to the viewport dragging mode in which the viewport is moved.

5. When in a permanent magnified state the user can use three or more
fingers to change the magnification scale which will become the current
default magnification scale. The next time the user magnifies the same
magnification scale would be used.

6. The magnification scale will be persisted in settings and in the cloud.

Note: Since two fingers are used to pan the content in a permanently magnified
state no other two finger gestures in touch exploration or applications
will work unless the uses zooms out to normal state where all gestures
works as expected. This is an intentional tradeoff to allow efficient
panning since in a permanently magnified state this would be the dominant
action to be performed.

Design:

1. The window manager exposes APIs for setting accessibility transformation
which is a scale and offsets for X and Y axis. The window manager queries
the window policy for which windows will not be magnified. For example,
the IME windows and the navigation bar are not magnified including windows
that are attached to them.

2. The accessibility features such a screen magnification and touch
exploration are now impemented as a sequence of transformations on the
event stream. The accessibility manager service may request each
of these features or both. The behavior of the features is not changed
based on the fact that another one is enabled.

3. The screen magnifier keeps a viewport of the content that is magnified
which is surrounded by a glow in a magnified state. Interactions outside
of the viewport are delegated directly to the application without
interpretation. For example, a triple tap on the letter 'a' of the IME
would type three letters instead of toggling magnified state. The viewport
is updated on screen rotation and on window transitions. For example,
when the IME pops up the viewport shrinks.

4. The glow around the viewport is implemented as a special type of window
that does not take input focus, cannot be touched, is laid out in the
screen coordiates with width and height matching these of the screen.
When the magnified region changes the root view of the window draws the
hightlight but the size of the window does not change - unless a rotation
happens. All changes in the viewport size or showing or hiding it are
animated.

5. The viewport is encapsulated in a class that knows how to show,
hide, and resize the viewport - potentially animating that.
This class uses the new animation framework for animations.

6. The magnification is handled by a magnification controller that
keeps track of the current trnasformation to be applied to the screen
content and the desired such. If these two are not the same it is
responsibility of the magnification controller to reconcile them by
potentially animating the transition from one to the other.

7. A dipslay content observer wathces for winodw transitions, screen
rotations, and when a rectange on the screen has been reqeusted. This
class is responsible for handling interesting state changes such
as changing the viewport bounds on IME pop up or screen rotation,
panning the content to make a requested rectangle visible on the
screen, etc.

8. To implement viewport updates the window manger was updated with APIs
to watch for window transitions and when a rectangle has been requested
on the screen. These APIs are protected by a signature level permission.
Also a parcelable and poolable window info class has been added with
APIs for getting the window info given the window token. This enables
getting some useful information about a window. There APIs are also
signature protected.

bug:6795382

Change-Id: Iec93da8bf6376beebbd4f5167ab7723dc7d9bd00
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
5eb51defe39f765d6ebe868dba7f187f7dd990f6 04-Sep-2012 Xavier Ducrohet <xav@android.com> Add some new native deletage to layoutlib.

Change-Id: Ib53df6c944ecd9680bf929afe03b08bcaa61ad70
ridge/src/android/os/SystemClock_Delegate.java
ridge/src/android/util/FloatMath_Delegate.java
20e809870d8ac1e5b848f2daf51b2272ef89bdfc 01-Sep-2012 Dianne Hackborn <hackbod@google.com> Add registering for explicit users.

New API to register as an explicit user, which allows you to
also select ALL to see broadcasts for all users.

New BroadcastReceiver API to find out which user the broadcast
was sent to.

Use this in app widget service to handle per-user package broadcasts
and boot completed broadcasts correctly.

Change-Id: Ibbe28993bd4aa93900c79e412026c27863019eb8
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
a492c3a7b2c18426fd0cb4d017eacbc368195dc5 24-Aug-2012 Jeff Brown <jeffbrown@google.com> Initial draft of high-level multi-display APIs.

This patch introduces the ability to create a Context that
is bound to a Display. The context gets its configuration and
metrics from that display and is able to provide a WindowManager
that is bound to the display.

To make it easier to use, we also add a new kind of Dialog
called a Presentation. Presentation takes care of setting
up the context as needed and watches for significant changes
in the display configuration. If the display is removed,
then the presentation simply dismisses itself.

Change-Id: Idc54b4ec84b1ff91505cfb78910cf8cd09696d7d
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
5ac72a29593ab9a20337a2225df52bdf4754be02 30-Aug-2012 Dianne Hackborn <hackbod@google.com> Improve multi-user broadcasts.

You can now use ALL and CURRENT when sending broadcasts, to specify
where the broadcast goes.

Sticky broadcasts are now correctly separated per user, and registered
receivers are filtered based on the requested target user.

New Context APIs for more kinds of sending broadcasts as users.

Updating a bunch of system code that sends broadcasts to explicitly
specify which user the broadcast goes to.

Made a single version of the code for interpreting the requested
target user ID that all entries to activity manager (start activity,
send broadcast, start service) use.

Change-Id: Ie29f02dd5242ef8c8fa56c54593a315cd2574e1c
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
7767eac3232ba2fb9828766813cdb481d6a97584 24-Aug-2012 Dianne Hackborn <hackbod@google.com> Keep track of whether an app is installed for each user.

This add a new per-user state for an app, indicating whether
it is installed for that user.

All system apps are always installed for all users (we still
use disable to "uninstall" them).

Now when you call into the package manager to install an app,
it will only install the app for that user unless you supply
a flag saying to install for all users. Only being installed
for the user is just the normal install state, but all other
users have marked in their state for that app that it is not
installed.

When you call the package manager APIs for information about
apps, uninstalled apps are treated as really being not visible
(somewhat more-so than disabled apps), unless you use the
GET_UNINSTALLED_PACKAGES flag.

If another user calls to install an app that is already installed,
just not for them, then the normal install process takes place
but in addition that user's installed state is toggled on.

The package manager will not send PACKAGE_ADDED, PACKAGE_REMOVED,
PACKAGE_REPLACED etc broadcasts to users who don't have a package
installed or not being involved in a change in the install state.
There are a few things that are not quite right with this -- for
example if you go through a full install (with a new apk) of an
app for one user who doesn't have it already installed, you will
still get the PACKAGED_REPLACED messages even though this is
technically the first install for your user. I'm not sure how
much of an issue this is.

When you call the existing API to uninstall an app, this toggles
the installed state of the app for that user to be off. Only if
that is the last user user that has the app uinstalled will it
actually be removed from the device. Again there is a new flag
you can pass in to force the app to be uninstalled for all users.

Also fixed issues with cleaning external storage of apps, which
was not dealing with multiple users. We now keep track of cleaning
each user for each package.

Change-Id: I00e66452b149defc08c5e0183fa673f532465ed5
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
98365d7663cbd82979a5700faf0050220b01084d 20-Aug-2012 Jeff Brown <jeffbrown@google.com> Refactor for multi-display support.

Split WindowManagerImpl into two parts, the WindowManager
interface implementation remains where it is but the global
communications with the window manager are now handled by
the WindowManagerGlobal class. This change greatly simplifies
the challenge of having separate WindowManager instances
for each Context.

Removed WindowManagerImpl.getDefault(). This represents the
bulk of this change. Most of the usages of this method were
either to perform global functions (now handled by WindowManagerGlobal)
or to obtain the default display (now handled by DisplayManager).

Explicitly associate each new window with a display and make
the Display object available to the View hierarchy.

Add stubs for some new display manager API features.

Start to split apart the concepts of display id and layer stack.
since they operate at different layers of abstraction.
While it's true that each logical display uniquely corresponds to a
surface flinger layer stack, it is not necessarily the case that
they must use the same ids. Added Display.getLayerStack()
and started using it in places where it was relatively easy to do.

Change-Id: I29ed909114dec86807c4d3a5059c3fa0358bea61
ridge/src/android/view/AttachInfo_Accessor.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
d2ae85d41ec1651dd1bf4c33fe31833ba5c5cff5 17-Aug-2012 Michael Jurka <mikejurka@google.com> Merge "Adding a thumbnail scale down animation" into jb-mr1-dev
79af1dd54c16cde063152922b42c96d72ae9eca8 17-Aug-2012 Dianne Hackborn <hackbod@google.com> Switch public APIs to use new UserHandle class for identifying users.

Gets rid of "yet another integer" confusion.

Change-Id: Id07ea7307aea7c62f0087c6663a1f1c08e2e5dee
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
832cb229cd748505c90f74ae8154fc3557d61a73 13-Apr-2012 Michael Jurka <mikejurka@google.com> Adding a thumbnail scale down animation

Recents animation will temporarily look a bit
wrong, but a subsequent change will fix this.
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
9630704ed3b265f008a8f64ec60a33cf9dcd3345 28-Jul-2012 Jeff Brown <jeffbrown@google.com> Power manager rewrite.

The major goal of this rewrite is to make it easier to implement
power management policies correctly. According, the new
implementation primarily uses state-based rather than event-based
triggers for applying changes to the current power state.

For example, when an application requests that the proximity
sensor be used to manage the screen state (by way of a wake lock),
the power manager makes note of the fact that the set of
wake locks changed. Then it executes a common update function
that recalculates the entire state, first looking at wake locks,
then considering user activity, and eventually determining whether
the screen should be turned on or off. At this point it may
make a request to a component called the DisplayPowerController
to asynchronously update the display's powe state. Likewise,
DisplayPowerController makes note of the updated power request
and schedules its own update function to figure out what needs
to be changed.

The big benefit of this approach is that it's easy to mutate
multiple properties of the power state simultaneously then
apply their joint effects together all at once. Transitions
between states are detected and resolved by the update in
a consistent manner.

The new power manager service has is implemented as a set of
loosely coupled components. For the most part, information
only flows one way through these components (by issuing a
request to that component) although some components support
sending a message back to indicate when the work has been
completed. For example, the DisplayPowerController posts
a callback runnable asynchronously to tell the PowerManagerService
when the display is ready. An important feature of this
approach is that each component neatly encapsulates its
state and maintains its own invariants. Moreover, we do
not need to worry about deadlocks or awkward mutual exclusion
semantics because most of the requests are asynchronous.

The benefits of this design are especially apparent in
the implementation of the screen on / off and brightness
control animations which are able to take advantage of
framework features like properties, ObjectAnimator
and Choreographer.

The screen on / off animation is now the responsibility
of the power manager (instead of surface flinger). This change
makes it much easier to ensure that the animation is properly
coordinated with other power state changes and eliminates
the cause of race conditions in the older implementation.

The because of the userActivity() function has been changed
so that it never wakes the device from sleep. This change
removes ambiguity around forcing or disabling user activity
for various purposes. To wake the device, use wakeUp().
To put it to sleep, use goToSleep(). Simple.

The power manager service interface and API has been significantly
simplified and consolidated. Also fixed some inconsistencies
related to how the minimum and maximum screen brightness setting
was presented in brightness control widgets and enforced behind
the scenes.

At present the following features are implemented:

- Wake locks.
- User activity.
- Wake up / go to sleep.
- Power state broadcasts.
- Battery stats and event log notifications.
- Dreams.
- Proximity screen off.
- Animated screen on / off transitions.
- Auto-dimming.
- Auto-brightness control for the screen backlight with
different timeouts for ramping up versus ramping down.
- Auto-on when plugged or unplugged.
- Stay on when plugged.
- Device administration maximum user activity timeout.
- Application controlled brightness via window manager.

The following features are not yet implemented:

- Reduced user activity timeout for the key guard.
- Reduced user activity timeout for the phone application.
- Coordinating screen on barriers with the window manager.
- Preventing auto-rotation during power state changes.
- Auto-brightness adjustment setting (feature was disabled
in previous version of the power manager service pending
an improved UI design so leaving it out for now).
- Interpolated brightness control (a proposed new scheme
for more compactly specifying auto-brightness levels
in config.xml).
- Button / keyboard backlight control.
- Change window manager to associated WorkSource with
KEEP_SCREEN_ON_FLAG wake lock instead of talking
directly to the battery stats service.
- Optionally support animating screen brightness when
turning on/off instead of playing electron beam animation
(config_animateScreenLights).

Change-Id: I1d7a52e98f0449f76d70bf421f6a7f245957d1d7
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
756220bd1912535840388a6743830d2e59ad4964 15-Aug-2012 Dianne Hackborn <hackbod@google.com> Add API to create new contexts with custom configurations.

This allows you to, say, make a Context whose configuration
is set to a different density than the actual density of the device.

The main API is Context.createConfigurationContext(). There is
also a new API on ContextThemeWrapper that allows you to apply
an override context before its resources are retrieved, which
addresses some feature requests from developers to be able to
customize the context their app is running in.

Change-Id: I88364986660088521e24b567e2fda22fb7042819
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
7d19e0242faac8017033dabb872cdf1542fa184c 08-Aug-2012 Dianne Hackborn <hackbod@google.com> More mult-user API work.

- You can now use android:singleUser with receivers and providers.
- New API to send ordered broadcasts as a user.
- New Process.myUserHandle() API.

For now I am trying out "user handle" as the name for the numbers
representing users.

Change-Id: I754c713ab172494bb4251bc7a37a17324a2e235e
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
758143ecfedbe08cc6c4fed0ad8ad7a854194ca4 07-Aug-2012 Svetoslav Ganov <svetoslavganov@google.com> Window position not reported if the window is not moved.

1.If a window is shown but never moved the window window
is never notified for its current location. Therefore,
accessibility nodes do not contain correct bounds in
screen coordinates.

bug:6926295

Change-Id: I7df18b095d33ecafffced75aba9e4f4693b0c393
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
b49a065d9904567624a088857ecd1626fad91511 04-Aug-2012 Craig Mautner <cmautner@google.com> Fix build with density methods.

Change-Id: I95c0a4f12db40f200a3a004394763beaef904232
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
437a0fbd57662e1d9d260da6f62ff83da2769a7e 02-Aug-2012 Craig Mautner <cmautner@google.com> Merge "Introduce multiple displays with DisplayContent." into jb-mr1-dev
59c009776dae5ccbdfb93d7151ff2065ca049dc3 30-Jul-2012 Craig Mautner <cmautner@google.com> Introduce multiple displays with DisplayContent.

Fix a couple of bugs that turned up.
Remove touch/focus from display. Add iterators for access.
Respond to comments. Remove TODOs, and some deviceId parameters.

Change-Id: Idcdb4f1979aa7b14634d450fd0333d6eff26994d
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
908aecc3a63c5520d5b11da14a9383f885b7d126 01-Aug-2012 Dianne Hackborn <hackbod@google.com> Start moving away from DisplayMetrics.DENSITY_DEVICE.

This puts in most of the infrastructure needed to allow us to
switch between different densities at run time. The main remaining
uses of the global are to initialize the Bitmap object (not sure
what to do about that since it doesn't have anything passed in
the constructor to get this information from), and being able to
load drawables if we need a different density than what was preloaded
by zygote.

Change-Id: Ifdbfd6b7a5c59e6aa22e63b95b78d96af3d96848
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
39df578acddb739d7608e458533904bf5814c0da 27-Jul-2012 Craig Mautner <cmautner@google.com> Fix build.

Change-Id: I52bbebae38912a4fb71c96174b3d4d8eb6be10c1
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
aa871b0ff0fb38112a1693e80e1146cecc5db21d 26-Jul-2012 Jeff Brown <jeffbrown@google.com> Fix build.

Change-Id: Ife2fd58447205407e41ce3d27e28a705b744bede
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
fa25bf5382467b1018bd9af7f1cb30a23d7d59f7 24-Jul-2012 Jeff Brown <jeffbrown@google.com> Add display manager skeleton.

The purpose of this change is to remove direct reliance on
SurfaceFlinger for describing the size and characteristics of
displays.

This patch also starts to make a distinction between logical displays
and physical display devices. Currently, the window manager owns
the concept of a logical display whereas the new display
manager owns the concept of a physical display device.

Change-Id: I7e0761f83f033be6c06fd1041280c21500bcabc0
ridge/src/android/view/Display_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
c9c9a48e7bafae63cb35a9aa69255e80aba83988 16-Jul-2012 Svetoslav Ganov <svetoslavganov@google.com> Removing a workaround for incorrect window position on window move.

1. The window manager was not notifying a window when the latter
has been moved. This was causing incorrect coordinates of the
nodes reported to accessibility services. To workaround that
we have carried the correct window location when making a
call from the accessibility layer into a window. Now the
window manager notifies the window when it is moved and the
workaround is no longer needed. This change takes it out.

2. The left and right in the attach info were not updated properly
after a report that the window has moved.

3. The accessibility manager service was calling directly methods
on the window manager service without going through the interface
of the latter. This leads to unnecessary coupling and in the
long rung increases system complexity and reduces maintability.

bug:6623031

Change-Id: Iacb734b1bf337a47fad02c827ece45bb2f53a79d
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
54059cd38de24bbffc2525b56955535df73bf1eb 11-Jul-2012 Xavier Ducrohet <xav@android.com> am 15c15eaa: Merge "Replace LruCache implementation for layoutlib. do not merge." into jb-dev

* commit '15c15eaac51c0c375d18fb70cd1bd066d87b034e':
Replace LruCache implementation for layoutlib. do not merge.
105b78bb310a75dc44e0baa49fe7d20341cc0f15 11-Jul-2012 Craig Mautner <cmautner@google.com> Add missing interface method.

Fix broken build.

Change-Id: I6644df218e11a35330a985bdcb9ace33723330f5
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
54a18ef7ad9da65a95f4d383952ae6268f8a4f34 10-Jul-2012 Xavier Ducrohet <xav@android.com> Replace LruCache implementation for layoutlib. do not merge.

The android version depends on a custom version of LinkedHashMap
which is not present on desktop VMs. This new implementation is done
in a way that minimizes the difference between the two.

Also some minor fixes.

(cherry picked from commit 01b6c755dbcf24e71192dc44757e2eea2a426091)

Change-Id: Idc7bca820e472e281a3024a5b610fd55606cf428
ridge/src/android/util/LruCache.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
01b6c755dbcf24e71192dc44757e2eea2a426091 10-Jul-2012 Xavier Ducrohet <xav@android.com> Replace LruCache implementation for layoutlib.

The android version depends on a custom version of LinkedHashMap
which is not present on desktop VMs. This new implementation is done
in a way that minimizes the difference between the two.

Also some minor fixes.

Change-Id: Ib27b0419f9d0e6ba4d4abb26b2ccd968af59eba8
ridge/src/android/util/LruCache.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
a4b7f2f75e7803193429ec1179fb5e2eb1c6fbda 21-May-2012 Dianne Hackborn <hackbod@google.com> Use two fingers to work some magic...

Change-Id: Ibcb3dbd3d158c22da8277e544d81fb47eadccd49
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
752e7b3bf624f72261bb789c5a6e8d34b419c8f1 20-Jun-2012 Xavier Ducrohet <xav@android.com> am 58a8d8d2: am 0e302bc8: Merge "Disable debug output in SDK layoutlib." into jb-dev

* commit '58a8d8d2d4b15cd4abf010680181359823ebfda4':
Disable debug output in SDK layoutlib.
58a8d8d2d4b15cd4abf010680181359823ebfda4 20-Jun-2012 Xavier Ducrohet <xav@android.com> am 0e302bc8: Merge "Disable debug output in SDK layoutlib." into jb-dev

* commit '0e302bc884fa4b25eb391d625f2fb0eddc25d9b7':
Disable debug output in SDK layoutlib.
4d7f301f94b9d2dda0ef109e9991ad2d77442f75 20-Jun-2012 Xavier Ducrohet <xav@android.com> Disable debug output in SDK layoutlib.

Bug: 6697442

Change-Id: I9741761342ea220c158aa124089430b0db80bf7e
ridge/src/com/android/layoutlib/bridge/Bridge.java
89e1ad05e7cca990f46d5b13b8b5892de1736faa 14-Jun-2012 Raphael Moll <raphael@google.com> am bce1011d: resolved conflicts for merge of 8cf489c1 to jb-dev-plus-aosp

* commit 'bce1011dd2a371c587d2e39ad8c3d446b63049d0':
Layoutlib Create: Find dependencies.
bce1011dd2a371c587d2e39ad8c3d446b63049d0 14-Jun-2012 Raphael Moll <raphael@google.com> resolved conflicts for merge of 8cf489c1 to jb-dev-plus-aosp

Change-Id: I06608e3c122b8f321429d457c51aa2213dd238b4
4306096a4351030cab4ea413b5e87460b60a84bf 13-Jun-2012 Raphael Moll <ralf@android.com> Layoutlib Create: Find dependencies.

Usage: layoutlib_create --list-deps /path/to/layoutlib.jar

Prints:
- all classes found in the Jar and the types they use (the dependencies).
- all the dependencies missing from the Jar and what uses them.

Change-Id: I8b2674df127e1494feed7a653282e88e4d2f5494
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/DependencyFinder.java
reate/src/com/android/tools/layoutlib/create/Log.java
reate/src/com/android/tools/layoutlib/create/Main.java
71ebf2830494e353dee797424bd2ebbc4fea2ff3 04-Jun-2012 Dianne Hackborn <hackbod@google.com> am fcd73824: am dd251cab: Merge "Fix build." into jb-dev

* commit 'fcd738240a7d716e21721514202caa5bfb2dcb98':
Fix build.
fcd738240a7d716e21721514202caa5bfb2dcb98 04-Jun-2012 Dianne Hackborn <hackbod@google.com> am dd251cab: Merge "Fix build." into jb-dev

* commit 'dd251cab5b6e5b590cc0aeae8be8f885a7794e72':
Fix build.
bb47cf66ec72adff895d0e8b94c26f5d438be49a 04-Jun-2012 Dianne Hackborn <hackbod@google.com> Fix build.

Change-Id: I41415fed99d98406bc033289428bde59475c2917
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
ce783749b191a58e4fed9a397066376915c1db65 30-May-2012 Dianne Hackborn <hackbod@google.com> am f3b4c93e: am ae5811c7: Merge "Fix (mostly) issue #5109947: Race condition between retrieving a..." into jb-dev

* commit 'f3b4c93e0da9af2db9e16864faa734cf70fecfe3':
Fix (mostly) issue #5109947: Race condition between retrieving a...
f3b4c93e0da9af2db9e16864faa734cf70fecfe3 30-May-2012 Dianne Hackborn <hackbod@google.com> am ae5811c7: Merge "Fix (mostly) issue #5109947: Race condition between retrieving a..." into jb-dev

* commit 'ae5811c71405878b09eace395ec2b28e54eeb427':
Fix (mostly) issue #5109947: Race condition between retrieving a...
6ae8d1821822296df0606c9cd1c46708cc21cb58 23-May-2012 Dianne Hackborn <hackbod@google.com> Fix (mostly) issue #5109947: Race condition between retrieving a...

...content provider and updating its oom adj

This introduces the concept of an "unstable" reference on a content
provider. When holding such a reference (and no normal stable ref),
the content provider dying will not cause the client process to be
killed.

This is used in ContentResolver.query(), .openAssetFileDescriptor(),
and .openTypedAssetFileDescriptor() to first access the provider
with an unstable reference, and if at the point of calling into the
provider we find it is dead then acquiring a new stable reference
and doing the operation again. Thus if the provider process dies
at any point until we get the result back, our own process will not
be killed and we can safely retry the operation.

Arguably there is still the potential for a race -- if somehow the
provider is killed way late by the OOM killer after the query or
open has returned -- but this should now be *extremely* unlikely.
We also continue to have the issue with the other calls, but these
are much less critical, and the same model can't be used there (we
wouldn't want to execute two insert operations for example).

The implementation of this required some significant changes to the
underlying plumbing of content providers, now keeping track of the
two different reference counts, and managing them appropriately. To
facilitate this, the activity manager now has a formal connection
object for a client reference on a content provider, which hands to
the application when opening the provider.

These changes have allowed a lot of the code to be cleaned up and
subtle issues closed. For example, when a process is crashing, we
now have a much better idea of the state of content provider clients
(olding a stable ref, unstable ref, or waiting for it to launch), so
that we can correctly handle each of these.

The client side code is also a fair amount cleaner, though in the
future there is more than should be done. In particular, the two
ProviderClientRecord and ProviderRefCount classes should be combined
into one, part of which is exposed to the ContentResolver internal
API as a reference on a content provider with methods for updating
reference counts and such. Some day we'll do that.

Change-Id: I87b10d1b67573ab899e09ca428f1b556fd669c8c
ridge/src/com/android/layoutlib/bridge/android/BridgeContentResolver.java
38e34874a89b6e71464bfa3e89480252000765ad 19-May-2012 Jean-Baptiste Queru <jbq@google.com> am 2a9b85d7: am c0f17383: Merge "Move kxml2 to prebuilts/misc"

* commit '2a9b85d7ccdd3b8e6be90454cdcb4be3b032cd64':
Move kxml2 to prebuilts/misc
e4b1c08abf88c55e71c0afab4c3c853d96d5d26c 15-May-2012 Dianne Hackborn <hackbod@google.com> am 095c2d31: am 4286d6d1: Fix build.

* commit '095c2d315d3bdf4cdb61439d427413c0bd7796e1':
Fix build.
6917b2a10d9b701282fbfb85be48eeb7e7877882 15-May-2012 Dianne Hackborn <hackbod@google.com> am 2da87ec3: am 2a7a6ca0: Merge "Implement new window cropping." into jb-dev

* commit '2da87ec32e72c2c25998e2444155c00074cfbd40':
Implement new window cropping.
4286d6d115385391b75db8e6c4e397008ef9b3db 14-May-2012 Dianne Hackborn <hackbod@google.com> Fix build.

Change-Id: I53263d509559c70100cd78ad49f225f0dafd8891
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
85afd1b6f871d471fdff1980134676a5f1690525 13-May-2012 Dianne Hackborn <hackbod@google.com> Implement new window cropping.

The window manager now performs the crop internally, evaluating
it every animation from, to be able to update it along with
the surface position.

Change-Id: I960a2161b9defb6fba4840fa35aee4e411c39b32
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
e5c511a1cceffd17b8edb355f2c19a7498a5e229 10-May-2012 Michael Jurka <mikejurka@google.com> am bf1b5fa9: am 421dceb0: Merge "Making transition out of recents look better" into jb-dev

* commit 'bf1b5fa944158044a595706924b935b5577ec0f0':
Making transition out of recents look better
58d4f2e36f4091272c40d59fb3b7b80ee792ba57 10-May-2012 Dianne Hackborn <hackbod@google.com> am e2e03913: am dd79ae6b: Merge "Add infrastructure for accessing "unstable" content providers." into jb-dev

* commit 'e2e0391389fce1a9fd9d5c5442ba1901b6d96211':
Add infrastructure for accessing "unstable" content providers.
421dceb0a4fd8f20349a0de277f82b56e71cb90b 10-May-2012 Michael Jurka <mikejurka@google.com> Merge "Making transition out of recents look better" into jb-dev
21385cd83d7d7938b57a4acbaa236dd4c7804ed4 03-May-2012 Michael Jurka <mikejurka@google.com> Making transition out of recents look better

- Fading out recents first, then scaling up app
thumbnail
- Fade Recents out over 130ms
- Delay the window animation for 200ms first,
then animate for 200ms (previously we didn't delay
and then animated for 300ms)

Bug: 6390075

Change-Id: Ia8c753bf7ee03d2acef6eb2772b28d88fe10a682
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
652b6d1e591f6684cda4b93d4712920f287991b4 10-May-2012 Dianne Hackborn <hackbod@google.com> Add infrastructure for accessing "unstable" content providers.

We have an API and some stuff that purports to this, but no real
implementation yet.

Change-Id: I93555440014a50fdf79fa3f65318d90fb82265b4
ridge/src/com/android/layoutlib/bridge/android/BridgeContentResolver.java
30600306592b571a455cfbc89e609522a5a158ab 09-May-2012 Xavier Ducrohet <xav@android.com> am 50e657e6: am 024d3b23: Merge "Add missing native method to Canvas_Delegate." into jb-dev

* commit '50e657e66ce6663fdff929cd365a3daf87cef9ae':
Add missing native method to Canvas_Delegate.
8fd851709fae7bb48aa513ebcf2285a8cdb28dce 09-May-2012 Jeff Brown <jeffbrown@google.com> am a394efa3: am 947f1c8d: Merge "Move CancellationSignal to android.os package." into jb-dev

* commit 'a394efa33531ce36c432872ec56ad0c93a9999e7':
Move CancellationSignal to android.os package.
f18c68b83f4919cf903e249da056acb470b683af 09-May-2012 Xavier Ducrohet <xav@android.com> Add missing native method to Canvas_Delegate.

Change-Id: I86288c942004e5489eacc43ba5e112cf56f94487
ridge/src/android/graphics/Canvas_Delegate.java
05b50149ab3b3da19343155fa591eb5b47f246b8 09-May-2012 Xavier Ducrohet <xav@android.com> Fix classpath of eclipse projects for layoutlib.

This is due to the prebuilts reorg.

Change-Id: I6afa82d7ac64286aa89b4b1cfb4af59e4c7000ce
ridge/.classpath
ridge/tests/.classpath
a7771df3696954f0e279407e8894a916a7cb26cc 08-May-2012 Jeff Brown <jeffbrown@google.com> Move CancellationSignal to android.os package.

Bug: 6427830
Change-Id: I39451bb1e1d4a8d976ed1c671234f0c8c61658dd
ridge/src/com/android/layoutlib/bridge/android/BridgeContentProvider.java
bda124453d58d8b55d9026e4c5e7ae8c804e995a 01-May-2012 Jean-Baptiste Queru <jbq@google.com> Move kxml2 to prebuilts/misc

Change-Id: Ie4b45d2073f26d8313843f9860cf658e288c850b
ridge/.classpath
ridge/tests/.classpath
5c58de3a523a384c47b0b1e0f5dd9728a74cd9f7 29-Apr-2012 Dianne Hackborn <hackbod@google.com> Add system insets to windows.

This will be used to determine which parts of a window a completely
hidden by system UI elements (status bar, nav bar, system bar) so
that they can be clipped out from rendering.

Change-Id: I2c6c6ac67dbdfeed82d2c089ef806fb483165bd9
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
79c6346100b555a8a3d51b3b1c34dbbe99305b9a 28-Apr-2012 Dianne Hackborn <hackbod@google.com> Merge "When a window is first shown only draw once while animating." into jb-dev
96ff709fe25632f6e27fa4c13c7d75dbbcfa38e0 28-Apr-2012 Jeff Brown <jeffbrown@google.com> Work around build break in layoutlib.

Bug: 6413563
Change-Id: Ia7101fba87f3784fd8159c75e4289f642913d099
ridge/src/android/animation/AnimationThread.java
12d3a94397c33fdb773a1eaaaa13cab80bf0c571 27-Apr-2012 Dianne Hackborn <hackbod@google.com> When a window is first shown only draw once while animating.

On some hardware allocating a new graphics buffer is quite
expensive, which blocks updates to the UI. This can cause
glitches when performing window animations.

To reduce these glitches, the view hierarchy will now only
allow itself to be drawn once if its window is being shown
while the window manager is animating, not resuming draws
until it is told that the animation is done.

Change-Id: Ie15192f6fddbd0931b022a72c76ddd55ca266d84
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
cb092e2b7fa46477651c8b8733d50307b0de9d6d 24-Apr-2012 Xavier Ducrohet <xav@android.com> Fix Paint_Delegate with missing native method.

Change-Id: I39638dcb323fdd1ec3cb58dcad05757145d09026
ridge/src/android/graphics/Paint_Delegate.java
reate/.classpath
68c33ca7ce1f142eb5f1e1f90118aeba4c9db1e3 19-Apr-2012 Dianne Hackborn <hackbod@google.com> Add new API to find smallest/largest screen size.

Change-Id: I790801fceaf84ee2e3b1c9d32828285ad3231d0e
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
eabfb3a36e9469c5e219f92b39b7200104319185 17-Apr-2012 Dianne Hackborn <hackbod@google.com> Add new scale-up window manager animation.

Like zoom thumbnail, but without the thumbnail.

Change-Id: I9486dd204398b87c9e70ff0d05d03f4a22449cd6
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
ac14351e16e1258f1cb54e2bf772b8be004eb2b8 06-Apr-2012 Jeff Brown <jeffbrown@google.com> Move some APIs from window manager to input manager.

Simplified input injection API down to just one call.

Removed all input state reading API. It was only used by the
window manager policy and required a permission that applications
could not obtain. READ_INPUT_STATE is now unused and deprecated.

Change-Id: I41278141586ddee9468cae0fb59ff0dced6cbc00
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
5459c43b83c3a9d0406f01deffaadd2ef458518c 05-Apr-2012 Dianne Hackborn <hackbod@google.com> Merge "Clean up status bar, system bar, navigation bar management."
f87d19621dc2a30232bba1f51862a0b671eb9729 04-Apr-2012 Dianne Hackborn <hackbod@google.com> Clean up status bar, system bar, navigation bar management.

The status bar and navigation bar are two completely separate
elements, with their own semantics. The system bar now classifies
itself as a navigation bar, since that is really how it behaves.

This required rewriting the HDMI resizing code, so that it is
all done by PhoneWindowManager since that is what is responsible
for the size of the navigation bar (and thus now system bar). This
actually gets rid of a fair amount of code, and means we can also
do the same thing for a pure navigation bar.

Likewise the system bar now has the navigation bar ability to be
hidden when requested by system UI flags. To get the behavior
we want on Xoom, we only allow the nav bar to be hidden when it
will help provide a better aspect ratio for showing widescreen
videos.

Finally the nav/system bar now animates when hidden and shown.

Change-Id: Ie927154b68376a0b61802f99171ff56b8da92e7a
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
ec4a50428d5f26a22df3edaf7e5b08f41d5cb54b 04-Apr-2012 Amith Yamasani <yamasani@google.com> Embed layout padding in nine patch images

- Added a new custom PNG chunk that carries the layout padding ints.
- Extract the padding ticks from .9.png images and store in the chunk.
- Load the padding information at runtime into Bitmap and NinePatchDrawable.

- The new chunk is ordered first so that it doesn't cause a problem in older
versions of the platform.

Bug: 6087201

Change-Id: I5de46167a1d44b3ec21065b0c165e594b1dc8399
ridge/src/android/graphics/Bitmap_Delegate.java
fbd0509f4746ae1ebca4ab91fc55ebd234ba9d3d 24-Mar-2012 Xavier Ducrohet <xav@android.com> Merge "Add Delegate for ViewRootImpl#isInTouchMode to prevent IPC call in Eclipse."
22f700a1b8fb9d2ac7b261e30a46a040928c23bc 24-Mar-2012 Xavier Ducrohet <xav@android.com> Add Delegate for ViewRootImpl#isInTouchMode to prevent IPC call in Eclipse.

Also fix some new/removed method from BitmapFactory.

Change-Id: I606bd8bee6ff1e2c6c9472b4672175bfdaff45de
ridge/src/android/graphics/BitmapFactory_Delegate.java
ridge/src/android/view/ViewRootImpl_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
8078d8c8a282ca81344febe7256f63b1e805e3aa 20-Mar-2012 Dianne Hackborn <hackbod@google.com> Add new thumbnail animation.

Use it for recent tasks switching.

Not perfect yet by far, but something.

Also fix issue #6186758: Twitter crashes after tapping on a tweet on JRM75D

Change-Id: I49bf6c94aafde875ac652dedaf96d6c08cc9e7d2
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
5d701eddcf7f4abd5867ec3bf2091916d5ebbdf1 16-Mar-2012 Xavier Ducrohet <xav@android.com> LayoutLib: Properly support attr ns when used in styles.

Change-Id: I885864588928589d7c9a34b94339917c5be47fa5
ridge/src/android/content/res/BridgeResources.java
ridge/src/android/content/res/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
a421f6c0ba8c354e2a81830e6402654bbf732780 22-Feb-2012 Xavier Ducrohet <xav@android.com> Fix sdk layout rendering in JB.

Since JB, com.android.internal.R does not contain all the resources,
instead only the ones that are accessed through Java.
This means we need to dynamically generate IDs for resources that are
private and only accessed from other XML resources. This is done
through the DynamicIdMap class.

Also add a PolicyManager and a PowerManager since those are now
needed by ViewRootImpl?!?

Change-Id: If2ae8ad79502fa084d852664a44aefd46e01aec6
ridge/src/com/android/internal/policy/PolicyManager.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgePowerManager.java
ridge/src/com/android/layoutlib/bridge/util/DynamicIdMap.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
a4972e951bf2bdb7afdafee95b3ab0c15b8bacae 14-Mar-2012 Dianne Hackborn <hackbod@google.com> Add new "options" argument to all startActivity APIs.

This will be used to allow new features to be requested... such as,
say, a special kind of animation. Right now there are no options
defined.

Change-Id: I4eb6f27275cdd4bf186f6da316ab93a2372ad4b7
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
bb9908b828a8cfd5965553be66faa6af89973697 08-Mar-2012 Romain Guy <romainguy@google.com> Dispatch screen state change events to Views
Bug #6120957

Using this new callback, views can interrupt and resume their
animations or other periodic tasks based on the current state
of the display.

Change-Id: I398f4abd421e9c5f207107bf1009a7b92cf45daa
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
e0cf12fc4d5c9de464f899522a9e2ca77dbb865a 08-Mar-2012 Romain Guy <romainguy@google.com> Fix the build

Change-Id: Ia86ba9b1c432ab3f8107557e95b12c9eedc4d9f7
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
aeb17f17ffd8d3384dfed223e40010b4abac4cc5 27-Feb-2012 Xavier Ducrohet <xav@android.com> am 77fdcbff: am f038868d: am 44e63a21: Support rendering layout that use the new res-auto namespace.

* commit '77fdcbff8b458dd3430b38e60aee1a28ca92a738':
Support rendering layout that use the new res-auto namespace.
77fdcbff8b458dd3430b38e60aee1a28ca92a738 25-Feb-2012 Xavier Ducrohet <xav@android.com> am f038868d: am 44e63a21: Support rendering layout that use the new res-auto namespace.

* commit 'f038868d74af534effceaa8f1d932f9576f4f647':
Support rendering layout that use the new res-auto namespace.
44e63a218cf8fcab9b4418246a512bd0b0c9157b 25-Feb-2012 Xavier Ducrohet <xav@android.com> Support rendering layout that use the new res-auto namespace.

Change-Id: I9b89c965dc8c9458e74c15ab8ff765e16e1b32c2
ridge/src/com/android/layoutlib/bridge/BridgeConstants.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
cb581bbe2e1fd2a55b70a516fbaac53da0108c28 25-Feb-2012 Dianne Hackborn <hackbod@google.com> resolved conflicts for merge of 34706a4c to master

Change-Id: I4dd24f3b917aa7e3d2c4b0fae51e951dfcf88ba8
34706a4c81b82319a79a1b5ffa9084ed92a6e284 25-Feb-2012 Dianne Hackborn <hackbod@google.com> am e65a9ab1: am 5786f5cf: Merge "Fix build." into ics-mr1

* commit 'e65a9ab1ea42d1f6190bee844ee666b7910d71ef':
Fix build.
b69b2c01b4de8a161d6c39e7428ffd25c36eb8cc 25-Feb-2012 Dianne Hackborn <hackbod@google.com> Fix build.

Change-Id: Id3262bff0df598ecc81a4346dee9febd3aaa60c9
ridge/src/com/android/layoutlib/bridge/android/BridgeIInputMethodManager.java
5e6c2194774eb5449889f3a9f984897bf0f06b1c 23-Feb-2012 Xavier Ducrohet <xav@android.com> am f8e737cb: am 22701ec5: am 503247f2: Merge "Make sure resource references are resolved." into ics-mr1

* commit 'f8e737cb61ab86b90ec318591fbcfec40fac63cf':
Make sure resource references are resolved.
f8e737cb61ab86b90ec318591fbcfec40fac63cf 22-Feb-2012 Xavier Ducrohet <xav@android.com> am 22701ec5: am 503247f2: Merge "Make sure resource references are resolved." into ics-mr1

* commit '22701ec5b11f6138e6298814fff5f09da82df144':
Make sure resource references are resolved.
c3f979f6fecb8b46e9315fddb2a1f344bf1f1447 21-Feb-2012 Xavier Ducrohet <xav@android.com> Make sure resource references are resolved.

XmlPullAttribute can query for attributes and return them in a given
format. We need to make sure they are first resolved before
trying to convert them to int/float/boolean/...

Change-Id: I2aaced022a0382e501978c396e49d6191d53bdc8
ridge/src/android/util/BridgeXmlPullAttributes.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
a175a5b7ea3682cb58cca7f9726d0b8171cd549d 16-Feb-2012 Jeff Brown <jeffbrown@google.com> Encapsulate the ViewRootImpl's handler.

This change makes it much easier to make sense of the messages that
get posted to the ViewRootImpl's handler by encapsulating their point
of dispatch within the ViewRootImpl itself.

As part of this change, the View.AttachInfo now carries a reference
to the ViewRootImpl itself, which simplifies some code that used
to try to find the ViewRootImpl by getting the root view's parent.

In principle, it might have been nice to hide the ViewRootImpl from
the View hierarchy but in practice the two were coupled in many ways.

Change-Id: I51ebccdf5f8c8c505cd6f17cdf594174d041dc54
ridge/src/android/view/AttachInfo_Accessor.java
688bd47fccf1a1373e6287bc49b5b33fad12b7f3 09-Feb-2012 satok <satok@google.com> Add an api to switch to the next IME and subtype

Bug: 5975302

Change-Id: I48aa4220159c65f456d61a324efcdf0a1ceec91c
ridge/src/com/android/layoutlib/bridge/android/BridgeIInputMethodManager.java
c8a0b8e6bccc604d3670d72cab0691ab6b8302c1 07-Feb-2012 Xavier Ducrohet <xav@android.com> Fix a setBackgroundDrawable in layoutlib.

Change-Id: Id5f3ec8cc6863fa5929743ef4014c331633efce9
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
331bb0c393d5e2ea2485102dcddbb8c2d42654d2 06-Feb-2012 Xavier Ducrohet <xav@android.com> Setup ActionBars in layoutlib the same way the platform does it. do not merge.

Instead of using a simple ImageView for the icon, this uses the platform
layout/action_bar_home which uses a custom class to position and resize
the icon (and also supports the Up icon that we don't yet support).

This ensures that the icon is properly positionned and sized like
on devices.

(cherry picked from commit 7396348dfcfb45b7ad055f4c18cabbe5e8270d26)

Change-Id: Ifd3bc318089b70ba843519523e366e59d434e919
ridge/resources/bars/action_bar.xml
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/FakeActionBar.java
7396348dfcfb45b7ad055f4c18cabbe5e8270d26 06-Feb-2012 Xavier Ducrohet <xav@android.com> Setup ActionBars in layoutlib the same way the platform does it.

Instead of using a simple ImageView for the icon, this uses the platform
layout/action_bar_home which uses a custom class to position and resize
the icon (and also supports the Up icon that we don't yet support).

This ensures that the icon is properly positionned and sized like
on devices.

Change-Id: I57432afa82d257bb043247001320b368045d7f55
ridge/resources/bars/action_bar.xml
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/FakeActionBar.java
ec99f609cc2db862db307f7ba56a2400c58403a0 03-Feb-2012 Jeff Brown <jeffbrown@google.com> Merge "Rename CancellationSignal using preferred spelling."
4c1241df8f8b7fd5ec3dff6c7e0f66271248e76e 03-Feb-2012 Jeff Brown <jeffbrown@google.com> Rename CancellationSignal using preferred spelling.

Bug: 5943637
Change-Id: I12a339f285f4db58e79acb5fd8ec2fc1acda5265
ridge/src/com/android/layoutlib/bridge/android/BridgeContentProvider.java
46d43ccfd8cef75b4315828073c094cf1efb05ff 03-Feb-2012 Xavier Ducrohet <xav@android.com> Make Layoutlib compile on Java 6.

Change-Id: Ic8f0e321c6c218de83664fc01f253a07fa80852c
ridge/.settings/README.txt
ridge/.settings/org.eclipse.jdt.core.prefs
ridge/src/android/animation/AnimationThread.java
ridge/src/android/graphics/BitmapShader_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Gradient_Delegate.java
ridge/src/android/graphics/LinearGradient_Delegate.java
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/android/graphics/RadialGradient_Delegate.java
ridge/src/android/graphics/SweepGradient_Delegate.java
ridge/src/android/view/SurfaceView.java
ridge/src/com/android/internal/textservice/ITextServicesManager_Stub_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeIInputMethodManager.java
ridge/src/com/android/layoutlib/bridge/android/BridgeLayoutParamsMapAttributes.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
ridge/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParser.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/binding/FakeAdapter.java
ridge/src/com/android/layoutlib/bridge/impl/binding/FakeExpandableAdapter.java
reate/.settings/README.txt
reate/.settings/org.eclipse.jdt.core.prefs
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/MethodAdapter.java
reate/tests/com/android/tools/layoutlib/create/AsmGeneratorTest.java
75ea64fc54f328d37b115cfb1ded1e45c30380ed 26-Jan-2012 Jeff Brown <jeffbrown@google.com> Implement a cancelation mechanism for queries.

Added new API to enable cancelation of SQLite and content provider
queries by means of a CancelationSignal object. The application
creates a CancelationSignal object and passes it as an argument
to the query. The cancelation signal can then be used to cancel
the query while it is executing.

If the cancelation signal is raised before the query is executed,
then it is immediately terminated.

Change-Id: If2c76e9a7e56ea5e98768b6d4f225f0a1ca61c61
ridge/src/com/android/layoutlib/bridge/android/BridgeContentProvider.java
d3fe9abfb9a6a21a18abde6a98dceb423c04ebef 21-Jan-2012 Jim Miller <jaggies@google.com> am ab9601cd: am 230a7092: Merge "Fix 5863053: Add method to lock screen immediately." into ics-mr1

* commit 'ab9601cdbb95ae94088750eff9a926a572c1a4d6':
Fix 5863053: Add method to lock screen immediately.
d2f0dcd182fbc0423d206919e81f3845fb9b8155 20-Jan-2012 Romain Guy <romainguy@google.com> Merge "Remove unused code"
68fc1dfce050f1406f751e71cadd1b9fdb0f825c 20-Jan-2012 Romain Guy <romainguy@google.com> Remove unused code

Change-Id: Ife0a43f3cfe64a1e74401b10bf74d37cbeefb5af
ridge/src/android/graphics/Paint_Delegate.java
5bf2802ad9de237ccc014489dd36ff4baadadfaa 19-Jan-2012 Xavier Ducrohet <xav@android.com> Fix broken drawCircle LayoutLib.

Change-Id: I5e23bbe0119e385fa2f77854a8f88128351d3759
ridge/src/android/graphics/Canvas_Delegate.java
93c518e4f8abd98f87cda1712b30a5a86cfa60dd 18-Jan-2012 Jim Miller <jaggies@google.com> Fix 5863053: Add method to lock screen immediately.

This fixes a bug where the device fails to lock when DevicePolicyManagerService
requests the device to be locked and the screen was off because the user hit
the power button.

The change allows DPMS to directly invoke screen lock, bypasssing the screen state.

Change-Id: Iecdda6fc61e9c519119de495be23c69c3b983921
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
e98ae0a050d6ce4b3e2aec7c070a87922086c256 06-Dec-2011 Tor Norbye <tnorbye@google.com> Merge "Upgrade layoutlib generation code to use ASM 4.0"
96e942dabeeaaa9ab6df3a870668c6fe53d930da 01-Dec-2011 Jeff Brown <jeffbrown@google.com> Use a Choreographer to schedule animation and drawing.

Both animations and drawing need to march to the beat of
the same drum, but the animation system doesn't know
abgout the view system and vice-versa so neither one
can drive the other.

We introduce the Choreographer as a drummer to keep
everyone in time and ensure a magnificent performance.

This patch enabled VSync based animations and drawing by
default. Two system properties are provided for testing
purposes to control the behavior.

"debug.choreographer.vsync": Enables vsync based animation
timing. Defaults to true. When false, animations are
timed by posting delayed messages to a message queue in
the same way they used to be before this patch.

"debug.choreographer.animdraw": Enables the use of the animation
timer to drive drawing such that drawing is synchronized with
animations (in other words, with vsync or the timing loop).
Defaults to true. When false, layout traversals and drawing
are posted to the message queue for execution without any delay or
synchronization in the same way they used to be before this patch.

Stubbed out part of the layoutlib animation code because it
depends on the old timing loop (opened bug 5712395)

Change-Id: I186d9518648e89bc3e809e393e9a9148bbbecc4d
ridge/src/android/animation/AnimationThread.java
f7270ba9083e5b0069f73fc88aec439ab439275b 05-Dec-2011 Tor Norbye <tnorbye@google.com> Upgrade layoutlib generation code to use ASM 4.0

Change-Id: I46b3854a05677dc7cadd217efb001dbb25631fbd
reate/.classpath
reate/Android.mk
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/ClassHasNativeVisitor.java
reate/src/com/android/tools/layoutlib/create/DelegateClassAdapter.java
reate/src/com/android/tools/layoutlib/create/DelegateMethodAdapter2.java
reate/src/com/android/tools/layoutlib/create/RenameClassAdapter.java
reate/src/com/android/tools/layoutlib/create/StubMethodAdapter.java
reate/src/com/android/tools/layoutlib/create/TransformClassAdapter.java
c0b7f65ae0594e19d1272e5caf2d83638041d19c 29-Nov-2011 Dianne Hackborn <hackbod@google.com> am 496f6e2a: am b54980d1: Merge "Fix issue #5588689: Black camera preview after coming back from gmail" into ics-mr1

* commit '496f6e2ad656c5bb8a277e191554d16abd290b58':
Fix issue #5588689: Black camera preview after coming back from gmail
6d05fd3c795088ac60f86382df5a66d631e8a0cb 19-Nov-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5588689: Black camera preview after coming back from gmail

Make surface management between SurfaceView and the window manager
much more controlled, to ensure that SurfaceView always gets to report
the current surface is destroyed before the window manager actually
destroys it.

Also a small tweak to allow windows that have a wallpaper background
to still have a preview window. This makes launching home after it
has been killed feel much more responsive.

Change-Id: I0d22cf178a499601a770cb1dbadef7487e392d85
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
8836c55818937ba00f186075eb7efb6462191113 01-Nov-2011 Tor Norbye <tnorbye@google.com> Set theme-tag in render log when failing to find style

Change-Id: I20461a7113eb25469deca13dca870936bdb33a29
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
0c4ccff36930ff4f0292b94ad51e164c9fa060a3 19-Oct-2011 Daniel Sandler <dsandler@android.com> Add hasNavigationBar() to the window manager.

It is no longer sufficient to check the value of
internal.R.bool.config_showNavigationBar to determine if a
navigation bar (separate from the status bar) is shown on a
device, because the emulator needs to be able to override
this value (now possible by setting qemu.hw.mainkeys to "1"
or "0", for navbar or no navbar, respectively).

This logic is now contained in PhoneWindowManager, and any
clients wishing to know whether the system has a software
nav bar should consult the new hasNavigationBar() method.

Bug: 5404945
Change-Id: I119d32a8c84b88b2ef46f63244e7f11dc5de0359
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
d2183654e03d589b120467f4e98da1b178ceeadb 09-Oct-2011 Jeff Brown <jeffbrown@google.com> Fix ownership of CursorWindows across processes.
Bug: 5332296

Ensure that there is always an owner for each CursorWindow
and that references to each window are acquired/released
appropriately at all times.

Added synchronization to CursorToBulkCursorAdaptor to
prevent the underlying Cursor and CursorWindow from being
remotely accessed in ways that might violate invariants,
resulting in leaks or other problems.

Ensured that CursorToBulkCursorAdaptor promptly releases
its references to the Cursor and CursorWindow when closed
so they don't stick around longer than they should, even
if the remote end hangs onto the IBulkCursor for some reason.

CursorWindow respects Parcelable.FLAG_WRITE_RETURN_VALUE
as an indication that one reference to the CursorWindow is
being released. Correspondingly, CursorToBulkCursorAdaptor
acquires a reference to the CursorWindow before returning
it to the caller. This change also prevents races from
resulting in the transfer of an invalid CursorWindow over
the wire.

Ensured that BulkCursorToCursorAdaptor promptly releases
its reference to the IBulkCursor when closed and throws
on attempts to access the cursor while closed.

Modified ContentProviderNative to handle both parts of
the wrapping and unwrapping of Cursors into IBulkCursors.
This makes it a lot easier to ensure that the right
things happen on both ends. Also, it turns out that
the only caller of IContentProvider.bulkQuery was
ContentProviderNative itself so there was no need
to support bulkQuery on ContentProviderProxy and it was
just getting in the way.

Implement CloseGuard on CursorWindow.

Change-Id: Ib3c8305d3cc62322f38a06698d404a2989bb6ef9
ridge/src/com/android/layoutlib/bridge/android/BridgeContentProvider.java
85b9edf2da0534bc53d139bb88cda8866d265afe 07-Oct-2011 Dianne Hackborn <hackbod@google.com> Merge "Fix issue #5371530: SYSTEMUI_FLAG_HIDE_NAVIGATION reasserts itself immediately"
9a230e01a1237749a8a19a5de8d46531b0c8ca6a 06-Oct-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5371530: SYSTEMUI_FLAG_HIDE_NAVIGATION reasserts itself immediately

This cleans up how ui flags are managed between the client and window manager.
It still reports the global UI mode state to the callback, but we now only clear
certain flags when the system goes out of a state (currently this just means the
hide nav bar mode), and don't corrupt other flags in the application when the
global state changes.

Also introduces a sequence number between the app and window manager, to avoid
using bad old data coming from the app during these transitions.

Change-Id: I40bbd12d9b7b69fc0ff1c7dc0cb58a933d4dfb23
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
2447871b99e6b10a68985f037420eb77cabe4d29 06-Oct-2011 Jeff Brown <jeffbrown@google.com> Fix build.

Change-Id: I7bb00b8ee0da952f3697b23dccf32dde55733b7a
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
d410bfb2001e7960a27fe6adb9d56f229e70fe5c 05-Oct-2011 Xavier Ducrohet <xav@android.com> LayoutLib: fix support for textScaleX.

Change-Id: I821191a40012e9727b4a3573d580483c3ae1de48
ridge/src/android/graphics/Paint_Delegate.java
14094097329b3bdcbf26392141111d74c8b89718 04-Aug-2011 Xavier Ducrohet <xav@android.com> Layoutlib: Typeface support for loading fonts manually.

If the font being loaded is a system font, then we can find the font
file and manually load it.

Change-Id: I95473b1f1b88df64316b77c41ed05d4d09ab61ed
ridge/src/android/graphics/Typeface_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/FontLoader.java
178006a0e05b41b4c4de93aec30368a9102ca140 05-Oct-2011 Xavier Ducrohet <xav@android.com> Layoutlib now parses system_fonts.xml instead of its own.

Also parse fallback_fonts.
This lets layoutlib automatically use the same fonts as the base
platforms, for instance it now uses the new ICS fonts.

Change-Id: Id6e778dc0e3f2a9112601e0eaf8499a9713ec433
ridge/src/android/graphics/Typeface_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/FontLoader.java
f1dee199a009fec5e3a5d1469f654098261f8b06 01-Oct-2011 Xavier Ducrohet <xav@android.com> Layoutlib: add support for ITextServicesManager.

This include a fix in layoutlib_create to properly handle
delegating a static method of an inner class (was broken and
only worked on non static method).

Added a few comments here and there to *_Accessor classes so
that it's a bit more obvious what they are for and how they are
used.

Change-Id: Ifc31dd1a006393bb0c08e22b6a17f500dd62e090
ridge/src/android/content/res/Resources_Theme_Delegate.java
ridge/src/android/graphics/Typeface_Accessor.java
ridge/src/android/os/Looper_Accessor.java
ridge/src/android/view/AttachInfo_Accessor.java
ridge/src/android/view/ViewConfiguration_Accessor.java
ridge/src/android/view/inputmethod/InputMethodManager_Accessor.java
ridge/src/com/android/internal/textservice/ITextServicesManager_Stub_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/DelegateMethodAdapter2.java
387d078e64f3bcc8284732287bc3f26fce856a88 30-Sep-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Fix native delegate for Display.

Change-Id: If097cae2309d340162b3bac1d0f6a2289635adca
ridge/src/android/view/Display_Delegate.java
90c52de28691ca0bbbf7c039ef20f85ce46882cc 23-Sep-2011 Dianne Hackborn <hackbod@google.com> Fix issue #5173952: Opening a Notification From Lock Screen...

...Should Skip Unsecure Lockscreen (ICS)

Also while I am in there, clean up logging of intent objects to include
even less sensitive information, while showing the true Intent in dump
output (since apps can't get to that).

Change-Id: I35fed714645b21e4304ba38a11ebb9c4c963538e
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
01a98ddbdfbaf1f0d2bc602537e6e314364902a3 21-Sep-2011 Jeff Brown <jeffbrown@google.com> Handle orientation changes more systematically.
Bug: 4981385

Simplify the orientation changing code path in the
WindowManager. Instead of the policy calling setRotation()
when the sensor determined orientation changes, it calls
updateRotation(), which figures everything out. For the most
part, the rotation actually passed to setRotation() was
more or less ignored and just added confusion, particularly
when handling deferred orientation changes.

Ensure that 180 degree rotations are disallowed even when
the application specifies SCREEN_ORIENTATION_SENSOR_*.
These rotations are only enabled when docked upside-down for
some reason or when the application specifies
SCREEN_ORIENTATION_FULL_SENSOR.

Ensure that special modes like HDMI connected, lid switch,
dock and rotation lock all cause the sensor to be ignored
even when the application asks for sensor-based orientation
changes. The sensor is not relevant in these modes because
some external factor (or the user) is determining the
preferred rotation.

Currently, applications can still override the preferred
rotation even when there are special modes in play that
might say otherwise. We could tweak this so that some
special modes trump application choices completely
(resulting in a letter-boxed application, perhaps).
I tested this sort of tweak (not included in the patch)
and it seems to work fine, including transitions between
applications with varying orientation.

Delete dead code related to animFlags.

Handle pausing/resuming orientation changes more precisely.
Ensure that a deferred orientation change is performed when
a drag completes, even if endDragLw() is not called because the
drag was aborted before the drop happened. We pause
the orientation change in register() and resume in unregister()
because those methods appear to always be called as needed.

Change-Id: If0a31de3d057251e581fdee64819f2b19e676e9a
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
ce801c4a1b1137ca2fd51ede6818722793c79ea4 19-Sep-2011 Dianne Hackborn <hackbod@google.com> Fix build.

Change-Id: Ife2b4b207270f8017d3acd80c76eaf1c7a50986d
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
ee5e77cafec2eae70890abdcc1646ed39b06eddd 02-Sep-2011 satok <satok@google.com> Make setAdditionalInputMethodSubtypes async

Bug: 5120261
Change-Id: Ic7869cfaa5361531e08d58d7dfa5ba0feab0613e
ridge/src/com/android/layoutlib/bridge/android/BridgeIInputMethodManager.java
29aae6f36e565b8f2a99f2193597b964bb800ee8 19-Aug-2011 Dianne Hackborn <hackbod@google.com> Fix issue #4279860: previous UI flashes before showing lock screen...

...(when turning display on after recently turning it off)

Also clean up when we decide to turn the screen on to improve that
transition. There are still problems here with turning it on
before the wallpaper gets dispayed.

Change-Id: I2bc56c12e5ad75a1ce5a0546f43a845bf0823e66
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
8433c36a98c9f45c37d2c60afc8a6a27514ddf2b 22-Aug-2011 Xavier Ducrohet <xav@android.com> LayoutLib: add native delegate for set/getHinting in Paint.

Change-Id: I1758f8ce861240d72113aa23dcbef5a52abade56
ridge/src/android/graphics/Paint_Delegate.java
7f9f99ea11051614a7727dfb9f9578b518e76e3c 11-Aug-2011 Xavier Ducrohet <xav@android.com> Make some methods/fields package private so that layoutlib can access them.

Change-Id: I4aeadfbaf8a4f6a459fa19937c21ac23d9e5fb64
ridge/src/android/animation/AnimationThread.java
ridge/src/android/content/res/BridgeAssetManager.java
ridge/src/android/content/res/BridgeResources.java
ridge/src/android/content/res/BridgeTypedArray.java
ridge/src/android/content/res/TypedArray_Delegate.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/Typeface_Accessor.java
ridge/src/android/os/Looper_Accessor.java
ridge/src/android/os/SystemClock_Delegate.java
ridge/src/android/util/BridgeXmlPullAttributes.java
ridge/src/android/view/AttachInfo_Accessor.java
ridge/src/android/view/BridgeInflater.java
ridge/src/android/view/Display_Delegate.java
ridge/src/android/view/LayoutInflater_Delegate.java
ridge/src/android/view/ViewConfiguration_Accessor.java
ridge/src/android/view/inputmethod/InputMethodManager_Accessor.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/android/BridgeAssetManager.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
ridge/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParser.java
ridge/src/com/android/layoutlib/bridge/android/BridgeXmlPullAttributes.java
ridge/src/com/android/layoutlib/bridge/bars/PhoneSystemBar.java
ridge/src/com/android/layoutlib/bridge/impl/AnimationThread.java
ridge/src/com/android/layoutlib/bridge/impl/PlayAnimationThread.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
ridge/src/com/android/layoutlib/bridge/impl/RenderDrawable.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/Main.java
ea670054d6c5b59b8481cbf796e6a1cd9f38b672 09-Aug-2011 Philip Milne <pmilne@google.com> Implement native println_native in android.util.Log for LayoutLib

Change-Id: I2ab83a131468490cf789bf17f9c12b6360e953a4
ridge/src/android/util/Log_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
dfee59afb3e4cdcde38f6338f9360655de76da92 06-Aug-2011 Adam Powell <adamp@google.com> Fix bug 5011824 - New Holo overflow menu for physical menu key devices

The new Holo-style overflow menu now appears from the edge of the screen
where the device's physical menu key can be found. The policy determining
this lives in getPreferredOptionsPanelGravity() in WindowManagerService.

Change-Id: I8851a2265547156591e82044e50b5cfc58d3eefa
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
162c1dcd5e635d17d8425936d7729d0ae5ed1a62 04-Aug-2011 Xavier Ducrohet <xav@android.com> Layoutlib: implement Resources.getBoolean(int).

Change-Id: I44cee203bb9a8fabaebfd689fc20ec2f2a9b3561
ridge/src/android/content/res/BridgeResources.java
569ed054042f0350e898b4352694b792b0fdef9b 02-Aug-2011 Xavier Ducrohet <xav@android.com> Layoutlib: simple comment fix.

Change-Id: I402f6b465706e8edd14e512a973d087a14abbfe3
ridge/src/android/content/res/BridgeResources.java
d2f664d42cc29507b01a98622298b69131463825 30-Jul-2011 Xavier Ducrohet <xav@android.com> Misc layoutlib fix in preparation of the access change in framework code.

Change-Id: I873adb7345514be6daa5c4fea4ebabb515f203e2
ridge/src/android/content/res/BridgeResources.java
ridge/src/android/content/res/BridgeTypedArray.java
ridge/src/android/graphics/BitmapFactory_Delegate.java
ridge/src/android/view/LayoutInflater_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
reate/src/com/android/tools/layoutlib/create/Main.java
bc68a59c024bdb745dac8e2ec7408a9f30595f1a 25-Jul-2011 Jeff Brown <jeffbrown@google.com> Report the external display size to the input reader.

The input reader needs this information so that it knows how to
interpolate touches on an external touch screen.

Changed Display so that it asks the WindowManager what the real
display size is (as opposed to the raw display size). This means
it now takes into the forced display size set by
adb shell am display-size.

Replaced all calls to getRealWidth() / getRealHeight() /
getRealMetrics() in the WindowManager and replaced them with direct
usages of the mCurDisplayWidth / mCurDisplayHeight so that the WM
doesn't end up making a reentrant Binder call into itself.

Fixed the table status bar HeightReceiver so that it updates the
height on all configuration changes since it is possible that the
display size changed independently of an external HDMI display
being plugged / unplugged.

Improved the Display class documentation to make the distinctions
betweeen the various sizes clearer.

Change-Id: I3f75de559d3ebffed532ab46c4ae52c5e7f1da2b
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
4f727fbdc302946b9b677e2518350dd3574d198a 26-Jul-2011 Xavier Ducrohet <xav@android.com> am ed07215e: am 55775e5f: am e70b2b8f: am 9bcf26ea: Merge "Layoutlib_create flag -p: don\'t change all accesses to public."

* commit 'ed07215e482cae1ffedbba707284821b3afc310f':
Layoutlib_create flag -p: don't change all accesses to public.
ed07215e482cae1ffedbba707284821b3afc310f 25-Jul-2011 Xavier Ducrohet <xav@android.com> am 55775e5f: am e70b2b8f: am 9bcf26ea: Merge "Layoutlib_create flag -p: don\'t change all accesses to public."

* commit '55775e5f34af8d7c22ab3212c253b3a7d34a6f8a':
Layoutlib_create flag -p: don't change all accesses to public.
55775e5f34af8d7c22ab3212c253b3a7d34a6f8a 22-Jul-2011 Xavier Ducrohet <xav@android.com> am e70b2b8f: am 9bcf26ea: Merge "Layoutlib_create flag -p: don\'t change all accesses to public."

* commit 'e70b2b8fe0c265171f3a367a66c99b36c62567c7':
Layoutlib_create flag -p: don't change all accesses to public.
e70b2b8fe0c265171f3a367a66c99b36c62567c7 22-Jul-2011 Xavier Ducrohet <xav@android.com> am 9bcf26ea: Merge "Layoutlib_create flag -p: don\'t change all accesses to public."

* commit '9bcf26ea7aa108ce4bf4e973b4774d3e60eebafe':
Layoutlib_create flag -p: don't change all accesses to public.
caed59d90db8626462baaec351e66b2a3280dc34 20-Jul-2011 Raphael Moll <ralf@android.com> Layoutlib_create flag -p: don't change all accesses to public.

Change-Id: Icb1709ed0cb275a5a51ca34030695a5e94091499
reate/src/com/android/tools/layoutlib/create/DelegateClassAdapter.java
reate/src/com/android/tools/layoutlib/create/Main.java
reate/src/com/android/tools/layoutlib/create/TransformClassAdapter.java
af64556de0064eeb5a4d4e6d634c3f074f5f40ce 20-Jul-2011 Xavier Ducrohet <xav@android.com> Layoutlib: misc fix + start of AndroidBidi support.

Change-Id: If2ce0b683da8cce01679322d503eed8dd474e521
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/text/AndroidBidi_Delegate.java
ridge/src/android/view/inputmethod/InputMethodManager_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeIInputMethodManager.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
91e88122cf28a48fd2e2260da7d3d87dd437227a 18-Jul-2011 satok <satok@google.com> Enable IMEs to set additional subtypes in background

Bug: 4591792

Change-Id: I7e61a576c56d1a3a56001bdf2fd51ad3801add01
ridge/src/com/android/layoutlib/bridge/android/BridgeIInputMethodManager.java
37b3cc3bbe33df61f227bcf253aa67a4be441233 13-Jul-2011 Xavier Ducrohet <xav@android.com> am 9163a4a6: am aa4b1d8b: am d292d2a0: Merge 36a3a392 from mr1.

* commit '9163a4a686fc25fefc77d5b41c24a4538486a48e':
Merge 36a3a392 from mr1.
96131eef3869f2be1300e1620f5c3874b41bb534 12-Jul-2011 Xavier Ducrohet <xav@android.com> LayoutLib: updated fake accessbility manager and ensure there's an InputMethodManager

We had replaced the accessibility Manager but it lacked some new API. Obvisouly
this is fragile and should be fixed, but this works for now.

After fixing this there was another issue with the lack of InputMethodManager.
To fix this I had to create an implementation of IInputMethodManager which
normally comes from a binder object.

I may want to do a similar trick with the accessibility manager later.

Change-Id: I28c6494e333f39072f348d0199124efac93256a5
ridge/src/android/view/accessibility/AccessibilityManager.java
ridge/src/android/view/inputmethod/InputMethodManager_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeIInputMethodManager.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
0a49635b171f3ba366b1a7ebf28791c4661829bd 12-Jul-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Delegate for Display and IWindowManager implementation.

This allows ViewConfiguration to be properly implemented which is now
required for the rendering to happen.

Change-Id: I55629689fa8f5f874b43fcac2aa0789ce02d58f4
ridge/src/android/view/Display_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowManager.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
ridge/tests/.classpath
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
77eaa10949dd47532e262f8e74ad5a1536a4952e 11-Jul-2011 Xavier Ducrohet <xav@android.com> new button graphics for layoutlib.

Change-Id: I12a6bf9df87552321452ca3344449814cd3102bb
ridge/resources/bars/hdpi/ic_sysbar_back_default.png
ridge/resources/bars/hdpi/ic_sysbar_home_default.png
ridge/resources/bars/hdpi/ic_sysbar_recent_default.png
ridge/resources/bars/mdpi/ic_sysbar_back_default.png
ridge/resources/bars/mdpi/ic_sysbar_home_default.png
ridge/resources/bars/mdpi/ic_sysbar_recent_default.png
ridge/resources/bars/xhdpi/ic_sysbar_back_default.png
ridge/resources/bars/xhdpi/ic_sysbar_home_default.png
ridge/resources/bars/xhdpi/ic_sysbar_recent_default.png
9163a4a686fc25fefc77d5b41c24a4538486a48e 11-Jul-2011 Xavier Ducrohet <xav@android.com> am aa4b1d8b: am d292d2a0: Merge 36a3a392 from mr1.

* commit 'aa4b1d8ba9d5e317b67638b764d92d17fb810aa0':
Merge 36a3a392 from mr1.
d292d2a03134eaca8b51b6313610b4b78de53c83 08-Jul-2011 Xavier Ducrohet <xav@android.com> Merge 36a3a392 from mr1.

Protect against OOB index in BridgeTypedArray.

Change-Id: I40be1e039f9eb36c182b6522bd50d6ed98e15b5c
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
842725fc642b7ba2c087cc81796973b838c23c76 29-Jun-2011 Xavier Ducrohet <xav@android.com> am 4d825e1f: Merge "Bring in more layout lib changes from hc-mr1." into gingerbread

* commit '4d825e1f3bb6b52ecbea6f0c4aa2081b7f1edc89':
Bring in more layout lib changes from hc-mr1.
9bce27a9ce916bdf363667ee67fc0ce50c533aa3 29-Jun-2011 Xavier Ducrohet <xav@android.com> am 4753498d: Merge "CherryPick 06942bc4 from hc-mr1. do not merge." into gingerbread

* commit '4753498d5c1ac3cf93b0730e77946a95b6913a82':
CherryPick 06942bc4 from hc-mr1. do not merge.
155cf6c1e191bb03fe24db8663715862d8e6a43d 29-Jun-2011 Xavier Ducrohet <xav@android.com> am 9918ffb0: Merge "CherryPick 988eeeb5 from hc-mr1. do not merge." into gingerbread

* commit '9918ffb07f47430e22f6e53576d59b599f5a3534':
CherryPick 988eeeb5 from hc-mr1. do not merge.
b02367778d451e38509ca1fc3fbc1d01dce6af1e 23-Jun-2011 Raphael Moll <ralf@android.com> am f9705ef6: am 2b5f2d01: am e2b41b0d: Merge "Laoutlib_creator: keep original of delegate methods."

* commit 'f9705ef6d3f1502991dd312bfdbfb93cb07fe672':
Laoutlib_creator: keep original of delegate methods.
f9705ef6d3f1502991dd312bfdbfb93cb07fe672 23-Jun-2011 Raphael Moll <ralf@android.com> am 2b5f2d01: am e2b41b0d: Merge "Laoutlib_creator: keep original of delegate methods."

* commit '2b5f2d01558ba338042f486c754f63873c4061fe':
Laoutlib_creator: keep original of delegate methods.
2b5f2d01558ba338042f486c754f63873c4061fe 23-Jun-2011 Raphael Moll <ralf@android.com> am e2b41b0d: Merge "Laoutlib_creator: keep original of delegate methods."

* commit 'e2b41b0d5c8db85a60cd190c7094052db61114b2':
Laoutlib_creator: keep original of delegate methods.
98e1e18c1cc1ec98a20dbdf0e6497614aacf3d0a 22-Jun-2011 Brian Carlstrom <bdc@google.com> Fix build.

git cherry-pick --no-commit 22a614142aacce13fc46a0e524dbfb6ca56bf237

Change-Id: I1409bc3dd1f1b3027c12355e8b6aeffa2d857c83
ridge/src/libcore/icu/ICU_Delegate.java
e86c5b2e9fe79f2a6f4187b6a4f2769c0b64168b 21-Jun-2011 Xavier Ducrohet <xav@android.com> Merge "Add missing delegate to the layoutlib."
3523325159c083140ba51d36f46270f6adddad77 21-Jun-2011 Brett Chabot <brettchabot@android.com> Merge "Include testdata in layoutlib-tests."
fc511683b6647295cb645a0118d1b0afd575b3c3 21-Jun-2011 Xavier Ducrohet <xav@android.com> Add missing delegate to the layoutlib.

Change-Id: I8de5c1093052c40c0cd327a4d02b01651d3b76b5
ridge/src/libcore/icu/ICU_Delegate.java
ridge/tests/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParserTest.java
865c3bef54228a353fd449a093b0c8d155618296 18-Jun-2011 Raphael Moll <ralf@android.com> Laoutlib_creator: keep original of delegate methods.

For specific methods, Layoublib_create can rewrite the implementation
of a method to invoke a delegate instead of the original code. This
allows layoutlib to implement native code or override existing behavior.

This patch also 'saves' the original implementation of a rewritten
method so that the delegate can access the original implementation
as needed. Obviously this is only done for non-native methods.

Given a non-native SomeClass.MethodName, we generate 2 methods:
- A copy of the original method named "SomeClass.MethodName_original".
The content is the original method as-is from the reader.
- A brand new implementation of SomeClass.MethodName which calls to a
non-existing method named "SomeClass_delegate.MethodName".
The implementation of this 'delegate' method is done in layoutlib_brigde.

Change-Id: I5ca2cd3ac55991a8e8a51c417e75ee447bf9e9e6
reate/README.txt
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/DelegateClassAdapter.java
reate/src/com/android/tools/layoutlib/create/DelegateMethodAdapter.java
reate/src/com/android/tools/layoutlib/create/DelegateMethodAdapter2.java
reate/src/com/android/tools/layoutlib/create/StubMethodAdapter.java
reate/tests/com/android/tools/layoutlib/create/DelegateClassAdapterTest.java
reate/tests/com/android/tools/layoutlib/create/dataclass/OuterClass.java
reate/tests/com/android/tools/layoutlib/create/dataclass/OuterClass_Delegate.java
01f0fd84d085f90ca73e9091618ab3d98b5e1c4a 18-Jun-2011 Brett Chabot <brettchabot@android.com> Include testdata in layoutlib-tests.

Change-Id: I79fff895a13d171079b59db54d4b9d2bec555b3c
ridge/tests/Android.mk
ridge/tests/res/com/android/layoutlib/testdata/layout1.xml
ridge/tests/src/com/android/layoutlib/testdata/layout1.xml
ea5f0d0543a2ea78ecb0aa3d080098942ba3a4df 10-Jun-2011 Xavier Ducrohet <xav@android.com> Bring in more layout lib changes from hc-mr1.

fe051bb2 : Change the way the layoutlib instantiate its XmlPullParser.

A lot of the init code was duplicated so I made a ParserFactory class.

Also created an extension of the KXmlPullParser to override toString().
This allows easier debugging when dealing with multiple parsers (which
is always the case).

Also added some (disabled) debugging printf to deal with parser stack
as it can be tricky figuring out which parsers are in the stack at
which point.

8969147c : Fix case where the int[] attrs doesn't directly match a styleable.

In the case of the FastScroller the int[] is a custom mix of attr
instead of a int[] that exists as R.styleable.foo.

This makes our reflection based mechanism used to find the styleable
fail, so instead we search for each attribute separately (like
we probably should have done from the beginning).

0c264b35: Fix various cases of getDimension to report error if unit is missing.

if getDimention###() is called for a string that has no unit,
then an error is output through LayoutLog, but the rendering keeps
going by using dp as a default.

0beb7eea: Make (Bridge)TypedArray.getInteger() call out to getInt()

Only getInt() resolved attribute flags/enum and I'm not sure why
there's two to begin with.

Change-Id: I015111263d2a2bee76834978ae71eef79defdae3
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParser.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/PhoneSystemBar.java
ridge/src/com/android/layoutlib/bridge/bars/TitleBar.java
ridge/src/com/android/layoutlib/bridge/impl/ParserFactory.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
ridge/tests/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParserTest.java
d6465e10c27140647e02be8160d900d6e7e78441 08-Jun-2011 Xavier Ducrohet <xav@android.com> CherryPick 06942bc4 from hc-mr1. do not merge.

Layoutlib - use the new getParser callback when possible.

Change-Id: I72b867aa573fcc07d610f139da3c90b1b654633c
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
6b62c82848b9823a26fc107deef8227d9cd516a6 08-Jun-2011 Xavier Ducrohet <xav@android.com> CherryPick 988eeeb5 from hc-mr1. do not merge.

Support for custom declare-styleable attr with enum/flag in layoutlib.

Change-Id: I8a5b7cc629d61996ffade9aabd9d4d10961eb411
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
9340ab4a213093bd59c79159011d131c9cd6996f 16-Jun-2011 Xavier Ducrohet <xav@android.com> am 0be8522b: am d1abd94f: am 04ce8111: Bring in more layout lib changes from hc-mr1.

* commit '0be8522b430aca8d90023d7c7e5ef510aa48adc7':
Bring in more layout lib changes from hc-mr1.
04ce81113107d2bfa0b8248b13145b4cf24cb943 10-Jun-2011 Xavier Ducrohet <xav@android.com> Bring in more layout lib changes from hc-mr1.

fe051bb2 : Change the way the layoutlib instantiate its XmlPullParser.

A lot of the init code was duplicated so I made a ParserFactory class.

Also created an extension of the KXmlPullParser to override toString().
This allows easier debugging when dealing with multiple parsers (which
is always the case).

Also added some (disabled) debugging printf to deal with parser stack
as it can be tricky figuring out which parsers are in the stack at
which point.

8969147c : Fix case where the int[] attrs doesn't directly match a styleable.

In the case of the FastScroller the int[] is a custom mix of attr
instead of a int[] that exists as R.styleable.foo.

This makes our reflection based mechanism used to find the styleable
fail, so instead we search for each attribute separately (like
we probably should have done from the beginning).

0c264b35: Fix various cases of getDimension to report error if unit is missing.

if getDimention###() is called for a string that has no unit,
then an error is output through LayoutLog, but the rendering keeps
going by using dp as a default.

0beb7eea: Make (Bridge)TypedArray.getInteger() call out to getInt()

Only getInt() resolved attribute flags/enum and I'm not sure why
there's two to begin with.
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParser.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/FakeActionBar.java
ridge/src/com/android/layoutlib/bridge/bars/PhoneSystemBar.java
ridge/src/com/android/layoutlib/bridge/bars/TabletSystemBar.java
ridge/src/com/android/layoutlib/bridge/bars/TitleBar.java
ridge/src/com/android/layoutlib/bridge/impl/ParserFactory.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
ridge/tests/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParserTest.java
66743a1ec0dddadec7cd8f026f9b6a2239f515be 15-Jun-2011 Xavier Ducrohet <xav@android.com> Fix changed native method delegates in layoutlib for ICS.

Change-Id: I49306868cd8a41b6b7d919c3e8b108d5c014530e
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/libcore/icu/ICU_Delegate.java
2dcb6e80b999d93409e66bbd01b94a419c22013c 10-Jun-2011 Xavier Ducrohet <xav@android.com> am 48305f32: am 2e0f7118: am 8ee28811: Merge changes Idbb70f53,I10426a3f into honeycomb-mr2

* commit '48305f327ff3839ddbfa5a6fb42a57150a69480c':
Merge 06942bc4 from hc-mr1.
Merge 988eeeb5 from hc-mr1.
45b662e1bcff23dc59fb3a47bc32c99e63b2ac35 08-Jun-2011 Xavier Ducrohet <xav@android.com> Merge 06942bc4 from hc-mr1.

Layoutlib - use the new getParser callback when possible.

Change-Id: Idbb70f5391addd539afa5c2f5b55c70beefed223
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
beb5fb622b71693c21b6fab562a98e7000c64273 08-Jun-2011 Xavier Ducrohet <xav@android.com> Merge 988eeeb5 from hc-mr1.

Support for custom declare-styleable attr with enum/flag in layoutlib.

Change-Id: I10426a3f2c76bed207c03fab7885b4269337a70f
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
f18e311ee5d35db0cae96f0b216a88e5b42604dc 08-Jun-2011 Xavier Ducrohet <xav@android.com> am abc83871: am f6e47999: am 2a6dc7f1: Merge "Import the Layoutlib from hc-mr1." into honeycomb-mr2

* commit 'abc838716816107754ab0479242d03807ce79fc2':
Import the Layoutlib from hc-mr1.
fb93ce9684120a36862b5b5e67b1865a652907e9 04-Jun-2011 Xavier Ducrohet <xav@android.com> Import the Layoutlib from hc-mr1.

This is squash commit of all the missing patches.

Change-Id: Ie081c46a173290646deddbde503a720d50c4400f
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/os/HandlerThread_Delegate.java
ridge/src/android/view/LayoutInflater_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
ridge/tests/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParserTest.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
156a211b21fbaeb6391162a056390b9cd8748fae 04-Jun-2011 Xavier Ducrohet <xav@android.com> Cherrypick d1ed33c4 from hc-mr1. do not merge.

Fix zombie threads in the Layoutlib.

Some widgets can create (indirectly) HandlerThread which are started
but never stopped.

This patch use the delegate methods to override the thread run method
to record which threads are started to be able to call quit() on them
after a render.

Note that we should really fix layoutlib_create to be able to call
the default implementation from a delegate to remove code duplication.

Change-Id: Iaf5432623e9704bb3114a8e0583c8553282c205e
ridge/src/android/os/HandlerThread_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
21726044a934f3f4f9827a05bbc8db2477220fa1 04-Jun-2011 Xavier Ducrohet <xav@android.com> Cherrypick 5b61ea6b from hc-mr1

Fix drawCircle in layoutlib.

Change-Id: I035c48b925cad246ed821e9e59a93d37174982ef
ridge/src/android/graphics/Canvas_Delegate.java
f174cd86bd70c1f1322cc15f42d5fd87223933a0 03-Jun-2011 Xavier Ducrohet <xav@android.com> LayoutLib: enable the LAYOUT_ONLY capability.

Change-Id: Ib302af47d2a83a7ac3def6256bf0b892823f594f
ridge/src/com/android/layoutlib/bridge/Bridge.java
8f17523dcac41f5a8962cfb61265c71ad0c0e463 02-Jun-2011 Xavier Ducrohet <xav@android.com> Merge dba35f1b from honeycomb-mr1. do not merge.

Change-Id: Iebda5ea67fd40cac76a8ca3fe3c3cd4ee95ddebe
LayoutLib: Properly configure KXmlParser to read UTF8
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
ridge/tests/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParserTest.java
34f5991ebe8b203f1720caf95889c15dd131d86e 24-May-2011 Xavier Ducrohet <xav@android.com> Merge 6103e22c from honeycomb-mr1. do not merge.

LayoutLib: custom styles override the default style instead of replacing it.

Intead of reading either the custom or the default style for a widget, we
read both and use the values from the custom style if it exists, or
from the default style otherwise.

Change-Id: Ibcec2e9b1e8a95295ab26ede145c287ff2f30be4
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
c7b87766b21fe5cf2f644efa8753b936d413dc9a 24-May-2011 Xavier Ducrohet <xav@android.com> Merge 2402ad60 from honeycomb-mr1. do not merge.

LayoutLib: Fix Canvas_Delegate.native_concat().

Change-Id: I863c43d65a929816ac7c9e69addcc647dac1878b
ridge/src/android/graphics/Canvas_Delegate.java
4c1e73b69a13a4f24a8fc123f599a9e9d8505525 20-May-2011 Xavier Ducrohet <xav@android.com> Merge e57aa434 from honeycomb-mr1. do not merge.

LayoutLib: Fix issue where <include> with no layout params wouldn't display.

The issue is that the layout params from the root element of the included
layout should be used but this failed because loading the layout params
from the <include> tag didn't throw a RuntimeException in our modified
code (BridgeTypedArray).

Because we don't want to throw exception in general we only throw it
when reading the layout params of an include node which is pretty crappy,
but works for now.

Change-Id: I83ccf956e8b476f34dfc9a70aebae2288d53746e
ridge/src/android/view/LayoutInflater_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
d9af22e204e7f4c364c346b6c1bac900a2c4ccca 17-May-2011 Xavier Ducrohet <xav@android.com> Merge 05b7b69c from honeycomb-mr1. do not merge.

Change-Id: I1aca5774dec2e18ab5f9e860f6fd90b481b2857c
LayoutLib: support the new baseline/margin query API.
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/MockView.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
e172a3fc23412ebc79d6bd93e6d43d4b1c58354b 29-Mar-2011 Xavier Ducrohet <xav@android.com> Merge 2fae858d from Honeycomb-mr1. do not merge.

Change-Id: I648f9ffa9745331ce4104dc4772f78ed933a4909
LayoutLib: implement data binding for most AdapterView
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParser.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
ridge/src/com/android/layoutlib/bridge/impl/binding/BaseAdapter.java
ridge/src/com/android/layoutlib/bridge/impl/binding/FakeAdapter.java
ridge/src/com/android/layoutlib/bridge/impl/binding/FakeExpandableAdapter.java
9f23e60b20f0419e6ca5ff55db9d6282596e7fe8 19-May-2011 Xavier Ducrohet <xav@android.com> am a13462a9: am 582841e7: am b18e700c: am aa0834e3: Merge "LayoutLib: support the new baseline/margin query API." into honeycomb-mr1

* commit 'a13462a947e634a6893119146a7271369e509586':
LayoutLib: support the new baseline/margin query API.
05b7b69c6c5d418e18db644feed1ec2ca83291cc 17-May-2011 Xavier Ducrohet <xav@android.com> LayoutLib: support the new baseline/margin query API.

Change-Id: I856489df655960820b8eaa4c6179515a5c069b00
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/MockView.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
8c2f85d94145a96f53e9041c609e283be7412a0f 14-May-2011 Xavier Ducrohet <xav@android.com> am d0054160: am 6d040a7f: am 738c5e60: am 2fae858d: LayoutLib: implement data binding for most AdapterView

* commit 'd00541603fbbb4e38264e75a2b6abf8705efeb49':
LayoutLib: implement data binding for most AdapterView
2fae858db55fc6984ef923a6226b9408c37c72cb 29-Mar-2011 Xavier Ducrohet <xav@android.com> LayoutLib: implement data binding for most AdapterView

Change-Id: I27be96ed2c37573eb22cfbb391d96b6137b3df8c
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParser.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
ridge/src/com/android/layoutlib/bridge/impl/binding/BaseAdapter.java
ridge/src/com/android/layoutlib/bridge/impl/binding/FakeAdapter.java
ridge/src/com/android/layoutlib/bridge/impl/binding/FakeExpandableAdapter.java
515a08b01851a1ab9386f85dee6d9fd7b65ee7ad 07-Apr-2011 Xavier Ducrohet <xav@android.com> Merge 59aad78e from master. do not merge.

LayoutLib: don't render when shader's local matrix is set to 0 scale.

Change-Id: I02c0ddd856026357f468dcc8b81e0520470118de
ridge/src/android/graphics/Shader_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/GcSnapshot.java
59aad78eae14939c169876b2f632d005f382cf7d 07-Apr-2011 Xavier Ducrohet <xav@android.com> LayoutLib: don't render when shader's local matrix is set to 0 scale.

Change-Id: I7726d87f3dd0475ac662f535a08c6435b8b9ed1f
ridge/src/android/graphics/Shader_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/GcSnapshot.java
8a18dba48c354fc47056b07ddec8a32fda266b6a 06-Apr-2011 Xavier Ducrohet <xav@android.com> Merge c5aeac7f from honeycomb.

LayoutLib: Fix issue with rendering mode.

When the layout content is embedded inside a decor layout
to emulate system bar (top or bottom) and title bar (or action bar)
then the code computing the full required size based on the RenderingMode
would fail because the decor layout would prevents the content layout to
take as much room as possible.
There is also an issue with the way we know render dialogs as the
dialogs usually as a frame with some padding and the previous measurements
would not take into account the dialog padding when increasing the
screen size.

This fix makes the code measure the size of the content layout in the
normal rendering, and then separately from the root layout with the proper
MeasureSpec to let the content grown. The difference in size is then added
to the screen size.

Bug: http://code.google.com/p/android/issues/detail?id=15892

Change-Id: Ie9a6c5e254b16785f817dcb9fae755d4936880aa
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
c5aeac7f157e3cb9e29ab8c126f74e26493501f5 06-Apr-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Fix issue with rendering mode.

When the layout content is embedded inside a decor layout
to emulate system bar (top or bottom) and title bar (or action bar)
then the code computing the full required size based on the RenderingMode
would fail because the decor layout would prevents the content layout to
take as much room as possible.
There is also an issue with the way we know render dialogs as the
dialogs usually as a frame with some padding and the previous measurements
would not take into account the dialog padding when increasing the
screen size.

This fix makes the code measure the size of the content layout in the
normal rendering, and then separately from the root layout with the proper
MeasureSpec to let the content grown. The difference in size is then added
to the screen size.

Bug: http://code.google.com/p/android/issues/detail?id=15892

Change-Id: Ibb9ca2a67c6c450d10d9f9a8050536e094650f8b
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
c7c8c599a636a105db0d2eac3b8b332532a7a40f 17-Mar-2011 Xavier Ducrohet <xav@android.com> Merge 67450db0 from honeycomb. Do not merge.

Change-Id: I0ca140dd6d9279ff313f930739ad40fbbed4f335
LayoutLib: TypedArray.getDimensionPixelSize can actually return <0
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
67450db03eac59c93b2b46c7872ce4d7dca47265 17-Mar-2011 Xavier Ducrohet <xav@android.com> LayoutLib: TypedArray.getDimensionPixelSize can actually return <0

Change-Id: I17853dc242e28f0c59916cad1b2a57beed480a57
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
0a98226e3c8cda46786558147a0eb6a56c3370c0 14-Mar-2011 Xavier Ducrohet <xav@android.com> Merge 9d76581f from honeycomb. do not merge.

LayoutLib: Fix Arc rendering.

Looks like Java2D and Skia go in different directions for angles.

Change-Id: I4d72db56455afe25b4f51f23a9b29d6c438119ba
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
b243aabdaf1ba6fdfc0579c9f949e00d562456ed 08-Mar-2011 Xavier Ducrohet <xav@android.com> Merge adaa12cd from honeycomb. do not merge.

LayoutLib: fix Capabilities and getDimensionPixelSize

Commented out a Capability that is not in ADT 10.

BridgeTypedArray.getDimensionPixelSize shouldn't call
getDimension since most of the code is duplicated, and
it prevents use from properly detecting malformed attribute
values.

Change-Id: I008334af605a89f240247a13c0024009247ec5af
ridge/src/android/graphics/Path_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
2652b618a86c28fe1914c52dd6a91139c3d9b1e7 08-Mar-2011 Xavier Ducrohet <xav@android.com> Merge 6f2fb570 from honeycomb. do not merge.

LayoutLib: Fix dimension parsing to handle negative value.

Also make TypedArray.getDimensionPixelSize properly
handle negative values (which are not allowed).

Change-Id: I03ffcef5ab7ec7ef95419566776dcc798845fd88
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
f354ad108c794bd4c9d1aa9a4f2a526d9c27e224 08-Mar-2011 Xavier Ducrohet <xav@android.com> Merge c12b4093 from honeycomb. do not merge.

Change-Id: Icfbb70c097d87bf92415c6f0534346adde4c02fe
LayoutLib: Implement some missing add###() method in Path.
ridge/src/android/graphics/Path_Delegate.java
9d76581faf9eb5f47eff922c14807e51702f363b 14-Mar-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Fix Arc rendering.

Looks like Java2D and Skia go in different directions for angles.

Change-Id: Ia0c9c70cd66c9a0941fa9921fecf8e4e83538af3
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
adaa12cd9e421edf34e36de8cfacc3e3c334bb64 08-Mar-2011 Xavier Ducrohet <xav@android.com> LayoutLib: fix Capabilities and getDimensionPixelSize

Commented out a Capability that is not in ADT 10.

BridgeTypedArray.getDimensionPixelSize shouldn't call
getDimension since most of the code is duplicated, and
it prevents use from properly detecting malformed attribute
values.

Change-Id: I005b17061590dc0668729af16e896fad815f1973
ridge/src/android/graphics/Path_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
6f2fb570642189ec2b6068632c25f02391007bb5 08-Mar-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Fix dimension parsing to handle negative value.

Also make TypedArray.getDimensionPixelSize properly
handle negative values (which are not allowed).

Change-Id: I960fc1c9e8ad97852d4a14e4f0f71a2c2034b4e7
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
c12b4093517ac99cabd91a1bb4bdb3bacfe4bcfd 08-Mar-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Implement some missing add###() method in Path.

Change-Id: Ib62b5df0361ba81846483b1e5f8d7cbdbcb57d40
ridge/src/android/graphics/Path_Delegate.java
648251710162cdaf7371012a1cbb79b9bc5bc0e4 03-Mar-2011 Dianne Hackborn <hackbod@google.com> Fix issue #3485923: Gmail crash

Allow application to try to recover if a surface OOM error
happens on the client side.

Change-Id: I0308bd99647a35e4bcac448340b7fc6330a828f6
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
efe18b5e3f02a51a3900d5a0a3687d2b5e315b4c 24-Feb-2011 Xavier Ducrohet <xav@android.com> Merge 1911a6f7 into gingerbread. do not merge.

Change-Id: I6d56644c4ab1a70eb4a6d0d2e5d84ea4aa674041
LayoutLib: move tests to their own project.
gitignore
ridge/.classpath
ridge/Android.mk
ridge/tests/.classpath
ridge/tests/.project
ridge/tests/Android.mk
ridge/tests/com/android/layoutlib/bridge/AndroidGraphicsTests.java
ridge/tests/com/android/layoutlib/bridge/NinePatchTest.java
ridge/tests/com/android/layoutlib/bridge/TestDelegates.java
ridge/tests/com/android/layoutlib/bridge/android/BridgeXmlBlockParserTest.java
ridge/tests/com/android/layoutlib/testdata/button.9.png
ridge/tests/com/android/layoutlib/testdata/layout1.xml
ridge/tests/src/android/graphics/Matrix_DelegateTest.java
ridge/tests/src/com/android/layoutlib/bridge/TestDelegates.java
ridge/tests/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParserTest.java
ridge/tests/src/com/android/layoutlib/testdata/layout1.xml
a4510a75757b82207f677609b970010f59c774ba 25-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: fix incorrect indices in one of the 2 native_drawTextRun methods.

Fixes http://b.android.com/15007

Change-Id: Iff06180def92c5fa25e82520b76192c089edd8cc
ridge/src/android/graphics/Canvas_Delegate.java
1911a6f7812e3f7dcb83fd4741a297d043a80e46 24-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: move tests to their own project.

Change-Id: I8a9e128e4a17ab57ec7b126a378035d9ce5bc168
gitignore
ridge/.classpath
ridge/Android.mk
ridge/tests/.classpath
ridge/tests/.project
ridge/tests/Android.mk
ridge/tests/com/android/layoutlib/bridge/AndroidGraphicsTests.java
ridge/tests/com/android/layoutlib/bridge/NinePatchTest.java
ridge/tests/com/android/layoutlib/bridge/TestDelegates.java
ridge/tests/com/android/layoutlib/bridge/android/BridgeXmlBlockParserTest.java
ridge/tests/com/android/layoutlib/testdata/button.9.png
ridge/tests/com/android/layoutlib/testdata/layout1.xml
ridge/tests/src/android/graphics/Matrix_DelegateTest.java
ridge/tests/src/com/android/layoutlib/bridge/TestDelegates.java
ridge/tests/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParserTest.java
ridge/tests/src/com/android/layoutlib/testdata/layout1.xml
031d2f8b6db5bf7b249ae1c9a72915bf2d3a8d7b 08-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Adapt the HC layoutlib to GB. do not merge.

Change-Id: I0b2016987a65fabbc0ce7011514543349e9fb929
ridge/resources/bars/action_bar.xml
ridge/resources/bars/mdpi/ic_sysbar_back_default.png
ridge/resources/bars/mdpi/ic_sysbar_home_default.png
ridge/resources/bars/mdpi/ic_sysbar_recent_default.png
ridge/resources/bars/tablet_system_bar.xml
ridge/src/android/animation/PropertyValuesHolder_Delegate.java
ridge/src/android/app/Fragment_Delegate.java
ridge/src/android/graphics/BitmapFactory_Delegate.java
ridge/src/android/graphics/BitmapShader_Delegate.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/ColorFilter_Delegate.java
ridge/src/android/graphics/ColorMatrixColorFilter_Delegate.java
ridge/src/android/graphics/ComposeShader_Delegate.java
ridge/src/android/graphics/LightingColorFilter_Delegate.java
ridge/src/android/graphics/LinearGradient_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/PorterDuffColorFilter_Delegate.java
ridge/src/android/graphics/RadialGradient_Delegate.java
ridge/src/android/graphics/Region_Delegate.java
ridge/src/android/graphics/Shader_Delegate.java
ridge/src/android/graphics/SweepGradient_Delegate.java
ridge/src/android/view/LayoutInflater_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
ridge/src/com/android/layoutlib/bridge/bars/FakeActionBar.java
ridge/src/com/android/layoutlib/bridge/bars/PhoneSystemBar.java
ridge/src/com/android/layoutlib/bridge/bars/TabletSystemBar.java
ridge/src/com/android/layoutlib/bridge/impl/AnimationThread.java
ridge/src/com/android/layoutlib/bridge/impl/GcSnapshot.java
ridge/src/com/android/layoutlib/bridge/impl/PlayAnimationThread.java
ridge/src/com/android/layoutlib/bridge/impl/RenderDrawable.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/libcore/icu/ICU_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/Main.java
4b52ec49fee79b0488d6a9eaaa4ea5d74ce90905 08-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Original import of Honeycomb's layoutlib. do not merge.

frameworks/base.git @ f0a53435f14d23d9555fc46014352ee6a7baa647

Change-Id: Ibc215751693dc7650683b61bb458f7c8beaf8060
EADME
ridge/.classpath
ridge/Android.mk
ridge/resources/bars/action_bar.xml
ridge/resources/bars/hdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/hdpi/status_bar_background.9.png
ridge/resources/bars/mdpi/ic_sysbar_back_default.png
ridge/resources/bars/mdpi/ic_sysbar_home_default.png
ridge/resources/bars/mdpi/ic_sysbar_recent_default.png
ridge/resources/bars/mdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/mdpi/status_bar_background.9.png
ridge/resources/bars/phone_system_bar.xml
ridge/resources/bars/tablet_system_bar.xml
ridge/resources/bars/title_bar.xml
ridge/src/android/animation/PropertyValuesHolder_Delegate.java
ridge/src/android/app/Fragment_Delegate.java
ridge/src/android/content/res/Resources_Theme_Delegate.java
ridge/src/android/graphics/AvoidXfermode_Delegate.java
ridge/src/android/graphics/Bitmap.java
ridge/src/android/graphics/BitmapFactory.java
ridge/src/android/graphics/BitmapFactory_Delegate.java
ridge/src/android/graphics/BitmapShader.java
ridge/src/android/graphics/BitmapShader_Delegate.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/BlurMaskFilter_Delegate.java
ridge/src/android/graphics/Canvas.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/ColorFilter_Delegate.java
ridge/src/android/graphics/ColorMatrixColorFilter_Delegate.java
ridge/src/android/graphics/ComposePathEffect_Delegate.java
ridge/src/android/graphics/ComposeShader.java
ridge/src/android/graphics/ComposeShader_Delegate.java
ridge/src/android/graphics/CornerPathEffect_Delegate.java
ridge/src/android/graphics/DashPathEffect.java
ridge/src/android/graphics/DashPathEffect_Delegate.java
ridge/src/android/graphics/DiscretePathEffect_Delegate.java
ridge/src/android/graphics/DrawFilter_Delegate.java
ridge/src/android/graphics/EmbossMaskFilter_Delegate.java
ridge/src/android/graphics/GradientShader.java
ridge/src/android/graphics/Gradient_Delegate.java
ridge/src/android/graphics/LayerRasterizer_Delegate.java
ridge/src/android/graphics/LightingColorFilter_Delegate.java
ridge/src/android/graphics/LinearGradient.java
ridge/src/android/graphics/LinearGradient_Delegate.java
ridge/src/android/graphics/MaskFilter_Delegate.java
ridge/src/android/graphics/Matrix.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/android/graphics/Paint.java
ridge/src/android/graphics/PaintFlagsDrawFilter_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/Path.java
ridge/src/android/graphics/PathDashPathEffect_Delegate.java
ridge/src/android/graphics/PathEffect_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/android/graphics/PixelXorXfermode_Delegate.java
ridge/src/android/graphics/PorterDuffColorFilter_Delegate.java
ridge/src/android/graphics/PorterDuffXfermode.java
ridge/src/android/graphics/PorterDuffXfermode_Delegate.java
ridge/src/android/graphics/RadialGradient.java
ridge/src/android/graphics/RadialGradient_Delegate.java
ridge/src/android/graphics/Rasterizer_Delegate.java
ridge/src/android/graphics/Region_Delegate.java
ridge/src/android/graphics/Shader.java
ridge/src/android/graphics/Shader_Delegate.java
ridge/src/android/graphics/SumPathEffect_Delegate.java
ridge/src/android/graphics/SweepGradient.java
ridge/src/android/graphics/SweepGradient_Delegate.java
ridge/src/android/graphics/Typeface.java
ridge/src/android/graphics/Typeface_Delegate.java
ridge/src/android/graphics/Xfermode_Delegate.java
ridge/src/android/os/Build_Delegate.java
ridge/src/android/os/Handler_Delegate.java
ridge/src/android/os/SystemClock_Delegate.java
ridge/src/android/util/FloatMath.java
ridge/src/android/util/FloatMath_Delegate.java
ridge/src/android/view/BridgeInflater.java
ridge/src/android/view/LayoutInflater_Delegate.java
ridge/src/android/view/View_Delegate.java
ridge/src/com/android/internal/util/XmlUtils_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeAssetManager.java
ridge/src/com/android/layoutlib/bridge/BridgeConstants.java
ridge/src/com/android/layoutlib/bridge/BridgeContentResolver.java
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/BridgeXmlBlockParser.java
ridge/src/com/android/layoutlib/bridge/BridgeXmlPullAttributes.java
ridge/src/com/android/layoutlib/bridge/FontLoader.java
ridge/src/com/android/layoutlib/bridge/LayoutResult.java
ridge/src/com/android/layoutlib/bridge/NinePatchDrawable.java
ridge/src/com/android/layoutlib/bridge/ResourceHelper.java
ridge/src/com/android/layoutlib/bridge/ResourceValue.java
ridge/src/com/android/layoutlib/bridge/android/BridgeAssetManager.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContentProvider.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContentResolver.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeLayoutParamsMapAttributes.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
ridge/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParser.java
ridge/src/com/android/layoutlib/bridge/android/BridgeXmlPullAttributes.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/FakeActionBar.java
ridge/src/com/android/layoutlib/bridge/bars/PhoneSystemBar.java
ridge/src/com/android/layoutlib/bridge/bars/TabletSystemBar.java
ridge/src/com/android/layoutlib/bridge/bars/TitleBar.java
ridge/src/com/android/layoutlib/bridge/impl/AnimationThread.java
ridge/src/com/android/layoutlib/bridge/impl/DelegateManager.java
ridge/src/com/android/layoutlib/bridge/impl/FontLoader.java
ridge/src/com/android/layoutlib/bridge/impl/GcSnapshot.java
ridge/src/com/android/layoutlib/bridge/impl/PlayAnimationThread.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
ridge/src/com/android/layoutlib/bridge/impl/RenderDrawable.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
ridge/src/com/android/layoutlib/bridge/impl/Stack.java
ridge/src/com/android/layoutlib/bridge/util/Debug.java
ridge/src/com/android/layoutlib/bridge/util/SparseWeakArray.java
ridge/src/libcore/icu/ICU_Delegate.java
ridge/tests/com/android/layoutlib/bridge/AndroidGraphicsTests.java
ridge/tests/com/android/layoutlib/bridge/BridgeXmlBlockParserTest.java
ridge/tests/com/android/layoutlib/bridge/NinePatchTest.java
ridge/tests/com/android/layoutlib/bridge/TestClassReplacement.java
ridge/tests/com/android/layoutlib/bridge/TestDelegates.java
ridge/tests/com/android/layoutlib/bridge/android/BridgeXmlBlockParserTest.java
reate/README.txt
reate/src/com/android/tools/layoutlib/annotations/LayoutlibDelegate.java
reate/src/com/android/tools/layoutlib/annotations/Nullable.java
reate/src/com/android/tools/layoutlib/annotations/VisibleForTesting.java
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/ClassHasNativeVisitor.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/DelegateClassAdapter.java
reate/src/com/android/tools/layoutlib/create/DelegateMethodAdapter.java
reate/src/com/android/tools/layoutlib/create/ICreateInfo.java
reate/src/com/android/tools/layoutlib/create/Main.java
reate/src/com/android/tools/layoutlib/create/TransformClassAdapter.java
reate/tests/com/android/tools/layoutlib/create/AsmAnalyzerTest.java
reate/tests/com/android/tools/layoutlib/create/AsmGeneratorTest.java
reate/tests/com/android/tools/layoutlib/create/ClassHasNativeVisitorTest.java
reate/tests/com/android/tools/layoutlib/create/DelegateClassAdapterTest.java
reate/tests/com/android/tools/layoutlib/create/LogTest.java
reate/tests/com/android/tools/layoutlib/create/MockLog.java
reate/tests/com/android/tools/layoutlib/create/dataclass/ClassWithNative.java
reate/tests/com/android/tools/layoutlib/create/dataclass/ClassWithNative_Delegate.java
reate/tests/com/android/tools/layoutlib/create/dataclass/OuterClass.java
reate/tests/com/android/tools/layoutlib/create/dataclass/OuterClass_Delegate.java
reate/tests/com/android/tools/layoutlib/create/dataclass/OuterClass_InnerClass_Delegate.java
f0a53435f14d23d9555fc46014352ee6a7baa647 24-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Add debug mode.

Change-Id: If4263c7dba63a063f84e0c6988c270eb6d291ac3
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/ColorFilter_Delegate.java
ridge/src/android/graphics/DrawFilter_Delegate.java
ridge/src/android/graphics/MaskFilter_Delegate.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/PathEffect_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/android/graphics/Rasterizer_Delegate.java
ridge/src/android/graphics/Region_Delegate.java
ridge/src/android/graphics/Shader_Delegate.java
ridge/src/android/graphics/Typeface_Delegate.java
ridge/src/android/graphics/Xfermode_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/DelegateManager.java
ridge/src/com/android/layoutlib/bridge/util/Debug.java
b2c7dd5986344369f02dfe2965b309153b121127 24-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: downsize the SparseArray when possible.

Change-Id: I570b93ab161414b7729f8d2dce8ddadb706f186b
ridge/src/com/android/layoutlib/bridge/util/SparseWeakArray.java
c6083f2c9eadb1f8a502ea9806868f5b0148667e 23-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: misc fixes.

- implement some Paint methods that are needed for 2.x
- fix the phone system bar to display the icons on the right.

Change-Id: I3a938b14ec9a449dbc23a33303a3c8405a5369a8
ridge/resources/bars/phone_system_bar.xml
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/com/android/layoutlib/bridge/bars/PhoneSystemBar.java
cc4977d0fdaf657907912fd6cc2f9426dc8d2e36 22-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Hold onto delegate references.

When an object is given a delegate to hold onto, keep
the reference to the delegate instead of its native integer.

Also change the way the finalizer works by not explicitely deleting
the delegate. Instead we want the delegate to be deleted when
nothing holds a reference to it. To do this, instead of using
a regular SparseArray, we use a SparseArray of WeakReferences.
Because the main Java object that "owns" the delegate does not
actually holds a reference to the delegate, we fake this by
having the delegate manager hold a reference to delegates for
the main object. This is added/removed as the object is created
and the native finalized is called.

This makes layoutlib behave more like the JNI code where the native
objects are reference counted, and where the Java object can be
deleted but the delegate it owns is kept around (usually because
another type of delegates hold a reference on it.)

To properly handle the WeakReferences, we need to be able to
regularly clear the SparseArray of WeakReference that were
referencing objects that have been GC'ed.
Since the SparseArray is regularly being compacted (actually only
when items are removed), we use a custom SparseWeakArray (started
as a straight copy of SparseArray) that handles the WeakReference
and takes care of compacting the array by removing deleted indices
and WeakReference that returns null. Since our specific use case
doesn't call actually delete() or remove(), the compacting
only happens when the array needs to be resized.

Change-Id: Iacc5c1ff5b21732b8816fda87eb090da12d034e0
ridge/src/android/graphics/AvoidXfermode_Delegate.java
ridge/src/android/graphics/BitmapShader_Delegate.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/BlurMaskFilter_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/ColorFilter_Delegate.java
ridge/src/android/graphics/ColorMatrixColorFilter_Delegate.java
ridge/src/android/graphics/ComposePathEffect_Delegate.java
ridge/src/android/graphics/ComposeShader_Delegate.java
ridge/src/android/graphics/CornerPathEffect_Delegate.java
ridge/src/android/graphics/DashPathEffect_Delegate.java
ridge/src/android/graphics/DiscretePathEffect_Delegate.java
ridge/src/android/graphics/DrawFilter_Delegate.java
ridge/src/android/graphics/EmbossMaskFilter_Delegate.java
ridge/src/android/graphics/LayerRasterizer_Delegate.java
ridge/src/android/graphics/LightingColorFilter_Delegate.java
ridge/src/android/graphics/LinearGradient_Delegate.java
ridge/src/android/graphics/MaskFilter_Delegate.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/PaintFlagsDrawFilter_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/PathDashPathEffect_Delegate.java
ridge/src/android/graphics/PathEffect_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/android/graphics/PixelXorXfermode_Delegate.java
ridge/src/android/graphics/PorterDuffColorFilter_Delegate.java
ridge/src/android/graphics/PorterDuffXfermode_Delegate.java
ridge/src/android/graphics/RadialGradient_Delegate.java
ridge/src/android/graphics/Rasterizer_Delegate.java
ridge/src/android/graphics/Region_Delegate.java
ridge/src/android/graphics/Shader_Delegate.java
ridge/src/android/graphics/SumPathEffect_Delegate.java
ridge/src/android/graphics/SweepGradient_Delegate.java
ridge/src/android/graphics/Typeface_Delegate.java
ridge/src/android/graphics/Xfermode_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/DelegateManager.java
ridge/src/com/android/layoutlib/bridge/util/SparseWeakArray.java
8cb6fc184dcb9cc6ab0871de5cf430277d15c8c8 23-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Import of SparseArray as SparseWeakArray.

This is a straight copy for easy review of the customization.

Change-Id: I351ec570c3e7a025561939ab05c1ae7eded30b38
ridge/src/com/android/layoutlib/bridge/util/SparseWeakArray.java
1ca584a2bb5c0f0e747c98f2e930cce8b53421a5 19-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: remove assert in resource resolution.

These code paths were valid in case there's a mismatch
between the style/theme/version of Android

Change-Id: I8cb3b2a3f3a1ef5c37ccec0c8ddbb7add69bfbe0
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
3e87bfa1911de10c3d0692b34eba27f5965710f7 19-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: support defStyleRes in obtainStyledAttributes.

This fix the Spinner rendering.

Change-Id: I20a71d9e07f6c86652a74fba3fc05a027a057ff8
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
f20999965b94bdcc2b1f2c05b587ff405924bc96 19-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: properly handle @null references in more places.

Change-Id: I240298ab79c19ab0e49cb6da19d6b0187493d3b5
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
10df650f0d4bdf086dae9ac29fafd8a1ded06c23 17-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: add support for layout_only render.

Change-Id: I1cd791cf9560156c1ac488f8e454240c84e29cc6
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
559358fdf65b1b551312526940cb02ec23bf6d9d 14-Feb-2011 Xavier Ducrohet <xav@android.com> am 1858c95e: am 02d2b5a4: LayoutLib: When possible ensure parsers are popped from the stack.

* commit '1858c95e99f81ac46eea93288cb8866260b3d5d8':
LayoutLib: When possible ensure parsers are popped from the stack.
02d2b5a4031c80bfe1012ce2f4f7b3695762abd9 14-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: When possible ensure parsers are popped from the stack.

Some parser consumers (seems to be mostly resource inflation)
don't use the pull parser up to the END_DOCUMENT tag, making
the parser not pop itself from the parser stack automatically.

This is likely due to the XML resources being very shallow (1-2 levels
max), and the inflater just reading the content that it expects instead
of parsing till the document is done.

This ensures that *some* parsers are pop'ed from the stack when
used. Some other parsers we don't really control and hope the
user will parse till END_DOCUMENT.

Change-Id: Ie1f5762983fed2b2ae97b896218ae12b493e7ad9
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParser.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
8a80a8555238cc564f445f902aff5231993a8f96 10-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: remove some exceptions.

We need to move away from throwing anything and instead
log errors/warnings.

Change-Id: Ib1af71a90c06e8565fbd0c061ba56f4d19baa3df
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
9a4fe29c8d92014d2d9a848e9116b8cc9d0842f9 10-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Annotate the custom delegate methods.

Every method implementing a delegate needed by the
layoutlib_create bytecode modification must now be
annotated with LayoutlibDelegate.

The methods in the original source code that are delegated
are already automatically annotated. Now with the implementations
being annotated we can do bi-directional tests and find not
only missing implementations but also dead obsolete code.

This will be useful when backporting to earlier versions of
Android, or when native (non public) method disappear. In fact,
the new test detected one such method in Shader.

Change-Id: I491708b68ac2736ca5669aa86cd5e930a00f9db3
ridge/src/android/animation/PropertyValuesHolder_Delegate.java
ridge/src/android/app/Fragment_Delegate.java
ridge/src/android/content/res/Resources_Theme_Delegate.java
ridge/src/android/graphics/AvoidXfermode_Delegate.java
ridge/src/android/graphics/BitmapFactory_Delegate.java
ridge/src/android/graphics/BitmapShader_Delegate.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/BlurMaskFilter_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/ColorFilter_Delegate.java
ridge/src/android/graphics/ColorMatrixColorFilter_Delegate.java
ridge/src/android/graphics/ComposePathEffect_Delegate.java
ridge/src/android/graphics/ComposeShader_Delegate.java
ridge/src/android/graphics/CornerPathEffect_Delegate.java
ridge/src/android/graphics/DashPathEffect_Delegate.java
ridge/src/android/graphics/DiscretePathEffect_Delegate.java
ridge/src/android/graphics/DrawFilter_Delegate.java
ridge/src/android/graphics/EmbossMaskFilter_Delegate.java
ridge/src/android/graphics/LayerRasterizer_Delegate.java
ridge/src/android/graphics/LightingColorFilter_Delegate.java
ridge/src/android/graphics/LinearGradient_Delegate.java
ridge/src/android/graphics/MaskFilter_Delegate.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/android/graphics/PaintFlagsDrawFilter_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/PathDashPathEffect_Delegate.java
ridge/src/android/graphics/PathEffect_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/android/graphics/PixelXorXfermode_Delegate.java
ridge/src/android/graphics/PorterDuffColorFilter_Delegate.java
ridge/src/android/graphics/PorterDuffXfermode_Delegate.java
ridge/src/android/graphics/RadialGradient_Delegate.java
ridge/src/android/graphics/Rasterizer_Delegate.java
ridge/src/android/graphics/Region_Delegate.java
ridge/src/android/graphics/Shader_Delegate.java
ridge/src/android/graphics/SumPathEffect_Delegate.java
ridge/src/android/graphics/SweepGradient_Delegate.java
ridge/src/android/graphics/Typeface_Delegate.java
ridge/src/android/graphics/Xfermode_Delegate.java
ridge/src/android/os/Build_Delegate.java
ridge/src/android/os/Handler_Delegate.java
ridge/src/android/os/SystemClock_Delegate.java
ridge/src/android/util/FloatMath_Delegate.java
ridge/src/android/view/LayoutInflater_Delegate.java
ridge/src/android/view/View_Delegate.java
ridge/src/com/android/internal/util/XmlUtils_Delegate.java
ridge/src/libcore/icu/ICU_Delegate.java
ridge/tests/com/android/layoutlib/bridge/TestClassReplacement.java
ridge/tests/com/android/layoutlib/bridge/TestDelegates.java
f3f608452c080f050e2b5088d421ffe22641531f 10-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: now depends on tools-common-prebuilt.

Change-Id: I11196c2363da378027fb8ca001e7dce0f58f657f
ridge/.classpath
ridge/Android.mk
abc33e014d4490dc993d1453e2589f538dbd7bbe 08-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: fix the background of title/action bars.

The bars are supposed to sit on top of the window so
that if they are transparent (which is the default case
for the action bar), the window background shows through.

Fix this using a layout to represent the window content
(all but the system bar) in which the title/action bars
and the layout content sits. This layout receives the
windowBackground drawable.

Change-Id: I8072c5ff52f585fa32acb589d8526e1c13cbcd94
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/PhoneSystemBar.java
ridge/src/com/android/layoutlib/bridge/bars/TabletSystemBar.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
4dd2299d5766bf14479578772a0946c5399a0158 07-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Update to latest API fix.

Change-Id: I5147010e4f16a5c2ea0b98709c42f7ecd9412ff6
ridge/src/com/android/layoutlib/bridge/Bridge.java
62a99c0b3bca70262ab205a5688ff69cbbbaee78 07-Feb-2011 Xavier Ducrohet <xav@android.com> Merge "LayoutLib: Handle color state list in methods returning an int." into honeycomb
d96a7403cda1a873e640b6e6395ddab4c2f9b9f9 07-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Handle color state list in methods returning an int.

Change-Id: Ia35ea09b992a239873026c7ef1629a01dd2e6cec
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
13bdc3355c781dc2614f2810a42d3a9e73f5bed9 06-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: improved rendering for system/title/action bars.

Change-Id: I926531e9ad4a7b98e04e23cac3837794f7c89449
ridge/resources/bars/action_bar.xml
ridge/resources/bars/hdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/hdpi/status_bar_background.9.png
ridge/resources/bars/mdpi/status_bar_background.9.png
ridge/resources/bars/phone_system_bar.xml
ridge/resources/bars/tablet_system_bar.xml
ridge/resources/bars/title_bar.xml
ridge/src/android/graphics/BitmapFactory_Delegate.java
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/PhoneSystemBar.java
ridge/src/com/android/layoutlib/bridge/bars/TabletSystemBar.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
fd18f573280bbbcc549b35b548580a562bd960e2 05-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: add implementation of Bridge.renderDrawable()

Change-Id: Ic4d96488fd1a2e5b7d24353bebc8fdb24262c1d1
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
ridge/src/com/android/layoutlib/bridge/impl/RenderDrawable.java
b0d34f9c99cbd43e8238c5952b19d032f02dd168 05-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: split RenderSession's base method into RenderAction.

This will allow us to create RenderDrawable that extends RenderAction.

Change-Id: If9cd350453ceffae4859a925a7b436502b311f9c
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
1126422ee1f532d8582a4e3b56dbfe505c15e775 05-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: update to the new API.

Change-Id: Ice028933cd2270c81c3d17f7bef7c5a9d14bd802
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
779c906592b67867fee83a6527d474c333a701ff 05-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Replace custom BitmapFactory by a simpler delegate

Change-Id: Ie61a0a5b4426e64bb71a22d76d05efa4c0865e5e
ridge/src/android/graphics/BitmapFactory.java
ridge/src/android/graphics/BitmapFactory_Delegate.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
bbbb8326020368958a3f1d248878329e9d6b10c0 28-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: render system/title/action bars.

Also a few generic fixes in the layoutlib itself to support
this.

Change-Id: Ie3f24c9056bd3cc72f39f8a4f2c0861be15bff55
ridge/Android.mk
ridge/resources/bars/action_bar.xml
ridge/resources/bars/mdpi/ic_sysbar_back_default.png
ridge/resources/bars/mdpi/ic_sysbar_home_default.png
ridge/resources/bars/mdpi/ic_sysbar_recent_default.png
ridge/resources/bars/mdpi/stat_sys_wifi_signal_4_fully.png
ridge/resources/bars/phone_system_bar.xml
ridge/resources/bars/tablet_system_bar.xml
ridge/resources/bars/title_bar.xml
ridge/src/android/graphics/BitmapFactory.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/bars/CustomBar.java
ridge/src/com/android/layoutlib/bridge/bars/FakeActionBar.java
ridge/src/com/android/layoutlib/bridge/bars/PhoneSystemBar.java
ridge/src/com/android/layoutlib/bridge/bars/TabletSystemBar.java
ridge/src/com/android/layoutlib/bridge/bars/TitleBar.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
33758ef8c98efb669c65eb9404b99ee5df09c6b5 03-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Fix some rendering issues

Change-Id: I662a39a783de5bc7f3063f46cedaab11c7e6496e
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
345f866bfd09476fd62aa10345a0670cc110b63c 02-Feb-2011 Xavier Ducrohet <xav@android.com> Make TimePicker/DatePicker/CalendarView render in Eclipse.

Change-Id: Id5313a6f0f53bf45f6eaabc0e10fcf0660eeac08
ridge/src/android/content/res/Resources_Theme_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/libcore/icu/ICU_Delegate.java
ridge/tests/com/android/layoutlib/bridge/TestDelegates.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
811820f440b24db200e66874d42331023b7cd389 28-Jan-2011 Raphael <raphael@google.com> LayoutLib.Create: support Outer_Inner_Delegate renaming.

When generating delegates, LayoutLib.Create support renaming
inner classes. Only one level of inner class is supported.

The method Outer$Inner#get(...) generates a call to:
static Outer_Inner_Delegate#get(Outer instance, Outer$Inner instance, ...)

Change-Id: Ie70f2b8e5e5f311ed9c7f26b7f64637ae6157a51
reate/src/com/android/tools/layoutlib/create/DelegateMethodAdapter.java
reate/tests/com/android/tools/layoutlib/create/DelegateClassAdapterTest.java
reate/tests/com/android/tools/layoutlib/create/dataclass/ClassWithNative.java
reate/tests/com/android/tools/layoutlib/create/dataclass/ClassWithNative_Delegate.java
reate/tests/com/android/tools/layoutlib/create/dataclass/OuterClass.java
reate/tests/com/android/tools/layoutlib/create/dataclass/OuterClass_Delegate.java
reate/tests/com/android/tools/layoutlib/create/dataclass/OuterClass_InnerClass_Delegate.java
b353495192ba1acce94b8ab8aeeffe3c9a3bcfac 28-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: update with Pair API.

Change-Id: Iba945153f7544872ea84e3311584223aea740e2e
ridge/.classpath
ridge/Android.mk
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/android/BridgeXmlPullAttributes.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
35ea7cd4c0c89122fda0b57af20061645082ffb9 28-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Update with the new resource map APIs.

Change-Id: I30d83c2bb4569513f4f5e22670cffe938706f105
ridge/src/android/graphics/Gradient_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/android/BridgeXmlPullAttributes.java
ridge/src/com/android/layoutlib/bridge/impl/FontLoader.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
16584225125acba18b74920b902c798dfead0328 28-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Properly compute available space to layouts.

Also display placeholders for status/title/action bars depending
on if the app is a tablet and its theme.

Change-Id: I651c1a2e5cfde165e004c11b236e6df056853dec
ridge/.classpath
ridge/Android.mk
ridge/src/android/graphics/BitmapFactory.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
31fd1cf7697ef777b41c7a6a20e37ff5d573d732 27-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: put a default image on the quickcontactbadge.

Change-Id: I64b3f4004801ec03f374460384f9a492e66bfaf0
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
5a82d8c58bf91c357c37a82b9f5e5c26f676d847 27-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: properly erase the bitmap when rendering a new session.

This fix the issue where going from a full theme to a dialog theme
would show the dialog on top of the previous rendering.

Change-Id: Ib52b9719f44b04969423547b9de8d039f90b6f46
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/impl/AnimationThread.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
7d7016e72431ad7ee595d857a19231c69efeb6de 26-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: return ViewInfo for all merged items + Build init.

android.os.Build is now initialized from the build properties
parsed from the SDK build.prop file.

Change-Id: If16953215ca90fb0beacb51bf405b89a5c8a34fa
ridge/src/android/graphics/Region_Delegate.java
ridge/src/android/os/Build_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
82b9232565bfececdb643a94cecdd1bd1cb5c643 24-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Use special view cookie for include-merge case.

All items directly under the <merge> tag now return the view cookie
of the referencing <include> tag using a special class for
easy differentiation in the calling client.

Change-Id: I7a2a4e642be9564f47e256fd1586012497d34792
ridge/src/android/view/LayoutInflater_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java
ridge/tests/com/android/layoutlib/bridge/TestDelegates.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
664644d9e012aa2a28ac96f305b1ce6499ec8806 24-Jan-2011 Joe Onorato <joeo@google.com> visibility ("lights out") API.

1. Views may setSystemUiVisibility() to recommend that
the system chrome (status bar or other UI) show or hide
itself. (This functionality was previously available only
via the FLAG_FULLSCREEN window flag for some SystemUI
implementations.)

2. Views may register a OnSystemUiVisibilityChangedListener
on a view, and find out when the system UI actually
appears or disappears, allowing apps to coordinate the
appearance of their own UI if desired.

Bug: 3241144
Change-Id: Ia1758d94099182d49a1e3688ea2738ae4995b829
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
9d0577ec0c285c055da4c910dcb597fdae5bc5e5 18-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: properly configure ApplicationInfo with targetSdkVersion.

Change-Id: I1bfef890206552843d1a7a8d0564741f2a37494f
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
796992a942f3508a15ee62d34d6c7ec5de045d83 18-Jan-2011 Tor Norbye <tnorbye@google.com> Allow TabHosts to have no children in the tabcontent widget

Replace the code which throws an exception if there are no children in
the FrameLayout that is the tabcontent, with code to add a single
dummy tab.

This makes the TabHost renderable in those scenarios where the real
tabs are added dynamically rather than via XML.

Change-Id: I72442bd7d40eddd875b3507585c1f372fcae3329
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
70552fb92dbc5cb5b1d53b20f92f2a64969a50c4 17-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Update to use the new RenderResources API.

Change-Id: Ic64eff3f324c4519da89bab10e6d59f0a9341a04
ridge/src/com/android/ide/common/resources/ResourceResolver.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/android/BridgeXmlPullAttributes.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
87ab45c0fe4db814a7364fce3b88be3a49507e90 17-Jan-2011 Xavier Ducrohet <xav@android.com> Merge "LayoutLib: extract resource resolution into its own class." into honeycomb
fbf097732137a32930d151f7ba6816a5b870c32a 16-Jan-2011 Jeff Brown <jeffbrown@google.com> Support non-rectangular input regions.

This enables the system bar to carve out a region through which
events will be sent to the IME behind it.

Bug: 3238092
Change-Id: I69b855a8d9b5b3ee525266c0861826e53e5b5028
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
d1d6fafc7fc63543b10552dadf202dd6fa40fe6b 16-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: extract resource resolution into its own class.

Next step is to make it a jar that will also live in
ADT.
The version in layoutlib will be through a prebuilt jar
file, like ninepatch.

Also add ninepatch.jar inside the layoutlib.jar file.

Change-Id: I4a0cc9f2dd99709de6408386054c6d4abae7c824
ridge/Android.mk
ridge/src/com/android/ide/common/resources/ResourceResolver.java
ridge/src/com/android/layoutlib/bridge/BridgeConstants.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/android/BridgeXmlPullAttributes.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
51a7e5447de94791c464cda5cc6ebbf616d73c80 15-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: update logs to use new data bundle

Also change some resource.resolve tags to resource.format

Change-Id: I3f0b0d2eb69a5ec98375e4014a3bb1bfceb8c855
ridge/src/android/graphics/BitmapFactory.java
ridge/src/android/graphics/BitmapShader_Delegate.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/LinearGradient_Delegate.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/android/graphics/PorterDuffXfermode_Delegate.java
ridge/src/android/graphics/RadialGradient_Delegate.java
ridge/src/android/graphics/Region_Delegate.java
ridge/src/android/graphics/SweepGradient_Delegate.java
ridge/src/android/graphics/Typeface_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/impl/GcSnapshot.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
0831b3fae504e8fa94e6b1cc0d4e6c3fccaef231 15-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Misc fixes.

- Fix resource resolution for framework
resources of type "id" that are dynamically generated
through "@+id/..."

- Proper implementation of setBitmap on a canvas that
already has a bitmap. Transform/clip are kepts but the
existing layers are replaced with the new bitmap

- return a null service for INPUT_METHOD_SERVICE in
Context.getSystemService

Change-Id: I35e46fff50e6492a8995e95427d5f38bc945429d
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/impl/GcSnapshot.java
bbefc8662ac733fd6abfae54d97730506b5e2bd6 14-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Fix multi-line text rendering.

Stupid indices.

Change-Id: I1dbdd04b8f25a5769de8dc21e6c513cef3e35635
ridge/src/android/graphics/Canvas_Delegate.java
918aaa5717fce6081557c82ce1c439b6922737d5 13-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Use the new log tag constants from LayoutLog

Change-Id: I29dd578ae16405358d3673caf13528be393f0967
ridge/src/android/graphics/BitmapFactory.java
ridge/src/android/graphics/BitmapShader_Delegate.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/LinearGradient_Delegate.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/android/graphics/PorterDuffXfermode_Delegate.java
ridge/src/android/graphics/RadialGradient_Delegate.java
ridge/src/android/graphics/Region_Delegate.java
ridge/src/android/graphics/SweepGradient_Delegate.java
ridge/src/android/graphics/Typeface_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeConstants.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/impl/GcSnapshot.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
310a4d815b693e358d151b9aa2823c5022993f9b 13-Jan-2011 Xavier Ducrohet <xav@android.com> LAyoutLib: Fix build by adding missing IWindowSession implementation.

Change-Id: I0af178d149b782cac3ae0c36fa5fc03f4dc6118b
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
1f1957f50fec4bc8d8716793d22bb23ee7fb4a7f 13-Jan-2011 Xavier Ducrohet <xav@android.com> Merge "LayoutLib: move MockView back into its original package." into honeycomb
66a95e4dbeb1c6d33ceb7c320033041e7f8e2aaa 13-Jan-2011 Xavier Ducrohet <xav@android.com> Merge "LayoutLib: Add getViewParent/getViewIndex on RenderSession." into honeycomb
ee592fe4e60e940599fc1ccf43a98eb80961feb8 13-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: move MockView back into its original package.

This is used by Eclipse when the custom view is not found.
It couldn't find the view in the new package either.

We should probably move this logic of creating a mock view
into the layout library instead.

Change-Id: Ifa1a717cddf7004a7719bb4d0798cd53b43273ea
ridge/src/android/view/SurfaceView.java
ridge/src/android/webkit/WebView.java
ridge/src/com/android/layoutlib/bridge/MockView.java
ridge/src/com/android/layoutlib/bridge/android/MockView.java
ridge/src/com/google/android/maps/MapView.java
162ee1ed3d6c8a1e6d9347136e623e3429f6f3f8 13-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Add getViewParent/getViewIndex on RenderSession.

Change-Id: If91aa837b71a7329f53b1c4190332c2296166940
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
cb27d4b2f530033c90432745115b914d8f26c3e7 13-Jan-2011 Xavier Ducrohet <xav@android.com> Merge "LayoutLib: use tags in logs." into honeycomb
56222cfbe9973c518f7e8c9113c614de80b5a4b2 13-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: use tags in logs.

Change-Id: Ib85272249d285ecef409bf063903bcd91514a424
ridge/src/android/graphics/BitmapFactory.java
ridge/src/android/graphics/BitmapShader_Delegate.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/LinearGradient_Delegate.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/android/graphics/PorterDuffXfermode_Delegate.java
ridge/src/android/graphics/RadialGradient_Delegate.java
ridge/src/android/graphics/Region_Delegate.java
ridge/src/android/graphics/SweepGradient_Delegate.java
ridge/src/android/graphics/Typeface_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeConstants.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/impl/AnimationThread.java
ridge/src/com/android/layoutlib/bridge/impl/GcSnapshot.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
02d2b3ba9ba830a8147db2739613f7bbb2d0fcbf 11-Jan-2011 Christopher Tate <ctate@google.com> API CHANGE: startDrag() now takes "int flags" instead of "boolean localOnly"

There will be, in the future, a flag (View.DRAG_FLAG_GLOBAL) that means
for the drag to be cross-application. For now that flag constant is @hide
and furthermore the server-side implementation strips it, enforcing
local-only drags.

Change-Id: I8db840480ab90e18a5b8ecf29d62b4e6eafd405e
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
d7cbf3f72c73ba01293f6676453352ef60df3778 12-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Log error when style can't be found.

Change-Id: I9a88cdac44a2d31c053e7f0c92a14e69bd82ac83
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
85de0087fc6a65a66d3994f0b8dd3fecd9db2526 12-Jan-2011 Xavier Ducrohet <xav@android.com> Merge "LayoutLib: misc fix." into honeycomb
639e1bd35231a8f71e7acc95fedaf13ace9b65a9 12-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: misc fix.

Change-Id: I0e2eff376d8f8e7682c28ef771b886d5fab5ff65
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
6c740cf71e5ce5ba7c8493c545c3a57c57ac7024 11-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Improve error reporting.

Change-Id: I37cad7e2efb959202960c57b271c55c759867139
ridge/src/android/graphics/BitmapFactory.java
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/com/android/internal/util/XmlUtils_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
0de16070935adb8656d646b8c69a362652db7443 11-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: fix XmlUtils.convertValueToInt

It looks like the device implementation of Integer.parseInt
is able to handle converting hexa value > 80000000 while the
desktop VM cannot.

This patch provide a fix for this.

While implementing it and running the TestDegates test I realized
that some delegate methods for Region were mising, so this adds them
too.

Change-Id: Ifee1efd47c8c52adc2f4658ec4fc8bd55adb84b4
ridge/src/android/graphics/Region_Delegate.java
ridge/src/com/android/internal/util/XmlUtils_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
b3830b8978aa05746912210932e26ebf1836aab5 11-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: only support animator-type animations.

Change-Id: Ia3609fc5d11555190bc323d61a3577144a4692fd
ridge/src/com/android/layoutlib/bridge/BridgeConstants.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
eb87b3bb53a8a9e9a246b4b70ea40172e2229c85 11-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: fix some issue with resource resolution.

TypedArray.getResourceId() is not only about id/foo,
it can be any type of resources.

Change-Id: Ia5e147bc078bb349a3fa500a04c596ae44ea34ce
ridge/src/com/android/layoutlib/bridge/BridgeConstants.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
419e8296ea76c5f1db1abbaa88b39b538fa42403 10-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: move asserts around.

Change-Id: I6fcfcf2e6fad1d9fa172b9a8c20c72fa2533e7fa
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
c77515e59029580caa68ba7602264ebdfd602daf 10-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: display warning when a resource reference fails to resolve.

Also fixed some warnings where a field hid one from a parent class.

Change-Id: I04ed19ebc49ae0bb0abdb0b25bc1c182fa0db440
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
479101a9b4142d21d42351684bc9bc65ec3471be 09-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Fix moveChild animation.

Only support animation for view move inside
the same layout.

Also fix animation thread to property support multiple
animation running at once.

Change-Id: I45cad84e7b9f3a4f281c956d32934eb74e807afb
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/impl/AnimationThread.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
b6e53f481294aec2edac5d83d9fde81827c23bd7 08-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: add a few misc implementations.

Change-Id: I586f1d5ecc4f254fc04ea1171eb499d06ac592eb
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
46a329244db12b6f7afc3c9a6409d420241a1058 08-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: finish Typeface and unload them in dispose.

Change-Id: I3a48f84678f62d669d303fc73b041bb3fe5f333b
ridge/src/android/graphics/Typeface_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
7550ec1d8e526c4ae8c0bb08b06e1b6e799eacec 08-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: remove fade in/out transition on moveChild.

Change-Id: I69a70ecb165f19feca55fc30a3f48ebea896daa3
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
d7cc1244d7f0901688545c8535fa531fbb68669a 08-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: fix moveChild again.

Change-Id: Ib69a06e44be1e332f0f43c36c795c86270cb1b71
ridge/src/com/android/layoutlib/bridge/impl/AnimationThread.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
2b9c38ab62abc8d5b2f956e961087f259caf25ff 07-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: fix animated moveChild.

The child can only be added to the new viewgroup
after it's been removed from the previous one, which
is delayed if there's an animation.

Change-Id: I9123a2670d0d17b3eb6f8f89085ebab8ca2b800f
ridge/src/com/android/layoutlib/bridge/impl/AnimationThread.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
10af738336cb18c5d86710b2961d91e2d3e8d410 07-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Finish the matrix delegate.

Change-Id: Ife70a4707c113f4a2aed18e303cb2f221c73db2a
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
a7cac5e0542779cadf0f5ccf71584e4b4425f7a6 07-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: fix clipping issues.

There were two issues:
- Graphics2D.setClip only works on rectangular shapes.
This means doing a setClip on a non rectangular shape should
basically reset the clip and intersect with the new shape.

- the current clip can be null, so the combineShape method
must handle it.

Change-Id: Id2cd7475e991d8b533ff2e8850cc2c27663f9e52
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Region_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/GcSnapshot.java
29c288da5260ac221b941e69b960aa2127cbdef0 03-Jan-2011 Xavier Ducrohet <xav@android.com> Cherry-pick 9b53dd9d60a01ddb1307177c296c7b4fd6114753 from master

Change-Id: I670872542feb62c47fe693eb183b19e2eef2b20d
LayoutLib: use new API with log in init method.
ridge/src/com/android/layoutlib/bridge/Bridge.java
c226e571fd6ce7db74fce87dbf300a70f8a58c29 03-Jan-2011 Xavier Ducrohet <xav@android.com> LayoutLib: Misc javadoc fixes.

Change-Id: Iabe081c20b361b034c2e66b975b8756c0fdcd3d1
ridge/src/android/graphics/ComposePathEffect_Delegate.java
ridge/src/android/graphics/CornerPathEffect_Delegate.java
ridge/src/android/graphics/DiscretePathEffect_Delegate.java
ridge/src/android/graphics/PathDashPathEffect_Delegate.java
ridge/src/android/graphics/SumPathEffect_Delegate.java
b44b43b1579486ff7ecd0f7528f17711acdeae98 23-Dec-2010 Xavier Ducrohet <xav@android.com> LayoutLib: Support Region through delegates.

also finish supporting some clip operation
on the canvas.

Change-Id: I743b9e52a7aa6e9340506f1c904cc1cfbf3ff81f
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/android/graphics/Region_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/GcSnapshot.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
d43909c7503e11eb335a452d296a10804bb01fd6 23-Dec-2010 Xavier Ducrohet <xav@android.com> LayoutLib: add support for unsupported drawing modifiers.

DrawFilter, Rasterizer, ColorFilter and MaskFilter
are not supported but we need to provide their
JNI counterparts anyway, to at least display warnings
when they are used.

Also improved the API to query Paint for Shaders
and PathEffects, and clean up some code by
moving asserts into the DelegateManager.

Change-Id: I8942514565d28576d5608c6373bda25d86d42ff2
ridge/src/android/graphics/BitmapShader_Delegate.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/BlurMaskFilter_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/ColorFilter_Delegate.java
ridge/src/android/graphics/ColorMatrixColorFilter_Delegate.java
ridge/src/android/graphics/DrawFilter_Delegate.java
ridge/src/android/graphics/EmbossMaskFilter_Delegate.java
ridge/src/android/graphics/LayerRasterizer_Delegate.java
ridge/src/android/graphics/LightingColorFilter_Delegate.java
ridge/src/android/graphics/MaskFilter_Delegate.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/android/graphics/PaintFlagsDrawFilter_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/android/graphics/PorterDuffColorFilter_Delegate.java
ridge/src/android/graphics/Rasterizer_Delegate.java
ridge/src/android/graphics/Shader_Delegate.java
ridge/src/android/graphics/Typeface_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/DelegateManager.java
ridge/src/com/android/layoutlib/bridge/impl/GcSnapshot.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
20805343296eef04081fee82fd04547f51225fe3 23-Dec-2010 Xavier Ducrohet <xav@android.com> LayoutLib: Fix Canvas layer support with 2+ layers

- When drawing is not clipped to the top layers,
drawing should not happen automatically on all
existing layers. Instead each layer's flags dictate
whether drawing should happen on layers beneath, starting
with the top layer.
- upon restore, the same mechanism is taken. Only blit
a layer into the layer beneath if it was drawn into
using the logic above.

Also fixed:
- saveLayer() does not, in fact, always save matrix
and clip info. The flag dictate this, the same way
it does in save()
- drawing code didn't properly detect the case of drawing
into layers if a save() was called after saveLayer().
Now the code only looks at the layer list which provide
all the needed info (flags mostly), and doesn't rely
on mLocalLayer (which is used during restore only now).
- Properly handle HAS_ALPHA_LAYER_SAVE_FLAG (or lack
thereof) when creating the BufferedImage for the layer.

Change-Id: I2fbbcc0f5d3a3dd208763705bc23e6658fd4e573
ridge/src/com/android/layoutlib/bridge/impl/GcSnapshot.java
b1da1afa7418960b650780250bbd34c81af61aa3 22-Dec-2010 Xavier Ducrohet <xav@android.com> LayoutLib: improve bitmap support.

Change-Id: I703c2bdf51380b54fd5c20b08d3bc74833d9bc6e
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/android/graphics/PorterDuffXfermode_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/GcSnapshot.java
d38e776a3cc8cb53945cbebafbe6f6c2e3501fa5 21-Dec-2010 Xavier Ducrohet <xav@android.com> LayoutLib: support for layers.

Layers require that drawing methods potentially
draw in more than one bitmaps.

To handle this this patch offers the following:
- move all drawing methods to use Drawable
- Drawables are now handled by GcSnapshot since
its the one handling the layers
- moved Canvas_Delegate.createCustomGraphics to
GcSnapshot which does not expose the Graphics2D
objects anymore so its draw() methods are the only
way to draw.
- handles creating layers in GcSnapshot.save() and
blitting them in restore()

Other changes:
- Clean up the create/save API in GcSnapshot
- Fixed drawing bitmaps with alpha and other
composite modes.

Change-Id: I1e230087493d044a10de71f4b6d29083e3f3bf64
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/ComposePathEffect_Delegate.java
ridge/src/android/graphics/ComposeShader_Delegate.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/impl/GcSnapshot.java
63fd87113cea6abec97a6cd966e090e9b590fc3b 21-Dec-2010 Xavier Ducrohet <xav@android.com> LayoutLib: Misc rendering fixes.

- always set up the stroke. Paint may not have the proper
style when drawing lines. stroke should still be setup.

- Fixed vertical linear gradient. Old code generated
a gradient ratio of NaN

- Fixed alpha rendering when using shaders. In that
case the alpha channel from the paint color should be
used in conjunction with the shader.

- Fixed miter limit. Java expects the value to be multiplied
by the stroke width

- Fixed support for drawing ALPHA_8 bitmaps. Java2D doesn't
have bitmaps with only alpha channels, so we keep using
ARGB bitmaps but when drawing them into a bitmap we erase
the color information.

Change-Id: I4f04341fc843e3f7dadd1fdbf709b11a4f1e24b9
ridge/src/android/graphics/AvoidXfermode_Delegate.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/DashPathEffect_Delegate.java
ridge/src/android/graphics/LinearGradient_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/PixelXorXfermode_Delegate.java
ridge/src/android/graphics/PorterDuffXfermode_Delegate.java
ridge/src/android/graphics/Xfermode_Delegate.java
d348b6eaa98e23cb38d90906df109aaa2d20ea7f 20-Dec-2010 Xavier Ducrohet <xav@android.com> LayoutLib: support for Path and BitmapShader using delegates.

Also created delegates for all missing shader, xfermode
and patheffect classes. Moved the logic of the xfermode,
and patheffects that was in Canvas_Delegate into the
xfermode/patheffect classes, and added support (in all
3 clases) for knowing if the shader/xfermode/patheffect
is actually supported or not. Make use of fidelityWarning
in LayoutLog if they are not.
ridge/src/android/graphics/AvoidXfermode_Delegate.java
ridge/src/android/graphics/BitmapShader_Delegate.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/ComposePathEffect_Delegate.java
ridge/src/android/graphics/ComposeShader_Delegate.java
ridge/src/android/graphics/CornerPathEffect_Delegate.java
ridge/src/android/graphics/DashPathEffect_Delegate.java
ridge/src/android/graphics/DiscretePathEffect_Delegate.java
ridge/src/android/graphics/Gradient_Delegate.java
ridge/src/android/graphics/LinearGradient_Delegate.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/android/graphics/Path.java
ridge/src/android/graphics/PathDashPathEffect_Delegate.java
ridge/src/android/graphics/PathEffect_Delegate.java
ridge/src/android/graphics/Path_Delegate.java
ridge/src/android/graphics/PixelXorXfermode_Delegate.java
ridge/src/android/graphics/PorterDuffXfermode_Delegate.java
ridge/src/android/graphics/RadialGradient_Delegate.java
ridge/src/android/graphics/Shader_Delegate.java
ridge/src/android/graphics/SumPathEffect_Delegate.java
ridge/src/android/graphics/SweepGradient_Delegate.java
ridge/src/android/graphics/Xfermode_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
19a021038f2f4683dddef651543d7298f5bd7218 16-Dec-2010 Xavier Ducrohet <xav@android.com> LayoutLib: Update layoutlib with revised API.

Change-Id: I78929df621f48e85d9cbefe1f5590f9ce99bbaff
ridge/src/android/app/Fragment_Delegate.java
ridge/src/android/graphics/BitmapFactory.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeLayoutScene.java
ridge/src/com/android/layoutlib/bridge/BridgeRenderSession.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParser.java
ridge/src/com/android/layoutlib/bridge/android/BridgeXmlPullAttributes.java
ridge/src/com/android/layoutlib/bridge/impl/AnimationThread.java
ridge/src/com/android/layoutlib/bridge/impl/LayoutSceneImpl.java
ridge/src/com/android/layoutlib/bridge/impl/PlayAnimationThread.java
ridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
f890fab5a6715548e520a6f010a3bfe7607ce56e 20-Dec-2010 Patrick Dubroy <dubroy@google.com> Ensure bitmaps aren't freed while referenced from a display list

Also removes the reference queue finalizers. They aren't necessary
anymore now that Bitmaps are allocated in the heap.
ridge/src/com/android/layoutlib/bridge/Bridge.java
cfdc784b6cdcbbb2bf2ba4d53d9a9eb2c37278a3 15-Dec-2010 Xavier Ducrohet <xav@android.com> LayoutLib: replace the stack of Graphics2D with custom snapshots.

The first step is to allow the canvas to save only the matrix or
the clip. Previously, since the graphics2D were created completely
new on each save, everything was saved.

Also allows to set transform/clip on the Canvas when no bitmap
has been set (and therefore no Graphics2D exists).

This is required by BitmapFactory.

Change-Id: I37eff6dde1ca708d58ba317b40e9b3236f3ef3d0
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/GcSnapshot.java
22ff4ef09fc80a85992d8a911fff03a4712187e7 15-Dec-2010 Patrick Dubroy <dubroy@google.com> Fix build break due to additional arg in Bitmap ctor
ridge/src/android/graphics/Bitmap_Delegate.java
d9c64369cf9be6568af2d79c35fb470cc261730d 14-Dec-2010 Xavier Ducrohet <xav@android.com> LayoutLib: Fix gradient rendering.

- fully support canvas transform
- fully support shader local transform
- fix repeat/mirror issue in the negative values.

Change-Id: Ib2aa7ade1c2702da4364cbda9a5a3ae72c1d3174
ridge/src/android/graphics/Gradient_Delegate.java
ridge/src/android/graphics/LinearGradient_Delegate.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/RadialGradient_Delegate.java
ridge/src/android/graphics/Shader_Delegate.java
ridge/src/android/graphics/SweepGradient_Delegate.java
f1416e4dffb0874f163febfa12f2648eac0c3a77 14-Dec-2010 Xavier Ducrohet <xav@android.com> LayoutLib: Misc fix to rendering.

Change-Id: Ia73fab1be3c01e6ce5791973e636e45a0f75ceb6
ridge/src/android/graphics/BitmapFactory.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/LayoutSceneImpl.java
90c6b7e639921e264ac65699439578bcbdbf583a 14-Dec-2010 Xavier Ducrohet <xav@android.com> LayoutLib: Use the new ninepatch API to suppor density.

LayoutLib now compiles against a prebuilt of ninepatch.

Change-Id: I0a1ca60af90933c171ab3aa456b47f0329df2f55
ridge/.classpath
ridge/Android.mk
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
8da36314fd76ae6fe4549773ad00dc1883cb6bff 14-Dec-2010 Xavier Ducrohet <xav@android.com> LayoutLib: implement more of Canvas/Paint.

Change-Id: I8e2a7a3bddbce08db5eb641b5075bedd75f7be27
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
6735cffc1ddd18bdd6a46011e42d89204435361a 11-Dec-2010 Xavier Ducrohet <xav@android.com> LayoutLib: parsed resources were always set as platform res.

I broke this last week when adding the support for
layout params in moveChild.

Change-Id: Iaaf9b9f685ca301638d4037e98428ea0a00279c9
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/impl/LayoutSceneImpl.java
ffb42f6c5043de226f02318a1311669d35a90711 10-Dec-2010 Xavier Ducrohet <xav@android.com> LayoutLib: Adapt to new LayoutLib

API now uses ResourceValue instead of IResourceValue
Capabilities renamed Capability

Change-Id: Ia5d2b6c8d536e020a1f5496fb2285f67fc4346c4
ridge/src/android/graphics/BitmapFactory.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/android/BridgeXmlPullAttributes.java
ridge/src/com/android/layoutlib/bridge/impl/LayoutSceneImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
ridge/src/com/android/layoutlib/bridge/impl/TempResourceValue.java
8d74c978bbf3da4095ef8e40c005a6fdf0637071 07-Dec-2010 Xavier Ducrohet <xav@android.com> LayoutLib: explicitely override PropertyValuesHolder native code.

Change-Id: Ic7dd9efc990d01b20db144117cb11eb130349048
ridge/src/android/animation/PropertyValuesHolder_Delegate.java
ridge/src/com/android/layoutlib/bridge/impl/LayoutSceneImpl.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
864f33a9f89a75d1395bca885bd191507cca4af6 06-Dec-2010 Xavier Ducrohet <xav@android.com> Merge "LayoutLib: Update font object when text info changes in paint delegate"
b5ddf041d61f9346a4055b5bc5d51bd812b2ec28 06-Dec-2010 Xavier Ducrohet <xav@android.com> LayoutLib: Update font object when text info changes in paint delegate

Change-Id: I6ff7e1ec4513918256aee99acc5ea298a5fdb8a8
ridge/src/android/graphics/Paint_Delegate.java
168677c9e2f8438ec5687e3c6b0e41b986c5b230 06-Dec-2010 Xavier Ducrohet <xav@android.com> LayoutLib: Fix logging.

- Use the new logging API
- remove log object reference everywhere but in Bridge
- all logging code accesses Bridge.getLog()
- prepareScene sets the current scene log object in Bridge.

Change-Id: Ib0517ccd6454c4baf218b6baa978a126f91671e7
ridge/src/android/graphics/BitmapFactory.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/impl/AnimationThread.java
ridge/src/com/android/layoutlib/bridge/impl/LayoutSceneImpl.java
ridge/src/com/android/layoutlib/bridge/impl/PlayAnimationThread.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
e1179ea065392485a6e3bf1e28a1242179cd48b0 03-Dec-2010 Xavier Ducrohet <xav@android.com> LayoutLib: Animation support in insert/move/removeChild actions.

Also update to use the new SceneResult API.

Change-Id: Iaac6df0c250fbefc8758310c37e0cf47cae6875d
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/impl/AnimationThread.java
ridge/src/com/android/layoutlib/bridge/impl/LayoutSceneImpl.java
ridge/src/com/android/layoutlib/bridge/impl/PlayAnimationThread.java
01811aa86279af1b341a4fff344d66c0ebdd63da 03-Dec-2010 Xavier Ducrohet <xav@android.com> LayoutLib: Create new layoutparams when moving a child

Change-Id: Ie2183490e8d26ef194030a9d87fe7745f24f1d83
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeLayoutScene.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeLayoutParamsMapAttributes.java
ridge/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParser.java
ridge/src/com/android/layoutlib/bridge/impl/LayoutSceneImpl.java
3c78f2de353df3e287444dd9f9fbab3bd4456217 03-Dec-2010 Xavier Ducrohet <xav@android.com> LayoutLib: Update to use the new moveChild API.

Also, return supported capabilities.

Change-Id: I824120d50f2865a667dc6c81d455ae19321966b6
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeLayoutScene.java
c8aec064f9f304c88f61c8c1aa3d60521b92177a 02-Dec-2010 Xavier Ducrohet <xav@android.com> Layoutlib: update with new add/movechild API.

Change-Id: I33e3a07cd7db7fe996d1f52b84b4b3bf21065a51
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeLayoutScene.java
ridge/src/com/android/layoutlib/bridge/impl/AnimationThread.java
ridge/src/com/android/layoutlib/bridge/impl/LayoutSceneImpl.java
9eb6d412af6859b6c0bb969c76bbfc48eec8fd4b 01-Dec-2010 Xavier Ducrohet <xav@android.com> LayoutLib: Reuse canvas when possible.

Also moved the prepare/cleanupThread methods to Bridge
as they are not really specific to the scene anymore.

Change-Id: I7b93821913ce4d2fcbe3d8be489be6533ff87e57
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeLayoutScene.java
ridge/src/com/android/layoutlib/bridge/impl/AnimationThread.java
ridge/src/com/android/layoutlib/bridge/impl/LayoutSceneImpl.java
c14e7dd8ba15f517a5402ad802377b1d60784416 02-Dec-2010 Xavier Ducrohet <xav@android.com> LayoutLib: implement insert/move/removeChild.

Change-Id: I1c05ff4dc80e5ee4ea67d322acaf9c94276f84e1
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeLayoutScene.java
ridge/src/com/android/layoutlib/bridge/impl/AnimationThread.java
ridge/src/com/android/layoutlib/bridge/impl/LayoutSceneImpl.java
30c77d689ead610685a5e0bd4078b44eb89360ff 30-Nov-2010 Xavier Ducrohet <xav@android.com> LayoutLib: get AWT image from new image factory.

Change-Id: Ib760af8a77fefac2571b8b4e48b4728e158aab2f
ridge/src/com/android/layoutlib/bridge/impl/LayoutSceneImpl.java
2eea6fab1cbb0a5c8f913491c2d622c904759893 24-Nov-2010 Xavier Ducrohet <xav@android.com> Layoutlib: Animation support.

New locking mechanims to prevent concurrent renderings.

There's now a thread specific prepareThread() method (only
prepares the looper) and its associated cleanupThread().

For the rendering itself, acquire must be called before doing
any type of Android specific work on the scene (inflate or rendering)
After instantiation, init() must be called, which also acts as acquire.

Added a lot of checks to make sure method aren't called without
acquire or if scenes try to be rendered while acquire was called
from the same thread but on another scene.

Animation implementation:
- Handler delegate to use our own queue (since the animation runs
through handler messages). This uses a callback to process
the message. This callback is per-thread and only used in
animation threads.
- SystemClock delegate to provide clock implementation.
- AnimationThread to handle playing the animation and calling back
to the animation listener.

Change-Id: Ia39aba7ed476759df1da3200e413fe3e92590d15
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/os/Handler_Delegate.java
ridge/src/android/os/SystemClock_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeLayoutScene.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/impl/AnimationThread.java
ridge/src/com/android/layoutlib/bridge/impl/LayoutSceneImpl.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
2d56b273ef6e2984a4e8914fb67772b173d0a154 23-Nov-2010 Xavier Ducrohet <xav@android.com> Layoutlib: use default nine patch classes.

Move away from using our own implementation of NinePatchDrawable.
Now use native delegate for a few methods of NinePatch.

The byte[] used to describe the 9-patch chunk is entirely controlled
by the delegate. Therefore, while the default version (JNI) use the
array as a representation of a C struct, this version uses the array
as a serialized version of NinePatchChunk.

A cache mechanism using SoftReferences allows us to not deserialize
the array every time rendering needs to access the chunk itself.

The Bridge-level cache mechanism for bitmaps and nine-patches as
changed. Since the new nine-patches doesn't hold the bitmap
data anymore (it's stored in a normal Android bitmap which
is cached itself through the cache), then the nine-patch cache
has been changed to only contain the nine patch chunk.

Also initialize the canvas with the display metrics to prepare
for correct scaling when density of the assets don't match the target
density.

Still to come: actual density support in the 9-patch drawing code.

Change-Id: Ibefcccf4432e1986e8436e0c41a0107741593536
ridge/src/android/graphics/BitmapFactory.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/NinePatch_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/android/NinePatchDrawable.java
ridge/src/com/android/layoutlib/bridge/impl/LayoutSceneImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
ridge/tests/com/android/layoutlib/bridge/NinePatchTest.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
9223b6737c56619c02125ce988bb21fc4fde264b 20-Nov-2010 Xavier Ducrohet <xav@android.com> Layoutlib: support for editing embedded layouts.

When Resources.getLayout(int) is called to return a parser
for an embedded layout, this queries the current parser for
a custom parser (Eclipse will provide one on top of the current
XML model being edited)

Change-Id: Ia9e837358f67daed0a835e1b3f4f50c0516ceee9
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParser.java
ridge/src/com/android/layoutlib/bridge/impl/Stack.java
fb25cae1916da1caf206ede879f07a4f8b61cfec 19-Nov-2010 Xavier Ducrohet <xav@android.com> LayoutLib: use the new expand API.

Change-Id: I248de70ebe97aa6fb1cbcb5b6572a4a46c5ca1ba
ridge/src/com/android/layoutlib/bridge/impl/LayoutSceneImpl.java
d73868859bf71bd98496157b94e21ef95fadd495 19-Nov-2010 Xavier Ducrohet <xav@android.com> LayoutLib: fix some tests

Change-Id: Iacd641e2fac663ff12fe2a08ba093c4eaa2e8862
ridge/src/android/graphics/Matrix_Delegate.java
ridge/tests/com/android/layoutlib/bridge/TestClassReplacement.java
55acd60be3c027c224a74290df7bedc1a80c669f 19-Nov-2010 Xavier Ducrohet <xav@android.com> Layoutlib: support viewkey in include nodes.

When an include tag is parsed, the custom bridge
code never has access to both parsers at the same
time.
The child parser is created out of an in (representing
the layout id), and the code inflating the content of
the include layout doesn't see the parent parser either.

This changeset adds a parser stack in the BridgeContext
in order to allow access to the parent parser when setting
the viewkey. This is only used if the current parser depth
is 1 (top node), as we only want to set the include
node to the top node of the included layout.

Change-Id: I2ac3b72a0c84a269d9019f44f98cbc0b615ab959
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParser.java
755b46d597b8e8a616d53e2a7dfea295dd78d713 19-Nov-2010 Xavier Ducrohet <xav@android.com> Layoutlib: use int[] wrapper to use as map keys.

This fixes the SlidingDrawer that failed to load.

For some reason, in case of the SlidingDrawer, when the constructor
uses android.R.styleable.SlidingDrawer it's the same values but not
the same instance as the array read from android.R through reflection.

So what works for all other widgets, and has worked since the very first
layoutlib isn't working anymore, and we'll now have to use a wrapper
similarly to what we use in ADT in the project callback.

We should probably provide a single int[] wrapper class in layoutlib
API for all to use.

Change-Id: I4d7d038540f8a24541a588696f1059a020b589e5
ridge/src/com/android/layoutlib/bridge/Bridge.java
5a09488a158b669577cd8eb557ce4feb62929e75 19-Nov-2010 Xavier Ducrohet <xav@android.com> Layoutlib: Properly dispose of bitmap delegate.

This is done by initializing the android.util.Finalizers that's
reponsible for calling out to the native bitmap destructor.
Also implemented the native bitmap destructor

Also fix Bridge by removing obsolete API methods, and removing
some unneeded synchronized blocks now that the whole rendering
(and scene creation) is protected by a synchronized on the bridge
object anyway.

Change-Id: Ie1792da6db354836542dfc11f457fe4a6d78ddfb
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/impl/DelegateManager.java
4d9e32f07c2d7aef47c82449371b0bf362e3647a 18-Nov-2010 Xavier Ducrohet <xav@android.com> Layoutlib: support XML based ColorStateList.

This fixes the rendering of the TabHost in Eclipse.

Change-Id: I333c4d65b18df76871e24a04f0a888ae42ba40ef
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
9e27936e4ab227126e48c4d92a4352dad987e672 12-Nov-2010 Xavier Ducrohet <xav@android.com> Layoutlib: Fix alpha support in Canvas/Paint.

Change-Id: I359098cfc542a7a0b7d99478c0eb13587b4439d0
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
cf52390eee4c9ae792ef63af1528b2e71b33a04f 12-Nov-2010 Xavier Ducrohet <xav@android.com> Layoutlib: Fill the default prop value map for View objects.

Change-Id: I35426ced17a10eb092fac2153276f1202692876f
ridge/src/com/android/layoutlib/bridge/BridgeLayoutScene.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/impl/LayoutSceneImpl.java
135f80dcb4a1fead062714a8f6fdcef288fdddd8 12-Nov-2010 Tor Norbye <tnorbye@google.com> Fix fill color alpha in layoutlib

new Color(int) ignores the upper 8 bits - it creates a color without
an alpha channel. In order to pass in rgba we have to use a different
constructor, new Color(int,true).

(In the layout library API we should also specify that the custom
color, if specified, needs to include an alpha, or in particular add
in 0xFF<<24 if the color is opaque.)

Change-Id: I1c44caed8a5780e61b1c799f3b45bef3eb7bc97b
ridge/src/com/android/layoutlib/bridge/impl/LayoutSceneImpl.java
071dee288ca726c7c15754c2559403b9cbf950bd 11-Nov-2010 Xavier Ducrohet <xav@android.com> Misc fix in layoutlib bridge + View.isIneditMode as delegate.

Change-Id: Ideab29167e933203da99d4270cebcb777726201f
ridge/src/android/view/View_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
ridge/src/com/android/layoutlib/bridge/impl/TempResourceValue.java
ridge/tests/com/android/layoutlib/bridge/TestDelegates.java
ridge/tests/com/android/layoutlib/bridge/TestNativeDelegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
c2e9651bf386a1f7bf7fc706cf5424950570470c 10-Nov-2010 Xavier Ducrohet <xav@android.com> Layoutlib: New bridge implementation using the new API 5.

Since the new API prepare for stateful layoutlib, major
reorganization of the code.

New "android" sub-package for all extended android classes.
Also moved BridgeInflater in here so that all extended classes
are in this package. Only delegates and classes replacing
renamed classes are in their original android.* packages.
Also created full file for the empty implementations of
IWindow and IWindowSession.
New "impl" for the dirty work implementation.
Main package contains the basic implementation of the API.

Most of the code that was in Bridge is now in .impl.LayoutSceneImpl,
with the main init/inflate/render code split into the contrustrutor,
inflate() and render().

Change-Id: Ie15b15e5a1b2388cd6ef82e518345b1fc02ec981
ridge/.classpath
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/DashPathEffect_Delegate.java
ridge/src/android/graphics/LinearGradient_Delegate.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/PathEffect_Delegate.java
ridge/src/android/graphics/PorterDuffXfermode_Delegate.java
ridge/src/android/graphics/RadialGradient_Delegate.java
ridge/src/android/graphics/Shader_Delegate.java
ridge/src/android/graphics/SweepGradient_Delegate.java
ridge/src/android/graphics/Typeface_Delegate.java
ridge/src/android/graphics/Xfermode_Delegate.java
ridge/src/android/util/FloatMath_Delegate.java
ridge/src/android/view/BridgeInflater.java
ridge/src/android/view/SurfaceView.java
ridge/src/android/webkit/WebView.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeAssetManager.java
ridge/src/com/android/layoutlib/bridge/BridgeContentProvider.java
ridge/src/com/android/layoutlib/bridge/BridgeContentResolver.java
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/BridgeLayoutScene.java
ridge/src/com/android/layoutlib/bridge/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/BridgeXmlBlockParser.java
ridge/src/com/android/layoutlib/bridge/BridgeXmlPullAttributes.java
ridge/src/com/android/layoutlib/bridge/DelegateManager.java
ridge/src/com/android/layoutlib/bridge/FontLoader.java
ridge/src/com/android/layoutlib/bridge/LayoutResult.java
ridge/src/com/android/layoutlib/bridge/MockView.java
ridge/src/com/android/layoutlib/bridge/NinePatchDrawable.java
ridge/src/com/android/layoutlib/bridge/ResourceHelper.java
ridge/src/com/android/layoutlib/bridge/ResourceValue.java
ridge/src/com/android/layoutlib/bridge/android/BridgeAssetManager.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContentProvider.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContentResolver.java
ridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/android/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindow.java
ridge/src/com/android/layoutlib/bridge/android/BridgeWindowSession.java
ridge/src/com/android/layoutlib/bridge/android/BridgeXmlBlockParser.java
ridge/src/com/android/layoutlib/bridge/android/BridgeXmlPullAttributes.java
ridge/src/com/android/layoutlib/bridge/android/MockView.java
ridge/src/com/android/layoutlib/bridge/android/NinePatchDrawable.java
ridge/src/com/android/layoutlib/bridge/impl/DelegateManager.java
ridge/src/com/android/layoutlib/bridge/impl/FontLoader.java
ridge/src/com/android/layoutlib/bridge/impl/LayoutSceneImpl.java
ridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java
ridge/src/com/android/layoutlib/bridge/impl/TempResourceValue.java
ridge/src/com/google/android/maps/MapView.java
ridge/tests/com/android/layoutlib/bridge/BridgeXmlBlockParserTest.java
ridge/tests/com/android/layoutlib/bridge/android/BridgeXmlBlockParserTest.java
7f7752439543db6e13c599bdd10cb10254c24528 05-Nov-2010 Xavier Ducrohet <xav@android.com> Layoutlib: Load fragments

This change does the following:
- Make the bridge context extend Activity instead of Context
so that it can act as a view factory. This is needed because
the Activity is used as factory for Fragment objects.

- Override the default Fragment.instantiate(...) method
through a delegate. This is done to load the Fragment
classes located in the project (similar to custom views).

Change-Id: If62e7c9ff2b7585677077ad825aa1c3591d1b5e0
ridge/src/android/app/Fragment_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/Main.java
e0c763f54f5848a2513990fe37791b6f60ef7760 05-Nov-2010 Xavier Ducrohet <xav@android.com> Layoutlib: more text drawing.

Change-Id: I32f46d23e746b095be0577a53b61567a868f0b8a
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
9c05b3972872d83c60bf5afe1a05f08c7753cd9a 04-Nov-2010 Xavier Ducrohet <xav@android.com> Layoutlib native delegate: FloatMath.

While the difference is pretty minor since it's a small class,
the point is that the unit test will ensure that we detect
new methods added to FloatMath more easily.

Change-Id: Ia8bfee231cc4ae0cfeb18692be86d02649c187d5
ridge/src/android/util/FloatMath.java
ridge/src/android/util/FloatMath_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
4b606da91d2d76dd90a427cb3e37ea7df655e8e0 04-Nov-2010 Xavier Ducrohet <xav@android.com> Layoutlib native delegate: path effects and xfermode.

Change-Id: Iafaac6dbaf452e2dba3e77c801089dad33ac4ea9
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/DashPathEffect.java
ridge/src/android/graphics/DashPathEffect_Delegate.java
ridge/src/android/graphics/PathEffect_Delegate.java
ridge/src/android/graphics/PorterDuffXfermode.java
ridge/src/android/graphics/PorterDuffXfermode_Delegate.java
ridge/src/android/graphics/Xfermode_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
251d2e99245095369b52d891a660b2ed270f02e0 02-Nov-2010 Xavier Ducrohet <xav@android.com> Layoutlib native delegate: primitive shapes and shaders

Change-Id: Id2b0c6231589e82d8e96c9f019042eba348a6583
ridge/src/android/graphics/BitmapShader.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/ComposeShader.java
ridge/src/android/graphics/GradientShader.java
ridge/src/android/graphics/Gradient_Delegate.java
ridge/src/android/graphics/LinearGradient.java
ridge/src/android/graphics/LinearGradient_Delegate.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/RadialGradient.java
ridge/src/android/graphics/RadialGradient_Delegate.java
ridge/src/android/graphics/Shader.java
ridge/src/android/graphics/Shader_Delegate.java
ridge/src/android/graphics/SweepGradient.java
ridge/src/android/graphics/SweepGradient_Delegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
abff653ce84e5079f35afab008c906063b0b2b6c 02-Nov-2010 Xavier Ducrohet <xav@android.com> More layout Canvas/Paint implementation.

Change-Id: Ib3da4a4b2259dc7c53b24444b5c0b78cee15d387
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
5802deabf06a0754c36e990ce2af7b5c8727e543 02-Nov-2010 Xavier Ducrohet <xav@android.com> More implementation of the layoutlib Paint/Canvas delegates.

Change-Id: I0c0029b9a679af4ae0178488f70b2a90292ea42d
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/Paint_Delegate.java
9f63ff263b0a97f0fa63e97136c18f6abccbfc68 28-Oct-2010 Xavier Ducrohet <xav@android.com> Layoutlib Canvas and Paint implementation through native delegates

Also fix native delegate generation to put "this" parameter even
for methods that don't have any parameters.

Change-Id: I5dd0c505871370ff7b4cda16de84a5b3ae438f73
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/Canvas.java
ridge/src/android/graphics/Canvas_Delegate.java
ridge/src/android/graphics/Paint.java
ridge/src/android/graphics/Paint_Delegate.java
ridge/src/android/graphics/Typeface_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/NinePatchDrawable.java
ridge/tests/com/android/layoutlib/bridge/AndroidGraphicsTests.java
ridge/tests/com/android/layoutlib/bridge/TestNativeDelegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/DelegateMethodAdapter.java
5de11a18e9151e6bc9b3e81cf31fc43dc63dffbf 30-Oct-2010 Xavier Ducrohet <xav@android.com> Implement the layoutlib Bitmap through a native delegate.

This does not implement all the native methods of the
android.graphics.Bitmap class, only what's needed to draw an
ImageView object. The rest will be implemented after Canvas and
Paint have been moved to the native delegate.

Change-Id: Ia0c3b2cafa03871c298deaef5817a25ac1c35521
ridge/src/android/graphics/Bitmap.java
ridge/src/android/graphics/BitmapFactory.java
ridge/src/android/graphics/Bitmap_Delegate.java
ridge/src/android/graphics/Canvas.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/Typeface_Delegate.java
ridge/src/com/android/layoutlib/bridge/ResourceHelper.java
ridge/tests/com/android/layoutlib/bridge/TestNativeDelegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
65dc3974a116fecefd2273fac1fd5127c02b2cd9 28-Oct-2010 Xavier Ducrohet <xav@android.com> Fix the layoutlib_bridge .classpath to not use the full layoutlib

Instead this uses the actual output of layoutlib_create, which is
all the modified classes before the content of the bridge is added
to form layoutlib.

Change-Id: I22755f38800cd69206834ff9594a99cb0c1d2139
ridge/.classpath
5e7ed8da0d990cbc55071d16b5db270231ff0c89 28-Oct-2010 Xavier Ducrohet <xav@android.com> Move layoutlib typeface implementation to delegate.

Also move BridgeContentProvider to its own class to make it
less messy in BridgeContentResolver.

Change-Id: Id3462218b500d43d4c9b20b25326ad24e4106fa5
ridge/src/android/graphics/Paint.java
ridge/src/android/graphics/Typeface.java
ridge/src/android/graphics/Typeface_Delegate.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeContentProvider.java
ridge/src/com/android/layoutlib/bridge/BridgeContentResolver.java
ridge/src/com/android/layoutlib/bridge/FontLoader.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
4c9d691a01ab6741e4b54b69edca7b528603d9fa 27-Oct-2010 Xavier Ducrohet <xav@android.com> am 57f7ccc4: am 63e5d07e: Merge "Fix issue with project resources overriding framework resources." into gingerbread
57f7ccc4223ad7f51aa41b593ed26770f3cca22b 27-Oct-2010 Xavier Ducrohet <xav@android.com> am 63e5d07e: Merge "Fix issue with project resources overriding framework resources." into gingerbread
4f291d33e14e62b3301acc056a82fe206c74835f 22-Oct-2010 Xavier Ducrohet <xav@android.com> Reimplement the native matrix method using the new delegate way.

Instead of renaming the old Matrix class into _Original_Matrix
and have layoutlib provide a full new implementation of Matrix,
we keep the old one by only modifying it to implement the native
methods which calls out to a new Matrix_Delegate class.

The goal is to not have to maintain the java portion in
sync between the framework and the layoutlib version.

Change-Id: I3e1aefffbae45e91b75331c0c6ff2260323deacd
ridge/.classpath
ridge/src/android/graphics/Canvas.java
ridge/src/android/graphics/Matrix.java
ridge/src/android/graphics/Matrix_Delegate.java
ridge/src/android/graphics/Path.java
ridge/src/com/android/layoutlib/bridge/DelegateManager.java
ridge/tests/com/android/layoutlib/bridge/TestNativeDelegate.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
c2e28dd74813799aad132673ff9d302657dd04ed 27-Oct-2010 Xavier Ducrohet <xav@android.com> Fix issue with project resources overriding framework resources.

Framework resources loaded through Drawable.createFromXml could
be overriden by project resources if there were loaded through
a state list drawable where the final resource name was used
by a project resource (of the same type).

This ensures that the XML parser knows that it's a framework
resource being parsed and that the resource resolution uses
that information.

Change-Id: I39cf9eba755e55f1604b968637aeecff969a558d
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/BridgeXmlPullAttributes.java
ridge/src/com/android/layoutlib/bridge/ResourceHelper.java
d815e3704850a513e8d02ba3b88fa47f41cea9a5 26-Oct-2010 Xavier Ducrohet <xav@android.com> Fix rendering of digitalClock/Gallery in Eclipse editors.

Change-Id: Iedcd3184cd9f34be8d0695a51eda953ac68683ce
ridge/src/com/android/layoutlib/bridge/BridgeContentResolver.java
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
reate/src/com/android/tools/layoutlib/create/Main.java
f241c40476b6ff2acf57617d4f90cc8c229f1207 26-Oct-2010 Raphael <raphael@google.com> Revert "Fix rendering of digitalClock/Gallery in Eclipse editors."

This reverts commit 25e96ce7b99f9736a6024d25bd65a83774c7640f.
ridge/src/com/android/layoutlib/bridge/BridgeContentResolver.java
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
reate/src/com/android/tools/layoutlib/create/Main.java
68404a0125999ebe0d58c3eb1845b3c9aaf4d51e 26-Oct-2010 Xavier Ducrohet <xav@android.com> am a44a5e02: am 1b6180ec: Merge "Fix rendering of digitalClock/Gallery in Eclipse editors." into gingerbread
a44a5e02d21505a9c891a31a34c83761600024c0 26-Oct-2010 Xavier Ducrohet <xav@android.com> am 1b6180ec: Merge "Fix rendering of digitalClock/Gallery in Eclipse editors." into gingerbread
25e96ce7b99f9736a6024d25bd65a83774c7640f 26-Oct-2010 Xavier Ducrohet <xav@android.com> Fix rendering of digitalClock/Gallery in Eclipse editors.

Change-Id: I80f4f90b173529632eaf2fbc3bb5471b7ede8216
ridge/src/com/android/layoutlib/bridge/BridgeContentResolver.java
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
reate/src/com/android/tools/layoutlib/create/Main.java
a6ca66af0c0e17804e914eece758d9734d936044 23-Oct-2010 Xavier Ducrohet <xav@google.com> Merge "Layoutlib_Create: Fix order of class adapters."
c08e175f14434f132dfe19a75701170cc57679bc 23-Oct-2010 Xavier Ducrohet <xav@google.com> Merge "Layoutlib_create: fix binary name of delegate methods."
e2e8ba904b306f11dfc5b71e00ab9ac013358cd7 23-Oct-2010 Raphael <raphael@google.com> Layoutlib_Create: Fix order of class adapters.

The Transform adapter was running last, instead of
running on the output of the Delegate adapter.

Change-Id: I2cd777add7b0972c6bb197aaac6693d39dd5a103
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
2191b4b22f4bb497ec08f503c37d112428968afe 22-Oct-2010 Xavier Ducrohet <xav@google.com> Merge "Remove dependency on ASM util classes."
280372e2c7db128254b5f65395ea843ef285729e 22-Oct-2010 Raphael <raphael@google.com> Layoutlib_create: fix binary name of delegate methods.

Change-Id: Iebd7d730b23e12f770e6ecadafb2f5c3459958db
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
ee9642c2ba5309ae5094e06c95a5d167d05058c0 22-Oct-2010 Xavier Ducrohet <xav@android.com> am 2051a1be: am c5371fad: Merge "Make layoutlib use the prebuilt of layoutlib_api"
2051a1be52b3380285597c62e283e12bf659bda9 22-Oct-2010 Xavier Ducrohet <xav@android.com> am c5371fad: Merge "Make layoutlib use the prebuilt of layoutlib_api"
d556d8ba369e05836bedab6004f3dbdc5ec3387e 22-Oct-2010 Raphael <raphael@google.com> Remove dependency on ASM util classes.

Change-Id: I975b103f8c207e727699e4135170755f6ba2a084
reate/tests/com/android/tools/layoutlib/create/DelegateClassAdapterTest.java
0db38449257d6702d18ddf77b019bef38ce3d692 22-Oct-2010 Xavier Ducrohet <xav@android.com> Make layoutlib use the prebuilt of layoutlib_api

Change-Id: Ie04a9e847acacf7b2aeb179589517fc75688c75b
ridge/.classpath
ridge/Android.mk
d4533f1469990582e4a2dd0898429093fe2690c0 20-Oct-2010 Chris Tate <ctate@google.com> Report drag success/fail in the DRAG_ENDED message

DragEvent.getResult() returns 'true' if the drop was ultimately accepted;
false otherwise. The validity of this datum is only guaranteed when the
DragEvent's action verb is ACTION_DRAG_ENDED.

Also fixes the drag-start timeout handling (though the offending app is
not yet officially declared ANR).

Implements bug 3097807

Change-Id: I6908ac628c72ff7d6193d87060d769a559a78d0e
ridge/src/com/android/layoutlib/bridge/Bridge.java
79d433dd8772fb20caa947c2b0b20965348954a7 09-Oct-2010 Xavier Ducrohet <xav@android.com> am 556866a2: am 656d2165: Merge "Parser is optional in obtainStyledAttributes." into gingerbread

Merge commit '556866a2ea1f4758a79fe4f207153b71815ed400'

* commit '556866a2ea1f4758a79fe4f207153b71815ed400':
Parser is optional in obtainStyledAttributes.
556866a2ea1f4758a79fe4f207153b71815ed400 07-Oct-2010 Xavier Ducrohet <xav@android.com> am 656d2165: Merge "Parser is optional in obtainStyledAttributes." into gingerbread

Merge commit '656d21656ad9b33f7d7e1e4960a2f03076a5fc7a' into gingerbread-plus-aosp

* commit '656d21656ad9b33f7d7e1e4960a2f03076a5fc7a':
Parser is optional in obtainStyledAttributes.
f8e4c1f57bbb658f53995443b0f175e50a2fc814 05-Oct-2010 Xavier Ducrohet <xav@android.com> Parser is optional in obtainStyledAttributes.

If the parser is null it just means the default style/values are
used.

Change-Id: I5ff3d632fd5dfc5a1ce42796b2fef7b30f9fbf34
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
3cff14ca778694c137052e83d7642ab7475b1319 04-Oct-2010 Raphael <raphael@google.com> Merge "layoutlib_create: Generate delegate to implement native methods."
a53146c5569f8ff5f7eb55e9ad35d23ddacf2add 07-Sep-2010 Christopher Tate <ctate@google.com> Drag/drop APIs and infrastructure

A View initiates a drag-and-drop operation (hereafter just called a "drag")
by calling its startDrag(ClipData) method. Within the processing of that
call, two callbacks are made into the originating View. The first is to
onMeasureDragThumbnail(). Similarly to the core onMeasure() method, this
callback must respond by calling setDragThumbnailDimension(width, height) to
declare the size of the drag thumbnail image that should be used. Following
this, the View's onDrawDragThumbnail(canvas) method will be invoked to
actually produce the bits of the thumbnail image.

If all goes well, startDrag() will return 'true', and the drag is off and
running. (The other arguments to startDrag() provide reconciliation between
the current finger position and where the thumbnail should be placed on
the screen relative to it.)

Potential receipients of the ClipData behind the drag are notified by a
new dispatch mechanism, roughly parallel to motion event dispatch. The core
routine is the View's onDragEvent(event) callback, with the mechanics of
dispatch itself being routed through dispatchDragEvent(event) -- as in
the case of motion events, the dispatch logic is in ViewGroup, with leaf
View objects not needing to consider the dispatch flow.

Several different event 'actions' are delivered through this dispatch
mechanism:

ACTION_DRAG_STARTED: this event is propagated to every View in every window
(including windows created during the course of a drag). It serves as a
global notification that a drag has started with a payload whose matching
ClipDescription is supplied with the event. A View that is prepared to
consume the data described in this event should return 'true' from their
onDragEvent() method, and ideally will also make some visible on-screen
indication that they are a potential target of the drop.

ACTION_DRAG_ENTERED: this event is sent once when the drag point
enters the View's bounds. It is an opportunity for the View to set up
feedback that they are the one who will see the drop if the finger goes
up now.

ACTION_DRAG_LOCATION: when the drag point is over a given View, that
View will receive a stream of DRAG_LOCATION events, providing an
opportunity for the View to show visual feedback tied to the drag point.

ACTION_DRAG_EXITED: like DRAG_ENTERED, but called when the drag point
leaves the View's bounds. The View should undo any visuals meant to
emphasize their being the hovered-over target.

ACTION_DROP: when the drag ends at a given point, the View under that
point is sent this event, with the full ClipData of the payload.

ACTION_DRAG_ENDED: paralleling the DRAG_STARTED action, this is the global
broadcast that the drag has ended and all Views should return to their
normal visual state. This happens after the DROP event.

Change-Id: Ia8d0fb1516bce8c735d87ffd101af0976d7e84b6
ridge/src/com/android/layoutlib/bridge/Bridge.java
bc101806249eb883f89c4a770a8c27f9ac315837 27-Sep-2010 Raphael <raphael@google.com> layoutlib_create: Generate delegate to implement native methods.

- Some new parameters are added to CreateInfo with the list of methods
or classes to override with delegates.
- DelegateClassAdapter and DelegateMethodAdapter do the work... see javadoc.

Change-Id: I0657cd929837181d81c65db7051d8ccbdc59c741
reate/README.txt
reate/src/com/android/tools/layoutlib/annotations/LayoutlibDelegate.java
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/DelegateClassAdapter.java
reate/src/com/android/tools/layoutlib/create/DelegateMethodAdapter.java
reate/src/com/android/tools/layoutlib/create/ICreateInfo.java
reate/src/com/android/tools/layoutlib/create/Main.java
reate/src/com/android/tools/layoutlib/create/TransformClassAdapter.java
reate/tests/com/android/tools/layoutlib/create/AsmAnalyzerTest.java
reate/tests/com/android/tools/layoutlib/create/AsmGeneratorTest.java
reate/tests/com/android/tools/layoutlib/create/ClassHasNativeVisitorTest.java
reate/tests/com/android/tools/layoutlib/create/DelegateClassAdapterTest.java
reate/tests/com/android/tools/layoutlib/create/LogTest.java
reate/tests/com/android/tools/layoutlib/create/MockLog.java
1e57996f47e9d7f96506e2d680eea9f1d7ecc7ac 29-Sep-2010 Ying Wang <wangying@google.com> am 0e8dc464: am 292c246b: Merge "Call functions to calculate deps and classes.jar" into gingerbread

Merge commit '0e8dc464bdfa29785aab7be6343154fee361f6a0'

* commit '0e8dc464bdfa29785aab7be6343154fee361f6a0':
Call functions to calculate deps and classes.jar
0e8dc464bdfa29785aab7be6343154fee361f6a0 29-Sep-2010 Ying Wang <wangying@google.com> am 292c246b: Merge "Call functions to calculate deps and classes.jar" into gingerbread

Merge commit '292c246b27319bc2195e2b3dbc3c3adea22db672' into gingerbread-plus-aosp

* commit '292c246b27319bc2195e2b3dbc3c3adea22db672':
Call functions to calculate deps and classes.jar
c486da4887811bce4895199c3116616b3638f35a 28-Sep-2010 Ying Wang <wangying@google.com> Call functions to calculate deps and classes.jar

Instead of hard-coding them.

Change-Id: Ia5818a1a69efb0964d5aa7de7e8d30ef04dfeccc
ndroid.mk
cdde57ae5c5bc12317f1eababf43bf3a6c2d511e 28-Sep-2010 Xavier Ducrohet <xav@android.com> Merge "Improve error reporting in the layoutlib class replacement test."
e335914c7ef0ad765200282911a7903be1715995 28-Sep-2010 Xavier Ducrohet <xav@android.com> Improve error reporting in the layoutlib class replacement test.

Change-Id: I451253ebb902171d67683784ef7a6de65588865d
ridge/tests/com/android/layoutlib/bridge/TestClassReplacement.java
cca1f0e3476edd09cdd81b075a6b7780a2959b46 27-Sep-2010 Dianne Hackborn <hackbod@google.com> Allow all apps to call ContentResolver.getType().

I can't find the bug number for this, but it is needed for some things
we are doing where the app building an intent may not have access to the
URI in the data field. This is for HC, but doing in GB to avoid introducing
integration issues.

Change-Id: I0cac971854198b18775d2a73deb80f23431bfbe2
ridge/src/com/android/layoutlib/bridge/BridgeContentResolver.java
a8bce7c8acb3904eb69bf21276c0ca2635c76a20 27-Sep-2010 Dianne Hackborn <hackbod@google.com> am d8691d73: Merge "Allow all apps to call ContentResolver.getType()." into gingerbread

Merge commit 'd8691d73d158acd9ffc63748126e822afd656707' into gingerbread-plus-aosp

* commit 'd8691d73d158acd9ffc63748126e822afd656707':
Allow all apps to call ContentResolver.getType().
8313fc7e94e46e5cc09f457a15a771a325b9f74f 27-Sep-2010 Dianne Hackborn <hackbod@google.com> Allow all apps to call ContentResolver.getType().

I can't find the bug number for this, but it is needed for some things
we are doing where the app building an intent may not have access to the
URI in the data field. This is for HC, but doing in GB to avoid introducing
integration issues.

Change-Id: I0cac971854198b18775d2a73deb80f23431bfbe2
ridge/src/com/android/layoutlib/bridge/BridgeContentResolver.java
dcc9dced33dd0237d386bd2ca39b2d105b1ec938 25-Sep-2010 Raphael <raphael@google.com> am cb7c5498: am 91512f57: Layoutlib_create: Unittest for ClassHasNativeVisitor.

Merge commit 'cb7c5498709526e2a2367a7f36f83caf05be5f1a'

* commit 'cb7c5498709526e2a2367a7f36f83caf05be5f1a':
Layoutlib_create: Unittest for ClassHasNativeVisitor.
cb7c5498709526e2a2367a7f36f83caf05be5f1a 25-Sep-2010 Raphael <raphael@google.com> am 91512f57: Layoutlib_create: Unittest for ClassHasNativeVisitor.

Merge commit '91512f579e7a1bf91d23254471ee47d3a88d342f' into gingerbread-plus-aosp

* commit '91512f579e7a1bf91d23254471ee47d3a88d342f':
Layoutlib_create: Unittest for ClassHasNativeVisitor.
91512f579e7a1bf91d23254471ee47d3a88d342f 24-Sep-2010 Raphael <raphael@google.com> Layoutlib_create: Unittest for ClassHasNativeVisitor.

Change-Id: Id101bb3fc2644e450847e73c933cb6f616982f24
reate/src/com/android/tools/layoutlib/annotations/Nullable.java
reate/src/com/android/tools/layoutlib/annotations/VisibleForTesting.java
reate/src/com/android/tools/layoutlib/create/ClassHasNativeVisitor.java
reate/tests/com/android/tools/layoutlib/create/ClassHasNativeVisitorTest.java
adaba84ad76f70d833e140d5c28a0de58c8f19d2 22-Sep-2010 Dianne Hackborn <hackbod@google.com> Merge "Work on fragments in layouts."
625ac271f80777668f832a344486a6fcdc06d0ae 18-Sep-2010 Dianne Hackborn <hackbod@google.com> Work on fragments in layouts.

- Change semantics if IDs associated with these fragments, to
work correctly when placed in a container. If the container
has an ID or you have supplied a tag, the fragment's ID is
optional.

- To do this, there is a new LayoutInflater API that allows code
creating views to access the parent container that view will
be in.

- Fix issues with state management around these fragments. Now
correctly retains state when switching to a layout that doesn't
include the fragment.

Also:

- Add new simple list layouts for items that want to show an
activated state.
- Add new Activity.dump() that can be invoked with adb shell
dumpsys; the default implementation dumps fragment state.

Change-Id: I192f35e3ea8c53fbd26cf909095f2a994abfc1b6
ridge/src/android/view/BridgeInflater.java
1ad0e9a1a2c1f5b31d3610acb3142ab2b4f6f958 22-Sep-2010 Raphael Moll <ralf@android.com> am 98699c8f: am f2960b8d: Refresh the layoutlib_create doc.

Merge commit '98699c8fc44358d168183dae47e10758b2d1cb08'

* commit '98699c8fc44358d168183dae47e10758b2d1cb08':
Refresh the layoutlib_create doc.
98699c8fc44358d168183dae47e10758b2d1cb08 22-Sep-2010 Raphael Moll <ralf@android.com> am f2960b8d: Refresh the layoutlib_create doc.

Merge commit 'f2960b8d66d7a20f590716f5e51160e77d0d1b24' into gingerbread-plus-aosp

* commit 'f2960b8d66d7a20f590716f5e51160e77d0d1b24':
Refresh the layoutlib_create doc.
f2960b8d66d7a20f590716f5e51160e77d0d1b24 22-Sep-2010 Raphael Moll <ralf@android.com> Refresh the layoutlib_create doc.

Change-Id: I43e92c33d824ace9edd77d90a1b36a5f69d85e7f
reate/README.txt
163935113919a184122b8b3bd672ef08c8df65dc 08-Aug-2010 Romain Guy <romainguy@android.com> Make libhwui entirely optional.

The makefile variable USE_OPENGL_RENDERER must be set to true to compile
libhwui and the related code in the JNI layer.

This change also removes obsolete APIs from Canvas that must not be used
and would be confusing if left in. These APIs were remnants of our first
attempt at an OpenGL renderer for the view hierarchy and had not been
taken out before Android 1.0 was released.

Change-Id: I2475ff1307212bab26c926724f3c508681c7dae1
ridge/src/android/graphics/Canvas.java
80e62ac61c297452c003919f71c4dcd7063d1b43 17-Jul-2010 Xavier Ducrohet <xav@android.com> Fix the layoutlib Paint.set(Paint) method. Do not merge.

It would change the text rendering info but not recompute
the Java Font objects. The effect is a broken font rendering
in the EditText (which use this method to copy some Paint
object before using the copy for the actual drawing)

Change-Id: I9e7fbf9bd57b421fd793876a6de4ade1ecac372d
ridge/src/android/graphics/Paint.java
b5b37f3bcc3065959c27e588f065dfb33a061e1d 19-Jul-2010 The Android Open Source Project <initial-contribution@android.com> am 3d02b48b: merge from open-source master

Merge commit '3d02b48bd95293c767563729264f007dbcff82b3'

* commit '3d02b48bd95293c767563729264f007dbcff82b3':
Fix the layoutlib Paint.set(Paint) method.
3d02b48bd95293c767563729264f007dbcff82b3 19-Jul-2010 The Android Open Source Project <initial-contribution@android.com> merge from open-source master

Change-Id: I84a8efc2d58476c72e84170c19dc692dc180b97d
b8bb8ac5bbde9d2e4928015b980164781554eefe 17-Jul-2010 Xavier Ducrohet <xav@android.com> Fix the layoutlib Paint.set(Paint) method.

It would change the text rendering info but not recompute
the Java Font objects. The effect is a broken font rendering
in the EditText (which use this method to copy some Paint
object before using the copy for the actual drawing)

Change-Id: I6d8d1bf86f0d77d088f60ad81c71dd3ebab727b0
ridge/src/android/graphics/Paint.java
dcd077179c853e54498e9127526a8f2984c0dda0 15-Jul-2010 Joe Onorato <joeo@android.com> am 92a47ea3: am 562124e8: Merge "Clean up some style in the makefiles." into gingerbread

Merge commit '92a47ea3a7b82708e46c9d1710355f5e5fdd4f07'

* commit '92a47ea3a7b82708e46c9d1710355f5e5fdd4f07':
Clean up some style in the makefiles.
80a60ba85b5c2ed40e8685a16ce6d3ed31ef0929 15-Jul-2010 Joe Onorato <joeo@android.com> Clean up some style in the makefiles.

Change-Id: I993702808395f37c2e9d3c7e457d2952be51d795
ndroid.mk
8e03b7566c42621fda01186b66b019142eb84fbf 14-Jun-2010 Jeff Brown <jeffbrown@google.com> resolved conflicts for merge of 9e660c82 to master

Change-Id: Ic4bd85cbaa5b9a10dcb474a0dad46490bf967e43
46b9ac0ae2162309774a7478cd9d4e578747bfc2 23-Apr-2010 Jeff Brown <jeffbrown@google.com> Native input dispatch rewrite work in progress.

The old dispatch mechanism has been left in place and continues to
be used by default for now. To enable native input dispatch,
edit the ENABLE_NATIVE_DISPATCH constant in WindowManagerPolicy.

Includes part of the new input event NDK API. Some details TBD.

To wire up input dispatch, as the ViewRoot adds a window to the
window session it receives an InputChannel object as an output
argument. The InputChannel encapsulates the file descriptors for a
shared memory region and two pipe end-points. The ViewRoot then
provides the InputChannel to the InputQueue. Behind the
scenes, InputQueue simply attaches handlers to the native PollLoop object
that underlies the MessageQueue. This way MessageQueue doesn't need
to know anything about input dispatch per-se, it just exposes (in native
code) a PollLoop that other components can use to monitor file descriptor
state changes.

There can be zero or more targets for any given input event. Each
input target is specified by its input channel and some parameters
including flags, an X/Y coordinate offset, and the dispatch timeout.
An input target can request either synchronous dispatch (for foreground apps)
or asynchronous dispatch (fire-and-forget for wallpapers and "outside"
targets). Currently, finding the appropriate input targets for an event
requires a call back into the WindowManagerServer from native code.
In the future this will be refactored to avoid most of these callbacks
except as required to handle pending focus transitions.

End-to-end event dispatch mostly works!

To do: event injection, rate limiting, ANRs, testing, optimization, etc.

Change-Id: I8c36b2b9e0a2d27392040ecda0f51b636456de25
ridge/src/com/android/layoutlib/bridge/Bridge.java
74f170f9468d3cf6d7d0ef453320141a3e63571b 02-Jun-2010 Vasu Nori <vnori@google.com> new API in Context. on openDatabase, new param DatabaseErrorHandler

add new method openOrCreateDatabase in Context.java to allow
callers specify a DatabaseErrorHandler object to be used when
database corruption occurs.
add new constructor in SQLiteOpenHelper to accept DatabaseErrorHandler
as an additional param to be used when SQLiteDatabase instance is
created.

Change-Id: I912a0202a74510f9ca0206dd8101c4abab9102ae
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
55f9c17777a25792fd8b453799aa31daf122c279 10-Apr-2010 Xavier Ducrohet <xav@android.com> Merge "README for layoutlib."
3a8d3167bc51217fb50b488541ca662425abb71b 10-Apr-2010 Xavier Ducrohet <xav@android.com> README for layoutlib.

Change-Id: If8192232b70f2c4084cf73abd54b7798296e8c16
EADME
c56653bff10ef7f1a80127c9649ed0b2c6ae1b2e 09-Apr-2010 Xavier Ducrohet <xav@android.com> Adds back the finalize method on the replaced Paint class.

without it com.android.layoutlib.bridge.TestClassReplacement fails.

Change-Id: Iafb6548f45c31e901591a45239224895c4403be8
ridge/src/android/graphics/Paint.java
694f79b5d1196640d1beb680b7d1fc68e6e77cbd 18-Mar-2010 Dianne Hackborn <hackbod@google.com> Fix issue #2519590: Lock screen stuck in landscape mode

Well, mostly. There is still a problem here where the first time
you show the lock screen it just doesn't draw itself. I assume
this is something breaking in the view hierarchy as it floounders
around removing and adding new views as it is first being shown...
but no idea at this point what is the actual case.

Change-Id: Iba99ae3242931c8673b17b106c86fc99e2c52abe
ridge/src/com/android/layoutlib/bridge/Bridge.java
15a4d2ffd04dc6c70f2cd17dae12ac6bc14c69ab 12-Mar-2010 Kenny Root <kroot@google.com> Add correct copyright headers to multiple files

Format for the list of changes shows the origin commit reference followed
by the file name.

33931-p9 awt/org/apache/harmony/awt/gl/font/AndroidGlyphVector.java
33931-p9 awt/org/apache/harmony/awt/gl/image/PngDecoderJava.java
133776-p9 core/java/android/app/IntentService.java
127013-p9 core/java/android/appwidget/AppWidgetHost.java
27863-p9 core/java/android/bluetooth/BluetoothAudioGateway.java
60765-p9 core/java/android/content/SyncResult.java
43920-p9 core/java/android/content/pm/ActivityInfo.java
43920-p9 core/java/android/content/pm/ApplicationInfo.java
43920-p9 core/java/android/content/pm/InstrumentationInfo.java
43920-p9 core/java/android/content/pm/PackageInfo.java
44103-p9 core/java/android/content/pm/PackageItemInfo.java
68960-p9 core/java/android/content/pm/PackageStats.java
43920-p9 core/java/android/content/pm/ResolveInfo.java
43920-p9 core/java/android/content/pm/ServiceInfo.java
60641-p9 core/java/android/content/res/Configuration.java
60734-p9 core/java/android/content/res/TypedArray.java
137672-p9 core/java/android/inputmethodservice/ExtractButton.java
123112-p9 core/java/android/inputmethodservice/ExtractEditText.java
119291-p9 core/java/android/inputmethodservice/IInputMethodSessionWrapper.java
112946-p9 core/java/android/inputmethodservice/IInputMethodWrapper.java
115078-p9 core/java/android/os/BatteryStats.java
124790-p9 core/java/android/text/style/UpdateAppearance.java
45083-p9 core/java/android/view/RawInputEvent.java
101491-p9 core/java/android/view/inputmethod/EditorInfo.java
114701-p9 core/java/android/view/inputmethod/ExtractedText.java
123112-p9 core/java/android/view/inputmethod/ExtractedTextRequest.java
119291-p9 core/java/com/android/internal/os/HandlerCaller.java
129279-p9 core/java/com/android/internal/os/PkgUsageStats.java
114701-p9 core/java/com/android/internal/view/IInputConnectionWrapper.java
114701-p9 core/java/com/android/internal/view/InputConnectionWrapper.java
84364-p9 opengl/java/android/opengl/EGLLogWrapper.java
11355-p9 opengl/tools/glgen/src/CFunc.java
11355-p9 opengl/tools/glgen/src/CType.java
11355-p9 opengl/tools/glgen/src/CodeEmitter.java
11355-p9 opengl/tools/glgen/src/GenerateGL.java
11355-p9 opengl/tools/glgen/src/JFunc.java
11355-p9 opengl/tools/glgen/src/JType.java
11355-p9 opengl/tools/glgen/src/JniCodeEmitter.java
11355-p9 opengl/tools/glgen/src/ParameterChecker.java
57236-p9 services/java/com/android/server/status/AnimatedImageView.java
66754-p9 services/java/com/android/server/status/CloseDragHandle.java
57188-p9 services/java/com/android/server/status/DateView.java
46928-p9 services/java/com/android/server/status/ExpandedView.java
70590-p9 services/java/com/android/server/status/FixedSizeDrawable.java
45968-p9 services/java/com/android/server/status/IconData.java
57470-p9 services/java/com/android/server/status/IconMerger.java
82719-p9 services/java/com/android/server/status/LatestItemView.java
45968-p9 services/java/com/android/server/status/NotificationData.java
66754-p9 services/java/com/android/server/status/NotificationLinearLayout.java
57458-p9 services/java/com/android/server/status/NotificationViewList.java
45968-p9 services/java/com/android/server/status/StatusBarException.java
45968-p9 services/java/com/android/server/status/StatusBarIcon.java
46130-p9 services/java/com/android/server/status/StatusBarNotification.java
45968-p9 services/java/com/android/server/status/StatusBarView.java
46199-p9 services/java/com/android/server/status/Ticker.java
62286-p9 services/java/com/android/server/status/TickerView.java
57188-p9 services/java/com/android/server/status/TrackingView.java
86041-p9 telephony/java/android/telephony/PhoneStateListener.java
87020-p9 telephony/java/com/android/internal/telephony/TelephonyIntents.java
136269-p9 telephony/java/com/android/internal/telephony/gsm/SpnOverride.java
34409-p9 tests/FrameworkTest/src/com/android/frameworktest/FrameworkTestApplication.java
55717-p9 tests/FrameworkTest/src/com/android/frameworktest/performance/InvalidateCycle.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/AutoCompleteTextViewActivityLandscape.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/AutoCompleteTextViewActivityPortrait.java
129372-p9 tests/ImfTest/src/com/android/imftest/samples/BigEditTextActivityNonScrollablePanScan.java
129372-p9 tests/ImfTest/src/com/android/imftest/samples/BigEditTextActivityNonScrollableResize.java
129372-p9 tests/ImfTest/src/com/android/imftest/samples/BigEditTextActivityScrollablePanScan.java
129372-p9 tests/ImfTest/src/com/android/imftest/samples/BigEditTextActivityScrollableResize.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/BottomEditTextActivityPanScan.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/BottomEditTextActivityResize.java
127341-p9 tests/ImfTest/src/com/android/imftest/samples/ButtonActivity.java
129347-p9 tests/ImfTest/src/com/android/imftest/samples/DialogActivity.java
129372-p9 tests/ImfTest/src/com/android/imftest/samples/EditTextActivityDialog.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/ManyEditTextActivityNoScrollPanScan.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/ManyEditTextActivityScrollPanScan.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/ManyEditTextActivityScrollResize.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/OneEditTextActivityNotSelected.java
128994-p9 tests/ImfTest/src/com/android/imftest/samples/OneEditTextActivitySelected.java
25959-p9 tests/framework-tests/src/android/test/FrameworkTests.java
46162-p9 tests/framework-tests/src/com/android/internal/http/multipart/MultipartTest.java
77101-p9 tools/layoutlib/bridge/tests/com/android/layoutlib/bridge/NinePatchTest.java
9788976b1465ce982b5ae7c741345edd0ecd9322 core/java/android/accounts/AuthenticatorDescription.java
53332883543868fb83e111a07306368b7772b340 core/java/android/app/UiModeManager.java
93e7e22ec91dbc641d10ca6d70423e1357a95bba core/java/android/app/FullBackupAgent.java
328c0e7986aa6bb7752ec6de3da9c999920bb55f core/java/android/content/CursorEntityIterator.java
307da1a46b4c9b711bafe8fbaaa6b98e8868c18e core/java/android/content/SyncQueue.java
307da1a46b4c9b711bafe8fbaaa6b98e8868c18e core/java/android/content/SyncOperation.java
eb034652c2037a47ebfd99779e8383bb8bb528af core/java/android/content/pm/LabeledIntent.java
49237345d83e62fdb9eb8d50b13ad086636a04fa core/java/android/content/pm/FeatureInfo.java
a2b6c3775ed6b8924232d6a01bae4a19740a15f8 core/java/android/content/pm/PackageInfoLite.java
3ecd5f437580e49d80beecd29489d5fb1f7a7db0 core/java/android/content/pm/RegisteredServicesCacheListener.java
5ebbb4a6b3e16f711735ae0615b9a9ea64faad38 core/java/android/content/pm/XmlSerializerAndParser.java
c4516a7b62de525e3d6d5e76851bdfaf12c11f05 core/java/android/database/sqlite/SQLiteTransactionListener.java
9bbc21a773cbdfbef2876a75c32bda5839647751 core/java/com/android/internal/backup/LocalTransport.java
21f1bd17b2dfe361acbb28453b3f3b1a110932fa core/java/com/android/internal/content/PackageMonitor.java
4c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3 core/java/com/android/internal/view/BaseSurfaceHolder.java
4c62fc0e1e5ea9c69a12a7d1cf8b3ec8b2d114a3 core/java/com/android/internal/view/BaseIWindow.java
e540833fdff4d58e37c9ba859388e24e2945ed45 core/java/com/android/internal/os/SamplingProfilerIntegration.java
192ab903887bbb8e7c7b6da5c581573850e30f46 core/tests/coretests/src/android/widget/expandablelistview/PositionTesterContextMenuListener.java
1619367ab823150fa8856d419abe02ceb75886f1 media/tests/MediaFrameworkTest/src/com/android/mediaframeworktest/MediaProfileReader.java
27f8002e591b5c579f75b2580183b5d1c4219cd4 opengl/tools/glgen/stubs/gles11/glGetString.java
560814f6b11abe83ff0c4ed18cac015c276b3181 opengl/tools/glgen/stubs/gles11/glGetProgramInfoLog.java
560814f6b11abe83ff0c4ed18cac015c276b3181 opengl/tools/glgen/stubs/gles11/glGetShaderInfoLog.java
560814f6b11abe83ff0c4ed18cac015c276b3181 opengl/tools/glgen/stubs/gles11/glShaderSource.java
1c4907ee77392afb768c2f088e0dedbe4239f6fb opengl/tools/glgen/src/GenerateGLES.java
1c4907ee77392afb768c2f088e0dedbe4239f6fb opengl/tools/glgen/src/Jsr239CodeEmitter.java
1c4907ee77392afb768c2f088e0dedbe4239f6fb opengl/tools/glgen/src/GLESCodeEmitter.java
69e21f5f6e0d04539cd92848ea009dd615d88c2c opengl/tests/gldual/src/com/android/gldual/TriangleRenderer.java
c028be4f3b8c7476b46859f66c3f33d528adf181 packages/DefaultContainerService/src/com/android/defcontainer/DefaultContainerService.java
7c6efa13f129dbae5319f0981a430d4662f43354 tests/BrowserPowerTest/src/com/android/browserpowertest/PowerMeasurement.java
7c6efa13f129dbae5319f0981a430d4662f43354 tests/BrowserPowerTest/src/com/android/browserpowertest/PowerTestActivity.java
7c6efa13f129dbae5319f0981a430d4662f43354 tests/BrowserPowerTest/src/com/android/browserpowertest/PowerTestRunner.java
df8a3f31d871db25e952972c2eb346a71186e9e3 tests/BrowserTestPlugin/src/com/android/testplugin/TestPlugin.java
cfaef699e1dfb3a75d5b51f3b15816f13670fd51 tests/permission/src/com/android/framework/permission/tests/ActivityManagerPermissionTests.java
cfaef699e1dfb3a75d5b51f3b15816f13670fd51 tests/permission/src/com/android/framework/permission/tests/ServiceManagerPermissionTests.java
cfaef699e1dfb3a75d5b51f3b15816f13670fd51 tests/permission/src/com/android/framework/permission/tests/WindowManagerPermissionTests.java

Copyright header moved to top in following file:

core/tests/coretests/src/android/widget/ListViewTest.java

Change-Id: I3c3198be5a0ba36e18679ed834170432bf0b8418
ridge/tests/com/android/layoutlib/bridge/NinePatchTest.java
2269d1572e5fcfb725ea55f5764d8c3280d69f6d 25-Feb-2010 Dianne Hackborn <hackbod@google.com> Re-arrange android-common so framework no longer links with it.

This is the framework part, moving classes around so the framework
no longer needs to link to android-common. Makes some APIs public,
others that didn't need to be public are private in the framework,
some small things are copied.
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeTypedArray.java
ba289966c644bf54a747ba9b003f86ea7f12bfed 25-Feb-2010 Carl Shapiro <cshapiro@google.com> Merge "Remove empty finalize methods."
05c376b00b583ea3fdf0a222d7220fab7eca15c2 25-Feb-2010 Carl Shapiro <cshapiro@google.com> Remove empty finalize methods.
ridge/src/android/graphics/Canvas.java
ridge/src/android/graphics/Matrix.java
ridge/src/android/graphics/Paint.java
bc3323bea64bbeab0edd0df5e344d844a8d89509 24-Feb-2010 Xavier Ducrohet <xav@android.com> Fix the layoutlib to still support fill_parent.

Change-Id: I5e1825f1f853cf9e31b2ee262edce636a030429d
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/BridgeTypedArray.java
e36d6e277e49475076b7872d36ea6a5c5b996e9d 18-Feb-2010 Dianne Hackborn <hackbod@google.com> Work on issue #2263557: PMF3000 showing hybrid of portrait and landscape modes

This is a bunch of reworking of how configuration changes are handled:

- When orientation is changing (for whatever reason), the window manager no
longer tries to pre-emptively compute a new configuration. Instead, it
just determines change is happening and tells the window manager.
- The activity manager is now responsible for giving the window manager the
final configuration it is using. This is both so it knows whem the
activity manager is done with its configuration updates, and so the window
manager can use the "real" configuration.
- When an orientation or other configuration change is happening, freeze the
screen and keep it frozen until the activity manager has given us the
final configuration.
- The window manager can now send new configurations to its clients during
its layout pass, as part of a resize, if it has determined that it has
changed. This allows for a new View.onConfigurationChanged() API for any
view to easily find out when the configuration has changed.
- ViewRoot now also works with the activity thread to make sure the process's
current resources are updated to the new configuration when it receives one
from a window. This ensures that at the time onConfigurationChanged() and
other view callbacks are happening, the correct configuration is in force.
- There is now a sequence number associated with Configuration, which
ActivityThread uses to avoid using stale configurations. This is needed now
that it can receive configurations asynchronously from both the window
manager and activity manager.
- The hack for keeping the locale has been removed, and underlying problem
fixed by having Configuration initialize its locale to "unknown" instead of
a valid default value.
ridge/src/com/android/layoutlib/bridge/Bridge.java
99e1cdae99a99170011150d6827bf4c9ee63c075 12-Feb-2010 Xavier Ducrohet <xav@android.com> Fix in layoutlib due to some changes in the frameworks.

Some methods disappear or became abstract in the base class
(breaking @Override)

Change-Id: Id4d298ee84ba008ac97ecaaf90b19003ac09f104
ridge/src/com/android/layoutlib/bridge/BridgeAssetManager.java
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
27b28b3f62bd3b54fa13acd5d035940b9be464f3 09-Feb-2010 Tobias Haamel <haamel@google.com> Introduce special UI modes for night and car usage.

The device mode is now called ui mode. Furthermore is the order of
precedence for the resources now in such a way that the ui mode needs
to be specified after the orientation and before the density.

The ui mode can be set, like it is done for the locale, as follows:

IActivityManager am = ActivityManagerNative.getDefault();
Configuration config = am.getConfiguration();
config.uiMode = Configuration.UI_MODE_TYPE_CAR | Configuration.UI_MODE_NIGHT_ANY;
am.updateConfiguration(config);

To allow users to disable the car mode and set the night mode the IUiModeManager
interface is used.

The automatic night mode switching will be added in a separate change.
ridge/src/com/android/layoutlib/bridge/BridgeAssetManager.java
e83cefcef07f9ac025642c1ffec76b4c7ab39cf2 05-Feb-2010 Dianne Hackborn <hackbod@google.com> New external storage APIs.

This implements the spec for external storage organization, and
properly reflects how the media scanner organizes the files it finds.

Also includes package manager support for removing app private
files from external storage when the application is uninstalled.

For the new APIs and paths, the main place to look is Environment
and Context.
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
264ce3825892e4b5ef6af61d330832f4592130bf 22-Jan-2010 Xavier Ducrohet <xav@google.com> am 3bd6dc65: am b44051ee: Merge "ADT/Layoutlib: implement sweep gradient." into eclair

Merge commit '3bd6dc653521281db25df77f055b3ec0b4659454'

* commit '3bd6dc653521281db25df77f055b3ec0b4659454':
ADT/Layoutlib: implement sweep gradient.
28d9c60ee203eff53a5a8577df8a780402173b24 22-Jan-2010 Xavier Ducrohet <xav@google.com> am 60e3c09e: am 6866daee: Merge "ADT/Layoutlib: implement radial gradient." into eclair

Merge commit '60e3c09ec0fa73a3e650f4aec89c763599c2e0b7'

* commit '60e3c09ec0fa73a3e650f4aec89c763599c2e0b7':
ADT/Layoutlib: implement radial gradient.
c22b3ca198dcb1d11c1a9cb8e17eb9c66b2afaa5 22-Jan-2010 Xavier Ducrohet <xav@google.com> am da84d6a1: am 908a8111: Merge "ADT/Layoutlib: Add dash support to stroke." into eclair

Merge commit 'da84d6a1b1c37376d48f92ae59b76f1c891772f6'

* commit 'da84d6a1b1c37376d48f92ae59b76f1c891772f6':
ADT/Layoutlib: Add dash support to stroke.
4e8e87d905054737dc51ef0ba90f0a0a518be000 22-Jan-2010 Xavier Ducrohet <xav@google.com> am c0ea805c: am 2b30a4a5: Merge "ADT/Layoutlib: properly handle stroke information." into eclair

Merge commit 'c0ea805c649666b55d4dde09eb72dcccfa8bccc3'

* commit 'c0ea805c649666b55d4dde09eb72dcccfa8bccc3':
ADT/Layoutlib: properly handle stroke information.
18d21ef83e5de1cbd3875274f3c5f6eee198af6e 21-Jan-2010 Xavier Ducrohet <xav@google.com> am 20cc5570: am 79f05bb4: Merge "ADT/Layoutlib: improved gradient drawing for perf." into eclair

Merge commit '20cc55703348827fbd80ff0410777a537f01e10e'

* commit '20cc55703348827fbd80ff0410777a537f01e10e':
ADT/Layoutlib: improved gradient drawing for perf.
beb0993c6aa7ccaf4e1ec88355a28f4c3ea93c7a 21-Jan-2010 Xavier Ducrohet <xav@android.com> am 38fa9eee: am 89d538dc: ADT/Layoutlib: don\'t draw 0-sized rectangle, AWT doesn\'t like that.

Merge commit '38fa9eee9324b2355f28372e80dba12c1d7cc105'

* commit '38fa9eee9324b2355f28372e80dba12c1d7cc105':
ADT/Layoutlib: don't draw 0-sized rectangle, AWT doesn't like that.
900399f3e8bc3001d3dd017449aea15487c68c59 21-Jan-2010 Xavier Ducrohet <xav@google.com> am 895c92a4: am 240298f9: Merge "ADT/Layoutlib: always use custom gradient (java) Paint." into eclair

Merge commit '895c92a44b8bcf0aec7066c061293cafe12a76c2'

* commit '895c92a44b8bcf0aec7066c061293cafe12a76c2':
ADT/Layoutlib: always use custom gradient (java) Paint.
7fa53aa5df551d318983ed1258ba141337c68ba6 21-Jan-2010 Xavier Ducrohet <xav@google.com> am 31ef2e77: am b847fbf2: Merge "ADT/Layout: support for 3+ color in linear gradients" into eclair

Merge commit '31ef2e77c50485ad6ed410a5d341754d6787b8e1'

* commit '31ef2e77c50485ad6ed410a5d341754d6787b8e1':
ADT/Layout: support for 3+ color in linear gradients
3330927bdd2fedcbc8745f99d3f40929f47fdd31 20-Jan-2010 Xavier Ducrohet <xav@android.com> ADT/Layoutlib: implement sweep gradient.

Change-Id: I2d460decff82f5f64b0a5cfeaa68156aad4fb3e6
ridge/src/android/graphics/GradientShader.java
ridge/src/android/graphics/RadialGradient.java
ridge/src/android/graphics/SweepGradient.java
ef5506c817c2a305ca1c7b03d4ea34a64962b9d7 20-Jan-2010 Xavier Ducrohet <xav@android.com> am f95e3dd2: am 5e083024: ADT/Layoutlib: shader clean-up.

Merge commit 'f95e3dd23cb6cbd7a86dece3c4bafff71307721a'

* commit 'f95e3dd23cb6cbd7a86dece3c4bafff71307721a':
ADT/Layoutlib: shader clean-up.
691b47e154f702bc77472e670281a6be4252e89d 20-Jan-2010 Xavier Ducrohet <xav@google.com> am e1a99147: am d3026e16: Merge "ADT/Layoutlib: 2 color, linear gradient support." into eclair

Merge commit 'e1a991476365cf1a8249c842e2b936db6940b0a7'

* commit 'e1a991476365cf1a8249c842e2b936db6940b0a7':
ADT/Layoutlib: 2 color, linear gradient support.
45a7c285985976c23d818665694addbb25e02565 19-Jan-2010 Xavier Ducrohet <xav@android.com> ADT/Layoutlib: implement radial gradient.

Also refactored some parts of LinearGradient to reuse them
in the radial gradient

Change-Id: I2ec69bd60190bd014217d989177dcc7269188dea
ridge/src/android/graphics/GradientShader.java
ridge/src/android/graphics/LinearGradient.java
ridge/src/android/graphics/RadialGradient.java
28039a6f7430bed46de5d8273be583f729c31b79 19-Jan-2010 Xavier Ducrohet <xav@google.com> am 1da2735c: am f73bd14a: Merge "ADT/Layoutlib: implement Canvas.concat(Matrix)" into eclair

Merge commit '1da2735c5862d48712706c2052a34e10e3dea43b'

* commit '1da2735c5862d48712706c2052a34e10e3dea43b':
ADT/Layoutlib: implement Canvas.concat(Matrix)
05bc8d739768c8e2e025c291706f6c10ac362636 19-Jan-2010 Xavier Ducrohet <xav@android.com> am cff6c845: am ae4bd059: ADT/Layoutlib: Reimplement parts of BitmapFactory

Merge commit 'cff6c8459ca05f3fee2d2999989d07a7176f955c'

* commit 'cff6c8459ca05f3fee2d2999989d07a7176f955c':
ADT/Layoutlib: Reimplement parts of BitmapFactory
36ab1284d8e89486cadbd55320ca965e96d65f44 15-Jan-2010 Xavier Ducrohet <xav@android.com> ADT/Layoutlib: Add dash support to stroke.

Change-Id: I09a7e84948be013cbb11f6d9774ab81df897b424
ridge/src/android/graphics/Canvas.java
ridge/src/android/graphics/DashPathEffect.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
5ac8f409f52b4b121614a8797d289f01f96c6527 15-Jan-2010 Xavier Ducrohet <xav@android.com> ADT/Layoutlib: properly handle stroke information.

Change-Id: Iec9284d0e65d1313739e361d1fd5a522646fd1fd
ridge/src/android/graphics/Canvas.java
ridge/src/android/graphics/Paint.java
79f05bb4a502d5768f84cf975f791f3ba981e0e5 15-Jan-2010 Xavier Ducrohet <xav@google.com> Merge "ADT/Layoutlib: improved gradient drawing for perf." into eclair
e8f4d7deab2c183604ea5a2344a1e2d7ff4f823a 15-Jan-2010 Xavier Ducrohet <xav@android.com> ADT/Layoutlib: improved gradient drawing for perf.

Change-Id: I79b909d7787e4442e7cfdf196de1ac0c077da7f8
ridge/src/android/graphics/LinearGradient.java
89d538dcca9a4cb95682c56b0c4b85e8a77442be 15-Jan-2010 Xavier Ducrohet <xav@android.com> ADT/Layoutlib: don't draw 0-sized rectangle, AWT doesn't like that.

Change-Id: I298d00208ace2421478c5864cc5a66a508b2b411
ridge/src/android/graphics/Canvas.java
2dbb923aa02e09a64fc111596a9ac9117488aa24 15-Jan-2010 Xavier Ducrohet <xav@android.com> ADT/Layoutlib: always use custom gradient (java) Paint.

The normal linear paint from AWT does not support our TileModes.

Change-Id: I24667671dabdf1a5dffa342e4de9cc69487db0b6
ridge/src/android/graphics/LinearGradient.java
374abf0b95ca94d34f94edd385fb37a8d5cb123b 15-Jan-2010 Xavier Ducrohet <xav@android.com> ADT/Layout: support for 3+ color in linear gradients

Change-Id: I14c6a5a1de41470c6f1c66d490492ecc727302f2
ridge/src/android/graphics/LinearGradient.java
5e083024269e7c5bf904301a98fa6eade6fec094 14-Jan-2010 Xavier Ducrohet <xav@android.com> ADT/Layoutlib: shader clean-up.

Change-Id: I0a200f438b7ccde2bfc19fd23614a647cb19d312
ridge/src/android/graphics/BitmapShader.java
ridge/src/android/graphics/Canvas.java
ridge/src/android/graphics/ComposeShader.java
ridge/src/android/graphics/LinearGradient.java
ridge/src/android/graphics/RadialGradient.java
ridge/src/android/graphics/Shader.java
ridge/src/android/graphics/SweepGradient.java
63b2e616278c1b4284e1adbcc3936d0516083dcb 14-Jan-2010 Xavier Ducrohet <xav@android.com> ADT/Layoutlib: 2 color, linear gradient support.

Change-Id: Ifaafa4fc42a22f4851449a7c35a5b82e211aafe7
ridge/src/android/graphics/BitmapShader.java
ridge/src/android/graphics/Canvas.java
ridge/src/android/graphics/ComposeShader.java
ridge/src/android/graphics/LinearGradient.java
ridge/src/android/graphics/Paint.java
ridge/src/android/graphics/RadialGradient.java
ridge/src/android/graphics/Shader.java
ridge/src/android/graphics/SweepGradient.java
608cd11cdcef006b3c8db966b9b113ef7b08b839 14-Jan-2010 Xavier Ducrohet <xav@android.com> ADT/Layoutlib: implement Canvas.concat(Matrix)

This prevented ImageView from making proper use of ScaleType.

Also fixed Canvas.getSaveCount() that returned the wrong
value and Matrix.getTransform() which used the wrong order
for the AffineTransform constructor!!

Bug: 2364564

Change-Id: I78babf4aa6689440e52ad06b1473f75b20eb66da
ridge/src/android/graphics/Canvas.java
ridge/src/android/graphics/Matrix.java
ae4bd059caa71aa4652c0f07fde7c2687169906e 14-Jan-2010 Xavier Ducrohet <xav@android.com> ADT/Layoutlib: Reimplement parts of BitmapFactory

The original bitmap factory is mostly done in native and deals
with the normal android Bitmap class which has been replaced
in the layoutlib by a bitmap that is merely a wrapper around
an AWT BufferedImage.

This new BitmapFactory creates the layoutlib version of
Bitmap all in Java.

Change-Id: Ice8b5d19141a9a43f83349c159201bf85604b3b0
ridge/src/android/graphics/Bitmap.java
ridge/src/android/graphics/BitmapFactory.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
6d40ee33f534aa31c5d9c4dbc6049275e3b754c2 12-Jan-2010 Xavier Ducrohet <xav@google.com> am f5a84f8a: am dfe25b0e: Merge "LayoutLib: support for custom styles." into eclair

Merge commit 'f5a84f8a7f91422f698ffbea3fabf77f2f7f77c8'

* commit 'f5a84f8a7f91422f698ffbea3fabf77f2f7f77c8':
LayoutLib: support for custom styles.
9ce3b775f55abd0ceb1d8e96968ce725f1f8bade 11-Jan-2010 Xavier Ducrohet <xav@android.com> LayoutLib: support for custom styles.

Change-Id: Ic6c2ef234589f45db15024261d698066aa6e2f4e
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
2924a51fd04856012b4ac2acdfffc3b7d469f62f 09-Jan-2010 Romain Guy <romainguy@android.com> Fix duplicate constant in layoutbridge.
ridge/src/com/android/layoutlib/bridge/BridgeConstants.java
980a938c1c9a6a5791a8240e5a1e6638ab28dc77 09-Jan-2010 Romain Guy <romainguy@android.com> Deprecate fill_parent and introduce match_parent.
Bug: #2361749.
ridge/src/com/android/layoutlib/bridge/BridgeConstants.java
ridge/src/com/android/layoutlib/bridge/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/BridgeTypedArray.java
ridge/tests/com/android/layoutlib/testdata/layout1.xml
f80a762400a5500ec926b6a98051fec95558ad9d 07-Jan-2010 Xavier Ducrohet <xav@google.com> am de0ef181: am ce60d4b2: Merge "Move Layoutlib API library to sdk.git" into eclair

Merge commit 'de0ef181516ce13d292eafb741fa6c6b9dc1cb1c'

* commit 'de0ef181516ce13d292eafb741fa6c6b9dc1cb1c':
Move Layoutlib API library to sdk.git
82935938fa89e6acb1181eb621cb08828cd423c8 07-Jan-2010 Xavier Ducrohet <xav@android.com> Move Layoutlib API library to sdk.git

Change-Id: I53f1c5d52447b6215ae7a6f2f1f82d0879e952ca
gitignore
pi/.classpath
pi/.project
pi/Android.mk
pi/src/com/android/layoutlib/api/IDensityBasedResourceValue.java
pi/src/com/android/layoutlib/api/ILayoutBridge.java
pi/src/com/android/layoutlib/api/ILayoutLog.java
pi/src/com/android/layoutlib/api/ILayoutResult.java
pi/src/com/android/layoutlib/api/IProjectCallback.java
pi/src/com/android/layoutlib/api/IResourceValue.java
pi/src/com/android/layoutlib/api/IStyleResourceValue.java
pi/src/com/android/layoutlib/api/IXmlPullParser.java
d4a4729c0cac582a2dcec7c8cfb316b81885a0f0 21-Dec-2009 Tom Taylor <tomtaylor@google.com> Update imports to android-common

Several files were moved to android-common. Update all the references
to import those files from the new location.
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeTypedArray.java
a8ba3114e801282cf375c3ea2332164a52cb3813 11-Dec-2009 Xavier Ducrohet <xav@android.com> Layoutlib: Add a constant for default density value.

Change-Id: I6dc8a694bbdae2385d4e877ea04a6b4325a5719e
pi/src/com/android/layoutlib/api/IDensityBasedResourceValue.java
9ddb7df88a62a131519264f75f5d6616ee11b6e6 17-Nov-2009 Dianne Hackborn <hackbod@google.com> Fix build.

Change-Id: I70c86738e2894d7f8c51034aea8fda1585a6fcb3
ridge/src/com/android/layoutlib/bridge/BridgeAssetManager.java
0da2676ea841ff85b373c2960dd2c497dcf4e441 16-Nov-2009 Xavier Ducrohet <xav@android.com> Minor fix for the parent style computation in the layoutlib.

This is an SDK change only.

Change-Id: Iae493184ae76b2e21200dd6bb48795ff74f79ab3
ridge/src/com/android/layoutlib/bridge/Bridge.java
76410f1eb316763018b7480d9cd8dc3684803576 13-Nov-2009 Xavier Ducrohet <xav@android.com> Properly implement Paint.breakText for layoutlib.

BUG 2260400

Change-Id: I7082e366b65da0b5de2a6dbb547f66e05e0b78e0
ridge/src/android/graphics/Paint.java
bf6956b1d95442e9d9c483894d578fe6b7044cbb 10-Nov-2009 Marco Nelissen <marcone@google.com> Add a way for wallpapers to know the delta between virtual screens.
ridge/src/com/android/layoutlib/bridge/Bridge.java
9a4593ffcce99e9f7b89b165911c2a870c27cc45 09-Nov-2009 Xavier Ducrohet <xav@android.com> Support for fallback fonts in layoutlib.

BUG 2041229

Change-Id: Ib12bcb7f6d8f0e4c2b51871f8129ecf51fa938ee
ridge/src/android/graphics/Canvas.java
ridge/src/android/graphics/Paint.java
ridge/src/android/graphics/Typeface.java
ridge/src/com/android/layoutlib/bridge/FontLoader.java
a86f28494c526ef14c736a977d746b3e5d9ab49e 03-Nov-2009 Brett Chabot <brettchabot@android.com> Fix layoutlib tests so they pas when run from Eclipse workbench.

Bug 2222616
ridge/tests/com/android/layoutlib/bridge/BridgeXmlBlockParserTest.java
ridge/tests/com/android/layoutlib/bridge/NinePatchTest.java
7580493b014a2c7ea883cd291255798dc72ebbff 21-Oct-2009 Dianne Hackborn <hackbod@google.com> Implement feature #2117336: Create event communication APIs for live wallpaper

Note: currently only implements an async version (no result), and not yet
actually tested.

Change-Id: Id47ed045a4b0eb309ea8c58daf41a0e03eff1d3a
ridge/src/com/android/layoutlib/bridge/Bridge.java
5f9d4bae03b2dfa9c1e43a6e01cacaa5a5326690 06-Oct-2009 Xavier Ducrohet <xav@android.com> layout lib tests cleanup

- Move test files to their own package for easy binary inclusion
in adt-test
- fix some tests and remove obsolete ones.

Change-Id: I5b967f29074fdad74073f9b37d903eabe8dc29e6
ridge/tests/com/android/layoutlib/bridge/AndroidGraphicsTests.java
ridge/tests/com/android/layoutlib/bridge/BridgeTest.java
ridge/tests/com/android/layoutlib/bridge/BridgeXmlBlockParserTest.java
ridge/tests/com/android/layoutlib/bridge/button.9.png
ridge/tests/com/android/layoutlib/bridge/layout1.xml
ridge/tests/com/android/layoutlib/testdata/button.9.png
ridge/tests/com/android/layoutlib/testdata/layout1.xml
0a9d46b7e741ccf7272bb69a4eef3c1f2adc91b7 06-Oct-2009 Xavier Ducrohet <xav@android.com> Add a test to make sure the replaced classes in layoutlib are correct.

Change-Id: I9641635153c12e2c0a23583f7d094767533fc683
ridge/tests/com/android/layoutlib/bridge/NinePatchTest.java
ridge/tests/com/android/layoutlib/bridge/TestClassReplacement.java
9f751ab3fc4fc4af9dc3ec226839bbf9a1b5305e 06-Oct-2009 Xavier Ducrohet <xav@android.com> Reimplement all the method of Paint for layoutlib

There were a few missing methods that should have been reimplmented
(because they were native).

Others have been added just to be sure so that we can test whether methods
are missing or not (test coming soon).

Change-Id: I24895c353e38545e9b1abe28d41224fdc78cadb1
ridge/src/android/graphics/Paint.java
8c739671d262c74c5743bf249180b1ba58bef4da 06-Oct-2009 Xavier Ducrohet <xav@android.com> Fix the layoutlib test to run from adt-tests.

Change-Id: I34f513429593dce9f781ed8a08c4664a5d6f9aa8
ridge/tests/com/android/layoutlib/bridge/BridgeTest.java
ridge/tests/com/android/layoutlib/bridge/BridgeXmlBlockParserTest.java
ridge/tests/com/android/layoutlib/bridge/NinePatchTest.java
ridge/tests/com/android/layoutlib/bridge/StyleResourceValue.java
ridge/tests/com/android/layoutlib/bridge/button.9.png
ridge/tests/com/android/layoutlib/bridge/layout1.xml
ridge/tests/data/button.9.png
ridge/tests/data/layout1.xml
ac7391de5f32cf051678886f0d393fe0431dc6d1 05-Oct-2009 Xavier Ducrohet <xav@android.com> Refactor class/method names used by layoutlib_create.

Information about classes and methods that are replaced, renamed, removed
into CreateInfo, so that it can be used by the tests.

Change-Id: I8874a40503249416621aa90b2ca02dcaf30ecd57
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/CreateInfo.java
reate/src/com/android/tools/layoutlib/create/Main.java
f18ccc13a663fe385ecdfbdfd55ef503d48833f5 28-Sep-2009 Xavier Ducrohet <xav@android.com> Fix a warning output.

This was introduced by the dpi work.

Change-Id: I7c7b1596085f70532b8279139c287a2a58f57046
ridge/src/com/android/layoutlib/bridge/BridgeTypedArray.java
ffa424800d0338b8b894aef2ea1e3e3344cbda7a 24-Sep-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2133206: dialogs/menus should auto-dismiss when screen turns off

Lot of infrastructure for more things to go away when "clear system dialogs"
happens, and now do this when we turn on the lock screen.

Change-Id: I567130296fe47ce82df065ed58ef21b37416ceaf
ridge/src/com/android/layoutlib/bridge/Bridge.java
56a92e3ba0d7da310b4c6e09f54dee10f1f395bb 23-Sep-2009 Xavier Ducrohet <xav@android.com> Add density support to layoutlib so that bitmap are scaled if needed.

Change-Id: I00204bb136ccaa44deeafbe0ea8746fea9903341
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/ResourceHelper.java
de0dfb7b65a02d4dd74c271b558adee0973fc267 23-Sep-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2125720 Weather Forecast Widget - graphics do not scale

I forgot to add the new density field to the Bitmaps' parcelable data.

Change-Id: I77cf3e93e356297e0caed6fc71b62b5cd8f79124
ridge/src/android/graphics/Bitmap.java
39cd36ec1fed5f370983dbd8933acc5e779003c6 23-Sep-2009 Xavier Ducrohet <xav@android.com> Add density value to density enum.

This is going to be used as constant to both ADT classes and the
layoutlib.

Change-Id: Id9befe83c5c2be3fbc5f045c7ed21aa8ee0108cc
pi/src/com/android/layoutlib/api/IDensityBasedResourceValue.java
ccb630df4bb32ef93c55ad32859849a08b840288 23-Sep-2009 Xavier Ducrohet <xav@android.com> Add a new IResourceValue that knows about the density.

This will allow the layoutlib to resize bitmaps that are
not in the native density of the rendering.

Change-Id: If9dca6d51cd93a2083c96fce3ac64335ec6ad801
pi/src/com/android/layoutlib/api/IDensityBasedResourceValue.java
efa199f016985b0a9d0471e42c803ee9f7941f0e 19-Sep-2009 Dianne Hackborn <hackbod@google.com> Add API to send an ordered sticky broadcast.

Change-Id: Ida7081204e226db0cd07ff618c08e308a909ec0c
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
fa82f22f1d8c4c828bdf9b670006be4f4fec772e 18-Sep-2009 Dianne Hackborn <hackbod@google.com> Fix issue #2093608: Calendar widget takes a few seconds to launch

Avert your eyes!

The key change here is that RemoteViews can now call a Context API to
start its pending intent, which inside of the activity manager we can
use to determine to cancel the timeout delay for external entities
to disrupt the home screen.

Change-Id: If097cf7478cbed7a3c04a304050bd7fd5703d197
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
d023f9a9a90705410250cd86bc6446c738423a99 15-Sep-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 24829 into eclair

* changes:
Some optizations to wallpaper drawing/scrolling.
19382ac1a4e4e7c23a1346d299368763f149de9c 12-Sep-2009 Dianne Hackborn <hackbod@google.com> Some optizations to wallpaper drawing/scrolling.

First, fix some issues with the final wallpaper bitmap
we use: ensure it is always 16bpp, and make sure dithering
of its bitmap is turned off. We take of dithering
when loading, to make sure we don't use it when drawing.

Also add new APIs to return the wallpaper with the equivalent
of Launcher's old FastBitmapDrawable. As doing this, also load
the default wallpaper the same way as custom ones, taking care to
resize it as needed at load time.

Finally implement a mechanism for the window manager to wait
for the wallpaper to redraw at its new position before returning
from the application's call to change the offset. This ensures
that the wallpaper better tracks the application. Note that there
is a timeout in this wait that is relatively short, and if it
expires we will run for a while without waiting.

Change-Id: Ife449437746da85958bd447e0a6cf3d2223b398c
ridge/src/com/android/layoutlib/bridge/Bridge.java
7a79628cd9b5149a7b38b90bf6cef9ea67cfbc21 14-Sep-2009 Raphael <raphael@google.com> Fix some LayoutBridge javadoc.

Change-Id: I255d1d58d3537403ac9a8a5c7adece30ae989ce0
pi/src/com/android/layoutlib/api/ILayoutBridge.java
pi/src/com/android/layoutlib/api/ILayoutResult.java
ad013fae0db2864ad13631a44d26bacafc36f861 21-Aug-2009 Xavier Ducrohet <xav@android.com> Replace fullHeight support by fullSize (height and width)

This is useful for linearlayout in horizontal mode.
pi/src/com/android/layoutlib/api/ILayoutBridge.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
d604ad1ad442790af53847d24060ecb097106d26 20-Aug-2009 Xavier Ducrohet <xav@android.com> Support full length rendering.

New rendering method in ILayoutBridge to specify whether the rendering
height should be the specified height or if it should be the height
required by the layout (specified height is always the minimum).
pi/src/com/android/layoutlib/api/ILayoutBridge.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
f369b7199f537bba7d8fced8b0f826249d19fdf5 18-Aug-2009 Xavier Ducrohet <xav@android.com> am ad4bc607: Merge change 21772 into donut

Merge commit 'ad4bc607bd236dd9b06df9cf89dc5e14541ff66c' into eclair

* commit 'ad4bc607bd236dd9b06df9cf89dc5e14541ff66c':
Fix Resources#opeRawResource(int, TypedValue) in layoutlib.
72e4bcd3d0da90f6c9550c93e58c12b2903a5ab8 18-Aug-2009 Xavier Ducrohet <xav@android.com> Fix Resources#opeRawResource(int, TypedValue) in layoutlib.
ridge/src/com/android/layoutlib/bridge/BridgeResources.java
f7064e18fbafa6091a7e5f604978331135bcf4b6 18-Aug-2009 Xavier Ducrohet <xav@android.com> am ace6a5cf: Merge change 21408 into donut

Merge commit 'ace6a5cfc0d14a909b4b95bdfe16609188125baf' into eclair

* commit 'ace6a5cfc0d14a909b4b95bdfe16609188125baf':
Improved drawing/matrix support in layoutlib
1a8c1599de630ae4199b71cb3eca75d7db9c40d6 18-Aug-2009 Xavier Ducrohet <xav@android.com> am c1c432f5: Merge change 21241 into donut

Merge commit 'c1c432f57b782ed9d8d65be7ea1bee1e1d7d7839' into eclair

* commit 'c1c432f57b782ed9d8d65be7ea1bee1e1d7d7839':
Layoutlib now uses the dimen status_bar_height instead of hard-coded value
8df8b2b405c60cacf7a66c4e2ca078dd3d7ec7bd 18-Aug-2009 Dianne Hackborn <hackbod@google.com> Allow wallpapers to get touch events.
ridge/src/com/android/layoutlib/bridge/Bridge.java
2473ef5654b2a4b65132a35677c6ddfd481aab2c 15-Aug-2009 Xavier Ducrohet <xav@android.com> Improved drawing/matrix support in layoutlib

- Make the custom Canvas actually replace the original one so that it's used
even by parts of the framework that allocate their own temp Canvas object.
- Better support for Matrix: added support for mapPoint() and mapRect(), and invert()
- Implemented drawBitmap() with a Matrix, and made the paint object not NPE when null.
ridge/src/android/graphics/Bitmap.java
ridge/src/android/graphics/Canvas.java
ridge/src/android/graphics/Matrix.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeCanvas.java
ridge/src/com/android/layoutlib/bridge/NinePatchDrawable.java
reate/src/com/android/tools/layoutlib/create/Main.java
09701011bc489f117d88f2c0ed406120eb4562ab 14-Aug-2009 Xavier Ducrohet <xav@android.com> Layoutlib now uses the dimen status_bar_height instead of hard-coded value

BUG: 2053956
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeConstants.java
1d47a5142682c1f9f9a04fdbe1ec863fd5550c30 14-Aug-2009 Xavier Ducrohet <xav@android.com> am 94ff3f1f: Merge change 21063 into donut

Merge commit '94ff3f1f08805b68c5524b39024968aebcdc83ee' into eclair

* commit '94ff3f1f08805b68c5524b39024968aebcdc83ee':
Fix handling of reference XML file in layout files
314e0226a26cd79b5080dcb76d566fa6f83ff695 14-Aug-2009 Xavier Ducrohet <xav@android.com> am e1b63d22: Merge change 21033 into donut

Merge commit 'e1b63d224a0a68191f087186c470cde317e3fa76' into eclair

* commit 'e1b63d224a0a68191f087186c470cde317e3fa76':
Mock ServiceManager and AccesibilityManager to make the view renders in ADT
08e2a4b56f23ce02f17300438f76ccc1f663f183 13-Aug-2009 Xavier Ducrohet <xav@android.com> Fix handling of reference XML file in layout files

This allows layout that references animation to properly load
in the layout editor in ADT
ridge/src/android/os/ServiceManager.java
ridge/src/android/view/accessibility/AccessibilityManager.java
ridge/src/com/android/layoutlib/bridge/BridgeResources.java
385df699a6d602cab501092821a79cc6ab3a390e 13-Aug-2009 Andrei Popescu <andreip@google.com> remove Gears
ridge/src/android/webkit/WebView.java
7953e7d89b1d4d7297176fbb6aeea882577df8e6 13-Aug-2009 Xavier Ducrohet <xav@android.com> Mock ServiceManager and AccesibilityManager to make the view renders in ADT

BUG: 2049348
ridge/src/android/os/ServiceManager.java
ridge/src/android/view/accessibility/AccessibilityManager.java
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
reate/src/com/android/tools/layoutlib/create/Main.java
72c82ab9923025a91bbabb32e56bfea27bfd083b 12-Aug-2009 Dianne Hackborn <hackbod@google.com> Report wallpaper offset to the wallpaper, use this in the image wallpaper.

Wallpapers can now be just the size of the screen, and get told when their
scroll position should change to do the updating on their own.
ridge/src/com/android/layoutlib/bridge/Bridge.java
c8a0a75e1c61d1ab24bd46a8243041c107e738ac 11-Aug-2009 Dianne Hackborn <hackbod@google.com> Implement support for scrolling a wallpaper.

This currently only works for a wallpaper that is larger than the
screen. Set the scroll position with the new wallpaper API. Right
now only does jump scrolls.
ridge/src/com/android/layoutlib/bridge/Bridge.java
eba337ad09ba93b31f4e9ec8f99be3ae2811bf89 23-Jul-2009 Xavier Ducrohet <xav@android.com> Reimplement TypedArray.getLayoutDimension(int, int) for the layout bridge.
ridge/src/com/android/layoutlib/bridge/BridgeTypedArray.java
a53b828635fce8b6b2d3e3377d74d72070056623 17-Jul-2009 Dianne Hackborn <hackbod@google.com> Add "nodpi" density, and expose a bunch of density-related APIs.

Also update the DpiTest app to use nodpi images, and try to have a mode
where it turns off compatibility though it's not quite working.
ridge/src/com/android/layoutlib/bridge/Bridge.java
723738cfaec3dd7b0fe152c872c41bebf94074c4 26-Jun-2009 Dianne Hackborn <hackbod@google.com> Expand support for different screen sizes.

Applications can now declare that they support small, normal, or
large screens. Resource selection can also be done based on these
sizes. By default, pre-Donut apps are false for small and large,
and Donut or later apps are assumed to support all sizes. In either
case they can use <supports-screens> in their manifest to declare
what they actually support.
ridge/src/com/android/layoutlib/bridge/BridgeAssetManager.java
63e7155c7d1d0c3f0027400aa09e9a45f648a80d 19-Jun-2009 Android (Google) Code Review <android-gerrit@google.com> Merge change 4696 into donut

* changes:
Fix targetSdkVersion, make resize mode a flag, delayed dexopt, easy ApplicationInfo.
5c1e00b14d2ef10ec76abf3e951fa8003a67f558 19-Jun-2009 Dianne Hackborn <hackbod@google.com> Fix targetSdkVersion, make resize mode a flag, delayed dexopt, easy ApplicationInfo.

- Fix a bug where targetSdkVersion could not be set if minSdkVersion. Stupid, stupid.
Also make sure to fail if minSdkVersion is for a code name. Really stupid.

- Change the API for resize compatibility mode to be a bit in the flags field, instead
of a separate boolean.

- Implement delayed dexopting, to avoid the looong full dexopt during boot. This is
only enabled for "eng" builds. When in this mode, the activity manager will make
sure that a dexopt has been done before loading an .apk into a process, and will
try to avoid displaying ANRs if they are due to the dexopt causing some operation
to take longer than it normally would (though I make no guarantees about this
totally working).

- Add API to Context to get the ApplicationInfo for its package, for easy access to
things like targetSdkVersion.
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
83189c985a0e617ba7856343ea8b7080c37396a7 18-Jun-2009 Xavier Ducrohet <xav@android.com> Connect TabHost/TabWidget/FrameLayout in the layout editor.

Basically this does automatically what the developer has to do in his/her
activity so that the TabHost gets tabs that connects the TabWidgets and the
content of the FrameLayout.
ridge/src/com/android/layoutlib/bridge/Bridge.java
23ecae3bbb60c5af940f3a22170d75eb6ac05b69 11-Jun-2009 Joe Onorato <joeo@android.com> Fix SharedPrefsBackupHelper so it doesn't hard code the paths to the files.

This took quite a bit of refactoring.
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
1741ec39a90b95fff215a005b6b3941d7c1b4735 05-Jun-2009 Xavier Ducrohet <xav@android.com> Fix external bug 2875: Matrix#mValues[7] assigned twice in place of mValues[8]
ridge/src/android/graphics/Matrix.java
9189cabb0b6c6c28232fe6f412b7ba7a37352a6a 03-Jun-2009 Mitsuru Oshima <oshima@google.com> * Moved supports-density tag under manifest
* Refactored Compatibility code
* Added CompatibilityInfo class
* Removed getApplicationScale from Context
* Added Resources#getCompatibilityInfo so that RootView can get the compatibility info w/o going through Context
* Expandable support
* Added expandable tag under manifest
* Old application w/o expandable is given the default screen size ([320, 480] x density).
* The non-expandable window is centered.
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
231cc608d06ffc31c24bf8aa8c8275bdd2636581 28-Apr-2009 Dianne Hackborn <hackbod@google.com> Rewrite SyncStorageEngine to use flat files and in-memory data structures.

The previous implementation used a database for storing all of its state, which could cause
a significant amount of IO activity as its tables were updated through the stages of a sync.
This new implementation replaces that in-memory data structures, with hand-written code
for writing them to persistent storage.

There are now 4 files associated with this class, holding various pieces of its state that
should be consistent. These are everything from a main XML file of account information that
must always be retained, to a binary file of per-day statistics that can be thrown away at
any time. Writes of these files as scheduled at various times based on their importance of
the frequency at which they change.

Because the database no longer exists, there needs to be a new explicit interface for
interacting with the sync manager database. This is provided by new APIs on IContentService,
with a hidden method on ContentResolver to retrieve the IContentService so that various
system entities can use it. Other changes in other projects are required to update to the
new API.

The goal here is to have as little an impact on the code and functionality outside of
SyncStorageEngine, though due to the necessary change in API it is still somewhat extensive.
ridge/src/com/android/layoutlib/bridge/BridgeContentResolver.java
33fbd3bee0d2160c79ffca246c6999e10a663aa2 05-May-2009 Raphael <raphael@google.com> Ignore layout bin directories in git.
gitignore
ridge/.gitignore
13735a255dedd2c2e3b0cff66f0be2e17671f553 29-Apr-2009 Mitsuru Oshima <> Merge branch 'readonly-p4-donut' into donut
8169daed2f7a8731d478b884b1f455c747b88478 29-Apr-2009 Mitsuru Oshima <> AI 147976: Compatibility mode support. Part 2.
* Introduced ApplicationScale (may not be good name. CompatibilityScale? CanvasScale? Pls let me know if you have better idea)
* Changes to RootView / SurfaceView
- Makes the app believe it's running in the supported density/resolution.
- Makes the window manager believe it's running at the right density/resolution.
* Added methods to Rect/Event for scaling up/down.
Known issues:
* certain kind of images (such as nine patch for buttons) seesm to be loaded not by app, thus does not take the scale into account,
which, in turn, is causing layout issue.
* ZoomButton in MapView is rendered in wrong place
* Transparent region on Surface is not correct
* Specifying different densities in one process is not working.
BUG=1770627

Automated import of CL 147976
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
d4943a9a7b7d1538695a02896f211bafe09571ba 25-Apr-2009 Xavier Ducrohet <xav@android.com> Add file to ignore the content of the layoutlib/Bridge Eclipe bin folder.
ridge/.gitignore
e30661294bc590a11eef678bdf92c1dff75c36f9 16-Apr-2009 Xavier Ducrohet <> AI 146485: am: CL 146411 Fix BridgeCanvas#drawRoundRect
Original author: xav
Merged from: //branches/cupcake/...

Automated import of CL 146485
ridge/src/com/android/layoutlib/bridge/BridgeCanvas.java
105925376f8d0f6b318c9938c7b83ef7fef094da 19-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake_rel/...@140373
ridge/src/com/android/layoutlib/bridge/BridgeTypedArray.java
4df2423a947bcd3f024cc3d3a1a315a8dc428598 05-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@136594
ridge/src/com/android/layoutlib/bridge/Bridge.java
9066cfe9886ac131c34d59ed0e2d287b0e3c0087 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
ndroid.mk
pi/.classpath
pi/.project
pi/Android.mk
pi/src/com/android/layoutlib/api/ILayoutBridge.java
pi/src/com/android/layoutlib/api/ILayoutLog.java
pi/src/com/android/layoutlib/api/ILayoutResult.java
pi/src/com/android/layoutlib/api/IProjectCallback.java
pi/src/com/android/layoutlib/api/IResourceValue.java
pi/src/com/android/layoutlib/api/IStyleResourceValue.java
pi/src/com/android/layoutlib/api/IXmlPullParser.java
ridge/.classpath
ridge/.project
ridge/Android.mk
ridge/src/android/graphics/Bitmap.java
ridge/src/android/graphics/BitmapShader.java
ridge/src/android/graphics/ComposeShader.java
ridge/src/android/graphics/LinearGradient.java
ridge/src/android/graphics/Matrix.java
ridge/src/android/graphics/Paint.java
ridge/src/android/graphics/Path.java
ridge/src/android/graphics/PorterDuffXfermode.java
ridge/src/android/graphics/RadialGradient.java
ridge/src/android/graphics/Shader.java
ridge/src/android/graphics/SweepGradient.java
ridge/src/android/graphics/Typeface.java
ridge/src/android/util/FloatMath.java
ridge/src/android/view/BridgeInflater.java
ridge/src/android/view/SurfaceView.java
ridge/src/android/webkit/WebView.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeAssetManager.java
ridge/src/com/android/layoutlib/bridge/BridgeCanvas.java
ridge/src/com/android/layoutlib/bridge/BridgeConstants.java
ridge/src/com/android/layoutlib/bridge/BridgeContentResolver.java
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/BridgeXmlBlockParser.java
ridge/src/com/android/layoutlib/bridge/BridgeXmlPullAttributes.java
ridge/src/com/android/layoutlib/bridge/FontLoader.java
ridge/src/com/android/layoutlib/bridge/LayoutResult.java
ridge/src/com/android/layoutlib/bridge/MockView.java
ridge/src/com/android/layoutlib/bridge/NinePatchDrawable.java
ridge/src/com/android/layoutlib/bridge/ResourceHelper.java
ridge/src/com/android/layoutlib/bridge/ResourceValue.java
ridge/src/com/google/android/maps/MapView.java
ridge/tests/com/android/layoutlib/bridge/AndroidGraphicsTests.java
ridge/tests/com/android/layoutlib/bridge/BridgeTest.java
ridge/tests/com/android/layoutlib/bridge/BridgeXmlBlockParserTest.java
ridge/tests/com/android/layoutlib/bridge/NinePatchTest.java
ridge/tests/com/android/layoutlib/bridge/StyleResourceValue.java
ridge/tests/data/button.9.png
ridge/tests/data/layout1.xml
reate/.classpath
reate/.project
reate/Android.mk
reate/README.txt
reate/manifest.txt
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/ClassHasNativeVisitor.java
reate/src/com/android/tools/layoutlib/create/Log.java
reate/src/com/android/tools/layoutlib/create/LogAbortException.java
reate/src/com/android/tools/layoutlib/create/Main.java
reate/src/com/android/tools/layoutlib/create/MethodAdapter.java
reate/src/com/android/tools/layoutlib/create/MethodListener.java
reate/src/com/android/tools/layoutlib/create/OverrideMethod.java
reate/src/com/android/tools/layoutlib/create/RenameClassAdapter.java
reate/src/com/android/tools/layoutlib/create/StubMethodAdapter.java
reate/src/com/android/tools/layoutlib/create/TransformClassAdapter.java
reate/tests/com/android/tools/layoutlib/create/AsmAnalyzerTest.java
reate/tests/com/android/tools/layoutlib/create/AsmGeneratorTest.java
reate/tests/com/android/tools/layoutlib/create/LogTest.java
reate/tests/com/android/tools/layoutlib/create/RenameClassAdapterTest.java
reate/tests/data/mock_android.jar
reate/tests/data/mock_android.jardesc
reate/tests/mock_android/dummy/InnerTest.java
reate/tests/mock_android/view/View.java
reate/tests/mock_android/view/ViewGroup.java
reate/tests/mock_android/widget/LinearLayout.java
reate/tests/mock_android/widget/TableLayout.java
d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
ndroid.mk
pi/.classpath
pi/.project
pi/Android.mk
pi/src/com/android/layoutlib/api/ILayoutBridge.java
pi/src/com/android/layoutlib/api/ILayoutLog.java
pi/src/com/android/layoutlib/api/ILayoutResult.java
pi/src/com/android/layoutlib/api/IProjectCallback.java
pi/src/com/android/layoutlib/api/IResourceValue.java
pi/src/com/android/layoutlib/api/IStyleResourceValue.java
pi/src/com/android/layoutlib/api/IXmlPullParser.java
ridge/.classpath
ridge/.project
ridge/Android.mk
ridge/src/android/graphics/Bitmap.java
ridge/src/android/graphics/BitmapShader.java
ridge/src/android/graphics/ComposeShader.java
ridge/src/android/graphics/LinearGradient.java
ridge/src/android/graphics/Matrix.java
ridge/src/android/graphics/Paint.java
ridge/src/android/graphics/Path.java
ridge/src/android/graphics/PorterDuffXfermode.java
ridge/src/android/graphics/RadialGradient.java
ridge/src/android/graphics/Shader.java
ridge/src/android/graphics/SweepGradient.java
ridge/src/android/graphics/Typeface.java
ridge/src/android/util/FloatMath.java
ridge/src/android/view/BridgeInflater.java
ridge/src/android/view/SurfaceView.java
ridge/src/android/webkit/WebView.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeAssetManager.java
ridge/src/com/android/layoutlib/bridge/BridgeCanvas.java
ridge/src/com/android/layoutlib/bridge/BridgeConstants.java
ridge/src/com/android/layoutlib/bridge/BridgeContentResolver.java
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/BridgeXmlBlockParser.java
ridge/src/com/android/layoutlib/bridge/BridgeXmlPullAttributes.java
ridge/src/com/android/layoutlib/bridge/FontLoader.java
ridge/src/com/android/layoutlib/bridge/LayoutResult.java
ridge/src/com/android/layoutlib/bridge/MockView.java
ridge/src/com/android/layoutlib/bridge/NinePatchDrawable.java
ridge/src/com/android/layoutlib/bridge/ResourceHelper.java
ridge/src/com/android/layoutlib/bridge/ResourceValue.java
ridge/src/com/google/android/maps/MapView.java
ridge/tests/com/android/layoutlib/bridge/AndroidGraphicsTests.java
ridge/tests/com/android/layoutlib/bridge/BridgeTest.java
ridge/tests/com/android/layoutlib/bridge/BridgeXmlBlockParserTest.java
ridge/tests/com/android/layoutlib/bridge/NinePatchTest.java
ridge/tests/com/android/layoutlib/bridge/StyleResourceValue.java
ridge/tests/data/button.9.png
ridge/tests/data/layout1.xml
reate/.classpath
reate/.project
reate/Android.mk
reate/README.txt
reate/manifest.txt
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/ClassHasNativeVisitor.java
reate/src/com/android/tools/layoutlib/create/Log.java
reate/src/com/android/tools/layoutlib/create/LogAbortException.java
reate/src/com/android/tools/layoutlib/create/Main.java
reate/src/com/android/tools/layoutlib/create/MethodAdapter.java
reate/src/com/android/tools/layoutlib/create/MethodListener.java
reate/src/com/android/tools/layoutlib/create/OverrideMethod.java
reate/src/com/android/tools/layoutlib/create/RenameClassAdapter.java
reate/src/com/android/tools/layoutlib/create/StubMethodAdapter.java
reate/src/com/android/tools/layoutlib/create/TransformClassAdapter.java
reate/tests/com/android/tools/layoutlib/create/AsmAnalyzerTest.java
reate/tests/com/android/tools/layoutlib/create/AsmGeneratorTest.java
reate/tests/com/android/tools/layoutlib/create/LogTest.java
reate/tests/com/android/tools/layoutlib/create/RenameClassAdapterTest.java
reate/tests/data/mock_android.jar
reate/tests/data/mock_android.jardesc
reate/tests/mock_android/dummy/InnerTest.java
reate/tests/mock_android/view/View.java
reate/tests/mock_android/view/ViewGroup.java
reate/tests/mock_android/widget/LinearLayout.java
reate/tests/mock_android/widget/TableLayout.java
076357b8567458d4b6dfdcf839ef751634cd2bfb 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@132589
pi/src/com/android/layoutlib/api/ILayoutBridge.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
3dec7d563a2f3e1eb967ce2054a00b6620e3558c 03-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@137055
pi/src/com/android/layoutlib/api/ILayoutBridge.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
da996f390e17e16f2dfa60e972e7ebc4f868f37e 13-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@131421
ridge/src/com/android/layoutlib/bridge/Bridge.java
d24b8183b93e781080b2c16c487e60d51c12da31 11-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@130745
ridge/src/android/graphics/Paint.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeAssetManager.java
ridge/src/com/android/layoutlib/bridge/BridgeContentResolver.java
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/MockView.java
b798689749c64baba81f02e10cf2157c747d6b46 10-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@125939
ridge/src/com/android/layoutlib/bridge/Bridge.java
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/Main.java
reate/src/com/android/tools/layoutlib/create/MethodAdapter.java
reate/src/com/android/tools/layoutlib/create/MethodListener.java
reate/src/com/android/tools/layoutlib/create/OverrideMethod.java
reate/src/com/android/tools/layoutlib/create/StubMethodAdapter.java
f013e1afd1e68af5e3b868c26a653bbfb39538f8 18-Dec-2008 The Android Open Source Project <initial-contribution@android.com> Code drop from //branches/cupcake/...@124589
ndroid.mk
pi/.classpath
pi/src/com/android/layoutlib/api/ILayoutBridge.java
ridge/.classpath
ridge/src/android/graphics/Paint.java
ridge/src/android/view/BridgeInflater.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/FontLoader.java
ridge/src/com/android/layoutlib/bridge/LayoutResult.java
ridge/src/com/android/layoutlib/bridge/ResourceHelper.java
reate/.classpath
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/Main.java
reate/src/com/android/tools/layoutlib/create/OverrideMethod.java
reate/src/com/android/tools/layoutlib/create/StubMethodAdapter.java
reate/src/com/android/tools/layoutlib/create/TransformClassAdapter.java
54b6cfa9a9e5b861a9930af873580d6dc20f773c 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution
ndroid.mk
pi/.classpath
pi/.project
pi/Android.mk
pi/src/com/android/layoutlib/api/ILayoutBridge.java
pi/src/com/android/layoutlib/api/ILayoutLog.java
pi/src/com/android/layoutlib/api/ILayoutResult.java
pi/src/com/android/layoutlib/api/IProjectCallback.java
pi/src/com/android/layoutlib/api/IResourceValue.java
pi/src/com/android/layoutlib/api/IStyleResourceValue.java
pi/src/com/android/layoutlib/api/IXmlPullParser.java
ridge/.classpath
ridge/.project
ridge/Android.mk
ridge/src/android/graphics/Bitmap.java
ridge/src/android/graphics/BitmapShader.java
ridge/src/android/graphics/ComposeShader.java
ridge/src/android/graphics/LinearGradient.java
ridge/src/android/graphics/Matrix.java
ridge/src/android/graphics/Paint.java
ridge/src/android/graphics/Path.java
ridge/src/android/graphics/PorterDuffXfermode.java
ridge/src/android/graphics/RadialGradient.java
ridge/src/android/graphics/Shader.java
ridge/src/android/graphics/SweepGradient.java
ridge/src/android/graphics/Typeface.java
ridge/src/android/util/FloatMath.java
ridge/src/android/view/BridgeInflater.java
ridge/src/android/view/SurfaceView.java
ridge/src/android/webkit/WebView.java
ridge/src/com/android/layoutlib/bridge/Bridge.java
ridge/src/com/android/layoutlib/bridge/BridgeAssetManager.java
ridge/src/com/android/layoutlib/bridge/BridgeCanvas.java
ridge/src/com/android/layoutlib/bridge/BridgeConstants.java
ridge/src/com/android/layoutlib/bridge/BridgeContext.java
ridge/src/com/android/layoutlib/bridge/BridgeResources.java
ridge/src/com/android/layoutlib/bridge/BridgeTypedArray.java
ridge/src/com/android/layoutlib/bridge/BridgeXmlBlockParser.java
ridge/src/com/android/layoutlib/bridge/BridgeXmlPullAttributes.java
ridge/src/com/android/layoutlib/bridge/FontLoader.java
ridge/src/com/android/layoutlib/bridge/LayoutResult.java
ridge/src/com/android/layoutlib/bridge/MockView.java
ridge/src/com/android/layoutlib/bridge/NinePatchDrawable.java
ridge/src/com/android/layoutlib/bridge/ResourceHelper.java
ridge/src/com/android/layoutlib/bridge/ResourceValue.java
ridge/src/com/google/android/maps/MapView.java
ridge/tests/com/android/layoutlib/bridge/AndroidGraphicsTests.java
ridge/tests/com/android/layoutlib/bridge/BridgeTest.java
ridge/tests/com/android/layoutlib/bridge/BridgeXmlBlockParserTest.java
ridge/tests/com/android/layoutlib/bridge/NinePatchTest.java
ridge/tests/com/android/layoutlib/bridge/StyleResourceValue.java
ridge/tests/data/button.9.png
ridge/tests/data/layout1.xml
reate/.classpath
reate/.project
reate/Android.mk
reate/README.txt
reate/manifest.txt
reate/src/com/android/tools/layoutlib/create/AsmAnalyzer.java
reate/src/com/android/tools/layoutlib/create/AsmGenerator.java
reate/src/com/android/tools/layoutlib/create/ClassHasNativeVisitor.java
reate/src/com/android/tools/layoutlib/create/Log.java
reate/src/com/android/tools/layoutlib/create/LogAbortException.java
reate/src/com/android/tools/layoutlib/create/Main.java
reate/src/com/android/tools/layoutlib/create/OverrideMethod.java
reate/src/com/android/tools/layoutlib/create/RenameClassAdapter.java
reate/src/com/android/tools/layoutlib/create/StubMethodAdapter.java
reate/src/com/android/tools/layoutlib/create/TransformClassAdapter.java
reate/tests/com/android/tools/layoutlib/create/AsmAnalyzerTest.java
reate/tests/com/android/tools/layoutlib/create/AsmGeneratorTest.java
reate/tests/com/android/tools/layoutlib/create/LogTest.java
reate/tests/com/android/tools/layoutlib/create/RenameClassAdapterTest.java
reate/tests/data/mock_android.jar
reate/tests/data/mock_android.jardesc
reate/tests/mock_android/dummy/InnerTest.java
reate/tests/mock_android/view/View.java
reate/tests/mock_android/view/ViewGroup.java
reate/tests/mock_android/widget/LinearLayout.java
reate/tests/mock_android/widget/TableLayout.java