<br />

Added: 7

## **PROTOCOLS**

## DeviceListenerRegistry

*Defined in [fuchsia.ui.policy/device_listener.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.ui.policy/device_listener.fidl;l=10)*

Service for exposing state and events of devices, such as media buttons.

<br />

### RegisterListener

Registers a listener to receive media button related events, such as
changes from volume buttons and mute switches.
On registration, the `listener` receives the last media button event that
occurred, if one exists, and all media button events going forward.

#### Request

| Name | Type |
|---|---|
| `listener` | `client_end:https://fuchsia.dev/reference/fidl/fuchsia.ui.policy#MediaButtonsListener` |

#### Response

\<EMPTY\>

### RegisterMediaButtonsListener

Registers a listener to receive media button related events, such as
changes from volume buttons and mute switches.

**DEPRECATED**- Use RegisterListener()

#### Request

| Name | Type |
|---|---|
| `listener` | `client_end:https://fuchsia.dev/reference/fidl/fuchsia.ui.policy#MediaButtonsListener` |

### RegisterTouchButtonsListener

Registers a listener to receive touch button related events.
On registration, the `listener` receives the last touch button event that
occurred, if one exists, and all touch button events going forward.
Added: 28

#### Request

| Name | Type |
|---|---|
| `listener` | `client_end:https://fuchsia.dev/reference/fidl/fuchsia.ui.policy#TouchButtonsListener` |

#### Response

\<EMPTY\>

## DisplayBacklight

*Defined in [fuchsia.ui.policy/display_backlight.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.ui.policy/display_backlight.fidl;l=21)*

Manipulates global policy for display backlight. Serves as the main "front
end" interface for usage by UX components; other protocols (such as
fuchsia.ui.scenic.Session and fuchsia.hardware.display.Controller) act as
implementation.

Global Scope. All displays, in all display controllers, are affected uniformly.

Effect Timing. This protocol does not guarantee a deadline by which the
minimum value is applied to a display; it is best effort.

Multiple clients. This protocol does not guarantee unique access to
manipulate display backlight functionality.

Reference. Related to fuchsia.hardware.display.Controller.

<br />

### SetMinimumRgb

Submits a new minimum color channel value for display backlight.

The valid range for a minimum value is \[0, 255\] (inclusive). For a new
minimum value M, each color channel's range will be limited to \[M, 255\].

Flow control: The caller is allowed at most one in-flight
\|SetMinimumRgb\| at at time. Subsequent calls must wait until the
acknowledgment returns. Non-compliance results in channel closure.

#### Request

| Name | Type |
|---|---|
| `minimum_rgb` | `uint8` |

#### Response

\<EMPTY\>

## MediaButtonsListener

*Defined in [fuchsia.ui.policy/device_listener.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.ui.policy/device_listener.fidl;l=54)*
Added: HEAD

<br />

### OnEvent

#### Request

| Name | Type |
|---|---|
| `event` | `https://fuchsia.dev/reference/fuchsia.ui.input//https://fuchsia.dev/reference/fuchsia.ui.input#MediaButtonsEvent` |

#### Response

\<EMPTY\>

### OnMediaButtonsEvent

**DEPRECATED**- Use OnEvent()

#### Request

| Name | Type |
|---|---|
| `event` | `https://fuchsia.dev/reference/fuchsia.ui.input//https://fuchsia.dev/reference/fuchsia.ui.input#MediaButtonsEvent` |

## TouchButtonsListener

*Defined in [fuchsia.ui.policy/device_listener.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:sdk/fidl/fuchsia.ui.policy/device_listener.fidl;l=78)*
Added: HEAD

<br />

### OnEvent

#### Request

| Name | Type |
|---|---|
| `event` | `https://fuchsia.dev/reference/fuchsia.ui.input//https://fuchsia.dev/reference/fuchsia.ui.input#TouchButtonsEvent` |

#### Response

\<EMPTY\>