c651e4d34f0c6dca5d6675cec54c7027e2e7dd58 |
|
24-Apr-2017 |
Felipe Leme <felipeal@google.com> |
Minor fixes on Autofill Framework: - Removed default implementation of onProvideAutofillVirtualStructure() that was using accessibility API (it's useless because without the View calling AutofillManager.notifyViewEntered(), it would never be triggered). - Fixed obsolete TODOs. - Removed obsolete service class name constant. - Removed unused debug constant. Test: CtsAutoFillServiceTestCases (on oc-dev) pass Test: manual verification (on oc-dev) Bug: 37078783 Bug: 33197203 Bug: 33802548 Bug: 35956626 Change-Id: I834d34b8af8bf0d781dc7e0ffcd6e600bfa2d183
/frameworks/base/core/java/android/widget/RadioGroup.java
|
955e252a95785192902da7c9f5610f8e40f97803 |
|
30-Mar-2017 |
Felipe Leme <felipeal@google.com> |
Simplified autofill() methods by returning void instead of boolean. Test: CtsAutoFillServiceTestCases pass Change-Id: Ic94e6686e291fed60ef6715bd160f9b568bf0ea6
/frameworks/base/core/java/android/widget/RadioGroup.java
|
7b7711680244108923f0dbb4ca6e35db7e659e6a |
|
04-Mar-2017 |
Philip P. Moltmann <moltmann@google.com> |
TRON log important auto-fill events Example log from android.autofillservice.cts.LoginActivityTest#testAutoFill#testAutoFillOneDatasetAndSave (translated from numbers of human readable string): AUTOFILL_SESSION_STARTED package=android.autofillservice.cts AUTOFILL_REQUEST type=TYPE_SUCCESS package=android.autofillservice.cts FIELD_AUTOFILL_SERVICE=android.autofillservice.cts FIELD_AUTOFILL_NUM_DATASETS=1 AUTOFILL_FILL_UI type=TYPE_ACTION package=android.autofillservice.cts FIELD_AUTOFILL_NUM_DATASETS=1 FIELD_AUTOFILL_FILTERTEXT_LEN=0 AUTOFILL_DATASET_APPLIED package=android.autofillservice.cts FIELD_AUTOFILL_NUM_VALUES=2 FIELD_AUTOFILL_NUM_VIEWS_FILLED=2 AUTOFILL_SAVE_UI package=android.autofillservice.cts FIELD_AUTOFILL_NUM_IDS=2 AUTOFILL_DATA_SAVE_REQUEST type=TYPE_SUCCESS package=android.autofillservice.cts FIELD_AUTOFILL_SERVICE=android.autofillservice.cts AUTOFILL_SESSION_FINISHED package=android.autofillservice.cts Test: Ran auto-fill tests and looked at event log. Change-Id: I58aaa58e4435e7d04c8cd91878411943d3eb13de
/frameworks/base/core/java/android/widget/RadioGroup.java
|
9b31b4eac838238ef3013cbfb1379cddbafa0f12 |
|
14-Mar-2017 |
Philip P. Moltmann <moltmann@google.com> |
Merge "Make it clear which type of AutoFillValue is set"
|
123a34f1936983f1b59da9b5609485e1f64347ff |
|
14-Mar-2017 |
TreeHugger Robot <treehugger-gerrit@google.com> |
Merge "Renamed ViewStructure.setSanitized() to setDataIsSensitive()."
|
c9a19b1b274af1fdd8b811c9ce2df994f7db47a4 |
|
14-Mar-2017 |
Felipe Leme <felipeal@google.com> |
Renamed ViewStructure.setSanitized() to setDataIsSensitive(). Bug: 36126001 Test: CtsAutoFillServiceTestCases pass Test: m update-api Change-Id: I182355b63d8743cd8cd8612f29a9269e258283c2
/frameworks/base/core/java/android/widget/RadioGroup.java
|
9668903731c272e51ce610598c052ef411c9d89f |
|
09-Mar-2017 |
Philip P. Moltmann <moltmann@google.com> |
Make it clear which type of AutoFillValue is set throw and handle errors if the wrong value is set for a view Test: android.autofillservice.cts.AutofillValueTest Change-Id: Ida80da7913a210bede6c47d6b7a6f215a012a84c
/frameworks/base/core/java/android/widget/RadioGroup.java
|
2f8fb1f62f2840701e3e16497eb8191f38b72e0b |
|
13-Mar-2017 |
Svet Ganov <svetoslavganov@google.com> |
Fix a few auto fill ussues 1. Ensure clicking on a focused view brings up autofill if needed 2. Notify the autofill manager in a couple of cases we missed 3. Renamed the AutofillManager app facing APIs to better reflect what they do and added a API for the app to cancel the autofill interaction 4. Fix view structure dispatch where the ordering of children for autofill was mixed with ordering of direct view children - the autofill children may be indirect as views can be marked not important for autofill 5. Show scrollbars only if there are more fill options than want is shown 6. Show only three fill options and the rest can be accessed with a scroll 7. Remove the list divider to allow fill items to control all fill window content 8. Renamed the autofill manager internal service classes to xxAutofillxx 9. Fixed a comment that was not addressed in a previous CL 10. Showing max three fill options - rest needs a scroll 11. Make sure fill UI shown when filter with no matches is changed to filter with some matches 12. Make sure the fill window has a shadow Test: Autofill CTS tests pass and manual bug:36038929 bug:36040101 bug:36149166 bug:36034681 bug:36126001 bug:36035654 Change-Id: Ic8726146fc3c0a19d3e536becdd63fb65622136e
/frameworks/base/core/java/android/widget/RadioGroup.java
|
640f30a7763b0a4b80c767acb84c740aac04768b |
|
07-Mar-2017 |
Felipe Leme <felipeal@google.com> |
Replaced auto-fill by autofill to keep it consistent with API style. This change will affects 2 types of apps: autofill service implementations and apps that use autofill APIs. Since just the former is known to be used at the moment, we're not trying to keep backward compatibility with the latter. Bug: 35956626 Test: CtsAutoFillServiceTestCases pass Test: android.provider.SettingsBackupTest pass Change-Id: Ia720083508716deae9e887f9faa7ae7c5a82f471
/frameworks/base/core/java/android/widget/RadioGroup.java
|
d04a697ede5a372f96f87b80cf99a74dd12dbac4 |
|
02-Mar-2017 |
Felipe Leme <felipeal@google.com> |
Optimize ViewStructure for autofill by removing irrelevant nodes. Test: CtsAutoFillServiceTestCases (with new tests) pass Fixes: 35840787 Change-Id: Iaa2c1907c8383b4a820fd7204e67fa2d276ad2b8
/frameworks/base/core/java/android/widget/RadioGroup.java
|
8931e303700a5adb6e013c2b5a6cec621eede968 |
|
06-Mar-2017 |
Felipe Leme <felipeal@google.com> |
Replace AutoFillType by view constants. Now that AutoFillType does have any logic (since the "subType" logic was moved to AutoFillHint), it makes more sense to get rid of the type and use constants directly. This change creates the contants and "pseudo-deprecate" the old stuff: it's still available because some clients are using it, but it will be removed once they migrate. Bug: 35956626 Test: CtsAutoFillServiceTestCases pass Change-Id: I0efe7f0cc101c86164a18c85903bb871e1f13ba2
/frameworks/base/core/java/android/widget/RadioGroup.java
|
305b72c92568a2dd2ece08caebd610ec8bd473f4 |
|
27-Feb-2017 |
Felipe Leme <felipeal@google.com> |
Added auto-fill support for DatePicker and TimePicker. Also fixed some getAutoFillType() implementations to return null when the view is disabled. Bug: 33550221 Bug: 35840787 Test: CtsAutoFillServiceTestCases (with new tests) pass Test: m update-api Change-Id: I46acc1fb106cf2153515cc1c9567b34cfabd1c62
/frameworks/base/core/java/android/widget/RadioGroup.java
|
c01a873c4f68518be4698077c7eb593a6a3b9f4c |
|
23-Feb-2017 |
Felipe Leme <felipeal@google.com> |
Added sanitization for CompoundButton and RadioGroup. Bug: 33269702 Bug: 33550221 Test: CtsAutoFillServiceTestCases (with new tests) pass Change-Id: Ie2c8d2784227371588aa02973b8ef3ac1a6950aa
/frameworks/base/core/java/android/widget/RadioGroup.java
|
d09ccb8db6c541f2d349b923bf9b38f1081aaa8d |
|
23-Feb-2017 |
Felipe Leme <felipeal@google.com> |
Added auto-fill support for Spinner. Spinner is a special kind of list-value field because its auto-fillable values are not currently present in the assist structure: this change adds a getAutoFillOptions() to fill that void, and implements the auto-fill APIs on Spinner. It also fixes RadioGroup.getAutoFillValue() - it should return the index of the child, not its resource id. Bug: 33550221 Test: CtsAutoFillServiceTestCases (with new tests) pass Change-Id: I625e7dd705fade56fda490fcd3c4446c0c245ee1
/frameworks/base/core/java/android/widget/RadioGroup.java
|
5882c4f5d2ff552a233ba88d2445f6810dd7599b |
|
17-Feb-2017 |
Felipe Leme <felipeal@google.com> |
Added auto-fill listeners for RadioGroup and CompoundButton. Bug: 33550221 Bug: 3380254 Test: CtsAutoFillServiceTestCases pass Change-Id: Ia9293d16b6fe092552e19563328697c298451f8a
/frameworks/base/core/java/android/widget/RadioGroup.java
|
bab851c7c9dfe6f3d063a1009c4d57cfa2ff005c |
|
04-Feb-2017 |
Felipe Leme <felipeal@google.com> |
Refined session management so Save can be automatically called. This is yet another big refactoring: - AutoFillManager keeps track of its current AutoFillSession. - Views call AFM.startSession(View) when they can trigger autofill. (virtual views can call it as well). At this point, the manager sets an AutoFillSession, gets the activity token, and passes it to the service. - Subsequent calls to AFM.start() will be ignored since the session is set. - When the Activity is gone, it calls AFM.finishSession(). - Simlilarly, virtual views could call it as well. - Added getAutoFillValue() to View. - Removed AFM.updateAutoFillInput(childId): virtual views should now call startSession(childId) to start a session, and use the VirtualViewListener callbacks for updates. - Change AutoFillValue to use String (which is immutable) instead of CharSequence for text values. - Check if view is enabled before auto-filling. - Removed 'cmd autofill fill' since it would require the appCallback - Automatically dismiss the snack bar after 30s - Moved the "don't change autofill value when autofilling" Inception logic into the service side. - Etc... BUG: 34819567 BUG: 33269702 BUG: 31001899 Test: manual verification Test: CtsAutoFillServiceTestCases passes Change-Id: I5fad928d4d666701302049d142026a1efa7291cd
/frameworks/base/core/java/android/widget/RadioGroup.java
|
0200d9ea1509089c0c03b7071aa271e3a9b35c11 |
|
25-Jan-2017 |
Felipe Leme <felipeal@google.com> |
Improved AutoFill Save workflow. Currently, the onProvideAutoFillStructure() methods can be called twice: to auto-fill an activity and to save the activity's data in the service. The problem with this approach is that when the save workflow is called, the activity might have been gone. Hence, a proper approach is to keep the initial AssistStructure data in the system_service memory, watch for view changes, and then passed the new structure back to the AutoFillService. A side effect of this change is that we need another way to determine if the view is sanitized or not. For "standard" views, that will be defined based on whether the view content come from a resource or not, but that logic is not implemented yet (for now, all views will be considered sanitized, except for TextView passwords). For "custom" views (such as WebView), this logic is responsibility of the view implementation, through the newChild() method, which now takes a flag (whose value could be AUTO_FILL_FLAG_SANITIZED for sanitized views). The SaveCallback.onSuccess() method was simplified: it does not need a list of saved ids anymore the auto-fill UI will not use it anymore. Another side effect is that the Save notification is gone - until it's attached again, it can be test by using: adb shell cmd autofill save Finally, hook AutoFillUI on ACTION_CLOSE_SYSTEM_DIALOGS events. BUG: 33269702 BUG: 31001899 Test: manual verification Test: CtsAutoFillServiceTestCases passes Change-Id: I907a7e21d1b3cd1ab6dec3a08d144a52655da46f
/frameworks/base/core/java/android/widget/RadioGroup.java
|
6d553874bed06280766ae24ea605f9bbde3f5a4a |
|
09-Dec-2016 |
Felipe Leme <felipeal@google.com> |
YAMAFFR - Yet Another Major AutoFill Framework Refactoring - Explicitly split View methods into Assist and AutoFill methods, rather than use an overloaded method that takes flags. - Simarly, renamed ASSIST_FLAG_SANITIZED_TEXT and ASSIST_FLAG_NON_SANITIZED_TEXT flags to AUTO_FILL_FLAG_TYPE_FILL and AUTO_FILL_FLAG_TYPE_SAVE respectively. - Created a AutoFillUI class to host the auto-fill bar and other UI affordances. - Moved the temporary notifications to AutoFillUI (eventually that class will host the real UI). - Moved FillData to android.app.view.autofill package. - Split IAutoFillCallback in 2 (IAutoFillAppCallback and IAutoFillServerCallback, residing at the app and system_server respectively), so service cannot fill the app directly (which lets the framework control the UI). - Moved assist's IResultReceiver to AutoFillServiceImpl so system_server can act as a mediator between the AutoFillService implementation and the app being auto-filled. - Replaced FillData and FillableInputFields by a bunch of new objects: - FillResponse contains a group of Datasets, each representing different values that can be used to auto-fill an activity (for example, different user accounts), optional id of fields the service is interested to save, and an optional bundle for service-side extras. - Dataset contains a name, Fields, and an optional bundle for service-side extras. - Fields contain an AutoFillId (parcelable) and a value (Bundle) - Changed the temporary notifications to emulate the new workflow: - Initial notification requests the auto-fill data but do not auto-fill. - Once service calls back, a new notification is shown with the results. - Then if the user selects a dataset, the activity is auto-filled with it. - It also shows a notification to emulate what can be saved. - Created an VirtualViewDelegate for views that uses a virtual hierarchy for assist data. - Added new methods on ViewStructure to add children with virtual ids. - Added 2 methods on View to support auto-fill: - autoFill(Bundle) to auto-fill the view. - getAutoFillType() to return how the view can be auto-filled. - AutoFillType defines the input fields that support auto-fill: - Text fields (like EditText) - Toggle fields (like CheckBox) - Lists (like RadioGroup) - AutoFillType can also have a sub-type representing its semantic (for now only text fields have it, and it's the same as getInputType()). - etc :-) Bug: 31001899 Test: manual verification Change-Id: I2dd2fdedcb3ecd1e4403f9c32fa644cb914e186f
/frameworks/base/core/java/android/widget/RadioGroup.java
|
99441c5d7da45c10b729185852be97cbb0bdc8d5 |
|
12-Oct-2016 |
Aurimas Liutikas <aurimas@google.com> |
Fix import statements in android.widget package. Additionally this CL removes spaces at the end of the line. Test: code still compiles. Change-Id: I1ce98b4e70aa3ae614f87966c3bc6181fa4389a4
/frameworks/base/core/java/android/widget/RadioGroup.java
|
08c7116ab9cd04ad6dd3c04aa1017237e7f409ac |
|
28-Feb-2015 |
John Spurlock <jspurlock@google.com> |
Remove unused imports in frameworks/base. Change-Id: I031443de83f93eb57a98863001826671b18f3b17
/frameworks/base/core/java/android/widget/RadioGroup.java
|
7b9c912f536925ac6ec43935d6e97506851b33d6 |
|
31-May-2013 |
Tor Norbye <tnorbye@google.com> |
Add @ResourceInt annotations on APIs Change-Id: I119cc059c2f8bd98fd585fc84ac2b1b7d5892a08
/frameworks/base/core/java/android/widget/RadioGroup.java
|
a7bb6fbeab933326d58aa806d8194b7b13239d34 |
|
04-Feb-2015 |
Dianne Hackborn <hackbod@google.com> |
First quick implementation of auto assist data. Introduce new AssistData class that contains all data the framework automatically generates for assist. Currently populated with a very simple tree structure representing the app's view hierarchy. Reworked how we populate the class name for accessibility info, so this is provided through a new method call on View that subclasses can override. This method is also used to populate the class name in AssistData. Change-Id: Ibd0acdc8354727d4291473283b5e4b70894905dc
/frameworks/base/core/java/android/widget/RadioGroup.java
|
a54956a0bc611b1e9b3914edc7a604b59688f6b7 |
|
08-Jan-2015 |
Alan Viverette <alanv@google.com> |
Fix accessibility delegation Ensures that delegate code is run last. Previously, calling the super method from an accessibility delegate set on a widget would only run code in the widget's parent. Next, the delegate code would run. Finally, the widget's code would run. As a result, the widget code would override any data supplied by the delegate. By moving all overridden code to internal methods, we ensure that the call chain for super includes the widget's parent code followed by the widget's code. The delegate code will always run last. BUG: 17641433 Change-Id: Ib9d403156c1fc4fb04f65f3c126d1277a44b3740
/frameworks/base/core/java/android/widget/RadioGroup.java
|
579e14016c4a972e70cd2bd0c6d89bbd7e9e941c |
|
19-Oct-2012 |
Dave Burke <daveburke@google.com> |
Revert "Revert "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height."" This reverts commit 57fca90ac65ecfe97acd4c93d442c3db8f815e11 Change-Id: I21b007a7d150a4c23f25a706cdba5cb86198198f
/frameworks/base/core/java/android/widget/RadioGroup.java
|
57fca90ac65ecfe97acd4c93d442c3db8f815e11 |
|
17-Oct-2012 |
Justin Ho <justinho@google.com> |
Revert "This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height." This reverts commit dcf59629beed8182759a1068ab8ee997935bef82 Change-Id: I27426a0ffe993973ffb0b05ce1ed3afe73fcd87d
/frameworks/base/core/java/android/widget/RadioGroup.java
|
dcf59629beed8182759a1068ab8ee997935bef82 |
|
17-Oct-2012 |
Jim Miller <jaggies@google.com> |
This restores JB MR0 behavior where the framework throws an exception for improper layouts that are missing layout_width and/or layout_height. Revert "Revert "Revert "Fix for bug 6050753.""" This reverts commit 6868d6f349610c15256471cc3d5fa708cbfd5f1d Change-Id: I8843d92dba14c82f06d9ee59517cf11b2abbbf04
/frameworks/base/core/java/android/widget/RadioGroup.java
|
6868d6f349610c15256471cc3d5fa708cbfd5f1d |
|
16-Oct-2012 |
Mathias Agopian <mathias@google.com> |
Revert "Revert "Fix for bug 6050753."" Emergency revert -- fix reboot loop. This reverts commit 8e63bcc63fd002231f8391af8982eeb235d096c8. Change-Id: I4373b867d756de09cdf6aa0aba9e6ff8f47bcdbc
/frameworks/base/core/java/android/widget/RadioGroup.java
|
8e63bcc63fd002231f8391af8982eeb235d096c8 |
|
15-Oct-2012 |
Romain Guy <romainguy@google.com> |
Revert "Fix for bug 6050753." This reverts commit c29f031598811486d83f418fd08fbfe1fc41788a.
/frameworks/base/core/java/android/widget/RadioGroup.java
|
a9108a217e039492855fbeacda2ab6c4f4a3f70a |
|
18-Jul-2012 |
Adam Powell <adamp@google.com> |
Add View#generateViewId; make RadioGroup use it Bug 6448164 generateViewId provides a way for applications to generate opaque ID values suitable for use with View#setId that will not collide with values generated by aapt for R.id. Fix a bug where RadioGroup assumes object hash codes will always be positive. Change-Id: I3e2870cd672d6061bb465128f428c81aeef0c44b
/frameworks/base/core/java/android/widget/RadioGroup.java
|
0597161ee43cfaa7dbe14691a134fb358a00317a |
|
31-May-2012 |
Philip Milne <pmilne@google.com> |
Merge "Fix for bug 6050753."
|
aac722a9c0d199c79ae8ce2dd3cce113f01c30b7 |
|
26-Mar-2012 |
Philip Milne <pmilne@google.com> |
Fixes for bugs: 6104423, 6103563, 6103509, 6103807 & 6103253. Add properties to Java API so as to better mirror the framework's XML API. I'm not familiar with many of these areas so this CL is worth some scrutiny. Change-Id: Iff63c43521305efaad5a2189c1b5556d2353cbd4
/frameworks/base/core/java/android/widget/RadioGroup.java
|
c29f031598811486d83f418fd08fbfe1fc41788a |
|
23-Feb-2012 |
Philip Milne <pmilne@google.com> |
Fix for bug 6050753. The method: TypedArray: getLayoutDimension(int, String) throws an undocumented exception when either the width and/or height attributes are undefined. See the bug report above for reasons why this was deemed unhelpful both in the tools area and to developers in general. Fix by: 1. Documenting the conditions under which the method raises an exception. 2. Deprecating the method, advising callers to supply a default instead. Additionally, redefine the: ViewGroup: setBaseAttributes(TypedArray, int, int); methods to provide the appropriate defaults in ViewGroup subclasses as advised above. For the platform layouts the default value is WRAP_CONTENT (and is defined in the ViewGroup.LayoutParams class). The special cases are accomodated in LayoutParams subclasses in the following cases: Subclass width height FrameLayout.LayoutParams: MATCH_PARENT, MATCH_PARENT TableLayout.LayoutParams: MATCH_PARENT, WRAP_CONTENT TableRow.LayoutParams: MATCH_PARENT, WRAP_CONTENT Change-Id: I335a3bd8e2d7f7866692898ed73492635a5b61ea
/frameworks/base/core/java/android/widget/RadioGroup.java
|
8a78fd4d9572dff95432fcc4ba0e87563415b728 |
|
17-Jan-2012 |
Svetoslav Ganov <svetoslavganov@google.com> |
AccessibilityEvent/AccessibilityNodeInfo class name property should be set to only framework classes. AccessibilityEvent and AccessibilityNodeInfo have a property className which is set to the source Java class. This is problematic since leads to leaking private classes which would allow an accessibility service to load classes from other packages. This is strongly undesirable since not trusted code can be loaded, and hence executed, in the accessibility service. To address that the class name is set to the most concrete framework class extended by the info/event source. bug:5878943 Change-Id: I7b3114ece8772ea2773f5151e21b8a6f2006882a
/frameworks/base/core/java/android/widget/RadioGroup.java
|
9066cfe9886ac131c34d59ed0e2d287b0e3c0087 |
|
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
/frameworks/base/core/java/android/widget/RadioGroup.java
|
d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 |
|
04-Mar-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //depot/cupcake/@135843
/frameworks/base/core/java/android/widget/RadioGroup.java
|
d24b8183b93e781080b2c16c487e60d51c12da31 |
|
11-Feb-2009 |
The Android Open Source Project <initial-contribution@android.com> |
auto import from //branches/cupcake/...@130745
/frameworks/base/core/java/android/widget/RadioGroup.java
|
54b6cfa9a9e5b861a9930af873580d6dc20f773c |
|
21-Oct-2008 |
The Android Open Source Project <initial-contribution@android.com> |
Initial Contribution
/frameworks/base/core/java/android/widget/RadioGroup.java
|