AppLaunchContext.connectLaunched
gulong connectLaunched(T)(T callback, Flag!"After" after = No.After) if (isCallable!T
&& is(ReturnType!T == void)
&& (Parameters!T.length < 1 || (ParameterStorageClassTuple!T[0] == ParameterStorageClass.none && is(Parameters!T[0] : gio.app_info.AppInfo)))
&& (Parameters!T.length < 2 || (ParameterStorageClassTuple!T[1] == ParameterStorageClass.none && is(Parameters!T[1] == glib.variant.Variant)))
&& (Parameters!T.length < 3 || (ParameterStorageClassTuple!T[2] == ParameterStorageClass.none && is(Parameters!T[2] : gio.app_launch_context.AppLaunchContext)))
&& Parameters!T.length < 4)Connect to Launched signal.
The #GAppLaunchContext::launched signal is emitted when a #GAppInfo is successfully launched.
Because a launch operation may involve spawning multiple instances of the target application, you should expect this signal to be emitted multiple times, one time for each spawned instance.
The platform_data is an GVariant dictionary mapping strings to variants (ie a{sv}), which contains additional, platform-specific data about this launch. On UNIX, at least the pid and startup-notification-id keys will be present.
Since 2.72 the pid may be 0 if the process id wasn't known (for example if the process was launched via D-Bus). The pid may not be set at all in subsequent releases.
On Windows, pid is guaranteed to be valid only for the duration of the #GAppLaunchContext::launched signal emission; after the signal is emitted, GLib will call [glib.global.spawnClosePid]. If you need to keep the #GPid after the signal has been emitted, then you can duplicate pid using DuplicateHandle().
Parameters
callback | signal callback delegate or function to connect void callback(gio.app_info.AppInfo info, glib.variant.Variant platformData, gio.app_launch_context.AppLaunchContext appLaunchContext) info the #GAppInfo that was just launched (optional) platformData additional platform-specific data for this launch (optional) appLaunchContext the instance the signal is connected to (optional) |
after | Yes.After to execute callback after default handler, No.After to execute before (default) |