diff options
| author | Svetoslav Ganov <svetoslavganov@google.com> | 2011-10-28 14:20:52 -0700 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2011-10-28 14:20:52 -0700 |
| commit | c00d2ddcc343b7bcdce30925df90523bb7371f83 (patch) | |
| tree | 3e671c98bf4af2e9c471f85ca0830b67be8898ad /core | |
| parent | 220d2b0aa126fbe09dee9e7e9afa1999521cf5d2 (diff) | |
| parent | af5b4f471df108ffbe1c3861d18b2141710d7bf8 (diff) | |
| download | frameworks_base-c00d2ddcc343b7bcdce30925df90523bb7371f83.zip frameworks_base-c00d2ddcc343b7bcdce30925df90523bb7371f83.tar.gz frameworks_base-c00d2ddcc343b7bcdce30925df90523bb7371f83.tar.bz2 | |
Merge "Fixing a memory leak in accessibility enteraction APIs." into ics-mr1
Diffstat (limited to 'core')
| -rw-r--r-- | core/java/android/view/ViewRootImpl.java | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java index a36aecb..24423c3 100644 --- a/core/java/android/view/ViewRootImpl.java +++ b/core/java/android/view/ViewRootImpl.java @@ -4473,19 +4473,20 @@ public final class ViewRootImpl extends Handler implements ViewParent, * AccessibilityManagerService to the latter can interact with * the view hierarchy in this ViewAncestor. */ - final class AccessibilityInteractionConnection + static final class AccessibilityInteractionConnection extends IAccessibilityInteractionConnection.Stub { - private final WeakReference<ViewRootImpl> mViewAncestor; + private final WeakReference<ViewRootImpl> mRootImpl; AccessibilityInteractionConnection(ViewRootImpl viewAncestor) { - mViewAncestor = new WeakReference<ViewRootImpl>(viewAncestor); + mRootImpl = new WeakReference<ViewRootImpl>(viewAncestor); } public void findAccessibilityNodeInfoByAccessibilityId(int accessibilityId, int interactionId, IAccessibilityInteractionConnectionCallback callback, int interrogatingPid, long interrogatingTid) { - if (mViewAncestor.get() != null) { - getAccessibilityInteractionController() + ViewRootImpl viewRootImpl = mRootImpl.get(); + if (viewRootImpl != null) { + viewRootImpl.getAccessibilityInteractionController() .findAccessibilityNodeInfoByAccessibilityIdClientThread(accessibilityId, interactionId, callback, interrogatingPid, interrogatingTid); } @@ -4494,8 +4495,9 @@ public final class ViewRootImpl extends Handler implements ViewParent, public void performAccessibilityAction(int accessibilityId, int action, int interactionId, IAccessibilityInteractionConnectionCallback callback, int interogatingPid, long interrogatingTid) { - if (mViewAncestor.get() != null) { - getAccessibilityInteractionController() + ViewRootImpl viewRootImpl = mRootImpl.get(); + if (viewRootImpl != null) { + viewRootImpl.getAccessibilityInteractionController() .performAccessibilityActionClientThread(accessibilityId, action, interactionId, callback, interogatingPid, interrogatingTid); } @@ -4504,8 +4506,9 @@ public final class ViewRootImpl extends Handler implements ViewParent, public void findAccessibilityNodeInfoByViewId(int viewId, int interactionId, IAccessibilityInteractionConnectionCallback callback, int interrogatingPid, long interrogatingTid) { - if (mViewAncestor.get() != null) { - getAccessibilityInteractionController() + ViewRootImpl viewRootImpl = mRootImpl.get(); + if (viewRootImpl != null) { + viewRootImpl.getAccessibilityInteractionController() .findAccessibilityNodeInfoByViewIdClientThread(viewId, interactionId, callback, interrogatingPid, interrogatingTid); } @@ -4514,8 +4517,9 @@ public final class ViewRootImpl extends Handler implements ViewParent, public void findAccessibilityNodeInfosByViewText(String text, int accessibilityId, int interactionId, IAccessibilityInteractionConnectionCallback callback, int interrogatingPid, long interrogatingTid) { - if (mViewAncestor.get() != null) { - getAccessibilityInteractionController() + ViewRootImpl viewRootImpl = mRootImpl.get(); + if (viewRootImpl != null) { + viewRootImpl.getAccessibilityInteractionController() .findAccessibilityNodeInfosByViewTextClientThread(text, accessibilityId, interactionId, callback, interrogatingPid, interrogatingTid); } |
