From 93495d47a0e8d1aaa522b41700f78a9b42595b22 Mon Sep 17 00:00:00 2001 From: Srinivasa Ragavan Date: Fri, 13 Jan 2006 08:22:48 +0000 Subject: Fixes the scroll issue with the message list. 2006-01-13 Srinivasa Ragavan * 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 --- mail/em-folder-browser.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'mail/em-folder-browser.c') 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 -- cgit