[Python-checkins] cpython: Issue #5219: Prevent event handler cascade in IDLE.

martin.v.loewis python-checkins at python.org
Tue Mar 13 22:18:47 CET 2012


http://hg.python.org/cpython/rev/505c3b7dc539
changeset: 75600:505c3b7dc539
user: Martin v. Löwis <martin at v.loewis.de>
date: Tue Mar 13 14:18:36 2012 -0700
summary:
 Issue #5219: Prevent event handler cascade in IDLE.
Patch by Roger Serwy.
files:
 Lib/idlelib/CallTipWindow.py | 6 +++++-
 Misc/NEWS | 2 ++
 2 files changed, 7 insertions(+), 1 deletions(-)
diff --git a/Lib/idlelib/CallTipWindow.py b/Lib/idlelib/CallTipWindow.py
--- a/Lib/idlelib/CallTipWindow.py
+++ b/Lib/idlelib/CallTipWindow.py
@@ -22,6 +22,7 @@
 self.parenline = self.parencol = None
 self.lastline = None
 self.hideid = self.checkhideid = None
+ self.checkhide_after_id = None
 
 def position_window(self):
 """Check if needs to reposition the window, and if so - do it."""
@@ -102,7 +103,10 @@
 self.hidetip()
 else:
 self.position_window()
- self.widget.after(CHECKHIDE_TIME, self.checkhide_event)
+ if self.checkhide_after_id is not None:
+ self.widget.after_cancel(self.checkhide_after_id)
+ self.checkhide_after_id = \
+ self.widget.after(CHECKHIDE_TIME, self.checkhide_event)
 
 def hide_event(self, event):
 if not self.tipwindow:
diff --git a/Misc/NEWS b/Misc/NEWS
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -24,6 +24,8 @@
 Library
 -------
 
+- Issue #5219: Prevent event handler cascade in IDLE.
+
 - Issue #3835: Refuse to use unthreaded Tcl in threaded Python.
 
 - Issue #2843: Add new Tk API to Tkinter.
-- 
Repository URL: http://hg.python.org/cpython


More information about the Python-checkins mailing list

AltStyle によって変換されたページ (->オリジナル) /