diff options
| author | TreeHugger Robot <treehugger-gerrit@google.com> | 2018-11-26 19:17:02 +0000 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2018-11-26 19:17:02 +0000 |
| commit | 6d45ba0491e9cff60c7a715794ec289206f49cd0 (patch) | |
| tree | 58e3268cc5dbd6998fb8b8eb042d963908b889e9 /core/java/android | |
| parent | 9ebc59e956dae017cb519c61277c56ecc2875b57 (diff) | |
| parent | 92ab3857b09c9bb16dd590fd5951993bea7f1fd6 (diff) | |
Merge "Simplified View.onProvideContentCaptureStructure()"
Diffstat (limited to 'core/java/android')
| -rw-r--r-- | core/java/android/view/View.java | 18 | ||||
| -rw-r--r-- | core/java/android/webkit/WebView.java | 4 | ||||
| -rw-r--r-- | core/java/android/webkit/WebViewProvider.java | 3 | ||||
| -rw-r--r-- | core/java/android/widget/Switch.java | 23 |
4 files changed, 12 insertions, 36 deletions
diff --git a/core/java/android/view/View.java b/core/java/android/view/View.java index f19d40ab46c3..e0232a74038f 100644 --- a/core/java/android/view/View.java +++ b/core/java/android/view/View.java @@ -8152,6 +8152,9 @@ public class View implements Drawable.Callback, KeyEvent.Callback, * the user, and the activity rendering the view is enabled for Content Capture) is laid out and * is visible. * + * <p>The populated structure is then passed to the service through + * {@link IntelligenceManager#notifyViewAppeared(ViewStructure)}. + * * <p><b>Note: </b>the following methods of the {@code structure} will be ignored: * <ul> * <li>{@link ViewStructure#setChildCount(int)} @@ -8165,16 +8168,9 @@ public class View implements Drawable.Callback, KeyEvent.Callback, * <li>{@link ViewStructure#setHtmlInfo(android.view.ViewStructure.HtmlInfo)} * <li>{@link ViewStructure#setDataIsSensitive(boolean)} * </ul> - * - * @return whether the IntelligenceService should be notified that the view was added (through - * the {@link IntelligenceManager#notifyViewAppeared(ViewStructure)} method) to the view - * hierarchy. Most views should return {@code true} here, but views that contains virtual - * hierarchy might opt to return {@code false} and notify the manager independently, as the - * virtual views are rendered. */ - public boolean onProvideContentCaptureStructure(@NonNull ViewStructure structure, int flags) { + public void onProvideContentCaptureStructure(@NonNull ViewStructure structure, int flags) { onProvideStructure(structure, VIEW_STRUCTURE_FOR_CONTENT_CAPTURE, flags); - return true; } /** @hide */ @@ -8986,10 +8982,8 @@ public class View implements Drawable.Callback, KeyEvent.Callback, if (type == CONTENT_CAPTURE_NOTIFICATION_TYPE_APPEARED) { final ViewStructure structure = im.newViewStructure(this); - boolean notifyMgr = onProvideContentCaptureStructure(structure, /* flags= */ 0); - if (notifyMgr) { - im.notifyViewAppeared(structure); - } + onProvideContentCaptureStructure(structure, /* flags= */ 0); + im.notifyViewAppeared(structure); mPrivateFlags4 |= PFLAG4_NOTIFIED_CONTENT_CAPTURE_ADDED; } else { if ((mPrivateFlags4 & PFLAG4_NOTIFIED_CONTENT_CAPTURE_ADDED) == 0) { diff --git a/core/java/android/webkit/WebView.java b/core/java/android/webkit/WebView.java index 10937196a74f..4f1417ed23bb 100644 --- a/core/java/android/webkit/WebView.java +++ b/core/java/android/webkit/WebView.java @@ -2695,8 +2695,8 @@ public class WebView extends AbsoluteLayout } @Override - public boolean onProvideContentCaptureStructure(ViewStructure structure, int flags) { - return mProvider.getViewDelegate().onProvideContentCaptureStructure(structure, flags); + public void onProvideContentCaptureStructure(ViewStructure structure, int flags) { + mProvider.getViewDelegate().onProvideContentCaptureStructure(structure, flags); } @Override diff --git a/core/java/android/webkit/WebViewProvider.java b/core/java/android/webkit/WebViewProvider.java index ceada07c715b..95e7a986efd2 100644 --- a/core/java/android/webkit/WebViewProvider.java +++ b/core/java/android/webkit/WebViewProvider.java @@ -341,10 +341,9 @@ public interface WebViewProvider { return true; // true is the default value returned by View.isVisibleToUserForAutofill() } - default boolean onProvideContentCaptureStructure( + default void onProvideContentCaptureStructure( @SuppressWarnings("unused") android.view.ViewStructure structure, @SuppressWarnings("unused") int flags) { - return false; // WebView provides virtual views and is responsible to notify manager } public AccessibilityNodeProvider getAccessibilityNodeProvider(); diff --git a/core/java/android/widget/Switch.java b/core/java/android/widget/Switch.java index d55c09f7fcb6..79dc6708f9c3 100644 --- a/core/java/android/widget/Switch.java +++ b/core/java/android/widget/Switch.java @@ -1419,27 +1419,10 @@ public class Switch extends CompoundButton { return Switch.class.getName(); } + /** @hide */ @Override - public void onProvideStructure(ViewStructure structure) { - super.onProvideStructure(structure); - onProvideStructureForAssistOrAutofillOrViewCapture(structure); - } - - @Override - public void onProvideAutofillStructure(ViewStructure structure, int flags) { - super.onProvideAutofillStructure(structure, flags); - onProvideStructureForAssistOrAutofillOrViewCapture(structure); - } - - @Override - public boolean onProvideContentCaptureStructure(ViewStructure structure, int flags) { - final boolean notifyManager = super.onProvideContentCaptureStructure(structure, flags); - onProvideStructureForAssistOrAutofillOrViewCapture(structure); - return notifyManager; - } - - // NOTE: currently there is no difference for any type, so it doesn't take flags - private void onProvideStructureForAssistOrAutofillOrViewCapture(ViewStructure structure) { + protected void onProvideStructure(@NonNull ViewStructure structure, + @ViewStructureType int viewFor, int flags) { CharSequence switchText = isChecked() ? mTextOn : mTextOff; if (!TextUtils.isEmpty(switchText)) { CharSequence oldText = structure.getText(); |
