Thursday, May 14, 2009

User settings directory on Windows

we have a bug report for FlameRobin on Windows - see

which I'm a little unsure about how to handle. Basically since the
introduction of the Config class wxStandardPaths::GetLocalDataDir()
instead of wxStandardPaths::GetDataDir() is used, which results in the
behaviour the bug reporter noticed. This is of concern only in a domain
environment with roaming user profiles, but for users in those it is
probably really a nuisance.

Should we correct this? The way I see it transparently migrating data
from CSIDL_LOCAL_APPDATA to CSIDL_APPDATA won't be noticed on "standard"
systems, and the possible conflicts for domain users with roaming
profiles would be one-time, with the effect of FlameRobin doing the
right thing from then on. I'm not sure about keeping settings in both
locations and merging them on start - this would be the right thing to
do, but the effort to do it now would be too big, especially as the
config() singleton is not a good base for this.

IMHO the meaning of the "$user" path macro should be changed as well,
with "$user" resolving to wxStandardPaths::GetDataDir() and something
like "$user_local" resolving to wxStandardPaths::GetLocalDataDir().

Any comments and insights very welcome.


Michael Hieke
..:: ::..:: ::..

No comments: