Opened 6 years ago
Closed 5 years ago
#2289 closed enhancement (fixed)
Suppress log scrolling if log link clicked
Reported by: | Owned by: | Greg Couch | |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | Logging | Version: | |
Keywords: | Cc: | pett | |
Blocked By: | Blocking: | ||
Notify when closed: | Platform: | all | |
Project: | ChimeraX |
Description
The following bug report has been submitted: Platform: Darwin-18.7.0-x86_64-i386-64bit ChimeraX Version: 0.91 (2019-08-02) Description Clicking on a a chain in the log chain table makes the log scroll to the bottom, I guess to show the command that shows that chain. This makes the chain table not very useful for selecting different chains and ligands. Would be nice to somehow supress the log scrolling when clicking links in the chain table. In fact maybe clicking any link in the log should supress automatically scrolling the log to the bottom. Log: UCSF ChimeraX version: 0.91 (2019-08-02) © 2016-2019 Regents of the University of California. All rights reserved. How to cite UCSF ChimeraX > open 6jlu Summary of feedback from opening 6jlu fetched from pdb --- notes | Fetching compressed mmCIF 6jlu from http://files.rcsb.org/download/6jlu.cif Fetching CCD OEX from http://ligand-expo.rcsb.org/reports/O/OEX/OEX.cif Fetching CCD FE2 from http://ligand-expo.rcsb.org/reports/F/FE2/FE2.cif Fetching CCD PHO from http://ligand-expo.rcsb.org/reports/P/PHO/PHO.cif Fetching CCD SQD from http://ligand-expo.rcsb.org/reports/S/SQD/SQD.cif Fetching CCD PL9 from http://ligand-expo.rcsb.org/reports/P/PL9/PL9.cif Fetching CCD BCT from http://ligand-expo.rcsb.org/reports/B/BCT/BCT.cif Fetching CCD DGD from http://ligand-expo.rcsb.org/reports/D/DGD/DGD.cif Fetching CCD KC1 from http://ligand-expo.rcsb.org/reports/K/KC1/KC1.cif Fetching CCD A86 from http://ligand-expo.rcsb.org/reports/A/A86/A86.cif Fetching CCD DD6 from http://ligand-expo.rcsb.org/reports/D/DD6/DD6.cif Fetching CCD KC2 from http://ligand-expo.rcsb.org/reports/K/KC2/KC2.cif 6jlu title: Structure of PSII-FCP supercomplex from a centric diatom Chaetoceros gracilis at 3.02 angstrom resolution [more info...] Chain information for 6jlu #1 --- Chain | Description 0 10 | FCP-E 1 11 12 13 14 15 16 17 18 2 3 4 5 6 7 8 | FCP-A 19 9 | FCP-F A a | PsbA B b | PsbB C c | PsbC D d | PsbD E e | PsbE F f | PsbF G g | Psb31 H h | Photosystem II reaction center protein H I i | PsbI J j | PsbJ K k | PsbK L l | PsbL M m | PsbM N n | Psb34 O o | Extrinsic protein in photosystem II P p | FCP-D Q q | Extrinsic protein in photosystem II R r | PsbG T t | PsbT U u | Extrinsic protein in photosystem II V v | Cytochrome c-550 W w | PsbW X x | Photosystem II reaction center X protein Y y | PsbY Z z | PsbZ Non-standard residues in 6jlu #1 --- A86 — (3S,3'S,5R,5'R,6S,6'R,8'R)-3,5'-dihydroxy-8-oxo-6',7'-didehydro-5,5',6,6',7,8-hexahydro-5,6-epoxy- beta,beta-caroten-3'-yl acetate (Fucoxanthin) BCR — β-carotene BCT — bicarbonate ion CL — chloride ion CLA — chlorophyll A DD6 — (3S,3'R,5R,6S,7cis)-7',8'-didehydro-5,6-dihydro-5,6-epoxy-beta,beta- carotene-3,3'-diol (Diadinoxanthin) DGD — digalactosyl diacyl glycerol (DGDG) FE2 — Fe (II) ion HEM — protoporphyrin IX containing Fe (HEME) KC1 — Chlorophyll c1 KC2 — Chlorophyll c2 LHG — 1,2-dipalmitoyl-phosphatidyl-glycerole LMG — 1,2-distearoyl-monogalactosyl-diglyceride OEX — Ca-MN4-O5 cluster PHO — pheophytin A PL9 — 2,3-dimethyl-5-(3,7,11,15,19,23,27,31,35-nonamethyl-2,6,10,14,18,22,26,30,34-hexatriacontanonaenyl-2,5-cyclohexadiene-1,4-dione-2,3-dimethyl-5-solanesyl-1,4-benzoquinone (plastoquinone 9) SQD — 1,2-di-O-acyl-3-O-[6-deoxy-6-sulfo-α-D-glucopyranosyl]-Sn-glycerol (sulfoquinovosyldiacylglycerol) > open 9839 fromDatabase emdb Summary of feedback from opening 9839 fetched from emdb --- note | Fetching compressed map 9839 from ftp://ftp.wwpdb.org/pub/emdb/structures/EMD-9839/map/emd_9839.map.gz Opened emd_9839.map, grid size 340,340,340, pixel 1.31, shown at level 0.0137, step 2, values float32 > hide #!1 models > hide #!2 models > show #!1 models > select /15:34-205 1280 atoms, 1306 bonds, 1 model selected > select /18:34-205 1304 atoms, 1330 bonds, 1 model selected > select :A86 5952 atoms, 6204 bonds, 1 model selected > select :CLA 12491 atoms, 13411 bonds, 920 pseudobonds, 2 models selected > select :KC1 990 atoms, 1078 bonds, 88 pseudobonds, 2 models selected > select :KC2 1620 atoms, 1764 bonds, 144 pseudobonds, 2 models selected > select /1-8 38044 atoms, 39486 bonds, 700 pseudobonds, 2 models selected OpenGL version: 4.1 ATI-2.11.20 OpenGL renderer: AMD Radeon Pro 580 OpenGL Engine OpenGL vendor: ATI Technologies Inc.
Change History (8)
comment:1 by , 6 years ago
Cc: | added |
---|---|
Component: | Unassigned → Logging |
Owner: | set to |
Platform: | → all |
Project: | → ChimeraX |
Status: | new → assigned |
Summary: | ChimeraX bug report submission → Suppress log scrolling if log link clicked |
Type: | defect → enhancement |
comment:2 by , 6 years ago
Cc: | added; removed |
---|
comment:3 by , 6 years ago
comment:4 by , 6 years ago
Fixed. Overrode link_clicked in tool to set flag to suppress scrolling. Then execute the link (which is done via ui.thread_safe()). Then added another thread_safe function to reenable scrolling.
comment:5 by , 6 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
comment:6 by , 5 years ago
Resolution: | fixed |
---|---|
Status: | closed → reopened |
The problem of scrolling to the bottom of the Log from clicking chain-ID or residue-name links in info tables has re-emerged. Tested in UCSF ChimeraX version: 1.1.dev202008260138 (2020-08-26)
comment:7 by , 5 years ago
The use of a regulating timer to prevent excessive slowdowns when many commands log in a short period of time (e.g. multiple commands on a single line) probably interferes with the scroll-suppression trick.
comment:8 by , 5 years ago
Resolution: | → fixed |
---|---|
Status: | reopened → closed |
Fixed on develop and release branches.
In Command.run, it calls logger.logger.info(msg, is_html=True, add_newline=False). Which ends up calling the log tool's Log.log(), which adds the message and calls self.show_page_source()/_show(). Which in turn calls QWebEnginePage's setHtml() if small or load() if big. Would need an asynchronous method called after the page was loaded to reposition it. Position is via javascript with window.scrollTo().