Commit 26d7e615 authored by Simon Morlat's avatar Simon Morlat
Browse files

dtmfs start and stop according to how they are pressed

parent 55aa245f
No related merge requests found
Showing with 9 additions and 4 deletions
...@@ -1080,24 +1080,29 @@ void linphone_gtk_load_identities(void){ ...@@ -1080,24 +1080,29 @@ void linphone_gtk_load_identities(void){
gtk_combo_box_set_active(box,def_index); 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); const char *label=gtk_button_get_label(button);
GtkWidget *uri_bar=linphone_gtk_get_widget(gtk_widget_get_toplevel(GTK_WIDGET(button)),"uribar"); GtkWidget *uri_bar=linphone_gtk_get_widget(gtk_widget_get_toplevel(GTK_WIDGET(button)),"uribar");
int pos=-1; int pos=-1;
gtk_editable_insert_text(GTK_EDITABLE(uri_bar),label,1,&pos); 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())){ if (linphone_core_in_call(linphone_gtk_get_core())){
linphone_core_send_dtmf(linphone_gtk_get_core(),label[0]); 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){ static void linphone_gtk_connect_digits(void){
GtkContainer *cont=GTK_CONTAINER(linphone_gtk_get_widget(linphone_gtk_get_main_window(),"dtmf_table")); GtkContainer *cont=GTK_CONTAINER(linphone_gtk_get_widget(linphone_gtk_get_main_window(),"dtmf_table"));
GList *children=gtk_container_get_children(cont); GList *children=gtk_container_get_children(cont);
GList *elem; GList *elem;
for(elem=children;elem!=NULL;elem=elem->next){ for(elem=children;elem!=NULL;elem=elem->next){
GtkButton *button=GTK_BUTTON(elem->data); 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);
} }
} }
......
mediastreamer2 @ 3103bc44
Subproject commit 955a7d6b8aa205e8a97d751dd8d3920de1595455 Subproject commit 3103bc444eb3469cb8003b8e4d816cb918fb41fd
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment