com.brightcove.player.mediacontroller.buttons

## Class FullScreenButtonController

- java.lang.Object
- - com.brightcove.player.event.AbstractComponent
  - - com.brightcove.player.mediacontroller.buttons.AbstractButtonController
    - - com.brightcove.player.mediacontroller.buttons.FullScreenButtonController

- All Implemented Interfaces:
    AccessibilityListener, Component, ButtonController, RemoteControlKeyState

      public class FullScreenButtonController
      extends AbstractButtonController

  The default Brightcove fullScreen controller. This class is responsible for putting the video view into full screen mode and taking it out of full screen mode in response to programattic (via SDK events) or user interactions (button clicks).

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class com.brightcove.player.mediacontroller.buttons.AbstractButtonController

      `AbstractButtonController.Visibility`

  - ### Field Summary

    - ### Fields inherited from class com.brightcove.player.mediacontroller.buttons.AbstractButtonController

      `DEFAULT_AUDIO_TRACKS_BUTTON_ID, DEFAULT_CAPTIONS_BUTTON_ID, DEFAULT_FAST_FORWARD_BUTTON_ID, DEFAULT_FULL_SCREEN_BUTTON_ID, DEFAULT_LIVE_BUTTON_ID, DEFAULT_PLAY_BUTTON_ID, DEFAULT_REWIND_BUTTON_ID, DEFAULT_SEEK_BUTTON_ID, properties, stateList, videoView`

    - ### Fields inherited from class com.brightcove.player.event.AbstractComponent

      `eventEmitter, listenerTokens`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `FullScreenButtonController(android.content.Context context, BaseVideoView videoView, BrightcoveControlBar controlBar, android.graphics.Typeface font)` Builds a button controller to manage the full screen button.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `getManagedState()` Implements a getter for the managed video state.
    `int` | `getVisibilityState()` Gets the maintained visibility state for a button.

    - ### Methods inherited from class com.brightcove.player.mediacontroller.buttons.AbstractButtonController

      `getButton, getEventEmitter, getFont, getId, getProperties, getStateList, onAccessibilityStateChanged, onBack, onDpadCenter, onDpadDown, onDpadLeft, onDpadRight, onDpadUp, onFastForward, onHome, onMenu, onPause, onPlay, onPlayPause, onRewind, onSkipBackward, onSkipForward, setVisibility, syncStates`

    - ### Methods inherited from class com.brightcove.player.event.AbstractComponent

      `addListener, addOnceListener, removeListener, removeListeners`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface com.brightcove.player.mediacontroller.buttons.ButtonController

      `removeListeners`

- - ### Constructor Detail

    - #### FullScreenButtonController

          public FullScreenButtonController(android.content.Context context,
                                            BaseVideoView videoView,
                                            BrightcoveControlBar controlBar,
                                            android.graphics.Typeface font)

      Builds a button controller to manage the full screen button. The states are either in full screen or not in full screen.
      Parameters:
        `context` - The Android application context.
        `videoView` - The SDK video view object.
        `controlBar` - The button widget parent view.
        `font` - The, possibly null, typeface for the button.

  - ### Method Detail

    - #### getManagedState

          public int getManagedState()

      Implements a getter for the managed video state.
      See Also:
        `ButtonController.getManagedState()`

    - #### getVisibilityState

          public int getVisibilityState()

      Description copied from class: `AbstractButtonController`
      Gets the maintained visibility state for a button. Defaults to View.VISIBLE but can be overridden based on events. An example is the caption button.
      Specified by:
        `getVisibilityState` in interface `ButtonController`
      Overrides:
        `getVisibilityState` in class `AbstractButtonController`
      Returns:
        The expected visibility state, one of View.GONE, View.INVISIBLE or View.VISIBLE.
      See Also:
        `ButtonController.getVisibilityState()`