1 package com.xtremelabs.robolectric.shadows; 2 3 import android.os.IBinder; 4 import android.os.ResultReceiver; 5 import android.view.View; 6 import android.view.inputmethod.InputMethodManager; 7 8 import com.xtremelabs.robolectric.internal.Implementation; 9 import com.xtremelabs.robolectric.internal.Implements; 10 11 @Implements(InputMethodManager.class) 12 public class ShadowInputMethodManager { 13 14 private boolean softInputVisible; 15 16 @Implementation showSoftInput(View view, int flags)17 public boolean showSoftInput(View view, int flags) { 18 return showSoftInput(view, flags, null); 19 } 20 21 @Implementation showSoftInput(View view, int flags, ResultReceiver resultReceiver)22 public boolean showSoftInput(View view, int flags, ResultReceiver resultReceiver) { 23 softInputVisible = true; 24 return true; 25 } 26 27 @Implementation hideSoftInputFromWindow(IBinder windowToken, int flags)28 public boolean hideSoftInputFromWindow(IBinder windowToken, int flags) { 29 return hideSoftInputFromWindow(windowToken, flags, null); 30 } 31 32 @Implementation hideSoftInputFromWindow(IBinder windowToken, int flags, ResultReceiver resultReceiver)33 public boolean hideSoftInputFromWindow(IBinder windowToken, int flags, ResultReceiver resultReceiver) { 34 softInputVisible = false; 35 return true; 36 } 37 isSoftInputVisible()38 public boolean isSoftInputVisible() { 39 return softInputVisible; 40 } 41 } 42