Opened 5 months ago

Closed 5 months ago

#17757 closed defect (fixed)

"move": distance is None while undo is not None

Reported by: chimerax-bug-report@… Owned by: Tom Goddard
Priority: normal Milestone:
Component: Undo/Redo Version:
Keywords: Cc:
Blocked By: Blocking:
Notify when closed: Platform: all
Project: ChimeraX

Description

The following bug report has been submitted:
Platform:        macOS-15.5-arm64-arm-64bit
ChimeraX Version: 1.9rc202411082121 (2024-11-08 21:21:14 UTC)
Description
Replace this text with list of actions that caused this problem to occur

Log:
Startup Messages  
---  
note | available bundle cache has not been initialized yet  
  

> mousemode middleMode center

> cofr centerOfView

> alias cofron cofr centerofview showpivot true

> alias cofroff cofr centerofview showpivot false

> alias symclip cofr centerofview; clip near -$1 far $1 position cofr

> alias cootmode set bgColor black; surface cap false; surface style solid;
> lighting flat; graphics silhouettes false; style stick; ~rib; color
> ##num_residues gold; color byhet ; disp; ~disp @H*; style ions ball; style
> solvent ball; size ballscale 0.2; size stickradius 0.07; transparency 70;
> cofr centerofview; clip near -10 far 10 position cofr; color ##~num_residues
> cornflower blue

> alias cootmode_mesh set bgColor black; surface cap false; surface style
> mesh; lighting flat; graphics silhouettes false; style stick; ~rib; color
> ##num_residues gold; color byhet ; disp; ~disp @H*; style solvent ball;
> style ions ball; size ballscale 0.2; size stickradius 0.07; cofr
> centerofview; clip near -10 far 10 position cofr; color ##~num_residues
> #3d60ffff; transparency 50

> alias cootmode_off surface style solid; lighting soft; graphics silhouettes
> false; hide atoms; default_mol_display; transparency 0; symclip 40; color
> ##~num_residues grey; size stickradius 0.2;

> alias ca_and_sidechains ~rib $1; ~surf $1; ~disp $1; disp @CA&protein&$1;
> disp @P&nucleic&$1; style $1 stick; disp sidechain&$1; disp
> ~backbone&nucleic&$1; size stickradius 0.1; size pseudobondradius 0.1

> alias ca_trace ~rib $1; ~surf $1; ~disp $1; disp @CA&protein&$1; disp
> @P&nucleic&$1; style $1 stick; size stickradius 0.1; size pseudobondradius
> 0.1

> alias map_sphere_15 surface unzone ##~num_residues; sel; close #10000;
> marker #10000 position cofr; sel ~sel; surface zone ##~num_residues
> nearAtoms sel distance 15; close #10000

> alias map_unsphere surface unzone ##~num_residues

> alias default_mol_display ~disp; rib; rainbow chain palette Pastel1-5;
> lighting soft; color byhet

> alias hidemaps surface unzone ##~num_residues; sel; close #10000; marker
> #10000 position cofr; sel ~sel; surface zone ##~num_residues nearAtoms sel
> distance 0; close #10000

> alias showmaps surface unzone ##~num_residues

> alias licorice car style protein modeh default arrows f xsect oval width 1
> thick 1; style stick; size stickRadius 0.5; ~disp @H*; color byhet

> alias caps_off surface cap false

> alias caps_on surface cap true

> alias rock_movie cofr showpivot false; movie record supersample 3; rock y
> 40; wait 136; movie encode ~/Desktop/rock_movie.mp4 quality high; stop

> alias publication_figure save Figure.png format png supersample 3
> transparentBackground true width 3000 height 3000

> buttonpanel Shortcuts rows 3 columns 5

> buttonpanel Shortcuts add default_disp command default_mol_display

> buttonpanel Shortcuts add Hide_H command "~disp @H*"

> buttonpanel Shortcuts add Licorice command licorice

> buttonpanel Shortcuts add Ribbons command "preset ribbons"

> buttonpanel Shortcuts add RockMovie command rock_movie

> buttonpanel Shortcuts add SymClip10 command "symclip 10"

> buttonpanel Shortcuts add SymClip20 command "symclip 20"

> buttonpanel Shortcuts add map_sphere command map_sphere_15

> buttonpanel Shortcuts add map_unsphere command map_unsphere

> buttonpanel Shortcuts add PubFigure command publication_figure

> buttonpanel Shortcuts add coot_mode command cootmode

> buttonpanel Shortcuts add coot_mesh command cootmode_mesh

> buttonpanel Shortcuts add coot_off command cootmode_off

> buttonpanel Shortcuts add hidemaps command hidemaps

> buttonpanel Shortcuts add showmaps command showmaps

> ui tool show "Model Panel"

UCSF ChimeraX version: 1.9rc202411082121 (2024-11-08)  
© 2016-2024 Regents of the University of California. All rights reserved.  
How to cite UCSF ChimeraX  

> open "/Users/zhouling95/Documents/Academic/McLellan Lab/05 PIV HN/RV3
> VHH60/Deposition/pdb_extract_out_2316350388.cif"

Summary of feedback from opening /Users/zhouling95/Documents/Academic/McLellan
Lab/05 PIV HN/RV3 VHH60/Deposition/pdb_extract_out_2316350388.cif  
---  
warning | Missing or incomplete sequence information. Inferred polymer connectivity.  
  
  
Chain information for pdb_extract_out_2316350388.cif #1  
---  
Chain | Description  
A B | No description available  
H I | No description available  
  

> select #1/H,I

3528 atoms, 3564 bonds, 242 residues, 1 model selected  

> color sel dark orange

> select #1/A

6731 atoms, 6821 bonds, 1 pseudobond, 430 residues, 2 models selected  

> color sel dodger blue

> select #1/B

6730 atoms, 6820 bonds, 1 pseudobond, 430 residues, 2 models selected  

> color sel light blue

> select #1:NAG

163 atoms, 163 bonds, 6 residues, 1 model selected  

> color sel #70c489ff

> select #1

16989 atoms, 17205 bonds, 2 pseudobonds, 1102 residues, 2 models selected  

> color sel byhetero

> interfaces select #1/H contacting #1/A bothSides true

46 contacting residues  

> show (sel-residues & sidechain) target ab

> size stickRadius 0.3

Changed 17205 bond radii  

> hbonds sel intraMol false

11 hydrogen bonds found  

> color hbonds #faf353ff models

> show #1/A:370

> hide #1/A:214, 558

> distance #1/H:45@NH1 #1/A:462@OE2

Distance between /H ARG 45 NH1 and /A GLU 462 OE2: 3.255Å  

> distance style dashes 6

> distance style radius 0.08

[Repeated 1 time(s)]

> hide #1/H:100B,98 #1/A:530,255,275,278,474

> lighting soft

> graphics silhouettes true

> hide #2.1 models

> color #2 #faf353ff models

> delete H

> select add #1

8576 atoms, 8792 bonds, 3 pseudobonds, 1102 residues, 3 models selected  

> select subtract #1

Nothing selected  

> hide #!2 models

> hide #1.1 models

> hide #1.2 models

> open "/Users/zhouling95/Documents/Academic/McLellan Lab/05 PIV HN/RV3
> VHH60/Deposition/cryosparc_P714_J192_map_sharp.mrc"

Opened cryosparc_P714_J192_map_sharp.mrc as #3, grid size 300,300,300, pixel
0.94, shown at level 0.00153, step 2, values float32  

> volume #3 step 1

> volume #3 level 0.03548

> surface dust #3 size 9.4

> volume #3 color #dddddd

> volume #3 color #dddddd00

> volume #3 color #dddddd40

> volume #3 level 0.08639

> volume #3 level 0.1288

> volume #3 level 0.06094

> ui tool show "Map Eraser"

> volume erase #3 center 138.31,139.85,85.444 radius 15.787

Opened cryosparc_P714_J192_map_sharp.mrc copy as #5, grid size 300,300,300,
pixel 0.94, shown at step 1, values float32  

> surface dust #5 size 9.4

> cd "/Users/zhouling95/Desktop/RV3 VHH60"

Current working directory is: /Users/zhouling95/Desktop/RV3 VHH60  

> publication_figure

> save Figure.png format png supersample 3 transparentBackground true width
> 3000 height 3000

> volume #5 level 0.04821

> undo

[Repeated 1 time(s)]Traceback (most recent call last):  
File
"/Applications/ChimeraX-1.9-rc2024.11.08.app/Contents/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-
packages/chimerax/core/triggerset.py", line 149, in invoke  
return self._func(self._name, data)  
^^^^^^^^^^^^^^^^^^^^^^^^^^^^  
File
"/Applications/ChimeraX-1.9-rc2024.11.08.app/Contents/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-
packages/chimerax/core/commands/motion.py", line 49, in __call__  
self.func(self.session, f)  
File
"/Applications/ChimeraX-1.9-rc2024.11.08.app/Contents/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-
packages/chimerax/std_commands/move.py", line 97, in undo_func  
self._func(*args, undo=True, **kw)  
File
"/Applications/ChimeraX-1.9-rc2024.11.08.app/Contents/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-
packages/chimerax/std_commands/move.py", line 50, in move_step  
d = distance if undo is None else -distance  
^^^^^^^^^  
TypeError: bad operand type for unary -: 'NoneType'  
  
Error processing trigger "new frame":  
TypeError: bad operand type for unary -: 'NoneType'  
  
File
"/Applications/ChimeraX-1.9-rc2024.11.08.app/Contents/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-
packages/chimerax/std_commands/move.py", line 50, in move_step  
d = distance if undo is None else -distance  
^^^^^^^^^  
  
See log for complete Python traceback.  
  




OpenGL version: 4.1 Metal - 89.4
OpenGL renderer: Apple M4 Pro
OpenGL vendor: Apple

Python: 3.11.4
Locale: en_US.UTF-8
Qt version: PyQt6 6.7.1, Qt 6.7.1
Qt runtime version: 6.7.3
Qt platform: cocoa
Hardware:

    Hardware Overview:

      Model Name: MacBook Pro
      Model Identifier: Mac16,8
      Model Number: MX2J3LL/A
      Chip: Apple M4 Pro
      Total Number of Cores: 14 (10 performance and 4 efficiency)
      Memory: 24 GB
      System Firmware Version: 11881.121.1
      OS Loader Version: 11881.121.1

Software:

    System Software Overview:

      System Version: macOS 15.5 (24F74)
      Kernel Version: Darwin 24.5.0
      Time since boot: 2 hours, 34 minutes

Graphics/Displays:

    Apple M4 Pro:

      Chipset Model: Apple M4 Pro
      Type: GPU
      Bus: Built-In
      Total Number of Cores: 20
      Vendor: Apple (0x106b)
      Metal Support: Metal 3
      Displays:
        Color LCD:
          Display Type: Built-in Liquid Retina XDR Display
          Resolution: 3024 x 1964 Retina
          Main Display: Yes
          Mirror: Off
          Online: Yes
          Automatically Adjust Brightness: No
          Connection Type: Internal
        U32J59x:
          Resolution: 4096 x 2304
          UI Looks like: 2048 x 1152 @ 30.00Hz
          Mirror: Off
          Online: Yes
          Rotation: Supported


Installed Packages:
    alabaster: 1.0.0
    appdirs: 1.4.4
    appnope: 0.1.4
    asttokens: 2.4.1
    auditwheel: 6.1.0
    autocommand: 2.2.2
    babel: 2.16.0
    backports.tarfile: 1.2.0
    beautifulsoup4: 4.12.3
    blockdiag: 3.0.0
    blosc2: 2.7.1
    build: 1.2.1
    certifi: 2023.11.17
    cftime: 1.6.4.post1
    charset-normalizer: 3.4.0
    ChimeraX-AddCharge: 1.5.17
    ChimeraX-AddH: 2.2.6
    ChimeraX-AlignmentAlgorithms: 2.0.2
    ChimeraX-AlignmentHdrs: 3.5
    ChimeraX-AlignmentMatrices: 2.1
    ChimeraX-Alignments: 2.16.1
    ChimeraX-AlphaFold: 1.0.1
    ChimeraX-AltlocExplorer: 1.1.2
    ChimeraX-AmberInfo: 1.0
    ChimeraX-Arrays: 1.1
    ChimeraX-Atomic: 1.58.7
    ChimeraX-AtomicLibrary: 14.1.11
    ChimeraX-AtomSearch: 2.0.1
    ChimeraX-AxesPlanes: 2.4
    ChimeraX-BasicActions: 1.1.2
    ChimeraX-BILD: 1.0
    ChimeraX-BlastProtein: 2.4.7
    ChimeraX-BondRot: 2.0.4
    ChimeraX-BugReporter: 1.0.1
    ChimeraX-BuildStructure: 2.13
    ChimeraX-Bumps: 1.0
    ChimeraX-BundleBuilder: 1.4.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.4
    ChimeraX-ChemGroup: 2.0.1
    ChimeraX-Clashes: 2.3
    ChimeraX-Clipper: 0.23.0
    ChimeraX-ColorActions: 1.0.5
    ChimeraX-ColorGlobe: 1.0
    ChimeraX-ColorKey: 1.5.6
    ChimeraX-CommandLine: 1.2.5
    ChimeraX-ConnectStructure: 2.0.1
    ChimeraX-Contacts: 1.0.1
    ChimeraX-Core: 1.9rc202411082121
    ChimeraX-CoreFormats: 1.2
    ChimeraX-coulombic: 1.4.4
    ChimeraX-Crosslinks: 1.0
    ChimeraX-Crystal: 1.0
    ChimeraX-CrystalContacts: 1.0.1
    ChimeraX-DataFormats: 1.2.3
    ChimeraX-Dicom: 1.2.5
    ChimeraX-DistMonitor: 1.4.2
    ChimeraX-DockPrep: 1.1.3
    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
    ChimeraX-Help: 1.3
    ChimeraX-HKCage: 1.3
    ChimeraX-IHM: 1.1
    ChimeraX-ImageFormats: 1.2
    ChimeraX-IMOD: 1.0
    ChimeraX-IO: 1.0.3
    ChimeraX-ISOLDE: 1.8.dev0
    ChimeraX-ItemsInspection: 1.0.1
    ChimeraX-IUPAC: 1.0
    ChimeraX-KVFinder: 1.2.1
    ChimeraX-Label: 1.1.11
    ChimeraX-ListInfo: 1.2.2
    ChimeraX-Log: 1.2
    ChimeraX-LookingGlass: 1.1
    ChimeraX-Maestro: 1.9.1
    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.1.6
    ChimeraX-MCopy: 1.0
    ChimeraX-MDcrds: 2.7.2
    ChimeraX-MedicalToolbar: 1.1
    ChimeraX-Meeting: 1.0.1
    ChimeraX-MLP: 1.1.1
    ChimeraX-mmCIF: 2.14.2
    ChimeraX-MMTF: 2.2
    ChimeraX-ModelArchive: 1.0
    ChimeraX-Modeller: 1.5.17
    ChimeraX-ModelPanel: 1.5
    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
    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.14
    ChimeraX-OrthoPick: 1.0.1
    ChimeraX-PDB: 2.7.6
    ChimeraX-PDBBio: 1.0.1
    ChimeraX-PDBLibrary: 1.0.4
    ChimeraX-PDBMatrices: 1.0
    ChimeraX-PickBlobs: 1.0.1
    ChimeraX-Positions: 1.0
    ChimeraX-PresetMgr: 1.1.2
    ChimeraX-PubChem: 2.2
    ChimeraX-QScore: 1.1
    ChimeraX-ReadPbonds: 1.0.1
    ChimeraX-Registration: 1.1.2
    ChimeraX-RemoteControl: 1.0
    ChimeraX-RenderByAttr: 1.6.1
    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.1
    ChimeraX-SchemeMgr: 1.0
    ChimeraX-SDF: 2.0.2
    ChimeraX-Segger: 1.0
    ChimeraX-Segment: 1.0.1
    ChimeraX-Segmentations: 3.2.6
    ChimeraX-SelInspector: 1.0
    ChimeraX-SeqView: 2.14
    ChimeraX-Shape: 1.0.1
    ChimeraX-Shell: 1.0.1
    ChimeraX-Shortcuts: 1.2.0
    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.18.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
    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.41
    ChimeraX-Umap: 1.0
    ChimeraX-uniprot: 2.3.1
    ChimeraX-UnitCell: 1.0.1
    ChimeraX-ViewDockX: 1.4.4
    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.4
    ChimeraX-Zone: 1.0.1
    colorama: 0.4.6
    comm: 0.2.2
    contourpy: 1.3.0
    cxservices: 1.2.3
    cycler: 0.12.1
    Cython: 3.0.10
    debugpy: 1.8.8
    decorator: 5.1.1
    docutils: 0.21.2
    executing: 2.1.0
    filelock: 3.15.4
    fonttools: 4.54.1
    funcparserlib: 2.0.0a0
    glfw: 2.7.0
    grako: 3.16.5
    h5py: 3.12.1
    html2text: 2024.2.26
    idna: 3.10
    ihm: 1.3
    imagecodecs: 2024.6.1
    imagesize: 1.4.1
    importlib_metadata: 8.0.0
    importlib_resources: 6.4.0
    inflect: 7.3.1
    ipykernel: 6.29.5
    ipython: 8.26.0
    ipywidgets: 8.1.5
    jaraco.context: 5.3.0
    jaraco.functools: 4.0.1
    jaraco.text: 3.12.1
    jedi: 0.19.1
    Jinja2: 3.1.4
    jupyter_client: 8.6.2
    jupyter_core: 5.7.2
    jupyterlab_widgets: 3.0.13
    kiwisolver: 1.4.7
    line_profiler: 4.1.3
    lxml: 5.2.2
    lz4: 4.3.3
    MarkupSafe: 3.0.2
    matplotlib: 3.9.2
    matplotlib-inline: 0.1.7
    more-itertools: 10.3.0
    msgpack: 1.0.8
    ndindex: 1.9.2
    nest-asyncio: 1.6.0
    netCDF4: 1.6.5
    networkx: 3.3
    nibabel: 5.2.0
    nptyping: 2.5.0
    numexpr: 2.10.1
    numpy: 1.26.4
    openvr: 1.26.701
    ordered-set: 4.1.0
    packaging: 23.2
    packaging: 24.1
    ParmEd: 4.2.2
    parso: 0.8.4
    pep517: 0.13.1
    pexpect: 4.9.0
    pillow: 10.4.0
    pip: 24.2
    pkginfo: 1.11.1
    platformdirs: 4.3.6
    platformdirs: 4.2.2
    prompt_toolkit: 3.0.48
    psutil: 6.0.0
    ptyprocess: 0.7.0
    pure_eval: 0.2.3
    py-cpuinfo: 9.0.0
    pycollada: 0.8
    pydicom: 2.4.4
    pyelftools: 0.31
    Pygments: 2.18.0
    pynmrstar: 3.3.4
    pynrrd: 1.0.0
    PyOpenGL: 3.1.7
    PyOpenGL-accelerate: 3.1.7
    pyopenxr: 1.0.3401
    pyparsing: 3.2.0
    pyproject_hooks: 1.2.0
    PyQt6-commercial: 6.7.1
    PyQt6-Qt6: 6.7.3
    PyQt6-WebEngine-commercial: 6.7.0
    PyQt6-WebEngine-Qt6: 6.7.3
    PyQt6-WebEngineSubwheel-Qt6: 6.7.3
    PyQt6_sip: 13.8.0
    python-dateutil: 2.9.0.post0
    pytz: 2024.2
    pyzmq: 26.2.0
    qtconsole: 5.5.2
    QtPy: 2.4.2
    qtshim: 1.0
    RandomWords: 0.4.0
    requests: 2.32.3
    scipy: 1.14.0
    setuptools: 72.1.0
    sfftk-rw: 0.8.1
    six: 1.16.0
    snowballstemmer: 2.2.0
    sortedcontainers: 2.4.0
    soupsieve: 2.6
    Sphinx: 8.0.2
    sphinx-autodoc-typehints: 2.2.3
    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.6.3
    tables: 3.10.1
    tcia_utils: 1.5.1
    tifffile: 2024.7.24
    tinyarray: 1.2.4
    tomli: 2.0.1
    tornado: 6.4.1
    traitlets: 5.14.3
    typeguard: 4.3.0
    typing_extensions: 4.12.2
    typing_extensions: 4.12.2
    tzdata: 2024.2
    urllib3: 2.2.3
    wcwidth: 0.2.13
    webcolors: 24.6.0
    wheel: 0.43.0
    wheel: 0.43.0
    wheel-filename: 1.4.1
    widgetsnbextension: 4.0.13
    zipp: 3.19.2

Change History (5)

comment:1 by Eric Pettersen, 5 months ago

Component: UnassignedUndo/Redo
Owner: set to Tom Goddard
Platform: all
Project: ChimeraX
Status: newassigned
Summary: ChimeraX bug report submission"move": distance is None while undo is not None

comment:2 by Tom Goddard, 5 months ago

Looks like undo after a multi-frame move command is broken, not handling distance None case properly.

comment:3 by Tom Goddard, 5 months ago

This is a bit of pain to fix because undoing the move is currently using the move command and it is not easy to reverse the direction of the move when a distance is not trivial given because the Axis argument is an instance and a new Axis in the opposite direction is needed.

Another evident problem is that undo is not handling the models or atoms arguments of the move command. Undo is a nightmare. Probably the models and atoms options were added later and the undo code was not updated to undo in those cases.

comment:4 by Tom Goddard, 5 months ago

Note that the user never used the move command. It was the "center" mouse mode that did a move. Then they tried "undo" and it gave this error.

comment:5 by Tom Goddard, 5 months ago

Resolution: fixed
Status: assignedclosed

Fixed in 1.11.

I made the move command not support undo if frames is specified and a distance is not specified. So now the center mouse mode won't register undo handlers. It would be nice if undo worked in this case but I didn't see a simple way to implement it. Given that this has only been reported once in many years I don't think it is worth the effort to make undo handle this case.

Note: See TracTickets for help on using tickets.