[anjal] More fixes from master merge. Most keyb shortcuts work now.
- From: Srinivasa Ragavan <sragavan src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [anjal] More fixes from master merge. Most keyb shortcuts work now.
- Date: Wed, 13 Jan 2010 11:59:40 +0000 (UTC)
commit 24803519ce42338d0c9f616a4e4ccd7f754d5f2e
Author: Srinivasa Ragavan <sragavan gnome org>
Date: Wed Jan 13 17:20:49 2010 +0530
More fixes from master merge. Most keyb shortcuts work now.
src/mail-folder-view.c | 26 +++++++++++++++++++++++---
src/mail-folder-view.h | 3 ++-
src/mail-shell.c | 26 ++++++++++++--------------
src/mail-view.c | 7 ++++++-
4 files changed, 43 insertions(+), 19 deletions(-)
---
diff --git a/src/mail-folder-view.c b/src/mail-folder-view.c
index e6e51da..6af57a0 100644
--- a/src/mail-folder-view.c
+++ b/src/mail-folder-view.c
@@ -996,7 +996,8 @@ draw_flags (GtkTreeViewColumn *tree_column, GtkCellRenderer *cell, GtkTreeModel
void
mail_folder_view_show_list (MailFolderView *mfv)
{
- mfv->priv->message_shown = 0;
+ mfv->priv->message_shown = 0;
+ gtk_widget_hide (mfv->slidebox);
gtk_widget_show ((GtkWidget *)mfv->tree);
gtk_widget_show (mfv->priv->view_scroller);
gtk_widget_hide ((GtkWidget *)mfv->mail);
@@ -1287,6 +1288,12 @@ mfv_button_clicked (GtkWidget *w, GdkEventButton *event, MailFolderView *mfv)
}
static void
+mfv_slider_pressed (GtkWidget *button, MailFolderView *shell)
+{
+ mail_folder_view_show_list (shell);
+}
+
+static void
mfv_message_activated (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewColumn *column, MailFolderView *shell)
{
GtkTreeIter iter;
@@ -1302,6 +1309,7 @@ mfv_message_activated (GtkTreeView *tree_view, GtkTreePath *path, G
gtk_widget_hide ((GtkWidget *)shell->tree);
gtk_widget_hide (shell->priv->view_scroller);
gtk_widget_show ((GtkWidget *)shell->mail);
+ gtk_widget_show (shell->slidebox);
/* mail_float_bar_new (gtk_widget_get_ancestor (tree_view, GTK_TYPE_WINDOW)); */
}
@@ -1580,7 +1588,7 @@ void
mail_folder_view_construct (MailFolderView *shell)
{
MailFolderViewPrivate *priv = shell->priv;
- GtkWidget *viewbox, *infolabel, *align;
+ GtkWidget *viewbox, *slidebox, *infolabel, *align, *tmp;
GtkTreeViewColumn *column;
GtkCellRenderer *cell;
GtkCellRenderer *hbox, *vbox;
@@ -1851,9 +1859,21 @@ mail_folder_view_construct (MailFolderView *shell)
gtk_tree_view_columns_autosize (shell->tree);
+ slidebox = gtk_hbox_new (FALSE, 0);
+ gtk_box_pack_start ((GtkBox *)viewbox, (GtkWidget *)slidebox, TRUE, TRUE, 0);
+ shell->slidebox = slidebox;
+
+ shell->slider = gtk_button_new ();
+ tmp = gtk_arrow_new(GTK_ARROW_RIGHT, GTK_SHADOW_NONE);
+ gtk_container_add ((GtkContainer *)shell->slider, tmp);
+ gtk_widget_show_all (shell->slider);
+ gtk_box_pack_start ((GtkBox *)slidebox, (GtkWidget *)shell->slider, FALSE, FALSE, 2);
+ g_signal_connect (shell->slider, "clicked", G_CALLBACK(mfv_slider_pressed), shell);
+
shell->mail = mail_conv_view_new ();
- gtk_box_pack_start ((GtkBox *)viewbox, (GtkWidget *)shell->mail, TRUE, TRUE, 0);
+ gtk_box_pack_start ((GtkBox *)slidebox, (GtkWidget *)shell->mail, TRUE, TRUE, 0);
gtk_widget_hide ((GtkWidget *)shell->mail);
+ gtk_widget_hide (shell->slidebox);
}
MailFolderView *
diff --git a/src/mail-folder-view.h b/src/mail-folder-view.h
index ecef064..74398f8 100644
--- a/src/mail-folder-view.h
+++ b/src/mail-folder-view.h
@@ -48,7 +48,8 @@ typedef struct _MailFolderView {
GtkTreeView *view;
MailConvView *mail;
-
+ GtkWidget *slidebox;
+ GtkWidget *slider;
GtkWidget *tab_label;
GtkWidget *menu_label;
diff --git a/src/mail-shell.c b/src/mail-shell.c
index 7b2e498..02adf8a 100644
--- a/src/mail-shell.c
+++ b/src/mail-shell.c
@@ -431,15 +431,14 @@ mail_shell_finalize (GObject *object)
G_OBJECT_CLASS (mail_shell_parent_class)->finalize (object);
}
-#if 0
static void
ms_backspace_pressed (MailShell *shell)
{
MailShellPrivate *priv = shell->priv;
- gtk_widget_hide (priv->slider);
- gtk_widget_show (shell->priv->folder_pane);
- mail_view_show_list ((MailView *)shell->mail_component->mail_view);
+ //gtk_widget_hide (priv->slider);
+ //gtk_widget_show (shell->priv->folder_pane);
+ mail_view_show_list ((MailView *)shell->priv->view);
}
static void
@@ -447,9 +446,9 @@ ms_ctrl_w_pressed (MailShell *shell)
{
MailShellPrivate *priv = shell->priv;
- gtk_widget_hide (priv->slider);
- gtk_widget_show (shell->priv->folder_pane);
- mail_view_close_view ((MailView *)shell->mail_component->mail_view);
+ //gtk_widget_hide (priv->slider);
+ //gtk_widget_show (shell->priv->folder_pane);
+ mail_view_close_view ((MailView *)shell->priv->view);
}
static void
@@ -463,7 +462,7 @@ ms_slash_pressed (MailShell *shell)
static void
ms_f5_pressed (MailShell *shell)
{
- MailView *view = (MailView *)shell->mail_component->mail_view;
+ MailView *view = (MailView *)shell->priv->view;
mail_view_check_mail ((MailView *)view, FALSE);
}
@@ -473,7 +472,6 @@ ms_ctrl_q_pressed (MailShell *shell)
{
mail_shell_quit (shell);
}
-#endif
static void
mail_shell_class_init (MailShellClass *klass)
{
@@ -488,11 +486,11 @@ mail_shell_class_init (MailShellClass *klass)
shell_class->construct_toolbar = ms_construct_toolbar;
shell_class->construct_menubar = NULL;
object_class->constructed = ms_constructed;
-// klass->backspace_pressed = ms_backspace_pressed;
-// klass->ctrl_w_pressed = ms_ctrl_w_pressed;
-// klass->slash_pressed = ms_slash_pressed;
-// klass->f5_pressed = ms_f5_pressed;
-// klass->ctrl_q_pressed = ms_ctrl_q_pressed;
+ klass->backspace_pressed = ms_backspace_pressed;
+ klass->ctrl_w_pressed = ms_ctrl_w_pressed;
+ klass->slash_pressed = ms_slash_pressed;
+ klass->f5_pressed = ms_f5_pressed;
+ klass->ctrl_q_pressed = ms_ctrl_q_pressed;
mail_shell_signals [BACKSPACE_PRESSED] =
g_signal_new ("backspace_pressed",
diff --git a/src/mail-view.c b/src/mail-view.c
index 39f360f..ab74671 100644
--- a/src/mail-view.c
+++ b/src/mail-view.c
@@ -272,7 +272,12 @@ mail_view_new ()
static void
mv_message_shown (MailViewChild *mfv, MailView *mv)
{
- GtkWidget *arr = g_object_get_data ((GObject *)mv->slider, "right-arrow");
+ GtkWidget *arr;
+
+ if (!mv->slider)
+ return;
+
+ arr = g_object_get_data ((GObject *)mv->slider, "right-arrow");
//gtk_widget_hide (mv->folder_tree);
gtk_widget_show (arr);
gtk_widget_show (mv->slider);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]