From: Sergio Villar Senin Date: Wed, 23 Jul 2008 12:19:55 +0000 (+0000) Subject: * Fixes NB#87093, backspace deletes attachments from editor X-Git-Tag: git_migration_finished~1254 X-Git-Url: http://git.maemo.org/git/?p=modest;a=commitdiff_plain;h=16d0237f55b1891f9a14a6cd7bdac7080bacd4c3 * Fixes NB#87093, backspace deletes attachments from editor pmo-trunk-r5111 --- diff --git a/src/maemo/modest-msg-edit-window.c b/src/maemo/modest-msg-edit-window.c index 09401e8..611f552 100644 --- a/src/maemo/modest-msg-edit-window.c +++ b/src/maemo/modest-msg-edit-window.c @@ -173,8 +173,8 @@ static void text_buffer_mark_set (GtkTextBuffer *buffer, GtkTextIter *iter, GtkTextMark *mark, ModestMsgEditWindow *userdata); -void vadj_changed (GtkAdjustment *adj, - ModestMsgEditWindow *window); +static void vadj_changed (GtkAdjustment *adj, + ModestMsgEditWindow *window); static void DEBUG_BUFFER (WPTextBuffer *buffer) { @@ -627,8 +627,9 @@ copy_clipboard_check (GtkTextView *text_view, } } -void vadj_changed (GtkAdjustment *adj, - ModestMsgEditWindow *window) +static void +vadj_changed (GtkAdjustment *adj, + ModestMsgEditWindow *window) { ModestMsgEditWindowPrivate *priv; @@ -641,6 +642,14 @@ void vadj_changed (GtkAdjustment *adj, } static void +attachment_deleted (ModestAttachmentsView *attachments_view, + gpointer user_data) +{ + modest_msg_edit_window_remove_attachments (MODEST_MSG_EDIT_WINDOW (user_data), + NULL); +} + +static void connect_signals (ModestMsgEditWindow *obj) { ModestMsgEditWindowPrivate *priv; @@ -708,7 +717,7 @@ connect_signals (ModestMsgEditWindow *obj) g_signal_connect (G_OBJECT (priv->msg_body), "cut-clipboard", G_CALLBACK (cut_clipboard_check), NULL); g_signal_connect (G_OBJECT (priv->msg_body), "copy-clipboard", G_CALLBACK (copy_clipboard_check), NULL); - + g_signal_connect (G_OBJECT (priv->attachments_view), "delete", G_CALLBACK (attachment_deleted), obj); } static void diff --git a/src/widgets/modest-attachments-view.c b/src/widgets/modest-attachments-view.c index ab549ab..51a0408 100644 --- a/src/widgets/modest-attachments-view.c +++ b/src/widgets/modest-attachments-view.c @@ -46,6 +46,7 @@ static GObjectClass *parent_class = NULL; /* signals */ enum { ACTIVATE_SIGNAL, + DELETE_SIGNAL, LAST_SIGNAL }; @@ -355,6 +356,15 @@ modest_attachments_view_class_init (ModestAttachmentsViewClass *klass) g_cclosure_marshal_VOID__OBJECT, G_TYPE_NONE, 1, G_TYPE_OBJECT); + signals[DELETE_SIGNAL] = + g_signal_new ("delete", + G_TYPE_FROM_CLASS (object_class), + G_SIGNAL_RUN_FIRST | G_SIGNAL_ACTION, + G_STRUCT_OFFSET(ModestAttachmentsViewClass, delete), + NULL, NULL, + g_cclosure_marshal_VOID__VOID, + G_TYPE_NONE, 0); + return; } @@ -611,6 +621,11 @@ key_press_event (GtkWidget *widget, return TRUE; } + if (event->keyval == GDK_BackSpace) { + g_signal_emit (G_OBJECT (widget), signals[DELETE_SIGNAL], 0); + return TRUE; + } + /* Activates selected item */ if (g_list_length (priv->selected) == 1) { ModestAttachmentView *att_view = (ModestAttachmentView *) priv->selected->data; diff --git a/src/widgets/modest-attachments-view.h b/src/widgets/modest-attachments-view.h index 2bad760..6e7872f 100644 --- a/src/widgets/modest-attachments-view.h +++ b/src/widgets/modest-attachments-view.h @@ -60,6 +60,7 @@ struct _ModestAttachmentsViewClass GtkEventBoxClass parent_class; void (*activate) (ModestAttachmentsView *attachments_view, TnyMimePart *mime_part); + void (*delete) (ModestAttachmentsView *attachments_view, TnyMimePart *mime_part); }; GType modest_attachments_view_get_type (void);