Hack to close a window that is colorizing.
diff --git a/Tools/idle/EditorWindow.py b/Tools/idle/EditorWindow.py
index 8c0ba00..f3dacde 100644
--- a/Tools/idle/EditorWindow.py
+++ b/Tools/idle/EditorWindow.py
@@ -408,7 +408,8 @@
text = self.text
top = self.getlineno("@0,0")
bot = self.getlineno("@0,65535")
- if top == bot:
+ if top == bot and text.winfo_height() == 1:
+ # Geometry manager hasn't run yet
height = int(text['height'])
bot = top + height - 1
return top, bot
@@ -429,15 +430,15 @@
self.top.tkraise()
reply = self.maybesave()
if reply != "cancel":
- if self.color and self.color.colorizing:
- self.color.close()
- self.top.bell()
- return "cancel"
if self.close_hook:
self.close_hook()
+ colorizing = 0
if self.color:
- self.color.close() # Cancel colorization
- self.top.destroy()
+ colorizing = self.color.colorizing
+ doh = colorizing and self.top
+ self.color.close(doh) # Cancel colorization
+ if not colorizing:
+ self.top.destroy()
return reply
def load_extensions(self):