diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | ChangeLog.ja | 6 | ||||
-rw-r--r-- | src/folderview.c | 10 | ||||
-rw-r--r-- | src/folderview.h | 2 |
4 files changed, 24 insertions, 0 deletions
@@ -1,5 +1,11 @@ 2005-07-04 + * src/folderview.[ch]: lock button/key input while a folder is + loading (fixed selection becoming wrong when another folder was + clicked quickly). + +2005-07-04 + * src/mh.c: unified move_folder and rename_folder. 2005-07-04 diff --git a/ChangeLog.ja b/ChangeLog.ja index c15b1dbd..80a3cb6d 100644 --- a/ChangeLog.ja +++ b/ChangeLog.ja @@ -1,5 +1,11 @@ 2005-07-04 + * src/folderview.[ch]: フォルダを開こうとしている間はボタン/キー入力 + をロックするようにした(別のフォルダを素早くクリックしたときに + 選択状態が不正になるのを修正)。 + +2005-07-04 + * move_folder と rename_folder を統合。 2005-07-04 diff --git a/src/folderview.c b/src/folderview.c index 15b7f86a..eff37d90 100644 --- a/src/folderview.c +++ b/src/folderview.c @@ -1555,6 +1555,9 @@ static gboolean folderview_button_pressed(GtkWidget *widget, &path, NULL, NULL, NULL)) return TRUE; + if (folderview->selection_locked) + return TRUE; + if (event->button == 1 || event->button == 2) { folderview->open_folder = TRUE; } else if (event->button == 3) { @@ -1588,6 +1591,9 @@ static gboolean folderview_key_pressed(GtkWidget *widget, GdkEventKey *event, if (!event) return FALSE; + if (folderview->selection_locked) + return TRUE; + switch (event->keyval) { case GDK_Return: if (folderview->selected) { @@ -1688,6 +1694,8 @@ static void folderview_selection_changed(GtkTreeSelection *selection, gtk_tree_path_free(open_path); } + folderview->selection_locked = TRUE; + GTK_EVENTS_FLUSH(); opened = summary_show(folderview->summaryview, item, FALSE); @@ -1708,6 +1716,8 @@ static void folderview_selection_changed(GtkTreeSelection *selection, folderview_select_row_ref(folderview, folderview->opened); gtk_tree_path_free(path); + + folderview->selection_locked = FALSE; } static void folderview_row_expanded(GtkTreeView *treeview, GtkTreeIter *iter, diff --git a/src/folderview.h b/src/folderview.h index 5fb251f2..1787678a 100644 --- a/src/folderview.h +++ b/src/folderview.h @@ -58,6 +58,8 @@ struct _FolderView guint expand_timeout; guint scroll_timeout; + gboolean selection_locked; + GdkColor color_new; GdkColor color_noselect; |