From 750eafcd2e0903943321f13e763a2efc1e42877e Mon Sep 17 00:00:00 2001 From: pnorcrss <peter.james.norcross@gmail.com> Date: Wed, 31 Jul 2013 13:00:16 -0500 Subject: [PATCH 1/5] added and implemented _getSafeElemSize() --- src/viewer.js | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/viewer.js b/src/viewer.js index 8ebbd2b3..55c4cce9 100644 --- a/src/viewer.js +++ b/src/viewer.js @@ -1107,6 +1107,17 @@ $.extend( $.Viewer.prototype, $.EventHandler.prototype, $.ControlDock.prototype, } }); + +/** + * [_getSafeElemSize returns getElementSize(), but refuses to return NaN] + * @return {[NaN]} + * @private + */ +function _getSafeElemSize () { + var _nElementSize = $.getElementSize(); + return isNaN(_nElementSize) ? 0 : _nElementSize; +} + /** * @function * @private @@ -1121,7 +1132,7 @@ function openTileSource( viewer, source ) { } _this.canvas.innerHTML = ""; - THIS[ _this.hash ].prevContainerSize = $.getElementSize( _this.container ); + THIS[ _this.hash ].prevContainerSize = $._getSafeElemSize( _this.container ); if( _this.collectionMode ){ @@ -1514,7 +1525,7 @@ function updateOnce( viewer ) { //viewer.profiler.beginUpdate(); - containerSize = $.getElementSize( viewer.container ); + containerSize = $._getSafeElemSize( viewer.container ); if ( !containerSize.equals( THIS[ viewer.hash ].prevContainerSize ) ) { // maintain image position viewer.viewport.resize( containerSize, true ); From bf3dd7c0314d05987cd94e713ac596b8a396c5ad Mon Sep 17 00:00:00 2001 From: pnorcrss <peter.james.norcross@gmail.com> Date: Wed, 31 Jul 2013 13:28:38 -0500 Subject: [PATCH 2/5] fixed _getSafeElemSize() calls --- src/viewer.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/viewer.js b/src/viewer.js index 55c4cce9..ecb22a19 100644 --- a/src/viewer.js +++ b/src/viewer.js @@ -1132,7 +1132,7 @@ function openTileSource( viewer, source ) { } _this.canvas.innerHTML = ""; - THIS[ _this.hash ].prevContainerSize = $._getSafeElemSize( _this.container ); + THIS[ _this.hash ].prevContainerSize = _getSafeElemSize( _this.container ); if( _this.collectionMode ){ @@ -1525,7 +1525,7 @@ function updateOnce( viewer ) { //viewer.profiler.beginUpdate(); - containerSize = $._getSafeElemSize( viewer.container ); + containerSize = _getSafeElemSize( viewer.container ); if ( !containerSize.equals( THIS[ viewer.hash ].prevContainerSize ) ) { // maintain image position viewer.viewport.resize( containerSize, true ); From cb39fb7e3292c127f087f75a514e206db76ae9d8 Mon Sep 17 00:00:00 2001 From: pnorcrss <peter.james.norcross@gmail.com> Date: Wed, 31 Jul 2013 14:01:46 -0500 Subject: [PATCH 3/5] fixed _getSafeElemSize() --- src/viewer.js | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/viewer.js b/src/viewer.js index ecb22a19..80b16dd2 100644 --- a/src/viewer.js +++ b/src/viewer.js @@ -1113,9 +1113,13 @@ $.extend( $.Viewer.prototype, $.EventHandler.prototype, $.ControlDock.prototype, * @return {[NaN]} * @private */ -function _getSafeElemSize () { - var _nElementSize = $.getElementSize(); - return isNaN(_nElementSize) ? 0 : _nElementSize; +function _getSafeElemSize (oElement) { + var _oElementSize = $.getElementSize(oElement); + + return new $.Point ( + ( _oElementSize.x === 0 ? 1 : _oElementSize.x ), + ( _oElementSize.y === 0 ? 1 : _oElementSize.y ) + ); } /** From e47210d0bd9f4d31f49c9e6e6c22b93c5d203262 Mon Sep 17 00:00:00 2001 From: pnorcrss <peter.james.norcross@gmail.com> Date: Wed, 31 Jul 2013 14:10:44 -0500 Subject: [PATCH 4/5] refactored _getSafeElemSize() --- src/viewer.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/viewer.js b/src/viewer.js index 80b16dd2..249ba52e 100644 --- a/src/viewer.js +++ b/src/viewer.js @@ -1114,12 +1114,12 @@ $.extend( $.Viewer.prototype, $.EventHandler.prototype, $.ControlDock.prototype, * @private */ function _getSafeElemSize (oElement) { - var _oElementSize = $.getElementSize(oElement); + oElement = $.getElement( oElement ); - return new $.Point ( - ( _oElementSize.x === 0 ? 1 : _oElementSize.x ), - ( _oElementSize.y === 0 ? 1 : _oElementSize.y ) - ); + return new $.Point( + (oElement.clientWidth === 0 ? 1 : oElement.clientWidth), + (oElement.clientHeight === 0 ? 1 : oElement.clientHeight) + ); } /** From 26938ed10e0a0bf1a6bc07fac4c67c8a538ff8de Mon Sep 17 00:00:00 2001 From: pnorcrss <peter.james.norcross@gmail.com> Date: Thu, 1 Aug 2013 12:11:33 -0500 Subject: [PATCH 5/5] cleaned up docBlock and tabs in _getSafeElemWidth() --- src/viewer.js | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/viewer.js b/src/viewer.js index 249ba52e..9c1c7469 100644 --- a/src/viewer.js +++ b/src/viewer.js @@ -1109,17 +1109,19 @@ $.extend( $.Viewer.prototype, $.EventHandler.prototype, $.ControlDock.prototype, /** - * [_getSafeElemSize returns getElementSize(), but refuses to return NaN] - * @return {[NaN]} + * _getSafeElemSize returns getElementSize(), but refuses to return 0 for X or y, + * which was causing some calling operations in updateOnve and openTileSource to + * return NaN. + * @returns {point} * @private */ function _getSafeElemSize (oElement) { - oElement = $.getElement( oElement ); + oElement = $.getElement( oElement ); - return new $.Point( - (oElement.clientWidth === 0 ? 1 : oElement.clientWidth), - (oElement.clientHeight === 0 ? 1 : oElement.clientHeight) - ); + return new $.Point( + (oElement.clientWidth === 0 ? 1 : oElement.clientWidth), + (oElement.clientHeight === 0 ? 1 : oElement.clientHeight) + ); } /**