Without these blocks the strings aren't released until the thread that created them is closed, which means file accesses especially leak memory.
Also refocus the game when closing the keybindings window on macOS.
Also, in other news, apparently SDL runs fast enough that it outpaced
the rest of the program and caused infinite loops if you called two
window-related functions too fast (like Graphics.scale + Graphics.center)