Handle web inspector better

This commit is contained in:
Izalia Mae 2022-09-02 11:03:10 -04:00
parent f90f82f36c
commit 6115dc20fd
2 changed files with 24 additions and 3 deletions

View file

@ -227,7 +227,8 @@ class Application(Gtk.Application):
'Open file': ('open_file', ['<Ctrl>O']),
'Open help page': ('open_help', ['<Ctrl>H', 'F1']),
'Open library': ('open_library', ['<Ctrl>U']),
'Open web inspector': ('open_inspector', ['<Ctrl><Shift>I', 'F12']),
'Open web inspector': ('open_inspector', ['<Ctrl><Shift>I']),
'Toggle web inspector': ('toggle_inspector', ['F12']),
'Print page': ('print', ['<Ctrl>P']),
'Quit app': ('quit', ['<Ctrl>Q']),
'Refresh page': ('refresh', ['<Ctrl>R', 'F5']),
@ -288,7 +289,10 @@ class Application(Gtk.Application):
self.window.library_open('help')
elif action == 'open_inspector':
tab.page_action('inspector', show=True)
tab.inspector_action('open')
elif action == 'toggle_inspector':
tab.inspector_action('toggle')
elif action == 'toggle_search':
tab.search_action('toggle')

View file

@ -181,6 +181,23 @@ class WebTab(BuilderBase, Gtk.Box):
return self._data.state
def inspector_action(self, action='toggle'):
inspector = self.webview.get_inspector()
if action == 'toggle':
if self.handler.inspector_open:
return self.inspector_action('close')
return self.inspector_action('open')
elif action == 'open':
return inspector.show()
elif action == 'close':
if self.handler.inspector_open:
return inspector.close()
def load_url(self, url):
threading.Thread(target=self.handle_load_url, args=[url]).start()
@ -394,7 +411,7 @@ class WebTab(BuilderBase, Gtk.Box):
def setup_signals(self):
## Navigation bar
self.connect('label-close', 'clicked', self.close)
self.connect('label-close', 'clicked', self.webview.try_close)
self.connect('label-favicon', 'clicked', self.state_unload)
self.connect('navbar-prev', 'clicked', self.page_action, 'back')
self.connect('navbar-next', 'clicked', self.page_action, 'forward')