]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
[3.13] gh-69134: Wait until mapped in keyboard virtual-event tests (GH-152599) (GH...
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>
Mon, 29 Jun 2026 15:54:13 +0000 (17:54 +0200)
committerGitHub <noreply@github.com>
Mon, 29 Jun 2026 15:54:13 +0000 (15:54 +0000)
test_virtual_events and test_selection_event generate key events after
focus_force().  On Windows these are only delivered once the toplevel is
mapped, so they could be dropped and the test fail.  Wait until the
widget is mapped, as the other GUI tests already do.
(cherry picked from commit be4eebb8386d07f360dd835a0ecb4a1eb6385736)

Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Lib/test/test_tkinter/test_widgets.py
Lib/test/test_ttk/test_widgets.py

index 2535daed97738a4e1d13b00729687e5f5a7e6c0c..4f37ceccbc560108a50948e503c762c4f2e1bc5d 100644 (file)
@@ -1845,7 +1845,7 @@ class ListboxTest(AbstractWidgetTest, unittest.TestCase):
         lb = self.create(selectmode='browse', exportselection=False)
         lb.insert(0, *('el%d' % i for i in range(5)))
         lb.pack()
-        lb.update()
+        self.require_mapped(lb)
         events = []
         lb.bind('<<ListboxSelect>>', lambda e: events.append(lb.curselection()))
         lb.focus_force()
index a6e9303e06d2366857b69303e7322082a2ef692e..5054ad8b9adf3fc52ad94c764a10a949aa52ed05 100644 (file)
@@ -1942,7 +1942,7 @@ class TreeviewTest(AbstractWidgetTest, unittest.TestCase):
         self.tv.insert(parent, 'end')
         item2 = self.tv.insert('', 'end')
         self.tv.pack()
-        self.tv.update()
+        self.require_mapped(self.tv)
         selects, opens, closes = [], [], []
         self.tv.bind('<<TreeviewSelect>>',
                      lambda e: selects.append(self.tv.selection()))