Merge "Use WeakReference#refersTo() when possible"

This commit is contained in:
Yohei Yukawa
2022-10-18 05:45:03 +00:00
committed by Android (Google) Code Review
2 changed files with 18 additions and 2 deletions

View File

@@ -897,7 +897,7 @@ public final class InputMethodManager {
return mServedInputConnection != null
&& mServedInputConnection.isActive()
&& mServedInputConnection.getServedView() == view;
&& mServedInputConnection.isAssociatedWith(view);
}
}

View File

@@ -218,10 +218,26 @@ final class RemoteInputConnectionImpl extends IRemoteInputConnection.Stub {
return mParentInputMethodManager.isActive() && !isFinished();
}
public View getServedView() {
private View getServedView() {
return mServedView.get();
}
/**
* Queries if the given {@link View} is associated with this {@link RemoteInputConnectionImpl}
* or not.
*
* @param view {@link View}.
* @return {@code true} if the given {@link View} is not null and is associated with this
* {@link RemoteInputConnectionImpl}.
*/
@AnyThread
public boolean isAssociatedWith(@Nullable View view) {
if (view == null) {
return false;
}
return mServedView.refersTo(view);
}
/**
* Gets and resets {@link #mHasPendingImmediateCursorAnchorInfoUpdate}.
*