diff --git a/samples/MultiClientInputMethod/src/com/example/android/multiclientinputmethod/ClientCallbackImpl.java b/samples/MultiClientInputMethod/src/com/example/android/multiclientinputmethod/ClientCallbackImpl.java
index 45b4e56..0b7e7ac 100644
--- a/samples/MultiClientInputMethod/src/com/example/android/multiclientinputmethod/ClientCallbackImpl.java
+++ b/samples/MultiClientInputMethod/src/com/example/android/multiclientinputmethod/ClientCallbackImpl.java
@@ -152,8 +152,11 @@
             mDelegate.reportImeWindowTarget(
                     mClientId, targetWindowHandle, window.getWindow().getAttributes().token);
         }
-
         if (inputConnection == null || editorInfo == null) {
+            // deactivate previous client.
+            if (MultiClientInputMethod.sLastClientId != mClientId) {
+                mDelegate.setActive(MultiClientInputMethod.sLastClientId, false /* active */);
+            }
             // Dummy InputConnection case.
             if (window.getClientId() == mClientId) {
                 // Special hack for temporary focus changes (e.g. notification shade).
@@ -163,6 +166,9 @@
                 window.onDummyStartInput(mClientId, targetWindowHandle);
             }
         } else {
+            if (MultiClientInputMethod.sLastClientId != mClientId) {
+                mDelegate.setActive(mClientId, true /* active */);
+            }
             window.onStartInput(mClientId, targetWindowHandle, inputConnection);
         }
 
@@ -184,6 +190,7 @@
                 window.hide();
                 break;
         }
+        MultiClientInputMethod.sLastClientId = mClientId;
     }
 
     @Override
diff --git a/samples/MultiClientInputMethod/src/com/example/android/multiclientinputmethod/MultiClientInputMethod.java b/samples/MultiClientInputMethod/src/com/example/android/multiclientinputmethod/MultiClientInputMethod.java
index 150c21d..bf468e2 100644
--- a/samples/MultiClientInputMethod/src/com/example/android/multiclientinputmethod/MultiClientInputMethod.java
+++ b/samples/MultiClientInputMethod/src/com/example/android/multiclientinputmethod/MultiClientInputMethod.java
@@ -28,6 +28,7 @@
 public final class MultiClientInputMethod extends Service {
     private static final String TAG = "MultiClientInputMethod";
     private static final boolean DEBUG = false;
+    static int sLastClientId = MultiClientInputMethodServiceDelegate.INVALID_CLIENT_ID;
 
     SoftInputWindowManager mSoftInputWindowManager;
     MultiClientInputMethodServiceDelegate mDelegate;
