Merge "Prevent unwanted keypress actions during TV Setup." into oc-dev am: 564d0bf1be

am: a1157b3aa1

Change-Id: I80fac516afe2c7b75fe775d80444a501585bd3b7
This commit is contained in:
Sujith Ramakrishnan
2017-06-29 19:06:33 +00:00
committed by android-build-merger
2 changed files with 27 additions and 1 deletions

View File

@@ -3102,6 +3102,18 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback {
}
}
/**
* Check if Setup or Post-Setup update is completed on TV
* @return true if completed
*/
private boolean isTvUserSetupComplete() {
boolean isTvSetupComplete = Settings.Secure.getInt(getContext().getContentResolver(),
Settings.Secure.USER_SETUP_COMPLETE, 0) != 0;
isTvSetupComplete &= Settings.Secure.getInt(getContext().getContentResolver(),
Settings.Secure.TV_USER_SETUP_COMPLETE, 0) != 0;
return isTvSetupComplete;
}
/**
* Helper method for adding launch-search to most applications. Opens the
* search window using default settings.
@@ -3109,6 +3121,11 @@ public class PhoneWindow extends Window implements MenuBuilder.Callback {
* @return true if search window opened
*/
private boolean launchDefaultSearch(KeyEvent event) {
if (getContext().getPackageManager().hasSystemFeature(PackageManager.FEATURE_LEANBACK)
&& !isTvUserSetupComplete()) {
// If we are in Setup or Post-Setup update mode on TV, consume the search key
return false;
}
boolean result;
final Callback cb = getCallback();
if (cb == null || isDestroyed()) {

View File

@@ -1677,8 +1677,17 @@ public class PhoneWindowManager implements WindowManagerPolicy {
}
boolean isUserSetupComplete() {
return Settings.Secure.getIntForUser(mContext.getContentResolver(),
boolean isSetupComplete = Settings.Secure.getIntForUser(mContext.getContentResolver(),
Settings.Secure.USER_SETUP_COMPLETE, 0, UserHandle.USER_CURRENT) != 0;
if (mHasFeatureLeanback) {
isSetupComplete &= isTvUserSetupComplete();
}
return isSetupComplete;
}
private boolean isTvUserSetupComplete() {
return Settings.Secure.getIntForUser(mContext.getContentResolver(),
Settings.Secure.TV_USER_SETUP_COMPLETE, 0, UserHandle.USER_CURRENT) != 0;
}
private void handleShortPressOnHome() {