Quartz UI ↗
Browse docs
On this page
Private preview · 0.57.0-devView Markdown

QuartzUILoadRecovery: declaration reference

0.57.0-dev · beta source documentation. Native, Blueprint, Editor and rendering examples are source-reviewed, not executed in Unreal during this scan. See validation and limits.

Pinned source (source: Source/QuartzUIRuntime/Public/QuartzUILoadRecovery.h) · integration recipe · practical guide

EQuartzUILoadRecoveryState

Advanced type. Native fallback state used when Chromium cannot load the requested document.

Prerequisites / integration: Exact local player and configured app; Slate/UMG dependencies for native presentation work. Use the QuartzUILoadRecovery recipe in the host module QuartzUIRuntime.

Minimal example / lifecycle: Use Retry UI after checking failure; default attempts 3, maximum 8. New navigation resets sequence; no reload loop.

Avoid: Retrying contract/configuration errors indefinitely. Match the exact declaration below; dependent DTOs/enums are values used by this owner, not independent systems.

Exact source line (source: Source/QuartzUIRuntime/Public/QuartzUILoadRecovery.h#L9)

FQuartzUILoadRecoveryPolicy

Internal type. Pure bounded policy shared by Slate and automation tests.

Prerequisites / integration: Exact local player and configured app; Slate/UMG dependencies for native presentation work. Use the QuartzUILoadRecovery recipe in the host module QuartzUIRuntime.

Minimal example / lifecycle: Use Retry UI after checking failure; default attempts 3, maximum 8. New navigation resets sequence; no reload loop.

Avoid: Retrying contract/configuration errors indefinitely. This named helper is runtime-owned; inspect/use it through the owner above rather than constructing it in gameplay.

Exact source line (source: Source/QuartzUIRuntime/Public/QuartzUILoadRecovery.h#L18)

Complete header

Source snapshot, not an additional example. Unreal annotations distinguish exposed Blueprint nodes from native-only/private methods.

#pragma once

#include "CoreMinimal.h"

#include "QuartzUILoadRecovery.generated.h"

/** Native fallback state used when Chromium cannot load the requested document. */
UENUM(BlueprintType)
enum class EQuartzUILoadRecoveryState : uint8
{
	Healthy,
	Failed,
	Retrying,
	Exhausted
};

/** Pure bounded policy shared by Slate and automation tests. */
struct QUARTZUIRUNTIME_API FQuartzUILoadRecoveryPolicy final
{
	static constexpr int32 DefaultMaxAttempts = 3;
	static constexpr int32 AbsoluteMaxAttempts = 8;

	static int32 ClampMaxAttempts(int32 MaxAttempts)
	{
		return FMath::Clamp(MaxAttempts, 0, AbsoluteMaxAttempts);
	}

	static bool CanRetry(
		EQuartzUILoadRecoveryState State,
		bool bRuntimeSuspended,
		int32 ConsecutiveAttempts,
		int32 MaxAttempts)
	{
		const int32 SafeMaximum = ClampMaxAttempts(MaxAttempts);
		return State == EQuartzUILoadRecoveryState::Failed
			&& !bRuntimeSuspended
			&& ConsecutiveAttempts >= 0
			&& ConsecutiveAttempts < SafeMaximum;
	}
};