diff options
author | Aldo Cortesi <aldo@nullcube.com> | 2015-03-21 11:19:20 +1300 |
---|---|---|
committer | Aldo Cortesi <aldo@nullcube.com> | 2015-03-21 11:19:20 +1300 |
commit | 8725d50d03cf21b37a78c1d2fa03ade055c8a821 (patch) | |
tree | 116ebefcc1be4f2ec2b575ddecf5172049d67ec9 /libmproxy/console/statusbar.py | |
parent | b475c8d6eacd0d6a100cf6aaddc9c9915fdfb149 (diff) | |
download | mitmproxy-8725d50d03cf21b37a78c1d2fa03ade055c8a821.tar.gz mitmproxy-8725d50d03cf21b37a78c1d2fa03ade055c8a821.tar.bz2 mitmproxy-8725d50d03cf21b37a78c1d2fa03ade055c8a821.zip |
Add blinker dependency, start using it to refactor console app
Blinker lets us set up a central pub/sub mechanism to disentangle our object
structure.
Diffstat (limited to 'libmproxy/console/statusbar.py')
-rw-r--r-- | libmproxy/console/statusbar.py | 19 |
1 files changed, 5 insertions, 14 deletions
diff --git a/libmproxy/console/statusbar.py b/libmproxy/console/statusbar.py index a38615b4..7ad78f03 100644 --- a/libmproxy/console/statusbar.py +++ b/libmproxy/console/statusbar.py @@ -3,26 +3,26 @@ import time import urwid -from . import pathedit +from . import pathedit, signals from .. import utils + class ActionBar(urwid.WidgetWrap): def __init__(self): - self.message("") + urwid.WidgetWrap.__init__(self, urwid.Text("")) + signals.status_message.connect(self.message) def selectable(self): return True def path_prompt(self, prompt, text): - self.expire = None self._w = pathedit.PathEdit(prompt, text) def prompt(self, prompt, text = ""): - self.expire = None self._w = urwid.Edit(prompt, text or "") - def message(self, message, expire=None): + def message(self, sender, message, expire=None): self.expire = expire self._w = urwid.Text(message) @@ -127,9 +127,6 @@ class StatusBar(urwid.WidgetWrap): return r def redraw(self): - if self.ab.expire and time.time() > self.ab.expire: - self.message("") - fc = self.master.state.flow_count() if self.master.state.focus is None: offset = 0 @@ -175,9 +172,3 @@ class StatusBar(urwid.WidgetWrap): def prompt(self, prompt, text = ""): self.ab.prompt(prompt, text) - - def message(self, msg, expire=None): - if expire: - expire = time.time() + float(expire)/1000 - self.ab.message(msg, expire) - self.master.loop.draw_screen() |