Commit bbdb885d authored by Birte Kristina Friesel's avatar Birte Kristina Friesel
Browse files

add --scroll-step option

parent 60f6a93e
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -6,6 +6,8 @@ git HEAD
      (closes #154)
    * When setting a wallpaper from a URL, do not try to store it as
      absolute path in .fehbg (closes #153)
    * Add --scroll-step <px> option to change scroll_{up,left,down,right}
      scroll offset in pixels

Fri, 28 Feb 2014 18:20:25 +0100  Daniel Friesel <derf+feh@finalrewind.org>

+11 −0
Original line number Diff line number Diff line
@@ -529,6 +529,17 @@ When not in fullscreen: Scale images to screen size if they are too big.
.
In tiling environments, this also causes the image to be centered in the window.
.
.It Cm --scroll-step Ar count
.
Scroll
.Ar count
pixels whenever scroll_up, scroll_down, scroll_left or scroll_right is pressed.
Note that this option accepts negative numbers in case you need to inverse the
scroll direction; see
.Sx KEYS CONFIG SYNTAX
to change it permanently.
Default: 20
.
.It Cm -D , --slideshow-delay Ar float
.
For slideshow mode, wait
+4 −4
Original line number Diff line number Diff line
@@ -481,22 +481,22 @@ void feh_event_handle_keypress(XEvent * ev)
			feh_thumbnail_select_prev(winwid, 1);
	}
	else if (feh_is_kp(&keys.scroll_right, keysym, state)) {
		winwid->im_x -= 20;
		winwid->im_x -= opt.scroll_step;;
		winwidget_sanitise_offsets(winwid);
		winwidget_render_image(winwid, 0, 1);
	}
	else if (feh_is_kp(&keys.scroll_left, keysym, state)) {
		winwid->im_x += 20;
		winwid->im_x += opt.scroll_step;
		winwidget_sanitise_offsets(winwid);
		winwidget_render_image(winwid, 0, 1);
	}
	else if (feh_is_kp(&keys.scroll_down, keysym, state)) {
		winwid->im_y -= 20;
		winwid->im_y -= opt.scroll_step;
		winwidget_sanitise_offsets(winwid);
		winwidget_render_image(winwid, 0, 1);
	}
	else if (feh_is_kp(&keys.scroll_up, keysym, state)) {
		winwid->im_y += 20;
		winwid->im_y += opt.scroll_step;
		winwidget_sanitise_offsets(winwid);
		winwidget_render_image(winwid, 0, 1);
	}
+5 −0
Original line number Diff line number Diff line
@@ -57,6 +57,7 @@ void init_parse_options(int argc, char **argv)
	opt.thumb_w = 60;
	opt.thumb_h = 60;
	opt.thumb_redraw = 10;
	opt.scroll_step = 20;
	opt.menu_font = estrdup(DEFAULT_MENU_FONT);
	opt.font = NULL;
	opt.menu_bg = estrdup(PREFIX "/share/feh/images/menubg_default.png");
@@ -398,6 +399,7 @@ static void feh_parse_option_array(int argc, char **argv, int finalrun)
		{"force-aliasing", 0, 0, 235},
		{"no-fehbg"      , 0, 0, 236},
		{"keep-zoom-vp"  , 0, 0, 237},
		{"scroll-step"   , 1, 0, 238},

		{0, 0, 0, 0}
	};
@@ -731,6 +733,9 @@ static void feh_parse_option_array(int argc, char **argv, int finalrun)
		case 237:
			opt.keep_zoom_vp = 1;
			break;
		case 238:
			opt.scroll_step = atoi(optarg);
			break;
		default:
			break;
		}
+3 −0
Original line number Diff line number Diff line
@@ -110,6 +110,9 @@ struct __fehoptions {
	int zoom_mode;
	unsigned char adjust_reload;

	/* signed in case someone wants to invert scrolling real quick */
	int scroll_step;

	unsigned int min_width, min_height, max_width, max_height;

	unsigned char mode;