Opened 4 years ago
Closed 4 years ago
#6163 closed defect (fixed)
Qt6 does not show Toolbar rollover arrows
Reported by: | Owned by: | Zach Pearson | |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | Platform | Version: | |
Keywords: | Cc: | Greg Couch | |
Blocked By: | Blocking: | ||
Notify when closed: | Platform: | all | |
Project: | ChimeraX |
Description
The following bug report has been submitted: Platform: macOS-10.15.7-x86_64-i386-64bit ChimeraX Version: 1.4.dev202202131839 (2022-02-13 18:39:58 UTC) Description Qt6 ChimeraX does not show Toolbar roll-over when window width is too narrow to fit all toolbar icons. Log: Startup Messages --- warning | Data format provider 'ZDOCK' supplied unknown keywords with format description: {'is_default': 'false'} UCSF ChimeraX version: 1.4.dev202202131839 (2022-02-13) © 2016-2021 Regents of the University of California. All rights reserved. How to cite UCSF ChimeraX OpenGL version: 4.1 NVIDIA-14.0.32 355.11.11.10.10.143 OpenGL renderer: NVIDIA GeForce GT 650M OpenGL Engine OpenGL vendor: NVIDIA Corporation Locale: UTF-8 Qt version: PyQt6 6.2.3, Qt 6.2.3 Qt platform: cocoa Hardware: Hardware Overview: Model Name: MacBook Pro Model Identifier: MacBookPro10,1 Processor Name: Quad-Core Intel Core i7 Processor Speed: 2.6 GHz Number of Processors: 1 Total Number of Cores: 4 L2 Cache (per Core): 256 KB L3 Cache: 6 MB Hyper-Threading Technology: Enabled Memory: 16 GB Boot ROM Version: 425.0.0.0.0 SMC Version (system): 2.3f36 Software: System Software Overview: System Version: macOS 10.15.7 (19H1615) Kernel Version: Darwin 19.6.0 Time since boot: 44 days 19:23 Graphics/Displays: Intel HD Graphics 4000: Chipset Model: Intel HD Graphics 4000 Type: GPU Bus: Built-In VRAM (Dynamic, Max): 1536 MB Vendor: Intel Device ID: 0x0166 Revision ID: 0x0009 Automatic Graphics Switching: Supported gMux Version: 3.2.19 [3.2.8] Metal: Supported, feature set macOS GPUFamily1 v4 NVIDIA GeForce GT 650M: Chipset Model: NVIDIA GeForce GT 650M Type: GPU Bus: PCIe PCIe Lane Width: x8 VRAM (Total): 1 GB Vendor: NVIDIA (0x10de) Device ID: 0x0fd5 Revision ID: 0x00a2 ROM Revision: 3688 Automatic Graphics Switching: Supported gMux Version: 3.2.19 [3.2.8] Metal: Supported, feature set macOS GPUFamily1 v4 Displays: Color LCD: Display Type: Built-In Retina LCD Resolution: 2880 x 1800 Retina Framebuffer Depth: 24-Bit Color (ARGB8888) Main Display: Yes Mirror: Off Online: Yes Automatically Adjust Brightness: No Connection Type: Internal Installed Packages: alabaster: 0.7.12 appdirs: 1.4.4 appnope: 0.1.2 Babel: 2.9.1 backcall: 0.2.0 blockdiag: 3.0.0 certifi: 2021.5.30 cftime: 1.5.2 charset-normalizer: 2.0.12 ChimeraX-AddCharge: 1.2.3 ChimeraX-AddH: 2.1.11 ChimeraX-AlignmentAlgorithms: 2.0 ChimeraX-AlignmentHdrs: 3.2 ChimeraX-AlignmentMatrices: 2.0 ChimeraX-Alignments: 2.2.3 ChimeraX-AlphaFold: 1.0 ChimeraX-AltlocExplorer: 1.0.1 ChimeraX-AmberInfo: 1.0 ChimeraX-Arrays: 1.0 ChimeraX-Atomic: 1.36.2 ChimeraX-AtomicLibrary: 6.0.1 ChimeraX-AtomSearch: 2.0 ChimeraX-AtomSearchLibrary: 1.0 ChimeraX-AxesPlanes: 2.1 ChimeraX-BasicActions: 1.1 ChimeraX-BILD: 1.0 ChimeraX-BlastProtein: 2.0 ChimeraX-BondRot: 2.0 ChimeraX-BugReporter: 1.0 ChimeraX-BuildStructure: 2.6.1 ChimeraX-Bumps: 1.0 ChimeraX-BundleBuilder: 1.1 ChimeraX-ButtonPanel: 1.0 ChimeraX-CageBuilder: 1.0 ChimeraX-CellPack: 1.0 ChimeraX-Centroids: 1.2 ChimeraX-ChemGroup: 2.0 ChimeraX-Clashes: 2.2.2 ChimeraX-ColorActions: 1.0 ChimeraX-ColorGlobe: 1.0 ChimeraX-ColorKey: 1.5.1 ChimeraX-CommandLine: 1.2.1 ChimeraX-ConnectStructure: 2.0 ChimeraX-Contacts: 1.0 ChimeraX-Core: 1.4.dev202202131839 ChimeraX-CoreFormats: 1.1 ChimeraX-coulombic: 1.3.2 ChimeraX-Crosslinks: 1.0 ChimeraX-Crystal: 1.0 ChimeraX-CrystalContacts: 1.0 ChimeraX-DataFormats: 1.2.2 ChimeraX-Dicom: 1.0 ChimeraX-DistMonitor: 1.1.5 ChimeraX-Dssp: 2.0 ChimeraX-EMDB-SFF: 1.0 ChimeraX-ExperimentalCommands: 1.0 ChimeraX-FileHistory: 1.0 ChimeraX-FunctionKey: 1.0 ChimeraX-Geometry: 1.1 ChimeraX-gltf: 1.0 ChimeraX-Graphics: 1.1 ChimeraX-Hbonds: 2.1.2 ChimeraX-Help: 1.2 ChimeraX-HKCage: 1.3 ChimeraX-IHM: 1.1 ChimeraX-ImageFormats: 1.2 ChimeraX-IMOD: 1.0 ChimeraX-IO: 1.0.1 ChimeraX-ItemsInspection: 1.0 ChimeraX-Label: 1.1 ChimeraX-ListInfo: 1.1.1 ChimeraX-Log: 1.1.5 ChimeraX-LookingGlass: 1.1 ChimeraX-Maestro: 1.8.1 ChimeraX-Map: 1.1 ChimeraX-MapData: 2.0 ChimeraX-MapEraser: 1.0 ChimeraX-MapFilter: 2.0 ChimeraX-MapFit: 2.0 ChimeraX-MapSeries: 2.1 ChimeraX-Markers: 1.0 ChimeraX-Mask: 1.0 ChimeraX-MatchMaker: 2.0.6 ChimeraX-MDcrds: 2.6 ChimeraX-MedicalToolbar: 1.0.1 ChimeraX-Meeting: 1.0 ChimeraX-MLP: 1.1 ChimeraX-mmCIF: 2.7 ChimeraX-MMTF: 2.1 ChimeraX-Modeller: 1.5.1 ChimeraX-ModelPanel: 1.3.1 ChimeraX-ModelSeries: 1.0 ChimeraX-Mol2: 2.0 ChimeraX-Morph: 1.0 ChimeraX-MouseModes: 1.1 ChimeraX-Movie: 1.0 ChimeraX-Neuron: 1.0 ChimeraX-Nucleotides: 2.0.2 ChimeraX-OpenCommand: 1.8 ChimeraX-PDB: 2.6.6 ChimeraX-PDBBio: 1.0 ChimeraX-PDBLibrary: 1.0.2 ChimeraX-PDBMatrices: 1.0 ChimeraX-PickBlobs: 1.0 ChimeraX-Positions: 1.0 ChimeraX-PresetMgr: 1.1 ChimeraX-PubChem: 2.1 ChimeraX-ReadPbonds: 1.0.1 ChimeraX-Registration: 1.1 ChimeraX-RemoteControl: 1.0 ChimeraX-ResidueFit: 1.0 ChimeraX-RestServer: 1.1 ChimeraX-RNALayout: 1.0 ChimeraX-RotamerLibMgr: 2.0.1 ChimeraX-RotamerLibsDunbrack: 2.0 ChimeraX-RotamerLibsDynameomics: 2.0 ChimeraX-RotamerLibsRichardson: 2.0 ChimeraX-SaveCommand: 1.5 ChimeraX-SchemeMgr: 1.0 ChimeraX-SDF: 2.0 ChimeraX-Segger: 1.0 ChimeraX-Segment: 1.0 ChimeraX-SelInspector: 1.0 ChimeraX-SeqView: 2.4.6 ChimeraX-Shape: 1.0.1 ChimeraX-Shell: 1.0 ChimeraX-Shortcuts: 1.1 ChimeraX-ShowAttr: 1.0 ChimeraX-ShowSequences: 1.0 ChimeraX-SideView: 1.0 ChimeraX-Smiles: 2.1 ChimeraX-SmoothLines: 1.0 ChimeraX-SpaceNavigator: 1.0 ChimeraX-StdCommands: 1.7.7 ChimeraX-STL: 1.0 ChimeraX-Storm: 1.0 ChimeraX-StructMeasure: 1.0.1 ChimeraX-Struts: 1.0.1 ChimeraX-Surface: 1.0 ChimeraX-SwapAA: 2.0 ChimeraX-SwapRes: 2.1.1 ChimeraX-TapeMeasure: 1.0 ChimeraX-Test: 1.0 ChimeraX-Toolbar: 1.1 ChimeraX-ToolshedUtils: 1.2.1 ChimeraX-Tug: 1.0 ChimeraX-UI: 1.16 ChimeraX-uniprot: 2.2 ChimeraX-UnitCell: 1.0 ChimeraX-ViewDockX: 1.1.1 ChimeraX-VIPERdb: 1.0 ChimeraX-Vive: 1.1 ChimeraX-VolumeMenu: 1.0 ChimeraX-VTK: 1.0 ChimeraX-WavefrontOBJ: 1.0 ChimeraX-WebCam: 1.0 ChimeraX-WebServices: 1.0 ChimeraX-Zone: 1.0 colorama: 0.4.4 cxservices: 1.1 cycler: 0.11.0 Cython: 0.29.26 debugpy: 1.5.1 decorator: 5.1.1 docutils: 0.17.1 entrypoints: 0.4 filelock: 3.4.2 fonttools: 4.29.1 funcparserlib: 1.0.0a0 grako: 3.16.5 h5py: 3.6.0 html2text: 2020.1.16 idna: 3.3 ihm: 0.26 imagecodecs: 2021.11.20 imagesize: 1.3.0 ipykernel: 6.6.1 ipython: 7.31.1 ipython-genutils: 0.2.0 jedi: 0.18.1 Jinja2: 3.0.3 jupyter-client: 7.1.0 jupyter-core: 4.9.1 kiwisolver: 1.3.2 line-profiler: 3.4.0 lxml: 4.7.1 lz4: 3.1.10 MarkupSafe: 2.0.1 matplotlib: 3.5.1 matplotlib-inline: 0.1.3 msgpack: 1.0.3 nest-asyncio: 1.5.4 netCDF4: 1.5.8 networkx: 2.6.3 numexpr: 2.8.1 numpy: 1.22.1 openvr: 1.16.802 packaging: 21.0 ParmEd: 3.4.3 parso: 0.8.3 pexpect: 4.8.0 pickleshare: 0.7.5 Pillow: 9.0.0 pip: 21.3.1 pkginfo: 1.8.2 prompt-toolkit: 3.0.28 psutil: 5.9.0 ptyprocess: 0.7.0 pycollada: 0.7.2 pydicom: 2.2.2 Pygments: 2.11.2 PyOpenGL: 3.1.5 PyOpenGL-accelerate: 3.1.5 pyparsing: 3.0.7 PyQt6-commercial: 6.2.3 PyQt6-sip: 13.2.0 PyQt6-WebEngine-commercial: 6.2.1 python-dateutil: 2.8.2 pytz: 2021.3 pyzmq: 22.3.0 qtconsole: 5.2.2 QtPy: 2.0.1 RandomWords: 0.3.0 requests: 2.27.1 scipy: 1.7.3 setuptools: 59.8.0 sfftk-rw: 0.7.1 six: 1.16.0 snowballstemmer: 2.2.0 sortedcontainers: 2.4.0 Sphinx: 4.3.2 sphinx-autodoc-typehints: 1.15.2 sphinxcontrib-applehelp: 1.0.2 sphinxcontrib-blockdiag: 3.0.0 sphinxcontrib-devhelp: 1.0.2 sphinxcontrib-htmlhelp: 2.0.0 sphinxcontrib-jsmath: 1.0.1 sphinxcontrib-qthelp: 1.0.3 sphinxcontrib-serializinghtml: 1.1.5 suds-community: 1.0.0 tables: 3.7.0 tifffile: 2021.11.2 tinyarray: 1.2.4 tornado: 6.1 traitlets: 5.1.1 urllib3: 1.26.8 wcwidth: 0.2.5 webcolors: 1.11.1 wheel: 0.37.1 wheel-filename: 1.3.0
Change History (11)
comment:1 by , 4 years ago
Component: | Unassigned → Platform |
---|---|
Owner: | set to |
Platform: | → all |
Project: | → ChimeraX |
Status: | new → assigned |
Summary: | ChimeraX bug report submission → Qt6 does not show Toolbar rollover arrows |
comment:3 by , 4 years ago
Possibly a bug in the macOS version of Qt6. Doesn't show on 12.0.1 either, and if you add a lot of buttons to the toy code at the bottom of ui/widgets/tabbedtoolbar.py and run the file, the bug pops up so it's not necessarily from us.
comment:5 by , 4 years ago
Owner: | changed from | to
---|
comment:6 by , 4 years ago
To get bugs like this fixed, we would need to submit a simple test case to the Qt Company. Something using PySide or just C++ would be best. A stripped down version of tabbedwidget.py would be a start.
comment:7 by , 4 years ago
Cc: | added |
---|
Found a bug report in the Qt project that deals with this issue (now closed). It looks like we simply have to
a) Backport the relevant patch into our current Qt6
or
b) Wait for PyQt6 to release a new bugfix version
https://bugreports.qt.io/browse/QTBUG-100317?jql=text%20~%20QToolBar%20ORDER%20BY%20created%20DESC
What do you think, Greg? I think it's within your wheelhouse to determine the correct path forward, since from what I've seen you handle building the commercial PyQt6 we use. Is this something we can solve in our build system, or would it be best to wait?
comment:8 by , 4 years ago
Blocking: | → 6268 |
---|
follow-up: 9 comment:9 by , 4 years ago
Our standard operating procedure is to wait for the bug fix release. I am sympathetic to doing back ports, but we have found that becomes a maintenance burden. We much prefer having the Qt Company do all of the (regression) testing. Building our commerical PyQt isn't too hard. prereqs/PyQt/Makefile.wheel has all of the magic. For a new version of Qt or PyQt, I edit it on one platform, and then do a "make -f Makefile.wheel upload". That does everything. Then, before committing the changes, I copy them over to the other plaforms. And repeat the process. That finds any missing edits -- sometimes there are platform dependent edits needed. And after that, I either commit the changes or commit a patch file with the changes. -- Greg On 2/28/22 3:44 PM, ChimeraX wrote:
comment:10 by , 4 years ago
Blocking: | 6268 |
---|
comment:11 by , 4 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Fixed in PyQt6-Qt6==6.2.4 (upgraded by Greg in this commit). Thanks, Greg!
Clicking where the rollover arrow normally appears shows the popup with the extra icons. So it is only the display of the rollover arrow symbol that is missing.