Merge branch 'feature-#1349' of https://github.com/haitaka/qutebrowser into haitaka-feature-#1349

This commit is contained in:
Florian Bruhin 2016-05-07 21:32:05 +02:00
commit 2ea76c282e
2 changed files with 13 additions and 0 deletions

View File

@ -350,6 +350,8 @@ class CommandDispatcher:
new_tabbed_browser.set_page_title(idx, cur_title)
if config.get('tabs', 'show-favicons'):
new_tabbed_browser.setTabIcon(idx, curtab.icon())
if config.get('tabs', 'tabs-are-windows'):
new_tabbed_browser.window().setWindowIcon(curtab.icon())
newtab.keep_icon = True
newtab.setZoomFactor(curtab.zoomFactor())
history = qtutils.serialize(curtab.history())

View File

@ -119,6 +119,7 @@ class TabbedBrowser(tabwidget.TabWidget):
self.search_flags = 0
self._local_marks = {}
self._global_marks = {}
self.default_window_icon = self.window().windowIcon()
objreg.get('config').changed.connect(self.update_favicons)
objreg.get('config').changed.connect(self.update_window_title)
objreg.get('config').changed.connect(self.update_tab_titles)
@ -453,11 +454,16 @@ class TabbedBrowser(tabwidget.TabWidget):
def update_favicons(self):
"""Update favicons when config was changed."""
show = config.get('tabs', 'show-favicons')
tabs_are_wins = config.get('tabs', 'tabs-are-windows')
for i, tab in enumerate(self.widgets()):
if show:
self.setTabIcon(i, tab.icon())
if tabs_are_wins:
self.window().setWindowIcon(tab.icon())
else:
self.setTabIcon(i, QIcon())
if tabs_are_wins:
self.window().setWindowIcon(self.default_window_icon)
@pyqtSlot()
def on_load_started(self, tab):
@ -476,6 +482,9 @@ class TabbedBrowser(tabwidget.TabWidget):
tab.keep_icon = False
else:
self.setTabIcon(idx, QIcon())
if (config.get('tabs', 'tabs-are-windows') and
config.get('tabs', 'show-favicons')):
self.window().setWindowIcon(self.default_window_icon)
if idx == self.currentIndex():
self.update_window_title()
@ -544,6 +553,8 @@ class TabbedBrowser(tabwidget.TabWidget):
# We can get signals for tabs we already deleted...
return
self.setTabIcon(idx, tab.icon())
if config.get('tabs', 'tabs-are-windows'):
self.window().setWindowIcon(tab.icon())
@pyqtSlot(usertypes.KeyMode)
def on_mode_left(self, mode):