---
title: "DropletLiveActivityYieldReason, DroppyKit"
description: "Why a droplet&#x27;s activity is not holding the compact slot (DroppyKit 0.6.0)."
canonical: "https://getdroppy.app/docs/droppykit/api/droplet-live-activity-yield-reason"
last-updated: "2026-09-09"
---

# DropletLiveActivityYieldReason

Why a droplet's activity is not holding the compact slot (DroppyKit 0.6.0).

`struct DropletLiveActivityYieldReason`

Open by design: the host's suppression rules are numerous, private, and change with every surface it gains. A droplet that switches on one must write a `default:`, and anything unrecognized means the same thing as the rest, which is "not now".

## Initializers

### init(_:)

`init(_ rawValue: String)`

Creates a reason from a raw string.

### init(rawValue:)

`init(rawValue: String)`

Creates a reason from a raw string.

### init(stringLiteral:)

`init(stringLiteral value: String)`

String-literal convenience.

## Type properties

### displayIneligible

`static let displayIneligible: DropletLiveActivityYieldReason`

The display the user is on does not render compact activities.

### idle

`static let idle: DropletLiveActivityYieldReason`

The droplet published `nil`: it asked for nothing.

### outranked

`static let outranked: DropletLiveActivityYieldReason`

Another activity outranks this one.

### pairFull

`static let pairFull: DropletLiveActivityYieldReason`

Both live-activity seats (the island owner and the companion pill) are already taken. Distinct from `outranked` so a droplet can tell "I lost an arbitration" from "the surface is simply full": the latter frees up on its own when either seated activity ends (DroppyKit 0.7.0).

### surfaceSuppressed

`static let surfaceSuppressed: DropletLiveActivityYieldReason`

The compact surface is suppressed entirely right now: a HUD is up, the shelf is expanded, a drag is in progress, a lock-screen handoff is running.

### userDisabled

`static let userDisabled: DropletLiveActivityYieldReason`

The user turned this droplet's activity off.

## Properties

### description

`var description: String { get }`

The raw value.

### rawValue

`let rawValue: String`

The raw reason string, the host's own name for it.
