Compare commits
	
		
			2 Commits
		
	
	
		
			ee5f63e50b
			...
			0857a04a3a
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 0857a04a3a | |||
| 4302ec71f2 | 
| @ -604,6 +604,8 @@ static void | ||||
| thumbnailers_start(FivBrowser *self) | ||||
| { | ||||
| 	thumbnailers_abort(self); | ||||
| 	if (!self->model) | ||||
| 		return; | ||||
| 
 | ||||
| 	// TODO(p): Leave out all paths containing .cache/thumbnails altogether.
 | ||||
| 	gchar *thumbnails_dir = fiv_thumbnail_get_root(); | ||||
| @ -909,6 +911,7 @@ set_item_size(FivBrowser *self, FivThumbnailSize size) | ||||
| 		self->item_size = size; | ||||
| 		self->item_height = fiv_thumbnail_sizes[self->item_size].size; | ||||
| 		reload_thumbnails(self); | ||||
| 		thumbnailers_start(self); | ||||
| 
 | ||||
| 		g_object_notify_by_pspec( | ||||
| 			G_OBJECT(self), browser_properties[PROP_THUMBNAIL_SIZE]); | ||||
| @ -1600,6 +1603,20 @@ fiv_browser_new(FivIoModel *model) | ||||
| 	return GTK_WIDGET(self); | ||||
| } | ||||
| 
 | ||||
| static void | ||||
| scroll_to_selection(FivBrowser *self) | ||||
| { | ||||
| 	for (gsize y = 0; y < self->layouted_rows->len; y++) { | ||||
| 		const Row *row = &g_array_index(self->layouted_rows, Row, y); | ||||
| 		for (gsize x = 0; x < row->len; x++) { | ||||
| 			if (row->items[x].entry == self->selected) { | ||||
| 				scroll_to_row(self, row); | ||||
| 				return; | ||||
| 			} | ||||
| 		} | ||||
| 	} | ||||
| } | ||||
| 
 | ||||
| void | ||||
| fiv_browser_select(FivBrowser *self, const char *uri) | ||||
| { | ||||
| @ -1614,9 +1631,8 @@ fiv_browser_select(FivBrowser *self, const char *uri) | ||||
| 		const Entry *entry = &g_array_index(self->entries, Entry, i); | ||||
| 		if (!g_strcmp0(entry->uri, uri)) { | ||||
| 			self->selected = entry; | ||||
| 			scroll_to_selection(self); | ||||
| 			break; | ||||
| 		} | ||||
| 	} | ||||
| 
 | ||||
| 	// TODO(p): Scroll to selection.
 | ||||
| } | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user