aboutsummaryrefslogtreecommitdiffstats
path: root/gtk
diff options
context:
space:
mode:
authorGerald Combs <gerald@wireshark.org>2006-11-21 01:27:29 +0000
committerGerald Combs <gerald@wireshark.org>2006-11-21 01:27:29 +0000
commit0c22180f93fc8d85812f5bf46ad708eee4e16e88 (patch)
treeb425abdb0a65f944360ef96dadcacdc340b14d75 /gtk
parent0fb45e0bf15c59b77b9f44eff01aa545520601bf (diff)
If a user starts typing text in the main window, append it to the
display filter instead of replacing it. Check for a valid character with a simple isprint() instead of a giant boolean expression paragraph. svn path=/trunk/; revision=19944
Diffstat (limited to 'gtk')
-rw-r--r--gtk/main.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/gtk/main.c b/gtk/main.c
index 5fac32b3b0..fea58b0f88 100644
--- a/gtk/main.c
+++ b/gtk/main.c
@@ -3802,13 +3802,11 @@ top_level_key_pressed_cb(GtkCTree *ctree _U_, GdkEventKey *event, gpointer user_
} else if (event->keyval == GDK_F7) {
packet_list_prev();
return TRUE;
- } else if ( (event->keyval >= GDK_0 && event->keyval <= GDK_9) ||
- (event->keyval >= GDK_A && event->keyval <= GDK_Z) ||
- (event->keyval >= GDK_a && event->keyval <= GDK_z) ||
- event->keyval == GDK_exclam || event->keyval == GDK_parenleft) {
+ } else if (isprint(event->keyval)) {
/* Forward the keypress on to the display filter entry */
if (main_display_filter_widget && !gtk_widget_is_focus(main_display_filter_widget)) {
gtk_window_set_focus(GTK_WINDOW(top_level), main_display_filter_widget);
+ gtk_editable_set_position(GTK_EDITABLE(main_display_filter_widget), -1);
}
return FALSE;
}