diff options
Diffstat (limited to 'mitmproxy/console/options.py')
-rw-r--r-- | mitmproxy/console/options.py | 54 |
1 files changed, 16 insertions, 38 deletions
diff --git a/mitmproxy/console/options.py b/mitmproxy/console/options.py index f0cc4ef5..e1dd29ee 100644 --- a/mitmproxy/console/options.py +++ b/mitmproxy/console/options.py @@ -36,7 +36,7 @@ class Options(urwid.WidgetWrap): select.Option( "Header Set Patterns", "H", - lambda: master.setheaders.count(), + lambda: len(master.options.setheaders), self.setheaders ), select.Option( @@ -74,8 +74,8 @@ class Options(urwid.WidgetWrap): select.Option( "Show Host", "w", - lambda: master.showhost, - self.toggle_showhost + lambda: master.options.showhost, + master.options.toggler("showhost") ), select.Heading("Network"), @@ -97,25 +97,25 @@ class Options(urwid.WidgetWrap): "Anti-Cache", "a", lambda: master.options.anticache, - self.toggle_anticache + master.options.toggler("anticache") ), select.Option( "Anti-Compression", "o", lambda: master.options.anticomp, - self.toggle_anticomp + master.options.toggler("anticomp") ), select.Option( "Kill Extra", "x", - lambda: master.killextra, - self.toggle_killextra + lambda: master.options.kill, + master.options.toggler("kill") ), select.Option( "No Refresh", "f", - lambda: not master.refresh_server_playback, - self.toggle_refresh_server_playback + lambda: not master.options.refresh_server_playback, + master.options.toggler("refresh_server_playback") ), select.Option( "Sticky Auth", @@ -152,19 +152,19 @@ class Options(urwid.WidgetWrap): return super(self.__class__, self).keypress(size, key) def clearall(self): - self.master.killextra = False - self.master.showhost = False - self.master.refresh_server_playback = True self.master.server.config.no_upstream_cert = False - self.master.setheaders.clear() self.master.set_ignore_filter([]) self.master.set_tcp_filter([]) self.master.options.update( anticache = False, anticomp = False, + kill = False, + refresh_server_playback = True, replacements = [], scripts = [], + setheaders = [], + showhost = False, stickyauth = None, stickycookie = None ) @@ -177,41 +177,22 @@ class Options(urwid.WidgetWrap): expire = 1 ) - def toggle_anticache(self): - self.master.options.anticache = not self.master.options.anticache - - def toggle_anticomp(self): - self.master.options.anticomp = not self.master.options.anticomp - - def toggle_killextra(self): - self.master.killextra = not self.master.killextra - - def toggle_showhost(self): - self.master.showhost = not self.master.showhost - - def toggle_refresh_server_playback(self): - self.master.refresh_server_playback = not self.master.refresh_server_playback - def toggle_upstream_cert(self): self.master.server.config.no_upstream_cert = not self.master.server.config.no_upstream_cert signals.update_settings.send(self) def setheaders(self): - def _set(*args, **kwargs): - self.master.setheaders.set(*args, **kwargs) - signals.update_settings.send(self) self.master.view_grideditor( grideditor.SetHeadersEditor( self.master, - self.master.setheaders.get_specs(), - _set + self.master.options.setheaders, + self.master.options.setter("setheaders") ) ) def ignorepatterns(self): def _set(ignore): self.master.set_ignore_filter(ignore) - signals.update_settings.send(self) self.master.view_grideditor( grideditor.HostPatternEditor( self.master, @@ -221,14 +202,11 @@ class Options(urwid.WidgetWrap): ) def replacepatterns(self): - def _set(replacements): - self.master.options.replacements = replacements - signals.update_settings.send(self) self.master.view_grideditor( grideditor.ReplaceEditor( self.master, self.master.options.replacements, - _set + self.master.options.setter("replacements") ) ) |