d3f2b9229472c9dae9bf4ae8b3e2d653b5653b01 |
|
17-Sep-2015 |
George Mount <mount@google.com> |
Two-way binding Bug 1474349 Bug 22460238 This adds two-way data binding for those attributes on Views that also have event listeners for them. General use is also supported, but event listeners are required to notify when those properties change. Change-Id: Iedc66a604257930265f9d661f69658a0a0c3208b
/frameworks/data-binding/compiler/src/main/java/android/databinding/tool/LayoutBinder.java
|
59229481aec5a284d322a2ca80dff836485feb0c |
|
30-Oct-2015 |
Yigit Boyar <yboyar@google.com> |
upgrade kotlin to 1.0-beta1 Change-Id: I62b77fd118e2715d272a16d96b9083d2347f5fb1
/frameworks/data-binding/compiler/src/main/java/android/databinding/tool/LayoutBinder.java
|
fd8342a51a96282df315cd27055ba539e89a8c9e |
|
07-Oct-2015 |
Yigit Boyar <yboyar@google.com> |
Report syntax errors even though Antlr can recover This CL makes Antlr parser more strict by not allowing errors. Antlr usually tries to recover from these errors but thats not what we really want for this use case. This CL also updates version codes to rc4 since rc3 is already out. Change-Id: I0d305e06a6cdcbae2f37573c3c6ae4233cdd7958
/frameworks/data-binding/compiler/src/main/java/android/databinding/tool/LayoutBinder.java
|
975c05c00dae9193a636c4775df81d8665fc6749 |
|
30-Sep-2015 |
George Mount <mount@google.com> |
Fix resolving listeners for multi-attribute binding adapters. Bug 24538724 Change-Id: I39a72fd701abf9d2368d2a0a7fc5a4c1ac63c0a0
/frameworks/data-binding/compiler/src/main/java/android/databinding/tool/LayoutBinder.java
|
7c1b078ca84336caba7f811709836562bd5550d6 |
|
17-Sep-2015 |
George Mount <mount@google.com> |
Add context as an automatic variable. Bug 24136218 Change-Id: I0996ac8d3b42d29fbfe1c14da1343e05954c3bef
/frameworks/data-binding/compiler/src/main/java/android/databinding/tool/LayoutBinder.java
|
23910cf498c35704a03ba4f3889de2ab97ccbe21 |
|
25-Aug-2015 |
George Mount <mount@google.com> |
Make setVariable return true for declared variables. Bug 23518718 Change-Id: Ic147421aefe0adbf576285ca642334fcb907abfb
/frameworks/data-binding/compiler/src/main/java/android/databinding/tool/LayoutBinder.java
|
793e979f25e190162eacf46d6a4efc3efc1d2f91 |
|
31-Jul-2015 |
George Mount <mount@google.com> |
Support different event handlers having different API levels. Bug 22957226 Change-Id: Ia08bcb857872eccad3340c14b8d10b78198b90a6
/frameworks/data-binding/compiler/src/main/java/android/databinding/tool/LayoutBinder.java
|
e4cd38824a6627b9fef229c549c636e35ad63b5f |
|
07-Jul-2015 |
George Mount <mount@google.com> |
Support dependency injection. Bug 22389109 Change-Id: Iec63375c5412edc03b4808ee129a7596b61bf9e6
/frameworks/data-binding/compiler/src/main/java/android/databinding/tool/LayoutBinder.java
|
731b74f7f44e67312a1fc4161c4e0aae221b2417 |
|
25-Jun-2015 |
Yigit Boyar <yboyar@google.com> |
Introduce Scopes to track logical stack traces This CL introduces a static class called Scope, which is used the logical processing stack for data binding. These scopes are used to generate meaningful error messages when an error is detected. Bug: 21953001 Change-Id: I5470a8c4ad94401d34a140762baae9d53c5a0402
/frameworks/data-binding/compiler/src/main/java/android/databinding/tool/LayoutBinder.java
|
4df4ba38a62b791bbbc25e923efe8d9c2f9a52e9 |
|
27-Jun-2015 |
Yigit Boyar <yboyar@google.com> |
Data binding startup improvement This CL replaces how we map tags(string) to layout ids in the generated DataBindingMapper class. Previously, we would create a hashmap which was some unnecessary work in startup. The alternative was using switch(string) but we did not want to require java 7. This CL does what java 7's switch(string) would do thanks to the well defined API of String.hashCode. This CL also adds a method to DataBindingUtil to convert BR.ids back to String for debugging purposes. Bug: 22108735 Change-Id: I4b8ef816f4aac99b2963793dd46519b056ce4a30
/frameworks/data-binding/compiler/src/main/java/android/databinding/tool/LayoutBinder.java
|
c1560e6b00b398867da12fbdc5a1fcd1d50b801c |
|
25-Jun-2015 |
Yigit Boyar <yboyar@google.com> |
Carry over location information from parser to annotation processor This CL changes LayoutParser to use Antlr which provides us the location information. This information is now serialized inside the bundle so that we can read it in the annotation processor, enabling better error logs with location information. Bug:21953001 Change-Id: If9b5cf2f87598a609ddf77235decc17098a46a6b
/frameworks/data-binding/compiler/src/main/java/android/databinding/tool/LayoutBinder.java
|
2611838bffef5a009ca71e3e9e59a93f29b098ed |
|
24-Jun-2015 |
Yigit Boyar <yboyar@google.com> |
Remove guava from compiler This CL removes all dependency from guava and replaces it w/ either plain java or some utilities. Bug: 22047836 Change-Id: I94be54ed992ab6b5f27c47a8cf400ae60aef02f8
/frameworks/data-binding/compiler/src/main/java/android/databinding/tool/LayoutBinder.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/compiler/src/main/java/android/databinding/tool/LayoutBinder.java
|
8b1da958f181639d33dfaa907c0ee66add2decd6 |
|
23-Jun-2015 |
Yigit Boyar <yboyar@google.com> |
Don't generate inflators for libraries If a library project (A) depends on anohter library project (B), we would generate code that accesses R file of project B while compiling project A. Unfortunately, gradle does not generate that R file when compiling A, it only exists when compiling the app and B. This CL changes the base class generation to not to generate real code for base classes unless we are building the final app. Bug: 22001270 Change-Id: Ic107001ab58c94016f37f7f6fc0470a822db3aa7
/frameworks/data-binding/compiler/src/main/java/android/databinding/tool/LayoutBinder.java
|
c96847768305d83c6bc4919432af9bd9bfe4c08e |
|
20-May-2015 |
George Mount <mount@google.com> |
Fix String.format expression. An expression @{String.format("%s", "test")} was failing for two reasons: the L.d was doing string concatenation and String wasn't imported and considered a StaticIdentifier. Change-Id: I67b4c880f1e147a5c1aac15b3b845d4112c6d00b
/frameworks/data-binding/compiler/src/main/java/android/databinding/tool/LayoutBinder.java
|
e9b33bac04bb1ce1444d7f1744fcec1ecd3a57da |
|
30-Apr-2015 |
Yigit Boyar <yboyar@google.com> |
Support multi-param adapters in code generation Bug: 19800022 Change-Id: I40c4ac72f24f965db12fd1c7dec6591184160ae5
/frameworks/data-binding/compiler/src/main/java/android/databinding/tool/LayoutBinder.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/compiler/src/main/java/android/databinding/tool/LayoutBinder.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/compiler/src/main/java/android/databinding/tool/LayoutBinder.java
|
0390898cf7c4fcad255e8cfd6802f722b516cb2c |
|
03-Apr-2015 |
George Mount <mount@google.com> |
Use layout path for the tag on bound layout roots. Change-Id: I6bda5d5716e749251b27c112865da066ba908509
/frameworks/data-binding/compiler/src/main/java/android/databinding/tool/LayoutBinder.java
|
2e2043d30f95585de2069e1cbb23e022ab0e71c4 |
|
02-Apr-2015 |
George Mount <mount@google.com> |
Change "generated" to "databinding"
/frameworks/data-binding/compiler/src/main/java/android/databinding/tool/LayoutBinder.java
|
53398fcd565782a0fd973eec43eac5c659c927c0 |
|
01-Apr-2015 |
George Mount <mount@google.com> |
Address comment in CL Bug 19933646
/frameworks/data-binding/compiler/src/main/java/android/databinding/tool/LayoutBinder.java
|
dea555cf42dc3583604699c8c018d22681f56166 |
|
30-Mar-2015 |
George Mount <mount@google.com> |
Merge implementation into base class for single implementations. Bug 19933646 Change-Id: Ifc947d929b5275e32598e8d40f0122504a99d7f8
/frameworks/data-binding/compiler/src/main/java/android/databinding/tool/LayoutBinder.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/compiler/src/main/java/android/databinding/tool/LayoutBinder.java
|
fead9ca09b117136b35bc5bf137340a754f9eddd |
|
23-Mar-2015 |
George Mount <mount@google.com> |
Move to package android.databinding.
/frameworks/data-binding/compiler/src/main/java/android/databinding/tool/LayoutBinder.java
|