diff options
author | ulteq <ulteq@web.de> | 2018-01-01 15:37:32 +0100 |
---|---|---|
committer | ulteq <ulteq@web.de> | 2018-08-24 11:40:56 +0200 |
commit | f3ea5c887e034f08d2735c7a32876f94ee9ef60a (patch) | |
tree | 39d9b9f7ce1c13f7528a15d59db45645ff0b18ed /src/slideshow.c | |
parent | fd66a0f2a1352de36fa81004325df1040d1cde98 (diff) |
Add --no-cycle option
Closes: #124
Diffstat (limited to 'src/slideshow.c')
-rw-r--r-- | src/slideshow.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/slideshow.c b/src/slideshow.c index b27a7e8..77f5a82 100644 --- a/src/slideshow.c +++ b/src/slideshow.c @@ -215,6 +215,7 @@ void feh_reload_image(winwidget w, int resize, int force_new) void slideshow_change_image(winwidget winwid, int change, int render) { gib_list *last = NULL; + gib_list *previous_file = current_file; int i = 0; int jmp = 1; /* We can't use filelist_len in the for loop, since that changes when we @@ -332,6 +333,12 @@ void slideshow_change_image(winwidget winwid, int change, int render) last = NULL; } + if (opt.no_cycle && + ((current_file == filelist && change == SLIDE_NEXT) || + (previous_file == filelist && change == SLIDE_PREV))) { + current_file = previous_file; + } + if (winwidget_loadimage(winwid, FEH_FILE(current_file->data))) { int w = gib_imlib_image_get_width(winwid->im); int h = gib_imlib_image_get_height(winwid->im); |