Opened 4 weeks ago
Last modified 8 days ago
#19078 assigned defect
Stacked tools do not show tab buttons Mac Qt 6.9.2
| Reported by: | Owned by: | Zach Pearson | |
|---|---|---|---|
| Priority: | normal | Milestone: | 1.11 |
| Component: | Window Toolkit | Version: | |
| Keywords: | Cc: | Eric Pettersen | |
| Blocked By: | Blocking: | ||
| Notify when closed: | Platform: | all | |
| Project: | ChimeraX |
Description
The following bug report has been submitted:
Platform: macOS-15.6.1-arm64-arm-64bit
ChimeraX Version: 1.11.dev202510070157 (2025-10-07 01:57:14 UTC)
Description
When dragging and dropping Altloc tool on top of Model Panel the tabs don't show at the bottom of the stacked tools so I can't switch back to the Model Panel. This is likely a Mac Qt 6.9.2 bug. We saw it also with PySide 6 and Qt 6.9.2.
Sometimes the tabs do appear. When dragging the Altloc tool (or probably any tool) if the underlying tool does not highlight gray then dropping Altloc will not show any tab buttons. If the underlying tool does highlight gray then it will show tab buttons and all later drag and drops seem to work. To reproduce this bug you often have to move the Altloc tool rapidly (e.g. 0.5 seconds) across the Log onto the Model Panel. With a slow motion it works, with a fast motion it always seems to fail.
Log:
UCSF ChimeraX version: 1.11.dev202510070157 (2025-10-07)
© 2016-2025 Regents of the University of California. All rights reserved.
How to cite UCSF ChimeraX
> ui tool show "Altloc Explorer"
OpenGL version: 4.1 Metal - 89.4
OpenGL renderer: Apple M2 Ultra
OpenGL vendor: Apple
Python: 3.11.9
Locale: en_US.UTF-8
Qt version: PyQt6 6.9.1, Qt 6.9.0
Qt runtime version: 6.9.2
Qt platform: cocoa
Hardware:
Hardware Overview:
Model Name: Mac Studio
Model Identifier: Mac14,14
Model Number: Z1800003VLL/A
Chip: Apple M2 Ultra
Total Number of Cores: 24 (16 performance and 8 efficiency)
Memory: 64 GB
System Firmware Version: 11881.140.96
OS Loader Version: 11881.140.96
Software:
System Software Overview:
System Version: macOS 15.6.1 (24G90)
Kernel Version: Darwin 24.6.0
Time since boot: 48 days, 23 hours, 55 minutes
Graphics/Displays:
Apple M2 Ultra:
Chipset Model: Apple M2 Ultra
Type: GPU
Bus: Built-In
Total Number of Cores: 60
Vendor: Apple (0x106b)
Metal Support: Metal 3
Displays:
PHL 278B1:
Resolution: 3840 x 2160 (2160p/4K UHD 1 - Ultra High Definition)
UI Looks like: 1920 x 1080 @ 60.00Hz
Main Display: Yes
Mirror: Off
Online: Yes
Rotation: Supported
Installed Packages:
alabaster: 1.0.0
appdirs: 1.4.4
appnope: 0.1.4
asttokens: 3.0.0
babel: 2.17.0
beautifulsoup4: 4.13.5
blockdiag: 3.0.0
blosc2: 3.9.1
build: 1.3.0
certifi: 2025.7.14
cftime: 1.6.4.post1
charset-normalizer: 3.4.3
ChimeraX-AddCharge: 1.5.20
ChimeraX-AddH: 2.2.8
ChimeraX-AlignmentAlgorithms: 2.0.2
ChimeraX-AlignmentHdrs: 3.6.1
ChimeraX-AlignmentMatrices: 2.1
ChimeraX-Alignments: 3.0.2
ChimeraX-AlphaFold: 1.0.1
ChimeraX-AltlocExplorer: 1.1.2
ChimeraX-AmberInfo: 1.0
ChimeraX-Aniso: 1.3.2
ChimeraX-Arrays: 1.1
ChimeraX-Atomic: 1.60.17
ChimeraX-AtomicLibrary: 14.2
ChimeraX-AtomSearch: 2.0.1
ChimeraX-AxesPlanes: 2.4
ChimeraX-BasicActions: 1.1.3
ChimeraX-BILD: 1.0
ChimeraX-BlastProtein: 3.0.0
ChimeraX-Boltz: 1.1
ChimeraX-BondRot: 2.0.4
ChimeraX-BugReporter: 1.0.2
ChimeraX-BuildStructure: 2.13.1
ChimeraX-Bumps: 1.0
ChimeraX-BundleBuilder: 1.6.0
ChimeraX-ButtonPanel: 1.0.1
ChimeraX-CageBuilder: 1.0.1
ChimeraX-CellPack: 1.0
ChimeraX-Centroids: 1.4
ChimeraX-ChangeChains: 1.1
ChimeraX-CheckWaters: 1.5
ChimeraX-ChemGroup: 2.0.2
ChimeraX-Clashes: 2.3
ChimeraX-clix: 0.2.4
ChimeraX-ColorActions: 1.0.5
ChimeraX-ColorGlobe: 1.0
ChimeraX-ColorKey: 1.5.8
ChimeraX-CommandLine: 1.3.0
ChimeraX-ConnectStructure: 2.0.1
ChimeraX-Contacts: 1.0.1
ChimeraX-Core: 1.11.dev202510070157
ChimeraX-CoreFormats: 1.2
ChimeraX-coulombic: 1.4.5
ChimeraX-Crosslinks: 1.0
ChimeraX-Crystal: 1.0
ChimeraX-CrystalContacts: 1.0.1
ChimeraX-DataFormats: 1.2.4
ChimeraX-Dicom: 1.2.7
ChimeraX-DistMonitor: 1.4.2
ChimeraX-DockPrep: 1.1.4
ChimeraX-Dssp: 2.0
ChimeraX-EMDB-SFF: 1.0
ChimeraX-ESMFold: 1.0
ChimeraX-FileHistory: 1.0.1
ChimeraX-FunctionKey: 1.0.1
ChimeraX-Geometry: 1.3
ChimeraX-gltf: 1.0
ChimeraX-Graphics: 1.4.1
ChimeraX-Hbonds: 2.5.3
ChimeraX-Help: 1.3
ChimeraX-HKCage: 1.3
ChimeraX-IHM: 1.1
ChimeraX-ImageFormats: 1.2
ChimeraX-IMOD: 1.0
ChimeraX-IO: 1.0.4
ChimeraX-ItemsInspection: 1.0.1
ChimeraX-IUPAC: 1.0
ChimeraX-KVFinder: 1.7.1
ChimeraX-Label: 1.2
ChimeraX-ListInfo: 1.2.2
ChimeraX-Log: 1.2.1
ChimeraX-LookingGlass: 1.1
ChimeraX-Maestro: 1.9.2
ChimeraX-Map: 1.3
ChimeraX-MapData: 2.0
ChimeraX-MapEraser: 1.0.1
ChimeraX-MapFilter: 2.0.1
ChimeraX-MapFit: 2.0
ChimeraX-MapSeries: 2.1.1
ChimeraX-Markers: 1.0.1
ChimeraX-Mask: 1.0.2
ChimeraX-MatchMaker: 2.2.2
ChimeraX-MCopy: 1.0
ChimeraX-MDcrds: 2.17.1
ChimeraX-MedicalToolbar: 1.1
ChimeraX-Meeting: 1.0.1
ChimeraX-Minimize: 1.3.1
ChimeraX-MLP: 1.1.1
ChimeraX-mmCIF: 2.16
ChimeraX-MMTF: 2.2
ChimeraX-ModelArchive: 1.0
ChimeraX-Modeller: 1.5.22
ChimeraX-ModelPanel: 1.6
ChimeraX-ModelSeries: 1.0.1
ChimeraX-Mol2: 2.0.3
ChimeraX-Mole: 1.0
ChimeraX-Morph: 1.0.2
ChimeraX-MouseModes: 1.2
ChimeraX-Movie: 1.0.1
ChimeraX-MutationScores: 1.0
ChimeraX-Neuron: 1.0
ChimeraX-Nifti: 1.2
ChimeraX-NMRSTAR: 1.0.2
ChimeraX-NRRD: 1.2
ChimeraX-Nucleotides: 2.0.3
ChimeraX-OpenCommand: 1.15.1
ChimeraX-OrthoPick: 1.0.1
ChimeraX-PDB: 2.7.11
ChimeraX-PDBBio: 1.0.1
ChimeraX-PDBLibrary: 1.0.5
ChimeraX-PDBMatrices: 1.0
ChimeraX-PhenixUI: 1.3.9
ChimeraX-PickBlobs: 1.0.1
ChimeraX-Positions: 1.0
ChimeraX-PresetMgr: 1.1.3
ChimeraX-ProfileGrids: 1.4
ChimeraX-PubChem: 2.2
ChimeraX-ReadPbonds: 1.0.1
ChimeraX-Registration: 1.1.2
ChimeraX-RemoteControl: 1.0
ChimeraX-RenderByAttr: 1.6.5
ChimeraX-RenumberResidues: 1.1
ChimeraX-ResidueFit: 1.0.1
ChimeraX-RestServer: 1.3.1
ChimeraX-RNALayout: 1.0
ChimeraX-RotamerLibMgr: 4.0
ChimeraX-RotamerLibsDunbrack: 2.0
ChimeraX-RotamerLibsDynameomics: 2.0
ChimeraX-RotamerLibsRichardson: 2.0
ChimeraX-SaveCommand: 1.5.2
ChimeraX-Scenes: 0.2.2
ChimeraX-SchemeMgr: 1.0
ChimeraX-SDF: 2.0.3
ChimeraX-Segger: 1.0
ChimeraX-Segment: 1.0.1
ChimeraX-Segmentations: 3.5.10
ChimeraX-SelInspector: 1.0
ChimeraX-SeqView: 2.17.2
ChimeraX-Shape: 1.1
ChimeraX-Shell: 1.0.1
ChimeraX-Shortcuts: 1.2.1
ChimeraX-ShowSequences: 1.0.3
ChimeraX-SideView: 1.0.1
ChimeraX-SimilarStructures: 1.0.1
ChimeraX-Smiles: 2.1.2
ChimeraX-SmoothLines: 1.0
ChimeraX-SpaceNavigator: 1.0
ChimeraX-StdCommands: 1.19.1
ChimeraX-STL: 1.0.1
ChimeraX-Storm: 1.0
ChimeraX-StructMeasure: 1.2.1
ChimeraX-Struts: 1.0.1
ChimeraX-Surface: 1.0.1
ChimeraX-SwapAA: 2.0.1
ChimeraX-SwapRes: 2.5.2
ChimeraX-TapeMeasure: 1.0
ChimeraX-TaskManager: 1.0
ChimeraX-Test: 1.0
ChimeraX-Toolbar: 1.2.3
ChimeraX-ToolshedUtils: 1.2.4
ChimeraX-Topography: 1.0
ChimeraX-ToQuest: 1.0
ChimeraX-Tug: 1.0.1
ChimeraX-UI: 1.48.4
ChimeraX-Umap: 1.0
ChimeraX-uniprot: 2.3.1
ChimeraX-UnitCell: 1.0.1
ChimeraX-ViewDock: 1.5.1
ChimeraX-VIPERdb: 1.0
ChimeraX-Vive: 1.1
ChimeraX-VolumeMenu: 1.0.1
ChimeraX-vrml: 1.0
ChimeraX-VTK: 1.0
ChimeraX-WavefrontOBJ: 1.0
ChimeraX-WebCam: 1.0.2
ChimeraX-WebServices: 1.1.5
ChimeraX-Zone: 1.0.1
colorama: 0.4.6
comm: 0.2.3
contourpy: 1.3.3
coverage: 7.10.7
cxservices: 1.2.3
cycler: 0.12.1
Cython: 3.1.4
debugpy: 1.8.17
decorator: 5.2.1
docutils: 0.21.2
executing: 2.2.1
filelock: 3.19.1
fonttools: 4.60.1
funcparserlib: 2.0.0a0
glfw: 2.10.0
grako: 3.16.5
h5py: 3.14.0
html2text: 2025.4.15
idna: 3.10
ihm: 2.2
imagecodecs: 2024.6.1
imagesize: 1.4.1
iniconfig: 2.1.0
ipykernel: 6.30.1
ipython: 9.5.0
ipython_pygments_lexers: 1.1.1
ipywidgets: 8.1.7
jedi: 0.19.2
Jinja2: 3.1.6
joblib: 1.5.0
jupyter_client: 8.6.3
jupyter_core: 5.8.1
jupyterlab_widgets: 3.0.15
kiwisolver: 1.4.9
line_profiler: 5.0.0
llvmlite: 0.44.0
lxml: 6.0.2
lz4: 4.3.2
Markdown: 3.8.2
MarkupSafe: 3.0.3
matplotlib: 3.10.3
matplotlib: 3.10.5
matplotlib-inline: 0.1.7
msgpack: 1.1.1
narwhals: 2.6.0
ndindex: 1.10.0
nest-asyncio: 1.6.0
netCDF4: 1.6.5
networkx: 3.3
nibabel: 5.2.0
nptyping: 2.5.0
numba: 0.61.2
numexpr: 2.13.1
numpy: 2.2.6
numpy: 1.26.4
OpenMM: 8.2.0
openvr: 1.26.701
packaging: 25.0
ParmEd: 4.2.2
parso: 0.8.5
pep517: 0.13.1
pexpect: 4.9.0
pickleshare: 0.7.5
pillow: 11.3.0
pip: 25.2
pkginfo: 1.12.1.2
platformdirs: 4.4.0
plotly: 6.3.1
pluggy: 1.6.0
prompt_toolkit: 3.0.52
psutil: 7.0.0
ptyprocess: 0.7.0
pure_eval: 0.2.3
py-cpuinfo: 9.0.0
pybind11: 3.0.1
pycollada: 0.8
pydicom: 2.4.4
Pygments: 2.18.0
pyKVFinder: 0.8.3
pynmrstar: 3.3.6
pynndescent: 0.5.13
pynrrd: 1.0.0
PyOpenGL: 3.1.10
PyOpenGL-accelerate: 3.1.10
pyopenxr: 1.1.4501
pyparsing: 3.2.5
pyproject_hooks: 1.2.0
PyQt6-commercial: 6.9.1
PyQt6-Qt6: 6.9.2
PyQt6-WebEngine-commercial: 6.9.0
PyQt6-WebEngine-Qt6: 6.9.2
PyQt6_sip: 13.10.2
pytest: 8.4.2
pytest-cov: 7.0.0
python-dateutil: 2.9.0.post0
pytz: 2025.2
pyzmq: 27.1.0
qtconsole: 5.7.0
QtPy: 2.4.3
qtshim: 1.2
RandomWords: 0.4.0
requests: 2.32.5
roman-numerals-py: 3.1.0
scikit-learn: 1.6.1
scipy: 1.14.0
Send2Trash: 1.8.3
setuptools: 80.9.0
sfftk-rw: 0.8.1
six: 1.17.0
snowballstemmer: 3.0.1
sortedcontainers: 2.4.0
soupsieve: 2.8
Sphinx: 8.2.3
sphinx-autodoc-typehints: 3.2.0
sphinxcontrib-applehelp: 2.0.0
sphinxcontrib-blockdiag: 3.0.0
sphinxcontrib-devhelp: 2.0.0
sphinxcontrib-htmlhelp: 2.1.0
sphinxcontrib-jsmath: 1.0.1
sphinxcontrib-qthelp: 2.0.0
sphinxcontrib-serializinghtml: 2.0.0
stack-data: 0.6.3
superqt: 0.7.6
tables: 3.10.2
tcia_utils: 1.5.1
threadpoolctl: 3.6.0
tifffile: 2025.3.13
tinyarray: 1.2.5
tomlkit: 0.13.3
tornado: 6.5.2
tqdm: 4.67.1
traitlets: 5.14.3
typing_extensions: 4.15.0
tzdata: 2025.2
umap-learn: 0.5.7
urllib3: 2.5.0
wcwidth: 0.2.14
webcolors: 24.11.1
wheel: 0.45.1
wheel-filename: 1.4.2
widgetsnbextension: 4.0.14
Change History (5)
comment:1 by , 4 weeks ago
| Cc: | added |
|---|---|
| Component: | Unassigned → Window Toolkit |
| Owner: | set to |
| Platform: | → all |
| Project: | → ChimeraX |
| Status: | new → assigned |
| Summary: | ChimeraX bug report submission → Stacked tools do not show tab buttons Mac Qt 6.9.2 |
comment:2 by , 8 days ago
| Milestone: | → 1.11 |
|---|
I tried commenting out our _Qt.float_changed() method that adjust floating window flags on Mac for instance to allow a floating window to stack behind the main window. That did not change the behavior in this bug report. It still some of the time shows the stacked window tabs and sometimes does not.
comment:3 by , 8 days ago
comment:4 by , 8 days ago
It often takes 2 or 3 tries dragging and dropping the Boltz tool in the same ChimeraX session before it fails to work correctly. But after it fails to work I have never seen it start working again in the same session.
comment:5 by , 8 days ago
I installed PyQt 6.8.1 in my current ChimeraX devel build and it does not have this problem, nor does it crash if I rapidly drag the floating window over docked windows. So it seems that the bug was certainly introduced in Qt 6.9.x.
The same problem was observed with PySide6 with Qt 6.9.2 reported as ChimeraX ticket #18657. Hopefully Qt 6.9.3 fixes it. Qt 6.9.3 was released September 30 but PyQt6-Qt6 still only provides Qt 6.9.2.
When trying to reproduce this bug sometimes ChimeraX crashed when moving the Altloc tool up down rapidly, reported as ticket #19077.