Commit 873aecef authored by Birte Kristina Friesel's avatar Birte Kristina Friesel
Browse files

Move last selected thumbnail from events.c to thumbmode_data (thumbnail.c)

parent 80d6497a
Loading
Loading
Loading
Loading
+1 −8
Original line number Diff line number Diff line
@@ -492,20 +492,13 @@ static void feh_event_handle_MotionNotify(XEvent * ev)
		while (XCheckTypedWindowEvent(disp, ev->xmotion.window, MotionNotify, ev));
		winwid = winwidget_get_from_window(ev->xmotion.window);
		if ((winwid != NULL) && (winwid->type == WIN_TYPE_THUMBNAIL)) {
			static feh_thumbnail *last_thumb = NULL;
			feh_thumbnail *thumbnail;
			int x, y;

			x = (ev->xbutton.x - winwid->im_x) / winwid->zoom;
			y = (ev->xbutton.y - winwid->im_y) / winwid->zoom;
			thumbnail = feh_thumbnail_get_thumbnail_from_coords(x, y);
			if (thumbnail != last_thumb) {
				if (thumbnail)
			feh_thumbnail_mark_selected(winwid, thumbnail);
				else
					winwidget_render_image(winwid, 0, 0);
			}
			last_thumb = thumbnail;
		}
	}
	return;
+28 −19
Original line number Diff line number Diff line
@@ -929,6 +929,11 @@ void feh_thumbnail_show_fullsize(feh_file *thumbfile)
void feh_thumbnail_mark_selected(winwidget winwid, feh_thumbnail *thumbnail)
{
	Imlib_Image origwin;

	if (thumbnail == td.selected)
		return;

	if (thumbnail) {
		origwin = winwid->im;
		winwid->im = gib_imlib_clone_image(origwin);
		gib_imlib_image_fill_rectangle(winwid->im,
@@ -948,6 +953,10 @@ void feh_thumbnail_mark_selected(winwidget winwid, feh_thumbnail *thumbnail)
		winwidget_render_image(winwid, 0, 0);
		gib_imlib_free_image_and_decache(winwid->im);
		winwid->im = origwin;
	} else
		winwidget_render_image(winwid, 0, 0);

	td.selected = thumbnail;
}


+1 −0
Original line number Diff line number Diff line
@@ -63,6 +63,7 @@ typedef struct thumbmode_data {
	int cache_thumbnails;    /* use cached thumbnails from ~/.thumbnails */
	int cache_dim;           /* 128 = 128x128 ("normal"), 256 = 256x256 ("large") */
	char *cache_dir;         /* "normal"/"large" (.thumbnails/...) */
	feh_thumbnail *selected;     /* currently selected thumbnail */

} thumbmode_data;