History log of /frameworks/data-binding/library/src/main/java/android/databinding/ViewDataBinding.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
c9a5d6f140f732ca0ff279a4b1ee315072e1c422 11-Jul-2015 George Mount <mount@google.com> Fix up javadoc.

Bug 22175560

Change-Id: Ib5bfd87f66602919764bd9b28c0afdcbe55a7ce5
/frameworks/data-binding/library/src/main/java/android/databinding/ViewDataBinding.java
e4cd38824a6627b9fef229c549c636e35ad63b5f 07-Jul-2015 George Mount <mount@google.com> Support dependency injection.

Bug 22389109

Change-Id: Iec63375c5412edc03b4808ee129a7596b61bf9e6
/frameworks/data-binding/library/src/main/java/android/databinding/ViewDataBinding.java
239e15adad52d3a7d77852953a5dd7eee82f7f2c 26-Jun-2015 George Mount <mount@google.com> Don't use array of protected static classes in Binding classes.

Bug 22097806

Because of bug 15719206, arrays of protected inner classes may
not be used with multi-dex'd applications. The arrays were moved
to the protected class.

Change-Id: Icb030f2139c763238028ff73eab53502c74edb88
/frameworks/data-binding/library/src/main/java/android/databinding/ViewDataBinding.java
716ba89e7f459f49ea85070d4710c1d79d715298 18-Jun-2015 George Mount <mount@google.com> Support calling listener methods without interfaces.

Bug 21594573

It is convenient to be able to assign event listeners by just
referencing a method, similar to the way onClick="handler" works.

This adds a whole lot of listeners for the framework. Additional
listeners must be added for support library components.

This isn't perfect in resolving listeners. Perfect resolution
requires that each expression is evaluated in its own context
within the binding statement. If, for example, the same method
name is used for a listener and an accessor, we will assume
that the listener is used always and there will be a compilation
failure.

Change-Id: If4705122b67a451430451b6e7d890eb813af1c5c
/frameworks/data-binding/library/src/main/java/android/databinding/ViewDataBinding.java
d6527ee28cc3aa05818799af8def9593346f91bc 15-Jun-2015 George Mount <mount@google.com> Remove fragment data binding.

Fragment data binding is much more complex than the previous
implementation supported. It may be that we don't want to support
data binding to fragments because fragment life cycle differs
from View life cycle, including back stack support.

I made it so that fragments with IDs do not get public final
fields on the generated data binding objects.

Bug 21667601

Change-Id: Ief77972ea854f7ded5a93aa59822d76ef533fc21
/frameworks/data-binding/library/src/main/java/android/databinding/ViewDataBinding.java
2f64c44e4fa296cf658ca986c095eab62f82a31d 11-Jun-2015 Yigit Boyar <yboyar@google.com> Request a rebind when invalidateAll is called

Bug: 21785116
Change-Id: I79b886df1f016a8abe87723876502adfe1843897
/frameworks/data-binding/library/src/main/java/android/databinding/ViewDataBinding.java
4d4979490e1fa374c0d7f3599fed0a9e83a579d0 08-Jun-2015 George Mount <mount@google.com> Support data binding for fragments.

Bug 21667601

Change-Id: I636dec1bbb5567d70a996e115e6bf8322c3aa29d
/frameworks/data-binding/library/src/main/java/android/databinding/ViewDataBinding.java
722fe711207a37783dfa7142284b0ebe5bd503fb 20-May-2015 George Mount <mount@google.com> Observable* listeners should be callbacks.

Bug 21324996

Changed listeners to callbacks and made them abstract base
classes, following API conventions.

Change-Id: Ibc849d11c1fea83c02ba593d9aaf2ebf8cfc2eef
/frameworks/data-binding/library/src/main/java/android/databinding/ViewDataBinding.java
3f73e3149732132c02f5d19aab7b5da429794058 13-May-2015 Yigit Boyar <yboyar@google.com> Revert "Revert "Use a handler for main thread runnables""

Tests were failing after this handler change because they were not
ready to be bound before tests start (which was a bad assumption).

This CL changes how tests are initialized, giving them the opportunity
to initialize binder on main thread.

This reverts commit 610fd535ee15629671acb847f926b7a1f74eecae.

Change-Id: Id7c03bc34d9f9e1bb2aae22b58cd37f804aa9f29
/frameworks/data-binding/library/src/main/java/android/databinding/ViewDataBinding.java
7abd815495130b6853ae6dbcb169213dab97a1b9 13-May-2015 George Mount <mount@google.com> Merge "Revert "Use a handler for main thread runnables""
610fd535ee15629671acb847f926b7a1f74eecae 13-May-2015 George Mount <mount@google.com> Revert "Use a handler for main thread runnables"

This reverts commit 55ee815547c229655ac72674ab1a994917fcf477.

Change-Id: I029b5695eab29129c9afcec19b297e2202d181bb
/frameworks/data-binding/library/src/main/java/android/databinding/ViewDataBinding.java
30be68b66c56bb3a0c8eebf731a20da9f6548587 13-May-2015 George Mount <mount@google.com> Merge "Block executePendingBindings when there are no changes."
55ee815547c229655ac72674ab1a994917fcf477 10-May-2015 Yigit Boyar <yboyar@google.com> Use a handler for main thread runnables

View.post may not work when view is in the process of being
attached to the window. View.post returns true so we cannot
really detect what is going on.

This CL replaces it w/ a Choreographer when available and
falls back to a Handler on the constructor thread.

Bug: 20978556

Change-Id: Iddb8ebb5f9fb6c992061b79714759dc64d2bc298
/frameworks/data-binding/library/src/main/java/android/databinding/ViewDataBinding.java
447971abca811b11b8c1d8e7bfaa294856d03c16 09-May-2015 George Mount <mount@google.com> Block executePendingBindings when there are no changes.

Change-Id: I427877749aa00a14c7c8b9363d6a9027ce48219e
/frameworks/data-binding/library/src/main/java/android/databinding/ViewDataBinding.java
ed6428586a939e00d9e66314d5cf1056ad48767e 30-Apr-2015 George Mount <mount@google.com> Add static method to get ViewDataBinding for a View.

Bug 20676836

Change-Id: I8690f64b395ceb06fd12daaadcb0f31d6629fc0b
/frameworks/data-binding/library/src/main/java/android/databinding/ViewDataBinding.java
9bdb2415487832e88a05c7bd19391b05440b468e 29-Apr-2015 George Mount <mount@google.com> Change from using Context to LayoutInflater for inflate()

When inflating, it is more efficient to use the LayoutInflater
directly instead of getting it from the Context.

I also changed DataBindingUtil.bindTo to bind to match the
static method call in the Binding classes.

Change-Id: I855297a4f081102c49ea477047c0ac81de1676f5
/frameworks/data-binding/library/src/main/java/android/databinding/ViewDataBinding.java
e725f0d81e1b07e88f819be9a82181eeeb680dbf 27-Apr-2015 George Mount <mount@google.com> Add listener to notify and disable rebinding.

The OnRebindListener allows the developer to be notified when
a reevaluation of the data binding is going to occur. It also
allows the developer to stop the reevaluation and manually
control when it will happen.

Change-Id: Id6cba294dc5d354a885303cdcd72471ccc57f056
/frameworks/data-binding/library/src/main/java/android/databinding/ViewDataBinding.java
3b8fedce6e9ee814ffe7b63d07aa5456f08fb9b2 15-Apr-2015 George Mount <mount@google.com> Parse and strip new layout format.

API Council suggested a new layout format for layouts with
bindings. Here, we parse the new format and strip it. This
also brings in the ability to provide a custom class name
for the binding.

Change-Id: I674320d21265c1dec70d1a52285341fe4994895b
/frameworks/data-binding/library/src/main/java/android/databinding/ViewDataBinding.java
7ff60c24c6de7ba0c674fe65a82ad4a88dab2e5d 13-Apr-2015 George Mount <mount@google.com> Delay evaluating the View and Binding class names.

Binding and View class names should be evaluated when processing
the binding expressions, not during layout XML processing.

Allow alternate binding class names as declared in layout
XML.

Use "binding_" as a prefix for binding tags instead of "bindingTag"

Preparation steps for customized data binding classes.

Change-Id: If08de28aad06401e8a5d461341b2616e17498aa1
/frameworks/data-binding/library/src/main/java/android/databinding/ViewDataBinding.java
96e1c821dd446d1ed78f8ae61131550588f60a24 10-Apr-2015 George Mount <mount@google.com> Support merge tags.

This also drops the requirement for include tags to have an ID.

Each root view tag is given a numeric suffix, starting with 0.
Merge tags can have multiple roots, the first of which always
is suffixed with 0. The remainder have tag identifiers that
are interspersed with the tags used with expressions. The
numeric suffix is used to identify the View in the mapBindings
call.

Include tag information now uses the tag of its parent so that
its parent will search for the includes within it. When
mapBindings is looking at the parent, it looks for all direct
children with the appropriate tag of the format "layout*/name_0".
Then it searches for all siblings with the same prefix and different
numeric suffixes. Any that are found are considered part of the
same merged include. If it finds another with _0, it knows that
a new include was found.

Change-Id: Idd1144d9037648193724667320744bd079791476
/frameworks/data-binding/library/src/main/java/android/databinding/ViewDataBinding.java
e7c2a5e45d7651899790bd347da635875f9c73fb 02-Apr-2015 George Mount <mount@google.com> Use setTag(id, val) when minSdk is ICS and later.

setTag(id, val) leaks on versions before ICS. When the
minimum SDK is before ICS, setTag(val) must be used
for bindings. However, this prevents the developer from
using the tag for his or her own purposes. Therefore,
if the minimum SDK is ICS and greater, setTag(id, val)
is used.

Change-Id: I46327084bde4bafc05a64f82ad5ebcf710820ecc
/frameworks/data-binding/library/src/main/java/android/databinding/ViewDataBinding.java
95d1b38adeb5963ec5337e7dd6177b4bb5a03619 01-Apr-2015 George Mount <mount@google.com> Capture views with IDs and no expressions in Binding.

We want to get all Views with IDs in the Binding to save the
developer effort in calling findViewById.

Change-Id: Ib7dd85ae9ecc0fd31b235364c0eadc2303dd1780
/frameworks/data-binding/library/src/main/java/android/databinding/ViewDataBinding.java
34a18e6a231f3b64726bd93e7e097a0d5a75995d 26-Mar-2015 George Mount <mount@google.com> Move to public final fields instead of getters for Views.

Bug 19933644
/frameworks/data-binding/library/src/main/java/android/databinding/ViewDataBinding.java
5914aa7da50a90a4c705b5be02a215499d0ad232 20-Mar-2015 George Mount <mount@google.com> Don't execute binding when the root view is detached.

Also add tests for memory leaks. The binder should be deleted
when the root view is deleted.

Change-Id: Ifcb24feb80791e64cdfd7203d071d9b1453f6f70
/frameworks/data-binding/library/src/main/java/android/databinding/ViewDataBinding.java
fead9ca09b117136b35bc5bf137340a754f9eddd 23-Mar-2015 George Mount <mount@google.com> Move to package android.databinding.
/frameworks/data-binding/library/src/main/java/android/databinding/ViewDataBinding.java