https://github.com/BestImageViewer/geeqie/issues/713
When multiple images were selected, when the selection was changed GTK
triggers the selection function on every item selected in turn.
This resulted in the last item in the list being shown as the selected
image.
The code now uses the GtkTree cursor location.
{
ViewFile *vf = data;
GtkTreeIter iter;
+ GtkTreePath *cursor_path;
- if (!path_currently_selected &&
- gtk_tree_model_get_iter(store, &iter, tpath))
+ gtk_tree_view_get_cursor(GTK_TREE_VIEW(vf->listview), &cursor_path, NULL);
+ if (cursor_path)
{
+ gtk_tree_model_get_iter(store, &iter, cursor_path);
gtk_tree_model_get(store, &iter, FILE_COLUMN_POINTER, &VFLIST(vf)->select_fd, -1);
+ gtk_tree_path_free(cursor_path);
}
else
{