summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Lib/test/test_genericalias.py6
-rw-r--r--Lib/tkinter/__init__.py2
-rw-r--r--Misc/NEWS.d/next/Library/2024-08-27-10-30-37.gh-issue-123341.5e-fjt.rst1
3 files changed, 9 insertions, 0 deletions
diff --git a/Lib/test/test_genericalias.py b/Lib/test/test_genericalias.py
index 04122fb..12564b4 100644
--- a/Lib/test/test_genericalias.py
+++ b/Lib/test/test_genericalias.py
@@ -57,6 +57,10 @@ from queue import Queue, SimpleQueue
from weakref import WeakSet, ReferenceType, ref
import typing
from typing import Unpack
+try:
+ from tkinter import Event
+except ImportError:
+ Event = None
from typing import TypeVar
T = TypeVar('T')
@@ -139,6 +143,8 @@ class BaseTest(unittest.TestCase):
if ValueProxy is not None:
generic_types.extend((ValueProxy, DictProxy, ListProxy, ApplyResult,
MPSimpleQueue, MPQueue, MPJoinableQueue))
+ if Event is not None:
+ generic_types.append(Event)
def test_subscriptable(self):
for t in self.generic_types:
diff --git a/Lib/tkinter/__init__.py b/Lib/tkinter/__init__.py
index 2e5affb..dd7b3e1 100644
--- a/Lib/tkinter/__init__.py
+++ b/Lib/tkinter/__init__.py
@@ -295,6 +295,8 @@ class Event:
''.join(' %s=%s' % (k, attrs[k]) for k in keys if k in attrs)
)
+ __class_getitem__ = classmethod(types.GenericAlias)
+
_support_default_root = True
_default_root = None
diff --git a/Misc/NEWS.d/next/Library/2024-08-27-10-30-37.gh-issue-123341.5e-fjt.rst b/Misc/NEWS.d/next/Library/2024-08-27-10-30-37.gh-issue-123341.5e-fjt.rst
new file mode 100644
index 0000000..61561ee
--- /dev/null
+++ b/Misc/NEWS.d/next/Library/2024-08-27-10-30-37.gh-issue-123341.5e-fjt.rst
@@ -0,0 +1 @@
+Add :meth:`~object.__class_getitem__` to :class:`!tkinter.Event` for type subscript support at runtime. Patch by Adonis Rakateli.