Don't hide end call button until call is disconnected

Currently, the end call button is hidden the moment the user
initates a hangup. In the event that the call is not actually
disconnected, the UI is stuck in a "Hanging up" state that is

For the majority of calls that disconnect correctly, there should
be no user-perceptible difference in behavior. For calls that are
not disconnected correctly, the end call button will remain showing
so that hangup commands can continue to be sent that will eventually
disconnect the call correctly.

Bug: 19933863
Change-Id: I2ff2018d7d229615f5f57c599f74954ec7492f6b
diff --git a/src/com/android/incallui/ b/src/com/android/incallui/
index cb378a6..396632c 100644
--- a/src/com/android/incallui/
+++ b/src/com/android/incallui/
@@ -254,7 +254,8 @@
-        final boolean enableEndCallButton = Call.State.isConnectingOrConnected(callState) &&
+        final boolean enableEndCallButton = (Call.State.isConnectingOrConnected(callState)
+                || callState == Call.State.DISCONNECTING) &&
                 callState != Call.State.INCOMING && mPrimary != null;
         // Hide the end call button instantly if we're receiving an incoming call.