diff --git a/sflphone-client-gnome/src/contacts/history.c b/sflphone-client-gnome/src/contacts/history.c
index f76dd62589befca8438300ba7660772bbebbbc3c..c547ac0fcab219d4d1cb72c706e3c64773f69753 100644
--- a/sflphone-client-gnome/src/contacts/history.c
+++ b/sflphone-client-gnome/src/contacts/history.c
@@ -98,8 +98,8 @@ static gboolean history_is_visible (GtkTreeModel* model, GtkTreeIter* iter, gpoi
                 else
                 {
                     // We need a match on the history_state_t and the current search type
-                    if ( (history_entry->_history_state + 1) == (int)get_current_history_search_type ())
-                        return g_regex_match_simple(search, text, G_REGEX_CASELESS, 0);
+                    return (history_entry->_history_state + 1) == (int)get_current_history_search_type () &&  
+                        g_regex_match_simple(search, text, G_REGEX_CASELESS, 0);
                 }
             }
         }
diff --git a/sflphone-client-gnome/src/contacts/searchbar.c b/sflphone-client-gnome/src/contacts/searchbar.c
index be8ad422b9c5b53c6c3230ecf834c138c6152856..f9cf62c909c0f11e1f5c10bdebbcd4c251489062 100644
--- a/sflphone-client-gnome/src/contacts/searchbar.c
+++ b/sflphone-client-gnome/src/contacts/searchbar.c
@@ -51,6 +51,8 @@ static void search_all (GtkWidget *item, GtkEntry  *entry)
     gtk_entry_set_icon_tooltip_text (entry, GTK_ENTRY_ICON_PRIMARY,
             "Search all\n"
             "Click here to change the search type");
+
+    history_search (HistorySearchType);
 } 
 
 static void search_by_missed (GtkWidget *item, GtkEntry  *entry)
@@ -62,6 +64,8 @@ static void search_by_missed (GtkWidget *item, GtkEntry  *entry)
     gtk_entry_set_icon_tooltip_text (entry, GTK_ENTRY_ICON_PRIMARY,
             "Search by missed call\n"
             "Click here to change the search type");
+
+    history_search (HistorySearchType);
 } 
 
 static void search_by_incoming (GtkWidget *item, GtkEntry *entry)
@@ -73,6 +77,8 @@ static void search_by_incoming (GtkWidget *item, GtkEntry *entry)
     gtk_entry_set_icon_tooltip_text (entry, GTK_ENTRY_ICON_PRIMARY,
             "Search by incoming call\n"
             "Click here to change the search type");
+
+    history_search (HistorySearchType);
 } 
 
 static void search_by_outgoing (GtkWidget *item, GtkEntry  *entry)
@@ -84,6 +90,8 @@ static void search_by_outgoing (GtkWidget *item, GtkEntry  *entry)
     gtk_entry_set_icon_tooltip_text (entry, GTK_ENTRY_ICON_PRIMARY,
             "Search by outgoing call\n"
             "Click here to change the search type");
+
+    history_search (HistorySearchType);
 } 
 
 static void icon_press_cb (GtkEntry *entry, gint position, GdkEventButton *event, gpointer data)