[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    playground/network/kcall
From:       George Kiagiadakis <gkiagiad () csd ! uoc ! gr>
Date:       2009-07-23 14:41:42
Message-ID: 1248360102.126840.28758.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 1001521 by gkiagia:

Add a button to make video calls (using the FUTURE.InitialVideo flag on the channel \
request).

 M  +19 -3     contactlistcontroller.cpp  
 M  +3 -1      contactlistcontroller.h  


--- trunk/playground/network/kcall/contactlistcontroller.cpp #1001520:1001521
@@ -49,9 +49,12 @@
 
     // contact menu
     d->contactMenu = new KMenu(view);
-    KAction *callAction = new KAction(KIcon("voicecall"), i18nc("@action:inmenu", \
                "Call"), d->contactMenu);
-    connect(callAction, SIGNAL(triggered()), SLOT(callContact()));
+    KAction *callAction = new KAction(KIcon("voicecall"), i18nc("@action:inmenu", \
"Voice call"), d->contactMenu); +    connect(callAction, SIGNAL(triggered()), \
SLOT(callContactVoice()));  d->contactMenu->addAction(callAction);
+    callAction = new KAction(KIcon("camera-web"), i18nc("@action:inmenu", "Video \
call"), d->contactMenu); +    connect(callAction, SIGNAL(triggered()), \
SLOT(callContactVideo())); +    d->contactMenu->addAction(callAction);
 
     // account menu
     d->accountMenu = new KMenu(view);
@@ -89,8 +92,18 @@
     }
 }
 
-void ContactListController::callContact()
+void ContactListController::callContactVoice()
 {
+    callContact(false);
+}
+
+void ContactListController::callContactVideo()
+{
+    callContact(true);
+}
+
+void ContactListController::callContact(bool useInitialVideo)
+{
     Q_ASSERT(d->currentIndex.isValid());
     Tp::ContactPtr contact = \
d->currentIndex.data(KCall::ObjectPtrRole).value<Tp::ContactPtr>();  Q_ASSERT( \
!contact.isNull() ); @@ -105,6 +118,9 @@
     request.insert(TELEPATHY_INTERFACE_CHANNEL ".TargetHandleType", \
                Tp::HandleTypeContact);
     request.insert(TELEPATHY_INTERFACE_CHANNEL ".TargetHandle", \
                contact->handle()[0]);
     request.insert(TELEPATHY_INTERFACE_CHANNEL_TYPE_STREAMED_MEDIA \
".FUTURE.InitialAudio", true); +    if ( useInitialVideo ) {
+        request.insert(TELEPATHY_INTERFACE_CHANNEL_TYPE_STREAMED_MEDIA \
".FUTURE.InitialVideo", true); +    }
     account->ensureChannel(request, QDateTime::currentDateTime(), \
"org.freedesktop.Telepathy.Client.kcall_handler");  }
 
--- trunk/playground/network/kcall/contactlistcontroller.h #1001520:1001521
@@ -31,7 +31,9 @@
 
 private slots:
     void contextMenuRequested(const QPoint & pos);
-    void callContact();
+    void callContactVoice();
+    void callContactVideo();
+    void callContact(bool useInitialVideo);
     void setStatus(int statusIndex);
 
 private:


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic