@@ -548,12 +548,10 @@ https://developer.mozilla.org/en-US/docs/Web/API/IDBDatabase/onversionchange
548
548
549
549
function internalMoveToAnchor ( theAnchor ) {
550
550
// Proceed to anchor only if anchor is valid.
551
- if ( theAnchor != - 1 ) {
552
- if ( document . getElementById ( theAnchor ) )
553
- moveToCSSAnchor ( theAnchor ) ;
554
- else
555
- if ( debug ) console . log ( "Invalid Anchor" ) && false ;
556
- }
551
+ if ( document . getElementById ( theAnchor ) )
552
+ moveToCSSAnchor ( theAnchor ) ;
553
+ else
554
+ if ( debug ) console . log ( "Invalid Anchor" ) && false ;
557
555
}
558
556
559
557
function moveToAnchor ( theAnchor ) {
@@ -616,10 +614,6 @@ https://developer.mozilla.org/en-US/docs/Web/API/IDBDatabase/onversionchange
616
614
if ( percentage === undefined )
617
615
percentage = getProgress ( ) ;
618
616
// Solve
619
- // if (flipV)
620
- // updatedPos = -((-percentage*(promptHeight-screenHeight*2))+promptHeight-screenHeight-valToCenterAtFocusArea);
621
- // else
622
- // updatedPos = (-percentage*(promptHeight-screenHeight*2))-screenHeight+valToCenterAtFocusArea;
623
617
if ( flipV )
624
618
updatedPos = - ( - percentage * ( promptHeight - screenHeight * 2 ) + valToCenterAtFocusArea - screenHeight ) - promptHeight + screenHeight ;
625
619
else
@@ -666,20 +660,17 @@ https://developer.mozilla.org/en-US/docs/Web/API/IDBDatabase/onversionchange
666
660
} , false ) ;
667
661
668
662
window . addEventListener ( "wheel" , function ( event ) {
669
- if ( ! cap ) {
670
- setCap ( ) ;
671
- if ( invertedWheel ) {
672
- if ( event . deltaY > 0 )
673
- increaseVelocity ( ) ;
674
- else
675
- decreaseVelocity ( ) ;
676
- }
677
- else {
678
- if ( event . deltaY > 0 )
679
- decreaseVelocity ( ) ;
680
- else
681
- increaseVelocity ( ) ;
682
- }
663
+ if ( invertedWheel ) {
664
+ if ( event . deltaY > 0 )
665
+ increaseVelocity ( ) ;
666
+ else
667
+ decreaseVelocity ( ) ;
668
+ }
669
+ else {
670
+ if ( event . deltaY > 0 )
671
+ decreaseVelocity ( ) ;
672
+ else
673
+ increaseVelocity ( ) ;
683
674
}
684
675
event . preventDefault ( ) ;
685
676
} , false ) ;
@@ -874,71 +865,87 @@ https://developer.mozilla.org/en-US/docs/Web/API/IDBDatabase/onversionchange
874
865
}
875
866
876
867
document . onkeydown = function ( event ) {
868
+ var key ;
877
869
// keyCode is announced to be deprecated but not all browsers support key as of 2016.
878
- setTimeout ( function ( ) {
879
- if ( event . key === undefined )
880
- event . key = event . keyCode ;
881
- if ( debug ) console . log ( "Key: " + event . key ) && false ;
882
- switch ( event . key ) {
883
- case "s" :
884
- case "S" :
885
- case "ArrowDown" :
886
- case 40 : // Down
887
- case 68 : // S
888
- increaseVelocity ( ) ;
889
- break ;
890
- case "w" :
891
- case "W" :
892
- case "ArrowUp" :
893
- case 38 : // Up
894
- case 87 : // W
895
- decreaseVelocity ( ) ;
896
- break ;
897
- case "d" :
898
- case "D" :
899
- case "ArrowRight" :
900
- case 83 : // S
901
- case 39 : // Right
902
- increaseFontSize ( ) ;
903
- break ;
904
- case "a" :
905
- case "A" :
906
- case "ArrowLeft" :
907
- case 37 : // Left
908
- case 65 : // A
909
- decreaseFontSize ( ) ;
910
- break ;
911
- case " " :
912
- case 32 : // Spacebar
913
- toggleAnimation ( ) ;
914
- break ;
915
- case "." :
916
- case 110 : // Numpad dot
917
- case 190 : // Dot
918
- syncPrompters ( ) ;
919
- break ;
920
- case "Escape" :
921
- case 27 : // ESC
922
- closeInstance ( ) ;
923
- break ;
924
- case "F8" :
925
- case 119 :
926
- event . preventDefault ( ) ;
927
- debug = ! debug ;
928
- break ;
929
- default : // Move to anchor.
930
- // If pressed any number from 0 to 9.
931
- if ( event . key >= 48 && event . key <= 57 )
932
- event . key -= 48 ;
933
- else if ( event . key >= 96 && event . key <= 105 )
934
- event . key -= 96 ;
935
- moveToAnchor ( event . key ) ;
936
- }
937
- } , 0 ) ;
870
+ if ( event . key === undefined )
871
+ event . key = event . keyCode ;
872
+ if ( debug ) console . log ( "Key: " + event . key ) && false ;
873
+ switch ( event . key ) {
874
+ case "s" :
875
+ case "S" :
876
+ case "ArrowDown" :
877
+ case 40 : // Down
878
+ case 68 : // S
879
+ increaseVelocity ( ) ;
880
+ break ;
881
+ case "w" :
882
+ case "W" :
883
+ case "ArrowUp" :
884
+ case 38 : // Up
885
+ case 87 : // W
886
+ decreaseVelocity ( ) ;
887
+ break ;
888
+ case "d" :
889
+ case "D" :
890
+ case "ArrowRight" :
891
+ case 83 : // S
892
+ case 39 : // Right
893
+ increaseFontSize ( ) ;
894
+ break ;
895
+ case "a" :
896
+ case "A" :
897
+ case "ArrowLeft" :
898
+ case 37 : // Left
899
+ case 65 : // A
900
+ decreaseFontSize ( ) ;
901
+ break ;
902
+ case " " :
903
+ case 32 : // Spacebar
904
+ toggleAnimation ( ) ;
905
+ break ;
906
+ case "." :
907
+ case 110 : // Numpad dot
908
+ case 190 : // Dot
909
+ syncPrompters ( ) ;
910
+ break ;
911
+ case "Escape" :
912
+ case 27 : // ESC
913
+ closeInstance ( ) ;
914
+ break ;
915
+ case "F8" :
916
+ case 119 :
917
+ event . preventDefault ( ) ;
918
+ debug = ! debug ;
919
+ break ;
920
+ default : // Move to anchor.
921
+ // If key is not a string
922
+ if ( ! isFunction ( event . key . indexOf ) )
923
+ key = String . fromCharCode ( event . key ) ;
924
+ else
925
+ key = event . key ;
926
+ //if ( key.indexOf("Key")===0 || key.indexOf("Digit")===0 )
927
+ // key = key.charAt(key.length-1);
928
+ if ( ! is_int ( key ) )
929
+ key = key . toLowerCase ( ) ;
930
+ if ( debug ) console . log ( key ) ;
931
+ moveToAnchor ( key ) ;
932
+ }
938
933
// Prevent arrow and spacebar scroll bug.
939
- if ( [ " " , "ArrowUp" , "ArrowDown" , "ArrowLeft" , "ArrowRight" , 32 , 37 , 38 , 39 , 40 ] . indexOf ( event . key ) > - 1 ) event . preventDefault ( ) ;
934
+ if ( [ " " , "ArrowUp" , "ArrowDown" , "ArrowLeft" , "ArrowRight" ] . indexOf ( event . key ) > - 1 )
935
+ event . preventDefault ( ) ;
940
936
} ;
941
937
938
+ function isFunction ( possibleFunction ) {
939
+ return typeof ( possibleFunction ) === typeof ( Function )
940
+ }
941
+
942
+ function is_int ( value ) {
943
+ if ( parseFloat ( value ) == parseInt ( value ) && ! isNaN ( value ) )
944
+ return true ;
945
+ else
946
+ return false ;
947
+ }
948
+
942
949
function inElectron ( ) {
943
950
return navigator . userAgent . indexOf ( "Electron" ) != - 1 ;
944
951
}
0 commit comments