From: Ronald Oussoren Date: Tue, 7 Dec 2010 15:31:07 +0000 (+0000) Subject: Merged revisions 87119 via svnmerge from X-Git-Tag: v3.2.1b1~347^2~188 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=a85b671cb6f71b7c80f4d4cf5e08d14c2c52a235;p=thirdparty%2FPython%2Fcpython.git Merged revisions 87119 via svnmerge from svn+ssh://pythondev@svn.python.org/python/branches/py3k ........ r87119 | ronald.oussoren | 2010-12-07 16:28:10 +0100 (Tue, 07 Dec 2010) | 2 lines Fix for issue #10107: Without this patch IDLE on OSX doesn't warn about unsaved files when quitting. ........ --- diff --git a/Lib/idlelib/FileList.py b/Lib/idlelib/FileList.py index 4c0076d3b6f5..37a337ed9a6d 100644 --- a/Lib/idlelib/FileList.py +++ b/Lib/idlelib/FileList.py @@ -48,7 +48,7 @@ class FileList: def new(self, filename=None): return self.EditorWindow(self, filename) - def close_all_callback(self, event): + def close_all_callback(self, *args, **kwds): for edit in list(self.inversedict): reply = edit.close() if reply == "cancel": diff --git a/Lib/idlelib/macosxSupport.py b/Lib/idlelib/macosxSupport.py index d2705300d756..9b677e1d3b56 100644 --- a/Lib/idlelib/macosxSupport.py +++ b/Lib/idlelib/macosxSupport.py @@ -97,6 +97,11 @@ def overrideRootMenu(root, flist): if flist: root.bind('<>', flist.close_all_callback) + # The binding above doesn't reliably work on all versions of Tk + # on MacOSX. Adding command definition below does seem to do the + # right thing for now. + root.createcommand('exit', flist.close_all_callback) + ###check if Tk version >= 8.4.14; if so, use hard-coded showprefs binding tkversion = root.tk.eval('info patchlevel') diff --git a/Misc/NEWS b/Misc/NEWS index fc3b9a0391ce..7eac6445c149 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -17,6 +17,8 @@ Core and Builtins Library ------- +- Issue #10107: Warn about unsaved files in IDLE on OSX. + - Issue #7904: Changes to urllib.parse.urlsplit to handle schemes as defined by RFC3986. Anything before :// is considered a scheme and is followed by an authority (or netloc) and by '/' led path, which is optional.