aboutsummaryrefslogtreecommitdiffstats
path: root/mail/em-folder-tree.c
diff options
context:
space:
mode:
authorMilan Crha <mcrha@redhat.com>2009-06-25 19:19:19 +0800
committerMilan Crha <mcrha@redhat.com>2009-06-25 19:19:19 +0800
commit7c8e8174bc891b9208b7d500e768dc2ca8ed7b33 (patch)
tree7d8ff68575b52509afbdf7e76b3cbde87b67008d /mail/em-folder-tree.c
parent7984b925c84692df2ea9d30480431c8a84c0b657 (diff)
downloadgsoc2013-evolution-7c8e8174bc891b9208b7d500e768dc2ca8ed7b33.tar
gsoc2013-evolution-7c8e8174bc891b9208b7d500e768dc2ca8ed7b33.tar.gz
gsoc2013-evolution-7c8e8174bc891b9208b7d500e768dc2ca8ed7b33.tar.bz2
gsoc2013-evolution-7c8e8174bc891b9208b7d500e768dc2ca8ed7b33.tar.lz
gsoc2013-evolution-7c8e8174bc891b9208b7d500e768dc2ca8ed7b33.tar.xz
gsoc2013-evolution-7c8e8174bc891b9208b7d500e768dc2ca8ed7b33.tar.zst
gsoc2013-evolution-7c8e8174bc891b9208b7d500e768dc2ca8ed7b33.zip
Bug #268644 - unread mail shortcut collides with gtk tree search
Diffstat (limited to 'mail/em-folder-tree.c')
-rw-r--r--mail/em-folder-tree.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/mail/em-folder-tree.c b/mail/em-folder-tree.c
index 31144935f9..1702713104 100644
--- a/mail/em-folder-tree.c
+++ b/mail/em-folder-tree.c
@@ -115,6 +115,7 @@ struct _EMFolderTreePrivate {
enum {
FOLDER_ACTIVATED, /* aka double-clicked or user hit enter */
FOLDER_SELECTED,
+ HIDDEN_KEY_EVENT,
LAST_SIGNAL
};
@@ -239,6 +240,15 @@ em_folder_tree_class_init (EMFolderTreeClass *klass)
G_TYPE_NONE, 2,
G_TYPE_STRING,
G_TYPE_STRING);
+
+ signals[HIDDEN_KEY_EVENT] =
+ g_signal_new ("hidden-key-event",
+ G_OBJECT_CLASS_TYPE (object_class),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (EMFolderTreeClass, hidden_key_event),
+ NULL, NULL,
+ g_cclosure_marshal_VOID__BOXED,
+ G_TYPE_NONE, 1, GDK_TYPE_EVENT);
}
static gboolean
@@ -2285,7 +2295,9 @@ emft_tree_button_press (GtkTreeView *treeview, GdkEventButton *event, EMFolderTr
static gboolean
emft_tree_user_event (GtkTreeView *treeview, GdkEvent *e, EMFolderTree *emft)
{
- if (e && e->type == GDK_KEY_PRESS && e->key.keyval == GDK_space) {
+ if (e && e->type == GDK_KEY_PRESS && (e->key.keyval == GDK_space || e->key.keyval == '.' || e->key.keyval == ',' || e->key.keyval == '[' || e->key.keyval == ']')) {
+ g_signal_emit (emft, signals [HIDDEN_KEY_EVENT], 0, e);
+
return TRUE;
}
if (!emft->priv->do_multiselect)