-
- window->priv->fullscreen_timeout_id = 0;
- update_chrome_visibility (window);
- ev_view_show_cursor (EV_VIEW (window->priv->view));
-}
-
-
-static gboolean
-fullscreen_motion_notify_cb (GtkWidget *widget,
- GdkEventMotion *event,
- gpointer user_data)
-{
- EvWindow *window = EV_WINDOW (user_data);
-
- fullscreen_set_timeout (window);
-
- return FALSE;
-}
-
-static gboolean
-fullscreen_leave_notify_cb (GtkWidget *widget,
- GdkEventCrossing *event,
- gpointer user_data)
-{
- EvWindow *window = EV_WINDOW (user_data);
-
- fullscreen_clear_timeout (window);
-
- return FALSE;
-}
-
-static GtkWidget *
-ev_window_get_exit_fullscreen_button (EvWindow *window)
-{
- GtkWidget *button, *icon, *label, *hbox;
-
- button = gtk_button_new ();
- g_signal_connect (button, "clicked",
- G_CALLBACK (exit_fullscreen_button_clicked_cb),
- window);
- gtk_widget_show (button);
-
- hbox = gtk_hbox_new (FALSE, 2);
- gtk_widget_show (hbox);
- gtk_container_add (GTK_CONTAINER (button), hbox);
-
- icon = gtk_image_new_from_stock (EV_STOCK_LEAVE_FULLSCREEN, GTK_ICON_SIZE_BUTTON);
- gtk_widget_show (icon);
- gtk_box_pack_start (GTK_BOX (hbox), icon, FALSE, FALSE, 0);
-
- label = gtk_label_new (_("Leave Fullscreen"));
- gtk_widget_show (label);
- gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 0);
-
- return button;
-}
-
-static GtkWidget *
-ev_window_create_fullscreen_popup (EvWindow *window)
-{
- GtkWidget *popup;
- GtkWidget *hbox;
- GtkWidget *button;
- GdkScreen *screen;
-
- window->priv->fullscreen_toolbar = egg_editable_toolbar_new_with_model
- (window->priv->ui_manager, ev_application_get_toolbars_model (EV_APP, FALSE), NULL);
-
- popup = gtk_window_new (GTK_WINDOW_POPUP);
- hbox = gtk_hbox_new (FALSE, 0);
- button = ev_window_get_exit_fullscreen_button (window);
-
- gtk_container_add (GTK_CONTAINER (popup), hbox);
- gtk_box_pack_start (GTK_BOX (hbox), window->priv->fullscreen_toolbar,
- TRUE, TRUE, 0);
- gtk_box_pack_start (GTK_BOX (hbox), button, FALSE, FALSE, 0);
-
- gtk_widget_show (button);
- gtk_widget_show (hbox);
-
- gtk_window_set_resizable (GTK_WINDOW (popup), FALSE);
-
- screen = gtk_widget_get_screen (GTK_WIDGET (window));
- g_signal_connect_object (screen, "size-changed",
- G_CALLBACK (screen_size_changed_cb),
- window, 0);
- g_signal_connect_object (popup, "size_request",
- G_CALLBACK (fullscreen_popup_size_request_cb),
- window, 0);
-
- gtk_window_set_screen (GTK_WINDOW (popup),
- gtk_widget_get_screen (GTK_WIDGET (window)));
-
- return popup;
-}
-
-
-static void
-ev_window_update_fullscreen_action (EvWindow *window)
-{
- GtkAction *action;
-
- action = gtk_action_group_get_action (window->priv->action_group, "ViewFullscreen");
- g_signal_handlers_block_by_func
- (action, G_CALLBACK (ev_window_cmd_view_fullscreen), window);
- gtk_toggle_action_set_active (GTK_TOGGLE_ACTION (action),
- ev_view_get_fullscreen (EV_VIEW (window->priv->view)));
- g_signal_handlers_unblock_by_func
- (action, G_CALLBACK (ev_window_cmd_view_fullscreen), window);
-}
-
-static void
-ev_window_run_fullscreen (EvWindow *window)
-{
- if (window->priv->fullscreen_popup == NULL)
- window->priv->fullscreen_popup
- = ev_window_create_fullscreen_popup (window);