aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--ChangeLog.ja6
-rw-r--r--src/folderview.c8
-rw-r--r--src/summaryview.c13
4 files changed, 30 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 7c841ef5..90250f2e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
2006-02-09
+ * src/summaryview.c
+ src/folderview.c: prohibit move/copy from/to queue folders, and
+ move/copy to virtual folders.
+
+2006-02-09
+
* version 2.2.0rc
2006-02-08
diff --git a/ChangeLog.ja b/ChangeLog.ja
index af8db6f4..b0c881c9 100644
--- a/ChangeLog.ja
+++ b/ChangeLog.ja
@@ -1,5 +1,11 @@
2006-02-09
+ * src/summaryview.c
+ src/folderview.c: 送信待ちフォルダから/への移動/コピーと、仮想
+ フォルダへの移動/コピーを抑制するようにした。
+
+2006-02-09
+
* version 2.2.0rc
2006-02-08
diff --git a/src/folderview.c b/src/folderview.c
index 1ba79a79..0aa42588 100644
--- a/src/folderview.c
+++ b/src/folderview.c
@@ -2886,7 +2886,9 @@ static gboolean folderview_drag_motion_cb(GtkWidget *widget,
gtk_tree_model_get_iter(model, &iter, path);
gtk_tree_model_get(model, &iter, COL_FOLDER_ITEM, &item, -1);
src_item = folderview->summaryview->folder_item;
- if (src_item && src_item != item)
+ if (src_item && src_item != item &&
+ src_item->stype != F_QUEUE && item->stype != F_QUEUE &&
+ item->stype != F_VIRTUAL)
acceptable = FOLDER_ITEM_CAN_ADD(item);
} else
remove_auto_expand_timeout(folderview);
@@ -2982,7 +2984,9 @@ static void folderview_drag_received_cb(GtkWidget *widget,
gtk_tree_model_get(model, &iter, COL_FOLDER_ITEM, &item, -1);
src_item = folderview->summaryview->folder_item;
- if (FOLDER_ITEM_CAN_ADD(item) && src_item && src_item != item) {
+ if (FOLDER_ITEM_CAN_ADD(item) && src_item && src_item != item &&
+ src_item->stype != F_QUEUE && item->stype != F_QUEUE &&
+ item->stype != F_VIRTUAL) {
if ((context->actions & GDK_ACTION_MOVE) != 0 &&
FOLDER_ITEM_CAN_ADD(src_item)) {
summary_move_selected_to(folderview->summaryview, item);
diff --git a/src/summaryview.c b/src/summaryview.c
index a11f9deb..67770b29 100644
--- a/src/summaryview.c
+++ b/src/summaryview.c
@@ -3147,6 +3147,8 @@ static void summary_move_row_to(SummaryView *summaryview, GtkTreeIter *iter,
MsgInfo *msginfo;
g_return_if_fail(to_folder != NULL);
+ if (to_folder->stype == F_QUEUE || to_folder->stype == F_VIRTUAL)
+ return;
GET_MSG_INFO(msginfo, iter);
@@ -3188,7 +3190,11 @@ void summary_move_selected_to(SummaryView *summaryview, FolderItem *to_folder)
if (!to_folder) return;
if (!summaryview->folder_item ||
- FOLDER_TYPE(summaryview->folder_item->folder) == F_NEWS) return;
+ FOLDER_TYPE(summaryview->folder_item->folder) == F_NEWS)
+ return;
+ if (summaryview->folder_item->stype == F_QUEUE ||
+ to_folder->stype == F_QUEUE || to_folder->stype == F_VIRTUAL)
+ return;
if (summary_is_locked(summaryview)) return;
@@ -3239,6 +3245,8 @@ static void summary_copy_row_to(SummaryView *summaryview, GtkTreeIter *iter,
MsgInfo *msginfo;
g_return_if_fail(to_folder != NULL);
+ if (to_folder->stype == F_QUEUE || to_folder->stype == F_VIRTUAL)
+ return;
GET_MSG_INFO(msginfo, iter);
@@ -3280,6 +3288,9 @@ void summary_copy_selected_to(SummaryView *summaryview, FolderItem *to_folder)
if (!to_folder) return;
if (!summaryview->folder_item) return;
+ if (summaryview->folder_item->stype == F_QUEUE ||
+ to_folder->stype == F_QUEUE || to_folder->stype == F_VIRTUAL)
+ return;
if (summary_is_locked(summaryview)) return;