aboutsummaryrefslogtreecommitdiffstats
path: root/libmproxy/console.py
diff options
context:
space:
mode:
authorAldo Cortesi <aldo@nullcube.com>2011-08-03 17:41:13 +1200
committerAldo Cortesi <aldo@nullcube.com>2011-08-03 17:41:13 +1200
commit028d5bacc597795900002be8cfaf7fc58300a53e (patch)
treea689744dd22bb4aad055bee03468ed9d24a4b4b6 /libmproxy/console.py
parente337682d8e4b36c701ed2c6afede78907a0fe8f2 (diff)
downloadmitmproxy-028d5bacc597795900002be8cfaf7fc58300a53e.tar.gz
mitmproxy-028d5bacc597795900002be8cfaf7fc58300a53e.tar.bz2
mitmproxy-028d5bacc597795900002be8cfaf7fc58300a53e.zip
Make "C" clear eventlog when it has focus.
Diffstat (limited to 'libmproxy/console.py')
-rw-r--r--libmproxy/console.py19
1 files changed, 17 insertions, 2 deletions
diff --git a/libmproxy/console.py b/libmproxy/console.py
index 90075ee1..a0136a68 100644
--- a/libmproxy/console.py
+++ b/libmproxy/console.py
@@ -247,6 +247,18 @@ class ConnectionListBox(urwid.ListBox):
return urwid.ListBox.keypress(self, size, key)
+class EventListBox(urwid.ListBox):
+ def __init__(self, master):
+ self.master = master
+ urwid.ListBox.__init__(self, master.eventlist)
+
+ def keypress(self, size, key):
+ if key == "C":
+ self.master.clear_events()
+ key = None
+ return urwid.ListBox.keypress(self, size, key)
+
+
class ConnectionViewHeader(WWrap):
def __init__(self, master, f):
self.master, self.flow = master, f
@@ -885,7 +897,7 @@ class BodyPile(urwid.Pile):
self,
[
ConnectionListBox(master),
- urwid.Frame(urwid.ListBox(master.eventlist), header = self.inactive_header)
+ urwid.Frame(EventListBox(master), header = self.inactive_header)
]
)
self.master = master
@@ -1424,7 +1436,7 @@ class ConsoleMaster(flow.FlowMaster):
text.extend([("head", "\n\nConnection list keys:\n")])
keys = [
- ("C", "clear connection list"),
+ ("C", "clear connection list or eventlog"),
("d", "delete connection from view"),
("v", "toggle eventlog"),
("X", "kill and delete connection, even if it's mid-intercept"),
@@ -1789,6 +1801,9 @@ class ConsoleMaster(flow.FlowMaster):
self.sync_list_view()
self.refresh_connection(f)
+ def clear_events(self):
+ self.eventlist[:] = []
+
def add_event(self, e, level="info"):
if level == "info":
e = urwid.Text(e)