diff options
author | erikb <erikb@574bc980-5f2d-0410-acbc-c8f9f0eb14e0> | 2007-11-03 10:51:19 (GMT) |
---|---|---|
committer | erikb <erikb@574bc980-5f2d-0410-acbc-c8f9f0eb14e0> | 2007-11-03 10:51:19 (GMT) |
commit | 769d52971120606cc00690badf60e0c6792eac2e (patch) | |
tree | 627ab9a811e5ded9bd9d4f392e7ac9d17c78599e /record.py | |
parent | f3fcedfbf5aabf6a9023af336412ef7dbe0c0f4c (diff) |
2x click download fixes
git-svn-id: http://mediamods.com/public-svn/camera-activity/Record.activity@867 574bc980-5f2d-0410-acbc-c8f9f0eb14e0
Diffstat (limited to 'record.py')
-rwxr-xr-x | record.py | 24 |
1 files changed, 16 insertions, 8 deletions
@@ -335,8 +335,8 @@ class Record(activity.Activity): if (os.path.exists(filepath)): os.remove( filepath ) - askingAnotherBud = False - buds = self._shared_activity.get_joined_buddies(); + goodBudObj = None + buds = self._shared_activity.get_joined_buddies() for i in range (0, len(buds)): nextBudObj = buds[i] nextBud = util._sha_data(nextBudObj.props.key) @@ -345,11 +345,15 @@ class Record(activity.Activity): self.__class__.log.debug('mnrrb: weve already tried bud ' + str(nextBudObj.props.nick)) else: self.__class__.log.debug('mnrrb: ask next buddy: ' + str(nextBudObj.props.nick)) - nextNick = nextBudObj.props.nick - self.meshReqRecFromBuddy(recd, nextBud, nextNick) - askingAnotherBud = True - - if (not askingAnotherBud): + goodBudObj = nextBudObj + break + + if (goodBudObj != None): + goodNick = goodBudObj.props.nick + goodBud = util._sha_data(goodBudObj.props.key) + goodBud = util.printable_hash(goodBud) + self.meshReqRecFromBuddy(recd, goodBud, goodNick) + else: self.__class__.log.debug('weve tried all buddies here, and no one has this recd') recd.triedMeshBuddies = [] recd.triedMeshBuddies.append(Instance.keyHashPrintable) @@ -363,9 +367,13 @@ class Record(activity.Activity): recd.meshDownloadingFromNick = fromWhosNick recd.meshDownloadingProgress = False recd.meshDownloading = True + recd.meshDownlodingPercent = 0.0 + self.ui.updateMeshProgress(True, recd) + gobject.idle_add( meshReqRecFromBuddy2, recd, fromWho, fromWhosNick ) + + def meshReqRecFromBuddy( self, recd, fromWho, fromWhosNick ): recd.meshReqCallbackId = gobject.timeout_add(self.meshTimeoutTime, self._meshCheckOnRecdRequest, recd) self.recTube.requestRecdBits( Instance.keyHashPrintable, fromWho, recd.mediaMd5 ) - self.ui.updateMeshProgress(True, recd) def _meshCheckOnRecdRequest( self, recdRequesting ): |