Hi all,

Great job.

I use Ubuntu with FF2. I used virtualization - guest OS "Windows XP"  - to test qooxdoo applications (huge tables) because FF2 runs faster in Windows XP. From yesterday I don't need anymore to launch guest OS to test qooxdoo.

asaris

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



-------------------------------------------------------------------------
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