diff --git a/gertty/view/change.py b/gertty/view/change.py index bba5916..2ce8e80 100644 --- a/gertty/view/change.py +++ b/gertty/view/change.py @@ -277,6 +277,7 @@ class ChangeView(urwid.WidgetWrap): Leave a review for the most recent revision. Toggle the reviewed flag for the current change. Cherry-pick the most recent revision onto the local repo. + Refresh this change. """ def help(self): @@ -384,6 +385,7 @@ class ChangeView(urwid.WidgetWrap): self.title = 'Change %s%s%s' % (change.number, reviewed, hidden) self.app.status.update(title=self.title) self.project_key = change.project.key + self.change_rest_id = change.id self.change_id_label.set_text(('change-data', change.change_id)) self.owner_label.set_text(('change-data', change.owner)) @@ -564,6 +566,11 @@ class ChangeView(urwid.WidgetWrap): row = self.revision_rows[self.last_revision_key] row.cherryPick(None) return None + if r == 'ctrl r': + self.app.sync.submitTask( + sync.SyncChangeTask(self.change_rest_id, priority=sync.HIGH_PRIORITY)) + self.app.status.update() + return None if r in self.app.config.reviewkeys: self.reviewKey(self.app.config.reviewkeys[r]) return None diff --git a/gertty/view/change_list.py b/gertty/view/change_list.py index c12cb92..be9b71a 100644 --- a/gertty/view/change_list.py +++ b/gertty/view/change_list.py @@ -16,6 +16,7 @@ import urwid from gertty import mywid +from gertty import sync from gertty.view import change as view_change import gertty.view @@ -68,9 +69,10 @@ class ChangeListHeader(urwid.WidgetWrap): class ChangeListView(urwid.WidgetWrap): _help = """ - Toggle the hidden flag for the currently selected change. - Toggle whether only unreviewed or all changes are displayed. - Toggle the reviewed flag for the currently selected change. + Toggle the hidden flag for the currently selected change. + Toggle whether only unreviewed or all changes are displayed. + Toggle the reviewed flag for the currently selected change. + Sync all projects. """ def help(self): @@ -152,6 +154,11 @@ class ChangeListView(urwid.WidgetWrap): hidden = self.toggleHidden(self.listbox.body[pos].change_key) self.refresh() return None + if key == 'ctrl r': + self.app.sync.submitTask( + sync.SyncSubscribedProjectsTask(sync.HIGH_PRIORITY)) + self.app.status.update() + return None return super(ChangeListView, self).keypress(size, key) def onSelect(self, button, change_key): diff --git a/gertty/view/project_list.py b/gertty/view/project_list.py index 120acf6..23b54c8 100644 --- a/gertty/view/project_list.py +++ b/gertty/view/project_list.py @@ -67,8 +67,9 @@ class ProjectListHeader(urwid.WidgetWrap): class ProjectListView(urwid.WidgetWrap): _help = """ - Toggle whether only subscribed projects or all projects are listed. - Toggle the subscription flag for the currently selected project. + Toggle whether only subscribed projects or all projects are listed. + Toggle the subscription flag for the currently selected project. + Sync all projects. """ def help(self): @@ -146,6 +147,11 @@ class ProjectListView(urwid.WidgetWrap): if subscribed: self.app.sync.submitTask(sync.SyncProjectTask(project_key)) return None + if key == 'ctrl r': + self.app.sync.submitTask( + sync.SyncSubscribedProjectsTask(sync.HIGH_PRIORITY)) + self.app.status.update() + return None return super(ProjectListView, self).keypress(size, key)