Dangling fixes for outgoing calls.
CallsManager.INSTANCE = new CallsManager() -> new Switchboard()
Except that Switchboard tries to use INSTANCE in it's own
constructor...which is yet not initialized. Same problem with
InCallController.
Change-Id: Id0b6487e0e65ea3a90195392cbf1f3acc8c540ac
diff --git a/src/com/android/telecomm/CallsManager.java b/src/com/android/telecomm/CallsManager.java
index 2a621aa..529137c 100644
--- a/src/com/android/telecomm/CallsManager.java
+++ b/src/com/android/telecomm/CallsManager.java
@@ -80,8 +80,8 @@
* Initializes the required Telecomm components.
*/
private CallsManager() {
- mSwitchboard = new Switchboard();
- mInCallController = new InCallController();
+ mSwitchboard = new Switchboard(this);
+ mInCallController = new InCallController(this);
}
/**
diff --git a/src/com/android/telecomm/InCallController.java b/src/com/android/telecomm/InCallController.java
index dedc21c..435296b 100644
--- a/src/com/android/telecomm/InCallController.java
+++ b/src/com/android/telecomm/InCallController.java
@@ -78,8 +78,8 @@
/**
* Persists the specified parameters.
*/
- InCallController() {
- mCallsManager = CallsManager.getInstance();
+ InCallController(CallsManager callsManager) {
+ mCallsManager = callsManager;
}
// TODO(santoscordon): May be better to expose the IInCallService methods directly from this
diff --git a/src/com/android/telecomm/Switchboard.java b/src/com/android/telecomm/Switchboard.java
index 466f97f..c78cefe 100644
--- a/src/com/android/telecomm/Switchboard.java
+++ b/src/com/android/telecomm/Switchboard.java
@@ -92,8 +92,8 @@
/**
* Persists the specified parameters and initializes Switchboard.
*/
- Switchboard() {
- mCallsManager = CallsManager.getInstance();
+ Switchboard(CallsManager callsManager) {
+ mCallsManager = callsManager;
mOutgoingCallsManager = new OutgoingCallsManager(this);
mCallServiceFinder = new CallServiceFinder(this, mOutgoingCallsManager);
mSelectorFinder = new CallServiceSelectorFinder(this);