Loading services/java/com/android/server/InputMethodManagerService.java +18 −21 Original line number Diff line number Diff line Loading @@ -139,6 +139,7 @@ public class InputMethodManagerService extends IInputMethodManager.Stub static final int MSG_UNBIND_METHOD = 3000; static final int MSG_BIND_METHOD = 3010; static final int MSG_SET_ACTIVE = 3020; static final int MSG_HARD_KEYBOARD_SWITCH_CHANGED = 4000; Loading Loading @@ -413,13 +414,9 @@ public class InputMethodManagerService extends IInputMethodManager.Stub } // Inform the current client of the change in active status try { if (mCurClient != null && mCurClient.client != null) { mCurClient.client.setActive(mScreenOn); } } catch (RemoteException e) { Slog.w(TAG, "Got RemoteException sending 'screen on/off' notification to pid " + mCurClient.pid + " uid " + mCurClient.uid); executeOrSendMessage(mCurClient.client, mCaller.obtainMessageIO( MSG_SET_ACTIVE, mScreenOn ? 1 : 0, mCurClient)); } } } Loading Loading @@ -882,17 +879,12 @@ public class InputMethodManagerService extends IInputMethodManager.Stub MSG_UNBIND_INPUT, mCurMethod)); } } executeOrSendMessage(mCurClient.client, mCaller.obtainMessageIO( MSG_SET_ACTIVE, 0, mCurClient)); executeOrSendMessage(mCurClient.client, mCaller.obtainMessageIO( MSG_UNBIND_METHOD, mCurSeq, mCurClient.client)); mCurClient.sessionRequested = false; // Call setActive(false) on the old client try { mCurClient.client.setActive(false); } catch (RemoteException e) { Slog.w(TAG, "Got RemoteException sending setActive(false) notification to pid " + mCurClient.pid + " uid " + mCurClient.uid); } mCurClient = null; hideInputMethodMenuLocked(); Loading Loading @@ -987,12 +979,8 @@ public class InputMethodManagerService extends IInputMethodManager.Stub // If the screen is on, inform the new client it is active if (mScreenOn) { try { cs.client.setActive(mScreenOn); } catch (RemoteException e) { Slog.w(TAG, "Got RemoteException sending setActive notification to pid " + cs.pid + " uid " + cs.uid); } executeOrSendMessage(cs.client, mCaller.obtainMessageIO( MSG_SET_ACTIVE, mScreenOn ? 1 : 0, cs)); } } Loading Loading @@ -2140,6 +2128,15 @@ public class InputMethodManagerService extends IInputMethodManager.Stub Slog.w(TAG, "Client died receiving input method " + args.arg2); } return true; case MSG_SET_ACTIVE: try { ((ClientState)msg.obj).client.setActive(msg.arg1 != 0); } catch (RemoteException e) { Slog.w(TAG, "Got RemoteException sending setActive(false) notification to pid " + ((ClientState)msg.obj).pid + " uid " + ((ClientState)msg.obj).uid); } return true; // -------------------------------------------------------------- case MSG_HARD_KEYBOARD_SWITCH_CHANGED: Loading Loading
services/java/com/android/server/InputMethodManagerService.java +18 −21 Original line number Diff line number Diff line Loading @@ -139,6 +139,7 @@ public class InputMethodManagerService extends IInputMethodManager.Stub static final int MSG_UNBIND_METHOD = 3000; static final int MSG_BIND_METHOD = 3010; static final int MSG_SET_ACTIVE = 3020; static final int MSG_HARD_KEYBOARD_SWITCH_CHANGED = 4000; Loading Loading @@ -413,13 +414,9 @@ public class InputMethodManagerService extends IInputMethodManager.Stub } // Inform the current client of the change in active status try { if (mCurClient != null && mCurClient.client != null) { mCurClient.client.setActive(mScreenOn); } } catch (RemoteException e) { Slog.w(TAG, "Got RemoteException sending 'screen on/off' notification to pid " + mCurClient.pid + " uid " + mCurClient.uid); executeOrSendMessage(mCurClient.client, mCaller.obtainMessageIO( MSG_SET_ACTIVE, mScreenOn ? 1 : 0, mCurClient)); } } } Loading Loading @@ -882,17 +879,12 @@ public class InputMethodManagerService extends IInputMethodManager.Stub MSG_UNBIND_INPUT, mCurMethod)); } } executeOrSendMessage(mCurClient.client, mCaller.obtainMessageIO( MSG_SET_ACTIVE, 0, mCurClient)); executeOrSendMessage(mCurClient.client, mCaller.obtainMessageIO( MSG_UNBIND_METHOD, mCurSeq, mCurClient.client)); mCurClient.sessionRequested = false; // Call setActive(false) on the old client try { mCurClient.client.setActive(false); } catch (RemoteException e) { Slog.w(TAG, "Got RemoteException sending setActive(false) notification to pid " + mCurClient.pid + " uid " + mCurClient.uid); } mCurClient = null; hideInputMethodMenuLocked(); Loading Loading @@ -987,12 +979,8 @@ public class InputMethodManagerService extends IInputMethodManager.Stub // If the screen is on, inform the new client it is active if (mScreenOn) { try { cs.client.setActive(mScreenOn); } catch (RemoteException e) { Slog.w(TAG, "Got RemoteException sending setActive notification to pid " + cs.pid + " uid " + cs.uid); } executeOrSendMessage(cs.client, mCaller.obtainMessageIO( MSG_SET_ACTIVE, mScreenOn ? 1 : 0, cs)); } } Loading Loading @@ -2140,6 +2128,15 @@ public class InputMethodManagerService extends IInputMethodManager.Stub Slog.w(TAG, "Client died receiving input method " + args.arg2); } return true; case MSG_SET_ACTIVE: try { ((ClientState)msg.obj).client.setActive(msg.arg1 != 0); } catch (RemoteException e) { Slog.w(TAG, "Got RemoteException sending setActive(false) notification to pid " + ((ClientState)msg.obj).pid + " uid " + ((ClientState)msg.obj).uid); } return true; // -------------------------------------------------------------- case MSG_HARD_KEYBOARD_SWITCH_CHANGED: Loading