mirror of
https://github.com/flynx/PortableMag.git
synced 2025-10-29 11:10:08 +00:00
added scroller.options.ignoreElements, and some minor edits...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
This commit is contained in:
parent
448dd014fc
commit
cf50545084
@ -130,8 +130,9 @@ $(document).ready(function(){
|
||||
if(Math.abs(distance) < CLICK_THRESHOLD){
|
||||
// click...
|
||||
var target = $(evt.target)
|
||||
target = getPageNumber(target.hasClass('page') ? target
|
||||
: target.parents('.page'))
|
||||
target = getPageNumber(
|
||||
target.hasClass('page') ? target
|
||||
: target.parents('.page'))
|
||||
if(target != -1){
|
||||
togglePageView()
|
||||
setCurrentPage(target)
|
||||
@ -151,6 +152,7 @@ $(document).ready(function(){
|
||||
}
|
||||
|
||||
// this makes things snap...
|
||||
// XXX add innertia if we are not snapping...
|
||||
SNAP_TO_PAGES_IN_RIBBON && setCurrentPage()
|
||||
},
|
||||
}).start()
|
||||
@ -159,6 +161,7 @@ $(document).ready(function(){
|
||||
runMagazineTemplates()
|
||||
|
||||
setCurrentPage(0)
|
||||
togglePageView('on')
|
||||
})
|
||||
|
||||
|
||||
|
||||
@ -15,12 +15,10 @@ var togglePageFitMode = createCSSClassToggler(
|
||||
'.page-fit-to-viewer',
|
||||
function(action){
|
||||
if(action == 'on'){
|
||||
console.log('fitting pages to view...')
|
||||
var n = getPageNumber()
|
||||
var scale = getMagazineScale()
|
||||
$('.page:not(.no-resize)').width($('.viewer').width()/scale)
|
||||
} else {
|
||||
console.log('restoring page sizes...')
|
||||
var n = getPageNumber()
|
||||
$('.page:not(.no-resize)').width('')
|
||||
}
|
||||
|
||||
68
lib/jli.js
68
lib/jli.js
@ -334,40 +334,21 @@ function setTransitionDuration(elem, ms){
|
||||
|
||||
// NOTE: don't understand why am I the one who has to write this...
|
||||
var SPECIAL_KEYS = {
|
||||
9: 'Tab',
|
||||
13: 'Enter',
|
||||
16: 'Shift',
|
||||
17: 'Ctrl',
|
||||
18: 'Alt',
|
||||
20: 'Caps Lock',
|
||||
27: 'Esc',
|
||||
32: 'Space',
|
||||
33: 'PgUp',
|
||||
34: 'PgDown',
|
||||
35: 'End',
|
||||
36: 'Home',
|
||||
37: 'Right',
|
||||
38: 'Up',
|
||||
39: 'Left',
|
||||
40: 'Down',
|
||||
45: 'Ins',
|
||||
46: 'Del',
|
||||
80: 'Backspace',
|
||||
91: 'Win',
|
||||
93: 'Menu',
|
||||
|
||||
112: 'F1',
|
||||
113: 'F2',
|
||||
114: 'F3',
|
||||
115: 'F4',
|
||||
116: 'F5',
|
||||
117: 'F6',
|
||||
118: 'F7',
|
||||
119: 'F8',
|
||||
120: 'F9',
|
||||
121: 'F10',
|
||||
122: 'F11',
|
||||
123: 'F12',
|
||||
// Special Keys...
|
||||
9: 'Tab', 33: 'PgUp', 45: 'Ins',
|
||||
13: 'Enter', 34: 'PgDown', 46: 'Del',
|
||||
16: 'Shift', 35: 'End', 80: 'Backspace',
|
||||
17: 'Ctrl', 36: 'Home', 91: 'Win',
|
||||
18: 'Alt', 37: 'Right', 93: 'Menu',
|
||||
20: 'Caps Lock',38: 'Up',
|
||||
27: 'Esc', 39: 'Left',
|
||||
32: 'Space', 40: 'Down',
|
||||
|
||||
// Function Keys...
|
||||
112: 'F1', 116: 'F5', 120: 'F9',
|
||||
113: 'F2', 117: 'F6', 121: 'F10',
|
||||
114: 'F3', 118: 'F7', 122: 'F11',
|
||||
115: 'F4', 119: 'F8', 123: 'F12',
|
||||
}
|
||||
|
||||
// XXX some keys look really wrong...
|
||||
@ -500,6 +481,7 @@ function makeScrollHandler(root, config){
|
||||
root = $(root)
|
||||
|
||||
// local data...
|
||||
var ignoring = false
|
||||
var scrolled
|
||||
var scrolling = false
|
||||
var touch = false
|
||||
@ -520,6 +502,14 @@ function makeScrollHandler(root, config){
|
||||
var dt
|
||||
|
||||
function startMoveHandler(evt, callback){
|
||||
// ignore...
|
||||
if(scroller.options.ignoreElements
|
||||
&& $(evt.target).closest(scroller.options.ignoreElements).length > 0){
|
||||
ignoring = true
|
||||
return
|
||||
} else {
|
||||
ignoring = false
|
||||
}
|
||||
if(event.touches != null){
|
||||
touch = true
|
||||
}
|
||||
@ -558,6 +548,9 @@ function makeScrollHandler(root, config){
|
||||
// XXX slow down drag when at limit...
|
||||
// XXX try and make this adaptive to stay ahead of the lags...
|
||||
function moveHandler(evt){
|
||||
if(ignoring){
|
||||
return
|
||||
}
|
||||
evt.preventDefault()
|
||||
t = event.timeStamp || Date.now();
|
||||
// get the user coords...
|
||||
@ -599,6 +592,10 @@ function makeScrollHandler(root, config){
|
||||
return false
|
||||
}
|
||||
function endMoveHandler(evt){
|
||||
if(ignoring){
|
||||
ignoring = false
|
||||
return
|
||||
}
|
||||
// XXX get real transition duration...
|
||||
setTransitionDuration($('.magazine'), 200)
|
||||
x = touch ? event.changedTouches[0].pageX : evt.clientX
|
||||
@ -628,10 +625,13 @@ function makeScrollHandler(root, config){
|
||||
hScroll: true,
|
||||
vScroll: true,
|
||||
|
||||
ignoreElements: '.noSwipe',
|
||||
|
||||
enabelStartEvent: false,
|
||||
enableUserScrollEvent: false,
|
||||
enableEndEvent: false,
|
||||
|
||||
// XXX
|
||||
autoCancelEvents: false,
|
||||
eventBounds: 5,
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user