static gboolean navigation_bar_focus_in_callback (GtkWidget *widget, GdkEventFocus *event, gpointer user_data) { CajaWindowPane *pane; pane = CAJA_WINDOW_PANE (user_data); caja_window_set_active_pane (pane->window, pane); return FALSE; }
static void location_button_toggled_cb (GtkToggleButton *toggle, CajaNavigationWindowPane *pane) { gboolean is_active; is_active = gtk_toggle_button_get_active (toggle); g_settings_set_boolean (caja_preferences, CAJA_PREFERENCES_ALWAYS_USE_LOCATION_ENTRY, is_active); if (is_active) { caja_location_bar_activate (CAJA_LOCATION_BAR (pane->navigation_bar)); } caja_window_set_active_pane (CAJA_WINDOW_PANE (pane)->window, CAJA_WINDOW_PANE (pane)); }
static gboolean path_bar_button_pressed_callback (GtkWidget *widget, GdkEventButton *event, CajaNavigationWindowPane *pane) { CajaWindowSlot *slot; CajaView *view; GFile *location; char *uri; caja_window_set_active_pane (CAJA_WINDOW_PANE (pane)->window, CAJA_WINDOW_PANE (pane)); g_object_set_data (G_OBJECT (widget), "handle-button-release", GINT_TO_POINTER (TRUE)); if (event->button == 3) { slot = caja_window_get_active_slot (CAJA_WINDOW_PANE (pane)->window); view = slot->content_view; if (view != NULL) { location = caja_path_bar_get_path_for_button ( CAJA_PATH_BAR (pane->path_bar), widget); if (location != NULL) { uri = g_file_get_uri (location); caja_view_pop_up_location_context_menu ( view, event, uri); g_object_unref (G_OBJECT (location)); g_free (uri); return TRUE; } } } return FALSE; }
static void caja_navigation_window_init (CajaNavigationWindow *window) { GtkUIManager *ui_manager; GtkWidget *toolbar; CajaWindow *win; CajaNavigationWindowPane *pane; GtkWidget *hpaned; GtkWidget *vbox; win = CAJA_WINDOW (window); window->details = G_TYPE_INSTANCE_GET_PRIVATE (window, CAJA_TYPE_NAVIGATION_WINDOW, CajaNavigationWindowDetails); pane = caja_navigation_window_pane_new (win); win->details->panes = g_list_prepend (win->details->panes, pane); window->details->header_size_group = gtk_size_group_new (GTK_SIZE_GROUP_VERTICAL); gtk_size_group_set_ignore_hidden (window->details->header_size_group, FALSE); #if GTK_CHECK_VERSION(3, 0, 0) window->details->content_paned = gtk_paned_new (GTK_ORIENTATION_HORIZONTAL); #else window->details->content_paned = gtk_hpaned_new (); #endif gtk_table_attach (GTK_TABLE (CAJA_WINDOW (window)->details->table), window->details->content_paned, /* X direction */ /* Y direction */ 0, 1, 3, 4, GTK_EXPAND | GTK_FILL | GTK_SHRINK, GTK_EXPAND | GTK_FILL | GTK_SHRINK, 0, 0); gtk_widget_show (window->details->content_paned); vbox = gtk_vbox_new (FALSE, 0); gtk_paned_pack2 (GTK_PANED (window->details->content_paned), vbox, TRUE, FALSE); gtk_widget_show (vbox); #if GTK_CHECK_VERSION(3, 0, 0) hpaned = gtk_paned_new (GTK_ORIENTATION_HORIZONTAL); #else hpaned = gtk_hpaned_new (); #endif gtk_box_pack_start (GTK_BOX (vbox), hpaned, TRUE, TRUE, 0); gtk_widget_show (hpaned); window->details->split_view_hpane = hpaned; gtk_box_pack_start (GTK_BOX (vbox), win->details->statusbar, FALSE, FALSE, 0); gtk_widget_show (win->details->statusbar); caja_navigation_window_pane_setup (pane); gtk_paned_pack1 (GTK_PANED(hpaned), pane->widget, TRUE, FALSE); gtk_widget_show (pane->widget); /* this has to be done after the location bar has been set up, * but before menu stuff is being called */ caja_window_set_active_pane (win, CAJA_WINDOW_PANE (pane)); caja_navigation_window_initialize_actions (window); caja_navigation_window_initialize_menus (window); ui_manager = caja_window_get_ui_manager (CAJA_WINDOW (window)); toolbar = gtk_ui_manager_get_widget (ui_manager, "/Toolbar"); #if GTK_CHECK_VERSION(3, 0, 0) gtk_style_context_add_class (gtk_widget_get_style_context (toolbar), GTK_STYLE_CLASS_PRIMARY_TOOLBAR); #endif window->details->toolbar = toolbar; gtk_table_attach (GTK_TABLE (CAJA_WINDOW (window)->details->table), toolbar, /* X direction */ /* Y direction */ 0, 1, 1, 2, GTK_EXPAND | GTK_FILL | GTK_SHRINK, 0, 0, 0); gtk_widget_show (toolbar); caja_navigation_window_initialize_toolbars (window); /* Set initial sensitivity of some buttons & menu items * now that they're all created. */ caja_navigation_window_allow_back (window, FALSE); caja_navigation_window_allow_forward (window, FALSE); g_signal_connect_swapped (caja_preferences, "changed::" CAJA_PREFERENCES_ALWAYS_USE_LOCATION_ENTRY, G_CALLBACK(always_use_location_entry_changed), window); g_signal_connect_swapped (caja_preferences, "changed::" CAJA_PREFERENCES_ALWAYS_USE_BROWSER, G_CALLBACK(always_use_browser_changed), window); }
static void search_bar_focus_in_callback (CajaSearchBar *bar, CajaWindowPane *pane) { caja_window_set_active_pane (pane->window, pane); }