summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeorges Basile Stavracas Neto <georges.stavracas@gmail.com>2015-08-07 10:34:30 -0300
committerGeorges Basile Stavracas Neto <georges.stavracas@gmail.com>2015-08-07 13:44:09 -0300
commitae96063471fd31f1c58818dfa4b0440ce8302f7e (patch)
treeced61240d99feae96ca4910f218f51de788ff2fd
parentd0b5a408ee5eae4e7f6ad142503be59bdbbcf4ec (diff)
downloadnautilus-ae96063471fd31f1c58818dfa4b0440ce8302f7e.tar.gz
window-slot: show window when view starts loading
NautilusView directly access NautilusWindow to make sure the window is shown when the view starts loading, and not before this. Since we're restricting communication between NautilusView and other widgets, the view shouldn't ask the window directly. Fixed by making NautilusWindowSlot handle the visibility of the window on NautilusView::begin-loading signal. Also, this patch gets rid of an old code that updates the title of supposedly hidden slots that were present or created before showing the window. which is something doesn't happen anyomore. https://bugzilla.gnome.org/show_bug.cgi?id=753356
-rw-r--r--src/nautilus-view.c3
-rw-r--r--src/nautilus-window-slot.c4
-rw-r--r--src/nautilus-window.c21
-rw-r--r--src/nautilus-window.h3
4 files changed, 4 insertions, 27 deletions
diff --git a/src/nautilus-view.c b/src/nautilus-view.c
index aa64f461e..073bacc0e 100644
--- a/src/nautilus-view.c
+++ b/src/nautilus-view.c
@@ -7030,9 +7030,6 @@ finish_loading (NautilusView *view)
check_empty_states (view);
- /* Assume we have now all information to show window */
- nautilus_window_view_visible (nautilus_view_get_window (view), NAUTILUS_VIEW (view));
-
if (nautilus_directory_are_all_files_seen (view->details->model)) {
/* Unschedule a pending update and schedule a new one with the minimal
* update interval. This gives the view a short chance at gathering the
diff --git a/src/nautilus-window-slot.c b/src/nautilus-window-slot.c
index f87b14b99..766c6a564 100644
--- a/src/nautilus-window-slot.c
+++ b/src/nautilus-window-slot.c
@@ -2155,6 +2155,10 @@ view_begin_loading_cb (NautilusView *view,
nautilus_window_slot_set_allow_stop (slot, TRUE);
}
+ gtk_widget_grab_focus (GTK_WIDGET (slot->details->window));
+
+ gtk_widget_show (GTK_WIDGET (slot->details->window));
+
nautilus_profile_end (NULL);
}
diff --git a/src/nautilus-window.c b/src/nautilus-window.c
index f2459b5b1..6daebbfff 100644
--- a/src/nautilus-window.c
+++ b/src/nautilus-window.c
@@ -2195,27 +2195,6 @@ nautilus_window_finalize (GObject *object)
G_OBJECT_CLASS (nautilus_window_parent_class)->finalize (object);
}
-void
-nautilus_window_view_visible (NautilusWindow *window,
- NautilusView *view)
-{
- NautilusWindowSlot *slot;
- GList *l;
-
- g_return_if_fail (NAUTILUS_IS_WINDOW (window));
-
- /* Look for other non-visible slots */
- for (l = window->priv->slots; l != NULL; l = l->next) {
- slot = l->data;
- nautilus_window_slot_update_title (slot);
- }
-
- gtk_widget_grab_focus (GTK_WIDGET (window));
-
- /* All slots, show window */
- gtk_widget_show (GTK_WIDGET (window));
-}
-
static void
nautilus_window_save_geometry (NautilusWindow *window)
{
diff --git a/src/nautilus-window.h b/src/nautilus-window.h
index ed102d89f..7bb3e2d04 100644
--- a/src/nautilus-window.h
+++ b/src/nautilus-window.h
@@ -109,9 +109,6 @@ void nautilus_window_close (NautilusWindow *window
void nautilus_window_go_to (NautilusWindow *window,
GFile *location);
void nautilus_window_new_tab (NautilusWindow *window);
-
-void nautilus_window_view_visible (NautilusWindow *window,
- NautilusView *view);
NautilusWindowSlot * nautilus_window_get_active_slot (NautilusWindow *window);
void nautilus_window_set_active_slot (NautilusWindow *window,
NautilusWindowSlot *slot);