From 26d7e61577b8546218170bbe7dee6ddef055cfbd Mon Sep 17 00:00:00 2001 From: Simon Morlat <simon.morlat@linphone.org> Date: Tue, 14 Sep 2010 10:19:48 +0200 Subject: [PATCH] dtmfs start and stop according to how they are pressed --- gtk/main.c | 11 ++++++++--- mediastreamer2 | 2 +- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/gtk/main.c b/gtk/main.c index 8b416cf853..452c7783fb 100644 --- a/gtk/main.c +++ b/gtk/main.c @@ -1080,24 +1080,29 @@ void linphone_gtk_load_identities(void){ gtk_combo_box_set_active(box,def_index); } -static void linphone_gtk_dtmf_clicked(GtkButton *button){ +static void linphone_gtk_dtmf_pressed(GtkButton *button){ const char *label=gtk_button_get_label(button); GtkWidget *uri_bar=linphone_gtk_get_widget(gtk_widget_get_toplevel(GTK_WIDGET(button)),"uribar"); int pos=-1; gtk_editable_insert_text(GTK_EDITABLE(uri_bar),label,1,&pos); - linphone_core_play_dtmf (linphone_gtk_get_core(),label[0],100); + linphone_core_play_dtmf (linphone_gtk_get_core(),label[0],-1); if (linphone_core_in_call(linphone_gtk_get_core())){ linphone_core_send_dtmf(linphone_gtk_get_core(),label[0]); } } +static void linphone_gtk_dtmf_released(GtkButton *button){ + linphone_core_stop_dtmf (linphone_gtk_get_core()); +} + static void linphone_gtk_connect_digits(void){ GtkContainer *cont=GTK_CONTAINER(linphone_gtk_get_widget(linphone_gtk_get_main_window(),"dtmf_table")); GList *children=gtk_container_get_children(cont); GList *elem; for(elem=children;elem!=NULL;elem=elem->next){ GtkButton *button=GTK_BUTTON(elem->data); - g_signal_connect(G_OBJECT(button),"clicked",(GCallback)linphone_gtk_dtmf_clicked,NULL); + g_signal_connect(G_OBJECT(button),"pressed",(GCallback)linphone_gtk_dtmf_pressed,NULL); + g_signal_connect(G_OBJECT(button),"released",(GCallback)linphone_gtk_dtmf_released,NULL); } } diff --git a/mediastreamer2 b/mediastreamer2 index 955a7d6b8a..3103bc444e 160000 --- a/mediastreamer2 +++ b/mediastreamer2 @@ -1 +1 @@ -Subproject commit 955a7d6b8aa205e8a97d751dd8d3920de1595455 +Subproject commit 3103bc444eb3469cb8003b8e4d816cb918fb41fd -- GitLab