Skip to content

fix(android): controls always show in fullscreen #4813

Closed
robertert wants to merge 1 commit into
TheWidlarzGroup:support/6.x.xfrom
robertert:fix/6.x.x/fullscreen-controls
Closed

fix(android): controls always show in fullscreen #4813
robertert wants to merge 1 commit into
TheWidlarzGroup:support/6.x.xfrom
robertert:fix/6.x.x/fullscreen-controls

Conversation

@robertert

Copy link
Copy Markdown
Contributor

Fixes: #4751

Resolves an issue where player controls were not visible in Fullscreen mode when controls={false} on Android

Changes:

  • Fixed the logic to ensure controls are always enabled when the player is in Fullscreen mode, regardless of the controls prop value.
  • Simplified and refactored the controller visibility logic in ReactExoplayerView.java

@Okelm

Okelm commented Jan 8, 2026

Copy link
Copy Markdown
Contributor

Thanks for the PR!
it should fix the issue that you face @gkueny

@janpe

janpe commented Feb 11, 2026

Copy link
Copy Markdown

@robertert could this be merged?

private void updateControllerConfig() {
if (exoPlayerView == null) return;

// Extra configuration for proper touch handling

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you delete this comment?

private void refreshControlsStyles() {
if (exoPlayerView == null || player == null || !controls) return;
if (exoPlayerView == null || player == null) return;
// Always update controller visibility to ensure it matches current state

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you delete this comment?

Comment on lines +2644 to +2646
if (exoPlayerView != null) {
exoPlayerView.showController();
}

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it necessary?

Comment on lines +2709 to +2711
boolean shouldShowControls = controls || isFullscreen;
if (shouldShowControls) {
updateControllerConfig();

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What about the configuration we deleted?

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR fixes a bug where player controls were not visible in fullscreen mode when controls={false} on Android (version >= 6.16.0). The fix ensures controls are always shown in fullscreen mode regardless of the controls prop value, which aligns with the documented behavior.

Changes:

  • Updated controller visibility logic to use controls || isFullscreen instead of controls && !controlsConfig.getHideFullscreen()
  • Refactored and simplified controller visibility management by removing redundant code
  • Added explicit controller show/hide calls when entering/exiting fullscreen mode

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@janpe

janpe commented Mar 24, 2026

Copy link
Copy Markdown

@robertert @moskalakamil could we see this merged at some point?

@indapublic

Copy link
Copy Markdown

Waiting for this

@janpe

janpe commented May 4, 2026

Copy link
Copy Markdown

@robertert @moskalakamil any chance to get this merged and in an release soon?

moskalakamil pushed a commit that referenced this pull request Jun 12, 2026
* fix(android): controls always show in fullscreen
Fixed: #4751

* fix(android): address PR #4813 review feedback

---------

Co-authored-by: robertert <jacakrobert33@gmail.com>
@moskalakamil

Copy link
Copy Markdown
Collaborator

merged #4907

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Development

Successfully merging this pull request may close these issues.

6 participants