[Python-checkins] r87374 - in python/branches/py3k: Lib/idlelib/EditorWindow.py Misc/NEWS

r.david.murray python-checkins at python.org
Sat Dec 18 18:19:10 CET 2010


Author: r.david.murray
Date: Sat Dec 18 18:19:10 2010
New Revision: 87374

Log:
#10404: Use ctl-button-1 for context menus on OSX Idle.

This provides access to the context menus where they previously could
not be accessed due to the way OSX Tk binds buttons.  It also
improves platform consistency.

Patch by Ned Deily.


Modified:
   python/branches/py3k/Lib/idlelib/EditorWindow.py
   python/branches/py3k/Misc/NEWS

Modified: python/branches/py3k/Lib/idlelib/EditorWindow.py
==============================================================================
--- python/branches/py3k/Lib/idlelib/EditorWindow.py	(original)
+++ python/branches/py3k/Lib/idlelib/EditorWindow.py	Sat Dec 18 18:19:10 2010
@@ -138,6 +138,14 @@
         if macosxSupport.runningAsOSXApp():
             # Command-W on editorwindows doesn't work without this.
             text.bind('<<close-window>>', self.close_event)
+            # Some OS X systems have only one mouse button,
+            # so use control-click for pulldown menus there.
+            #  (Note, AquaTk defines <2> as the right button if
+            #   present and the Tk Text widget already binds <2>.)
+            text.bind("<Control-Button-1>",self.right_menu_event)
+        else:
+            # Elsewhere, use right-click for pulldown menus.
+            text.bind("<3>",self.right_menu_event)
         text.bind("<<cut>>", self.cut)
         text.bind("<<copy>>", self.copy)
         text.bind("<<paste>>", self.paste)
@@ -156,7 +164,6 @@
         text.bind("<<find-selection>>", self.find_selection_event)
         text.bind("<<replace>>", self.replace_event)
         text.bind("<<goto-line>>", self.goto_line_event)
-        text.bind("<3>", self.right_menu_event)
         text.bind("<<smart-backspace>>",self.smart_backspace_event)
         text.bind("<<newline-and-indent>>",self.newline_and_indent_event)
         text.bind("<<smart-indent>>",self.smart_indent_event)

Modified: python/branches/py3k/Misc/NEWS
==============================================================================
--- python/branches/py3k/Misc/NEWS	(original)
+++ python/branches/py3k/Misc/NEWS	Sat Dec 18 18:19:10 2010
@@ -23,7 +23,9 @@
 Library
 -------
 
-- Issue $9907: Fix tab handling on OSX when using editline by calling
+- Issue #10404: Use ctl-button-1 on OSX for the context menu in Idle.
+
+- Issue #9907: Fix tab handling on OSX when using editline by calling
   rl_initialize first, then setting our custom defaults, then reading .editrc.
 
 - Issue #4188: Avoid creating dummy thread objects when logging operations


More information about the Python-checkins mailing list