Improving our application's cross-platform compatibility
Our application does pretty well across platforms, but there are some things we can do to improve it:
- First, our application stores its preferences in the user's home folder, which is not ideal on any platform. We will fix our application to use the correct location on each platform for user configuration files.
- Second, we're creating our CSV files without specifying any encoding; if a user inserted a unicode character (say, in the
Notes
field), file saving would raise an exception and fail. - Finally, the current menu structure does not really come close to following any of the human interface guidelines we've discussed. We'll implement separate menus for each platform to ensure users have a UI that is consistent with their platform.
Storing preferences correctly
Each platform defines a proper location for storing user configuration files as follows:
- Linux and other X11 systems store configuration files in a location defined in the
$XDG_CONFIG_HOME...