History log of /frameworks/base/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
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
/frameworks/base/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.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
/frameworks/base/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
295ef6be084d1c2f22ef25a87e508c1f5c14ee5a 07-Jul-2015 Deepanshu Gupta <deepanshu@google.com> Add roundess to configuration

Change-Id: Icc85b38dd091fc5aa13092d6abb06ac169f7b0b5
/frameworks/base/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
996458b76c944f78eee26d7bd8cb4d39303b9119 30-May-2015 Deepanshu Gupta <deepanshu@google.com> Fix ParserFactory not initialized error.

Bug: http://b.android.com/175129
Change-Id: I2111673767e0f62ee910560022b559a177d55abd
/frameworks/base/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
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
/frameworks/base/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.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
/frameworks/base/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.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
/frameworks/base/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
37dbb8b7f3c069196040eed3a03006647db7fa5b 15-Apr-2015 Deepanshu Gupta <deepanshu@google.com> Update to using LayoutlibCallback.

Change-Id: Ia89d418b0d40ca8efef8968a4a2a635616b945ac
/frameworks/base/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
d51834bdfad0cd3142ac464ab3a3b0db14f884c3 28-Jan-2015 Deepanshu Gupta <deepanshu@google.com> Add Asset management support for fonts.

Change-Id: I10ca67dcffe244667d4ae0bda65dbc1aa6691d50
/frameworks/base/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.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
/frameworks/base/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.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
/frameworks/base/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.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
/frameworks/base/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
282e181b58cf72b6ca770dc7ca5f91f135444502 24-Jan-2014 Adam Lesinski <adamlesinski@google.com> Revert "Move frameworks/base/tools/ to frameworks/tools/"

This reverts commit 9f6a119c8aa276432ece4fe2118bd8a3c9b1067e.
/frameworks/base/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
9f6a119c8aa276432ece4fe2118bd8a3c9b1067e 28-Aug-2013 Mike Lockwood <lockwood@google.com> Move frameworks/base/tools/ to frameworks/tools/

Change-Id: I3ffafdab27cc4aca256c3a5806b630795b75d5c8
/frameworks/base/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
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
/frameworks/base/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
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
/frameworks/base/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.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
/frameworks/base/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.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
/frameworks/base/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.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
/frameworks/base/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
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
/frameworks/base/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.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
/frameworks/base/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
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
/frameworks/base/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.java
fd18f573280bbbcc549b35b548580a562bd960e2 05-Feb-2011 Xavier Ducrohet <xav@android.com> LayoutLib: add implementation of Bridge.renderDrawable()

Change-Id: Ic4d96488fd1a2e5b7d24353bebc8fdb24262c1d1
/frameworks/base/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.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
/frameworks/base/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderAction.java