X-Git-Url: http://git.maemo.org/git/?p=modest;a=blobdiff_plain;f=src%2Fdbus_api%2Fmodest-dbus-callbacks.c;h=c0cfc11aed6676a19239a65e49993c1eb2fe4c7d;hp=c0e95ae2f727ad9ca24af42b7036d06868123243;hb=86e33ad955765e9b0352e513075d8c29143aad25;hpb=23e19d82e2114b7906e7c0c721fc59c097eddec1 diff --git a/src/dbus_api/modest-dbus-callbacks.c b/src/dbus_api/modest-dbus-callbacks.c index c0e95ae..c0cfc11 100644 --- a/src/dbus_api/modest-dbus-callbacks.c +++ b/src/dbus_api/modest-dbus-callbacks.c @@ -747,22 +747,25 @@ on_idle_delete_message (gpointer user_data) /* Trick: do a poke status in order to speed up the signaling of observers. A delete via the menu does this, in do_headers_action(), - but it does not seem to solve the stricken-out-but-not-removed problem here. + though I don't know why. */ tny_folder_poke_status (folder); g_object_unref (folder); } - if (account) { - /* Do a refresh so that stricken-out emails are really removed from the treeview. - * TODO: Why is this necessary here, but not when doing a delete from the menu or toolbar? */ - const gchar *modest_account_name = - modest_tny_account_get_parent_modest_account_name_for_server_account (account); - modest_ui_actions_do_send_receive (modest_account_name, MODEST_WINDOW (win)); - + if (account) g_object_unref (account); - } + + /* Refilter the header view explicitly, to make sure that + * deleted emails are really removed from view. + * (They are not really deleted until contact is made with the server, + * so they would appear with a strike-through until then): + */ + ModestHeaderView *header_view = MODEST_HEADER_VIEW(modest_main_window_get_child_widget ( + MODEST_MAIN_WINDOW(win), MODEST_WIDGET_TYPE_HEADER_VIEW)); + if (header_view && MODEST_IS_HEADER_VIEW (header_view)) + modest_header_view_refilter (header_view); return res; }