From: Terry Jan Reedy Date: Mon, 28 Sep 2015 08:16:32 +0000 (-0400) Subject: Issue #24972: Inactive selection background now matches active selection X-Git-Tag: v3.5.1rc1~255^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=507a5c4b4e8950dc4c688f151fc819160ee75873;p=python Issue #24972: Inactive selection background now matches active selection background, as selected by user, on all systems. This also fixes a problem with found items not highlighted on Windows. Initial patch by Mark Roseman. Fix replaces workaround with obscure but proper configuration option. --- diff --git a/Lib/idlelib/EditorWindow.py b/Lib/idlelib/EditorWindow.py index 74a4749551..d742dd64f1 100644 --- a/Lib/idlelib/EditorWindow.py +++ b/Lib/idlelib/EditorWindow.py @@ -317,36 +317,6 @@ class EditorWindow(object): self.askinteger = tkSimpleDialog.askinteger self.showerror = tkMessageBox.showerror - self._highlight_workaround() # Fix selection tags on Windows - - def _highlight_workaround(self): - # On Windows, Tk removes painting of the selection - # tags which is different behavior than on Linux and Mac. - # See issue14146 for more information. - if not sys.platform.startswith('win'): - return - - text = self.text - text.event_add("<>", "") - text.event_add("<>", "") - def highlight_fix(focus): - sel_range = text.tag_ranges("sel") - if sel_range: - if focus == 'out': - HILITE_CONFIG = idleConf.GetHighlight( - idleConf.CurrentTheme(), 'hilite') - text.tag_config("sel_fix", HILITE_CONFIG) - text.tag_raise("sel_fix") - text.tag_add("sel_fix", *sel_range) - elif focus == 'in': - text.tag_remove("sel_fix", "1.0", "end") - - text.bind("<>", - lambda ev: highlight_fix("out")) - text.bind("<>", - lambda ev: highlight_fix("in")) - - def _filename_to_unicode(self, filename): """Return filename as BMP unicode so diplayable in Tk.""" # Decode bytes to unicode. @@ -785,6 +755,7 @@ class EditorWindow(object): insertbackground=cursor_color, selectforeground=select_colors['foreground'], selectbackground=select_colors['background'], + inactiveselectbackground=select_colors['background'], ) IDENTCHARS = string.ascii_letters + string.digits + "_"