static gboolean button_press_event_callback (GtkWidget *widget, GdkEventButton *event, gpointer user_data) { if (event->button == 2 && event->type == GDK_BUTTON_PRESS) { /* Open new tab on middle click. */ CajaHistorySidebar *sidebar; GtkTreePath *path; sidebar = CAJA_HISTORY_SIDEBAR (user_data); g_assert (sidebar->tree_view == GTK_TREE_VIEW (widget)); if (gtk_tree_view_get_path_at_pos (sidebar->tree_view, event->x, event->y, &path, NULL, NULL, NULL)) { open_selected_item (sidebar, path, CAJA_WINDOW_OPEN_FLAG_NEW_TAB); gtk_tree_path_free (path); } } return FALSE; }
static void click_policy_changed_callback (gpointer user_data) { CajaHistorySidebar *sidebar; sidebar = CAJA_HISTORY_SIDEBAR (user_data); update_click_policy (sidebar); }
static void caja_history_sidebar_finalize (GObject *object) { CajaHistorySidebar *sidebar; sidebar = CAJA_HISTORY_SIDEBAR (object); g_signal_handlers_disconnect_by_func (caja_preferences, click_policy_changed_callback, sidebar); G_OBJECT_CLASS (caja_history_sidebar_parent_class)->finalize (object); }
static void row_activated_callback (GtkTreeView *tree_view, GtkTreePath *path, GtkTreeViewColumn *column, gpointer user_data) { CajaHistorySidebar *sidebar; sidebar = CAJA_HISTORY_SIDEBAR (user_data); g_assert (sidebar->tree_view == tree_view); open_selected_item (sidebar, path, 0); }
static void caja_history_sidebar_finalize (GObject *object) { CajaHistorySidebar *sidebar; sidebar = CAJA_HISTORY_SIDEBAR (object); eel_preferences_remove_callback (CAJA_PREFERENCES_CLICK_POLICY, click_policy_changed_callback, sidebar); G_OBJECT_CLASS (caja_history_sidebar_parent_class)->finalize (object); }