From: Youmin Ha Date: Wed, 23 Jan 2013 09:21:25 +0000 (+0900) Subject: virtuallist: fix jslint errors X-Git-Tag: accepted/tizen_2.1/20130425.023924~7^2~161 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=e66011e4aafd00022c44e07faf9c7e50fd21c2af;p=platform%2Fframework%2Fweb%2Fweb-ui-fw.git virtuallist: fix jslint errors Fixes lots of jslint errors in virtuallist. Change-Id: I913c028a608d2c69cd372c8d2787eb520b481498 --- diff --git a/src/widgets/virtuallist/js/jquery.mobile.tizen.virtuallistview.js b/src/widgets/virtuallist/js/jquery.mobile.tizen.virtuallistview.js index 454b56e..d496a13 100755 --- a/src/widgets/virtuallist/js/jquery.mobile.tizen.virtuallistview.js +++ b/src/widgets/virtuallist/js/jquery.mobile.tizen.virtuallistview.js @@ -188,8 +188,8 @@ // // this: virtuallist element // event: virtuallistview.options - // TODO: Why this arg name is 'event'? Not resonable. - // (this function is not called with event element as args!) + // TODO: Why this arg name is 'event'? Not resonable. + // (this function is not called with event element as args!) _reposition: function ( event ) { var o, t = this, @@ -214,9 +214,9 @@ padding = parseInt( $( o.id + o.childSelector ).css( "padding-left" ), 10 ) + parseInt( $( o.id + o.childSelector ).css( "padding-right" ), 10 ); // Add CSS to all
  • elements - // * absolute position - // * btn-up - // * mouse up/down/over/out styles + // * absolute position + // * btn-up + // * mouse up/down/over/out styles $( o.id + ">" + o.childSelector ) .addClass( "position_absolute" ) .addClass( "ui-btn-up-s" ) @@ -262,9 +262,11 @@ o = t.options, // options prevTopBufLen = t._num_top_items, // Previous(remembered) top buf length timerInterval = 100, - i; + i, + _scrollView, + _normalScroll; - var _scrollView = { + _scrollView = { viewTop: function ( ) { var sv = $( o.id ).parentsUntil( ".ui-page" ).find( ".ui-scrollview-view" ), svTrans = sv.css( "-webkit-transform" ), @@ -272,10 +274,10 @@ if ( svTrans ) { svTransVal = svTrans.replace( /matrix\s*\((.*)\)/, "$1" ); // matrix(a,c,b,d,tx,ty) } - return - parseInt( svTransVal.split(',')[5] ); + return - parseInt( svTransVal.split(',')[5], 10 ); } - }, - _normalScroll = { + }; + _normalScroll = { viewTop: function ( ) { return $( window ).scrollTop( ); // TODO: - _line_h? } @@ -296,15 +298,87 @@ // @param[in] vl virtuallist object (JQM object) function timerMove ( vl, undefined ) { var cy, // current y position - cti, cbi, // current top/bottom idx - oti = vl._first_index, obi = vl._last_index, // old top/botton idx + cti, // current top idx + cbi, // current bottom idx + oti = vl._first_index, // old top idx + obi = vl._last_index, // old botton idx dti, // delta of top idx - fromIdx, toIdx, // index range to be moved + fromIdx, + toIdx, // index range to be moved delta, // moveItem delta rowLen = vl.options.row, // max. # of items handled at once bufSize, // top/bottom buffer size. unit: # of items i; + // subroutine: Move itemContents in i2 into i1 + function moveItemContents( vl, i1, i2 ) { + // TODO: Find a efficient way to replace data! + // Assumption: i1 and i2 has same children. + var NODETYPE = { ELEMENT_NODE: 1, TEXT_NODE: 3 }, + c1, // child item 1 (old) + c2, // child item 2 (new) + newText, + newImg, + i; + + $( i1 ).find( ".ui-li-text-main", ".ui-li-text-sub", ".ui-li-text-sub2", "ui-btn-text" ).each( function ( index ) { + c1 = $( this ); + newText = $( i2 ).find( ".ui-li-text-main", ".ui-li-text-sub", "ui-btn-text" ).eq( index ).text(); + + $( c1 ).contents().filter( function () { + return ( this.nodeType == NODETYPE.TEXT_NODE ); + } ).get( 0 ).data = newText; + } ); + + $( i1 ).find( "img" ).each( function ( imgIdx ) { + var c1 = $( this ); + newImg = $( i2 ).find( "img" ).eq( imgIdx ).attr( "src" ); + + $( c1 ).attr( "src", newImg ); + } ); + + $( i1 ).removeData( ); // Clear old data + } + + // subroutine: Move item + function moveItem( vl, fromIdx, toIdx ) { + var itemData, // data from itemData() + item, // item element + newItem, // new item element + tmpl; // template + + log( ">> move item: " + fromIdx + " --> " + toIdx ); + + // Find current item + item = $( '#' + vl.options.itemIDPrefix + fromIdx ); // TODO: refactor ID generation! + if ( ! item ) { + return false; + } + + // Get new item + tmpl = $( "#" + vl.options.template ); + newItem = tmpl.tmpl( vl._itemData( toIdx ) ); + + // TODO: Consider touch block while moving? + + // Move item contents + moveItemContents( vl, item, newItem ); + + // clean up temporary item + newItem.remove(); + + // Move position, and set id + item.css( 'top', toIdx * vl._line_h ) + .attr( 'id' , vl.options.itemIDPrefix + toIdx ); // TODO: refactor ID generation! + + // TODO: Apply jqmdata? check following old code; + // $( oldItem ).removeData( ); // Clear old data + // if (key) { $( oldItem ).data( key, $( newItem ).data( key ) ); } + + return true; + } + + // Get current view position cy = viewTop(); @@ -318,7 +392,7 @@ cbi = cti + rowLen - 1; if ( cti < 0 ) { // Top boundary check - cbi += ( 0 - cti ); + cbi += ( - cti ); cti = 0; } else if ( cbi > ( vl._numItemData - 1 ) ) { // Bottom boundary check cti -= ( cbi - ( vl._numItemData - 1 ) ); @@ -327,7 +401,7 @@ // Calculate dti dti = cti - oti; - log("cy="+cy+", oti="+oti+", obi="+obi+", cti="+cti+", cbi="+cbi+", dti="+dti); + log( "cy=" + cy + ", oti=" + oti + ", obi=" + obi + ", cti=" + cti + ", cbi=" + cbi + ", dti=" + dti ); // switch: dti = 0 --> timer stop condition: delta=0 or scrollstop event comes. END. if ( 0 == dti ) { @@ -346,22 +420,17 @@ clearTimeout( vl.timerMoveID ); vl.timerMoveID = null; } - return; // End timerMove() - } - - // switch: dti >= # of max elements --> total replace. - else { + } else { + // switch: dti >= # of max elements --> total replace. vl.timerStillCount = 0; // Reset still counter if ( Math.abs( dti ) >= rowLen ) { fromIdx = oti; toIdx = obi; delta = dti; - log(">>> WHOLE CHANGE! delta="+delta); - } - - // switch: dti < # of max elements --> move t2b or b2t until new top/bottom idx is covered - else { + log( ">>> WHOLE CHANGE! delta=" + delta ); + } else { + // switch: dti < # of max elements --> move t2b or b2t until new top/bottom idx is covered if ( dti > 0 ) { fromIdx = oti; toIdx = oti + dti - 1; @@ -371,11 +440,11 @@ toIdx = obi; delta = -rowLen; } - log(">>> partial change. delta="+delta); + log( ">>> partial change. delta=" + delta ); } // Move items - for( i = fromIdx; i <= toIdx; i++ ) { + for ( i = fromIdx; i <= toIdx; i++ ) { moveItem( vl, i, i + delta ); // Change data and position } @@ -387,71 +456,6 @@ vl.timerMoveID = setTimeout( timerMove, timerInterval, vl ); } return; // End of function - - // Move itemContents in i2 into i1 - function moveItemContents( vl, i1, i2 ) { - // TODO: Find a efficient way to replace data! - // Assumption: i1 and i2 has same children. - var NODETYPE={ ELEMENT_NODE:1, TEXT_NODE:3 }, - c1, c2, // child item - newText, - i; - - $( i1 ).find( ".ui-li-text-main", ".ui-li-text-sub", ".ui-li-text-sub2", "ui-btn-text" ).each( function ( index ) { - c1 = $( this ); - newText = $( i2 ).find( ".ui-li-text-main", ".ui-li-text-sub", "ui-btn-text" ).eq( index ).text(); - - $( c1 ).contents().filter( function () { - return ( this.nodeType == NODETYPE.TEXT_NODE ); - } ).get( 0 ).data = newText; - } ); - - $( i1 ).find( "img" ).each( function ( imgIdx ) { - var c1 = $( this ); - newImg = $( i2 ).find( "img" ).eq( imgIdx ).attr( "src" ); - - $( c1 ).attr( "src", newImg ); - } ); - - $( i1 ).removeData( ); // Clear old data - } - - // Move item - function moveItem( vl, fromIdx, toIdx ) { - var itemData, - item, newItem, - tmpl; - - log(">> move item: "+fromIdx + " --> "+toIdx); - - // Find current item - item = $( '#' + vl.options.itemIDPrefix + fromIdx ); // TODO: refactor ID generation! - if ( ! item ) { - return false; - } - - // Get new item - tmpl = $( "#" + vl.options.template ); - newItem = tmpl.tmpl( vl._itemData( toIdx ) ); - - // TODO: Consider touch block while moving? - - // Move item contents - moveItemContents( vl, item, newItem ); - - // clean up temporary item - newItem.remove(); - - // Move position, and set id - item.css( 'top', toIdx * vl._line_h ) - .attr( 'id' , vl.options.itemIDPrefix + toIdx ); // TODO: refactor ID generation! - - // TODO: Apply jqmdata? check following old code; - // $( oldItem ).removeData( ); // Clear old data - // if (key) { $( oldItem ).data( key, $( newItem ).data( key ) ); } - - return true; - } } // ==== function start ==== @@ -517,7 +521,7 @@ $( window ).bind( "resize.virtuallist", t._resize ); // when ul is a childselector, assume that this is also a swipelist, - // and run swipelist constructor + // and run swipelist constructor if ( o.childSelector == " ul" ) { $( o.id + " ul" ).swipelist(); }