Changeset 12808


Ignore:
Timestamp:
Aug 30, 2011, 9:55:44 PM (10 years ago)
Author:
jordan
Message:

use jQuery.proxy where useful.

File:
1 edited

Legend:

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

    r12807 r12808  
    301301         */
    302302        createSettingsMenu: function() {
    303                 var tr = this;
    304303                $('#settings_menu').transMenu({
    305304                        selected_char: '✔',
    306305                        direction: 'up',
    307                         onClick: function(e) { return tr.processSettingsMenuEvent(e); }
     306                        onClick: $.proxy(this.processSettingsMenuEvent,this)
    308307                });
    309308
     
    456455        {
    457456                if (!this.selectionChangedTimer)
    458                 {
    459                         var tr = this;
    460                         this.selectionChangedTimer = setTimeout(function() {tr.selectionChanged();},200);
    461                 }
     457                        this.selectionChangedTimer = setTimeout($.proxy(this.selectionChanged,this),200);
    462458        },
    463459
     
    637633        {
    638634                // handle the clutch prefs locally
    639                 var tr = this;
    640635                var rate = parseInt ($('#prefs_form #refresh_rate')[0].value, 10);
    641                 if (rate != tr[Prefs._RefreshRate])
    642                         tr.setPref (Prefs._RefreshRate, rate);
     636                if (rate != this[Prefs._RefreshRate])
     637                        this.setPref (Prefs._RefreshRate, rate);
    643638
    644639                var up_bytes        = parseInt($('#prefs_form #upload_rate').val(), 10),
     
    678673                o[RPC._PortForwardingEnabled]= $('#prefs_form #port_forward').prop('checked');
    679674
    680                 tr.remote.savePrefs(o);
    681 
    682                 tr.hidePrefsDialog();
     675                this.remote.savePrefs(o);
     676
     677                this.hidePrefsDialog();
    683678        },
    684679
     
    712707                delete this._periodic_session_refresh;
    713708                if (enabled) {
    714                         var tr = this;
    715709                        var msec = this.getIntervalMsec(Prefs._SessionRefreshRate, 5);
    716                         this._periodic_session_refresh = setInterval(function() {tr.loadDaemonPrefs();}, msec);
     710                        this._periodic_session_refresh = setInterval($.proxy(this.loadDaemonPrefs,this), msec);
    717711                }
    718712        },
     
    723717                delete this._periodic_stats_refresh;
    724718                if (enabled) {
    725                         var tr = this;
    726719                        var msec = this.getIntervalMsec(Prefs._SessionRefreshRate, 5);
    727                         this._periodic_stats_refresh = setInterval(function() {tr.loadDaemonStats();}, msec);
     720                        this._periodic_stats_refresh = setInterval($.proxy(this.loadDaemonStats,this), msec);
    728721                }
    729722        },
     
    10501043        {
    10511044                // send a request right now
    1052                 var fields = ['id'].concat(Torrent.Fields.Stats);
    1053                 this.remote.updateTorrents('recently-active', fields, this.updateFromTorrentGet, this);
     1045                this.remote.updateTorrents('recently-active',
     1046                                           ['id'].concat(Torrent.Fields.Stats),
     1047                                           this.updateFromTorrentGet,
     1048                                           this);
    10541049
    10551050                // schedule the next request
    10561051                clearTimeout(this.refreshTorrentsTimeout);
    1057                 var tr = this;
    1058                 this.refreshTorrentsTimeout = setTimeout(function(){tr.refreshTorrents();}, tr[Prefs._RefreshRate]*1000);
     1052                this.refreshTorrentsTimeout = setTimeout($.proxy(this.refreshTorrents,this), this[Prefs._RefreshRate]*1000);
    10591053        },
    10601054
     
    11841178                // Submit the upload form
    11851179                } else {
    1186                         var tr = this;
    11871180                        var args = { };
     1181                        var remote = this.remote;
    11881182                        var paused = !$('#torrent_auto_start').is(':checked');
    11891183                        if ('' != $('#torrent_upload_url').val()) {
    1190                                 tr.remote.addTorrentByUrl($('#torrent_upload_url').val(), { paused: paused });
     1184                                remote.addTorrentByUrl($('#torrent_upload_url').val(), { paused: paused });
    11911185                        } else {
    11921186                                args.url = '../upload?paused=' + paused;
    11931187                                args.type = 'POST';
    1194                                 args.data = { 'X-Transmission-Session-Id' : tr.remote._token };
     1188                                args.data = { 'X-Transmission-Session-Id' : remote._token };
    11951189                                args.dataType = 'xml';
    11961190                                args.iframe = true;
     
    13101304
    13111305        hideMobileAddressbar: function(timeInSeconds) {
    1312                 if (isMobileDevice) {
     1306                if (isMobileDevice && !scroll_timeout) {
    13131307                        var delayLength = timeInSeconds ? timeInSeconds*1000 : 150;
    1314                         // not currently supported on isMobileDevice
    1315                         if (/*document.body.scrollTop!=1 && */scroll_timeout==null) {
    1316                                 var tr = this;
    1317                                 scroll_timeout = setTimeout(function() {tr.doToolbarHide();}, delayLength);
    1318                         }
     1308                        scroll_timeout = setTimeout($.proxy(this.doToolbarHide,this), delayLength);
    13191309                }
    13201310        },
     
    13641354        {
    13651355                if (!this.buttonRefreshTimer)
    1366                 {
    1367                         var tr = this;
    1368                         this.buttonRefreshTimer = setTimeout(function() {tr.updateButtonStates();}, 100);
    1369                 }
     1356                        this.buttonRefreshTimer = setTimeout($.proxy(this.updateButtonStates,this), 100);
    13701357        },
    13711358
     
    19301917        {
    19311918                if (!this.refilterTimer)
    1932                 {
    1933                         var tr = this;
    1934                         this.refilterTimer = setTimeout(function() {tr.refilter();}, 100);
    1935                 }
     1919                        this.refilterTimer = setTimeout($.proxy(this.refilter,this), 100);
    19361920        },
    19371921
Note: See TracChangeset for help on using the changeset viewer.