static void
set_current_folder (FrFileSelectorDialog *self,
		    GFile                *folder)
{
	char *folder_name;

	if (folder != self->priv->current_folder) {
		_g_object_unref (self->priv->current_folder);
		self->priv->current_folder = g_object_ref (folder);
	}

	if (self->priv->current_folder == NULL)
		return;

	folder_name = g_file_get_parse_name (folder);
	gtk_entry_set_text (GTK_ENTRY (GET_WIDGET ("location_entry")), folder_name);
	g_free (folder_name);

	gtk_places_sidebar_set_location (GTK_PLACES_SIDEBAR (GET_WIDGET ("places_sidebar")), folder);
}
Beispiel #2
0
/* places_init */
static Places * _places_init(BrowserPluginHelper * helper)
{
#if GTK_CHECK_VERSION(3, 10, 0)
	Places * places;

	if((places = object_new(sizeof(*places))) == NULL)
		return NULL;
	places->helper = helper;
	places->widget = gtk_places_sidebar_new();
# if GTK_CHECK_VERSION(3, 12, 0)
	gtk_places_sidebar_set_local_only(GTK_PLACES_SIDEBAR(
				places->widget), TRUE);
# endif
	g_signal_connect(places->widget, "open-location", G_CALLBACK(
				_places_on_open_location), places);
	return places;
#else
	error_set("%s: %s", plugin.name, strerror(ENOSYS));
	return NULL;
#endif
}
Beispiel #3
0
GtkPlacesSidebar *cast_GtkPlacesSidebar(GtkWidget* widget) {
    return GTK_PLACES_SIDEBAR(widget);
}