#include <glib/gstdio.h>
#include <modest-debug.h>
#include <modest-header-window.h>
+#include <modest-account-protocol.h>
#define MYDOCS_ENV "MYDOCSDIR"
#define DOCS_FOLDER ".documents"
static gboolean _modest_msg_view_window_map_event (GtkWidget *widget,
GdkEvent *event,
gpointer userdata);
+static void update_branding (ModestMsgViewWindow *self);
/* list my signals */
gtk_box_pack_start (GTK_BOX(main_vbox), priv->main_scroll, TRUE, TRUE, 0);
gtk_container_add (GTK_CONTAINER(obj), main_vbox);
- priv->find_toolbar = hildon_find_toolbar_new (NULL);
- hildon_window_add_toolbar (HILDON_WINDOW (obj), GTK_TOOLBAR (priv->find_toolbar));
- gtk_widget_set_no_show_all (priv->find_toolbar, TRUE);
-
/* NULL-ize fields if the window is destroyed */
g_signal_connect (priv->msg_view, "destroy", G_CALLBACK (gtk_widget_destroyed), &(priv->msg_view));
modest_window_set_active_account (MODEST_WINDOW(obj), modest_account_name);
modest_window_set_active_mailbox (MODEST_WINDOW(obj), mailbox);
- g_signal_connect (G_OBJECT (priv->find_toolbar), "close", G_CALLBACK (modest_msg_view_window_find_toolbar_close), obj);
- g_signal_connect (G_OBJECT (priv->find_toolbar), "search", G_CALLBACK (modest_msg_view_window_find_toolbar_search), obj);
- priv->last_search = NULL;
-
+ /* First add out toolbar ... */
modest_msg_view_window_show_toolbar (MODEST_WINDOW (obj), TRUE);
+ /* ... and later the find toolbar. This way find toolbar will
+ be shown over the other */
+ priv->find_toolbar = hildon_find_toolbar_new (NULL);
+ hildon_window_add_toolbar (HILDON_WINDOW (obj), GTK_TOOLBAR (priv->find_toolbar));
+ gtk_widget_set_no_show_all (priv->find_toolbar, TRUE);
+ g_signal_connect (G_OBJECT (priv->find_toolbar), "close",
+ G_CALLBACK (modest_msg_view_window_find_toolbar_close), obj);
+ g_signal_connect (G_OBJECT (priv->find_toolbar), "search",
+ G_CALLBACK (modest_msg_view_window_find_toolbar_search), obj);
+ priv->last_search = NULL;
+
/* Init the clipboard actions dim status */
modest_msg_view_grab_focus(MODEST_MSG_VIEW (priv->msg_view));
tny_msg_view_set_msg (TNY_MSG_VIEW (priv->msg_view), msg);
update_window_title (MODEST_MSG_VIEW_WINDOW (window));
+ update_branding (MODEST_MSG_VIEW_WINDOW (window));
/* gtk_widget_show_all (GTK_WIDGET (window)); */
modest_msg_view_window_update_priority (window);
}
tny_msg_view_set_msg (TNY_MSG_VIEW (priv->msg_view), NULL);
+ update_branding (MODEST_MSG_VIEW_WINDOW (window));
path = gtk_tree_row_reference_get_path (row_reference);
if (gtk_tree_model_get_iter (priv->header_model, &iter, path)) {
priv->is_search_result = TRUE;
tny_msg_view_set_msg (TNY_MSG_VIEW (priv->msg_view), msg);
+ update_branding (MODEST_MSG_VIEW_WINDOW (window));
update_window_title (window);
/* gtk_widget_show_all (GTK_WIDGET (window));*/
tny_msg_view_set_msg (TNY_MSG_VIEW (priv->msg_view), msg);
}
update_window_title (MODEST_MSG_VIEW_WINDOW (obj));
+ update_branding (MODEST_MSG_VIEW_WINDOW (obj));
/* gtk_widget_show_all (GTK_WIDGET (obj)); */
tny_msg_view_set_msg (TNY_MSG_VIEW (priv->msg_view), msg);
modest_msg_view_window_update_priority (self);
update_window_title (MODEST_MSG_VIEW_WINDOW (self));
+ update_branding (MODEST_MSG_VIEW_WINDOW (self));
modest_msg_view_grab_focus (MODEST_MSG_VIEW (priv->msg_view));
}
gboolean is_ok = TRUE;
gint replaced_files = 0;
const GList *files = info->pairs;
- const GList *iter;
+ const GList *iter, *to_replace;
for (iter = files; (iter != NULL) && (replaced_files < 2); iter = g_list_next(iter)) {
SaveMimePartPair *pair = iter->data;
if (modest_utils_file_exists (pair->filename)) {
replaced_files++;
+ if (replaced_files == 1)
+ to_replace = iter;
}
}
if (replaced_files) {
gint response;
if (replaced_files == 1) {
- SaveMimePartPair *pair = files->data;
+ SaveMimePartPair *pair = to_replace->data;
const gchar *basename = strrchr (pair->filename, G_DIR_SEPARATOR) + 1;
gchar *escaped_basename, *message;
tny_msg_rewrite_cache (msg);
tny_msg_view_set_msg (TNY_MSG_VIEW (priv->msg_view), msg);
g_object_unref (msg);
+ update_branding (MODEST_MSG_VIEW_WINDOW (window));
g_object_unref (mime_parts);
g_object_unref (header);
}
+
+static void
+update_branding (ModestMsgViewWindow *self)
+{
+ const gchar *account;
+ const gchar *mailbox;
+ ModestAccountMgr *mgr;
+ ModestProtocol *protocol = NULL;
+ gchar *service_name = NULL;
+ const GdkPixbuf *service_icon = NULL;
+ ModestMsgViewWindowPrivate *priv;
+
+ priv = MODEST_MSG_VIEW_WINDOW_GET_PRIVATE (self);
+
+ account = modest_window_get_active_account (MODEST_WINDOW (self));
+ mailbox = modest_window_get_active_mailbox (MODEST_WINDOW (self));
+
+ mgr = modest_runtime_get_account_mgr ();
+
+ if (modest_account_mgr_account_is_multimailbox (mgr, account, &protocol)) {
+ if (MODEST_IS_ACCOUNT_PROTOCOL (protocol)) {
+ service_name = modest_account_protocol_get_service_name (MODEST_ACCOUNT_PROTOCOL (protocol),
+ account, mailbox);
+ service_icon = modest_account_protocol_get_service_icon (MODEST_ACCOUNT_PROTOCOL (protocol),
+ account, mailbox, MODEST_ICON_SIZE_SMALL);
+ }
+ }
+
+ modest_msg_view_set_branding (MODEST_MSG_VIEW (priv->msg_view), service_name, service_icon);
+ g_free (service_name);
+}