Skip to content

Add "Open in External Player" button to ExoPlayer video overlay#194

Draft
Copilot wants to merge 2 commits intomainfrom
copilot/add-external-player-button
Draft

Add "Open in External Player" button to ExoPlayer video overlay#194
Copilot wants to merge 2 commits intomainfrom
copilot/add-external-player-button

Conversation

Copy link
Copy Markdown

Copilot AI commented Mar 27, 2026

Internal ExoPlayer can be laggy for certain videos. This adds a button to the video playback overlay that lets users open the current video in any installed video app (VLC, MX Player, etc.) via an Android chooser dialog.

Changes (in mediaslider submodule)

  • Layout (exo_player_control_view.xml): Added exo_external_player ImageButton at the end of the controls row with correct D-pad focus chain (slideshowexternal_player)
  • Icon (ic_open_external.xml): New vector drawable — "open in new window" symbol, white fill to match existing buttons
  • ExoPlayerView.kt: Initializes externalPlayerBtn and routes its click to the existing onButtonClick(Int) callback
  • MediaSliderView.kt: Handles R.id.exo_external_player by calling openInExternalPlayer(), which fires ACTION_VIEW with video/* on the current item's URL wrapped in Intent.createChooser; shows a toast if no app can handle it
  • strings.xml: Added open_in_external_player (chooser title) and no_external_player_found (fallback toast)

Note: Changes live in the mediaslider submodule (giejay/MediaSliderView). The main repo commit updates the submodule reference to the new commit. The submodule branch will need to be pushed to MediaSliderView before merging.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • dl.google.com
    • Triggering command: /usr/lib/jvm/temurin-17-jdk-amd64/bin/java /usr/lib/jvm/temurin-17-jdk-amd64/bin/java --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.prefs/java.util.prefs=ALL-UNNAMED --add-exports=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED --add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED --add-opens=java.base/java.nio.charset=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED -Xmx2048m -Dfile.encoding=UTF-8 -Duser.country -Duser.language=en -Duser.variant -cp /home/REDACTED/.gradle/wrapper/dists/gradle-8.9-bin/90cnw93cvbtalezasaz0blq0a/gradle-8.9/lib/gradle-daemon-main-8.9.jar -javaagent:/home/REDACTED/.gradle/wrapper/dists/gradle-8.9-bin/90cnw93cvbtalezasaz0blq0a/gradle-8.9/lib/agents/gradle-instrumentation-agent-8.9.jar org.gradle.launcher.daemon.bootstrap.GradleDaemon 8.9 (dns block)

If you need me to access, download, or install something from one of these locations, you can either:


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

Co-authored-by: giejay <2014373+giejay@users.noreply.github.com>
Copilot AI changed the title [WIP] Add ability to open videos in external player Add "Open in External Player" button to ExoPlayer video overlay Mar 27, 2026
Copilot AI requested a review from giejay March 27, 2026 16:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[FR] Add ability to play videos in external player

2 participants