From 5c711322d416d0c6ccda53873f82d2379fd99771 Mon Sep 17 00:00:00 2001 From: Stypox Date: Thu, 7 May 2020 09:08:52 +0200 Subject: [PATCH] In player hide kodi button if service unsupported --- .../schabi/newpipe/player/MainVideoPlayer.java | 15 +++++++++------ .../layout-large-land/activity_main_player.xml | 3 ++- app/src/main/res/layout/activity_main_player.xml | 3 ++- 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/org/schabi/newpipe/player/MainVideoPlayer.java b/app/src/main/java/org/schabi/newpipe/player/MainVideoPlayer.java index 570819433..37a07fb20 100644 --- a/app/src/main/java/org/schabi/newpipe/player/MainVideoPlayer.java +++ b/app/src/main/java/org/schabi/newpipe/player/MainVideoPlayer.java @@ -593,9 +593,6 @@ public final class MainVideoPlayer extends AppCompatActivity titleTextView.setSelected(true); channelTextView.setSelected(true); - boolean showKodiButton = PreferenceManager.getDefaultSharedPreferences(this.context) - .getBoolean(this.context.getString(R.string.show_play_with_kodi_key), false); - kodiButton.setVisibility(showKodiButton ? View.VISIBLE : View.GONE); getRootView().setKeepScreenOn(true); } @@ -712,6 +709,13 @@ public final class MainVideoPlayer extends AppCompatActivity protected void onMetadataChanged(@NonNull final MediaSourceTag tag) { super.onMetadataChanged(tag); + // show kodi button if it supports the current service and it is enabled in settings + final boolean showKodiButton = + KoreUtil.isServiceSupportedByKore(tag.getMetadata().getServiceId()) + && PreferenceManager.getDefaultSharedPreferences(context) + .getBoolean(context.getString(R.string.show_play_with_kodi_key), false); + kodiButton.setVisibility(showKodiButton ? View.VISIBLE : View.GONE); + titleTextView.setText(tag.getMetadata().getName()); channelTextView.setText(tag.getMetadata().getUploaderName()); } @@ -725,13 +729,12 @@ public final class MainVideoPlayer extends AppCompatActivity public void onKodiShare() { onPause(); try { - NavigationHelper.playWithKore(this.context, - Uri.parse(playerImpl.getVideoUrl().replace("https", "http"))); + NavigationHelper.playWithKore(context, Uri.parse(playerImpl.getVideoUrl())); } catch (Exception e) { if (DEBUG) { Log.i(TAG, "Failed to start kore", e); } - KoreUtil.showInstallKoreDialog(this.context); + KoreUtil.showInstallKoreDialog(context); } } diff --git a/app/src/main/res/layout-large-land/activity_main_player.xml b/app/src/main/res/layout-large-land/activity_main_player.xml index 8dab200e8..13ca79da1 100644 --- a/app/src/main/res/layout-large-land/activity_main_player.xml +++ b/app/src/main/res/layout-large-land/activity_main_player.xml @@ -325,8 +325,9 @@ android:src="@drawable/ic_cast_white_24dp" android:background="?attr/selectableItemBackground" android:contentDescription="@string/play_with_kodi_title" + android:visibility="gone" tools:ignore="RtlHardcoded" - android:visibility="visible"/> + tools:visibility="visible"/> + tools:visibility="visible"/>