summaryrefslogtreecommitdiffstats
path: root/thumbs.c
diff options
context:
space:
mode:
authorBert Münnich <be.muennich@googlemail.com>2012-07-15 18:52:30 +0200
committerBert Münnich <be.muennich@googlemail.com>2012-07-15 18:52:30 +0200
commit5b6467913cca4086ebb6056e7235a3c78570ce6f (patch)
treef7284eee7f729791af53e1a0ccc00b6be4d80226 /thumbs.c
parentc330b55de4035b058965d45989a14662b99a77a3 (diff)
downloadnsxiv-5b6467913cca4086ebb6056e7235a3c78570ce6f.tar.zst
Made remote changes adhere to code style
Diffstat (limited to 'thumbs.c')
-rw-r--r--thumbs.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/thumbs.c b/thumbs.c
index 175d3dd..5dec4a5 100644
--- a/thumbs.c
+++ b/thumbs.c
@@ -390,27 +390,29 @@ void tns_highlight(tns_t *tns, int n, bool hl) {
}
}
-bool tns_move_selection(tns_t *tns, direction_t dir, int count) {
- int old;
- int c = (count > 0 ? count : 1);
+bool tns_move_selection(tns_t *tns, direction_t dir, int cnt) {
+ int old, max;
if (tns == NULL || tns->thumbs == NULL)
return false;
old = tns->sel;
+ cnt = cnt > 1 ? cnt : 1;
switch (dir) {
case DIR_UP:
- tns->sel = MAX(tns->sel - c * tns->cols, tns->sel % tns->cols);
+ tns->sel = MAX(tns->sel - cnt * tns->cols, tns->sel % tns->cols);
break;
case DIR_DOWN:
- tns->sel = MIN(tns->sel + c * tns->cols, tns->cols * ((tns->cnt - 1) / tns->cols) + MIN((tns->cnt - 1) % tns->cols, tns->sel % tns->cols));
+ max = tns->cols * ((tns->cnt - 1) / tns->cols) +
+ MIN((tns->cnt - 1) % tns->cols, tns->sel % tns->cols);
+ tns->sel = MIN(tns->sel + cnt * tns->cols, max);
break;
case DIR_LEFT:
- tns->sel = MAX(tns->sel - c, 0);
+ tns->sel = MAX(tns->sel - cnt, 0);
break;
case DIR_RIGHT:
- tns->sel = MIN(tns->sel + c, tns->cnt - 1);
+ tns->sel = MIN(tns->sel + cnt, tns->cnt - 1);
break;
}