diff options
author | John Spurlock <jspurlock@google.com> | 2015-06-04 14:48:01 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2015-06-04 14:48:02 +0000 |
commit | 34a78be5844f3e12fb6abccef12646d3c800fe7a (patch) | |
tree | b4b5820f2cf3e38cec09c8427f3e966aeefab6b2 /src/com/android/settings/notification | |
parent | 41012d5e7b37fe5c2373f3215612d26331f40ba0 (diff) | |
parent | c5bab237f577d743f78db923b0449566d34fd1d4 (diff) | |
download | packages_apps_Settings-34a78be5844f3e12fb6abccef12646d3c800fe7a.zip packages_apps_Settings-34a78be5844f3e12fb6abccef12646d3c800fe7a.tar.gz packages_apps_Settings-34a78be5844f3e12fb6abccef12646d3c800fe7a.tar.bz2 |
Merge "Settings: Enable "ok" dialog button for no-op changes to existing zen rules." into mnc-dev
Diffstat (limited to 'src/com/android/settings/notification')
-rw-r--r-- | src/com/android/settings/notification/ZenRuleNameDialog.java | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/com/android/settings/notification/ZenRuleNameDialog.java b/src/com/android/settings/notification/ZenRuleNameDialog.java index 937940a..1279ee6 100644 --- a/src/com/android/settings/notification/ZenRuleNameDialog.java +++ b/src/com/android/settings/notification/ZenRuleNameDialog.java @@ -48,6 +48,7 @@ public abstract class ZenRuleNameDialog { private final AlertDialog mDialog; private final EditText mEditText; private final RadioGroup mTypes; + private final String mOriginalRuleName; private final ArraySet<String> mExistingNames; private final ServiceListing mServiceListing; private final RuleInfo[] mExternalRules = new RuleInfo[3]; @@ -57,6 +58,7 @@ public abstract class ZenRuleNameDialog { ArraySet<String> existingNames) { mServiceListing = serviceListing; mIsNew = ruleName == null; + mOriginalRuleName = ruleName; final View v = LayoutInflater.from(context).inflate(R.layout.zen_rule_name, null, false); mEditText = (EditText) v.findViewById(R.id.rule_name); if (!mIsNew) { @@ -79,7 +81,12 @@ public abstract class ZenRuleNameDialog { .setPositiveButton(R.string.okay, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { - onOk(trimmedText(), selectedRuleInfo()); + final String newName = trimmedText(); + if (!mIsNew && mOriginalRuleName != null + && mOriginalRuleName.equalsIgnoreCase(newName)) { + return; // no change to an existing rule, just dismiss + } + onOk(newName, selectedRuleInfo()); } }) .setOnDismissListener(new OnDismissListener() { @@ -148,7 +155,8 @@ public abstract class ZenRuleNameDialog { private void updatePositiveButton() { final String name = trimmedText(); final boolean validName = !TextUtils.isEmpty(name) - && !mExistingNames.contains(name.toLowerCase()); + && (name.equalsIgnoreCase(mOriginalRuleName) + || !mExistingNames.contains(name.toLowerCase())); mDialog.getButton(DialogInterface.BUTTON_POSITIVE).setEnabled(validName); } |