Issue #27262: move Aqua unbinding code, which enable context menus, to maxosx.
diff --git a/Lib/idlelib/macosx.py b/Lib/idlelib/macosx.py
index 8c50a59..9d75631 100644
--- a/Lib/idlelib/macosx.py
+++ b/Lib/idlelib/macosx.py
@@ -206,6 +206,16 @@
         # remove redundant "IDLE Help" from menu
         del mainmenu.menudefs[-1][1][0]
 
+def fixb2context(root):
+    '''Removed bad AquaTk Button-2 (right) and Paste bindings.
+
+    They prevent context menu access and seem to be gone in AquaTk8.6.
+    See issue #24801.
+    '''
+    root.unbind_class('Text', '<B2>')
+    root.unbind_class('Text', '<B2-Motion>')
+    root.unbind_class('Text', '<<PasteSelection>>')
+
 def setupApp(root, flist):
     """
     Perform initial OS X customizations if needed.
@@ -227,3 +237,4 @@
         hideTkConsole(root)
         overrideRootMenu(root, flist)
         addOpenEventSupport(root, flist)
+        fixb2context()
diff --git a/Lib/idlelib/pyshell.py b/Lib/idlelib/pyshell.py
index 8341cd9..9fc46ca 100755
--- a/Lib/idlelib/pyshell.py
+++ b/Lib/idlelib/pyshell.py
@@ -1548,14 +1548,6 @@
     flist = PyShellFileList(root)
     macosx.setupApp(root, flist)
 
-    if macosx.isAquaTk():
-        # There are some screwed up <2> class bindings for text
-        # widgets defined in Tk which we need to do away with.
-        # See issue #24801.
-        root.unbind_class('Text', '<B2>')
-        root.unbind_class('Text', '<B2-Motion>')
-        root.unbind_class('Text', '<<PasteSelection>>')
-
     if enable_edit:
         if not (cmd or script):
             for filename in args[:]: