Loading policy/com/android/internal/policy/impl/PhoneWindow.java +44 −0 Original line number Diff line number Diff line Loading @@ -163,6 +163,8 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback { static final int MSG_CALL_LONG_PRESS_COMPLETE = 4; static final int MSG_CAMERA_LONG_PRESS = 5; static final int MSG_CAMERA_LONG_PRESS_COMPLETE = 6; static final int MSG_SEARCH_LONG_PRESS = 7; static final int MSG_SEARCH_LONG_PRESS_COMPLETE = 8; private final Handler mKeycodeMenuTimeoutHandler = new Handler() { @Override Loading Loading @@ -197,6 +199,14 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback { mKeycodeMenuTimeoutHandler.sendMessage(newMessage); break; } case MSG_SEARCH_LONG_PRESS: { if (!mSearchKeyDownReceived) return; // See above. Message newMessage = Message.obtain(msg); newMessage.what = MSG_SEARCH_LONG_PRESS_COMPLETE; mKeycodeMenuTimeoutHandler.sendMessage(newMessage); break; } case MSG_MENU_LONG_PRESS_COMPLETE: { if (mPanelChordingKey == 0) return; mPanelChordingKey = 0; Loading Loading @@ -231,6 +241,26 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback { getContext().sendOrderedBroadcast(intent, null); sendCloseSystemWindows(); } break; case MSG_SEARCH_LONG_PRESS_COMPLETE: { if (getKeyguardManager().inKeyguardRestrictedInputMode() || !mSearchKeyDownReceived) { mSearchKeyDownReceived = false; return; } mDecor.performHapticFeedback(HapticFeedbackConstants.LONG_PRESS); // launch the search activity Intent intent = new Intent(Intent.ACTION_SEARCH_LONG_PRESS); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); try { sendCloseSystemWindows(); getContext().startActivity(intent); // Only clear this if we successfully start the // activity; otherwise we will allow the normal short // press action to be performed. mSearchKeyDownReceived = false; } catch (ActivityNotFoundException e) { } } break; } } }; Loading Loading @@ -1276,6 +1306,19 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback { case KeyEvent.KEYCODE_SEARCH: { if (event.getRepeatCount() == 0) { mSearchKeyDownReceived = true; Configuration config = getContext().getResources().getConfiguration(); if (config.keyboard == Configuration.KEYBOARD_NOKEYS || config.hardKeyboardHidden == Configuration.HARDKEYBOARDHIDDEN_YES) { // If this device does not have a hardware keyboard, // or that keyboard is hidden, then we can't use the // search key for chording to perform shortcuts; // instead, we will let the user long press, mKeycodeMenuTimeoutHandler.removeMessages(MSG_SEARCH_LONG_PRESS); mKeycodeMenuTimeoutHandler.sendMessageDelayed( mKeycodeMenuTimeoutHandler.obtainMessage(MSG_SEARCH_LONG_PRESS), ViewConfiguration.getLongPressTimeout()); } return true; } break; } Loading Loading @@ -1370,6 +1413,7 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback { */ if (getKeyguardManager().inKeyguardRestrictedInputMode() || !mSearchKeyDownReceived) { mSearchKeyDownReceived = false; break; } mSearchKeyDownReceived = false; Loading policy/com/android/internal/policy/impl/PhoneWindowManager.java +1 −21 Original line number Diff line number Diff line Loading @@ -260,32 +260,12 @@ public class PhoneWindowManager implements WindowManagerPolicy { } class MyOrientationListener extends WindowOrientationListener { private static final int _LOWER_THRESHOLD = 30; private static final int _UPPER_THRESHOLD = 60; MyOrientationListener(Context context) { super(context); } @Override public void onOrientationChanged(int orientation) { // ignore orientation changes unless the value is in a range // When switching from portrait to landscape try to use a lower threshold limit // Use upper threshold limit when switching from landscape to portrait // this is to delay the switch as much as we can int rotation; int threshold = (mSensorRotation == Surface.ROTATION_90) ? _UPPER_THRESHOLD : _LOWER_THRESHOLD; if ((orientation >= 0 && orientation <= _UPPER_THRESHOLD) || (orientation >= 270 - _LOWER_THRESHOLD)) { rotation = (orientation >= 270 - _LOWER_THRESHOLD && orientation <= 270 + threshold) ? Surface.ROTATION_90 : Surface.ROTATION_0; } else { // ignore orientation value return; } public void onOrientationChanged(int rotation) { // Send updates based on orientation value if (rotation != mSensorRotation) { if(localLOGV) Log.i(TAG, "onOrientationChanged, rotation changed from "+rotation+" to "+mSensorRotation); Loading policy/com/android/internal/policy/impl/SimUnlockScreen.java +3 −3 Original line number Diff line number Diff line Loading @@ -46,7 +46,7 @@ public class SimUnlockScreen extends LinearLayout implements KeyguardScreen, Vie private final boolean mCreatedWithKeyboardOpen; private TextView mHeaderText; private EditText mPinText; private TextView mPinText; private TextView mOkButton; private TextView mEmergencyCallButton; Loading Loading @@ -75,7 +75,7 @@ public class SimUnlockScreen extends LinearLayout implements KeyguardScreen, Vie } mHeaderText = (TextView) findViewById(R.id.headerText); mPinText = (EditText) findViewById(R.id.pinDisplay); mPinText = (TextView) findViewById(R.id.pinDisplay); mBackSpaceButton = findViewById(R.id.backspace); mBackSpaceButton.setOnClickListener(this); Loading Loading @@ -159,7 +159,7 @@ public class SimUnlockScreen extends LinearLayout implements KeyguardScreen, Vie public void onClick(View v) { if (v == mBackSpaceButton) { final Editable digits = mPinText.getText(); final Editable digits = mPinText.getEditableText(); final int len = digits.length(); if (len > 0) { digits.delete(len-1, len); Loading Loading
policy/com/android/internal/policy/impl/PhoneWindow.java +44 −0 Original line number Diff line number Diff line Loading @@ -163,6 +163,8 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback { static final int MSG_CALL_LONG_PRESS_COMPLETE = 4; static final int MSG_CAMERA_LONG_PRESS = 5; static final int MSG_CAMERA_LONG_PRESS_COMPLETE = 6; static final int MSG_SEARCH_LONG_PRESS = 7; static final int MSG_SEARCH_LONG_PRESS_COMPLETE = 8; private final Handler mKeycodeMenuTimeoutHandler = new Handler() { @Override Loading Loading @@ -197,6 +199,14 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback { mKeycodeMenuTimeoutHandler.sendMessage(newMessage); break; } case MSG_SEARCH_LONG_PRESS: { if (!mSearchKeyDownReceived) return; // See above. Message newMessage = Message.obtain(msg); newMessage.what = MSG_SEARCH_LONG_PRESS_COMPLETE; mKeycodeMenuTimeoutHandler.sendMessage(newMessage); break; } case MSG_MENU_LONG_PRESS_COMPLETE: { if (mPanelChordingKey == 0) return; mPanelChordingKey = 0; Loading Loading @@ -231,6 +241,26 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback { getContext().sendOrderedBroadcast(intent, null); sendCloseSystemWindows(); } break; case MSG_SEARCH_LONG_PRESS_COMPLETE: { if (getKeyguardManager().inKeyguardRestrictedInputMode() || !mSearchKeyDownReceived) { mSearchKeyDownReceived = false; return; } mDecor.performHapticFeedback(HapticFeedbackConstants.LONG_PRESS); // launch the search activity Intent intent = new Intent(Intent.ACTION_SEARCH_LONG_PRESS); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); try { sendCloseSystemWindows(); getContext().startActivity(intent); // Only clear this if we successfully start the // activity; otherwise we will allow the normal short // press action to be performed. mSearchKeyDownReceived = false; } catch (ActivityNotFoundException e) { } } break; } } }; Loading Loading @@ -1276,6 +1306,19 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback { case KeyEvent.KEYCODE_SEARCH: { if (event.getRepeatCount() == 0) { mSearchKeyDownReceived = true; Configuration config = getContext().getResources().getConfiguration(); if (config.keyboard == Configuration.KEYBOARD_NOKEYS || config.hardKeyboardHidden == Configuration.HARDKEYBOARDHIDDEN_YES) { // If this device does not have a hardware keyboard, // or that keyboard is hidden, then we can't use the // search key for chording to perform shortcuts; // instead, we will let the user long press, mKeycodeMenuTimeoutHandler.removeMessages(MSG_SEARCH_LONG_PRESS); mKeycodeMenuTimeoutHandler.sendMessageDelayed( mKeycodeMenuTimeoutHandler.obtainMessage(MSG_SEARCH_LONG_PRESS), ViewConfiguration.getLongPressTimeout()); } return true; } break; } Loading Loading @@ -1370,6 +1413,7 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback { */ if (getKeyguardManager().inKeyguardRestrictedInputMode() || !mSearchKeyDownReceived) { mSearchKeyDownReceived = false; break; } mSearchKeyDownReceived = false; Loading
policy/com/android/internal/policy/impl/PhoneWindowManager.java +1 −21 Original line number Diff line number Diff line Loading @@ -260,32 +260,12 @@ public class PhoneWindowManager implements WindowManagerPolicy { } class MyOrientationListener extends WindowOrientationListener { private static final int _LOWER_THRESHOLD = 30; private static final int _UPPER_THRESHOLD = 60; MyOrientationListener(Context context) { super(context); } @Override public void onOrientationChanged(int orientation) { // ignore orientation changes unless the value is in a range // When switching from portrait to landscape try to use a lower threshold limit // Use upper threshold limit when switching from landscape to portrait // this is to delay the switch as much as we can int rotation; int threshold = (mSensorRotation == Surface.ROTATION_90) ? _UPPER_THRESHOLD : _LOWER_THRESHOLD; if ((orientation >= 0 && orientation <= _UPPER_THRESHOLD) || (orientation >= 270 - _LOWER_THRESHOLD)) { rotation = (orientation >= 270 - _LOWER_THRESHOLD && orientation <= 270 + threshold) ? Surface.ROTATION_90 : Surface.ROTATION_0; } else { // ignore orientation value return; } public void onOrientationChanged(int rotation) { // Send updates based on orientation value if (rotation != mSensorRotation) { if(localLOGV) Log.i(TAG, "onOrientationChanged, rotation changed from "+rotation+" to "+mSensorRotation); Loading
policy/com/android/internal/policy/impl/SimUnlockScreen.java +3 −3 Original line number Diff line number Diff line Loading @@ -46,7 +46,7 @@ public class SimUnlockScreen extends LinearLayout implements KeyguardScreen, Vie private final boolean mCreatedWithKeyboardOpen; private TextView mHeaderText; private EditText mPinText; private TextView mPinText; private TextView mOkButton; private TextView mEmergencyCallButton; Loading Loading @@ -75,7 +75,7 @@ public class SimUnlockScreen extends LinearLayout implements KeyguardScreen, Vie } mHeaderText = (TextView) findViewById(R.id.headerText); mPinText = (EditText) findViewById(R.id.pinDisplay); mPinText = (TextView) findViewById(R.id.pinDisplay); mBackSpaceButton = findViewById(R.id.backspace); mBackSpaceButton.setOnClickListener(this); Loading Loading @@ -159,7 +159,7 @@ public class SimUnlockScreen extends LinearLayout implements KeyguardScreen, Vie public void onClick(View v) { if (v == mBackSpaceButton) { final Editable digits = mPinText.getText(); final Editable digits = mPinText.getEditableText(); final int len = digits.length(); if (len > 0) { digits.delete(len-1, len); Loading