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
