#5137 closed defect (fixed)
Toolbar appearance changed on Mac
Reported by: | Owned by: | Zach Pearson | |
---|---|---|---|
Priority: | blocker | Milestone: | 1.3 |
Component: | UI | Version: | |
Keywords: | Cc: | Greg Couch, pett, Elaine Meng | |
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.3.dev202108251821 (2021-08-25 18:21:58 UTC) Description A change to the Toolbar formatting has made the spacing between category names and the icons even greater than before -- ie even uglier. Commit was August 30 by Zach. The new appearance uses less vertical space for the tabs which is good, but overall appearance is worse. Log: UCSF ChimeraX version: 1.3.dev202108251821 (2021-08-25) © 2016-2021 Regents of the University of California. All rights reserved. How to cite UCSF ChimeraX > open 5r43 Summary of feedback from opening 5r43 fetched from pdb --- notes | Fetching compressed mmCIF 5r43 from http://files.rcsb.org/download/5r43.cif Fetching CCD MLA from http://ligand-expo.rcsb.org/reports/M/MLA/MLA.cif Fetching CCD IOD from http://ligand-expo.rcsb.org/reports/I/IOD/IOD.cif 5r43 title: Crystal Structure of deuterated gamma-Chymotrypsin at pH 7.5, cryo temperature [more info...] Chain information for 5r43 #1 --- Chain | Description | UniProt A | Chymotrypsinogen A | CTRA_BOVIN B | Chymotrypsinogen A | CTRA_BOVIN C | Chymotrypsinogen A | CTRA_BOVIN D | peptide SWPW | E | peptide TPGVY | Non-standard residues in 5r43 #1 --- IOD — iodide ion MLA — malonic acid (dicarboxylic acid C3; propanediolic acid; methanedicarboxylic acid) > show cartoons > hide atoms > ui tool show AlphaFold > alphafold match #1/A 1 UniProt id does not have an AlphaFold database model: P00766 (chain A) No AlphaFold model with similar sequence for chain A Opened 0 AlphaFold model > alphafold search #1/A ChimeraX REST job id: job_nwl1j4lr BlastProtein finished. Parsing BLAST results. > select /A:1-10 68 atoms, 69 bonds, 10 residues, 1 model selected > select /B:16-146 980 atoms, 1001 bonds, 131 residues, 1 model selected > alphafold match #1/B 1 UniProt id does not have an AlphaFold database model: P00766 (chain B) Fetching compressed AlphaFold P17538 from https://alphafold.ebi.ac.uk/files/AF-P17538-F1-model_v1.cif 1 AlphaFold model found using sequence similarity searches: P17538 (chain B) AlphaFold chains matching 5r43 --- Chain| UniProt Name| UniProt Id| RMSD| Length| Seen| % Id B | CTRB1_HUMAN | P17538 | 0.53 | 131 | 131 | 83 Opened 1 AlphaFold model > color #2 lightgray > color #2::same_sequence=false red > hide #1 models > show #1 models > alphafold match #1/C 1 UniProt id does not have an AlphaFold database model: P00766 (chain C) 1 AlphaFold model found using sequence similarity searches: P17538 (chain C) AlphaFold chains matching 5r43 --- Chain| UniProt Name| UniProt Id| RMSD| Length| Seen| % Id C | CTRB1_HUMAN | P17538 | 0.62 | 98 | 97 | 81 Opened 1 AlphaFold model > alphafold search #1/C ChimeraX REST job id: job_560pdysu BlastProtein finished. Parsing BLAST results. > alphafold fetch Q561U4 alignTo #1/C Fetching compressed AlphaFold Q561U4 from https://alphafold.ebi.ac.uk/files/AF-Q561U4-F1-model_v1.cif AlphaFold chains matching chain C --- Chain| UniProt Name| UniProt Id| RMSD| Length| Seen| % Id C | | Q561U4 | 0.65 | 97 | 97 | 68 > hide #1 models > close #2 > hide #4 models > show #4 models > hide #4 models > show #4 models > alphafold fetch G3V8J3 alignTo #1/C Fetching compressed AlphaFold G3V8J3 from https://alphafold.ebi.ac.uk/files/AF-G3V8J3-F1-model_v1.cif AlphaFold chains matching chain C --- Chain| UniProt Name| UniProt Id| RMSD| Length| Seen| % Id C | | G3V8J3 | 0.74 | 98 | 97 | 54 > open 7p4z format mmcif fromDatabase pdb 7p4z title: Crystal structure of avidin from hen egg white in space group C2 [more info...] Chain information for 7p4z #5 --- Chain | Description | UniProt A B | Avidin | AVID_CHICK Non-standard residues in 7p4z #5 --- NAG — 2-acetamido-2-deoxy-beta-D-glucopyranose (N-acetyl-beta-D-glucosamine; 2-acetamido-2-deoxy-beta-D-glucose; 2-acetamido-2-deoxy-D-glucose; 2-acetamido-2-deoxy-glucose; N-ACETYL-D-GLUCOSAMINE) 7p4z mmCIF Assemblies --- 1| author_and_software_defined_assembly > close #1-4 > alphafold match #1/C No protein sequences specified > alphafold match #5/A 1 UniProt id does not have an AlphaFold database model: P02701 (chain A) No AlphaFold model with similar sequence for chain A Opened 0 AlphaFold model > alphafold search #5/A ChimeraX REST job id: job_fp52nm5o BlastProtein finished. Parsing BLAST results. > alphafold fetch A0A2R8PXI9 alignTo #5/A AlphaFold chains matching chain A --- Chain| UniProt Name| UniProt Id| RMSD| Length| Seen| % Id A | | A0A2R8PXI9 | 1.90 | 122 | 116 | 40 > alphafold predict #5/A Running AlphaFold prediction AlphaFold prediction finished Results in /Users/goddard/Downloads/ChimeraX/AlphaFold/prediction_9 Chain information for best_model.pdb #2 --- Chain | Description A | No description available OpenGL version: 4.1 ATI-3.10.19 OpenGL renderer: AMD Radeon Pro Vega 20 OpenGL Engine OpenGL vendor: ATI Technologies Inc.Hardware: Hardware Overview: Model Name: MacBook Pro Model Identifier: MacBookPro15,3 Processor Name: 8-Core Intel Core i9 Processor Speed: 2.4 GHz Number of Processors: 1 Total Number of Cores: 8 L2 Cache (per Core): 256 KB L3 Cache: 16 MB Hyper-Threading Technology: Enabled Memory: 32 GB Boot ROM Version: 1554.100.64.0.0 (iBridge: 18.16.14556.0.0,0) Software: System Software Overview: System Version: macOS 10.15.7 (19H1030) Kernel Version: Darwin 19.6.0 Time since boot: 103 days 1:11 Graphics/Displays: Intel UHD Graphics 630: Chipset Model: Intel UHD Graphics 630 Type: GPU Bus: Built-In VRAM (Dynamic, Max): 1536 MB Vendor: Intel Device ID: 0x3e9b Revision ID: 0x0002 Automatic Graphics Switching: Supported gMux Version: 5.0.0 Metal: Supported, feature set macOS GPUFamily2 v1 Radeon Pro Vega 20: Chipset Model: Radeon Pro Vega 20 Type: GPU Bus: PCIe PCIe Lane Width: x8 VRAM (Total): 4 GB Vendor: AMD (0x1002) Device ID: 0x69af Revision ID: 0x00c0 ROM Revision: 113-D2060I-087 VBIOS Version: 113-D20601MA0T-016 Option ROM Version: 113-D20601MA0T-016 EFI Driver Version: 01.01.087 Automatic Graphics Switching: Supported gMux Version: 5.0.0 Metal: Supported, feature set macOS GPUFamily2 v1 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 Locale: (None, 'UTF-8') PyQt5 5.15.2, Qt 5.15.2 Installed Packages: alabaster: 0.7.12 appdirs: 1.4.4 appnope: 0.1.2 Babel: 2.9.1 backcall: 0.2.0 blockdiag: 2.0.1 certifi: 2021.5.30 cftime: 1.5.0 chardet: 4.0.0 charset-normalizer: 2.0.4 ChimeraX-AddCharge: 1.1.4 ChimeraX-AddH: 2.1.10 ChimeraX-AlignmentAlgorithms: 2.0 ChimeraX-AlignmentHdrs: 3.2 ChimeraX-AlignmentMatrices: 2.0 ChimeraX-Alignments: 2.1 ChimeraX-AlphaFold: 1.0 ChimeraX-AltlocExplorer: 1.0 ChimeraX-AmberInfo: 1.0 ChimeraX-Arrays: 1.0 ChimeraX-Atomic: 1.28.1 ChimeraX-AtomicLibrary: 4.1 ChimeraX-AtomSearch: 2.0 ChimeraX-AtomSearchLibrary: 1.0 ChimeraX-AxesPlanes: 2.0 ChimeraX-BasicActions: 1.1 ChimeraX-BILD: 1.0 ChimeraX-BlastProtein: 2.0 ChimeraX-BondRot: 2.0 ChimeraX-BugReporter: 1.0 ChimeraX-BuildStructure: 2.5.3 ChimeraX-Bumps: 1.0 ChimeraX-BundleBuilder: 1.1 ChimeraX-ButtonPanel: 1.0 ChimeraX-CageBuilder: 1.0 ChimeraX-CellPack: 1.0 ChimeraX-Centroids: 1.1 ChimeraX-ChemGroup: 2.0 ChimeraX-Clashes: 2.1 ChimeraX-ColorActions: 1.0 ChimeraX-ColorGlobe: 1.0 ChimeraX-ColorKey: 1.3.3 ChimeraX-CommandLine: 1.1.4 ChimeraX-ConnectStructure: 2.0 ChimeraX-Contacts: 1.0 ChimeraX-Core: 1.3.dev202108251821 ChimeraX-CoreFormats: 1.1 ChimeraX-coulombic: 1.3 ChimeraX-Crosslinks: 1.0 ChimeraX-Crystal: 1.0 ChimeraX-CrystalContacts: 1.0 ChimeraX-DataFormats: 1.2 ChimeraX-Dicom: 1.0 ChimeraX-DistMonitor: 1.1.4 ChimeraX-DistUI: 1.0 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 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.4 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 ChimeraX-MDcrds: 2.4 ChimeraX-MedicalToolbar: 1.0.1 ChimeraX-Meeting: 1.0 ChimeraX-MLP: 1.1 ChimeraX-mmCIF: 2.3 ChimeraX-MMTF: 2.1 ChimeraX-Modeller: 1.1 ChimeraX-ModelPanel: 1.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.7 ChimeraX-PDB: 2.5.1 ChimeraX-PDBBio: 1.0 ChimeraX-PDBLibrary: 1.0.1 ChimeraX-PDBMatrices: 1.0 ChimeraX-PickBlobs: 1.0 ChimeraX-Positions: 1.0 ChimeraX-PresetMgr: 1.0.1 ChimeraX-PubChem: 2.1 ChimeraX-ReadPbonds: 1.0 ChimeraX-Registration: 1.1 ChimeraX-RemoteControl: 1.0 ChimeraX-ResidueFit: 1.0 ChimeraX-RestServer: 1.1 ChimeraX-RNALayout: 1.0 ChimeraX-RotamerLibMgr: 2.0 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.1 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.6 ChimeraX-STL: 1.0 ChimeraX-Storm: 1.0 ChimeraX-Struts: 1.0 ChimeraX-Surface: 1.0 ChimeraX-SwapAA: 2.0 ChimeraX-SwapRes: 2.1 ChimeraX-TapeMeasure: 1.0 ChimeraX-Test: 1.0 ChimeraX-Toolbar: 1.1 ChimeraX-ToolshedUtils: 1.2 ChimeraX-Tug: 1.0 ChimeraX-UI: 1.12 ChimeraX-uniprot: 2.2 ChimeraX-UnitCell: 1.0 ChimeraX-ViewDockX: 1.0.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 comtypes: 1.1.10 cxservices: 1.0.1 cycler: 0.10.0 Cython: 0.29.23 decorator: 5.0.9 distlib: 0.3.1 docutils: 0.17.1 filelock: 3.0.12 funcparserlib: 0.3.6 grako: 3.16.5 h5py: 3.3.0 html2text: 2020.1.16 idna: 2.10 ihm: 0.20 imagecodecs: 2021.4.28 imagesize: 1.2.0 ipykernel: 5.5.5 ipython: 7.23.1 ipython-genutils: 0.2.0 jedi: 0.18.0 Jinja2: 2.11.3 jupyter-client: 6.1.12 jupyter-core: 4.7.1 kiwisolver: 1.3.1 lxml: 4.6.3 lz4: 3.1.3 MarkupSafe: 1.1.1 matplotlib: 3.4.2 matplotlib-inline: 0.1.2 msgpack: 1.0.2 netCDF4: 1.5.6 networkx: 2.6.2 numexpr: 2.7.3 numpy: 1.21.0 numpydoc: 1.1.0 openvr: 1.16.801 packaging: 21.0 ParmEd: 3.2.0 parso: 0.8.2 pexpect: 4.8.0 pickleshare: 0.7.5 Pillow: 8.2.0 pip: 21.1.1 pkginfo: 1.7.0 prompt-toolkit: 3.0.19 psutil: 5.8.0 ptyprocess: 0.7.0 pycollada: 0.7.1 pydicom: 2.1.2 Pygments: 2.9.0 PyOpenGL: 3.1.5 PyOpenGL-accelerate: 3.1.5 pyparsing: 2.4.7 PyQt5: 5.15.2 PyQt5-sip: 12.8.1 PyQtWebEngine: 5.15.2 python-dateutil: 2.8.1 pytz: 2021.1 pyzmq: 22.2.1 qtconsole: 5.1.0 QtPy: 1.9.0 RandomWords: 0.3.0 requests: 2.25.1 scipy: 1.6.3 setuptools: 57.0.0 sfftk-rw: 0.7.0.post1 six: 1.16.0 snowballstemmer: 2.1.0 sortedcontainers: 2.4.0 Sphinx: 4.0.1 sphinxcontrib-applehelp: 1.0.2 sphinxcontrib-blockdiag: 2.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-jurko: 0.6 tifffile: 2021.4.8 tinyarray: 1.2.3 tornado: 6.1 traitlets: 5.0.5 urllib3: 1.26.6 wcwidth: 0.2.5 webcolors: 1.11.1 wheel: 0.36.2 wheel-filename: 1.3.0
Attachments (5)
Change History (16)
comment:1 by , 4 years ago
Component: | Unassigned → UI |
---|---|
Owner: | set to |
Platform: | → all |
Project: | → ChimeraX |
Status: | new → assigned |
Summary: | ChimeraX bug report submission → Toolbar appearance changed on Mac |
by , 4 years ago
Attachment: | toolbar.png added |
---|
comment:2 by , 4 years ago
Oh, good eye! That was hard to see since even though the spacing is greater the labels are pretty close to where they used to be.
I think the main reason for the wonky spacing is that the Graphics -> Background section is the tallest thing in the toolbar and sets the height of all the other sections too. It also looks like instead of shrinking overall the whole thing just expanded to fit the new space.
Anyway as for fixes -- besides reverting the commit, setting the height of QTabWidgets to a fixed 102px and adding a 4px bottom margin to QLabels made the spacing even slightly closer than before (and the 4 pixel offset looks better imo). The main thing I dislike about this fix is that the tab bar is resizable but setting a fixed height on the child widget means it won't grow with the tab bar. What's frustrating is that after many iterations, I haven't yet found the correct incantation of padding-margin-spacing-border pixel values to get the same behavior that I know is possible from seeing the button spacing condensed by the 102px fixed height. But when I try to fix the margins/padding, Qt wants to cut labels off instead of bringing things closer together!
It may be fair to say that commit was premature.
I got interested in the toolbar for an unrelated bug that I thought was ours, but is not: https://bugreports.qt.io/browse/QTBUG-86513 (about the file-folder like blue lines that come off the unfocused tabs)
by , 4 years ago
Attachment: | Screen Shot 2021-09-01 at 00.33.54.png added |
---|
Upstream QT bug affecting macOS >= Big Sur (file folder like blue bars coming off unfocused tabs)
by , 4 years ago
Attachment: | Screen Shot 2021-09-01 at 00.35.32.png added |
---|
Default vs fixed 102px height w/ 4px bottom margin on labels
comment:3 by , 4 years ago
Cc: | added |
---|
I thought those blue vertical lines between the toolbar tab names on Big Sur were a feature and an improvement! I am serious.
But reducing the vertical size of the toolbar is something we would like. But you are on a doomed quest. Qt widget padding on Mac is a nightmare as you can see by looking at all the posts about it over the years. I have spent probably 20-40 hours tinkering with style settings to get Mac spacing better in UI panels. Most of the time it backfires, breaks behavior (like menu buttons can only be clicked at certain places on the button!). Then it breaks when a new macOS comes out or a new Qt comes out. The lesson I have learned is if you tweek the widget style on Mac you are in for pain. Non-default style on Mac simply gets used so rarely that it is a mess. One especially deadly problem is changing style causes native Mac widgets to get replaced by a completely different implementation of Qt generic widgets. No way to know what style settings will cause this. We generally want native widgets for best appearance.
At any rate, if you want to mess with the Toolbar spacing you can, but it is very important to get it right since every user sees and uses this, and a huge time sink of undocumented and unstable Qt behaviors so beware.
If the background colors in the Graphics Toolbar are forcing the overall vertical size larger, those 3 colors can be horizontally laid out buttons instead of vertically stacked -- there is plenty of unused width on the Graphics Toolbar.
Greg wrote the toolbar gui.
comment:4 by , 4 years ago
Milestone: | → 1.3 |
---|
This change should be reverted, or improved before release.
comment:5 by , 4 years ago
Priority: | normal → blocker |
---|
comment:6 by , 4 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Reverted in this commit but I'd be interested in trying again in Qt6.
comment:7 by , 4 years ago
It looked like the toolbar height was forced to be large with this change due to the graphics tab background color 3 stacked colors. But when I layed out those colors horizontally it did not change the excessive height. Attached an image.
by , 4 years ago
Attachment: | bgcolor.png added |
---|
Toolbar height still excessive when graphics tab background colors laid out horizontally.
comment:8 by , 4 years ago
I had asked Greg a little bit about the spacing last week.
The other sections I thought might be responsible for the height were Atoms, Cartoons, and Surfaces under Molecule Display, but I didn't experimented with them for lack of a good alternative.
comment:9 by , 4 years ago
I tested molecule display atoms/cartoons/surfaces and graphics background color all laid out horizontally, so no vertical layout in any tabs, and it did not reduce the height of the toolbar.
comment:10 by , 4 years ago
Looking at your most recent attachment I notice the macOS tab bar background I took out in the reverted commit is still out. Did you reinstall the ui bundle? I only ask because I just tried to get the change by reinstalling the toolbar bundle absentmindedly, so I was really confused for a second when it didn't take effect.
comment:11 by , 4 years ago
Yes, the image I attached was with your style change. I tested horizontal instead of stacked layout both with your style change and without it, did not reduce height in either case.
Comparison of former toolbar appearance left and current appearance right.