now slidesow mode disables mark view and resets it on exit...

Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
This commit is contained in:
Alex A. Naanou 2014-03-05 01:57:51 +04:00
parent 3a59838fcd
commit bd8e266f46
2 changed files with 37 additions and 0 deletions

View File

@ -117,6 +117,28 @@ Roadmap
| |
| Appears to be the same symptoms as the las worker bug (export)... | Appears to be the same symptoms as the las worker bug (export)...
| ...i.e. workers running but not being removed from pool... | ...i.e. workers running but not being removed from pool...
[_] BUG: prev/next ribbon in single image view after long jump is wrong...
| to reproduce:
| - ribbon counts:
| - current: ~146
| - target: ~108
| - Home
| - Enter (to single image mode)
| - End
| - Up/Down
|
| expected:
| - loaded image is above current...
|
| result:
| - loaded image is somewhere in the middle...
|
| reason:
| we are not updating invisible ribbons...
|
| projected solution:
| load adjacent ribbons on long jumps or when they reach end...
| use showImage to load the correct image...
[_] BUG: close button does not work on stalled progress bars... [_] BUG: close button does not work on stalled progress bars...
[_] BUG: chrome 32 / nw 0.9.1: flicker on preview swap... [_] BUG: chrome 32 / nw 0.9.1: flicker on preview swap...
| an image get's repainted black and only then the new preview | an image get's repainted black and only then the new preview

View File

@ -169,6 +169,10 @@ var toggleSingleImageMode = createCSSClassToggler(
// TODO transitions... // TODO transitions...
// TODO a real setup UI (instead of prompt) // TODO a real setup UI (instead of prompt)
//
// XXX avoid using globals:
// _pre_slideshow_marks_view
// _slideshow_timer
var toggleSlideShowMode = createCSSClassToggler( var toggleSlideShowMode = createCSSClassToggler(
'.viewer', '.viewer',
'.slideshow-mode', '.slideshow-mode',
@ -176,6 +180,9 @@ var toggleSlideShowMode = createCSSClassToggler(
if(action == 'on'){ if(action == 'on'){
updateStatus('Slideshow...').show() updateStatus('Slideshow...').show()
// XXX hackish...
_pre_slideshow_marks_view = toggleMarksView('?')
// interval from user... // interval from user...
//var interval = prompt('Slideshow interval (sec):', SLIDESHOW_INTERVAL/1000) //var interval = prompt('Slideshow interval (sec):', SLIDESHOW_INTERVAL/1000)
formDialog($('.viewer'), 'Slideshow', { formDialog($('.viewer'), 'Slideshow', {
@ -216,6 +223,8 @@ var toggleSlideShowMode = createCSSClassToggler(
hideOverlay($('.viewer')) hideOverlay($('.viewer'))
toggleSingleImageMode('on') toggleSingleImageMode('on')
toggleMarksView('off')
_slideshow_timer = setInterval(function(){ _slideshow_timer = setInterval(function(){
var cur = getImage() var cur = getImage()
// advance the image... // advance the image...
@ -227,6 +236,8 @@ var toggleSlideShowMode = createCSSClassToggler(
SLIDESHOW_DIRECTION == 'next' ? firstImage() : lastImage() SLIDESHOW_DIRECTION == 'next' ? firstImage() : lastImage()
} else { } else {
toggleSlideShowMode('off') toggleSlideShowMode('off')
toggleMarksView(window._pre_slideshow_marks_view == null ? 'on'
: window._pre_slideshow_marks_view)
return return
} }
} }
@ -238,11 +249,15 @@ var toggleSlideShowMode = createCSSClassToggler(
// user cancelled... // user cancelled...
.fail(function(){ .fail(function(){
toggleSlideShowMode('off') toggleSlideShowMode('off')
toggleMarksView(window._pre_slideshow_marks_view == null ? 'on'
: window._pre_slideshow_marks_view)
}) })
} else { } else {
window._slideshow_timer != null && clearInterval(_slideshow_timer) window._slideshow_timer != null && clearInterval(_slideshow_timer)
showStatus('Slideshow: canceled.') showStatus('Slideshow: canceled.')
toggleMarksView(window._pre_slideshow_marks_view == null ? 'on'
: window._pre_slideshow_marks_view)
hideOverlay($('.viewer')) hideOverlay($('.viewer'))
} }
}) })