Closed mrclary closed 3 years ago
Hey @mrclary, thanks for reporting. You need to run bootstrap.py
with pythonw
instead of python
to avoid that problem.
Please try that and let us know if it works for you.
Okay, I'll test that. But these also manifest in the macOS application...
I cannot get pythonw
in my conda environment. There may be a problem with this in future as well, since as of Python 3.9, there is no distinction between python
and pythonw
(https://docs.python.org/3/using/mac.html#running-scripts-with-a-gui).
Okay, it requires conda install python.app
(maybe we need to add this requirement?). So, the initially disabled menubar is resolved with pythonw
for both 3.7.6 and 3.9.1. However, the issue with the location of the menu items remains.
The good news is that only the latter issue manifested in the macOS application, so it would seem that pythonw
for the application build is a non-issue. Perhaps the menu item location issue is on our end?
Okay, it requires
conda install python.app
(maybe we need to add this requirement?).
For developer instructions...
Okay, it requires conda install python.app (maybe we need to add this requirement?)
Sure, please add a mention to it in our Contributing guide.
However, the issue with the location of the menu items remains.
This was caused by the migration to the new API and I don't know how to fix it. Maybe there's a way to tell Qt to add that menu entry to the expected place in macOS.
so it would seem that pythonw for the application build is a non-issue. Perhaps the menu item location issue is on our end?
That's because Homebrew Python is built as Mac framework, so it doesn't have that problem (Anaconda's Python is not).
Okay, it requires conda install python.app (maybe we need to add this requirement?)
Sure, please add a mention to it in our Contributing guide.
Will do.
However, the issue with the location of the menu items remains.
This was caused by the migration to the new API and I don't know how to fix it. Maybe there's a way to tell Qt to add that menu entry to the expected place in macOS.
The menu items do find their correct home after activating a dialogue window for the first time...does this suggest that something isn't being set/called/instantiated at application launch?
Nop, it doesn't ring a bell, sorry.
Okay, this issue does not seem to manifest on the macOS app artifact from #14950. It still manifests for my local app builds from the same commit.
Additionally, the issue that I discovered regarding completions not displaying in the editor, even though the LSP server was working properly, (see #14923) also does not manifest for the artifact but does for my local build. I thought that it had disappeared (see comment), but it reemerged.
All I can think right now is that both are related to different Python versions (or perhaps Qt): Homebrew 3.9.2 on GitHub and Homebrew 3.9.1 local. I will have to investigate further.
Okay, this issue does not seem to manifest on the macOS app artifact from #14950. It still manifests for my local app builds from the same commit.
This is misleading. I realized that the artifact for #14950 was built on the 4.x branch. This works for both GitHub (Python 3.9.2) and my local (Python 3.9.1) builds.
All I can think right now is that both are related to different Python versions (or perhaps Qt): Homebrew 3.9.2 on GitHub and Homebrew 3.9.1 local. I will have to investigate further.
This is definitely not the case. The artifact from #14955 (built on the master branch) also exhibits the menu bar issue. So this is definitely something on our end. Furthermore, it manifests under bootstrap with Python 3.7.10, as well as under local installation (launching from conda environment).
Don't know if it's related, but on bootstrap I see the following in the terminal:
QWidget::setMinimumSize: (figcanvas/FigureCanvas) Negative sizes (-24,-24) are not possible
This is definitely not the case. The artifact from #14955 (built on the master branch) also exhibits the menu bar issue
What issue exactly?
Don't know if it's related, but on bootstrap I see the following in the terminal:
No, that's a bug in Plots and it's unrelated.
This is definitely not the case. The artifact from #14955 (built on the master branch) also exhibits the menu bar issue
What issue exactly?
The issue where the menu bar is inactive was resolved by using pythonw
in bootstrap, and did not manifest in any macOS builds, local or on GitHub.
The issue remains where the menu bar items "Preferences..." and "About Spyder" are located in "Tools" and "Help", respectively, upon launching Spyder (local or GitHub builds, or local bootstrap). After another Spyder window opens (e.g. popup window, or deliberately opening a dialogue window, or ...), then these menu items appear in their proper place in "Spyder" (or "python" if bootstrapping).
@steff456 @ccordoba12, this issue does not appear to be resolved by #15049, although the behavior has changed somewhat.
@mrclary I'm not sure what else could be interfering with those actions. Qt guidelines don't say more than the roles added in #15049
@steff456 I don't know what to make of it either. Were you able to reproduce? We could try different Qt versions; maybe it's a bug with them?
Yes, I could reproduce it. Sometimes it works faster than others.. But I can reproduce the exact same behavior of your gif
@mrclary, this could be an issue with Qt 5.9. Could you try with Qt 5.12 from Conda-forge?
I installed Qt 5.12.9 and it still manifests. I'm not sure what the equivalent is in pip, since this manifests in the macOS app as well, but that build environment doesn't have Qt listed. Maybe it's included in one of the wheels?
What steps will reproduce the problem?
Upon first launching Spyder (bootstrap), the menubar is disabled. Switching to another application and back to Spyder seems to enable the menubar.
Additionally, some menu items are located incorrectly and have incorrect keyboard shortcuts, such as "Preferences..." and "About Spyder...". After the first activation of these dialogue windows (or any other Spyder window), however, they return to their correct locations with correct keyboard shortcuts.