diff --git a/ui/ImageGrid.js b/ui/ImageGrid.js index cea33b23..047b341a 100755 --- a/ui/ImageGrid.js +++ b/ui/ImageGrid.js @@ -383,18 +383,18 @@ function nextImage(n, mode){ mode = NAV_DEFAULT } n = n == null ? 1 : n - return centerImage( - focusImage( - $('.current.image').nextAll('.image' + mode).eq(n-1))) + var target = $('.current.image').nextAll('.image' + mode) + target = target.length < n ? target.last() : target.eq(n-1) + return centerImage(focusImage(target)) } function prevImage(n, mode){ if(mode == null){ mode = NAV_DEFAULT } n = n == null ? 1 : n - return centerImage( - focusImage( - $('.current.image').prevAll('.image' + mode).eq(n-1))) + var target = $('.current.image').prevAll('.image' + mode) + target = target.length < n ? target.last() : target.eq(n-1) + return centerImage(focusImage(target)) } function nextScreenImages(mode){ return nextImage(Math.round(getScreenWidthInImages()), mode) diff --git a/ui/keybindings3.js b/ui/keybindings3.js index 887a4348..af0ccba8 100755 --- a/ui/keybindings3.js +++ b/ui/keybindings3.js @@ -146,26 +146,26 @@ var KEYBOARD_CONFIG = { // NOTE: marking does not change move direction... default: function(){ toggleImageMark() - if($('.current.image').filter(':visible').length == 0){ - centerImage(focusImage(getImageBefore()), 'css') - } if(DIRECTION == 'next'){ nextImage() } else { prevImage() } + if($('.current.image').filter(':visible').length == 0){ + centerImage(focusImage(getImageBefore())) + } }, // same as default but in reverse direction... shift: function(){ toggleImageMark() - if($('.current.image').filter(':visible').length == 0){ - centerImage(focusImage(getImageBefore()), 'css') - } if(DIRECTION == 'prev'){ nextImage() } else { prevImage() } + if($('.current.image').filter(':visible').length == 0){ + centerImage(focusImage(getImageBefore())) + } }, ctrl: function(){ var action = toggleImageMark()