From 463a48ca6647f9bd4e2a2ba62cef73fbf0d0ac8d Mon Sep 17 00:00:00 2001
From: Cyrille Bagard <nocbos@gmail.com>
Date: Sat, 20 Feb 2016 16:26:39 +0100
Subject: Handled a full screen mode.

---
 ChangeLog            |  5 +++++
 src/gui/menus/view.c | 40 ++++++++++++++++++++++++++++++++++++++++
 2 files changed, 45 insertions(+)

diff --git a/ChangeLog b/ChangeLog
index feca285..1462654 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+16-02-20  Cyrille Bagard <nocbos@gmail.com>
+
+	* src/gui/menus/view.c:
+	Handle a full screen mode.
+
 16-02-17  Cyrille Bagard <nocbos@gmail.com>
 
 	* src/gtkext/gtkdockable.c:
diff --git a/src/gui/menus/view.c b/src/gui/menus/view.c
index c6299a6..cbfa9bf 100644
--- a/src/gui/menus/view.c
+++ b/src/gui/menus/view.c
@@ -41,6 +41,9 @@ static void mcb_view_change_support(GtkRadioMenuItem *, GMenuBar *);
 /* Réagit avec le menu "Affichage -> (colonne xxx)". */
 static void mcb_view_display_column(GtkCheckMenuItem *, GMenuBar *);
 
+/* Réagit avec le menu "Affichage -> Plein écran". */
+static void mcb_view_show_full_screen(GtkCheckMenuItem *, GMenuBar *);
+
 
 
 /******************************************************************************
@@ -113,6 +116,13 @@ GtkWidget *build_menu_view(GObject *ref, GtkAccelGroup *accgroup, GMenuBar *bar)
     submenuitem = qck_create_menu_separator();
     gtk_container_add(GTK_CONTAINER(menubar), submenuitem);
 
+    /* Affichage -> Plein écran */
+
+    submenuitem = qck_create_check_menu_item(NULL, NULL, _("Full screen"),
+                                             G_CALLBACK(mcb_view_show_full_screen), bar);
+    add_accelerator_to_menu_item(submenuitem, "F11", accgroup);
+    gtk_container_add(GTK_CONTAINER(menubar), submenuitem);
+
     return result;
 
 }
@@ -277,3 +287,33 @@ static void mcb_view_display_column(GtkCheckMenuItem *menuitem, GMenuBar *bar)
     g_loaded_binary_set_column_display(binary, view, col, active);
 
 }
+
+
+/******************************************************************************
+*                                                                             *
+*  Paramètres  : menuitem = élément de menu sélectionné.                      *
+*                bar      = barre de menu parente.                            *
+*                                                                             *
+*  Description : Réagit avec le menu "Affichage -> Plein écran".              *
+*                                                                             *
+*  Retour      : -                                                            *
+*                                                                             *
+*  Remarques   : -                                                            *
+*                                                                             *
+******************************************************************************/
+
+static void mcb_view_show_full_screen(GtkCheckMenuItem *menuitem, GMenuBar *bar)
+{
+    GObject *ref;                           /* Espace de référencements    */
+    gboolean active;                        /* Etat de sélection du menu   */
+
+    ref = g_editor_item_get_global_ref(G_EDITOR_ITEM(bar));
+
+    active = gtk_check_menu_item_get_active(menuitem);
+
+    if (active)
+        gtk_window_fullscreen(GTK_WINDOW(ref));
+    else
+        gtk_window_unfullscreen(GTK_WINDOW(ref));
+
+}
-- 
cgit v0.11.2-87-g4458