static void on_title_button_clicked (GtkToolButton *button, ModestShell *self);
static void on_new_msg_button_clicked (GtkToolButton *button, ModestShell *self);
static void on_style_set (GtkWidget *widget, GtkStyle *old_style, ModestShell *shell);
+static gboolean on_key_pressed (GtkWidget *widget, GdkEventKey *event, ModestShell *shell);
typedef struct _ModestShellPrivate ModestShellPrivate;
GdkPixbuf **progress_frames;
gint next_frame;
guint progress_timeout_id;
+
+ GtkWidget *banners_box;
};
#define MODEST_SHELL_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE((o), \
MODEST_TYPE_SHELL, \
gtk_widget_show (priv->progress_icon);
gtk_box_pack_start (GTK_BOX (top_hbox), priv->progress_icon, FALSE, FALSE, 0);
+ priv->banners_box = gtk_vbox_new (FALSE, 0);
+ gtk_widget_show (priv->banners_box);
+ gtk_box_pack_start (GTK_BOX (priv->main_vbox), priv->banners_box, FALSE, FALSE, 0);
+
new_message_icon = gtk_image_new_from_icon_name (MODEST_TOOLBAR_ICON_NEW_MAIL, GTK_ICON_SIZE_LARGE_TOOLBAR);
gtk_widget_show (new_message_icon);
priv->new_message_button = gtk_tool_button_new (new_message_icon, _("mcen_va_new_email"));
gtk_box_pack_start (GTK_BOX (title_vbox), priv->subtitle_label, FALSE, FALSE, 0);
gtk_widget_show (title_vbox);
- priv->title_button = gtk_tool_button_new (NULL, NULL);
+ priv->title_button = gtk_tool_button_new (NULL, "");
gtk_widget_show (GTK_WIDGET (priv->title_button));
title_arrow = gtk_arrow_new (GTK_ARROW_DOWN, GTK_SHADOW_NONE);
gtk_widget_show (title_arrow);
gtk_accelerator_parse ("<Control>n", &accel_key, &accel_mods);
gtk_widget_add_accelerator (GTK_WIDGET (priv->new_message_button), "clicked", accel_group,
accel_key, accel_mods, 0);
- gtk_accelerator_parse ("Esc", &accel_key, &accel_mods);
+ gtk_accelerator_parse ("Escape", &accel_key, &accel_mods);
gtk_widget_add_accelerator (GTK_WIDGET (priv->back_button), "clicked", accel_group,
accel_key, accel_mods, 0);
gtk_accelerator_parse ("F10", &accel_key, &accel_mods);
accel_key, accel_mods, 0);
gtk_window_add_accel_group (GTK_WINDOW (obj), accel_group);
+ g_signal_connect (G_OBJECT (obj),
+ "key-press-event",
+ G_CALLBACK (on_key_pressed), obj);
+
+ gtk_window_set_default_size (GTK_WINDOW (obj),
+ 640, 480);
+
+
}
static void
}
}
+
+static gboolean
+on_key_pressed (GtkWidget *widget,
+ GdkEventKey *event,
+ ModestShell *shell)
+{
+ ModestShellPrivate *priv;
+ gboolean retval;
+ GtkWidget *current_window;
+
+ priv = MODEST_SHELL_GET_PRIVATE (shell);
+
+ current_window = gtk_notebook_get_nth_page (GTK_NOTEBOOK (priv->notebook), -1);
+
+ g_signal_emit_by_name (current_window, "key-press-event", event, &retval);
+
+ return retval;
+
+}
+
+void
+modest_shell_add_banner (ModestShell *shell, ModestShellBanner *banner)
+{
+ ModestShellPrivate *priv;
+
+ priv = MODEST_SHELL_GET_PRIVATE (shell);
+ gtk_box_pack_start (GTK_BOX (priv->banners_box), GTK_WIDGET (banner), FALSE, FALSE, 0);
+}