http://www.mediawiki.org/wiki/Special:Code/MediaWiki/92442
Revision: 92442 Author: tparscal Date: 2011-07-18 15:54:25 +0000 (Mon, 18 Jul 2011) Log Message: ----------- Fixed scanBoundaries being called after render instead of before, because change events are later than insert/delete/annotate Modified Paths: -------------- trunk/parsers/wikidom/lib/es/es.TextFlow.js Modified: trunk/parsers/wikidom/lib/es/es.TextFlow.js =================================================================== --- trunk/parsers/wikidom/lib/es/es.TextFlow.js 2011-07-18 15:49:31 UTC (rev 92441) +++ trunk/parsers/wikidom/lib/es/es.TextFlow.js 2011-07-18 15:54:25 UTC (rev 92442) @@ -22,16 +22,16 @@ // Events var flow = this; - this.content.on( 'change', function() { + this.content.on( 'insert', function( args ) { flow.scanBoundaries(); - } ); - this.content.on( 'insert', function( args ) { flow.render( args.offset ); } ); this.content.on( 'remove', function( args ) { + flow.scanBoundaries(); flow.render( args.start ); } ); this.content.on( 'annotate', function( args ) { + flow.scanBoundaries(); flow.render( args.start ); } ); @@ -239,6 +239,7 @@ if ( rs.wordFit.width > rs.width ) { // The first word didn't fit, we need to split it up rs.charOffset = rs.lineStart; + var lineOffset = rs.wordOffset; rs.wordOffset++; rs.lineEnd = this.boundaries[rs.wordOffset]; do { @@ -250,20 +251,21 @@ rs.wordOffset, rs.wordCount - 1, rs.ruler, rs.width - rs.charFit.width ); if ( rs.wordFit.end > rs.wordOffset ) { + lineOffset = rs.wordOffset; rs.wordOffset = rs.wordFit.end; rs.charFit.end = rs.lineEnd = this.boundaries[rs.wordOffset]; } } - this.appendLine( rs.charOffset, rs.charFit.end, rs.wordOffset, fractional ); + this.appendLine( rs.charOffset, rs.charFit.end, lineOffset, fractional ); // Move on to another line rs.charOffset = rs.charFit.end; // Mark the next line as fractional fractional = true; } while ( rs.charOffset < rs.lineEnd ); } else { + rs.lineEnd = this.boundaries[rs.wordFit.end]; + this.appendLine( rs.lineStart, rs.lineEnd, rs.wordOffset, fractional ); rs.wordOffset = rs.wordFit.end; - rs.lineEnd = this.boundaries[rs.wordOffset]; - this.appendLine( rs.lineStart, rs.lineEnd, rs.wordOffset, fractional ); } rs.lineStart = rs.lineEnd; } @@ -276,7 +278,6 @@ .nextAll() .remove(); rs.timeout = undefined; - console.log( this.lines.length ); this.emit( 'render' ); } else { rs.ruler.innerHTML = ''; _______________________________________________ MediaWiki-CVS mailing list MediaWiki-CVS@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs