diff options
Diffstat (limited to 'java/com/android/incallui/InCallPresenter.java')
-rw-r--r-- | java/com/android/incallui/InCallPresenter.java | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/java/com/android/incallui/InCallPresenter.java b/java/com/android/incallui/InCallPresenter.java index 150499f73..aecf8911f 100644 --- a/java/com/android/incallui/InCallPresenter.java +++ b/java/com/android/incallui/InCallPresenter.java @@ -127,6 +127,7 @@ public class InCallPresenter implements CallList.Listener, AudioModeProvider.Aud private StatusBarNotifier statusBarNotifier; private ExternalCallNotifier externalCallNotifier; + private InCallVibrationHandler vibrationHandler; private ContactInfoCache contactInfoCache; private Context context; private final OnCheckBlockedListener onCheckBlockedListener = @@ -361,6 +362,9 @@ public class InCallPresenter implements CallList.Listener, AudioModeProvider.Aud .getEnrichedCallManager() .registerStateChangedListener(this.statusBarNotifier); + vibrationHandler = new InCallVibrationHandler(context); + addListener(vibrationHandler); + this.proximitySensor = proximitySensor; addListener(this.proximitySensor); @@ -1648,6 +1652,11 @@ public class InCallPresenter implements CallList.Listener, AudioModeProvider.Aud } statusBarNotifier = null; + if (vibrationHandler != null) { + removeListener(vibrationHandler); + } + vibrationHandler = null; + if (callList != null) { callList.removeListener(this); callList.removeListener(spamCallListListener); |