Browse Source

fix focus style broadcast

pull/165/head
Eugenio Parodi 3 years ago
parent
commit
e2cd25ca70
  1. 21
      TermTk/TTkWidgets/tabwidget.py
  2. 4
      TermTk/TTkWidgets/widget.py

21
TermTk/TTkWidgets/tabwidget.py

@ -273,8 +273,6 @@ class TTkTabBar(TTkWidget):
TTkWidget.__init__(self, *args, **kwargs)
self.setFocusPolicy(TTkK.ClickFocus + TTkK.TabFocus)
self.focusChanged.connect(self._focusChanged)
# Add and connect the scrollers
self.layout().addWidget(self._leftScroller)
@ -468,15 +466,6 @@ class TTkTabBar(TTkWidget):
return True
return False
@pyTTkSlot(bool)
def _focusChanged(self, focus):
if focus:
borderColor = TTkCfg.theme.tabBorderColorFocus
else:
borderColor = TTkCfg.theme.tabBorderColor
self.setBorderColor(borderColor)
def paintEvent(self, canvas):
w = self.width()
tt = TTkCfg.theme.tab
@ -534,7 +523,6 @@ class TTkTabWidget(TTkFrame):
self._tabBar.currentChanged.connect(self._tabChanged)
self.setFocusPolicy(self._tabBar.focusPolicy())
self._tabBar.setFocusPolicy(TTkK.ParentFocus)
self.focusChanged.connect(self._focusChanged)
self._spacer = TTkSpacer(parent=self)
@ -590,15 +578,6 @@ class TTkTabWidget(TTkFrame):
else:
widget.hide()
@pyTTkSlot(bool)
def _focusChanged(self, focus):
if focus:
borderColor = TTkCfg.theme.tabBorderColorFocus
else:
borderColor = TTkCfg.theme.tabBorderColor
self.setBorderColor(borderColor)
self._tabBar.setBorderColor(borderColor)
def keyEvent(self, evt) -> bool:
return self._tabBar.keyEvent(evt)

4
TermTk/TTkWidgets/widget.py

@ -822,6 +822,10 @@ class TTkWidget(TMouseEvents,TKeyEvents, TDragEvents):
self._currentStyle = self._style['disabled']
self.update()
return True
if self.hasFocus() and 'focus' in self._style:
self._currentStyle = self._style['focus']
self.update()
return True
return False
# Widget Cursor Helpers

Loading…
Cancel
Save