Changeset 12766


Ignore:
Timestamp:
Aug 27, 2011, 12:22:56 AM (10 years ago)
Author:
jordan
Message:

(trunk web) slightly faster Transmission.refilter(). Modify Transmission.refreshFilterPopup(), Torrent.getCollatedName(), and Torrent.getCollatedTrackers() for clarity.

Location:
trunk/web/javascript
Files:
2 edited

Legend:

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

    r12765 r12766  
    283283        getCollatedName: function() {
    284284                var f = this.fields;
    285                 if (!f.collatedName) {
    286                         var name = this.fields.name;
    287                         if (name)
    288                                 f.collatedName = name.toLowerCase();
    289                 }
     285                if (!f.collatedName && f.name)
     286                        f.collatedName = f.name.toLowerCase();
    290287                return f.collatedName || '';
    291288        },
    292289        getCollatedTrackers: function() {
    293290                var f = this.fields;
    294                 if (!f.collatedTrackers) {
    295                         var trackers = this.getTrackers();
    296                         if (trackers)
    297                                 f.collatedTrackers = this.collateTrackers(trackers);
    298                 }
     291                if (!f.collatedTrackers && f.trackers)
     292                        f.collatedTrackers = this.collateTrackers(f.trackers);
    299293                return f.collatedTrackers || '';
    300294        },
  • trunk/web/javascript/transmission.js

    r12765 r12766  
    11051105                        if (ids && ids.length) {
    11061106                                var fields = ['id'].concat(Torrent.Fields.StatsExtra);
     1107                                if (full)
     1108                                        fields = fields.concat(Torrent.Fields.InfoExtra);
    11071109                                this.remote.updateTorrents(ids, fields, this.updateFromTorrentGet, this);
    11081110                        }
     
    19571959
    19581960                // make a filtered, sorted array of our torrents
    1959                 var keep = [];
    1960                 var all_torrents = this.getAllTorrents();
    1961                 for (var i=0, t; t=all_torrents[i]; ++i)
    1962                         if (t.test(this[Prefs._FilterMode], this._current_search, this.filterTracker))
    1963                                 keep.push(t);
     1961                var filter_mode = this[Prefs._FilterMode];
     1962                var filter_text = this._current_search;
     1963                var filter_tracker = this.filterTracker;
     1964                var keep = $.grep(this.getAllTorrents(), function(t) {
     1965                        return t.test(filter_mode, filter_text, filter_tracker);
     1966                });
    19641967                Torrent.sortTorrents(keep, this[Prefs._SortMethod], this[Prefs._SortDirection]);
    19651968
     
    19741977                        var rows = [ ];
    19751978                        var fragment = document.createDocumentFragment();
     1979                        var renderer = this.torrentRenderer;
    19761980                        for (var i=0, tor; tor=keep[i]; ++i)
    19771981                        {
    19781982                                var is_selected = old_sel.indexOf(tor) !== -1;
    1979                                 var row = new TorrentRow(this.torrentRenderer, this, tor, is_selected);
     1983                                var row = new TorrentRow(renderer, this, tor, is_selected);
    19801984                                row.setEven((i+1) % 2 == 0);
    19811985                                if (is_selected)
     
    19861990                                                $(b).click({r:row}, function(ev) {tr.onToggleRunningClicked(ev);});
    19871991                                }
    1988                                 $(row.getElement()).click({r: row}, function(ev) {tr.onRowClicked(ev,ev.data.r);});
    1989                                 $(row.getElement()).dblclick(function() { tr.toggleInspector();});
     1992                                $(row.getElement()).click({r: row}, function(ev) {tr.onRowClicked(ev,ev.data.r);})
     1993                                                   .dblclick(function() {tr.toggleInspector();});
    19901994                                fragment.appendChild(row.getElement());
    19911995                                rows.push(row);
     
    20592063
    20602064                var trackers = this.getTrackers();
    2061                 var names = [];
    2062                 for (var name in trackers)
    2063                         names.push(name);
    2064                 names.sort();
     2065                var names = Object.keys(trackers).sort();
    20652066
    20662067                var fragment = document.createDocumentFragment();
Note: See TracChangeset for help on using the changeset viewer.