Gtk3PortalWindowOwner class

Namespace Runic.Platform.Linux · Runic.Platform.Linux 0.7.0-preview.5

public sealed class Gtk3PortalWindowOwner : IPortalWindowOwner, INativePickerOwner

Inherits or implements IPortalWindowOwner, INativePickerOwner.

Exports portal parents from the explicitly selected GTK3 presentation.

Constructors

Gtk3PortalWindowOwner

public Gtk3PortalWindowOwner(INativePickerOwner owner)

Exports portal parents from the explicitly selected GTK3 presentation.

Properties

Generation

public Guid Generation { get; }

The verified presentation generation, shared with its lifetime.

Documentation from INativePickerOwner.Generation.

IsAvailable

public bool IsAvailable { get; }

Whether the provider can currently show dialogs.

Documentation from INativePickerOwner.IsAvailable.

Methods

ExportParentAsync

public ValueTask<PortalParentLease> ExportParentAsync(CancellationToken cancellationToken = default)

Exports a parent valid until the returned lease is disposed.

Documentation from IPortalWindowOwner.ExportParentAsync.

InvokeAsync

public ValueTask InvokeAsync(Action<nint> action, CancellationToken cancellationToken = default)

Revalidates owner identity and dispatches on its native thread. The handle cannot escape the callback.

Documentation from INativePickerOwner.InvokeAsync.

PresentAsync

public ValueTask PresentAsync(DesktopActivationContext? context = null, CancellationToken cancellationToken = default)

Requests presentation on this verified owner using the desktop's activation context.

Remarks

The compositor decides whether to grant focus. Never sets process-wide environment variables.