summaryrefslogtreecommitdiff
path: root/java/com/android/voicemail/impl/settings/VoicemailRingtonePreference.java
diff options
context:
space:
mode:
authorZachary Heidepriem <zachh@google.com>2017-11-06 19:10:44 -0800
committerZachary Heidepriem <zachh@google.com>2017-11-06 19:10:44 -0800
commit7547d3e963dab2b1ef467ad27c3f0d25e150b50c (patch)
tree642c7b180b33d1371c1f474be03fbb8de2110f6d /java/com/android/voicemail/impl/settings/VoicemailRingtonePreference.java
parentb519cd522d472b5d7980cc015aa37c101be99386 (diff)
Move voicemail settings to dialer UI
The voicemail module should not contain any UI code. Bug: 37258159 Test: DialerSettingsActivityTest,VoicemailSettingsFragmentTest. A future CL is refactoring VoicemailChangePinActivity into a fragment. PiperOrigin-RevId: 174125949 Change-Id: I89cf6a083b0a0952332440d76e7ae0cb1c801931
Diffstat (limited to 'java/com/android/voicemail/impl/settings/VoicemailRingtonePreference.java')
-rw-r--r--java/com/android/voicemail/impl/settings/VoicemailRingtonePreference.java110
1 files changed, 0 insertions, 110 deletions
diff --git a/java/com/android/voicemail/impl/settings/VoicemailRingtonePreference.java b/java/com/android/voicemail/impl/settings/VoicemailRingtonePreference.java
deleted file mode 100644
index 22c729c60..000000000
--- a/java/com/android/voicemail/impl/settings/VoicemailRingtonePreference.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License
- */
-
-package com.android.voicemail.impl.settings;
-
-import android.annotation.TargetApi;
-import android.content.Context;
-import android.net.Uri;
-import android.os.Build.VERSION_CODES;
-import android.os.Handler;
-import android.os.Message;
-import android.preference.RingtonePreference;
-import android.telecom.PhoneAccountHandle;
-import android.telephony.TelephonyManager;
-import android.util.AttributeSet;
-import com.android.dialer.common.Assert;
-import com.android.dialer.util.SettingsUtil;
-
-/**
- * Looks up the voicemail ringtone's name asynchronously and updates the preference's summary when
- * it is created or updated.
- */
-@TargetApi(VERSION_CODES.O)
-public class VoicemailRingtonePreference extends RingtonePreference {
-
- /** Callback when the ringtone name has been fetched. */
- public interface VoicemailRingtoneNameChangeListener {
- void onVoicemailRingtoneNameChanged(CharSequence name);
- }
-
- private static final int MSG_UPDATE_VOICEMAIL_RINGTONE_SUMMARY = 1;
-
- private PhoneAccountHandle phoneAccountHandle;
- private final TelephonyManager telephonyManager;
-
- private VoicemailRingtoneNameChangeListener mVoicemailRingtoneNameChangeListener;
- private Runnable mVoicemailRingtoneLookupRunnable;
- private final Handler mVoicemailRingtoneLookupComplete =
- new Handler() {
- @Override
- public void handleMessage(Message msg) {
- switch (msg.what) {
- case MSG_UPDATE_VOICEMAIL_RINGTONE_SUMMARY:
- if (mVoicemailRingtoneNameChangeListener != null) {
- mVoicemailRingtoneNameChangeListener.onVoicemailRingtoneNameChanged(
- (CharSequence) msg.obj);
- }
- setSummary((CharSequence) msg.obj);
- break;
- default:
- Assert.fail();
- }
- }
- };
-
- public VoicemailRingtonePreference(Context context, AttributeSet attrs) {
- super(context, attrs);
- telephonyManager = context.getSystemService(TelephonyManager.class);
- }
-
- public void init(PhoneAccountHandle phoneAccountHandle, CharSequence oldRingtoneName) {
- this.phoneAccountHandle = phoneAccountHandle;
- setSummary(oldRingtoneName);
- mVoicemailRingtoneLookupRunnable =
- new Runnable() {
- @Override
- public void run() {
- SettingsUtil.getRingtoneName(
- getContext(),
- mVoicemailRingtoneLookupComplete,
- telephonyManager.getVoicemailRingtoneUri(phoneAccountHandle),
- MSG_UPDATE_VOICEMAIL_RINGTONE_SUMMARY);
- }
- };
-
- updateRingtoneName();
- }
-
- public void setVoicemailRingtoneNameChangeListener(VoicemailRingtoneNameChangeListener l) {
- mVoicemailRingtoneNameChangeListener = l;
- }
-
- @Override
- protected Uri onRestoreRingtone() {
- return telephonyManager.getVoicemailRingtoneUri(phoneAccountHandle);
- }
-
- @Override
- protected void onSaveRingtone(Uri ringtoneUri) {
- telephonyManager.setVoicemailRingtoneUri(phoneAccountHandle, ringtoneUri);
- updateRingtoneName();
- }
-
- private void updateRingtoneName() {
- new Thread(mVoicemailRingtoneLookupRunnable).start();
- }
-}