* src/maemo/modest-msg-edit-window.c:
[modest] / src / maemo / modest-msg-edit-window.c
index 7af8f5d..976a601 100644 (file)
@@ -96,6 +96,7 @@ static void  modest_msg_edit_window_finalize     (GObject *obj);
 
 static gboolean msg_body_focus (GtkWidget *focus, GdkEventFocus *event, gpointer userdata);
 static void  body_changed (GtkTextBuffer *buffer, ModestMsgEditWindow *editor);
+static void  attachments_selection_changed (ModestAttachmentsView *buffer, ModestMsgEditWindow *editor);
 static void  recpt_field_changed (GtkTextBuffer *buffer, ModestMsgEditWindow *editor);
 
 static void  text_buffer_refresh_attributes (WPTextBuffer *buffer, ModestMsgEditWindow *window);
@@ -500,6 +501,13 @@ void vadj_changed (GtkAdjustment *adj,
        priv->last_vadj_upper = adj->upper;
 }
 
+static void window_focus (GtkWindow *window,
+                         GtkWidget *widget,
+                         gpointer userdata)
+{
+       modest_window_check_dimming_rules_group (MODEST_WINDOW (userdata), "ModestClipboardDimmingRules");
+}
+
 
 static void
 connect_signals (ModestMsgEditWindow *obj)
@@ -516,6 +524,8 @@ connect_signals (ModestMsgEditWindow *obj)
                          G_CALLBACK (text_buffer_can_redo), obj);
        g_signal_connect (G_OBJECT (priv->text_buffer), "changed",
                           G_CALLBACK (body_changed), obj);
+       g_signal_connect (G_OBJECT (priv->attachments_view), "selection-changed",
+                          G_CALLBACK (attachments_selection_changed), obj);
        g_signal_connect (G_OBJECT (obj), "window-state-event",
                          G_CALLBACK (modest_msg_edit_window_window_state_event),
                          NULL);
@@ -535,6 +545,7 @@ connect_signals (ModestMsgEditWindow *obj)
                          G_CALLBACK (msg_body_focus), obj);
        g_signal_connect (G_OBJECT (priv->msg_body), "focus-out-event",
                          G_CALLBACK (msg_body_focus), obj);
+       g_signal_connect (G_OBJECT (obj), "set-focus", G_CALLBACK (window_focus), obj);
        g_signal_connect (G_OBJECT (modest_recpt_editor_get_buffer (MODEST_RECPT_EDITOR (priv->to_field))),
                          "changed", G_CALLBACK (recpt_field_changed), obj);
        g_signal_connect (G_OBJECT (modest_recpt_editor_get_buffer (MODEST_RECPT_EDITOR (priv->cc_field))),
@@ -2751,6 +2762,7 @@ msg_body_focus (GtkWidget *focus,
 {
        
        modest_ui_actions_check_window_dimming_rules (MODEST_WINDOW (userdata));
+       modest_window_check_dimming_rules_group (MODEST_WINDOW (userdata), "ModestClipboardDimmingRules");
        return FALSE;
 }
 
@@ -2767,6 +2779,12 @@ body_changed (GtkTextBuffer *buffer, ModestMsgEditWindow *editor)
        modest_ui_actions_check_window_dimming_rules (MODEST_WINDOW (editor));
 }
 
+static void
+attachments_selection_changed (ModestAttachmentsView *atts_view, ModestMsgEditWindow *window)
+{
+       modest_ui_actions_check_window_dimming_rules (MODEST_WINDOW (window));
+}
+
 void
 modest_msg_edit_window_reset_modified (ModestMsgEditWindow *editor)
 {