Hi Fabian,
this is great work, the lower table is scrolling much smoother even on a 
Core2 6300 in IE6!

I guess when 0.7.2 comes out I finally have to let go of 0.6.6. :)

Regards,
Daniel Haferkorn


Fabian Jakobs wrote:
> Hi,
> 
> in the last few days we have been working hard to improve the scroll 
> performance of the table. Today finally the changes have been merged 
> back with the old table in trunk (development branch for 0.8). This is 
> what we have done:
> 
> Sebastian did some performance tests with virtual tables using plain 
> HTML. His tests indicated that full updates using innerHTML should be 
> significantly faster then updates using DOM manipulations. Doing some 
> tricks with the update strategy while scrolling did also improve the 
> user experience. What I did, was to apply his results to the table widget.
> 
> The changes are:
> 
> 1. Use an updated version of the "array_join" renderer, which renderes a 
> HTML table.
> 2. Cache the computed html strings of each rendered table row. This 
> makes rendering somewhat independent from the cell renderer and removes 
> the need for caches there.
> 3. Use a special render path for scrolling. If the user scrolls up to 10 
> lines, the hidden lines are removed from the DOM and only the new lines 
> are added. For a small number of scrolled rows (<10) this is way faster 
> than a full update.
> 4. If only focus or selection state changes use the "old" strategy to 
> only update the row styles.
> 5. Use a new strategy for scroll updates. A timer now periodically 
> checks whether an update is needed. This limits the number of updates 
> and improves the responsiveness.
> 
> Most work has been done in the table pane and the table scroller. The 
> table API itself has not changed except of the cell and row renderer. 
> The exact changes are documented here: 
> <http://qooxdoo.org/about/release_notes/0.7.2#table>. These changes 
> should only touch people who have written their own cell or row 
> renderers. In general the changes are only minor. Updating TreeVirtual 
> took only a couple of minutes ;-)
> 
> I nobody has serious objections, I will port back the changes to 
> legacy_0_7 tomorrow so they will show up in qooxdoo 0.7.2.
> 
> As a goody I have attached a small application (rename to tabletest.zip) 
> running both tables side by side.
> 
> 
> Best Fabian
> 
> 
> <file:///Users/fabianpb/Desktop/mailtable/tabletest.zi_.zip>
> 


-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >>  http://get.splunk.com/
_______________________________________________
qooxdoo-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel

Reply via email to