Merge "Add 'killthread'"

This commit is contained in:
Jenkins 2014-05-27 16:06:38 +00:00 committed by Gerrit Code Review
commit e63c26f2ed
2 changed files with 31 additions and 2 deletions

View File

@ -262,6 +262,7 @@ This Screen
===========
<c> Checkout the most recent revision.
<d> Show the diff of the mont recent revision.
<k> Toggle the hidden flag for the current change.
<r> Leave a review for the most recent revision.
<v> Toggle the reviewed flag for the current change.
"""
@ -321,7 +322,11 @@ This Screen
reviewed = ' (reviewed)'
else:
reviewed = ''
self.title = 'Change %s%s' % (change.number, reviewed)
if change.hidden:
hidden = ' (hidden)'
else:
hidden = ''
self.title = 'Change %s%s%s' % (change.number, reviewed, hidden)
self.app.status.update(title=self.title)
self.project_key = change.project.key
@ -418,12 +423,21 @@ This Screen
change = session.getChange(self.change_key)
change.reviewed = not change.reviewed
def toggleHidden(self):
with self.app.db.getSession() as session:
change = session.getChange(self.change_key)
change.hidden = not change.hidden
def keypress(self, size, key):
r = super(ChangeView, self).keypress(size, key)
if r == 'v':
self.toggleReviewed()
self.refresh()
return None
if r == 'k':
self.toggleHidden()
self.refresh()
return None
if r == 'r':
row = self.revision_rows[self.last_revision_key]
row.review_button.openReview()

View File

@ -38,7 +38,7 @@ class ChangeRow(urwid.Button):
self.update(change)
def update(self, change):
if change.reviewed:
if change.reviewed or change.hidden:
style = 'reviewed-change'
else:
style = 'unreviewed-change'
@ -68,6 +68,7 @@ class ChangeListView(urwid.WidgetWrap):
help = mywid.GLOBAL_HELP + """
This Screen
===========
<k> Toggle the hidden flag for the currently selected change.
<l> Toggle whether only unreviewed or all changes are displayed.
<v> Toggle the reviewed flag for the currently selected change.
"""
@ -124,6 +125,13 @@ This Screen
ret = change.reviewed
return ret
def toggleHidden(self, change_key):
with self.app.db.getSession() as session:
change = session.getChange(change_key)
change.hidden = not change.hidden
ret = change.hidden
return ret
def keypress(self, size, key):
if key=='l':
self.unreviewed = not self.unreviewed
@ -136,6 +144,13 @@ This Screen
reviewed = self.toggleReviewed(self.listbox.body[pos].change_key)
self.refresh()
return None
if key=='k':
if not len(self.listbox.body):
return None
pos = self.listbox.focus_position
hidden = self.toggleHidden(self.listbox.body[pos].change_key)
self.refresh()
return None
return super(ChangeListView, self).keypress(size, key)
def onSelect(self, button, change_key):