From 47cf3f610d0f0121a975652f6d5107cc7554d755 Mon Sep 17 00:00:00 2001 From: "James E. Blair" Date: Fri, 24 Feb 2017 22:36:25 -0500 Subject: [PATCH] Fix keypress handling on board view Change-Id: Ic91bb91871091436e41802cd0a9e606cd8b90969 --- boartty/view/board.py | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/boartty/view/board.py b/boartty/view/board.py index 7dacd08..1f29372 100644 --- a/boartty/view/board.py +++ b/boartty/view/board.py @@ -37,7 +37,7 @@ class BoardView(urwid.WidgetWrap, mywid.Searchable): def getCommands(self): return [ (keymap.REFRESH, - "Sync subscribed boards"), + "Sync current board"), (keymap.INTERACTIVE_SEARCH, "Interactive search"), ] @@ -117,6 +117,21 @@ class BoardView(urwid.WidgetWrap, mywid.Searchable): self.log.debug("Open story %s", story_key) self.app.openStory(story_key) + def keypress(self, size, key): + if self.searchKeypress(size, key): + return None + + if not self.app.input_buffer: + key = super(BoardView, self).keypress(size, key) + keys = self.app.input_buffer + [key] + commands = self.app.config.keymap.getCommands(keys) + ret = self.handleCommands(commands) + if ret is True: + if keymap.FURTHER_INPUT not in commands: + self.app.clearInputBuffer() + return None + return key + def handleCommands(self, commands): if keymap.REFRESH in commands: self.app.sync.submitTask(