Description
Bug report
Bug summary
I really don't know if this is a but with the conda python.app package or with matplotlib.
When you run python.app
/pythonw
on Mac OS X and import pyplot, it launches the python.app app to the foreground, which steals the keyboard focus from the terminal. You can also reproduce this in IPython, which uses python.app (at least the conda version does).
Obviously I want any plot
calls to call the plot to the foreground, but that it does this simply by importing pyplot is quite annoying (for instance, it often does it when I am running some tests).
Weirdly, I tried debugging the import with pudb, and it seems the app gets launched when the close
function is defined
matplotlib/lib/matplotlib/pyplot.py
Line 623 in 531bd02
Also weirdly, when I tried to reproduce the bug with the git version, it didn't reproduce, even when I used the v3.0.0 version tag. My only guess is that somehow things compiled differently for me than they did for the conda package.
Code for reproduction
On macOS, run
pythonw
then run
import matplotlib.pyplot
Actual outcome
The python.app
launches and steals the keyboard focus.
Expected outcome
Either the app doesn't launch until a plot
or show
call is made, or it launches in the background (but an actual show
call should launch it to the foreground and steal focus).
Matplotlib version
- Operating system: macOS 10.12.6 (I also reproduced on Mojave)
- Matplotlib version: 3.0.0 (conda-forge)
- Matplotlib backend (
print(matplotlib.get_backend())
): Qt5Agg - Python version: 3.5
- Jupyter version (if applicable):
- Other libraries:
The conda-forge python.app
.