mirror of
https://github.com/Grasscutters/mitmproxy.git
synced 2024-11-23 08:11:00 +00:00
Merge pull request #1446 from cortesi/state
console: add replace_view_state, fix statusbar issues
This commit is contained in:
commit
3636ed7d41
@ -258,6 +258,7 @@ class ConsoleMaster(flow.FlowMaster):
|
|||||||
|
|
||||||
signals.call_in.connect(self.sig_call_in)
|
signals.call_in.connect(self.sig_call_in)
|
||||||
signals.pop_view_state.connect(self.sig_pop_view_state)
|
signals.pop_view_state.connect(self.sig_pop_view_state)
|
||||||
|
signals.replace_view_state.connect(self.sig_replace_view_state)
|
||||||
signals.push_view_state.connect(self.sig_push_view_state)
|
signals.push_view_state.connect(self.sig_push_view_state)
|
||||||
signals.sig_add_log.connect(self.sig_add_log)
|
signals.sig_add_log.connect(self.sig_add_log)
|
||||||
self.addons.add(options, *builtins.default_addons())
|
self.addons.add(options, *builtins.default_addons())
|
||||||
@ -296,7 +297,19 @@ class ConsoleMaster(flow.FlowMaster):
|
|||||||
return callback(*args)
|
return callback(*args)
|
||||||
self.loop.set_alarm_in(seconds, cb)
|
self.loop.set_alarm_in(seconds, cb)
|
||||||
|
|
||||||
|
def sig_replace_view_state(self, sender):
|
||||||
|
"""
|
||||||
|
A view has been pushed onto the stack, and is intended to replace
|
||||||
|
the current view rather tha creating a new stack entry.
|
||||||
|
"""
|
||||||
|
if len(self.view_stack) > 1:
|
||||||
|
del self.view_stack[1]
|
||||||
|
|
||||||
def sig_pop_view_state(self, sender):
|
def sig_pop_view_state(self, sender):
|
||||||
|
"""
|
||||||
|
Pop the top view off the view stack. If no more views will be left
|
||||||
|
after this, prompt for exit.
|
||||||
|
"""
|
||||||
if len(self.view_stack) > 1:
|
if len(self.view_stack) > 1:
|
||||||
self.view_stack.pop()
|
self.view_stack.pop()
|
||||||
self.loop.widget = self.view_stack[-1]
|
self.loop.widget = self.view_stack[-1]
|
||||||
@ -312,6 +325,9 @@ class ConsoleMaster(flow.FlowMaster):
|
|||||||
)
|
)
|
||||||
|
|
||||||
def sig_push_view_state(self, sender, window):
|
def sig_push_view_state(self, sender, window):
|
||||||
|
"""
|
||||||
|
Push a new view onto the view stack.
|
||||||
|
"""
|
||||||
self.view_stack.append(window)
|
self.view_stack.append(window)
|
||||||
self.loop.widget = window
|
self.loop.widget = window
|
||||||
self.loop.draw_screen()
|
self.loop.draw_screen()
|
||||||
@ -352,8 +368,8 @@ class ConsoleMaster(flow.FlowMaster):
|
|||||||
|
|
||||||
def toggle_eventlog(self):
|
def toggle_eventlog(self):
|
||||||
self.options.eventlog = not self.options.eventlog
|
self.options.eventlog = not self.options.eventlog
|
||||||
signals.pop_view_state.send(self)
|
|
||||||
self.view_flowlist()
|
self.view_flowlist()
|
||||||
|
signals.replace_view_state.send(self)
|
||||||
|
|
||||||
def _readflows(self, path):
|
def _readflows(self, path):
|
||||||
"""
|
"""
|
||||||
|
@ -43,3 +43,4 @@ flowlist_change = blinker.Signal()
|
|||||||
# Pop and push view state onto a stack
|
# Pop and push view state onto a stack
|
||||||
pop_view_state = blinker.Signal()
|
pop_view_state = blinker.Signal()
|
||||||
push_view_state = blinker.Signal()
|
push_view_state = blinker.Signal()
|
||||||
|
replace_view_state = blinker.Signal()
|
||||||
|
Loading…
Reference in New Issue
Block a user