diff options
author | Aldo Cortesi <aldo@nullcube.com> | 2016-07-21 15:41:43 +1200 |
---|---|---|
committer | Aldo Cortesi <aldo@nullcube.com> | 2016-07-21 15:41:43 +1200 |
commit | 33ffbc28ede02d9238473e0569a85ce0ede061e6 (patch) | |
tree | 1b401ab067ba92609b72b5269b9ff6deb4b615f8 | |
parent | 6750ab899a77dd9b62fa35907edd56f60159a836 (diff) | |
download | mitmproxy-33ffbc28ede02d9238473e0569a85ce0ede061e6.tar.gz mitmproxy-33ffbc28ede02d9238473e0569a85ce0ede061e6.tar.bz2 mitmproxy-33ffbc28ede02d9238473e0569a85ce0ede061e6.zip |
console: share one ActionBar instance
This fixes an issues where popping a view off the stack caused stale ActionBar
contents to be displayed.
-rw-r--r-- | mitmproxy/console/master.py | 1 | ||||
-rw-r--r-- | mitmproxy/console/statusbar.py | 5 | ||||
-rw-r--r-- | test/netlib/test_utils.py | 2 |
3 files changed, 4 insertions, 4 deletions
diff --git a/mitmproxy/console/master.py b/mitmproxy/console/master.py index 59d07456..9b68f732 100644 --- a/mitmproxy/console/master.py +++ b/mitmproxy/console/master.py @@ -462,6 +462,7 @@ class ConsoleMaster(flow.FlowMaster): screen = self.ui, handle_mouse = not self.options.no_mouse, ) + self.ab = statusbar.ActionBar() if self.options.rfile: ret = self.load_flows_path(self.options.rfile) diff --git a/mitmproxy/console/statusbar.py b/mitmproxy/console/statusbar.py index f0da9dcd..ee9adcfa 100644 --- a/mitmproxy/console/statusbar.py +++ b/mitmproxy/console/statusbar.py @@ -120,9 +120,8 @@ class StatusBar(urwid.WidgetWrap): # type: (mitmproxy.console.master.ConsoleMaster, object) -> None self.master = master self.helptext = helptext - self.ab = ActionBar() self.ib = urwid.WidgetWrap(urwid.Text("")) - super(StatusBar, self).__init__(urwid.Pile([self.ib, self.ab])) + super(StatusBar, self).__init__(urwid.Pile([self.ib, self.master.ab])) signals.update_settings.connect(self.sig_update_settings) signals.flowlist_change.connect(self.sig_update_settings) master.options.changed.connect(self.sig_update_settings) @@ -132,7 +131,7 @@ class StatusBar(urwid.WidgetWrap): self.redraw() def keypress(self, *args, **kwargs): - return self.ab.keypress(*args, **kwargs) + return self.master.ab.keypress(*args, **kwargs) def get_status(self): r = [] diff --git a/test/netlib/test_utils.py b/test/netlib/test_utils.py index f6acec03..9dcbffd8 100644 --- a/test/netlib/test_utils.py +++ b/test/netlib/test_utils.py @@ -6,7 +6,7 @@ from netlib import utils, tutils def test_is_valid_host(): assert not utils.is_valid_host(b"") assert utils.is_valid_host(b"one.two") - assert not utils.is_valid_host(b"one"*255) + assert not utils.is_valid_host(b"one" * 255) assert utils.is_valid_host(b"one.two.") |