diff options
| -rw-r--r-- | image.c | 4 | ||||
| -rw-r--r-- | image.h | 2 | ||||
| -rw-r--r-- | main.c | 2 | ||||
| -rw-r--r-- | options.c | 9 | ||||
| -rw-r--r-- | options.h | 2 | ||||
| -rw-r--r-- | sxiv.1 | 4 | 
6 files changed, 12 insertions, 11 deletions
@@ -74,8 +74,8 @@ void img_init(img_t *img, win_t *win)  	imlib_context_set_color_modifier(img->cmod);  	img->gamma = MIN(MAX(options->gamma, -GAMMA_RANGE), GAMMA_RANGE); -	img->ss.on = options->slideshow > 0; -	img->ss.delay = options->slideshow > 0 ? options->slideshow : SLIDESHOW_DELAY; +	img->ss.on = options->slideshow > 0.0; +	img->ss.delay = options->slideshow > 0.0 ? options->slideshow : SLIDESHOW_DELAY;  }  #if HAVE_LIBEXIF @@ -60,7 +60,7 @@ typedef struct {  	struct {  		bool on; -		int delay; +		float delay;  	} ss;  	multi_img_t multi; @@ -372,7 +372,7 @@ void update_info(void)  	} else {  		bar_put(r, "%s", mark);  		if (img.ss.on) -			bar_put(r, "%ds | ", img.ss.delay); +			bar_put(r, "%2.1fs | ", img.ss.delay);  		if (img.gamma != 0)  			bar_put(r, "G%+d | ", img.gamma);  		bar_put(r, "%3d%% | ", (int) (img.zoom * 100.0)); @@ -44,6 +44,7 @@ void print_version(void)  void parse_options(int argc, char **argv)  {  	int n, opt; +	float f;  	char *end, *s;  	const char *scalemodes = "dfwh"; @@ -59,7 +60,7 @@ void parse_options(int argc, char **argv)  	_options.zoom = 1.0;  	_options.animate = false;  	_options.gamma = 0; -	_options.slideshow = 0; +	_options.slideshow = 0.0;  	_options.fullscreen = false;  	_options.embed = 0; @@ -128,10 +129,10 @@ void parse_options(int argc, char **argv)  				_options.recursive = true;  				break;  			case 'S': -				n = strtol(optarg, &end, 0); -				if (*end != '\0' || n <= 0) +				f = (float) strtof(optarg, &end); +				if (*end != '\0' || f <= 0.0)  					error(EXIT_FAILURE, 0, "Invalid argument for option -S: %s", optarg); -				_options.slideshow = n; +				_options.slideshow = (float) f;  				break;  			case 's':  				s = strchr(scalemodes, optarg[0]); @@ -36,7 +36,7 @@ typedef struct {  	float zoom;  	bool animate;  	int gamma; -	int slideshow; +	float slideshow;  	/* window: */  	bool fullscreen; @@ -81,7 +81,7 @@ Be quiet, disable warnings to standard error stream.  Search the given directories recursively for images to view.  .TP  .BI "\-S " DELAY -Start in slideshow mode. Set the delay between images to DELAY seconds. +Start in slideshow mode. Set the delay between images to DELAY (float, e.g. 1, 3.1, 0.01) seconds.  .TP  .BI "\-s " MODE  Set scale mode according to MODE character. Supported modes are: [d]own,  @@ -330,7 +330,7 @@ Toggle visibility of alpha-channel, i.e. image transparency.  .TP  .B s  Toggle slideshow mode and/or set the delay between images to -.I count +.I count (integer prefix only)  seconds.  .SH MOUSE COMMANDS  The following mouse mappings are available in image mode:  | 
