diff --git a/app/build.gradle b/app/build.gradle index c5106adbf..0f3ab2455 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -8,8 +8,8 @@ android { applicationId "org.schabi.newpipe" minSdkVersion 15 targetSdkVersion 25 - versionCode 32 - versionName "0.9.5" + versionCode 33 + versionName "0.9.6" } buildTypes { release { diff --git a/app/src/main/java/org/schabi/newpipe/fragments/detail/ActionBarHandler.java b/app/src/main/java/org/schabi/newpipe/fragments/detail/ActionBarHandler.java index 3805c30e7..41a927d16 100644 --- a/app/src/main/java/org/schabi/newpipe/fragments/detail/ActionBarHandler.java +++ b/app/src/main/java/org/schabi/newpipe/fragments/detail/ActionBarHandler.java @@ -40,6 +40,7 @@ import java.util.List; */ +@SuppressWarnings("WeakerAccess") class ActionBarHandler { private static final String TAG = "ActionBarHandler"; @@ -103,6 +104,10 @@ class ActionBarHandler { defaultPreferences = PreferenceManager.getDefaultSharedPreferences(activity); inflater.inflate(R.menu.video_detail_menu, menu); + updateItemsVisibility(); + } + + public void updateItemsVisibility(){ showPlayWithKodiAction(defaultPreferences.getBoolean(activity.getString(R.string.show_play_with_kodi_key), false)); } diff --git a/app/src/main/java/org/schabi/newpipe/fragments/detail/VideoDetailFragment.java b/app/src/main/java/org/schabi/newpipe/fragments/detail/VideoDetailFragment.java index 65ddc36ed..030028d64 100644 --- a/app/src/main/java/org/schabi/newpipe/fragments/detail/VideoDetailFragment.java +++ b/app/src/main/java/org/schabi/newpipe/fragments/detail/VideoDetailFragment.java @@ -98,6 +98,7 @@ public class VideoDetailFragment extends BaseFragment implements StreamExtractor private static final int RELATED_STREAMS_UPDATE_FLAG = 0x1; private static final int RESOLUTIONS_MENU_UPDATE_FLAG = 0x2; + private static final int TOOLBAR_ITEMS_UPDATE_FLAG = 0x4; private int updateFlags = 0; private boolean autoPlayEnabled; @@ -219,6 +220,8 @@ public class VideoDetailFragment extends BaseFragment implements StreamExtractor if ((updateFlags & RELATED_STREAMS_UPDATE_FLAG) != 0) initRelatedVideos(currentStreamInfo); if ((updateFlags & RESOLUTIONS_MENU_UPDATE_FLAG) != 0) setupActionBarHandler(currentStreamInfo); } + + if ((updateFlags & TOOLBAR_ITEMS_UPDATE_FLAG) != 0 && actionBarHandler != null) actionBarHandler.updateItemsVisibility(); updateFlags = 0; } @@ -329,6 +332,8 @@ public class VideoDetailFragment extends BaseFragment implements StreamExtractor || key.equals(getString(R.string.default_resolution_key)) || key.equals(getString(R.string.show_higher_resolutions_key))) { updateFlags |= RESOLUTIONS_MENU_UPDATE_FLAG; + } else if (key.equals(getString(R.string.show_play_with_kodi_key))) { + updateFlags |= TOOLBAR_ITEMS_UPDATE_FLAG; } } diff --git a/app/src/main/java/org/schabi/newpipe/player/BasePlayer.java b/app/src/main/java/org/schabi/newpipe/player/BasePlayer.java index fb010481d..9a4d49fda 100644 --- a/app/src/main/java/org/schabi/newpipe/player/BasePlayer.java +++ b/app/src/main/java/org/schabi/newpipe/player/BasePlayer.java @@ -320,7 +320,6 @@ public abstract class BasePlayer implements ExoPlayer.EventListener, AudioManage if (DEBUG) Log.d(TAG, "onAudioFocusGain() called"); if (simpleExoPlayer != null) simpleExoPlayer.setVolume(DUCK_AUDIO_TO); animateAudio(DUCK_AUDIO_TO, 1f, DUCK_DURATION); - simpleExoPlayer.setPlayWhenReady(true); } protected void onAudioFocusLoss() { 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 45221325b..7af2c20a1 100644 --- a/app/src/main/java/org/schabi/newpipe/player/MainVideoPlayer.java +++ b/app/src/main/java/org/schabi/newpipe/player/MainVideoPlayer.java @@ -184,6 +184,7 @@ public class MainVideoPlayer extends Activity { repeatButton.setAlpha(77); } + getRootView().setKeepScreenOn(true); } @Override @@ -308,12 +309,14 @@ public class MainVideoPlayer extends Activity { super.onLoading(); playPauseButton.setImageResource(R.drawable.ic_pause_white); animateView(playPauseButton, AnimationUtils.Type.SCALE_AND_ALPHA, false, 100); + getRootView().setKeepScreenOn(true); } @Override public void onBuffering() { super.onBuffering(); animateView(playPauseButton, AnimationUtils.Type.SCALE_AND_ALPHA, false, 100); + getRootView().setKeepScreenOn(true); } @Override @@ -326,8 +329,8 @@ public class MainVideoPlayer extends Activity { animateView(playPauseButton, AnimationUtils.Type.SCALE_AND_ALPHA, true, 200); } }); - showSystemUi(); + getRootView().setKeepScreenOn(true); } @Override @@ -342,12 +345,14 @@ public class MainVideoPlayer extends Activity { }); showSystemUi(); + getRootView().setKeepScreenOn(false); } @Override public void onPausedSeek() { super.onPausedSeek(); animateView(playPauseButton, AnimationUtils.Type.SCALE_AND_ALPHA, false, 100); + getRootView().setKeepScreenOn(true); } @@ -365,6 +370,7 @@ public class MainVideoPlayer extends Activity { } }); } + getRootView().setKeepScreenOn(false); super.onCompleted(); } diff --git a/app/src/main/java/org/schabi/newpipe/settings/SettingsActivity.java b/app/src/main/java/org/schabi/newpipe/settings/SettingsActivity.java index a1e8fb49b..f076c5645 100644 --- a/app/src/main/java/org/schabi/newpipe/settings/SettingsActivity.java +++ b/app/src/main/java/org/schabi/newpipe/settings/SettingsActivity.java @@ -53,15 +53,17 @@ public class SettingsActivity extends AppCompatActivity { actionBar.setDisplayShowTitleEnabled(true); } - getFragmentManager().beginTransaction() - .replace(R.id.fragment_holder, new SettingsFragment()) - .commit(); + if (savedInstanceBundle == null) { + getFragmentManager().beginTransaction() + .replace(R.id.fragment_holder, new SettingsFragment()) + .commit(); + } } @Override public boolean onOptionsItemSelected(MenuItem item) { int id = item.getItemId(); - if(id == android.R.id.home) { + if (id == android.R.id.home) { finish(); } return true; diff --git a/app/src/main/res/layout/activity_main_player.xml b/app/src/main/res/layout/activity_main_player.xml index cd76d2f07..07363f7e0 100644 --- a/app/src/main/res/layout/activity_main_player.xml +++ b/app/src/main/res/layout/activity_main_player.xml @@ -5,8 +5,7 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:background="@android:color/black" - android:gravity="center" - android:keepScreenOn="true"> + android:gravity="center"> - - + + - \ No newline at end of file + diff --git a/app/src/main/res/values/settings_keys.xml b/app/src/main/res/values/settings_keys.xml index 34898377b..ac5647aee 100644 --- a/app/src/main/res/values/settings_keys.xml +++ b/app/src/main/res/values/settings_keys.xml @@ -31,7 +31,7 @@ popup_remember_size_pos_key default_popup_resolution_key - 480p + 360p show_higher_resolutions_key