From 4f63084e896805cd54cb307f7cfef1f8a16a549c Mon Sep 17 00:00:00 2001
From: Edric Milaret <edric.ladent-milaret@savoirfairelinux.com>
Date: Thu, 11 Jun 2015 16:10:29 -0400
Subject: [PATCH] call: switch to first call on hold when hanging up another

Refs #75423

Change-Id: Ifb5e09c4d1f414078352aa2134547659bec31fea
---
 callwidget.cpp | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/callwidget.cpp b/callwidget.cpp
index 6c4625d..398433b 100644
--- a/callwidget.cpp
+++ b/callwidget.cpp
@@ -261,6 +261,13 @@ CallWidget::callStateChanged(Call* call, Call::State previousState)
         setActualCall(nullptr);
         ui->videoWidget->hide();
         displaySpinner(false);
+        auto onHoldCall = callModel_->getActiveCalls().first();
+        if (onHoldCall != nullptr) {
+            setActualCall(onHoldCall);
+            onHoldCall->performAction(Call::Action::HOLD);
+        }
+    } else if (call->state() == Call::State::HOLD) {
+        ui->videoWidget->hide();
     } else if (call->state() == Call::State::CURRENT) {
         displaySpinner(false);
         ui->videoWidget->show();
-- 
GitLab