diff --git a/gui/builtinContextMenus/commandFits.py b/gui/builtinContextMenus/commandFits.py index 48758c343..936dd0cc0 100644 --- a/gui/builtinContextMenus/commandFits.py +++ b/gui/builtinContextMenus/commandFits.py @@ -30,6 +30,7 @@ class CommandFits(ContextMenu): if evt is None or not ids.isdisjoint(cls.commandTypeIDs): # we are adding or removing an item that defines a command fit. Need to refresh fit list cls.populateFits(evt) + evt.Skip() @classmethod def populateFits(cls, evt): diff --git a/gui/chrome_tabs.py b/gui/chrome_tabs.py index fd1624751..e2212499e 100644 --- a/gui/chrome_tabs.py +++ b/gui/chrome_tabs.py @@ -542,7 +542,7 @@ class _TabRenderer: # draw the tab icon if self.tab_img: - bmp = wx.Bitmap(self.tab_img) + bmp = wx.Bitmap(self.tab_img.ConvertToGreyscale() if self.disabled else self.tab_img) # @todo: is this conditional relevant anymore? if self.content_width > 16: # Draw tab icon @@ -595,6 +595,12 @@ class _TabRenderer: self.tab_bitmap = bmp + def __repr__(self): + return "_TabRenderer(text={}, disabled={}) at {}".format( + self.text, self.disabled, hex(id(self)) + ) + + class _AddRenderer: def __init__(self): """Renders the add tab button""" @@ -901,6 +907,8 @@ class _TabsContainer(wx.Panel): return True if self.TabHitTest(tab, x, y): + if tab.disabled: + return tab.SetSelected(True) old_sel_tab.SetSelected(False)