Opened 6 years ago

Last modified 6 years ago

#2503 assigned defect

On macOS Catalina ChimeraX asks for permission to access Desktop files when first run

Reported by: goddard@… Owned by: Tom Goddard
Priority: normal Milestone:
Component: Platform Version:
Keywords: Cc:
Blocked By: Blocking:
Notify when closed: Platform: all
Project: ChimeraX

Description

The following bug report has been submitted:
Platform:        Darwin-19.0.0-x86_64-i386-64bit
ChimeraX Version: 0.91 (2019-10-05)
Description
When ChimeraX is run for the first time on Catalina by double clicking its icon it asks for permission to access Desktop files right after the spash screen disappears, but before the main window appears.  This is pretty annoying since it shouldn't need anything on the desktop.  Tests show that it happens because the ChimeraX_main.py startup script does a chdir('~/Desktop').  That in itself does not cause the permission dialog, but something futher along in startup does.


Log:
UCSF ChimeraX version: 0.91 (2019-10-05)  
© 2016-2019 Regents of the University of California. All rights reserved.  
How to cite UCSF ChimeraX  




OpenGL version: 4.1 ATI-3.0.68
OpenGL renderer: AMD Radeon Pro 580 OpenGL Engine
OpenGL vendor: ATI Technologies Inc.

Change History (3)

comment:1 by Tom Goddard, 6 years ago

Component: UnassignedPlatform
Owner: set to Tom Goddard
Platform: all
Project: ChimeraX
Status: newassigned
Summary: ChimeraX bug report submissionOn macOS Catalina ChimeraX asks for permission to access Desktop files when first run

comment:2 by Tom Goddard, 6 years ago

After the first time ChimeraX is start and permission to access the desktop is granted it does not ask again. So this is not a big problem, just poor behavior, bad user experience.

Changing the chdir() to "~/" avoids the startup permission dialog. But we want to start in "~/Desktop" so if the user tries "save myfile.pdb" it appears on the Desktop.

The open folder dialog and save file dialog are created at startup and those scan the current directory, as shown by fs_usage shell command. But commenting those out still results in the Desktop access permission dialog showing.

Moving the chdir("~/Desktop") later in ChimeraX_main.py startup, just before the event loop is run, and commenting out the folder and save file dialogs, avoids the permission dialog at startup. But then clicking any file history thumbnail from Downloads asks first for Desktop permission and then Downloads permission. Also using File / Open... will immediately asks for Desktop permission when the dialog is created. This seems like slightly better behavior, but with these changes clicking on a file history thumbnail raises a permission error 1 in 3 times. WIth the unmodified ChimeraX where the Desktop permission is allowed at startup I never get a permission error.

In summary, I haven't found any way to improve the behavior and avoid needlessly asking for Desktop permissions.

comment:3 by Tom Goddard, 6 years ago

This bug is related to bug #2499, permission errors opening files on Catalina.

Note: See TracTickets for help on using tickets.