From c229d453ed240b58416f8f7d2d217908e88f7498 Mon Sep 17 00:00:00 2001 From: Vincent Vanwaelscappel Date: Wed, 11 Sep 2013 11:18:00 +0000 Subject: [PATCH] --- js/libs/fluidbook/fluidbook.js | 51 ++++++++++---------------- js/libs/fluidbook/fluidbook.support.js | 11 +++--- js/libs/fluidbook/fluidbook.touch.js | 15 ++++++-- 3 files changed, 38 insertions(+), 39 deletions(-) diff --git a/js/libs/fluidbook/fluidbook.js b/js/libs/fluidbook/fluidbook.js index e5ec71f6..a3b4e3d5 100644 --- a/js/libs/fluidbook/fluidbook.js +++ b/js/libs/fluidbook/fluidbook.js @@ -359,37 +359,21 @@ Fluidbook.prototype = { } } pageNr = this.normalizePage(pageNr); - if (pageNr == this.normalizePage(this.currentPage) || this.currentPage == -1) { - // No page change, just reload - this.pageTransition1D(pageNr); - return; - } - if (!this.displayOnePage && this.datas.mobileTransitions == 'flip') { - if (this.support.transitions3d) { - this.pageTransition3D(pageNr); - } else if (this.support.transitions2d) { - this.pageTransition2D(pageNr); - } else { - this.pageTransition1D(pageNr); - } - } else if ((this.displayOnePage && this.datas.mobileTransitions == 'flip')) { - if (this.support.transitions2d) { - this.pageTransition2DPortrait(pageNr); - } else { - this.pageTransition1D(pageNr); - } - } else if (this.datas.mobileTransitions == 'slide') { - if (this.support.transitions2d) { - this.pageTransition2D(pageNr); - } else { - this.pageTransition1D(pageNr); - } + if (pageNr == this.normalizePage(this.currentPage) || this.currentPage == -1 || !this.support.transitions2d || this.datas.mobileTransitions == 'none') { + return this.pageTransition1D(pageNr); } - else { - this.pageTransition1D(pageNr); + + if (this.displayOnePage) { + return this.pageTransition2DPortrait(pageNr); + } + + if (!this.support.transitions3d || this.datas.mobileTransitions == 'slide') { + return this.pageTransition2D(pageNr); } + + return this.pageTransition3D(pageNr); }, pageTransition3D: function(pageNr) { @@ -478,7 +462,12 @@ Fluidbook.prototype = { res.flat = [res.currentLeft, newPage]; res.flip = [newPage + 1, res.currentRight]; } - res.end = [newPage + 1, newPage]; + + if (this.displayOnePage) { + res.end = [newPage, newPage + 1]; + } else { + res.end = [newPage + 1, newPage]; + } } res.loading = [res.currentLeft, res.currentRight]; return JSON.parse(JSON.stringify(res)); @@ -612,6 +601,7 @@ Fluidbook.prototype = { this.hidePage('right'); } var turning = this.getTurningPages(pageNr); + fb(turning); this.beforeTransition(pageNr); this.loader.setContentsInDoublePage(doublePage, turning.end, true, function() { $this.afterTransition(page); @@ -671,11 +661,10 @@ Fluidbook.prototype = { var min, max; - if (page > 0) { min = this.physicalToVirtual(page); } else { - min; + min = ''; } page++; @@ -686,7 +675,7 @@ Fluidbook.prototype = { } - if (this.displayOnePage || this.l10n.dir == 'ltr') { + if (this.l10n.dir == 'ltr') { $("#pagesnumbers .left").html(min); $("#pagesnumbers .right").html(max); } else { diff --git a/js/libs/fluidbook/fluidbook.support.js b/js/libs/fluidbook/fluidbook.support.js index d5b92364..5f59b376 100644 --- a/js/libs/fluidbook/fluidbook.support.js +++ b/js/libs/fluidbook/fluidbook.support.js @@ -5,8 +5,9 @@ function FluidbookSupport(fluidbook) { this.android3 = this.android && this.userAgent.search(/android 3/i) > -1; this.iOS = this.userAgent.search(/ipad/i) > -1 || this.userAgent.search(/iphone/i) > -1 || this.userAgent.search(/ipod/i) > -1; - this.transitions3d = Modernizr.csstransforms3d && Modernizr.csstransitions && Modernizr.csstransformspreserve3d; this.transitions2d = Modernizr.csstransforms && Modernizr.csstransitions; + this.transitions3d = Modernizr.csstransforms3d && Modernizr.csstransformspreserve3d && this.transitions2d; + this.transitionendevent = null; if (Modernizr.mq('(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi)')) { this.resolution = this.fluidbook.datas.retinaResolution; @@ -76,8 +77,8 @@ FluidbookSupport.prototype = { return t; }, initEvents: function() { - - var $this=this; + + var $this = this; if (!this.isMobile) { $(window).resize(function() { @@ -115,9 +116,9 @@ FluidbookSupport.prototype = { try { if (this.fluidbook.pad && this.fluidbook.pad.enabled) { return 0; - }else if(this.fluidbook.datas.mobileNavigationType=='landscape'){ + } else if (this.fluidbook.datas.mobileNavigationType == 'landscape') { return 90; - }else if(this.fluidbook.datas.mobileNavigationType=='portrait'){ + } else if (this.fluidbook.datas.mobileNavigationType == 'portrait') { return 0; } } catch (err) { diff --git a/js/libs/fluidbook/fluidbook.touch.js b/js/libs/fluidbook/fluidbook.touch.js index 0d5372f4..b9b17c17 100644 --- a/js/libs/fluidbook/fluidbook.touch.js +++ b/js/libs/fluidbook/fluidbook.touch.js @@ -53,7 +53,7 @@ FluidbookTouch.prototype = { return this._move(e.screenX, e.screenY); }, allowMove: function() { - return !(this.fluidbook.support.getZoomLevel() <= 1 && !this.fluidbook.viewMode()); + return !(this.fluidbook.support.getZoomLevel() <= 1 && !this.fluidbook.viewMode()); }, allowSlide: function() { return !(this.gesturing || this.fluidbook.support.getZoomLevel() > 1 || this.fluidbook.viewMode() || this.fluidbook.help.isVisible()); @@ -131,10 +131,19 @@ FluidbookTouch.prototype = { } if (this.allowSlide()) { if (this.offsetX < -this.triggerOffset) { - this.fluidbook.goNextPage(); + if (this.fluidbook.l10n.dir == 'ltr') { + this.fluidbook.goNextPage(); + } else { + this.fluidbook.goPreviousPage(); + } + return true; } else if (this.offsetX > this.triggerOffset) { - this.fluidbook.goPreviousPage(); + if (this.fluidbook.l10n.dir == 'ltr') { + this.fluidbook.goPreviousPage(); + } else { + this.fluidbook.goNextPage(); + } return true; } } -- 2.39.5