Merge "IME Insets: Remove obsolete applyImeVisibility call" into sc-dev

This commit is contained in:
Adrian Roos
2021-03-22 08:38:04 +00:00
committed by Android (Google) Code Review
7 changed files with 10 additions and 58 deletions

View File

@@ -50,10 +50,6 @@ public final class ImeInsetsSourceConsumer extends InsetsSourceConsumer {
super(ITYPE_IME, state, transactionSupplier, controller);
}
public void applyImeVisibility(boolean setVisible) {
mController.applyImeVisibility(setVisible);
}
@Override
public void onWindowFocusGained() {
super.onWindowFocusGained();

View File

@@ -920,7 +920,8 @@ public class InsetsController implements WindowInsetsController, InsetsAnimation
hide(types, false /* fromIme */);
}
void hide(@InsetsType int types, boolean fromIme) {
@VisibleForTesting
public void hide(@InsetsType int types, boolean fromIme) {
if (fromIme) {
ImeTracing.getInstance().triggerClientDump("InsetsController#hide",
mHost.getInputMethodManager(), null /* icProto */);
@@ -1312,19 +1313,6 @@ public class InsetsController implements WindowInsetsController, InsetsAnimation
getSourceConsumer(ITYPE_IME).onWindowFocusLost();
}
/**
* Used by {@link ImeInsetsSourceConsumer} when IME decides to be shown/hidden.
* @hide
*/
@VisibleForTesting
public void applyImeVisibility(boolean setVisible) {
if (setVisible) {
show(Type.IME, true /* fromIme */);
} else {
hide(Type.IME);
}
}
@VisibleForTesting
public @AnimationType int getAnimationType(@InternalInsetsType int type) {
for (int i = mRunningAnimations.size() - 1; i >= 0; i--) {

View File

@@ -511,7 +511,6 @@ public final class InputMethodManager {
static final int MSG_TIMEOUT_INPUT_EVENT = 6;
static final int MSG_FLUSH_INPUT_EVENT = 7;
static final int MSG_REPORT_FULLSCREEN_MODE = 10;
static final int MSG_APPLY_IME_VISIBILITY = 20;
static final int MSG_UPDATE_ACTIVITY_VIEW_TO_SCREEN_MATRIX = 30;
private static boolean isAutofillUIShowing(View servedView) {
@@ -985,17 +984,6 @@ public final class InputMethodManager {
}
return;
}
case MSG_APPLY_IME_VISIBILITY: {
synchronized (mH) {
if (mImeInsetsConsumer != null) {
ImeTracing.getInstance().triggerClientDump(
"ImeInsetsSourceConsumer#applyImeVisibility",
InputMethodManager.this, null /* icProto */);
mImeInsetsConsumer.applyImeVisibility(msg.arg1 != 0);
}
}
return;
}
case MSG_UPDATE_ACTIVITY_VIEW_TO_SCREEN_MATRIX: {
final float[] matrixValues = (float[]) msg.obj;
final int bindSequence = msg.arg1;
@@ -1089,12 +1077,6 @@ public final class InputMethodManager {
.sendToTarget();
}
@Override
public void applyImeVisibility(boolean setVisible) {
mH.obtainMessage(MSG_APPLY_IME_VISIBILITY, setVisible ? 1 : 0, 0)
.sendToTarget();
}
@Override
public void updateActivityViewToScreenMatrix(int bindSequence, float[] matrixValues) {
mH.obtainMessage(MSG_UPDATE_ACTIVITY_VIEW_TO_SCREEN_MATRIX, bindSequence, 0,

View File

@@ -28,7 +28,6 @@ oneway interface IInputMethodClient {
void setActive(boolean active, boolean fullscreen, boolean reportToImeController);
void scheduleStartInputIfNecessary(boolean fullscreen);
void reportFullscreenMode(boolean fullscreen);
void applyImeVisibility(boolean setVisible);
void updateActivityViewToScreenMatrix(int bindSequence, in float[] matrixValues);
void setImeTraceEnabled(boolean enabled);
}

View File

@@ -98,12 +98,12 @@ public class ImeInsetsSourceConsumerTest {
InstrumentationRegistry.getInstrumentation().runOnMainSync(() -> {
// test if setVisibility can show IME
mImeConsumer.onWindowFocusGained();
mImeConsumer.applyImeVisibility(true);
mController.show(WindowInsets.Type.ime(), true /* fromIme */);
mController.cancelExistingAnimations();
assertTrue(mController.getSourceConsumer(ime.getType()).isRequestedVisible());
// test if setVisibility can hide IME
mImeConsumer.applyImeVisibility(false);
mController.hide(WindowInsets.Type.ime(), true /* fromIme */);
mController.cancelExistingAnimations();
assertFalse(mController.getSourceConsumer(ime.getType()).isRequestedVisible());
});
@@ -117,7 +117,7 @@ public class ImeInsetsSourceConsumerTest {
InstrumentationRegistry.getInstrumentation().runOnMainSync(() -> {
// Request IME visible before control is available.
mImeConsumer.onWindowFocusGained();
mImeConsumer.applyImeVisibility(true /* setVisible */);
mController.show(WindowInsets.Type.ime(), true /* fromIme */);
// set control and verify visibility is applied.
InsetsSourceControl control =
@@ -136,7 +136,7 @@ public class ImeInsetsSourceConsumerTest {
InstrumentationRegistry.getInstrumentation().runOnMainSync(() -> {
// Request IME visible before control is available.
mImeConsumer.onWindowFocusGained();
mImeConsumer.applyImeVisibility(true /* setVisible */);
mController.show(WindowInsets.Type.ime(), true /* fromIme */);
// set control and verify visibility is applied.
InsetsSourceControl control = Mockito.spy(

View File

@@ -236,7 +236,7 @@ public class InsetsControllerTest {
InstrumentationRegistry.getInstrumentation().runOnMainSync(() -> {
mController.getSourceConsumer(ITYPE_IME).onWindowFocusGained();
// since there is no focused view, forcefully make IME visible.
mController.applyImeVisibility(true /* setVisible */);
mController.show(Type.ime(), true /* fromIme */);
mController.show(Type.all());
// quickly jump to final state by cancelling it.
mController.cancelExistingAnimations();
@@ -244,7 +244,7 @@ public class InsetsControllerTest {
assertTrue(mController.getSourceConsumer(statusBar.getType()).isRequestedVisible());
assertTrue(mController.getSourceConsumer(ime.getType()).isRequestedVisible());
mController.applyImeVisibility(false /* setVisible */);
mController.hide(Type.ime(), true /* fromIme */);
mController.hide(Type.all());
mController.cancelExistingAnimations();
assertFalse(mController.getSourceConsumer(navBar.getType()).isRequestedVisible());
@@ -261,10 +261,10 @@ public class InsetsControllerTest {
mController.onControlsChanged(new InsetsSourceControl[] { ime });
InstrumentationRegistry.getInstrumentation().runOnMainSync(() -> {
mController.getSourceConsumer(ITYPE_IME).onWindowFocusGained();
mController.applyImeVisibility(true);
mController.show(Type.ime(), true /* fromIme */);
mController.cancelExistingAnimations();
assertTrue(mController.getSourceConsumer(ime.getType()).isRequestedVisible());
mController.applyImeVisibility(false);
mController.hide(Type.ime(), true /* fromIme */);
mController.cancelExistingAnimations();
assertFalse(mController.getSourceConsumer(ime.getType()).isRequestedVisible());
mController.getSourceConsumer(ITYPE_IME).onWindowFocusLost();

View File

@@ -256,7 +256,6 @@ public class InputMethodManagerService extends IInputMethodManager.Stub
static final int MSG_SET_ACTIVE = 3020;
static final int MSG_SET_INTERACTIVE = 3030;
static final int MSG_REPORT_FULLSCREEN_MODE = 3045;
static final int MSG_APPLY_IME_VISIBILITY = 3070;
static final int MSG_HARD_KEYBOARD_SWITCH_CHANGED = 4000;
@@ -4603,18 +4602,6 @@ public class InputMethodManagerService extends IInputMethodManager.Stub
}
return true;
}
case MSG_APPLY_IME_VISIBILITY: {
final boolean setVisible = msg.arg1 != 0;
final ClientState clientState = (ClientState) msg.obj;
try {
clientState.client.applyImeVisibility(setVisible);
} catch (RemoteException e) {
Slog.w(TAG, "Got RemoteException sending "
+ "applyImeVisibility(" + setVisible + ") notification to pid="
+ clientState.pid + " uid=" + clientState.uid);
}
return true;
}
// --------------------------------------------------------------
case MSG_HARD_KEYBOARD_SWITCH_CHANGED: