From e46fd0d94e6b46ac2e0b07eeb79f36d21d10519c Mon Sep 17 00:00:00 2001
From: Nicolas Jager <nicolas.jager@savoirfairelinux.com>
Date: Sun, 30 Oct 2016 09:26:27 -0400
Subject: [PATCH] internal : simplification for CallStatus in the UI

Change-Id: I00bc4c6b774818a4cd52baaa92433a80fb060b69
Tuleap: #1282
---
 Globals.h           |  6 ++----
 MainPage.xaml.cpp   | 12 ++++++------
 RingD.cpp           | 16 +++++-----------
 SmartPanel.xaml.cpp |  7 +++----
 SmartPanelItem.cpp  |  2 +-
 VideoPage.xaml.cpp  |  2 +-
 6 files changed, 18 insertions(+), 27 deletions(-)

diff --git a/Globals.h b/Globals.h
index 18766cb..ccfc974 100644
--- a/Globals.h
+++ b/Globals.h
@@ -3,12 +3,10 @@ namespace RingClientUWP
 /* public enumerations. */
 public enum class CallStatus {
     NONE,
-    INCOMING_RINGING,
-    OUTGOING_RINGING,
-    SEARCHING,
+    RINGING,
+    CONNECTING,
     IN_PROGRESS,
     PAUSED,
-    ENDED,
     TERMINATING
 };
 
diff --git a/MainPage.xaml.cpp b/MainPage.xaml.cpp
index d0f44c2..70f8418 100644
--- a/MainPage.xaml.cpp
+++ b/MainPage.xaml.cpp
@@ -76,11 +76,11 @@ MainPage::MainPage()
                        Platform::Object^>(this, &MainPage::DisplayProperties_DpiChanged));
 
     visibilityChangedEventToken = Window::Current->VisibilityChanged +=
-        ref new WindowVisibilityChangedEventHandler(this, &MainPage::Application_VisibilityChanged);
+                                      ref new WindowVisibilityChangedEventHandler(this, &MainPage::Application_VisibilityChanged);
     applicationSuspendingEventToken = Application::Current->Suspending +=
-        ref new SuspendingEventHandler(this, &MainPage::Application_Suspending);
+                                          ref new SuspendingEventHandler(this, &MainPage::Application_Suspending);
     applicationResumingEventToken = Application::Current->Resuming +=
-        ref new EventHandler<Object^>(this, &MainPage::Application_Resuming);
+                                        ref new EventHandler<Object^>(this, &MainPage::Application_Resuming);
 }
 
 void
@@ -250,7 +250,7 @@ void RingClientUWP::MainPage::OnstateChange(Platform::String ^callId, RingClient
 
     switch (state) {
     /* send the user to the peer's message text page */
-    case CallStatus::ENDED:
+    case CallStatus::NONE:
     {
         if (item)
             OnsummonMessageTextPage();
@@ -370,9 +370,9 @@ MainPage::BeginExtendedExecution()
     newSession->Reason = ExtendedExecutionReason::SavingData;
     newSession->Description = "Extended Execution";
     sessionRevokedToken = (newSession->Revoked += ref new TypedEventHandler<Object^,
-        ExtendedExecutionRevokedEventArgs^>(this, &MainPage::SessionRevoked));
+                           ExtendedExecutionRevokedEventArgs^>(this, &MainPage::SessionRevoked));
     return create_task(newSession->RequestExtensionAsync())
-        .then([=](ExtendedExecutionResult result){
+    .then([=](ExtendedExecutionResult result) {
         try {
             switch (result)
             {
diff --git a/RingD.cpp b/RingD.cpp
index 5ba2219..0e96a91 100644
--- a/RingD.cpp
+++ b/RingD.cpp
@@ -391,7 +391,7 @@ RingClientUWP::RingD::startDaemon()
                     CoreDispatcherPriority::High, ref new DispatchedHandler([=]()
                 {
                     incomingCall(accountId2, callId2, from2);
-                    stateChange(callId2, CallStatus::INCOMING_RINGING, 0);
+                    stateChange(callId2, CallStatus::RINGING, 0);
 
                     auto contact = ContactsViewModel::instance->findContactByName(from2);
                     auto item = SmartPanelItemsViewModel::instance->findItem(contact);
@@ -413,7 +413,7 @@ RingClientUWP::RingD::startDaemon()
 
                 auto state3 = translateCallStatus(state2);
 
-                if (state3 == CallStatus::ENDED)
+                if (state3 == CallStatus::NONE)
                     DRing::hangUp(callId); // solve a bug in the daemon API.
 
 
@@ -840,19 +840,13 @@ RingD::dequeueTasks()
 RingClientUWP::CallStatus RingClientUWP::RingD::translateCallStatus(String^ state)
 {
     if (state == "INCOMING")
-        return CallStatus::INCOMING_RINGING;
+        return CallStatus::RINGING;
 
     if (state == "CURRENT")
         return CallStatus::IN_PROGRESS;
 
-    if (state == "OVER")
-        return CallStatus::ENDED;
-
-    if (state == "RINGING")
-        return CallStatus::OUTGOING_RINGING;
-
-    if (state == "CONNECTING")
-        return CallStatus::SEARCHING;
+    if (state == "CONNECTING" || state == "RINGING")
+        return CallStatus::CONNECTING;
 
 
     return CallStatus::NONE;
diff --git a/SmartPanel.xaml.cpp b/SmartPanel.xaml.cpp
index 5d83d32..8ffbbcb 100644
--- a/SmartPanel.xaml.cpp
+++ b/SmartPanel.xaml.cpp
@@ -113,7 +113,6 @@ SmartPanel::SmartPanel()
 
         switch (state) {
         case CallStatus::NONE:
-        case CallStatus::ENDED:
         {
             item->_callId = "";
             break;
@@ -532,7 +531,7 @@ Object ^ RingClientUWP::Views::IncomingVisibility::Convert(Object ^ value, Windo
 {
     auto state = static_cast<CallStatus>(value);
 
-    if (state == CallStatus::INCOMING_RINGING)
+    if (state == CallStatus::RINGING)
         return  Windows::UI::Xaml::Visibility::Visible;
     else
         return  Windows::UI::Xaml::Visibility::Collapsed;
@@ -551,7 +550,7 @@ Object ^ RingClientUWP::Views::OutGoingVisibility::Convert(Object ^ value, Windo
 {
     auto state = static_cast<CallStatus>(value);
 
-    if (state == CallStatus::SEARCHING || state == CallStatus::OUTGOING_RINGING)
+    if (state == CallStatus::CONNECTING || state == CallStatus::RINGING)
         return  Windows::UI::Xaml::Visibility::Visible;
     else
         return  Windows::UI::Xaml::Visibility::Collapsed;
@@ -569,7 +568,7 @@ Object ^ RingClientUWP::Views::HasAnActiveCall::Convert(Object ^ value, Windows:
 {
     auto state = static_cast<CallStatus>(value);
 
-    if (state == CallStatus::NONE || state == CallStatus::ENDED)
+    if (state == CallStatus::NONE)
         return Windows::UI::Xaml::Visibility::Collapsed;
     else
         return Windows::UI::Xaml::Visibility::Visible;
diff --git a/SmartPanelItem.cpp b/SmartPanelItem.cpp
index ebf3eee..ebe9dc3 100644
--- a/SmartPanelItem.cpp
+++ b/SmartPanelItem.cpp
@@ -51,6 +51,6 @@ SmartPanelItem::NotifyPropertyChanged(String^ propertyName)
 void RingClientUWP::Controls::SmartPanelItem::OncallPlaced(Platform::String ^callId)
 {
     if (_callId == callId) {
-        _callStatus = CallStatus::SEARCHING;
+        _callStatus = CallStatus::CONNECTING;
     }
 }
diff --git a/VideoPage.xaml.cpp b/VideoPage.xaml.cpp
index 99a1a3c..2c5fd07 100644
--- a/VideoPage.xaml.cpp
+++ b/VideoPage.xaml.cpp
@@ -120,7 +120,7 @@ VideoPage::VideoPage()
     RingD::instance->stateChange +=
         ref new StateChange([&](String^ callId, CallStatus state, int code)
     {
-        if (state == CallStatus::ENDED) {
+        if (state == CallStatus::NONE) {
             Video::VideoManager::instance->rendererManager()->raiseClearRenderTarget();
         }
     });
-- 
GitLab