diff --git a/Lib/turtle.py b/Lib/turtle.py index c9e88d9dd12..f4400c90fd7 100644 --- a/Lib/turtle.py +++ b/Lib/turtle.py @@ -997,8 +997,9 @@ def __init__(self, cv, mode=_CFG["mode"], # Force Turtle window to the front on OS X. This is needed because # the Turtle window will show behind the Terminal window when you # start the demo from the command line. - cv._rootwindow.call('wm', 'attributes', '.', '-topmost', '1') - cv._rootwindow.call('wm', 'attributes', '.', '-topmost', '0') + rootwindow = cv.winfo_toplevel() + rootwindow.call('wm', 'attributes', '.', '-topmost', '1') + rootwindow.call('wm', 'attributes', '.', '-topmost', '0') def clear(self): """Delete all drawings and all turtles from the TurtleScreen. diff --git a/Misc/NEWS b/Misc/NEWS index 4e72496f8a4..523965b447c 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -32,6 +32,8 @@ Core and Builtins Library ------- +- Issue #22168: Prevent turtle AttributeError with non-default Canvas on OS X. + - Issue #21147: sqlite3 now raises an exception if the request contains a null character instead of truncate it. Based on patch by Victor Stinner.