[evince/wip/cdavis/hdywindow: 1/2] window: Remove fullscreen overlay




commit 57009e14560a9eea8f85429b0f16cb826a1e9063
Author: Christopher Davis <brainblasted disroot org>
Date:   Thu Feb 4 23:51:22 2021 -0800

    window: Remove fullscreen overlay
    
    The way we use it now isn't needed with HdyWindow.
    
    Closes #1442, #336

 shell/ev-window.c | 168 +-----------------------------------------------------
 1 file changed, 2 insertions(+), 166 deletions(-)
---
diff --git a/shell/ev-window.c b/shell/ev-window.c
index 95516b41..2ceee0c1 100644
--- a/shell/ev-window.c
+++ b/shell/ev-window.c
@@ -164,14 +164,6 @@ typedef struct {
        guint progress_idle;
        GCancellable *progress_cancellable;
 
-       /* Fullscreen */
-       GtkWidget *fs_overlay;
-       GtkWidget *fs_eventbox;
-       GtkWidget *fs_revealer;
-       GtkWidget *fs_toolbar;
-       gboolean   fs_pointer_on_toolbar;
-       guint      fs_timeout_id;
-
        /* Loading message */
        guint loading_message_timeout;
 
@@ -409,7 +401,6 @@ static void     ev_window_destroy_recent_view           (EvWindow         *ev_wi
 static void     recent_view_item_activated_cb           (EvRecentView     *recent_view,
                                                          const char       *uri,
                                                          EvWindow         *ev_window);
-static void     ev_window_fullscreen_show_toolbar       (EvWindow         *ev_window);
 static void     ev_window_begin_add_annot               (EvWindow         *ev_window,
                                                         EvAnnotationType  annot_type);
 static void    ev_window_cancel_add_annot              (EvWindow *window);
@@ -683,9 +674,6 @@ update_chrome_visibility (EvWindow *window)
 
        set_widget_visibility (priv->toolbar, toolbar);
        set_widget_visibility (priv->sidebar, sidebar);
-
-       if (toolbar && ev_document_model_get_fullscreen (priv->model))
-               ev_window_fullscreen_show_toolbar (window);
 }
 
 static void
@@ -4221,7 +4209,7 @@ ev_window_cmd_focus_page_selector (GSimpleAction *action,
        update_chrome_flag (window, EV_CHROME_RAISE_TOOLBAR, TRUE);
        update_chrome_visibility (window);
 
-       toolbar = priv->fs_toolbar ? EV_TOOLBAR (priv->fs_toolbar) : EV_TOOLBAR (priv->toolbar);
+       toolbar = EV_TOOLBAR (priv->toolbar);
        page_selector = ev_toolbar_get_page_selector (toolbar);
        ev_page_action_widget_grab_focus (EV_PAGE_ACTION_WIDGET (page_selector));
 }
@@ -4526,10 +4514,6 @@ ev_window_update_links_model (EvWindow *window)
 
        page_selector = ev_toolbar_get_page_selector (EV_TOOLBAR (priv->toolbar));
        ev_page_action_widget_update_links_model (EV_PAGE_ACTION_WIDGET (page_selector), model);
-       if (priv->fs_toolbar) {
-               page_selector = ev_toolbar_get_page_selector (EV_TOOLBAR (priv->fs_toolbar));
-               ev_page_action_widget_update_links_model (EV_PAGE_ACTION_WIDGET (page_selector), model);
-       }
        g_object_unref (model);
 }
 
@@ -4545,91 +4529,6 @@ ev_window_update_fullscreen_action (EvWindow *window)
        g_simple_action_set_state (G_SIMPLE_ACTION (action), g_variant_new_boolean (fullscreen));
 }
 
-static void
-ev_window_fullscreen_hide_toolbar (EvWindow *window)
-{
-       EvWindowPrivate *priv = GET_PRIVATE (window);
-
-       if (!ev_toolbar_has_visible_popups (EV_TOOLBAR (priv->fs_toolbar)))
-               gtk_revealer_set_reveal_child (GTK_REVEALER (priv->fs_revealer), FALSE);
-}
-
-static gboolean
-fullscreen_toolbar_timeout_cb (EvWindow *window)
-{
-       EvWindowPrivate *priv = GET_PRIVATE (window);
-
-       ev_window_fullscreen_hide_toolbar (window);
-
-       if (!gtk_revealer_get_reveal_child (GTK_REVEALER (priv->fs_revealer))) {
-               priv->fs_timeout_id = 0;
-               return FALSE;
-       }
-
-       return TRUE;
-}
-
-static void
-ev_window_remove_fullscreen_timeout (EvWindow *window)
-{
-       EvWindowPrivate *priv = GET_PRIVATE (window);
-
-       if (priv->fs_timeout_id)
-               g_source_remove (priv->fs_timeout_id);
-       priv->fs_timeout_id = 0;
-}
-
-static void
-ev_window_add_fullscreen_timeout (EvWindow *window)
-{
-       EvWindowPrivate *priv = GET_PRIVATE (window);
-
-       ev_window_remove_fullscreen_timeout (window);
-       priv->fs_timeout_id =
-               g_timeout_add_seconds (FULLSCREEN_POPUP_TIMEOUT,
-                                      (GSourceFunc)fullscreen_toolbar_timeout_cb, window);
-}
-
-static void
-ev_window_fullscreen_show_toolbar (EvWindow *window)
-{
-       EvWindowPrivate *priv = GET_PRIVATE (window);
-
-       ev_window_remove_fullscreen_timeout (window);
-       if (gtk_revealer_get_reveal_child (GTK_REVEALER (priv->fs_revealer)))
-               return;
-
-       gtk_revealer_set_reveal_child (GTK_REVEALER (priv->fs_revealer), TRUE);
-       if (!priv->fs_pointer_on_toolbar)
-               ev_window_add_fullscreen_timeout (window);
-}
-
-static gboolean
-ev_window_fullscreen_toolbar_enter_notify (GtkWidget *widget,
-                                          GdkEvent  *event,
-                                          EvWindow  *window)
-{
-       EvWindowPrivate *priv = GET_PRIVATE (window);
-
-       priv->fs_pointer_on_toolbar = TRUE;
-       ev_window_fullscreen_show_toolbar (window);
-
-       return FALSE;
-}
-
-static gboolean
-ev_window_fullscreen_toolbar_leave_notify (GtkWidget *widget,
-                                          GdkEvent  *event,
-                                          EvWindow  *window)
-{
-       EvWindowPrivate *priv = GET_PRIVATE (window);
-
-       priv->fs_pointer_on_toolbar = FALSE;
-       ev_window_add_fullscreen_timeout (window);
-
-       return FALSE;
-}
-
 static void
 ev_window_run_fullscreen (EvWindow *window)
 {
@@ -4644,54 +4543,11 @@ ev_window_run_fullscreen (EvWindow *window)
                fullscreen_window = FALSE;
        }
 
-       priv->fs_overlay = gtk_overlay_new ();
-       priv->fs_eventbox = gtk_event_box_new ();
-       priv->fs_revealer = gtk_revealer_new ();
-       g_signal_connect (priv->fs_eventbox, "enter-notify-event",
-                         G_CALLBACK (ev_window_fullscreen_toolbar_enter_notify),
-                         window);
-       g_signal_connect (priv->fs_eventbox, "leave-notify-event",
-                         G_CALLBACK (ev_window_fullscreen_toolbar_leave_notify),
-                         window);
-
-       gtk_widget_set_size_request (priv->fs_eventbox, -1, 1);
-       gtk_widget_set_valign (priv->fs_eventbox, GTK_ALIGN_START);
-       gtk_revealer_set_transition_duration (GTK_REVEALER (priv->fs_revealer), 
FULLSCREEN_TRANSITION_DURATION);
-
-       g_object_ref (priv->main_box);
-       gtk_container_remove (GTK_CONTAINER (window), priv->main_box);
-       gtk_container_add (GTK_CONTAINER (priv->fs_overlay),
-                          priv->main_box);
-       g_object_unref (priv->main_box);
-
-       priv->fs_toolbar = ev_toolbar_new (window);
-       ev_toolbar_set_mode (EV_TOOLBAR (priv->fs_toolbar),
-                            EV_TOOLBAR_MODE_FULLSCREEN);
-
        ev_window_update_links_model (window);
-       g_signal_connect (ev_toolbar_get_page_selector (EV_TOOLBAR (priv->fs_toolbar)),
-                         "activate-link",
-                         G_CALLBACK (activate_link_cb),
-                         window);
-       gtk_container_add (GTK_CONTAINER (priv->fs_revealer),
-                          priv->fs_toolbar);
-       gtk_widget_show (priv->fs_toolbar);
-
-       gtk_container_add (GTK_CONTAINER (priv->fs_eventbox),
-                          priv->fs_revealer);
-       gtk_widget_show (priv->fs_revealer);
-       gtk_overlay_add_overlay (GTK_OVERLAY (priv->fs_overlay),
-                                priv->fs_eventbox);
-       gtk_widget_show (priv->fs_eventbox);
-
-       gtk_container_add (GTK_CONTAINER (window), priv->fs_overlay);
-       gtk_widget_show (priv->fs_overlay);
 
        ev_document_model_set_fullscreen (priv->model, TRUE);
        ev_window_update_fullscreen_action (window);
 
-       ev_window_fullscreen_show_toolbar (window);
-
        if (fullscreen_window)
                gtk_window_fullscreen (GTK_WINDOW (window));
        gtk_widget_grab_focus (priv->view);
@@ -4709,24 +4565,6 @@ ev_window_stop_fullscreen (EvWindow *window,
        if (!ev_document_model_get_fullscreen (priv->model))
                return;
 
-       gtk_container_remove (GTK_CONTAINER (priv->fs_revealer),
-                             priv->fs_toolbar);
-       priv->fs_toolbar = NULL;
-       gtk_container_remove (GTK_CONTAINER (priv->fs_eventbox),
-                             priv->fs_revealer);
-       gtk_container_remove (GTK_CONTAINER (priv->fs_overlay),
-                             priv->fs_eventbox);
-
-       g_object_ref (priv->main_box);
-       gtk_container_remove (GTK_CONTAINER (priv->fs_overlay),
-                             priv->main_box);
-       gtk_container_remove (GTK_CONTAINER (window), priv->fs_overlay);
-       priv->fs_overlay = NULL;
-       gtk_container_add (GTK_CONTAINER (window), priv->main_box);
-       g_object_unref (priv->main_box);
-
-       ev_window_remove_fullscreen_timeout (window);
-
        ev_document_model_set_fullscreen (priv->model, FALSE);
        ev_window_update_fullscreen_action (window);
 
@@ -5559,7 +5397,7 @@ ev_window_cmd_action_menu (GSimpleAction *action,
        EvWindowPrivate *priv = GET_PRIVATE (ev_window);
        EvToolbar *toolbar;
 
-       toolbar = priv->fs_toolbar ? EV_TOOLBAR (priv->fs_toolbar) : EV_TOOLBAR (priv->toolbar);
+       toolbar = EV_TOOLBAR (priv->toolbar);
        ev_toolbar_action_menu_toggle (toolbar);
 }
 
@@ -6245,8 +6083,6 @@ ev_window_dispose (GObject *object)
                priv->loading_message_timeout = 0;
        }
 
-       ev_window_remove_fullscreen_timeout (window);
-
        if (priv->monitor) {
                g_object_unref (priv->monitor);
                priv->monitor = NULL;


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]