diff --git a/sflphone-gtk/src/calltree.c b/sflphone-gtk/src/calltree.c index 3c0b0260b078f33ef28ccca22af2543f42f74e2c..a61e285c9230d73cae3631312224c6cbc0243f21 100644 --- a/sflphone-gtk/src/calltree.c +++ b/sflphone-gtk/src/calltree.c @@ -489,6 +489,27 @@ create_toolbar () return ret; } +static gboolean +on_key_released (GtkWidget *widget, + GdkEventKey *event, + gpointer user_data) +{ + // If a modifier key is pressed, it's a shortcut, pass along + if(event->state & GDK_CONTROL_MASK || + event->state & GDK_MOD1_MASK || + event->keyval == 60 || // < + event->keyval == 62 || // > + event->keyval == 34 || // " + event->keyval == 65361 || // left arrow + event->keyval == 65363 || // right arrow + event->keyval >= 65470 || // F-keys + event->keyval == 32 // space + ) + return FALSE; + else + sflphone_keypad(event->keyval, event->string); + return TRUE; +} void create_call_tree (calltab_t* tab) @@ -505,6 +526,7 @@ create_call_tree (calltab_t* tab) sw = gtk_scrolled_window_new( NULL, NULL); gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw), GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC); gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(sw), GTK_SHADOW_IN); + g_signal_connect (G_OBJECT ( sw ), "key-press-event",G_CALLBACK (on_key_released), NULL); tab->store = gtk_list_store_new (3, GDK_TYPE_PIXBUF,// Icon @@ -513,6 +535,7 @@ create_call_tree (calltab_t* tab) ); tab->view = gtk_tree_view_new_with_model (GTK_TREE_MODEL(tab->store)); + gtk_tree_view_set_enable_search( GTK_TREE_VIEW(tab->view), FALSE); gtk_tree_view_set_headers_visible (GTK_TREE_VIEW(tab->view), FALSE); g_signal_connect (G_OBJECT (tab->view), "row-activated", G_CALLBACK (row_activated), @@ -526,6 +549,7 @@ create_call_tree (calltab_t* tab) G_CALLBACK (button_pressed), NULL); + rend = gtk_cell_renderer_pixbuf_new(); col = gtk_tree_view_column_new_with_attributes ("Icon", rend, diff --git a/sflphone-gtk/src/historyfilter.c b/sflphone-gtk/src/historyfilter.c index 0f68c8ba388b819cfc87559442de2294ba76b415..76d21a07533a72867594acdecc37ba990b01426e 100644 --- a/sflphone-gtk/src/historyfilter.c +++ b/sflphone-gtk/src/historyfilter.c @@ -20,6 +20,8 @@ #include <historyfilter.h> #include <calltree.h> +GtkWidget * filter_entry; + GtkTreeModel* create_filter(GtkTreeModel* child) { @@ -69,6 +71,7 @@ create_filter_entry() GtkWidget* ret = gtk_hbox_new(FALSE, 0); filter_entry = sexy_icon_entry_new(); + //filter_entry = gtk_entry_new(); image = gtk_image_new_from_stock( GTK_STOCK_FIND , GTK_ICON_SIZE_SMALL_TOOLBAR); sexy_icon_entry_set_icon( SEXY_ICON_ENTRY(filter_entry), SEXY_ICON_ENTRY_PRIMARY , GTK_IMAGE(image) ); sexy_icon_entry_add_clear_button( SEXY_ICON_ENTRY(filter_entry) ); diff --git a/sflphone-gtk/src/historyfilter.h b/sflphone-gtk/src/historyfilter.h index 2fd81ea25f136cae6b119186acc9dbae332e790f..72d46b8ce7d640dbd5ae0f1c9b9adb2eb2462b66 100644 --- a/sflphone-gtk/src/historyfilter.h +++ b/sflphone-gtk/src/historyfilter.h @@ -24,10 +24,6 @@ #include <gtk/gtk.h> #include <libsexy/sexy-icon-entry.h> - - -GtkWidget * filter_entry; - GtkTreeModel* create_filter(GtkTreeModel* child); gboolean is_visible(GtkTreeModel* model, GtkTreeIter* iter, gpointer data); diff --git a/sflphone-gtk/src/mainwindow.c b/sflphone-gtk/src/mainwindow.c index 78bd04bbffc310801e1135f4855fcdf3d52f30a0..ddf0124d5e05dcd7bbdef5a178d91cd4927d581b 100644 --- a/sflphone-gtk/src/mainwindow.c +++ b/sflphone-gtk/src/mainwindow.c @@ -93,31 +93,6 @@ main_window_ask_quit(){ return TRUE; } -static gboolean -on_key_released (GtkWidget *widget, - GdkEventKey *event, - gpointer user_data) -{ -#ifdef DEBUG - g_print("KEY %s, %d\n", event->string, event->keyval); -#endif - // If a modifier key is pressed, it's a shortcut, pass along - if(event->state & GDK_CONTROL_MASK || - event->state & GDK_MOD1_MASK || - event->keyval == 60 || // < - event->keyval == 62 || // > - event->keyval == 34 || // " - event->keyval == 65361 || // left arrow - event->keyval == 65363 || // right arrow - event->keyval >= 65470 || // F-keys - event->keyval == 32 // space - ) - return FALSE; - g_print("search bar active : %s\n", gtk_widget_is_focus(GTK_WIDGET( filterEntry ))); - sflphone_keypad(event->keyval, event->string); - return TRUE; -} - void create_main_window () { @@ -137,8 +112,6 @@ create_main_window () */ g_signal_connect (G_OBJECT (window), "delete-event", G_CALLBACK (on_delete), NULL); - //g_signal_connect (G_OBJECT (window), "key-press-event", - // G_CALLBACK (on_key_released), NULL); /* Create an accel group for window's shortcuts */ accelGroup = gtk_accel_group_new ();