Show 'on the lockscreen' setting in more contexts.

- For managed profile apps
- When 'auto' importance is on.

Bug: 28405255
Change-Id: Ia4c0bc6010f157cac18a828069bbcf54087fc663
This commit is contained in:
Julia Reynolds
2016-04-27 12:46:43 -04:00
parent 1e5d0e731e
commit 21fd269ea3
3 changed files with 11 additions and 2 deletions

View File

@@ -22,6 +22,7 @@ import android.content.Intent;
import android.content.pm.ActivityInfo;
import android.content.pm.ApplicationInfo;
import android.content.pm.ResolveInfo;
import android.content.pm.UserInfo;
import android.os.Bundle;
import android.os.UserHandle;
import android.service.notification.NotificationListenerService.Ranking;
@@ -101,8 +102,12 @@ public class AppNotificationSettings extends NotificationSettingsBase {
@Override
protected void updateDependents(int importance) {
final boolean lockscreenSecure = new LockPatternUtils(getActivity()).isSecure(
UserHandle.myUserId());
LockPatternUtils utils = new LockPatternUtils(getActivity());
boolean lockscreenSecure = utils.isSecure(UserHandle.myUserId());
UserInfo parentUser = mUm.getProfileParent(UserHandle.myUserId());
if (parentUser != null){
lockscreenSecure |= utils.isSecure(parentUser.id);
}
if (getPreferenceScreen().findPreference(mBlock.getKey()) != null) {
setVisible(mSilent, checkCanBeVisible(Ranking.IMPORTANCE_MIN, importance));

View File

@@ -133,6 +133,7 @@ public class ImportanceSeekBarPreference extends SeekBarPreference implements
mSeekBar.setThumbTintList(sliderTint);
if (mAutoOn) {
setProgress(NotificationListenerService.Ranking.IMPORTANCE_DEFAULT);
mSummary = getProgressSummary(
NotificationListenerService.Ranking.IMPORTANCE_UNSPECIFIED);
}

View File

@@ -30,6 +30,7 @@ import android.content.pm.PackageManager;
import android.content.pm.PackageManager.NameNotFoundException;
import android.os.Bundle;
import android.os.UserHandle;
import android.os.UserManager;
import android.provider.Settings;
import android.service.notification.NotificationListenerService.Ranking;
import android.support.v7.preference.DropDownPreference;
@@ -54,6 +55,7 @@ abstract public class NotificationSettingsBase extends SettingsPreferenceFragmen
protected static final String KEY_SILENT = "silent";
protected PackageManager mPm;
protected UserManager mUm;
protected final NotificationBackend mBackend = new NotificationBackend();
protected Context mContext;
protected boolean mCreated;
@@ -94,6 +96,7 @@ abstract public class NotificationSettingsBase extends SettingsPreferenceFragmen
}
mPm = getPackageManager();
mUm = (UserManager) mContext.getSystemService(Context.USER_SERVICE);
mPkg = args != null && args.containsKey(AppInfoBase.ARG_PACKAGE_NAME)
? args.getString(AppInfoBase.ARG_PACKAGE_NAME)