aboutsummaryrefslogtreecommitdiffstats
path: root/mail/em-folder-browser.c
diff options
context:
space:
mode:
authorSrinivasa Ragavan <sragavan@novell.com>2006-01-13 16:22:48 +0800
committerSrinivasa Ragavan <sragavan@src.gnome.org>2006-01-13 16:22:48 +0800
commit93495d47a0e8d1aaa522b41700f78a9b42595b22 (patch)
tree0fb8e5af40b6cc039a36a469204ac0cf3bc1a020 /mail/em-folder-browser.c
parent8496b2eafbed44f3730c5b8ccb98050fdd3e8206 (diff)
downloadgsoc2013-evolution-93495d47a0e8d1aaa522b41700f78a9b42595b22.tar.gz
gsoc2013-evolution-93495d47a0e8d1aaa522b41700f78a9b42595b22.tar.zst
gsoc2013-evolution-93495d47a0e8d1aaa522b41700f78a9b42595b22.zip
Fixes the scroll issue with the message list.
2006-01-13 Srinivasa Ragavan <sragavan@novell.com> * em-folder-browser.c: (emfb_etree_unfreeze), (emfb_list_built): * message-list.c: (message_list_setup_etree): Fixes the scroll issue with the message list. svn path=/trunk/; revision=31156
Diffstat (limited to 'mail/em-folder-browser.c')
-rw-r--r--mail/em-folder-browser.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/mail/em-folder-browser.c b/mail/em-folder-browser.c
index 4eac993fe0..efe3544c34 100644
--- a/mail/em-folder-browser.c
+++ b/mail/em-folder-browser.c
@@ -982,6 +982,16 @@ emfb_folder_changed(CamelFolder *folder, CamelFolderChangeInfo *changes, EMFolde
mail_async_event_emit(emfb->view.async, MAIL_ASYNC_GUI, (MailAsyncFunc)emfb_gui_folder_changed, folder, NULL, emfb);
}
+static void
+emfb_etree_unfreeze (GtkWidget *widget, GdkEvent *event, EMFolderView *emfv)
+{
+
+ ETableItem *item = e_tree_get_item (emfv->list->tree);
+
+ g_object_set_data (((GnomeCanvasItem *) item)->canvas, "freeze-cursor", 0);
+}
+
+
/* TODO: This should probably be handled by message-list, by storing/queueing
up the select operation if its busy rebuilding the message-list */
static void
@@ -1023,6 +1033,8 @@ emfb_list_built (MessageList *ml, EMFolderBrowser *emfb)
* e_canvas_item_region_show_relay() uses a timeout, we have to use a timeout of the
* same interval but a lower priority. */
emfb->priv->idle_scroll_id = g_timeout_add_full (G_PRIORITY_LOW, 250, (GSourceFunc) scroll_idle_cb, emfb, NULL);
+ /* FIXME: This is another ugly hack done to hide a bug that above hack leaves. */
+ g_signal_connect (((GtkScrolledWindow *) ml)->vscrollbar, "button-press-event", G_CALLBACK (emfb_etree_unfreeze), emfb);
}
static void