> For the complete documentation index, see [llms.txt](https://docs.firework.com/firework-for-developers/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.firework.com/firework-for-developers/android-sdk/integration-guide/01-basic-usage-and-api/03-playerdeck-viewoptions-applied.md).

# ViewOptions Support Reference

This document describes which `ViewOptions` properties are supported by `FwPlayerDeckView`, and how they affect the PlayerDeck feed and the fullscreen player experience.

***

## 1. Unsupported Options

The following option types are **not supported** by `FwPlayerDeckView`. Setting them has no effect.

| Option             | Reason                                                 |
| ------------------ | ------------------------------------------------------ |
| `titleOption`      | PlayerDeck uses its own fixed title style              |
| `ctaOption`        | Not applicable to feed-level views                     |
| `chatOption`       | Only applicable to full-screen-level views             |
| `storyBlockOption` | Only applicable to the StoryBlock component            |
| `adOption`         | Ad configuration is not applicable to PlayerDeck       |
| `adBadgeOption`    | Ad badge configuration is not applicable to PlayerDeck |

***

## 2. LayoutOption

Set via `ViewOptions.Builder.layoutOption(LayoutOption)`.

| Property              | Supported | Description                                                                 | Default         |
| --------------------- | --------- | --------------------------------------------------------------------------- | --------------- |
| `backgroundColor`     | Yes       | Background color of the PlayerDeck container                                |                 |
| `feedPadding`         | Yes       | Padding around the feed content area                                        |                 |
| `itemSpacing`         | Yes       | Spacing between feed items                                                  |                 |
| `showPlayIcon`        | Yes       | Whether to show the play icon on thumbnails                                 | `true`          |
| `playIconWidth`       | Yes       | Width (and height) of the play icon                                         | `24dp`          |
| `roundedCorner`       | Yes       | Whether to apply rounded corners to cards and the inline player             | `false`         |
| `roundedCornerRadius` | Yes       | Corner radius value in pixels (effective when `roundedCorner` is `true`)    | `5`             |
| `aspectRatio`         | Yes       | Aspect ratio of the video area                                              | `9:16` (0.5625) |
| `itemShape`           | Partial   | Only `ItemShape.Custom` is supported; see [ItemShape Note](#itemshape-note) |                 |
| `showShoppingBagIcon` | N/A       | Not supported by PlayerDeck; this property is ignored                       |                 |
| `shoppingBagIcon`     | N/A       | Not supported by PlayerDeck; this property is ignored                       |                 |
| `feedLayout`          | N/A       | PlayerDeck always uses horizontal scrolling; this property is ignored       |                 |
| `columnCount`         | N/A       | PlayerDeck is always single-row; this property is ignored                   |                 |
| `feedTitlePosition`   | N/A       | PlayerDeck uses a fixed NESTED title position; this property is ignored     |                 |

### ItemShape Note

The `LayoutOption.Builder` methods `roundedCorner()`, `roundedCornerRadius()`, `aspectRatio()`, and `circleShape()` are internally stored as a sealed class `ItemShape`:

* **`ItemShape.Custom`** — carries `roundedCorner`, `roundedCornerRadius`, and `aspectRatio`. **This is the only variant supported by PlayerDeck.**
* **`ItemShape.Circle`** — represents a circular item shape. **This variant is not supported by PlayerDeck.** If `circleShape(true)` is set, PlayerDeck will silently ignore it and fall back to default values.

***

## 3. PlayerOption

Set via `ViewOptions.Builder.playerOption(PlayerOption)`.

### 3a. Feed-Level Properties

These properties directly control the PlayerDeck feed (thumbnails and inline player):

| Property   | Supported | Description                         | Default |
| ---------- | --------- | ----------------------------------- | ------- |
| `autoplay` | Yes       | Enables inline autoplay in the feed | `false` |

### 3b. Fullscreen Player Properties

When a user taps a video in the PlayerDeck, a fullscreen player (`PlayerActivity`) opens. The following properties control that fullscreen experience:

| Property                     | Supported | Description                                          | Default                             |
| ---------------------------- | --------- | ---------------------------------------------------- | ----------------------------------- |
| `playerMode`                 | Yes       | Display mode of the fullscreen player                | `PlayerMode.FULL_BLEED_MODE`        |
| `showFireworkLogo`           | Yes       | Show or hide the Firework logo                       | `true`                              |
| `showShareButton`            | Yes       | Show or hide the share button                        | `true`                              |
| `showMuteButton`             | Yes       | Show or hide the mute button                         | `true`                              |
| `showPlayPauseButtonInVideo` | Yes       | Show or hide the play/pause button overlay           | `true`                              |
| `autoPlayOnComplete`         | Yes       | Automatically advance to the next video              | `true`                              |
| `enablePipMode`              | Yes       | Enable Picture-in-Picture mode                       | `false`                             |
| `shareBaseUrl`               | Yes       | Base URL for share links                             | `""`                                |
| `shareUrlCustomCallBack`     | Yes       | Custom callback to transform share URLs              | Identity (returns the original URL) |
| `sdkHandleCtaButtonClick`    | Yes       | Whether the SDK handles CTA button clicks internally | `true`                              |
| `logoConfig`                 | Yes       | Logo configuration                                   | `LogoConfig.NoLogo`                 |
| `playerUiOption`             | Yes       | UI configuration for player controls                 | Default `PlayerUiOption`            |
| `livestreamCountDownOption`  | Yes       | Livestream countdown timer configuration             | Default `LivestreamCountDownOption` |
| `showSubtitle`               | Yes       | Show or hide subtitles                               | `true`                              |
| `showCaption`                | Yes       | Show or hide captions                                | `true`                              |
| `showMoreButton`             | Yes       | Show or hide the "more" menu button                  | `true`                              |
| `reverseAudioControls`       | Yes       | Reverse the audio control behavior                   | `false`                             |
| `subtitleBackgroundColor`    | Yes       | Background color of subtitle overlays                | `0x66121212`                        |
| `subtitleTextColor`          | Yes       | Text color of subtitles                              | `0xFFFFFFFF` (white)                |
| `enableRotateOrientation`    | Yes       | Allow screen rotation in the player                  | `false`                             |
| `tapToEnterLiveStreamHidden` | Yes       | Hide the "tap to enter livestream" prompt            | `false`                             |
| `enableImmersiveMode`        | Yes       | Enable immersive mode (hide system bars)             | `false`                             |
| `scrollingOrientation`       | Yes       | Scrolling orientation in the fullscreen player       | `ScrollingOrientation.HORIZONTAL`   |
| `showProductCard`            | Yes       | Show or hide product cards in the fullscreen player  | `true`                              |
| `feedCompleteAction`         | Yes       | Behavior when all videos finish playing              | `DISMISS`                           |
| `isArrowButtonVisible`       | Yes       | Show or hide arrow navigation buttons in the player  | `true`                              |
| `ignoreContentRatioMismatch` | Yes       | Ignore content-to-player aspect ratio mismatches     | `false`                             |
| `shareButtonPosition`        | Yes       | Position of the share button in the player UI        | `ShareButtonPosition.MORE_MENU`     |
| `actionButtonOption`         | N/A       | Not supported                                        |                                     |

***

## 4. BaseOption

Set via `ViewOptions.Builder.baseOption(BaseOption)`.

| Property           | Supported | Description                                                                | Default |
| ------------------ | --------- | -------------------------------------------------------------------------- | ------- |
| `feedResource`     | Yes       | Determines which feed content to load (Discovery, Channel, Playlist, etc.) |         |
| `progressBarColor` | Yes       | Color of the indeterminate progress bar (loading indicator)                |         |

## 5. PlayerDeckOption

Set via `ViewOptions.Builder.playerDeckOption(PlayerDeckOption)` or the `playerDeckOptions { }` DSL.

These properties control the inline PlayerDeck feed UI (not the fullscreen player). See PlayerDeck Options for full details.

| Property                  | Supported | Description                                    | Default      |
| ------------------------- | --------- | ---------------------------------------------- | ------------ |
| `showFullScreenIcon`      | Yes       | Show or hide the fullscreen icon on deck items | `true`       |
| `showShareButton`         | Yes       | Show or hide the share button on deck items    | `true`       |
| `showSubtitle`            | Yes       | Show or hide subtitles during inline playback  | `true`       |
| `subtitleBackgroundColor` | Yes       | Background color of subtitle overlays          | `0x66121212` |
| `subtitleTextColor`       | Yes       | Text color of subtitles                        | `0xFFFFFFFF` |
