Commit 2ca6d3b5 authored by Birte Kristina Friesel's avatar Birte Kristina Friesel
Browse files

Add bindable button "0" for mouse movement

Useful to make feh quit (or execute actions) on mouse movement

Closes #568
parent 8be4f53f
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -1905,6 +1905,13 @@ section can also be bound to a button.
.
Reload current image
.
.It 0 Ao cursor movement while not panning, zooming, or similar Ac
.
Does not have a default binding.
By binding it to
.Cm quit ,
you can turn feh into a simple screensaver.
.
.It 1 Ao left mouse button Ac Bq pan
.
pan the current image
+11 −0
Original line number Diff line number Diff line
@@ -85,6 +85,15 @@ static void feh_set_parse_bb_partial(fehkey *button, char *binding)

	button->button = atoi(cur);
	button->state  = mod;

	if (button->button == 0) {
		/*
		 * Mod3 is unused on today's keyboards. If Mod3 is unset and button==0,
		 * we are dealing with an uninitialized or unset binding. If Mod3 is set
		 * and button==0, it refers to mouse movement.
		 */
		button->state |= Mod3Mask;
	}
}

/*
@@ -680,6 +689,8 @@ static void feh_event_handle_MotionNotify(XEvent * ev)
			y = (ev->xbutton.y - winwid->im_y) / winwid->zoom;
			thumbnail = feh_thumbnail_get_thumbnail_from_coords(x, y);
			feh_thumbnail_select(winwid, thumbnail);
		} else {
			feh_event_handle_generic(winwid, ev->xmotion.state | Mod3Mask, NoSymbol, 0);
		}
	}
	return;