Interface AppLaunchContext.LaunchedCallback

All Superinterfaces:
FunctionPointer
Enclosing class:
AppLaunchContext
Functional Interface:
This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

@FunctionalInterface public static interface AppLaunchContext.LaunchedCallback extends FunctionPointer

Functional interface declaration of the LaunchedCallback callback.

See Also:
  • Method Details

    • run

      void run(@Nullable AppInfo info, @Nullable Variant platformData)

      The Gio.AppLaunchContext::launched signal is emitted when a AppInfo 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 platformData 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 Gio.AppLaunchContext::launched signal emission; after the signal is emitted, GLib will call GLib#spawnClosePid. If you need to keep the GLib.Pid after the signal has been emitted, then you can duplicate pid using DuplicateHandle().

      Since:
      2.36
    • upcall

      default void upcall(MemorySegment sourceAppLaunchContext, MemorySegment info, MemorySegment platformData)
      The upcall method is called from native code. The parameters are marshaled and run(AppInfo, Variant) is executed.
    • toCallback

      default MemorySegment toCallback(Arena arena)
      Creates a native function pointer to the upcall(MemorySegment, MemorySegment, MemorySegment) method.
      Specified by:
      toCallback in interface FunctionPointer
      Parameters:
      arena - the arena in which the function pointer is allocated
      Returns:
      the native function pointer