PortalPlatformProvider class

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

public static class PortalPlatformProvider

Direct desktop portal services, independent of GTK version.

Methods

CreateFileDialogs

public static IPickerBackend CreateFileDialogs(IPortalWindowOwner owner, Action<PortalDiagnostic>? diagnosticSink = null)

Creates portal-only file dialogs bound to a verified presentation.

CreateFileLauncher

public static IDesktopFileLauncher CreateFileLauncher(IPortalWindowOwner owner)

Creates owned local-file handoff operations.

CreateNotifications

public static IDesktopNotifications CreateNotifications(string? applicationId = null, Action<PortalDiagnostic>? diagnosticSink = null)

Creates application-scoped notifications. Disposal leaves delivered notifications in the desktop.

Remarks

A supplied host ID requires a matching installed desktop entry and the host Registry portal. Diagnostic callbacks never receive notification text.

CreateSettings

public static IDesktopSettings CreateSettings()

Creates application-scoped appearance preferences without selecting a GTK toolkit.

CreateUnparentedFileDialogs

public static IPickerBackend CreateUnparentedFileDialogs()

Explicitly creates unparented dialogs for an application with no native presentation.

OpenUriAsync

public static ValueTask<PlatformResult<PlatformUnit>> OpenUriAsync(IPortalWindowOwner owner, Uri uri, CancellationToken cancellationToken = default)

Asks the desktop to open an HTTP, HTTPS or mail URI for this presentation.