Changeset 12805


Ignore:
Timestamp:
Aug 30, 2011, 9:27:30 PM (12 years ago)
Author:
jordan
Message:

(trunk web) in tr.refilter(), instead of calling the expensive tr.getSelectedRows(), use a cheaper jQuery equivalent.

Location:
trunk/web/javascript
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/web/javascript/torrent-row.js

    r12782 r12805  
    346346****/
    347347
    348 function TorrentRow(view, controller, torrent, selected)
    349 {
    350         this.initialize(view, controller, torrent, selected);
     348function TorrentRow(view, controller, torrent)
     349{
     350        this.initialize(view, controller, torrent);
    351351}
    352352TorrentRow.prototype =
    353353{
    354         initialize: function(view, controller, torrent, selected) {
     354        initialize: function(view, controller, torrent) {
    355355                this._view = view;
    356356                this._element = view.createRow();
    357357                this.setTorrent(controller, torrent);
    358                 if (selected)
    359                         this.setSelected(selected);
    360358                this.render(controller);
    361359
  • trunk/web/javascript/transmission.js

    r12803 r12805  
    19501950        refilter: function(rebuildEverything)
    19511951        {
    1952                 var i, e, id, t, row, tmp, sel, rows, clean_rows, dirty_rows,
     1952                var i, e, id, t, row, tmp, rows, clean_rows, dirty_rows,
    19531953                    sort_mode = this[Prefs._SortMethod],
    19541954                    sort_direction = this[Prefs._SortDirection],
     
    19571957                    filter_tracker = this.filterTracker,
    19581958                    renderer = this.torrentRenderer,
    1959                     list = this._torrent_list;
     1959                    list = this._torrent_list,
     1960                    old_sel_count = $(list).children('.selected').length;
     1961
    19601962
    19611963                clearTimeout(this.refilterTimer);
    19621964                delete this.refilterTimer;
    1963 
    1964                 // build a temporary lookup table of selected torrent ids
    1965                 sel = { };
    1966                 for (i=0; row=this._rows[i]; ++i)
    1967                         if (row.isSelected())
    1968                                 sel[row.getTorrentId()] = row;
    19691965
    19701966                if (rebuildEverything) {
     
    20082004                        t = this._torrents[id];
    20092005                        if (t && t.test(filter_mode, filter_text, filter_tracker)) {
    2010                                 var s = t.getId() in sel;
    2011                                 row = new TorrentRow(renderer, this, t, s);
     2006                                row = new TorrentRow(renderer, this, t);
    20122007                                row.getElement().row = row;
    20132008                                dirty_rows.push(row);
     
    20642059                this.updateStatusbar();
    20652060                this.refreshFilterButton();
    2066                 if (Object.keys(sel).length !== this.getSelectedRows().length)
     2061                if (old_sel_count !== $(list).children('.selected').length)
    20672062                        this.selectionChanged();
    20682063        },
Note: See TracChangeset for help on using the changeset viewer.