Merge "Fix potential trace{Begin, End} mis-match issues in IMMS" into udc-dev am: da896af691

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/21507352

Change-Id: I74ae6374a47dd07a8be16465650fd7194b8d2113
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
TreeHugger Robot
2023-02-21 04:33:43 +00:00
committed by Automerger Merge Worker

View File

@@ -4549,6 +4549,7 @@ public final class InputMethodManagerService extends IInputMethodManager.Stub
@BinderThread @BinderThread
private void applyImeVisibility(IBinder token, IBinder windowToken, boolean setVisible, private void applyImeVisibility(IBinder token, IBinder windowToken, boolean setVisible,
@Nullable ImeTracker.Token statsToken) { @Nullable ImeTracker.Token statsToken) {
try {
Trace.traceBegin(TRACE_TAG_WINDOW_MANAGER, "IMMS.applyImeVisibility"); Trace.traceBegin(TRACE_TAG_WINDOW_MANAGER, "IMMS.applyImeVisibility");
synchronized (ImfLock.class) { synchronized (ImfLock.class) {
if (!calledWithValidTokenLocked(token)) { if (!calledWithValidTokenLocked(token)) {
@@ -4556,13 +4557,16 @@ public final class InputMethodManagerService extends IInputMethodManager.Stub
ImeTracker.PHASE_SERVER_APPLY_IME_VISIBILITY); ImeTracker.PHASE_SERVER_APPLY_IME_VISIBILITY);
return; return;
} }
final IBinder requestToken = mVisibilityStateComputer.getWindowTokenFrom(windowToken); final IBinder requestToken = mVisibilityStateComputer.getWindowTokenFrom(
windowToken);
mVisibilityApplier.applyImeVisibility(requestToken, statsToken, mVisibilityApplier.applyImeVisibility(requestToken, statsToken,
setVisible ? ImeVisibilityStateComputer.STATE_SHOW_IME setVisible ? ImeVisibilityStateComputer.STATE_SHOW_IME
: ImeVisibilityStateComputer.STATE_HIDE_IME); : ImeVisibilityStateComputer.STATE_HIDE_IME);
} }
} finally {
Trace.traceEnd(TRACE_TAG_WINDOW_MANAGER); Trace.traceEnd(TRACE_TAG_WINDOW_MANAGER);
} }
}
@BinderThread @BinderThread
private void resetStylusHandwriting(int requestId) { private void resetStylusHandwriting(int requestId) {
@@ -4632,6 +4636,7 @@ public final class InputMethodManagerService extends IInputMethodManager.Stub
@BinderThread @BinderThread
private void hideMySoftInput(@NonNull IBinder token, int flags, private void hideMySoftInput(@NonNull IBinder token, int flags,
@SoftInputShowHideReason int reason) { @SoftInputShowHideReason int reason) {
try {
Trace.traceBegin(TRACE_TAG_WINDOW_MANAGER, "IMMS.hideMySoftInput"); Trace.traceBegin(TRACE_TAG_WINDOW_MANAGER, "IMMS.hideMySoftInput");
synchronized (ImfLock.class) { synchronized (ImfLock.class) {
if (!calledWithValidTokenLocked(token)) { if (!calledWithValidTokenLocked(token)) {
@@ -4645,11 +4650,14 @@ public final class InputMethodManagerService extends IInputMethodManager.Stub
Binder.restoreCallingIdentity(ident); Binder.restoreCallingIdentity(ident);
} }
} }
} finally {
Trace.traceEnd(TRACE_TAG_WINDOW_MANAGER); Trace.traceEnd(TRACE_TAG_WINDOW_MANAGER);
} }
}
@BinderThread @BinderThread
private void showMySoftInput(@NonNull IBinder token, int flags) { private void showMySoftInput(@NonNull IBinder token, int flags) {
try {
Trace.traceBegin(TRACE_TAG_WINDOW_MANAGER, "IMMS.showMySoftInput"); Trace.traceBegin(TRACE_TAG_WINDOW_MANAGER, "IMMS.showMySoftInput");
synchronized (ImfLock.class) { synchronized (ImfLock.class) {
if (!calledWithValidTokenLocked(token)) { if (!calledWithValidTokenLocked(token)) {
@@ -4664,8 +4672,10 @@ public final class InputMethodManagerService extends IInputMethodManager.Stub
Binder.restoreCallingIdentity(ident); Binder.restoreCallingIdentity(ident);
} }
} }
} finally {
Trace.traceEnd(TRACE_TAG_WINDOW_MANAGER); Trace.traceEnd(TRACE_TAG_WINDOW_MANAGER);
} }
}
@VisibleForTesting @VisibleForTesting
ImeVisibilityApplier getVisibilityApplier() { ImeVisibilityApplier getVisibilityApplier() {