From Kovarththanan Rajaratnam:
authoretxrab <etxrab@f5534014-38df-0310-8fa8-9805f1628bb7>
Fri, 24 Jul 2009 21:25:21 +0000 (21:25 +0000)
committeretxrab <etxrab@f5534014-38df-0310-8fa8-9805f1628bb7>
Fri, 24 Jul 2009 21:25:21 +0000 (21:25 +0000)
New packet list: enable packet history
Me: Add a comment.

git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@29188 f5534014-38df-0310-8fa8-9805f1628bb7

gtk/new_packet_list.c
gtk/packet_list_store.c

index a6ab3192bd206e43b4535595fa2300e4b2bb3f24..328a14ee09a2906d9a850bbee7568cd7051bb9c2 100644 (file)
@@ -45,6 +45,7 @@
 #include "globals.h"
 #include "gtk/gtkglobals.h"
 #include "gtk/font_utils.h"
+#include "gtk/packet_history.h"
 #include "epan/column.h"
 #include "gtk/recent.h"
 #include "gtk/keys.h"
@@ -237,13 +238,7 @@ new_packet_list_find_row_from_data(gpointer data, gboolean select)
        if(!gtk_tree_model_get_iter_first(model, &iter))
                return -1;
 
-       row = row_from_iter(&iter);
-       fdata = new_packet_list_get_row_data(row);
-       
-       if(fdata == (frame_data*)data)
-               return row;
-
-       while (gtk_tree_model_iter_next (model,&iter)) {
+       do {
                row = row_from_iter(&iter);
                fdata = new_packet_list_get_row_data(row);
                
@@ -265,7 +260,7 @@ new_packet_list_find_row_from_data(gpointer data, gboolean select)
                        }
                        return row;
                }
-       }
+       } while (gtk_tree_model_iter_next (model,&iter));
 
     return -1;
 }
@@ -276,6 +271,7 @@ new_packet_list_select_cb(GtkTreeView *tree_view, gpointer data _U_)
        GtkTreeSelection *selection;
        GtkTreeIter iter;
        guint row;
+       frame_data *fdata;
 
        selection = gtk_tree_view_get_selection(tree_view);
        gtk_tree_selection_get_selected(selection, NULL, &iter);
@@ -287,6 +283,11 @@ new_packet_list_select_cb(GtkTreeView *tree_view, gpointer data _U_)
        row = row_from_iter(&iter);
 
        cf_select_packet(&cfile, row);
+
+       /* Add newly selected frame to packet history (breadcrumbs) */
+       fdata = new_packet_list_get_row_data(row);
+       if (fdata != NULL)
+               packet_history_add(fdata->num);
 }
 
 frame_data *
index 58d2d254a0ac6e28c5e46d40018fc248e49abc75..970d415a829daaf4281160d64b6b39a46f6bb9d3 100644 (file)
@@ -180,6 +180,9 @@ packet_list_class_init(PacketListClass *klass)
 
        object_class->finalize = packet_list_finalize;
 
+       /* XXX this seems to affect TreeView Application wide
+        * Move to main.c ??? as it's not a bad thing(tm)
+        */
        gtk_rc_parse_string (
                "style \"PacketList-style\"\n"
                "{\n"