ModestMsgEditWindow *userdata);
static void on_message_settings (GtkAction *action,
ModestMsgEditWindow *window);
+static void add_to_menu (ModestMsgEditWindow *self,
+ HildonAppMenu *menu,
+ gchar *label,
+ GCallback callback,
+ ModestDimmingRulesGroup *group,
+ GCallback dimming_callback);
+static void setup_menu (ModestMsgEditWindow *self,
+ ModestDimmingRulesGroup *group);
+static gboolean modest_msg_edit_window_toggle_menu (HildonWindow *window,
+ guint button,
+ guint32 time);
static void DEBUG_BUFFER (WPTextBuffer *buffer)
{
gchar *msg_uid;
gboolean sent;
+
+ GtkWidget *app_menu;
+ GtkWidget *cc_button;
+ GtkWidget *bcc_button;
+ GtkWidget *find_toolbar_button;
};
#define MODEST_MSG_EDIT_WINDOW_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE((o), \
{
GObjectClass *gobject_class;
ModestWindowClass *modest_window_class;
+ HildonWindowClass *hildon_window_class = (HildonWindowClass *) klass;
gobject_class = (GObjectClass*) klass;
modest_window_class = (ModestWindowClass*) klass;
parent_class = g_type_class_peek_parent (klass);
gobject_class->finalize = modest_msg_edit_window_finalize;
+ hildon_window_class->toggle_menu = modest_msg_edit_window_toggle_menu;
+
modest_window_class->set_zoom_func = set_zoom_do_nothing;
modest_window_class->get_zoom_func = get_zoom_do_nothing;
modest_window_class->zoom_plus_func = on_zoom_minus_plus_not_implemented;
priv->last_upper = 0.0;
priv->font_dialog = NULL;
+ priv->app_menu = NULL;
if (!is_wp_text_buffer_started) {
is_wp_text_buffer_started = TRUE;
TnyHeaderFlags priority_flags;
TnyFolder *msg_folder;
gboolean is_html = FALSE;
- GtkAction *action;
gboolean field_view_set;
g_return_if_fail (MODEST_IS_MSG_EDIT_WINDOW (self));
if (to)
modest_recpt_editor_set_recipients (MODEST_RECPT_EDITOR (priv->to_field), to);
- action = gtk_ui_manager_get_action (parent_priv->ui_manager, "/MenuBar/ViewMenu/ViewCcFieldMenu");
field_view_set = TRUE;
if (cc) {
modest_recpt_editor_set_recipients (MODEST_RECPT_EDITOR (priv->cc_field), cc);
gtk_widget_hide (priv->cc_caption);
field_view_set = FALSE;
}
- if (action)
- gtk_toggle_action_set_active (GTK_TOGGLE_ACTION (action), field_view_set);
+ hildon_check_button_set_active (HILDON_CHECK_BUTTON (priv->cc_button), field_view_set);
- action = gtk_ui_manager_get_action (parent_priv->ui_manager, "/MenuBar/ViewMenu/ViewBccFieldMenu");
field_view_set = TRUE;
if (bcc) {
modest_recpt_editor_set_recipients (MODEST_RECPT_EDITOR (priv->bcc_field), bcc);
gtk_widget_hide (priv->bcc_caption);
field_view_set = FALSE;
}
- if (action)
- gtk_toggle_action_set_active (GTK_TOGGLE_ACTION (action), field_view_set);
+ hildon_check_button_set_active (HILDON_CHECK_BUTTON (priv->bcc_button), field_view_set);
if (subject)
parent_priv = MODEST_WINDOW_GET_PRIVATE (obj);
/* Menubar. Update the state of some toggles */
- parent_priv->menubar = modest_maemo_utils_get_manager_menubar_as_menu (parent_priv->ui_manager, "/MenuBar");
- hildon_window_set_menu (HILDON_WINDOW (obj), GTK_MENU (parent_priv->menubar));
priv->from_field_protos = get_transports ();
modest_selector_picker_set_pair_list (MODEST_SELECTOR_PICKER (priv->from_field), priv->from_field_protos);
modest_selector_picker_set_active_id (MODEST_SELECTOR_PICKER (priv->from_field), (gpointer) account_name);
modest_ui_dimming_manager_insert_rules_group (parent_priv->ui_dimming_manager, menu_rules_group);
modest_ui_dimming_manager_insert_rules_group (parent_priv->ui_dimming_manager, toolbar_rules_group);
modest_ui_dimming_manager_insert_rules_group (parent_priv->ui_dimming_manager, clipboard_rules_group);
+
+ /* Setup app menu */
+ setup_menu (MODEST_MSG_EDIT_WINDOW (obj), menu_rules_group);
+
/* Checks the dimming rules */
g_object_unref (menu_rules_group);
g_object_unref (toolbar_rules_group);
modest_msg_edit_window_find_toolbar_close (GtkWidget *widget,
ModestMsgEditWindow *window)
{
- GtkToggleAction *toggle;
- ModestWindowPrivate *parent_priv;
- parent_priv = MODEST_WINDOW_GET_PRIVATE (window);
+ ModestMsgEditWindowPrivate *priv;
- toggle = GTK_TOGGLE_ACTION (gtk_ui_manager_get_action (parent_priv->ui_manager, "/MenuBar/ToolsMenu/FindInMessageMenu"));
- gtk_toggle_action_set_active (toggle, FALSE);
+ priv = MODEST_MSG_EDIT_WINDOW_GET_PRIVATE(window);
+
+ hildon_check_button_set_active (HILDON_CHECK_BUTTON (priv->find_toolbar_button), FALSE);
}
gboolean
return 1.0;
}
+typedef struct _MessageSettingsHelper {
+ ModestMsgEditWindow *window;
+ GSList *priority_group;
+ GtkWidget *align_picker;
+} MessageSettingsHelper;
+
static void
on_priority_toggle (HildonCheckButton *button,
- GSList *priority_group)
+ MessageSettingsHelper *helper)
{
+ GSList *node;
+ ModestMsgEditWindowPrivate *priv;
+
+ priv = MODEST_MSG_EDIT_WINDOW_GET_PRIVATE (helper->window);
if (hildon_check_button_get_active (button)) {
- GSList *node;
- for (node = priority_group; node != NULL; node = g_slist_next (node)) {
+ for (node = helper->priority_group; node != NULL; node = g_slist_next (node)) {
HildonCheckButton *node_button = (HildonCheckButton *) node->data;
if ((node_button != button) &&
hildon_check_button_get_active (node_button)) {
hildon_check_button_set_active (node_button, FALSE);
}
+ if (priv->priority_flags != (TnyHeaderFlags) g_object_get_data (G_OBJECT (button), "priority"))
+ modest_msg_edit_window_set_priority_flags (helper->window,
+ (TnyHeaderFlags)
+ g_object_get_data (G_OBJECT (button),
+ "priority"));
+ }
+
+
+ } else {
+ gboolean found = FALSE;
+ /* If no one is active, activate it again */
+ for (node = helper->priority_group; node != NULL; node = g_slist_next (node)) {
+ HildonCheckButton *node_button = (HildonCheckButton *) node->data;
+ if (hildon_check_button_get_active (node_button)) {
+ found = TRUE;
+ break;
+ }
+ }
+ if (!found) {
+ hildon_check_button_set_active (button, TRUE);
+ }
+ }
+}
+
+static void
+on_format_picker_value_changed (HildonPickerButton *button,
+ MessageSettingsHelper *helper)
+{
+ ModestMsgEditFormat new_format, old_format;
+ gint file_format;
+
+ switch (hildon_picker_button_get_active (button)) {
+ case 1:
+ new_format = MODEST_MSG_EDIT_FORMAT_HTML;
+ file_format = MODEST_FILE_FORMAT_FORMATTED_TEXT;
+ break;
+ case 0:
+ default:
+ new_format = MODEST_MSG_EDIT_FORMAT_TEXT;
+ file_format = MODEST_FILE_FORMAT_PLAIN_TEXT;
+ break;
+ }
+
+ old_format = modest_msg_edit_window_get_format (helper->window);
+ if (new_format != old_format) {
+ modest_msg_edit_window_set_file_format (MODEST_MSG_EDIT_WINDOW (helper->window), file_format);
+
+ switch (modest_msg_edit_window_get_format (helper->window)) {
+ case MODEST_MSG_EDIT_FORMAT_TEXT:
+ hildon_picker_button_set_active (button, 0);
+ gtk_widget_set_sensitive (helper->align_picker, FALSE);
+ break;
+ case MODEST_MSG_EDIT_FORMAT_HTML:
+ default:
+ hildon_picker_button_set_active (button, 1);
+ gtk_widget_set_sensitive (helper->align_picker, TRUE);
+ break;
}
}
}
static void
+on_align_picker_value_changed (HildonPickerButton *button,
+ MessageSettingsHelper *helper)
+{
+ GtkJustification new_justify;
+ ModestMsgEditFormatState *format_state = NULL;
+
+ switch (hildon_picker_button_get_active (button)) {
+ case 1:
+ new_justify = GTK_JUSTIFY_CENTER;
+ break;
+ case 2:
+ new_justify = GTK_JUSTIFY_RIGHT;
+ break;
+ case 0:
+ default:
+ new_justify = GTK_JUSTIFY_LEFT;
+ break;
+ }
+
+ format_state = modest_msg_edit_window_get_format_state (helper->window);
+ if (format_state->justification != new_justify)
+ format_state->justification = new_justify;
+ modest_msg_edit_window_set_format_state (helper->window, format_state);
+ g_free (format_state);
+}
+
+static void
modest_msg_edit_window_show_msg_settings_dialog (ModestMsgEditWindow *window)
{
GtkWidget *dialog;
GtkWidget *high_toggle, *medium_toggle, *low_toggle;
GtkWidget *captioned;
GtkSizeGroup *title_sizegroup, *value_sizegroup;
- GSList *priority_group = NULL;
+ GtkWidget *format_picker;
+ GtkWidget *format_selector;
+ GtkWidget *align_selector;
+ ModestMsgEditWindowPrivate *priv;
+ MessageSettingsHelper helper = {0,};
+ ModestMsgEditFormatState *format_state = NULL;
+
+ g_return_if_fail (MODEST_IS_MSG_EDIT_WINDOW (window));
+ priv = MODEST_MSG_EDIT_WINDOW_GET_PRIVATE (window);
+ helper.window = window;
+ helper.priority_group = NULL;
title_sizegroup = gtk_size_group_new (GTK_SIZE_GROUP_HORIZONTAL);
value_sizegroup = gtk_size_group_new (GTK_SIZE_GROUP_HORIZONTAL);
gtk_container_add (GTK_CONTAINER (GTK_DIALOG (dialog)->vbox), vbox);
gtk_widget_show (vbox);
- priority_hbox = gtk_hbox_new (0, TRUE);
+ /* Priority toggles */
+ priority_hbox = gtk_hbox_new (TRUE, 0);
high_toggle = hildon_check_button_new (HILDON_SIZE_FINGER_HEIGHT);
- gtk_button_set_label (GTK_BUTTON (high_toggle), _("TDHigh"));
- priority_group = g_slist_prepend (priority_group, high_toggle);
+ gtk_button_set_label (GTK_BUTTON (high_toggle), _("mcen_me_editor_priority_high"));
+ helper.priority_group = g_slist_prepend (helper.priority_group, high_toggle);
+ g_object_set_data (G_OBJECT (high_toggle), "priority", GINT_TO_POINTER (TNY_HEADER_FLAG_HIGH_PRIORITY));
medium_toggle = hildon_check_button_new (HILDON_SIZE_FINGER_HEIGHT);
- gtk_button_set_label (GTK_BUTTON (medium_toggle), _("TDMedium"));
- priority_group = g_slist_prepend (priority_group, medium_toggle);
+ gtk_button_set_label (GTK_BUTTON (medium_toggle), _("mcen_me_editor_priority_normal"));
+ helper.priority_group = g_slist_prepend (helper.priority_group, medium_toggle);
+ g_object_set_data (G_OBJECT (medium_toggle), "priority", GINT_TO_POINTER (TNY_HEADER_FLAG_NORMAL_PRIORITY));
low_toggle = hildon_check_button_new (HILDON_SIZE_FINGER_HEIGHT);
- gtk_button_set_label (GTK_BUTTON (low_toggle), _("TDLow"));
- priority_group = g_slist_prepend (priority_group, low_toggle);
+ gtk_button_set_label (GTK_BUTTON (low_toggle), _("mcen_me_editor_priority_low"));
+ helper.priority_group = g_slist_prepend (helper.priority_group, low_toggle);
+ g_object_set_data (G_OBJECT (low_toggle), "priority", GINT_TO_POINTER (TNY_HEADER_FLAG_LOW_PRIORITY));
gtk_box_pack_start (GTK_BOX (priority_hbox), low_toggle, FALSE, FALSE, 0);
gtk_box_pack_start (GTK_BOX (priority_hbox), medium_toggle, FALSE, FALSE, 0);
gtk_box_pack_start (GTK_BOX (priority_hbox), high_toggle, FALSE, FALSE, 0);
- g_signal_connect (G_OBJECT (high_toggle), "toggled", G_CALLBACK (on_priority_toggle), priority_group);
- g_signal_connect (G_OBJECT (medium_toggle), "toggled", G_CALLBACK (on_priority_toggle), priority_group);
- g_signal_connect (G_OBJECT (low_toggle), "toggled", G_CALLBACK (on_priority_toggle), priority_group);
gtk_widget_show_all (priority_hbox);
captioned = modest_maemo_utils_create_captioned (title_sizegroup, value_sizegroup,
- _("TODO: Priority"), priority_hbox);
+ _("mcen_me_editor_message_priority"), priority_hbox);
gtk_widget_show (captioned);
gtk_box_pack_start (GTK_BOX (vbox), captioned, FALSE, FALSE, 0);
+
+ /* format selector */
+ format_selector = hildon_touch_selector_new_text ();
+ hildon_touch_selector_append_text (HILDON_TOUCH_SELECTOR (format_selector), _("mcen_me_editor_plain_text"));
+ hildon_touch_selector_append_text (HILDON_TOUCH_SELECTOR (format_selector), _("mcen_me_editor_formatted_text"));
+ format_picker = hildon_picker_button_new (MODEST_EDITABLE_SIZE,
+ HILDON_BUTTON_ARRANGEMENT_HORIZONTAL);
+ hildon_picker_button_set_selector (HILDON_PICKER_BUTTON (format_picker), HILDON_TOUCH_SELECTOR (format_selector));
+ modest_maemo_utils_set_hbutton_layout (title_sizegroup, value_sizegroup,
+ _("mcen_me_editor_format"), format_picker);
+ gtk_widget_show_all (format_picker);
+ gtk_box_pack_start (GTK_BOX (vbox), format_picker, FALSE, FALSE, 0);
+
+ /* alignment selector */
+ align_selector = hildon_touch_selector_new_text ();
+ hildon_touch_selector_append_text (HILDON_TOUCH_SELECTOR (align_selector), _("mcen_me_editor_align_left"));
+ hildon_touch_selector_append_text (HILDON_TOUCH_SELECTOR (align_selector), _("mcen_me_editor_align_centred"));
+ hildon_touch_selector_append_text (HILDON_TOUCH_SELECTOR (align_selector), _("mcen_me_editor_align_right"));
+ helper.align_picker = hildon_picker_button_new (MODEST_EDITABLE_SIZE,
+ HILDON_BUTTON_ARRANGEMENT_HORIZONTAL);
+ hildon_picker_button_set_selector (HILDON_PICKER_BUTTON (helper.align_picker), HILDON_TOUCH_SELECTOR (align_selector));
+ modest_maemo_utils_set_hbutton_layout (title_sizegroup, value_sizegroup,
+ _("mcen_me_editor_align"), helper.align_picker);
+ gtk_widget_show_all (helper.align_picker);
+ gtk_box_pack_start (GTK_BOX (vbox), helper.align_picker, FALSE, FALSE, 0);
g_object_unref (title_sizegroup);
g_object_unref (value_sizegroup);
+ gtk_window_set_title (GTK_WINDOW (dialog), _("TODO: Message settings"));
/* Set current values */
+ switch (priv->priority_flags) {
+ case TNY_HEADER_FLAG_HIGH_PRIORITY:
+ hildon_check_button_set_active (HILDON_CHECK_BUTTON (high_toggle), TRUE);
+ break;
+ case TNY_HEADER_FLAG_LOW_PRIORITY:
+ hildon_check_button_set_active (HILDON_CHECK_BUTTON (low_toggle), TRUE);
+ break;
+ default:
+ hildon_check_button_set_active (HILDON_CHECK_BUTTON (medium_toggle), TRUE);
+ break;
+ }
+
+ switch (modest_msg_edit_window_get_format (window)) {
+ case MODEST_MSG_EDIT_FORMAT_TEXT:
+ hildon_picker_button_set_active (HILDON_PICKER_BUTTON (format_picker), 0);
+ gtk_widget_set_sensitive (helper.align_picker, FALSE);
+ break;
+ case MODEST_MSG_EDIT_FORMAT_HTML:
+ default:
+ hildon_picker_button_set_active (HILDON_PICKER_BUTTON (format_picker), 1);
+ gtk_widget_set_sensitive (helper.align_picker, TRUE);
+ break;
+ }
+
+ format_state = modest_msg_edit_window_get_format_state (window);
+ switch (format_state->justification) {
+ case GTK_JUSTIFY_RIGHT:
+ hildon_picker_button_set_active (HILDON_PICKER_BUTTON (helper.align_picker), 2);
+ break;
+ case GTK_JUSTIFY_CENTER:
+ hildon_picker_button_set_active (HILDON_PICKER_BUTTON (helper.align_picker), 1);
+ break;
+ default:
+ hildon_picker_button_set_active (HILDON_PICKER_BUTTON (helper.align_picker), 0);
+ break;
+
+ }
+ g_free (format_state);
+
+ /* Signal connects */
+ g_signal_connect (G_OBJECT (high_toggle), "toggled", G_CALLBACK (on_priority_toggle), &helper);
+ g_signal_connect (G_OBJECT (medium_toggle), "toggled", G_CALLBACK (on_priority_toggle), &helper);
+ g_signal_connect (G_OBJECT (low_toggle), "toggled", G_CALLBACK (on_priority_toggle), &helper);
+ g_signal_connect (G_OBJECT (format_picker), "value-changed", G_CALLBACK (on_format_picker_value_changed), &helper);
+ g_signal_connect (G_OBJECT (helper.align_picker), "value-changed",
+ G_CALLBACK (on_align_picker_value_changed), &helper);
gtk_dialog_run (GTK_DIALOG (dialog));
/* Read new values */
gtk_widget_destroy (dialog);
- g_slist_free (priority_group);
+ g_slist_free (helper.priority_group);
}
{
modest_msg_edit_window_show_msg_settings_dialog (window);
}
+
+
+static void add_button_to_menu (ModestMsgEditWindow *self,
+ HildonAppMenu *menu,
+ GtkButton *button,
+ ModestDimmingRulesGroup *group,
+ GCallback dimming_callback)
+{
+ if (dimming_callback)
+ modest_dimming_rules_group_add_widget_rule (group,
+ GTK_WIDGET (button),
+ dimming_callback,
+ MODEST_WINDOW (self));
+ hildon_app_menu_append (menu, GTK_BUTTON (button));
+}
+
+static void add_to_menu (ModestMsgEditWindow *self,
+ HildonAppMenu *menu,
+ gchar *label,
+ GCallback callback,
+ ModestDimmingRulesGroup *group,
+ GCallback dimming_callback)
+{
+ GtkWidget *button;
+
+ button = gtk_button_new_with_label (label);
+ g_signal_connect_after (G_OBJECT (button), "clicked",
+ callback, (gpointer) self);
+ add_button_to_menu (self, menu, GTK_BUTTON (button), group, dimming_callback);
+}
+
+static void
+on_cc_button_toggled (HildonCheckButton *button,
+ ModestMsgEditWindow *window)
+{
+ g_return_if_fail (MODEST_MSG_EDIT_WINDOW (window));
+
+ modest_msg_edit_window_show_cc (MODEST_MSG_EDIT_WINDOW (window),
+ hildon_check_button_get_active (button));
+}
+
+static void
+on_bcc_button_toggled (HildonCheckButton *button,
+ ModestMsgEditWindow *window)
+{
+ g_return_if_fail (MODEST_MSG_EDIT_WINDOW (window));
+
+ modest_msg_edit_window_show_bcc (MODEST_MSG_EDIT_WINDOW (window),
+ hildon_check_button_get_active (button));
+}
+
+static void
+on_find_toolbar_button_toggled (HildonCheckButton *button,
+ ModestMsgEditWindow *window)
+{
+ g_return_if_fail (MODEST_MSG_EDIT_WINDOW (window));
+ modest_msg_edit_window_toggle_find_toolbar (MODEST_MSG_EDIT_WINDOW (window),
+ hildon_check_button_get_active (button));
+
+}
+
+static void
+setup_menu (ModestMsgEditWindow *self, ModestDimmingRulesGroup *group)
+{
+ ModestMsgEditWindowPrivate *priv = NULL;
+
+ g_return_if_fail (MODEST_IS_MSG_EDIT_WINDOW(self));
+
+ priv = MODEST_MSG_EDIT_WINDOW_GET_PRIVATE (self);
+
+ priv->app_menu = hildon_app_menu_new ();
+
+ /* Settings menu buttons */
+ add_to_menu (self, HILDON_APP_MENU (priv->app_menu), _("mcen_me_editor_checknames"),
+ G_CALLBACK (modest_ui_actions_on_check_names),
+ group, NULL);
+ add_to_menu (self, HILDON_APP_MENU (priv->app_menu), _("mcen_me_inbox_undo"),
+ G_CALLBACK (modest_ui_actions_on_undo),
+ group, G_CALLBACK (modest_ui_dimming_rules_on_undo));
+
+ priv->cc_button = hildon_check_button_new (0);
+ gtk_button_set_label (GTK_BUTTON (priv->cc_button), _("mcen_me_editor_showcc"));
+ hildon_check_button_set_active (HILDON_CHECK_BUTTON (priv->cc_button),
+ FALSE);
+ add_button_to_menu (self, HILDON_APP_MENU (priv->app_menu), GTK_BUTTON (priv->cc_button),
+ group, NULL);
+ g_signal_connect (G_OBJECT (priv->cc_button), "toggled",
+ G_CALLBACK (on_cc_button_toggled), (gpointer) self);
+ priv->bcc_button = hildon_check_button_new (0);
+ gtk_button_set_label (GTK_BUTTON (priv->bcc_button), _("mcen_me_editor_showbcc"));
+ hildon_check_button_set_active (HILDON_CHECK_BUTTON (priv->bcc_button),
+ FALSE);
+ add_button_to_menu (self, HILDON_APP_MENU (priv->app_menu), GTK_BUTTON (priv->bcc_button),
+ group, NULL);
+ g_signal_connect (G_OBJECT (priv->bcc_button), "toggled",
+ G_CALLBACK (on_bcc_button_toggled), (gpointer) self);
+
+ add_to_menu (self, HILDON_APP_MENU (priv->app_menu), _("mcen_me_editor_attach_inlineimage"),
+ G_CALLBACK (modest_ui_actions_on_insert_image),
+ group, G_CALLBACK (modest_ui_dimming_rules_on_set_style));
+ add_to_menu (self, HILDON_APP_MENU (priv->app_menu), _("mcen_me_inbox_remove_attachments"),
+ G_CALLBACK (modest_ui_actions_on_remove_attachments),
+ group, G_CALLBACK (modest_ui_dimming_rules_on_editor_remove_attachment));
+ add_to_menu (self, HILDON_APP_MENU (priv->app_menu), _("TODO: Message settings..."),
+ G_CALLBACK (on_message_settings),
+ group, NULL);
+ priv->find_toolbar_button = hildon_check_button_new (0);
+ gtk_button_set_label (GTK_BUTTON (priv->find_toolbar_button), _("mcen_me_viewer_find"));
+ hildon_check_button_set_active (HILDON_CHECK_BUTTON (priv->find_toolbar_button),
+ FALSE);
+ add_button_to_menu (self, HILDON_APP_MENU (priv->app_menu), GTK_BUTTON (priv->find_toolbar_button),
+ group, NULL);
+ g_signal_connect (G_OBJECT (priv->find_toolbar_button), "toggled",
+ G_CALLBACK (on_find_toolbar_button_toggled), (gpointer) self);
+
+ hildon_stackable_window_set_main_menu (HILDON_STACKABLE_WINDOW (self),
+ HILDON_APP_MENU (priv->app_menu));
+}
+
+static gboolean
+modest_msg_edit_window_toggle_menu (HildonWindow *window,
+ guint button,
+ guint32 time)
+{
+ ModestMsgEditWindowPrivate *priv = NULL;
+
+ priv = MODEST_MSG_EDIT_WINDOW_GET_PRIVATE (window);
+
+ modest_ui_actions_check_menu_dimming_rules (MODEST_WINDOW (window));
+
+ gtk_widget_queue_resize (priv->app_menu);
+
+ return HILDON_WINDOW_CLASS (parent_class)->toggle_menu (window, button, time);
+}
+