From kde-commits Thu Jul 30 11:30:32 2009 From: George Kiagiadakis Date: Thu, 30 Jul 2009 11:30:32 +0000 To: kde-commits Subject: playground/network/kcall Message-Id: <1248953432.228910.4251.nullmailer () svn ! kde ! org> X-MARC-Message: https://marc.info/?l=kde-commits&m=124895343916036 SVN commit 1004509 by gkiagia: Add button to make video calls directly to contacts that are not in the contact list. Also restore the .FUTURE.InitialAudio parameter to the existing button to make audio calls. This doesn't work with sofiasip though, but it's better than making useless calls without initial streams. M +17 -3 mainwindow.cpp M +3 -1 mainwindow.h M +13 -6 mainwindow.ui --- trunk/playground/network/kcall/mainwindow.cpp #1004508:1004509 @@ -41,7 +41,8 @@ new ContactListController(ui->contactsTreeView, KCallApplication::instance()->contactsModel()); ui->accountComboBox->setModel(KCallApplication::instance()->contactsModel()); - connect(ui->dialButton, SIGNAL(clicked()), SLOT(onDialButtonClicked())); + connect(ui->dialAudioButton, SIGNAL(clicked()), SLOT(onDialAudioButtonClicked())); + connect(ui->dialVideoButton, SIGNAL(clicked()), SLOT(onDialVideoButtonClicked())); setupActions(); setupGUI(QSize(340, 460)); @@ -66,8 +67,18 @@ dialog->show(); } -void MainWindow::onDialButtonClicked() +void MainWindow::onDialAudioButtonClicked() { + makeDirectCall(false); +} + +void MainWindow::onDialVideoButtonClicked() +{ + makeDirectCall(true); +} + +void MainWindow::makeDirectCall(bool useVideo) +{ int row = ui->accountComboBox->currentIndex(); QString id = ui->contactHandleLineEdit->text(); if ( row < 0 || id.isEmpty() ) { @@ -85,7 +96,10 @@ TELEPATHY_INTERFACE_CHANNEL_TYPE_STREAMED_MEDIA); request.insert(TELEPATHY_INTERFACE_CHANNEL ".TargetHandleType", Tp::HandleTypeContact); request.insert(TELEPATHY_INTERFACE_CHANNEL ".TargetID", id); - // request.insert(TELEPATHY_INTERFACE_CHANNEL_TYPE_STREAMED_MEDIA ".FUTURE.InitialAudio", true); + request.insert(TELEPATHY_INTERFACE_CHANNEL_TYPE_STREAMED_MEDIA ".FUTURE.InitialAudio", true); + if ( useVideo ) { + 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/mainwindow.h #1004508:1004509 @@ -29,7 +29,9 @@ private slots: void showSettingsDialog(); - void onDialButtonClicked(); + void onDialAudioButtonClicked(); + void onDialVideoButtonClicked(); + void makeDirectCall(bool useVideo); private: void setupActions(); --- trunk/playground/network/kcall/mainwindow.ui #1004508:1004509 @@ -6,7 +6,7 @@ 0 0 - 285 + 300 388 @@ -35,7 +35,7 @@ Dial directly - + Qt::Vertical @@ -51,7 +51,7 @@ - + @@ -82,14 +82,21 @@ + + + + Dial (Audio only) + + + - + - Dial + Dial (Audio/Video) - + Qt::Vertical