Revert "Add back in-call vibration features"
This reverts commit 8891d3427aefd06a665afa6368a71898c5e20668.
Change-Id: Ib0a7dfc04fc6267f043a3da3a9f29dc8fc413d7c
diff --git a/java/com/android/dialer/app/res/values/cm_strings.xml b/java/com/android/dialer/app/res/values/cm_strings.xml
index 336c820..b33349a 100644
--- a/java/com/android/dialer/app/res/values/cm_strings.xml
+++ b/java/com/android/dialer/app/res/values/cm_strings.xml
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright (C) 2013-2014 The CyanogenMod Project
+ Copyright (C) 2018 The LineageOS Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
@@ -18,13 +19,6 @@
<string name="incall_category_key" translatable="false">dialer_general_incall_category_key</string>
<string name="incall_category_title">In-call</string>
<string name="incall_enable_dnd_title">Enable Do Not Disturb during calls</string>
- <string name="incall_vibration_category_key" translatable="false">dialer_general_incall_vibration_category_key</string>
- <string name="incall_vibration_category_title">In-call vibration</string>
- <string name="incall_vibrate_outgoing_title">Vibrate on answer</string>
- <string name="incall_vibrate_call_waiting_title">Vibrate on call waiting</string>
- <string name="incall_vibrate_hangup_title">Vibrate on hang up</string>
- <string name="incall_vibrate_45_title">Vibrate every minute</string>
- <string name="incall_vibrate_45_summary">Vibrates at the 45 second mark of every minute during outgoing calls</string>
<string name="incall_dnd_dialog_message">In order to enable Do Not Disturb, the Phone app needs to be granted the permission to control the Do Not Disturb status.\nPlease allow it.</string>
<string name="allow">Allow</string>
<string name="deny">Deny</string>
diff --git a/java/com/android/dialer/app/res/xml/sound_settings.xml b/java/com/android/dialer/app/res/xml/sound_settings.xml
index 248a7ae..b862fd8 100644
--- a/java/com/android/dialer/app/res/xml/sound_settings.xml
+++ b/java/com/android/dialer/app/res/xml/sound_settings.xml
@@ -44,31 +44,14 @@
android:title="@string/dtmf_tone_length_title"/>
<PreferenceCategory
- android:key="@string/incall_vibration_category_key"
- android:title="@string/incall_vibration_category_title">
+ android:key="@string/incall_category_key"
+ android:title="@string/incall_category_title">
<SwitchPreference
android:defaultValue="false"
android:key="incall_enable_dnd"
android:title="@string/incall_enable_dnd_title"/>
- <CheckBoxPreference
- android:key="incall_vibrate_outgoing"
- android:title="@string/incall_vibrate_outgoing_title" />
-
- <CheckBoxPreference
- android:key="incall_vibrate_call_waiting"
- android:title="@string/incall_vibrate_call_waiting_title" />
-
- <CheckBoxPreference
- android:key="incall_vibrate_hangup"
- android:title="@string/incall_vibrate_hangup_title" />
-
- <CheckBoxPreference
- android:key="incall_vibrate_45secs"
- android:title="@string/incall_vibrate_45_title"
- android:summary="@string/incall_vibrate_45_summary" />
-
</PreferenceCategory>
<PreferenceCategory
diff --git a/java/com/android/dialer/app/settings/SoundSettingsFragment.java b/java/com/android/dialer/app/settings/SoundSettingsFragment.java
index 8afffd4..634f993 100644
--- a/java/com/android/dialer/app/settings/SoundSettingsFragment.java
+++ b/java/com/android/dialer/app/settings/SoundSettingsFragment.java
@@ -105,11 +105,7 @@
if (hasVibrator()) {
vibrateWhenRinging.setOnPreferenceChangeListener(this);
} else {
- PreferenceScreen ps = getPreferenceScreen();
- Preference inCallVibration = findPreference(
- context.getString(R.string.incall_vibration_category_key));
- ps.removePreference(vibrateWhenRinging);
- ps.removePreference(inCallVibration);
+ getPreferenceScreen().removePreference(vibrateWhenRinging);
vibrateWhenRinging = null;
}
diff --git a/java/com/android/incallui/InCallPresenter.java b/java/com/android/incallui/InCallPresenter.java
index 83ec9ab..4e90eb6 100644
--- a/java/com/android/incallui/InCallPresenter.java
+++ b/java/com/android/incallui/InCallPresenter.java
@@ -127,7 +127,6 @@
private StatusBarNotifier statusBarNotifier;
private ExternalCallNotifier externalCallNotifier;
- private InCallVibrationHandler vibrationHandler;
private InCallDndHandler dndHandler;
private ContactInfoCache contactInfoCache;
private Context context;
@@ -363,8 +362,6 @@
.getEnrichedCallManager()
.registerStateChangedListener(this.statusBarNotifier);
- vibrationHandler = new InCallVibrationHandler(context);
- addListener(vibrationHandler);
dndHandler = new InCallDndHandler(context);
addListener(dndHandler);
@@ -1656,11 +1653,6 @@
}
statusBarNotifier = null;
- if (vibrationHandler != null) {
- removeListener(vibrationHandler);
- }
- vibrationHandler = null;
-
if (dndHandler != null) {
removeListener(dndHandler);
}
diff --git a/java/com/android/incallui/InCallVibrationHandler.java b/java/com/android/incallui/InCallVibrationHandler.java
deleted file mode 100644
index 067d6bf..0000000
--- a/java/com/android/incallui/InCallVibrationHandler.java
+++ /dev/null
@@ -1,143 +0,0 @@
-/*
- * Copyright (C) 2014 The CyanogenMod 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.incallui;
-
-import android.content.Context;
-import android.content.SharedPreferences;
-import android.os.Handler;
-import android.os.Message;
-import android.os.Vibrator;
-import android.preference.PreferenceManager;
-import android.telecom.DisconnectCause;
-
-import com.android.incallui.call.CallList;
-import com.android.incallui.call.DialerCall;
-import com.android.incallui.call.state.DialerCallState;
-import com.android.incallui.InCallPresenter.InCallState;
-
-public class InCallVibrationHandler extends Handler implements
- InCallPresenter.InCallStateListener {
-
- private static final int MSG_VIBRATE_45_SEC = 1;
-
- private static final String KEY_VIBRATE_CALL_WAITING = "incall_vibrate_call_waiting";
- private static final String KEY_VIBRATE_OUTGOING = "incall_vibrate_outgoing";
- private static final String KEY_VIBRATE_45SECS = "incall_vibrate_45secs";
- private static final String KEY_VIBRATE_HANGUP = "incall_vibrate_hangup";
-
- private SharedPreferences prefs;
- private Vibrator vibrator;
- private DialerCall activeCall;
-
- public InCallVibrationHandler(Context context) {
- prefs = PreferenceManager.getDefaultSharedPreferences(context);
- vibrator = (Vibrator) context.getSystemService(Context.VIBRATOR_SERVICE);
- }
-
- @Override
- public void handleMessage(Message msg) {
- switch (msg.what) {
- case MSG_VIBRATE_45_SEC:
- vibrate(70, 0, 0);
- sendEmptyMessageDelayed(MSG_VIBRATE_45_SEC, 60000);
- break;
- }
- }
-
- @Override
- public void onStateChange(InCallState oldState, InCallState newState, CallList callList) {
- DialerCall activeCall = callList.getActiveCall();
-
- if (activeCall != null && this.activeCall == null) {
- Log.d(this, "Transition to active call " + activeCall);
- if (activeCall.isOutgoing()) {
- handleOutgoingCallVibration(activeCall);
- }
- this.activeCall = activeCall;
- } else if (activeCall != null && callList.getIncomingCall() != null
- && !callList.getIncomingCall().equals(activeCall)) {
- Log.d(this, "New incoming call" + callList.getIncomingCall());
- handleCallWaitingVibration(activeCall);
- } else if (activeCall == null && this.activeCall != null) {
- Log.d(this, "Transition from active call " + this.activeCall);
- handleCallEnd(this.activeCall);
- this.activeCall = null;
- }
- }
-
- private void handleOutgoingCallVibration(DialerCall call) {
- long durationMillis = System.currentTimeMillis() - call.getConnectTimeMillis();
- Log.d(this, "Start outgoing call: duration = " + durationMillis);
-
- if (prefs.getBoolean(KEY_VIBRATE_OUTGOING, false) && durationMillis < 200) {
- vibrate(100, 200, 0);
- }
- if (prefs.getBoolean(KEY_VIBRATE_45SECS, false)) {
- start45SecondVibration(durationMillis);
- }
- }
-
- private void handleCallWaitingVibration(DialerCall call) {
- Log.d(this, "Start call waiting vibration");
- if (prefs.getBoolean(KEY_VIBRATE_CALL_WAITING, false)) {
- vibrate(200, 300, 500);
- }
- }
-
- private void handleCallEnd(DialerCall call) {
- long durationMillis = System.currentTimeMillis() - call.getConnectTimeMillis();
- DisconnectCause cause = call.getDisconnectCause();
- boolean localDisconnect =
- // Disconnection not yet processed
- call.getState() == DialerCallState.DISCONNECTING ||
- // Disconnection already processed
- (cause != null && cause.getCode() == DisconnectCause.LOCAL);
-
- Log.d(this, "Ending active call: duration = " + durationMillis
- + ", locally disconnected = " + localDisconnect);
-
- if (prefs.getBoolean(KEY_VIBRATE_HANGUP, false)
- && !localDisconnect && durationMillis > 500) {
- vibrate(50, 100, 50);
- }
- // Stop 45-second vibration
- removeMessages(MSG_VIBRATE_45_SEC);
- }
-
- private void start45SecondVibration(long callDurationMillis) {
- callDurationMillis = callDurationMillis % 60000;
- Log.d(this, "vibrate start @" + callDurationMillis);
- removeMessages(MSG_VIBRATE_45_SEC);
-
- long timer;
- if (callDurationMillis > 45000) {
- // Schedule the alarm at the next minute + 45 secs
- timer = 45000 + 60000 - callDurationMillis;
- } else {
- // Schedule the alarm at the first 45 second mark
- timer = 45000 - callDurationMillis;
- }
- sendEmptyMessageDelayed(MSG_VIBRATE_45_SEC, timer);
- }
-
- private void vibrate(int v1, int p1, int v2) {
- long[] pattern = new long[] {
- 0, v1, p1, v2
- };
- vibrator.vibrate(pattern, -1);
- }
-}
diff --git a/java/com/android/incallui/call/DialerCall.java b/java/com/android/incallui/call/DialerCall.java
index 07cfe3f..1f4e49a 100644
--- a/java/com/android/incallui/call/DialerCall.java
+++ b/java/com/android/incallui/call/DialerCall.java
@@ -171,7 +171,6 @@
@Nullable private SpamStatus spamStatus;
private boolean isBlocked;
- private boolean isOutgoing;
private boolean didShowCameraPermission;
private boolean didDismissVideoChargesAlertDialog;
@@ -901,8 +900,6 @@
logState.dialerConnectTimeMillisElapsedRealtime == 0
? 0
: SystemClock.elapsedRealtime() - logState.dialerConnectTimeMillisElapsedRealtime;
- } else if (state == DialerCallState.DIALING || state == DialerCallState.CONNECTING) {
- isOutgoing = true;
}
}
@@ -911,10 +908,6 @@
this.clock = clock;
}
- public boolean isOutgoing() {
- return isOutgoing;
- }
-
public int getNumberPresentation() {
return telecomCall == null ? -1 : telecomCall.getDetails().getHandlePresentation();
}