GtkRecentManager uses "g_get_application_name" as identifier for applications, which is unsuitable
recent_data.app_name is initialized with
This is unsuitable for multiple reasons (see also some discussion in !172 (merged)):
- The application name is localizable, so it could change over time on the same machine if locale changes.
- According to doc the application name is meant to be "a human-readable name for the application" which is "is intended for display to the user" - which is specifically not a machine-readable identifier.
- As the application name is supposed to be user-visible it might change over time at the authors' discretion.
The application name therefore seems unfit to serve as an identifier for recent files and a more suitable string should be used, e.g.
g_get_prgname () (which is not supposed to be localized and is more likely to stay constant over time - usually it will default to the executable name which will rarely change). It would also be a suitable choice, as
g_get_application_name () falls back to
g_get_prgname () if the application name is not set (and is therefore what is used for many applications already).