GNOME Bugzilla – Bug 688497
AppInfo: Add sufficient api to port gnome-session from EggDesktopFile
Last modified: 2012-11-22 02:20:55 UTC
Created attachment 229182 [details] [review] make autostart implementable gnome-session needs a few more APIs in order to implement the autostart spec and track startup ids.
Created attachment 229183 [details] [review] make startup ids trackable
Review of attachment 229183 [details] [review]: Possibly more forward-extension-compatible if we have a GVariant a{sv} for platform-specific launch information, rather than a fixed bag of 3 things? Like GApplication has IIRC. Windows doesn't have startup ids too.
Review of attachment 229182 [details] [review]: No tests...but eh, I assume gnome-session is enough of a test.
Created attachment 229596 [details] [review] make autostart implementable
Created attachment 229597 [details] [review] tests
Created attachment 229598 [details] [review] make startup ids trackable
Created attachment 229599 [details] [review] tests
thanks for insisting on the tests - they found a bug !
Review of attachment 229596 [details] [review]: Doc tweaks: ::: gio/gdesktopappinfo.c @@ +3465,3 @@ + * The @key is looked up in the "Desktop Entry" group. + * + * Returns: a newly allocated string , or %NULL if the key is not found @@ +3488,3 @@ + * The @key is looked up in the "Desktop Entry" group. + * + * Returns: the boolean value , or %FALSE if the key is not found (Note: ambiguous, may want to create a version which has a gboolean for success, and a separate gboolean *out value) @@ +3503,3 @@ + +gboolean +g_desktop_app_info_has_key (GDesktopAppInfo *info, Missing docs.
Review of attachment 229597 [details] [review]: Looks good to me.
Review of attachment 229598 [details] [review]: One docs nit: ::: gio/gappinfo.c @@ +830,3 @@ object_class->finalize = g_app_launch_context_finalize; + + signals[LAUNCH_FAILED] = g_signal_new ("launch-failed", No docs for this...maybe just reference the existing docs for g_app_launch_context_launch_failed() ?
Review of attachment 229599 [details] [review]: Makes sense. ::: gio/tests/appinfo.c @@ +232,3 @@ + NULL); + + error = NULL; Unncessary, we already init to NULL above