From cf377c2591f06d834ee7bbfe54252ec7bf985d32 Mon Sep 17 00:00:00 2001
From: Xiang Rong Lin <41164160+XiangRongLin@users.noreply.github.com>
Date: Mon, 3 Feb 2020 10:35:50 +0100
Subject: [PATCH 001/195] Fix bug causing crashes when sharing a downloaded
file.
---
.../giga/ui/adapter/MissionAdapter.java | 33 ++++++++++++-------
1 file changed, 21 insertions(+), 12 deletions(-)
diff --git a/app/src/main/java/us/shandian/giga/ui/adapter/MissionAdapter.java b/app/src/main/java/us/shandian/giga/ui/adapter/MissionAdapter.java
index 852c29835b0..c2d3a9b9e83 100644
--- a/app/src/main/java/us/shandian/giga/ui/adapter/MissionAdapter.java
+++ b/app/src/main/java/us/shandian/giga/ui/adapter/MissionAdapter.java
@@ -341,17 +341,7 @@ private void viewWithFileProvider(Mission mission) {
if (BuildConfig.DEBUG)
Log.v(TAG, "Mime: " + mimeType + " package: " + BuildConfig.APPLICATION_ID + ".provider");
- Uri uri;
-
- if (mission.storage.isDirect()) {
- uri = FileProvider.getUriForFile(
- mContext,
- BuildConfig.APPLICATION_ID + ".provider",
- new File(URI.create(mission.storage.getUri().toString()))
- );
- } else {
- uri = mission.storage.getUri();
- }
+ Uri uri = resolveShareableUri(mission);
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
@@ -379,11 +369,30 @@ private void shareFile(Mission mission) {
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType(resolveMimeType(mission));
- intent.putExtra(Intent.EXTRA_STREAM, mission.storage.getUri());
+ intent.putExtra(Intent.EXTRA_STREAM, resolveShareableUri(mission));
+ intent.addFlags(FLAG_GRANT_READ_URI_PERMISSION);
mContext.startActivity(Intent.createChooser(intent, null));
}
+ /**
+ * Returns an Uri which can be shared to other applications.
+ *
+ * @see
+ * https://stackoverflow.com/questions/38200282/android-os-fileuriexposedexception-file-storage-emulated-0-test-txt-exposed
+ */
+ private Uri resolveShareableUri(Mission mission) {
+ if (mission.storage.isDirect()) {
+ return FileProvider.getUriForFile(
+ mContext,
+ BuildConfig.APPLICATION_ID + ".provider",
+ new File(URI.create(mission.storage.getUri().toString()))
+ );
+ } else {
+ return mission.storage.getUri();
+ }
+ }
+
private static String resolveMimeType(@NonNull Mission mission) {
String mimeType;
From 91bd0be39eb8b8fd3315005efeaee729f4dd7bbf Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Allan=20Nordh=C3=B8y?=
Date: Mon, 17 Feb 2020 14:54:45 +0100
Subject: [PATCH 002/195] Spelling: Some devices are incompatible
---
app/src/main/res/values/strings.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 1a70d9eaa13..2329f1a77ad 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -590,7 +590,7 @@
You will be asked where to save each download
You will be asked where to save each download.\nChoose SAF if you want to download to an external SD card
Use SAF
- The \'Storage Access Framework\' allows downloads to an external SD card.\nNote: some devices are incompatible
+ The \'Storage Access Framework\' allows downloads to an external SD card.\nSome devices are incompatible
Choose an instance
App language
System default
From 01dcf550cfd6f5e5b0d8f72779f118bea3622028 Mon Sep 17 00:00:00 2001
From: Poolitzer <25934244+Poolitzer@users.noreply.github.com>
Date: Sat, 22 Feb 2020 19:56:56 -0800
Subject: [PATCH 003/195] Update issue templates
---
.github/ISSUE_TEMPLATE/bug_report.md | 38 +++++++++++++++++++++++
.github/ISSUE_TEMPLATE/feature_request.md | 24 ++++++++++++++
2 files changed, 62 insertions(+)
create mode 100644 .github/ISSUE_TEMPLATE/bug_report.md
create mode 100644 .github/ISSUE_TEMPLATE/feature_request.md
diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md
new file mode 100644
index 00000000000..32fa3e03ead
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/bug_report.md
@@ -0,0 +1,38 @@
+---
+name: Bug report
+about: Create a bug report to help us improve
+title: "[BUG]"
+labels: bug
+assignees: ''
+
+---
+
+
+### Steps to reproduce
+Steps to reproduce the behavior:
+1. Go to '...'
+2. Press on '....'
+3. Swipe down to '....'
+
+### Expected behavior
+Tell us what you expected to happen.
+
+### Actual behaviour
+Tell us what happens instead
+
+### Screenshots/-recording
+If applicable, add screenshots or a screen recording to help explain your problem. Github should support uploading them directly in the issue field. If your file is too big, feel free to paste a link from a image/video hoster here instead.
+
+### Logs
+If your bug includes a crash, please head over to the [incredible bugreport to markdown converter](https://teamnewpipe.github.io/CrashReportToMarkdown/). Copy the result. Paste it between the code tags:
+here
diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md
new file mode 100644
index 00000000000..a0bde3dc0c4
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/feature_request.md
@@ -0,0 +1,24 @@
+---
+name: Feature request
+about: Suggest an idea for this project
+title: "[Feature]"
+labels: enhancement
+assignees: ''
+
+---
+
+#### Is your feature request related to a problem? Please describe.
+A clear and concise description of what the problem is.
+Ex. *I want to do X, but there is no way to do it.*
+
+#### Describe the solution you'd like
+A clear and concise description of what you want to happen.
+Ex. *I think it would be nice if you would add feature Y so it will make it easier.*
+
+#### Describe alternatives you've considered
+A clear and concise description of any alternative solutions or features you've considered.
+Ex. *I considered Z, but that didn't work because...*
+
+#### Additional context
+Add any other context or screenshots about the feature request here.
+Ex. *Here's a photo of my cat!*
From 495b495f27ced0191ef89b7625577b99ae87d9be Mon Sep 17 00:00:00 2001
From: poolitzer <25934244+Poolitzer@users.noreply.github.com>
Date: Sat, 22 Feb 2020 20:03:38 -0800
Subject: [PATCH 004/195] deleting old template
---
.github/ISSUE_TEMPLATE.md | 3 ---
1 file changed, 3 deletions(-)
delete mode 100644 .github/ISSUE_TEMPLATE.md
diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md
deleted file mode 100644
index 8073503adea..00000000000
--- a/.github/ISSUE_TEMPLATE.md
+++ /dev/null
@@ -1,3 +0,0 @@
-- [ ] I carefully read the [contribution guidelines](https://github.com/TeamNewPipe/NewPipe/blob/HEAD/.github/CONTRIBUTING.md) and agree to them.
-- [ ] I checked if the issue/feature exists in the latest version.
-- [ ] I did use the [incredible bugreport to markdown converter](https://teamnewpipe.github.io/CrashReportToMarkdown/) to paste bug reports.
From 30f66d012e53a8d13ee8a448f2229162ed8c3df6 Mon Sep 17 00:00:00 2001
From: Poolitzer <25934244+Poolitzer@users.noreply.github.com>
Date: Sat, 22 Feb 2020 20:16:14 -0800
Subject: [PATCH 005/195] Update PULL_REQUEST_TEMPLATE.md
---
.github/PULL_REQUEST_TEMPLATE.md | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
index d0e58680ac1..ea06e601a82 100644
--- a/.github/PULL_REQUEST_TEMPLATE.md
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -1 +1,19 @@
+
+
+#### long description of the changes in your PR
+*Now you can make videos*
+
+#### Fixes the following issue(s)
+
+- #1234
+
+#### Relies on the following changes
+
+- #1234
+
+#### Testing apk
+
+debug.zip
+
+#### Agreement
- [ ] I carefully read the [contribution guidelines](https://github.com/TeamNewPipe/NewPipe/blob/HEAD/.github/CONTRIBUTING.md) and agree to them.
From a3bce7f7caf14f034fd550870bcbeaf5d04dee5e Mon Sep 17 00:00:00 2001
From: Stypox
Date: Sun, 23 Feb 2020 09:46:42 +0100
Subject: [PATCH 006/195] Change app id based on current git branch
This enables to install multiple builds from different branches at once
---
app/build.gradle | 11 ++++++++++-
app/src/debug/AndroidManifest.xml | 17 -----------------
app/src/main/res/values/strings.xml | 1 -
3 files changed, 10 insertions(+), 19 deletions(-)
delete mode 100644 app/src/debug/AndroidManifest.xml
diff --git a/app/build.gradle b/app/build.gradle
index c2bceab9e60..36a712cc393 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -9,6 +9,7 @@ android {
defaultConfig {
applicationId "org.schabi.newpipe"
+ resValue "string", "app_name", "NewPipe"
minSdkVersion 19
targetSdkVersion 28
versionCode 840
@@ -28,7 +29,15 @@ android {
debug {
multiDexEnabled true
debuggable true
- applicationIdSuffix ".debug"
+
+ def workingBranch = "git rev-parse --abbrev-ref HEAD".execute().text.trim()
+ if (workingBranch.isEmpty() || workingBranch == "master" || workingBranch == "dev") {
+ applicationIdSuffix ".debug"
+ resValue "string", "app_name", "NewPipe Debug"
+ } else {
+ applicationIdSuffix ".debug." + workingBranch.replaceAll("[^A-Za-z]+", "")
+ resValue "string", "app_name", "NewPipe " + workingBranch
+ }
}
}
diff --git a/app/src/debug/AndroidManifest.xml b/app/src/debug/AndroidManifest.xml
deleted file mode 100644
index a16d6796a63..00000000000
--- a/app/src/debug/AndroidManifest.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 148a339a943..bcbfcd6d07f 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -1,6 +1,5 @@
- NewPipe
Tap \"Search\" to get started
%1$s views
Published on %1$s
From 030e5ab894ed576e9e63332c6b08cdda090eade6 Mon Sep 17 00:00:00 2001
From: Stypox
Date: Sun, 23 Feb 2020 20:56:56 +0100
Subject: [PATCH 007/195] Add comment to gradle
---
app/build.gradle | 1 +
1 file changed, 1 insertion(+)
diff --git a/app/build.gradle b/app/build.gradle
index 36a712cc393..2329a7a0e9c 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -30,6 +30,7 @@ android {
multiDexEnabled true
debuggable true
+ // suffix the app id and the app name with git branch name
def workingBranch = "git rev-parse --abbrev-ref HEAD".execute().text.trim()
if (workingBranch.isEmpty() || workingBranch == "master" || workingBranch == "dev") {
applicationIdSuffix ".debug"
From dc6a0e3eec32d21eddd10fe4bdd4147140d7f79a Mon Sep 17 00:00:00 2001
From: karol
Date: Sun, 23 Feb 2020 21:28:40 +0100
Subject: [PATCH 008/195] mute-button added to activity_main_player.xml's
---
.../activity_main_player.xml | 18 ++++++++++++++++++
.../main/res/layout/activity_main_player.xml | 19 +++++++++++++++++++
2 files changed, 37 insertions(+)
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 8e11b99f36e..10fda556a23 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
@@ -389,6 +389,24 @@
android:background="?attr/selectableItemBackground"
android:contentDescription="@string/switch_to_background"
tools:ignore="RtlHardcoded"/>
+
+
+
+
+
Date: Sun, 23 Feb 2020 22:32:23 +0100
Subject: [PATCH 009/195] mute-button implementation in main player
---
.../org/schabi/newpipe/player/BasePlayer.java | 14 ++++++++++++
.../newpipe/player/MainVideoPlayer.java | 22 +++++++++++++++++++
2 files changed, 36 insertions(+)
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 46ca3921dfe..79496388c96 100644
--- a/app/src/main/java/org/schabi/newpipe/player/BasePlayer.java
+++ b/app/src/main/java/org/schabi/newpipe/player/BasePlayer.java
@@ -532,6 +532,20 @@ public void onShuffleClicked() {
if (simpleExoPlayer == null) return;
simpleExoPlayer.setShuffleModeEnabled(!simpleExoPlayer.getShuffleModeEnabled());
}
+ /*//////////////////////////////////////////////////////////////////////////
+ // Mute / Unmute
+ //////////////////////////////////////////////////////////////////////////*/
+
+ public void onMuteUnmuteButtonClicled(){
+ if (DEBUG) Log.d(TAG, "onMuteUnmuteButtonClicled() called");
+
+ if (simpleExoPlayer.getVolume() != 0) {
+ simpleExoPlayer.setVolume(0);
+ }
+ else {
+ simpleExoPlayer.setVolume(1);
+ }
+ }
/*//////////////////////////////////////////////////////////////////////////
// Progress Updates
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 3340f110723..18412b6cdc3 100644
--- a/app/src/main/java/org/schabi/newpipe/player/MainVideoPlayer.java
+++ b/app/src/main/java/org/schabi/newpipe/player/MainVideoPlayer.java
@@ -40,6 +40,7 @@
import androidx.core.app.ActivityCompat;
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.content.res.AppCompatResources;
+import androidx.core.content.ContextCompat;
import androidx.recyclerview.widget.RecyclerView;
import androidx.recyclerview.widget.ItemTouchHelper;
import android.util.DisplayMetrics;
@@ -446,6 +447,7 @@ private class VideoPlayerImpl extends VideoPlayer {
private ImageButton toggleOrientationButton;
private ImageButton switchPopupButton;
private ImageButton switchBackgroundButton;
+ private ImageButton muteButton;
private RelativeLayout windowRootLayout;
private View secondaryControls;
@@ -482,6 +484,7 @@ public void initViews(View rootView) {
this.shareButton = rootView.findViewById(R.id.share);
this.toggleOrientationButton = rootView.findViewById(R.id.toggleOrientation);
this.switchBackgroundButton = rootView.findViewById(R.id.switchBackground);
+ this.muteButton = rootView.findViewById(R.id.switchMute);
this.switchPopupButton = rootView.findViewById(R.id.switchPopup);
this.queueLayout = findViewById(R.id.playQueuePanel);
@@ -533,6 +536,7 @@ public void initListeners() {
shareButton.setOnClickListener(this);
toggleOrientationButton.setOnClickListener(this);
switchBackgroundButton.setOnClickListener(this);
+ muteButton.setOnClickListener(this);
switchPopupButton.setOnClickListener(this);
getRootView().addOnLayoutChangeListener((view, l, t, r, b, ol, ot, or, ob) -> {
@@ -670,6 +674,21 @@ public void onPlayBackgroundButtonClicked() {
destroy();
finish();
}
+ @Override
+ public void onMuteUnmuteButtonClicled() {
+ super.onMuteUnmuteButtonClicled();
+ setMuteIcon();
+ }
+
+ public void setMuteIcon() {
+ if (simpleExoPlayer.getVolume() == 0){
+ muteButton.setColorFilter(ContextCompat.getColor(context, R.color.white));
+ }
+
+ else {
+ muteButton.setColorFilter(ContextCompat.getColor(context, R.color.gray));
+ }
+ }
@Override
@@ -708,6 +727,9 @@ public void onClick(View v) {
} else if (v.getId() == switchBackgroundButton.getId()) {
onPlayBackgroundButtonClicked();
+ } else if (v.getId() == muteButton.getId()) {
+ onMuteUnmuteButtonClicled();
+
} else if (v.getId() == closeButton.getId()) {
onPlaybackShutdown();
return;
From cc559dc9ce181fef19946667bfe4a9b5e827ee8d Mon Sep 17 00:00:00 2001
From: karol
Date: Sun, 23 Feb 2020 22:55:34 +0100
Subject: [PATCH 010/195] isMuted() added
---
.../java/org/schabi/newpipe/player/BasePlayer.java | 10 ++++------
1 file changed, 4 insertions(+), 6 deletions(-)
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 79496388c96..2fe04c9d1da 100644
--- a/app/src/main/java/org/schabi/newpipe/player/BasePlayer.java
+++ b/app/src/main/java/org/schabi/newpipe/player/BasePlayer.java
@@ -538,13 +538,11 @@ public void onShuffleClicked() {
public void onMuteUnmuteButtonClicled(){
if (DEBUG) Log.d(TAG, "onMuteUnmuteButtonClicled() called");
+ simpleExoPlayer.setVolume(isMuted() ? 1 : 0);
+ }
- if (simpleExoPlayer.getVolume() != 0) {
- simpleExoPlayer.setVolume(0);
- }
- else {
- simpleExoPlayer.setVolume(1);
- }
+ public boolean isMuted(){
+ return simpleExoPlayer.getVolume() == 0;
}
/*//////////////////////////////////////////////////////////////////////////
From 2a63f2a3a633b18d87f4874f11d6961ad2e5a907 Mon Sep 17 00:00:00 2001
From: karol
Date: Sun, 23 Feb 2020 23:31:30 +0100
Subject: [PATCH 011/195] mute-buton in queue layout and logic, but no icon
change
---
.../newpipe/player/ServicePlayerActivity.java | 8 +++++-
.../activity_player_queue_control.xml | 27 ++++++++++++++-----
.../layout/activity_player_queue_control.xml | 18 ++++++++++++-
3 files changed, 44 insertions(+), 9 deletions(-)
diff --git a/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java b/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
index 7aa2be05d24..034746a2b9f 100644
--- a/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
+++ b/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
@@ -83,6 +83,7 @@ public abstract class ServicePlayerActivity extends AppCompatActivity
private TextView seekDisplay;
private ImageButton repeatButton;
+ private ImageButton muteButton;
private ImageButton backwardButton;
private ImageButton playPauseButton;
private ImageButton forwardButton;
@@ -305,6 +306,7 @@ private void buildSeekBar() {
private void buildControls() {
repeatButton = rootView.findViewById(R.id.control_repeat);
+ muteButton = rootView.findViewById(R.id.control_mute);
backwardButton = rootView.findViewById(R.id.control_backward);
playPauseButton = rootView.findViewById(R.id.control_play_pause);
forwardButton = rootView.findViewById(R.id.control_forward);
@@ -314,6 +316,7 @@ private void buildControls() {
progressBar = rootView.findViewById(R.id.control_progress_bar);
repeatButton.setOnClickListener(this);
+ muteButton.setOnClickListener(this);
backwardButton.setOnClickListener(this);
playPauseButton.setOnClickListener(this);
forwardButton.setOnClickListener(this);
@@ -446,6 +449,9 @@ public void onClick(View view) {
if (view.getId() == repeatButton.getId()) {
player.onRepeatClicked();
+ } else if (view.getId() == muteButton.getId()) {
+ player.onMuteUnmuteButtonClicled();
+
} else if (view.getId() == backwardButton.getId()) {
player.onPlayPrevious();
@@ -661,7 +667,7 @@ private void onPlayModeChanged(final int repeatMode, final boolean shuffled) {
final int shuffleAlpha = shuffled ? 255 : 77;
shuffleButton.setImageAlpha(shuffleAlpha);
}
-
+
private void onPlaybackParameterChanged(final PlaybackParameters parameters) {
if (parameters != null) {
playbackSpeedButton.setText(formatSpeed(parameters.speed));
diff --git a/app/src/main/res/layout-land/activity_player_queue_control.xml b/app/src/main/res/layout-land/activity_player_queue_control.xml
index 6468c6784bd..0277c28b522 100644
--- a/app/src/main/res/layout-land/activity_player_queue_control.xml
+++ b/app/src/main/res/layout-land/activity_player_queue_control.xml
@@ -192,7 +192,7 @@
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_centerVertical="true"
- android:layout_toLeftOf="@+id/control_repeat"
+ android:layout_toLeftOf="@+id/control_mute"
android:gravity="center"
android:minWidth="50dp"
android:text="1x"
@@ -201,13 +201,30 @@
android:background="?attr/selectableItemBackground"
tools:ignore="HardcodedText,RtlHardcoded"/>
+
+
-
+
+
Date: Sun, 23 Feb 2020 23:44:16 +0100
Subject: [PATCH 012/195] icon change implemented in queque
---
.../schabi/newpipe/player/BackgroundPlayer.java | 6 ++++++
.../schabi/newpipe/player/PopupVideoPlayer.java | 6 ++++++
.../newpipe/player/ServicePlayerActivity.java | 14 +++++++++++++-
3 files changed, 25 insertions(+), 1 deletion(-)
diff --git a/app/src/main/java/org/schabi/newpipe/player/BackgroundPlayer.java b/app/src/main/java/org/schabi/newpipe/player/BackgroundPlayer.java
index 9e23d9145f2..25a9f3be3d5 100644
--- a/app/src/main/java/org/schabi/newpipe/player/BackgroundPlayer.java
+++ b/app/src/main/java/org/schabi/newpipe/player/BackgroundPlayer.java
@@ -398,6 +398,12 @@ public void onShuffleClicked() {
updatePlayback();
}
+ @Override
+ public void onMuteUnmuteButtonClicled() {
+ super.onMuteUnmuteButtonClicled();
+ updatePlayback();
+ }
+
@Override
public void onUpdateProgress(int currentProgress, int duration, int bufferPercent) {
updateProgress(currentProgress, duration, bufferPercent);
diff --git a/app/src/main/java/org/schabi/newpipe/player/PopupVideoPlayer.java b/app/src/main/java/org/schabi/newpipe/player/PopupVideoPlayer.java
index fc14e8d5102..88d2279361f 100644
--- a/app/src/main/java/org/schabi/newpipe/player/PopupVideoPlayer.java
+++ b/app/src/main/java/org/schabi/newpipe/player/PopupVideoPlayer.java
@@ -607,6 +607,12 @@ public void onShuffleClicked() {
updatePlayback();
}
+ @Override
+ public void onMuteUnmuteButtonClicled() {
+ super.onMuteUnmuteButtonClicled();
+ updatePlayback();
+ }
+
@Override
public void onUpdateProgress(int currentProgress, int duration, int bufferPercent) {
updateProgress(currentProgress, duration, bufferPercent);
diff --git a/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java b/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
index 034746a2b9f..a3d8dde8d00 100644
--- a/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
+++ b/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
@@ -7,6 +7,7 @@
import android.os.IBinder;
import android.provider.Settings;
import androidx.appcompat.app.AppCompatActivity;
+import androidx.core.content.ContextCompat;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import androidx.appcompat.widget.Toolbar;
@@ -22,6 +23,7 @@
import android.widget.ProgressBar;
import android.widget.SeekBar;
import android.widget.TextView;
+import android.widget.Toast;
import com.google.android.exoplayer2.PlaybackParameters;
import com.google.android.exoplayer2.Player;
@@ -560,6 +562,7 @@ public void onPlaybackUpdate(int state, int repeatMode, boolean shuffled, Playba
onPlayModeChanged(repeatMode, shuffled);
onPlaybackParameterChanged(parameters);
onMaybePlaybackAdapterChanged();
+ onMaybeMuteChanged();
}
@Override
@@ -667,7 +670,7 @@ private void onPlayModeChanged(final int repeatMode, final boolean shuffled) {
final int shuffleAlpha = shuffled ? 255 : 77;
shuffleButton.setImageAlpha(shuffleAlpha);
}
-
+
private void onPlaybackParameterChanged(final PlaybackParameters parameters) {
if (parameters != null) {
playbackSpeedButton.setText(formatSpeed(parameters.speed));
@@ -682,4 +685,13 @@ private void onMaybePlaybackAdapterChanged() {
itemsList.setAdapter(maybeNewAdapter);
}
}
+
+ private void onMaybeMuteChanged(){
+ if (player.isMuted()) {
+ muteButton.setColorFilter(ContextCompat.getColor(getApplicationContext(), R.color.white));
+ }
+ else {
+ muteButton.setColorFilter(ContextCompat.getColor(getApplicationContext(), R.color.gray));
+ }
+ }
}
From 01c1fa0393df8e856129b59b0869ddfb1128d0ee Mon Sep 17 00:00:00 2001
From: poolitzer <25934244+poolitzer@users.noreply.github.com>
Date: Sun, 23 Feb 2020 16:16:18 -0800
Subject: [PATCH 013/195] B0pol suggested improvements
---
.github/ISSUE_TEMPLATE/bug_report.md | 8 +++++---
.github/ISSUE_TEMPLATE/feature_request.md | 5 +++++
.github/PULL_REQUEST_TEMPLATE.md | 14 +++++++++-----
3 files changed, 19 insertions(+), 8 deletions(-)
diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md
index 32fa3e03ead..d4e0ea9b733 100644
--- a/.github/ISSUE_TEMPLATE/bug_report.md
+++ b/.github/ISSUE_TEMPLATE/bug_report.md
@@ -16,9 +16,10 @@ To make it easier for us to help you please enter detailed information below.
Please note, we only support the latest version of NewPipe and
master branch. Please make sure to upgrade & recreate the issue on the latest
-version prior to opening an issue. The release page (https://github.com/TeamNewPipe/NewPipe/releases/latest) is a good start, make sure its version is the same as in you app (left sidebar, about)
+version prior to opening an issue. The release page (https://github.com/TeamNewPipe/NewPipe/releases/latest) is a good start, make sure its version is the same as in you app (To check you version, press on the three line menu on the left, click on "About", and you will see your current version.)
-->
### Steps to reproduce
+
Steps to reproduce the behavior:
1. Go to '...'
2. Press on '....'
@@ -34,5 +35,6 @@ Tell us what happens instead
If applicable, add screenshots or a screen recording to help explain your problem. Github should support uploading them directly in the issue field. If your file is too big, feel free to paste a link from a image/video hoster here instead.
### Logs
-If your bug includes a crash, please head over to the [incredible bugreport to markdown converter](https://teamnewpipe.github.io/CrashReportToMarkdown/). Copy the result. Paste it between the code tags:
-here
+If your bug includes a crash, please head over to the [incredible bugreport to markdown converter](https://teamnewpipe.github.io/CrashReportToMarkdown/). Copy the result. Paste it here:
+
+
diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md
index a0bde3dc0c4..e39fc5f0731 100644
--- a/.github/ISSUE_TEMPLATE/feature_request.md
+++ b/.github/ISSUE_TEMPLATE/feature_request.md
@@ -22,3 +22,8 @@ Ex. *I considered Z, but that didn't work because...*
#### Additional context
Add any other context or screenshots about the feature request here.
Ex. *Here's a photo of my cat!*
+
+#### Why do you/everyone wants this feature
+Convince us! How does it change your NewPipe experience and/or your life?
+The better this paragraph is, the more likely a developer will think about developing it
+
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
index ea06e601a82..570d0777823 100644
--- a/.github/PULL_REQUEST_TEMPLATE.md
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -1,15 +1,19 @@
-
+
-#### long description of the changes in your PR
+#### What is it?
+- [ ] Bug fix
+- [ ] Feature
+
+#### Long description of the changes in your PR
*Now you can make videos*
#### Fixes the following issue(s)
-- #1234
+-
#### Relies on the following changes
-
-- #1234
+
+-
#### Testing apk
From 1d9ffffc497108614a18b877f9017d12d053187f Mon Sep 17 00:00:00 2001
From: poolitzer <25934244+Poolitzer@users.noreply.github.com>
Date: Mon, 24 Feb 2020 14:18:48 -0800
Subject: [PATCH 014/195] Minor improvements
---
.github/ISSUE_TEMPLATE/bug_report.md | 9 +++++----
.github/ISSUE_TEMPLATE/feature_request.md | 13 +++++++------
.github/PULL_REQUEST_TEMPLATE.md | 2 +-
3 files changed, 13 insertions(+), 11 deletions(-)
diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md
index d4e0ea9b733..8b5f10f08ef 100644
--- a/.github/ISSUE_TEMPLATE/bug_report.md
+++ b/.github/ISSUE_TEMPLATE/bug_report.md
@@ -15,8 +15,9 @@ Use this template to notify us if you found a bug.
To make it easier for us to help you please enter detailed information below.
Please note, we only support the latest version of NewPipe and
-master branch. Please make sure to upgrade & recreate the issue on the latest
-version prior to opening an issue. The release page (https://github.com/TeamNewPipe/NewPipe/releases/latest) is a good start, make sure its version is the same as in you app (To check you version, press on the three line menu on the left, click on "About", and you will see your current version.)
+master branch. Please make sure to upgrade & recreate the issue on the latest version prior to opening an issue. The release page (https://github.com/TeamNewPipe/NewPipe/releases/latest) is a good start, make sure its version is the same as in you app (To check you version, press on the three line menu on the left, click on "About", and you will see your current version).
+
+P.S.: Our [contribution guidelines](https://github.com/TeamNewPipe/NewPipe/blob/HEAD/.github/CONTRIBUTING.md) might be a nice document to read before you fill out the report :)
-->
### Steps to reproduce
@@ -29,7 +30,7 @@ Steps to reproduce the behavior:
Tell us what you expected to happen.
### Actual behaviour
-Tell us what happens instead
+Tell us what happens instead.
### Screenshots/-recording
If applicable, add screenshots or a screen recording to help explain your problem. Github should support uploading them directly in the issue field. If your file is too big, feel free to paste a link from a image/video hoster here instead.
@@ -37,4 +38,4 @@ If applicable, add screenshots or a screen recording to help explain your proble
### Logs
If your bug includes a crash, please head over to the [incredible bugreport to markdown converter](https://teamnewpipe.github.io/CrashReportToMarkdown/). Copy the result. Paste it here:
-
+
diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md
index e39fc5f0731..8453f99ba1c 100644
--- a/.github/ISSUE_TEMPLATE/feature_request.md
+++ b/.github/ISSUE_TEMPLATE/feature_request.md
@@ -6,24 +6,25 @@ labels: enhancement
assignees: ''
---
-
+
#### Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is.
-Ex. *I want to do X, but there is no way to do it.*
+Example: *I want to do X, but there is no way to do it.*
#### Describe the solution you'd like
A clear and concise description of what you want to happen.
-Ex. *I think it would be nice if you would add feature Y so it will make it easier.*
+Example: *I think it would be nice if you would add feature Y so it will make it easier.*
#### Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
-Ex. *I considered Z, but that didn't work because...*
+Example: *I considered Z, but that didn't work because...*
#### Additional context
Add any other context or screenshots about the feature request here.
-Ex. *Here's a photo of my cat!*
+Example: *Here's a photo of my cat!*
#### Why do you/everyone wants this feature
Convince us! How does it change your NewPipe experience and/or your life?
-The better this paragraph is, the more likely a developer will think about developing it
+The better this paragraph is, the more likely a developer will think about developing it.
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
index 570d0777823..43a6c0c4db3 100644
--- a/.github/PULL_REQUEST_TEMPLATE.md
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -16,7 +16,7 @@
-
#### Testing apk
-
+
debug.zip
#### Agreement
From d9a8e4d7971b6ed63bcd42d7318faa7ac0ee843a Mon Sep 17 00:00:00 2001
From: Poolitzer <25934244+Poolitzer@users.noreply.github.com>
Date: Wed, 26 Feb 2020 19:50:11 -0800
Subject: [PATCH 015/195] NewPipe is an app though :(
And its our app!
Co-Authored-By: Tobias Groza
---
.github/PULL_REQUEST_TEMPLATE.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
index 43a6c0c4db3..978adc1002f 100644
--- a/.github/PULL_REQUEST_TEMPLATE.md
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -1,4 +1,4 @@
-
+
#### What is it?
- [ ] Bug fix
From 40f54aea5353cdcfc52a533665a5d495364c3a91 Mon Sep 17 00:00:00 2001
From: karol
Date: Thu, 27 Feb 2020 22:30:18 +0100
Subject: [PATCH 016/195] mute intent send between main-bckgrnd-popup players
---
.../newpipe/player/BackgroundPlayer.java | 12 +++++-------
.../org/schabi/newpipe/player/BasePlayer.java | 18 ++++++++++++------
.../schabi/newpipe/player/MainVideoPlayer.java | 8 +++++---
.../newpipe/player/PopupVideoPlayer.java | 3 ++-
.../newpipe/player/ServicePlayerActivity.java | 3 ++-
.../schabi/newpipe/util/NavigationHelper.java | 6 ++++--
6 files changed, 30 insertions(+), 20 deletions(-)
diff --git a/app/src/main/java/org/schabi/newpipe/player/BackgroundPlayer.java b/app/src/main/java/org/schabi/newpipe/player/BackgroundPlayer.java
index 25a9f3be3d5..b020f234b21 100644
--- a/app/src/main/java/org/schabi/newpipe/player/BackgroundPlayer.java
+++ b/app/src/main/java/org/schabi/newpipe/player/BackgroundPlayer.java
@@ -30,16 +30,16 @@
import android.graphics.Bitmap;
import android.os.Build;
import android.os.IBinder;
-import androidx.annotation.NonNull;
-import androidx.annotation.Nullable;
-import androidx.annotation.RequiresApi;
-import androidx.core.app.NotificationCompat;
-
import android.preference.PreferenceManager;
import android.util.Log;
import android.view.View;
import android.widget.RemoteViews;
+import androidx.annotation.NonNull;
+import androidx.annotation.Nullable;
+import androidx.annotation.RequiresApi;
+import androidx.core.app.NotificationCompat;
+
import com.google.android.exoplayer2.PlaybackParameters;
import com.google.android.exoplayer2.Player;
import com.google.android.exoplayer2.source.MediaSource;
@@ -341,7 +341,6 @@ public void initPlayer(boolean playOnReady) {
@Override
public void handleIntent(final Intent intent) {
super.handleIntent(intent);
-
resetNotification();
if (bigNotRemoteView != null)
bigNotRemoteView.setProgressBar(R.id.notificationProgressBar, 100, 0, false);
@@ -389,7 +388,6 @@ public void onLoadingFailed(String imageUri, View view, FailReason failReason) {
@Override
public void onPrepared(boolean playWhenReady) {
super.onPrepared(playWhenReady);
- simpleExoPlayer.setVolume(1f);
}
@Override
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 2fe04c9d1da..ce2f94e0d58 100644
--- a/app/src/main/java/org/schabi/newpipe/player/BasePlayer.java
+++ b/app/src/main/java/org/schabi/newpipe/player/BasePlayer.java
@@ -153,6 +153,8 @@ public abstract class BasePlayer implements
public static final String START_PAUSED = "start_paused";
@NonNull
public static final String SELECT_ON_APPEND = "select_on_append";
+ @NonNull
+ public static final String IS_MUTED = "is_muted";
/*//////////////////////////////////////////////////////////////////////////
// Playback
@@ -275,6 +277,7 @@ public void handleIntent(Intent intent) {
final float playbackPitch = intent.getFloatExtra(PLAYBACK_PITCH, getPlaybackPitch());
final boolean playbackSkipSilence = intent.getBooleanExtra(PLAYBACK_SKIP_SILENCE,
getPlaybackSkipSilence());
+ final boolean isMuted = intent.getBooleanExtra(IS_MUTED, isMuted());
// seek to timestamp if stream is already playing
if (simpleExoPlayer != null
@@ -283,7 +286,7 @@ public void handleIntent(Intent intent) {
&& playQueue.getItem() != null
&& queue.getItem().getUrl().equals(playQueue.getItem().getUrl())
&& queue.getItem().getRecoveryPosition() != PlayQueueItem.RECOVERY_UNSET
- ) {
+ ) {
simpleExoPlayer.seekTo(playQueue.getIndex(), queue.getItem().getRecoveryPosition());
return;
@@ -293,7 +296,7 @@ public void handleIntent(Intent intent) {
stateLoader = recordManager.loadStreamState(item)
.observeOn(AndroidSchedulers.mainThread())
.doFinally(() -> initPlayback(queue, repeatMode, playbackSpeed, playbackPitch, playbackSkipSilence,
- /*playOnInit=*/true))
+ /*playOnInit=*/true, isMuted))
.subscribe(
state -> queue.setRecovery(queue.getIndex(), state.getProgressTime()),
error -> {
@@ -306,7 +309,7 @@ public void handleIntent(Intent intent) {
}
// Good to go...
initPlayback(queue, repeatMode, playbackSpeed, playbackPitch, playbackSkipSilence,
- /*playOnInit=*/!intent.getBooleanExtra(START_PAUSED, false));
+ /*playOnInit=*/!intent.getBooleanExtra(START_PAUSED, false), isMuted);
}
protected void initPlayback(@NonNull final PlayQueue queue,
@@ -314,7 +317,8 @@ protected void initPlayback(@NonNull final PlayQueue queue,
final float playbackSpeed,
final float playbackPitch,
final boolean playbackSkipSilence,
- final boolean playOnReady) {
+ final boolean playOnReady,
+ final boolean isMuted) {
destroyPlayer();
initPlayer(playOnReady);
setRepeatMode(repeatMode);
@@ -327,6 +331,8 @@ protected void initPlayback(@NonNull final PlayQueue queue,
if (playQueueAdapter != null) playQueueAdapter.dispose();
playQueueAdapter = new PlayQueueAdapter(context, playQueue);
+
+ if (isMuted) simpleExoPlayer.setVolume(0);
}
public void destroyPlayer() {
@@ -536,12 +542,12 @@ public void onShuffleClicked() {
// Mute / Unmute
//////////////////////////////////////////////////////////////////////////*/
- public void onMuteUnmuteButtonClicled(){
+ public void onMuteUnmuteButtonClicled() {
if (DEBUG) Log.d(TAG, "onMuteUnmuteButtonClicled() called");
simpleExoPlayer.setVolume(isMuted() ? 1 : 0);
}
- public boolean isMuted(){
+ public boolean isMuted() {
return simpleExoPlayer.getVolume() == 0;
}
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 18412b6cdc3..0f7a7dcf912 100644
--- a/app/src/main/java/org/schabi/newpipe/player/MainVideoPlayer.java
+++ b/app/src/main/java/org/schabi/newpipe/player/MainVideoPlayer.java
@@ -219,7 +219,7 @@ protected void onResume() {
playerImpl.setPlaybackQuality(playerState.getPlaybackQuality());
playerImpl.initPlayback(playerState.getPlayQueue(), playerState.getRepeatMode(),
playerState.getPlaybackSpeed(), playerState.getPlaybackPitch(),
- playerState.isPlaybackSkipSilence(), playerState.wasPlaying());
+ playerState.isPlaybackSkipSilence(), playerState.wasPlaying(), playerImpl.isMuted());
}
}
@@ -642,7 +642,8 @@ public void onFullScreenButtonClicked() {
this.getPlaybackSkipSilence(),
this.getPlaybackQuality(),
false,
- !isPlaying()
+ !isPlaying(),
+ isMuted()
);
context.startService(intent);
@@ -666,7 +667,8 @@ public void onPlayBackgroundButtonClicked() {
this.getPlaybackSkipSilence(),
this.getPlaybackQuality(),
false,
- !isPlaying()
+ !isPlaying(),
+ isMuted()
);
context.startService(intent);
diff --git a/app/src/main/java/org/schabi/newpipe/player/PopupVideoPlayer.java b/app/src/main/java/org/schabi/newpipe/player/PopupVideoPlayer.java
index 88d2279361f..ff35aecb9cc 100644
--- a/app/src/main/java/org/schabi/newpipe/player/PopupVideoPlayer.java
+++ b/app/src/main/java/org/schabi/newpipe/player/PopupVideoPlayer.java
@@ -571,7 +571,8 @@ public void onFullScreenButtonClicked() {
this.getPlaybackSkipSilence(),
this.getPlaybackQuality(),
false,
- !isPlaying()
+ !isPlaying(),
+ isMuted()
);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent);
diff --git a/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java b/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
index a3d8dde8d00..bb5593f09e0 100644
--- a/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
+++ b/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
@@ -197,7 +197,8 @@ protected Intent getSwitchIntent(final Class clazz) {
this.player.getPlaybackSkipSilence(),
null,
false,
- false
+ false,
+ this.player.isMuted()
).addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
.putExtra(BasePlayer.START_PAUSED, !this.player.isPlaying());
}
diff --git a/app/src/main/java/org/schabi/newpipe/util/NavigationHelper.java b/app/src/main/java/org/schabi/newpipe/util/NavigationHelper.java
index a19aa92ae2d..98264e1bf8e 100644
--- a/app/src/main/java/org/schabi/newpipe/util/NavigationHelper.java
+++ b/app/src/main/java/org/schabi/newpipe/util/NavigationHelper.java
@@ -110,13 +110,15 @@ public static Intent getPlayerIntent(@NonNull final Context context,
final boolean playbackSkipSilence,
@Nullable final String playbackQuality,
final boolean resumePlayback,
- final boolean startPaused) {
+ final boolean startPaused,
+ final boolean isMuted) {
return getPlayerIntent(context, targetClazz, playQueue, playbackQuality, resumePlayback)
.putExtra(BasePlayer.REPEAT_MODE, repeatMode)
.putExtra(BasePlayer.PLAYBACK_SPEED, playbackSpeed)
.putExtra(BasePlayer.PLAYBACK_PITCH, playbackPitch)
.putExtra(BasePlayer.PLAYBACK_SKIP_SILENCE, playbackSkipSilence)
- .putExtra(BasePlayer.START_PAUSED, startPaused);
+ .putExtra(BasePlayer.START_PAUSED, startPaused)
+ .putExtra(BasePlayer.IS_MUTED, isMuted);
}
public static void playOnMainPlayer(final Context context, final PlayQueue queue, final boolean resumePlayback) {
From 0400fcb10609950c4b79b97ac104e0388c2aae8c Mon Sep 17 00:00:00 2001
From: karol
Date: Thu, 27 Feb 2020 23:30:17 +0100
Subject: [PATCH 017/195] mute icon in main refactored
---
.../newpipe/player/MainVideoPlayer.java | 56 +++++++++++--------
1 file changed, 33 insertions(+), 23 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 0f7a7dcf912..d7b51877162 100644
--- a/app/src/main/java/org/schabi/newpipe/player/MainVideoPlayer.java
+++ b/app/src/main/java/org/schabi/newpipe/player/MainVideoPlayer.java
@@ -34,6 +34,7 @@
import android.os.Handler;
import android.preference.PreferenceManager;
import android.provider.Settings;
+
import androidx.annotation.ColorInt;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
@@ -43,6 +44,7 @@
import androidx.core.content.ContextCompat;
import androidx.recyclerview.widget.RecyclerView;
import androidx.recyclerview.widget.ItemTouchHelper;
+
import android.util.DisplayMetrics;
import android.util.Log;
import android.util.TypedValue;
@@ -115,7 +117,8 @@ public final class MainVideoPlayer extends AppCompatActivity
private SharedPreferences defaultPreferences;
- @Nullable private PlayerState playerState;
+ @Nullable
+ private PlayerState playerState;
private boolean isInMultiWindow;
private boolean isBackPressed;
@@ -129,11 +132,13 @@ public final class MainVideoPlayer extends AppCompatActivity
protected void onCreate(@Nullable Bundle savedInstanceState) {
assureCorrectAppLanguage(this);
super.onCreate(savedInstanceState);
- if (DEBUG) Log.d(TAG, "onCreate() called with: savedInstanceState = [" + savedInstanceState + "]");
+ if (DEBUG)
+ Log.d(TAG, "onCreate() called with: savedInstanceState = [" + savedInstanceState + "]");
defaultPreferences = PreferenceManager.getDefaultSharedPreferences(this);
ThemeHelper.setTheme(this);
getWindow().setBackgroundDrawable(new ColorDrawable(Color.BLACK));
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) getWindow().setStatusBarColor(Color.BLACK);
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP)
+ getWindow().setStatusBarColor(Color.BLACK);
setVolumeControlStream(AudioManager.STREAM_MUSIC);
WindowManager.LayoutParams lp = getWindow().getAttributes();
@@ -142,7 +147,7 @@ protected void onCreate(@Nullable Bundle savedInstanceState) {
hideSystemUi();
setContentView(R.layout.activity_main_player);
- playerImpl = new VideoPlayerImpl(this);
+ playerImpl = new VideoPlayerImpl(this);
playerImpl.setup(findViewById(android.R.id.content));
if (savedInstanceState != null && savedInstanceState.get(KEY_SAVED_STATE) != null) {
@@ -247,7 +252,7 @@ protected void onSaveInstanceState(Bundle outState) {
if (playerImpl == null) return;
playerImpl.setRecovery();
- if(!playerImpl.gotDestroyed()) {
+ if (!playerImpl.gotDestroyed()) {
playerState = createPlayerState();
}
StateSaver.tryToSave(isChangingConfigurations(), null, outState, this);
@@ -395,6 +400,16 @@ protected void setShuffleButton(final ImageButton shuffleButton, final boolean s
shuffleButton.setImageAlpha(shuffleAlpha);
}
+ protected void setMuteButton(final ImageButton muteButton, final boolean isMuted) {
+ if (isMuted) {
+ muteButton.setColorFilter(ContextCompat.getColor(getApplicationContext(), R.color.white));
+ } else {
+ muteButton.setColorFilter(ContextCompat.getColor(getApplicationContext(), R.color.gray));
+
+ }
+ }
+
+
private boolean isInMultiWindow() {
return Build.VERSION.SDK_INT >= Build.VERSION_CODES.N && isInMultiWindowMode();
}
@@ -494,7 +509,7 @@ public void initViews(View rootView) {
titleTextView.setSelected(true);
channelTextView.setSelected(true);
boolean showKodiButton = PreferenceManager.getDefaultSharedPreferences(this.context).getBoolean(
- this.context.getString(R.string.show_play_with_kodi_key), false);
+ this.context.getString(R.string.show_play_with_kodi_key), false);
kodiButton.setVisibility(showKodiButton ? View.VISIBLE : View.GONE);
getRootView().setKeepScreenOn(true);
@@ -676,20 +691,11 @@ public void onPlayBackgroundButtonClicked() {
destroy();
finish();
}
+
@Override
public void onMuteUnmuteButtonClicled() {
super.onMuteUnmuteButtonClicled();
- setMuteIcon();
- }
-
- public void setMuteIcon() {
- if (simpleExoPlayer.getVolume() == 0){
- muteButton.setColorFilter(ContextCompat.getColor(context, R.color.white));
- }
-
- else {
- muteButton.setColorFilter(ContextCompat.getColor(context, R.color.gray));
- }
+ updatePlaybackButtons();
}
@@ -736,7 +742,7 @@ public void onClick(View v) {
onPlaybackShutdown();
return;
} else if (v.getId() == kodiButton.getId()) {
- onKodiShare();
+ onKodiShare();
}
if (getCurrentState() != STATE_COMPLETED) {
@@ -785,7 +791,7 @@ private void onShareClicked() {
// share video at the current time (youtube.com/watch?v=ID&t=SECONDS)
ShareUtils.shareUrl(MainVideoPlayer.this,
playerImpl.getVideoTitle(),
- playerImpl.getVideoUrl() + "&t=" + String.valueOf(playerImpl.getPlaybackSeekBar().getProgress()/1000));
+ playerImpl.getVideoUrl() + "&t=" + String.valueOf(playerImpl.getPlaybackSeekBar().getProgress() / 1000));
}
private void onScreenRotationClicked() {
@@ -978,6 +984,7 @@ private void updatePlaybackButtons() {
setRepeatModeButton(repeatButton, getRepeatMode());
setShuffleButton(shuffleButton, playQueue.isShuffled());
+ setMuteButton(muteButton, playerImpl.isMuted());
}
private void buildQueue() {
@@ -1018,7 +1025,7 @@ public void onMove(int sourceIndex, int targetIndex) {
@Override
public void onSwiped(int index) {
- if(index != -1) playQueue.remove(index);
+ if (index != -1) playQueue.remove(index);
}
};
}
@@ -1097,7 +1104,8 @@ private class PlayerGestureListener extends GestureDetector.SimpleOnGestureListe
@Override
public boolean onDoubleTap(MotionEvent e) {
- if (DEBUG) Log.d(TAG, "onDoubleTap() called with: e = [" + e + "]" + "rawXy = " + e.getRawX() + ", " + e.getRawY() + ", xy = " + e.getX() + ", " + e.getY());
+ if (DEBUG)
+ Log.d(TAG, "onDoubleTap() called with: e = [" + e + "]" + "rawXy = " + e.getRawX() + ", " + e.getRawY() + ", xy = " + e.getX() + ", " + e.getY());
if (e.getX() > playerImpl.getRootView().getWidth() * 2 / 3) {
playerImpl.onFastForward();
@@ -1193,7 +1201,8 @@ public boolean onScroll(MotionEvent initialEvent, MotionEvent movingEvent, float
layoutParams.screenBrightness = currentProgressPercent;
getWindow().setAttributes(layoutParams);
- if (DEBUG) Log.d(TAG, "onScroll().brightnessControl, currentBrightness = " + currentProgressPercent);
+ if (DEBUG)
+ Log.d(TAG, "onScroll().brightnessControl, currentBrightness = " + currentProgressPercent);
final int resId =
currentProgressPercent < 0.25 ? R.drawable.ic_brightness_low_white_72dp
@@ -1232,7 +1241,8 @@ private void onScrollEnd() {
@Override
public boolean onTouch(View v, MotionEvent event) {
//noinspection PointlessBooleanExpression
- if (DEBUG && false) Log.d(TAG, "onTouch() called with: v = [" + v + "], event = [" + event + "]");
+ if (DEBUG && false)
+ Log.d(TAG, "onTouch() called with: v = [" + v + "], event = [" + event + "]");
gestureDetector.onTouchEvent(event);
if (event.getAction() == MotionEvent.ACTION_UP && isMoving) {
isMoving = false;
From 46165f4a4f38353edebad49790f36717d9f3ae76 Mon Sep 17 00:00:00 2001
From: poolitzer <25934244+poolitzer@users.noreply.github.com>
Date: Fri, 28 Feb 2020 15:32:14 -0800
Subject: [PATCH 018/195] adding version section to bug report
---
.github/ISSUE_TEMPLATE/bug_report.md | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md
index d4e0ea9b733..ad436f64f2a 100644
--- a/.github/ISSUE_TEMPLATE/bug_report.md
+++ b/.github/ISSUE_TEMPLATE/bug_report.md
@@ -18,6 +18,11 @@ Please note, we only support the latest version of NewPipe and
master branch. Please make sure to upgrade & recreate the issue on the latest
version prior to opening an issue. The release page (https://github.com/TeamNewPipe/NewPipe/releases/latest) is a good start, make sure its version is the same as in you app (To check you version, press on the three line menu on the left, click on "About", and you will see your current version.)
-->
+### Version
+
+-
+
+
### Steps to reproduce
Steps to reproduce the behavior:
From ee75909c80d399d03d548127ecc2454740ae5b51 Mon Sep 17 00:00:00 2001
From: karol
Date: Sun, 1 Mar 2020 13:02:20 +0100
Subject: [PATCH 019/195] set mute button in main player from other player
---
.../java/org/schabi/newpipe/player/MainVideoPlayer.java | 8 ++++++--
1 file changed, 6 insertions(+), 2 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 d7b51877162..cad165ab657 100644
--- a/app/src/main/java/org/schabi/newpipe/player/MainVideoPlayer.java
+++ b/app/src/main/java/org/schabi/newpipe/player/MainVideoPlayer.java
@@ -695,7 +695,7 @@ public void onPlayBackgroundButtonClicked() {
@Override
public void onMuteUnmuteButtonClicled() {
super.onMuteUnmuteButtonClicled();
- updatePlaybackButtons();
+ setMuteButton(muteButton, playerImpl.isMuted());
}
@@ -785,6 +785,7 @@ private void onMoreOptionsClicked() {
animateView(secondaryControls, SLIDE_AND_ALPHA, !isMoreControlsVisible,
DEFAULT_CONTROLS_DURATION);
showControls(DEFAULT_CONTROLS_DURATION);
+ setMuteButton(muteButton, playerImpl.isMuted());
}
private void onShareClicked() {
@@ -984,7 +985,6 @@ private void updatePlaybackButtons() {
setRepeatModeButton(repeatButton, getRepeatMode());
setShuffleButton(shuffleButton, playQueue.isShuffled());
- setMuteButton(muteButton, playerImpl.isMuted());
}
private void buildQueue() {
@@ -1090,6 +1090,10 @@ public ImageButton getRepeatButton() {
return repeatButton;
}
+ public ImageButton getMuteButton() {
+ return muteButton;
+ }
+
public ImageButton getPlayPauseButton() {
return playPauseButton;
}
From a6fcb70d1275e8a1fbc3f712b9152233b1fe8bb1 Mon Sep 17 00:00:00 2001
From: karol
Date: Sun, 1 Mar 2020 16:42:46 +0100
Subject: [PATCH 020/195] fix typo
---
.../java/org/schabi/newpipe/player/BackgroundPlayer.java | 4 ++--
app/src/main/java/org/schabi/newpipe/player/BasePlayer.java | 2 +-
.../java/org/schabi/newpipe/player/MainVideoPlayer.java | 6 +++---
.../java/org/schabi/newpipe/player/PopupVideoPlayer.java | 4 ++--
.../org/schabi/newpipe/player/ServicePlayerActivity.java | 3 +--
5 files changed, 9 insertions(+), 10 deletions(-)
diff --git a/app/src/main/java/org/schabi/newpipe/player/BackgroundPlayer.java b/app/src/main/java/org/schabi/newpipe/player/BackgroundPlayer.java
index b020f234b21..dbf27ea7c0b 100644
--- a/app/src/main/java/org/schabi/newpipe/player/BackgroundPlayer.java
+++ b/app/src/main/java/org/schabi/newpipe/player/BackgroundPlayer.java
@@ -397,8 +397,8 @@ public void onShuffleClicked() {
}
@Override
- public void onMuteUnmuteButtonClicled() {
- super.onMuteUnmuteButtonClicled();
+ public void onMuteUnmuteButtonClicked() {
+ super.onMuteUnmuteButtonClicked();
updatePlayback();
}
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 ce2f94e0d58..adffefa6ee6 100644
--- a/app/src/main/java/org/schabi/newpipe/player/BasePlayer.java
+++ b/app/src/main/java/org/schabi/newpipe/player/BasePlayer.java
@@ -542,7 +542,7 @@ public void onShuffleClicked() {
// Mute / Unmute
//////////////////////////////////////////////////////////////////////////*/
- public void onMuteUnmuteButtonClicled() {
+ public void onMuteUnmuteButtonClicked() {
if (DEBUG) Log.d(TAG, "onMuteUnmuteButtonClicled() called");
simpleExoPlayer.setVolume(isMuted() ? 1 : 0);
}
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 cad165ab657..63d95e74f48 100644
--- a/app/src/main/java/org/schabi/newpipe/player/MainVideoPlayer.java
+++ b/app/src/main/java/org/schabi/newpipe/player/MainVideoPlayer.java
@@ -693,8 +693,8 @@ public void onPlayBackgroundButtonClicked() {
}
@Override
- public void onMuteUnmuteButtonClicled() {
- super.onMuteUnmuteButtonClicled();
+ public void onMuteUnmuteButtonClicked() {
+ super.onMuteUnmuteButtonClicked();
setMuteButton(muteButton, playerImpl.isMuted());
}
@@ -736,7 +736,7 @@ public void onClick(View v) {
onPlayBackgroundButtonClicked();
} else if (v.getId() == muteButton.getId()) {
- onMuteUnmuteButtonClicled();
+ onMuteUnmuteButtonClicked();
} else if (v.getId() == closeButton.getId()) {
onPlaybackShutdown();
diff --git a/app/src/main/java/org/schabi/newpipe/player/PopupVideoPlayer.java b/app/src/main/java/org/schabi/newpipe/player/PopupVideoPlayer.java
index ff35aecb9cc..b7638eda742 100644
--- a/app/src/main/java/org/schabi/newpipe/player/PopupVideoPlayer.java
+++ b/app/src/main/java/org/schabi/newpipe/player/PopupVideoPlayer.java
@@ -609,8 +609,8 @@ public void onShuffleClicked() {
}
@Override
- public void onMuteUnmuteButtonClicled() {
- super.onMuteUnmuteButtonClicled();
+ public void onMuteUnmuteButtonClicked() {
+ super.onMuteUnmuteButtonClicked();
updatePlayback();
}
diff --git a/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java b/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
index bb5593f09e0..c0a8d2bfda5 100644
--- a/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
+++ b/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
@@ -23,7 +23,6 @@
import android.widget.ProgressBar;
import android.widget.SeekBar;
import android.widget.TextView;
-import android.widget.Toast;
import com.google.android.exoplayer2.PlaybackParameters;
import com.google.android.exoplayer2.Player;
@@ -453,7 +452,7 @@ public void onClick(View view) {
player.onRepeatClicked();
} else if (view.getId() == muteButton.getId()) {
- player.onMuteUnmuteButtonClicled();
+ player.onMuteUnmuteButtonClicked();
} else if (view.getId() == backwardButton.getId()) {
player.onPlayPrevious();
From 5257c5a0a89bf683cabf4a7cbfcb9a01f020c00b Mon Sep 17 00:00:00 2001
From: B0pol
Date: Sat, 29 Feb 2020 17:28:58 +0000
Subject: [PATCH 021/195] Translated using Weblate (Esperanto)
Currently translated at 100.0% (533 of 533 strings)
---
app/src/main/res/values-eo/strings.xml | 62 +++++++++++++-------------
1 file changed, 31 insertions(+), 31 deletions(-)
diff --git a/app/src/main/res/values-eo/strings.xml b/app/src/main/res/values-eo/strings.xml
index 4a6fcdfab65..6f7779a816a 100644
--- a/app/src/main/res/values-eo/strings.xml
+++ b/app/src/main/res/values-eo/strings.xml
@@ -38,8 +38,8 @@
Ŝatoj
Malŝatoj
Uzi la programon Tor
- Neniu elsendlflua ludilo trovita. Ĉu vi volas instali la aplikaĵon VLC\?
- La aplikaĵo Kore ne estas trovita. Ĉu instali ĝin?
+ Neniu elsendlflua ludilo trovita. Ĉu instali la aplikaĵon VLC\?
+ Ĉu instali la mankan aplikaĵon Kore\?
Montri la sekvan filmeton kaj similajn filmetojn
Ĉiuj bildetoj ne ŝargeblas
La subskribo de la ligilo de la filmeto ne malĉifreblas
@@ -58,19 +58,19 @@
Elektu lokon por konservi elŝutitajn filmetojn
Elektu lokon por konservi elŝutitajn muzikojn
Enhavo
- Signali eraron per retpoŝto
- SIGNALI
+ Signali tion eraron retpoŝte
+ Signali
Informoj:
Vian komenton (angle):
Detaloj:
Signali eraron
Filmeto
Reprovi
- Premi serĉon por komenci
+ Premi \"Serĉi\" por komenci
Neniu elsendlflua ludilo trovita (instalu VLC por ludi ĝin).
Malfermi en ŝprucfenestran modon
- Forigas aŭdon ĉe KELKAJ rezolucioj
- NewPipe ŝprucfenestran modon
+ Forigas aŭdon ĉe kelkaj rezolucioj
+ Ŝprucfenestran modon
Aboni
Abonita
Kanalo malabonita
@@ -89,7 +89,7 @@
Ludas filmeton kiam NewPipe vokas el alia programo
Defaŭlta rezolucio de la ŝprucfenestra ludilo
Montri pli altajn rezoluciojn
- Nur kelkaj aparatoj subtenas ludi 2K / 4K filmetojn
+ Nur kelkaj aparatoj povas ludi 2K / 4K filmetojn
Defaŭlta fomato de filmeto
Nigra
Memoru ŝprucfenestran grandecon kaj pozicion
@@ -100,10 +100,10 @@
Ne povis konstrui la dosierujon de elŝuto
Nunaj filmetoj ne estas ankoraŭ subtenataj
Enhavo limigita al aĝo
- Montri limigitan al aĝo filmeto. Permesanta tian materialon eblas el Parametroj.
+ Montri limigitan al aĝo filmeto. Postaj ŝanĝoj eblas ĉe la agordoj.
Ne povis tute analizi la retejon
Ne povis akiri ajnan torenton
- NUNA
+ Nuna
Elŝutoj
Elŝutoj
Erarosignalo
@@ -130,7 +130,7 @@
Ŝprucfenestro
Regrandiganta
Kontrolo de gesto de ludilo
- Uzu gestojn por kontroli la brilon kaj volumenon de la ludilo
+ Uzi gestojn por kontroli la brilon kaj volumenon
Serĉi sugestojn
Montri sugestojn kiam serĉanto
Plej bona rezolucio
@@ -138,7 +138,7 @@
Elŝuti
Leteroj kaj ciferoj
Plej specialaj karakteroj
- Rekomenci en fokusa gajno
+ Ludrekomenci
Daŭrigi la ludon post la interrompaĵoj (ekzemple telefonadoj)
Serĉa historio
Konservi la historio de serĉo lokale
@@ -156,7 +156,7 @@
Supro 50
Nova & varma
Montri la indiko « Tenu por aldoni »
- Montri indikon kiam la fona aŭ ŝprucfenestra butono estas premita en la retpaĝo de dalatadoj de la filmeto
+ Montri indikon premante la fona aŭ la ŝprucfenestra butono en filmeta \"Detaloj:\"
Viciĝita en la fona ludilo
Viciĝita en ŝprucfenestra ludilo
Ludi ĉiujn
@@ -205,7 +205,7 @@
Ne povis forviŝi ludliston.
Malcimigi
Auto-vico sekva fluo
- Aŭto-aldoni rilatan enhavon kiam ludanta la lasta enhavo en malrepetita atendovico
+ Daŭrigi finanta (malripetanta) atendovico aldonante rilata enhavo
Dosiero
Tia dosierujo ne ekzistas
Tia dosiero/enhavo ne ekzistas
@@ -246,9 +246,9 @@
Nova ongleto
Elektu ongleton
Kontrolo de volumena gesto
- Uzu gestojn por kontroli la volumon de la ludilo
+ Uzi gestojn por kontroli la volumon
Kontrolo de gesto de brilo
- Uzu gestojn por kontroli la brilon de la ludilo
+ Uzi gestojn por kontroli la brilon
Ĝisdatigoj
Dosiero forviŝita
Sciigo por ĝisdatigi apon
@@ -264,11 +264,11 @@
Eventoj
Konferencoj
Montri komentojn
- Malebligu por malvidigi komentojn
+ Malŝati por malvidigi komentojn
Aŭtoludo
- - Komentoj
-
+ - %s komento
+ - %s komentoj
Ne povis ŝarĝi komentojn
Fermi
@@ -291,8 +291,8 @@
Oni petos vin kie konservi ĉion elŝutaĵon.
\nElektu AFM se vi volas elŝuti al ekstera SD-karto
Uzu AFM
- La Atinga Framo al la Memoro ebligas elŝuti al ekstera SD-karto.
-\nKomento: kelkaj aparatoj ne kongruas
+ La \"Atinga Framo al la Memoro\" ebligas elŝuti al ekstera SD-karto.
+\nKomento: kelkaj aparatoj malkongruas
Forviŝi ludajn poziciojn
Forviŝi la totalon de ludaj pozicioj
Ĉu vi volas forviŝi ĉiujn ludajn poziciojn \?
@@ -302,7 +302,7 @@
Kio okazis:
Kio:\\nPeto:\\nEnhavlingvo:\\nServo:\\nGMT Horo:\\nPako:\\nVersio:\\nOperaciumo versio:
Aŭdio
- Permeso por atingi la konservon rifuzita
+ Permesi la konservadon unue
Uzantosignalo
Komenci
Paŭzigi
@@ -377,7 +377,7 @@
Komenci ludi ĉi tie
Komenci ludi fone
Donaci
- NewPipe estas programadita par volontuoj, elspezante tempo por alporti vin la plej bona sperto. Redoni por helpi programistojn plibonigi NewPipe dum ĝuante tason da kafo.
+ NewPipe estas programadita par volontuoj, elspezante lia tempo por alporti vin la plej bona uzanta sperto. Redoni por helpi programistojn plibonigi NewPipe dum ili ĝuas tason da kafo.
Redoni
Retejo
Viziti la retejon de NewPipe por pli da informoj kaj novaĵoj.
@@ -409,7 +409,7 @@
Zomi
Io aperos ĉi tie baldaŭ ;D
Aŭtomate generita
- Ebligi LeakCanary
+ LeakCanary
La monitorado de la memorlikadoj povas frostigi la apon dum la hejta dumpingo
Signali ekster-vivciklajn erarojn
Perforti signalante neenretigaj Rx esceptoj eksere la fragmento aŭ aktiveco vivciklo post dispono
@@ -455,10 +455,10 @@
Plirapidigi dum silentoj
Paŝo
Restarigi
- Uzante defaŭltajn ongletojn, eraro ludante savajn ongletojn
+ Ne povis legi konservitajn ongletoj, tial uzante la defaŭltajn
Restaŭri la defaŭltojn
- Ĉu vi volas restaŭri la defaŭltojn \?
- Kalkulo de abonantoj malhavebla
+ Ĉu vi volas restaŭri la defaŭltojn valorojn\?
+ Abonantoj kalkulo malhaveblas
Kioj ongletoj estas montritaj en la ĉefpaĝo
Elektaĵo
Ĝisdatigoj
@@ -486,7 +486,7 @@
La celloko-dosierujo ne povas esti kreita
La dosiero ne povas esti kreita
Permeso rifuzita kaŭze de la sistemo
- Sekura konekto malsukcesis
+ Ne povis establi sekuran konekton
Ne povis trovi la servilon
Ne povas konektiĝi al la servilo
La servilo ne sendas datumojn
@@ -519,7 +519,7 @@
Rapida antaŭen / posten daŭron
Instancoj de PeerTube
Elekti viajn preferitajn instancojn de PeerTube
- Trovu la instancojn kiu vi povus ŝati ĉe %s
+ Trovu la instancojn ke vi ŝatas ĉe %s
Aldoni instanco
Eniri la ligilon de la instanco
Ne povis validigi instanco
@@ -532,8 +532,8 @@
Reakiranta
Ne povas reakiri tion elŝuton
Elektu instancon
- Enablu bildeta filmeton ĉe ŝlosita ekrano
- Uzante la fona ludilo, bildeta filmeto vidiĝos ĉe ŝlosita ekrano
+ Bildeta filmeton ĉe ŝlosita ekrano
+ Bildeta filmeto estas montrita ĉe ŝlosita ekrano uzante la fona ludilo
Forviŝi la historion de elŝutoj
Forviŝi elŝutitajn dosierojn
%1$s elŝutoj forviŝitaj
From deafe93e6c0c6b313adcbc9bc7f0554e2851283f Mon Sep 17 00:00:00 2001
From: Igor Nedoboy
Date: Sat, 29 Feb 2020 21:30:34 +0000
Subject: [PATCH 022/195] Translated using Weblate (Russian)
Currently translated at 100.0% (533 of 533 strings)
---
app/src/main/res/values-ru/strings.xml | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/app/src/main/res/values-ru/strings.xml b/app/src/main/res/values-ru/strings.xml
index 7c7965f80fd..1a94ebb1fd8 100644
--- a/app/src/main/res/values-ru/strings.xml
+++ b/app/src/main/res/values-ru/strings.xml
@@ -552,7 +552,7 @@
Видео
- %s секунд
-
-
+
+
\ No newline at end of file
From ca2e9d4afa43c365619e58b9818a2ee7d6e2b22e Mon Sep 17 00:00:00 2001
From: B0pol
Date: Sat, 29 Feb 2020 17:51:26 +0000
Subject: [PATCH 023/195] Translated using Weblate (French)
Currently translated at 100.0% (533 of 533 strings)
---
app/src/main/res/values-fr/strings.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml
index e004a8ea171..fccfbc38776 100644
--- a/app/src/main/res/values-fr/strings.xml
+++ b/app/src/main/res/values-fr/strings.xml
@@ -428,7 +428,7 @@
Grille
Auto
Changer de vue
- Une mise à jour de NewPipe est disponible !
+ Une mise à jour de NewPipe est disponible !
Appuyer pour télécharger
Terminé
En attente
From add08ead149afc1c31328eb767ba3d40b782de6a Mon Sep 17 00:00:00 2001
From: wb9688
Date: Mon, 2 Mar 2020 17:58:48 +0100
Subject: [PATCH 024/195] Accept music.youtube.com in manifest
---
app/src/main/AndroidManifest.xml | 1 +
1 file changed, 1 insertion(+)
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 7ca04eed0b3..d0e20413738 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -146,6 +146,7 @@
+
From e7063b2c69fbfed7b28ccd8e8d0732b2b1ccef8f Mon Sep 17 00:00:00 2001
From: KOK ASiiK
Date: Mon, 2 Mar 2020 02:00:34 +0000
Subject: [PATCH 025/195] Translated using Weblate (Indonesian)
Currently translated at 100.0% (533 of 533 strings)
---
app/src/main/res/values-in/strings.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/app/src/main/res/values-in/strings.xml b/app/src/main/res/values-in/strings.xml
index 40a4e65a930..450076b3552 100644
--- a/app/src/main/res/values-in/strings.xml
+++ b/app/src/main/res/values-in/strings.xml
@@ -395,7 +395,7 @@
Nihil
Minimalkan ke pemutar latar belakang
Minimalkan ke pemutar popup
- Henti subscribe
+ Unsubscribe
Tab Baru
Pilih Tab
Tema
From 667a52427e8b8838bb24b7cdb2369eabd58b0c8a Mon Sep 17 00:00:00 2001
From: Dani Pragustia
Date: Mon, 2 Mar 2020 17:55:47 +0000
Subject: [PATCH 026/195] Translated using Weblate (Indonesian)
Currently translated at 100.0% (533 of 533 strings)
---
app/src/main/res/values-in/strings.xml | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/app/src/main/res/values-in/strings.xml b/app/src/main/res/values-in/strings.xml
index 450076b3552..4712a91d19e 100644
--- a/app/src/main/res/values-in/strings.xml
+++ b/app/src/main/res/values-in/strings.xml
@@ -228,7 +228,7 @@
Geser untuk ubah urutan
Tidak ada subscriber
- - %s subscriber
+ - %s subscribers
Belum ditonton
@@ -304,7 +304,7 @@
Diplaylist
Thumbnail playlist diubah.
Tidak bisa menghapus playlist.
- Tidak ada Takarir
+ Tanpa Teks
Pas
Isi
Perbesar
@@ -339,7 +339,7 @@
Apakah anda juga ingin mengimpor pengaturan\?
Tindakan \'buka\' yang diinginkan
Tindakan baku ketika membuka konten — %s
- Takarir
+ Teks
Ubah skala teks takarir pemutar dan gaya latar belakang. Perlu memulai ulang apl.
Pemantauan kebocoran memori dapat menyebabkan apl menjadi tidak responsif saat heap dumping
Laporkan galat out-of-lifecycle
From 92f4010e8ee16f0ebebad91e9d217fa20e2e0418 Mon Sep 17 00:00:00 2001
From: Stypox
Date: Mon, 2 Mar 2020 20:50:35 +0100
Subject: [PATCH 027/195] Add more checks to prevent build failures in gradle
branch suffix
- Add function `getGitWorkingBranch` that returns the current working branch, and "" if it could not be determined (either because git is not installed or because the directory is not a git repo).
- Make sure normalizedWorkingBranch is not empty (leading to an invalid app id terminating with `.`)
- Make normalizedWorkingBranch lowercase
- Add comments
---
app/build.gradle | 26 +++++++++++++++++++++++---
1 file changed, 23 insertions(+), 3 deletions(-)
diff --git a/app/build.gradle b/app/build.gradle
index 2329a7a0e9c..61929173ef0 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -3,6 +3,24 @@ apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'
+
+static String getGitWorkingBranch() {
+ try {
+ def gitProcess = "git rev-parse --abbrev-ref HEAD".execute()
+ gitProcess.waitFor()
+ if (gitProcess.exitValue() == 0) {
+ return gitProcess.text.trim()
+ } else {
+ // not a git repository
+ return ""
+ }
+ } catch (IOException ignored) {
+ // git was not found
+ return ""
+ }
+}
+
+
android {
compileSdkVersion 28
buildToolsVersion '28.0.3'
@@ -31,12 +49,14 @@ android {
debuggable true
// suffix the app id and the app name with git branch name
- def workingBranch = "git rev-parse --abbrev-ref HEAD".execute().text.trim()
- if (workingBranch.isEmpty() || workingBranch == "master" || workingBranch == "dev") {
+ def workingBranch = getGitWorkingBranch()
+ def normalizedWorkingBranch = workingBranch.replaceAll("[^A-Za-z]+", "").toLowerCase()
+ if (normalizedWorkingBranch.isEmpty() || workingBranch == "master" || workingBranch == "dev") {
+ // default values when branch name could not be determined or is master or dev
applicationIdSuffix ".debug"
resValue "string", "app_name", "NewPipe Debug"
} else {
- applicationIdSuffix ".debug." + workingBranch.replaceAll("[^A-Za-z]+", "")
+ applicationIdSuffix ".debug." + normalizedWorkingBranch
resValue "string", "app_name", "NewPipe " + workingBranch
}
}
From 92ee51b8db64b4ba6d4dfb22a925af2b4a37dd02 Mon Sep 17 00:00:00 2001
From: karol
Date: Mon, 2 Mar 2020 21:12:02 +0100
Subject: [PATCH 028/195] resolved issues
---
.../java/org/schabi/newpipe/player/BackgroundPlayer.java | 1 +
.../main/java/org/schabi/newpipe/player/BasePlayer.java | 2 +-
.../java/org/schabi/newpipe/player/MainVideoPlayer.java | 7 +------
.../org/schabi/newpipe/player/ServicePlayerActivity.java | 7 +------
4 files changed, 4 insertions(+), 13 deletions(-)
diff --git a/app/src/main/java/org/schabi/newpipe/player/BackgroundPlayer.java b/app/src/main/java/org/schabi/newpipe/player/BackgroundPlayer.java
index dbf27ea7c0b..4eaa2a73bf8 100644
--- a/app/src/main/java/org/schabi/newpipe/player/BackgroundPlayer.java
+++ b/app/src/main/java/org/schabi/newpipe/player/BackgroundPlayer.java
@@ -341,6 +341,7 @@ public void initPlayer(boolean playOnReady) {
@Override
public void handleIntent(final Intent intent) {
super.handleIntent(intent);
+
resetNotification();
if (bigNotRemoteView != null)
bigNotRemoteView.setProgressBar(R.id.notificationProgressBar, 100, 0, false);
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 adffefa6ee6..a71671e7b09 100644
--- a/app/src/main/java/org/schabi/newpipe/player/BasePlayer.java
+++ b/app/src/main/java/org/schabi/newpipe/player/BasePlayer.java
@@ -332,7 +332,7 @@ protected void initPlayback(@NonNull final PlayQueue queue,
if (playQueueAdapter != null) playQueueAdapter.dispose();
playQueueAdapter = new PlayQueueAdapter(context, playQueue);
- if (isMuted) simpleExoPlayer.setVolume(0);
+ simpleExoPlayer.setVolume(isMuted ? 0 : 1);
}
public void destroyPlayer() {
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 63d95e74f48..d74a739cfd8 100644
--- a/app/src/main/java/org/schabi/newpipe/player/MainVideoPlayer.java
+++ b/app/src/main/java/org/schabi/newpipe/player/MainVideoPlayer.java
@@ -401,12 +401,7 @@ protected void setShuffleButton(final ImageButton shuffleButton, final boolean s
}
protected void setMuteButton(final ImageButton muteButton, final boolean isMuted) {
- if (isMuted) {
- muteButton.setColorFilter(ContextCompat.getColor(getApplicationContext(), R.color.white));
- } else {
- muteButton.setColorFilter(ContextCompat.getColor(getApplicationContext(), R.color.gray));
-
- }
+ muteButton.setColorFilter(ContextCompat.getColor(getApplicationContext(), isMuted ? R.color.white : R.color.gray));
}
diff --git a/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java b/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
index c0a8d2bfda5..10b202e4c5d 100644
--- a/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
+++ b/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
@@ -687,11 +687,6 @@ private void onMaybePlaybackAdapterChanged() {
}
private void onMaybeMuteChanged(){
- if (player.isMuted()) {
- muteButton.setColorFilter(ContextCompat.getColor(getApplicationContext(), R.color.white));
- }
- else {
- muteButton.setColorFilter(ContextCompat.getColor(getApplicationContext(), R.color.gray));
- }
+ muteButton.setColorFilter(ContextCompat.getColor(getApplicationContext(), player.isMuted() ? R.color.white : R.color.gray));
}
}
From 07d1faf544037de0178b368ece3ee2dd964557de Mon Sep 17 00:00:00 2001
From: bopol
Date: Wed, 12 Feb 2020 02:05:34 +0100
Subject: [PATCH 029/195] Links support for mediaccc and shortened invidious
---
app/build.gradle | 2 +-
app/src/main/AndroidManifest.xml | 21 ++++++++++++++++++++-
2 files changed, 21 insertions(+), 2 deletions(-)
diff --git a/app/build.gradle b/app/build.gradle
index 2a7e039b302..4bc36a4c765 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -63,7 +63,7 @@ dependencies {
exclude module: 'support-annotations'
})
- implementation 'com.github.TeamNewPipe:NewPipeExtractor:6446abc6d'
+ implementation 'com.github.B0pol:NewPipeExtractor:6180226'
testImplementation 'junit:junit:4.12'
testImplementation 'org.mockito:mockito-core:2.23.0'
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 7ca04eed0b3..bd3724770ef 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -247,6 +247,7 @@
+
@@ -277,8 +278,26 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
From 124340175a81f8aa244fac41f51bce4d40760b00 Mon Sep 17 00:00:00 2001
From: bopol
Date: Wed, 12 Feb 2020 20:41:59 +0100
Subject: [PATCH 030/195] remove redundant code
---
app/src/main/AndroidManifest.xml | 8 --------
1 file changed, 8 deletions(-)
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index bd3724770ef..8dfeb03cc58 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -244,15 +244,7 @@
-
-
-
-
-
-
-
-
From c79f09c119f156cddc574850f79b97a1d9eb9fb0 Mon Sep 17 00:00:00 2001
From: karol
Date: Mon, 2 Mar 2020 22:52:58 +0100
Subject: [PATCH 031/195] mute button in actionbar, no color change
---
.../org/schabi/newpipe/player/ServicePlayerActivity.java | 3 +++
app/src/main/res/menu/menu_play_queue.xml | 7 +++++++
app/src/main/res/values/strings.xml | 1 +
3 files changed, 11 insertions(+)
diff --git a/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java b/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
index 10b202e4c5d..9099c992783 100644
--- a/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
+++ b/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
@@ -164,6 +164,9 @@ public boolean onOptionsItemSelected(MenuItem item) {
case R.id.action_append_playlist:
appendAllToPlaylist();
return true;
+ case R.id.action_mute:
+ player.onMuteUnmuteButtonClicked();
+ return true;
case R.id.action_system_audio:
startActivity(new Intent(Settings.ACTION_SOUND_SETTINGS));
return true;
diff --git a/app/src/main/res/menu/menu_play_queue.xml b/app/src/main/res/menu/menu_play_queue.xml
index be6cea46cff..fc3fd07a8e0 100644
--- a/app/src/main/res/menu/menu_play_queue.xml
+++ b/app/src/main/res/menu/menu_play_queue.xml
@@ -10,6 +10,13 @@
android:visible="true"
app:showAsAction="ifRoom"/>
+
+
- Rename
Name
Add To Playlist
+ Mute
Set as Playlist Thumbnail
Bookmark Playlist
Remove Bookmark
From 840bb29c542c797123eede58c15b3482a7e47bb6 Mon Sep 17 00:00:00 2001
From: karol
Date: Tue, 3 Mar 2020 00:01:19 +0100
Subject: [PATCH 032/195] icon color change in action bar
---
.../newpipe/player/ServicePlayerActivity.java | 25 ++++++++++++++++---
.../res/drawable/ic_volume_off_gray_24dp.xml | 5 ++++
2 files changed, 26 insertions(+), 4 deletions(-)
create mode 100644 app/src/main/res/drawable/ic_volume_off_gray_24dp.xml
diff --git a/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java b/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
index 9099c992783..75107a7e411 100644
--- a/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
+++ b/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
@@ -3,15 +3,19 @@
import android.content.ComponentName;
import android.content.Intent;
import android.content.ServiceConnection;
+import android.content.res.TypedArray;
+import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.os.IBinder;
import android.provider.Settings;
+
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.content.ContextCompat;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import androidx.appcompat.widget.Toolbar;
import androidx.recyclerview.widget.ItemTouchHelper;
+
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
@@ -94,6 +98,8 @@ public abstract class ServicePlayerActivity extends AppCompatActivity
private TextView playbackSpeedButton;
private TextView playbackPitchButton;
+ private Menu menu;
+
////////////////////////////////////////////////////////////////////////////
// Abstracts
////////////////////////////////////////////////////////////////////////////
@@ -147,8 +153,10 @@ protected void onResume() {
@Override
public boolean onCreateOptionsMenu(Menu menu) {
+ this.menu = menu;
getMenuInflater().inflate(R.menu.menu_play_queue, menu);
getMenuInflater().inflate(getPlayerOptionMenuResource(), menu);
+ onMaybeMuteChanged();
return true;
}
@@ -174,8 +182,8 @@ public boolean onOptionsItemSelected(MenuItem item) {
this.player.setRecovery();
getApplicationContext().sendBroadcast(getPlayerShutdownIntent());
getApplicationContext().startActivity(
- getSwitchIntent(MainVideoPlayer.class)
- .putExtra(BasePlayer.START_PAUSED, !this.player.isPlaying())
+ getSwitchIntent(MainVideoPlayer.class)
+ .putExtra(BasePlayer.START_PAUSED, !this.player.isPlaying())
);
return true;
}
@@ -218,7 +226,7 @@ private void bind() {
}
private void unbind() {
- if(serviceBound) {
+ if (serviceBound) {
unbindService(serviceConnection);
serviceBound = false;
stopPlayerListener();
@@ -689,7 +697,16 @@ private void onMaybePlaybackAdapterChanged() {
}
}
- private void onMaybeMuteChanged(){
+ private void onMaybeMuteChanged() {
muteButton.setColorFilter(ContextCompat.getColor(getApplicationContext(), player.isMuted() ? R.color.white : R.color.gray));
+
+ if (menu != null) {
+ MenuItem item = menu.findItem(R.id.action_mute);
+ TypedArray a = getTheme().obtainStyledAttributes(R.style.Theme_AppCompat, new int[]{R.attr.volume_off});
+ int attributeResourceId = a.getResourceId(0, 0);
+ Drawable drawableMuted = getResources().getDrawable(attributeResourceId);
+ Drawable drawableUnmuted = getResources().getDrawable(R.drawable.ic_volume_off_gray_24dp);
+ item.setIcon(player.isMuted() ? drawableMuted : drawableUnmuted);
+ }
}
}
diff --git a/app/src/main/res/drawable/ic_volume_off_gray_24dp.xml b/app/src/main/res/drawable/ic_volume_off_gray_24dp.xml
new file mode 100644
index 00000000000..156ee53bb43
--- /dev/null
+++ b/app/src/main/res/drawable/ic_volume_off_gray_24dp.xml
@@ -0,0 +1,5 @@
+
+
+
From afebd9b724da0c090319d8fba53baa2f791df9f9 Mon Sep 17 00:00:00 2001
From: poolitzer <25934244+poolitzer@users.noreply.github.com>
Date: Mon, 2 Mar 2020 16:38:23 -0800
Subject: [PATCH 033/195] improvements
---
.github/ISSUE_TEMPLATE/bug_report.md | 3 +--
.github/ISSUE_TEMPLATE/feature_request.md | 2 +-
2 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md
index 188dd8b42f3..1b28d3d793d 100644
--- a/.github/ISSUE_TEMPLATE/bug_report.md
+++ b/.github/ISSUE_TEMPLATE/bug_report.md
@@ -14,8 +14,7 @@ Use this template to notify us if you found a bug.
To make it easier for us to help you please enter detailed information below.
-Please note, we only support the latest version of NewPipe and
-master branch. Please make sure to upgrade & recreate the issue on the latest version prior to opening an issue. The release page (https://github.com/TeamNewPipe/NewPipe/releases/latest) is a good start, make sure its version is the same as in you app (To check you version, press on the three line menu on the left, click on "About", and you will see your current version).
+Please note, we only support the latest version of NewPipe and master branch. Please make sure to upgrade & recreate the issue on the latest version prior to opening an issue. The release page (https://github.com/TeamNewPipe/NewPipe/releases/latest) is a good start, make sure its version is the same as in your app (to check your version, open the left drawer and click on "About").
P.S.: Our [contribution guidelines](https://github.com/TeamNewPipe/NewPipe/blob/HEAD/.github/CONTRIBUTING.md) might be a nice document to read before you fill out the report :)
-->
diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md
index 8453f99ba1c..a6262ad7b45 100644
--- a/.github/ISSUE_TEMPLATE/feature_request.md
+++ b/.github/ISSUE_TEMPLATE/feature_request.md
@@ -18,7 +18,7 @@ Example: *I think it would be nice if you would add feature Y so it will make it
#### Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
-Example: *I considered Z, but that didn't work because...*
+Example: *I considered Z, but that didn't turn out to be a good idea because...*
#### Additional context
Add any other context or screenshots about the feature request here.
From 08dffad16055b3cd889a98548dbe6efbec87a348 Mon Sep 17 00:00:00 2001
From: poolitzer <25934244+poolitzer@users.noreply.github.com>
Date: Mon, 2 Mar 2020 20:52:50 -0800
Subject: [PATCH 034/195] opus4improvements
---
.github/ISSUE_TEMPLATE/bug_report.md | 16 ++++++++--------
.github/ISSUE_TEMPLATE/feature_request.md | 8 ++++----
.github/PULL_REQUEST_TEMPLATE.md | 11 +++++++----
3 files changed, 19 insertions(+), 16 deletions(-)
diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md
index 1b28d3d793d..19e8a9fbe0a 100644
--- a/.github/ISSUE_TEMPLATE/bug_report.md
+++ b/.github/ISSUE_TEMPLATE/bug_report.md
@@ -8,23 +8,23 @@ assignees: ''
---
### Version
-
+
-
-### Steps to reproduce
-
+### Steps to reproduce the bug
+
Steps to reproduce the behavior:
1. Go to '...'
2. Press on '....'
@@ -36,10 +36,10 @@ Tell us what you expected to happen.
### Actual behaviour
Tell us what happens instead.
-### Screenshots/-recording
-If applicable, add screenshots or a screen recording to help explain your problem. Github should support uploading them directly in the issue field. If your file is too big, feel free to paste a link from a image/video hoster here instead.
+### Screenshots/Screen records
+If applicable, add screenshots or a screen recording to help explain your problem. Github should support uploading them directly in the issue field. If your file is too big, feel free to paste a link from an image/video hoster here instead.
### Logs
If your bug includes a crash, please head over to the [incredible bugreport to markdown converter](https://teamnewpipe.github.io/CrashReportToMarkdown/). Copy the result. Paste it here:
-
+
diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md
index a6262ad7b45..b461675bd69 100644
--- a/.github/ISSUE_TEMPLATE/feature_request.md
+++ b/.github/ISSUE_TEMPLATE/feature_request.md
@@ -8,13 +8,13 @@ assignees: ''
---
-#### Is your feature request related to a problem? Please describe.
+#### Is your feature request related to a problem? Please describe it
A clear and concise description of what the problem is.
Example: *I want to do X, but there is no way to do it.*
#### Describe the solution you'd like
A clear and concise description of what you want to happen.
-Example: *I think it would be nice if you would add feature Y so it will make it easier.*
+Example: *I think it would be nice if you add feature Y which makes X possible.*
#### Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
@@ -24,7 +24,7 @@ Example: *I considered Z, but that didn't turn out to be a good idea because...*
Add any other context or screenshots about the feature request here.
Example: *Here's a photo of my cat!*
-#### Why do you/everyone wants this feature
+#### How will you/everyone benefit from this feature?
Convince us! How does it change your NewPipe experience and/or your life?
-The better this paragraph is, the more likely a developer will think about developing it.
+The better this paragraph is, the more likely a developer will think about working on it.
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
index 978adc1002f..40dd5d616ef 100644
--- a/.github/PULL_REQUEST_TEMPLATE.md
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -1,14 +1,17 @@
-
+
#### What is it?
- [ ] Bug fix
- [ ] Feature
#### Long description of the changes in your PR
-*Now you can make videos*
+
+- record videos
+- create clones
+- take over the world
#### Fixes the following issue(s)
-
+
-
#### Relies on the following changes
@@ -16,7 +19,7 @@
-
#### Testing apk
-
+
debug.zip
#### Agreement
From d265382ddfcf4b45482b0548715544f9664c239b Mon Sep 17 00:00:00 2001
From: Poolitzer <25934244+Poolitzer@users.noreply.github.com>
Date: Mon, 2 Mar 2020 20:56:03 -0800
Subject: [PATCH 035/195] missed this
because GitHub thought its funny to hide it for a reason.
Co-Authored-By: opusforlife2 <53176348+opusforlife2@users.noreply.github.com>
---
.github/ISSUE_TEMPLATE/feature_request.md | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md
index b461675bd69..946bfb4c6b0 100644
--- a/.github/ISSUE_TEMPLATE/feature_request.md
+++ b/.github/ISSUE_TEMPLATE/feature_request.md
@@ -16,7 +16,7 @@ Example: *I want to do X, but there is no way to do it.*
A clear and concise description of what you want to happen.
Example: *I think it would be nice if you add feature Y which makes X possible.*
-#### Describe alternatives you've considered
+#### (Optional) Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Example: *I considered Z, but that didn't turn out to be a good idea because...*
@@ -27,4 +27,3 @@ Example: *Here's a photo of my cat!*
#### How will you/everyone benefit from this feature?
Convince us! How does it change your NewPipe experience and/or your life?
The better this paragraph is, the more likely a developer will think about working on it.
-
From 3f118a72392247579867eb12df8632aaad4bf427 Mon Sep 17 00:00:00 2001
From: Poolitzer <25934244+Poolitzer@users.noreply.github.com>
Date: Mon, 2 Mar 2020 21:08:34 -0800
Subject: [PATCH 036/195] appending dots
Co-Authored-By: opusforlife2 <53176348+opusforlife2@users.noreply.github.com>
---
.github/PULL_REQUEST_TEMPLATE.md | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
index 40dd5d616ef..9a1193767dd 100644
--- a/.github/PULL_REQUEST_TEMPLATE.md
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -15,11 +15,11 @@
-
#### Relies on the following changes
-
+
-
#### Testing apk
-
+
debug.zip
#### Agreement
From 57504acd0017b2825ecbb68a4ff7bec9c7f64fdc Mon Sep 17 00:00:00 2001
From: Xiang Rong Lin <41164160+XiangRongLin@users.noreply.github.com>
Date: Sat, 29 Feb 2020 11:23:21 +0100
Subject: [PATCH 037/195] If inexact seekt is used, hide 5,15,25 seconds seek
duration options when opening settings
---
.../settings/VideoAudioSettingsFragment.java | 24 +++++++++++++------
1 file changed, 17 insertions(+), 7 deletions(-)
diff --git a/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java b/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java
index d5f46fb220b..5476158c4d1 100644
--- a/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java
+++ b/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java
@@ -11,6 +11,8 @@
import com.google.android.material.snackbar.Snackbar;
+import java.util.LinkedList;
+import java.util.List;
import org.schabi.newpipe.R;
import org.schabi.newpipe.util.PermissionHelper;
@@ -26,19 +28,28 @@ public void onCreate(@Nullable Bundle savedInstanceState) {
Resources res = getResources();
String[] durationsValues = res.getStringArray(R.array.seek_duration_value);
String[] durationsDescriptions = res.getStringArray(R.array.seek_duration_description);
+ List durationsValResult = new LinkedList<>();
+ List durationsDesResult = new LinkedList<>();
int currentDurationValue;
+ final boolean inexactSeek = getPreferenceManager().getSharedPreferences()
+ .getBoolean(res.getString(R.string.use_inexact_seek_key), false);
+
for (int i = 0; i < durationsDescriptions.length; i++) {
currentDurationValue = Integer.parseInt(durationsValues[i]) / 1000;
- try {
- durationsDescriptions[i] = String.format(
+ if (inexactSeek && currentDurationValue % 10 != 5) {
+ try {
+ durationsValResult.add(durationsValues[i]);
+ durationsDesResult.add(String.format(
res.getQuantityString(R.plurals.dynamic_seek_duration_description, currentDurationValue),
- currentDurationValue);
- } catch (Resources.NotFoundException ignored) {
- //if this happens, the translation is missing, and the english string will be displayed instead
+ currentDurationValue));
+ } catch (Resources.NotFoundException ignored) {
+ //if this happens, the translation is missing, and the english string will be displayed instead
+ }
}
}
ListPreference durations = (ListPreference) findPreference(getString(R.string.seek_duration_key));
- durations.setEntries(durationsDescriptions);
+ durations.setEntryValues(durationsValResult.toArray(new CharSequence[0]));
+ durations.setEntries(durationsDesResult.toArray(new CharSequence[0]));
listener = (sharedPreferences, s) -> {
@@ -62,7 +73,6 @@ public void onCreate(@Nullable Bundle savedInstanceState) {
};
}
-
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
addPreferencesFromResource(R.xml.video_audio_settings);
From 446380433804c1c38213c37562d8d34151caca3b Mon Sep 17 00:00:00 2001
From: Xiang Rong Lin <41164160+XiangRongLin@users.noreply.github.com>
Date: Sat, 29 Feb 2020 11:53:04 +0100
Subject: [PATCH 038/195] Update seek options on inexact seek option change.
Reset to 10 seconds when previous value is not valid anymore
---
.../settings/VideoAudioSettingsFragment.java | 66 +++++++++++--------
1 file changed, 40 insertions(+), 26 deletions(-)
diff --git a/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java b/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java
index 5476158c4d1..20e68078acc 100644
--- a/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java
+++ b/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java
@@ -24,32 +24,7 @@ public class VideoAudioSettingsFragment extends BasePreferenceFragment {
public void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- //initializing R.array.seek_duration_description to display the translation of seconds
- Resources res = getResources();
- String[] durationsValues = res.getStringArray(R.array.seek_duration_value);
- String[] durationsDescriptions = res.getStringArray(R.array.seek_duration_description);
- List durationsValResult = new LinkedList<>();
- List durationsDesResult = new LinkedList<>();
- int currentDurationValue;
- final boolean inexactSeek = getPreferenceManager().getSharedPreferences()
- .getBoolean(res.getString(R.string.use_inexact_seek_key), false);
-
- for (int i = 0; i < durationsDescriptions.length; i++) {
- currentDurationValue = Integer.parseInt(durationsValues[i]) / 1000;
- if (inexactSeek && currentDurationValue % 10 != 5) {
- try {
- durationsValResult.add(durationsValues[i]);
- durationsDesResult.add(String.format(
- res.getQuantityString(R.plurals.dynamic_seek_duration_description, currentDurationValue),
- currentDurationValue));
- } catch (Resources.NotFoundException ignored) {
- //if this happens, the translation is missing, and the english string will be displayed instead
- }
- }
- }
- ListPreference durations = (ListPreference) findPreference(getString(R.string.seek_duration_key));
- durations.setEntryValues(durationsValResult.toArray(new CharSequence[0]));
- durations.setEntries(durationsDesResult.toArray(new CharSequence[0]));
+ updateSeekOptions();
listener = (sharedPreferences, s) -> {
@@ -69,10 +44,49 @@ public void onCreate(@Nullable Bundle savedInstanceState) {
.show();
}
+ } else if (s.equals(getString(R.string.use_inexact_seek_key))) {
+ updateSeekOptions();
}
};
}
+ /**
+ * Update fast-forward/-rewind seek duration options according to language and inexact seek setting.
+ * Exoplayer can't seek 5 seconds in audio when using inexact seek.
+ */
+ private void updateSeekOptions() {
+ //initializing R.array.seek_duration_description to display the translation of seconds
+ final Resources res = getResources();
+ final String[] durationsValues = res.getStringArray(R.array.seek_duration_value);
+ final List displayedDurationValues = new LinkedList<>();
+ final List displayedDescriptionValues = new LinkedList<>();
+ int currentDurationValue;
+ final boolean inexactSeek = getPreferenceManager().getSharedPreferences()
+ .getBoolean(res.getString(R.string.use_inexact_seek_key), false);
+
+ for (String durationsValue : durationsValues) {
+ currentDurationValue = Integer.parseInt(durationsValue) / 1000;
+ if (inexactSeek && currentDurationValue % 10 == 5) {
+ continue;
+ }
+ try {
+ displayedDurationValues.add(durationsValue);
+ displayedDescriptionValues.add(String.format(
+ res.getQuantityString(R.plurals.dynamic_seek_duration_description,
+ currentDurationValue),
+ currentDurationValue));
+ } catch (Resources.NotFoundException ignored) {
+ //if this happens, the translation is missing, and the english string will be displayed instead
+ }
+ }
+ final ListPreference durations = (ListPreference) findPreference(getString(R.string.seek_duration_key));
+ durations.setEntryValues(displayedDurationValues.toArray(new CharSequence[0]));
+ durations.setEntries(displayedDescriptionValues.toArray(new CharSequence[0]));
+ if (Integer.parseInt(durations.getValue()) / 1000 % 10 == 5) {
+ durations.setValueIndex(0);
+ }
+ }
+
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
addPreferencesFromResource(R.xml.video_audio_settings);
From 288a61895cde2c271ae80c7b927a0200ca1480c9 Mon Sep 17 00:00:00 2001
From: Xiang Rong Lin <41164160+XiangRongLin@users.noreply.github.com>
Date: Sat, 29 Feb 2020 11:58:41 +0100
Subject: [PATCH 039/195] Update inexact seek summary
---
app/src/main/res/values/strings.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 42b4b77c594..f7fe9c2b22a 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -71,7 +71,7 @@
Remember popup size and position
Remember last size and position of popup
Use fast inexact seek
- Inexact seek allows the player to seek to positions faster with reduced precision
+ Inexact seek allows the player to seek to positions faster with reduced precision. Seeking for 5, 15 or 25 seconds doesn\'t work with this.
Fast-forward/-rewind seek duration
Load thumbnails
Show comments
From 6a42714326dbd42dabdf4b072cf25396fa4da529 Mon Sep 17 00:00:00 2001
From: Xiang Rong Lin <41164160+XiangRongLin@users.noreply.github.com>
Date: Mon, 2 Mar 2020 19:52:42 +0100
Subject: [PATCH 040/195] Round seek duration up instead of setting it to 10
seconds
---
.../schabi/newpipe/settings/VideoAudioSettingsFragment.java | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java b/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java
index 20e68078acc..05c9ca9fcd0 100644
--- a/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java
+++ b/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java
@@ -82,8 +82,9 @@ private void updateSeekOptions() {
final ListPreference durations = (ListPreference) findPreference(getString(R.string.seek_duration_key));
durations.setEntryValues(displayedDurationValues.toArray(new CharSequence[0]));
durations.setEntries(displayedDescriptionValues.toArray(new CharSequence[0]));
- if (Integer.parseInt(durations.getValue()) / 1000 % 10 == 5) {
- durations.setValueIndex(0);
+ final int selectedDuration = Integer.parseInt(durations.getValue());
+ if (selectedDuration / 1000 % 10 == 5) {
+ durations.setValue(Integer.toString(selectedDuration + 5 * 1000));
}
}
From 7d3b21582cc94b3954d88d57ec3c186712396a78 Mon Sep 17 00:00:00 2001
From: Xiang Rong Lin <41164160+XiangRongLin@users.noreply.github.com>
Date: Mon, 2 Mar 2020 19:54:08 +0100
Subject: [PATCH 041/195] Use DateUtils constant for 1000
---
.../newpipe/settings/VideoAudioSettingsFragment.java | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java b/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java
index 05c9ca9fcd0..134285a41c3 100644
--- a/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java
+++ b/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java
@@ -6,6 +6,7 @@
import android.os.Bundle;
import android.provider.Settings;
+import android.text.format.DateUtils;
import androidx.annotation.Nullable;
import androidx.preference.ListPreference;
@@ -65,7 +66,8 @@ private void updateSeekOptions() {
.getBoolean(res.getString(R.string.use_inexact_seek_key), false);
for (String durationsValue : durationsValues) {
- currentDurationValue = Integer.parseInt(durationsValue) / 1000;
+ currentDurationValue =
+ Integer.parseInt(durationsValue) / (int) DateUtils.SECOND_IN_MILLIS;
if (inexactSeek && currentDurationValue % 10 == 5) {
continue;
}
@@ -83,8 +85,9 @@ private void updateSeekOptions() {
durations.setEntryValues(displayedDurationValues.toArray(new CharSequence[0]));
durations.setEntries(displayedDescriptionValues.toArray(new CharSequence[0]));
final int selectedDuration = Integer.parseInt(durations.getValue());
- if (selectedDuration / 1000 % 10 == 5) {
- durations.setValue(Integer.toString(selectedDuration + 5 * 1000));
+ if (selectedDuration / (int) DateUtils.SECOND_IN_MILLIS % 10 == 5) {
+ durations.setValue(
+ Integer.toString(selectedDuration + 5 * (int) DateUtils.SECOND_IN_MILLIS));
}
}
From e3fff4356a5c7cc4138f9a4dde954cf2bdea03ef Mon Sep 17 00:00:00 2001
From: Xiang Rong Lin <41164160+XiangRongLin@users.noreply.github.com>
Date: Mon, 2 Mar 2020 20:15:54 +0100
Subject: [PATCH 042/195] Show a toast when seek duration was rounded up
---
.../settings/VideoAudioSettingsFragment.java | 13 +++++++++++--
app/src/main/res/values/strings.xml | 1 +
2 files changed, 12 insertions(+), 2 deletions(-)
diff --git a/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java b/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java
index 134285a41c3..f68fc5e239c 100644
--- a/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java
+++ b/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java
@@ -7,6 +7,7 @@
import android.provider.Settings;
import android.text.format.DateUtils;
+import android.widget.Toast;
import androidx.annotation.Nullable;
import androidx.preference.ListPreference;
@@ -86,8 +87,16 @@ private void updateSeekOptions() {
durations.setEntries(displayedDescriptionValues.toArray(new CharSequence[0]));
final int selectedDuration = Integer.parseInt(durations.getValue());
if (selectedDuration / (int) DateUtils.SECOND_IN_MILLIS % 10 == 5) {
- durations.setValue(
- Integer.toString(selectedDuration + 5 * (int) DateUtils.SECOND_IN_MILLIS));
+ final int newDuration = selectedDuration / (int) DateUtils.SECOND_IN_MILLIS + 5;
+ durations.setValue(Integer.toString(newDuration * (int) DateUtils.SECOND_IN_MILLIS));
+
+ Toast toast = Toast.makeText(getContext(),
+ getString(R.string.new_seek_duration_toast) + " " + String.format(
+ res.getQuantityString(R.plurals.dynamic_seek_duration_description,
+ newDuration),
+ newDuration),
+ Toast.LENGTH_LONG);
+ toast.show();
}
}
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index f7fe9c2b22a..6152221c0dd 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -593,6 +593,7 @@
App language
System default
%s seconds
+ Due to ExoPlayer contraints the seek duration was set to
- %s seconds
From efb67b0fd4e98fe5e99b6d323a4d8686bc6c06f7 Mon Sep 17 00:00:00 2001
From: Xiang Rong Lin <41164160+XiangRongLin@users.noreply.github.com>
Date: Tue, 3 Mar 2020 19:50:50 +0100
Subject: [PATCH 043/195] Change toast string resource to be useable with
different languages
---
.../newpipe/settings/VideoAudioSettingsFragment.java | 11 +++++------
app/src/main/res/values/strings.xml | 2 +-
2 files changed, 6 insertions(+), 7 deletions(-)
diff --git a/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java b/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java
index f68fc5e239c..27ae4d3aaf9 100644
--- a/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java
+++ b/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java
@@ -82,6 +82,7 @@ private void updateSeekOptions() {
//if this happens, the translation is missing, and the english string will be displayed instead
}
}
+
final ListPreference durations = (ListPreference) findPreference(getString(R.string.seek_duration_key));
durations.setEntryValues(displayedDurationValues.toArray(new CharSequence[0]));
durations.setEntries(displayedDescriptionValues.toArray(new CharSequence[0]));
@@ -90,12 +91,10 @@ private void updateSeekOptions() {
final int newDuration = selectedDuration / (int) DateUtils.SECOND_IN_MILLIS + 5;
durations.setValue(Integer.toString(newDuration * (int) DateUtils.SECOND_IN_MILLIS));
- Toast toast = Toast.makeText(getContext(),
- getString(R.string.new_seek_duration_toast) + " " + String.format(
- res.getQuantityString(R.plurals.dynamic_seek_duration_description,
- newDuration),
- newDuration),
- Toast.LENGTH_LONG);
+ Toast toast = Toast
+ .makeText(getContext(),
+ getString(R.string.new_seek_duration_toast, newDuration),
+ Toast.LENGTH_LONG);
toast.show();
}
}
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 6152221c0dd..e46bef4e8a3 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -593,7 +593,7 @@
App language
System default
%s seconds
- Due to ExoPlayer contraints the seek duration was set to
+ Due to ExoPlayer contraints the seek duration was set to %d seconds
- %s seconds
From f7ef7a18ac764f53c7b2a748af43a34a252abe90 Mon Sep 17 00:00:00 2001
From: XiangRongLin <41164160+XiangRongLin@users.noreply.github.com>
Date: Tue, 3 Mar 2020 21:41:15 +0100
Subject: [PATCH 044/195] Update
app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java
Co-Authored-By: Stypox
---
.../schabi/newpipe/settings/VideoAudioSettingsFragment.java | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java b/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java
index 27ae4d3aaf9..d4897ecaab3 100644
--- a/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java
+++ b/app/src/main/java/org/schabi/newpipe/settings/VideoAudioSettingsFragment.java
@@ -72,8 +72,9 @@ private void updateSeekOptions() {
if (inexactSeek && currentDurationValue % 10 == 5) {
continue;
}
+
+ displayedDurationValues.add(durationsValue);
try {
- displayedDurationValues.add(durationsValue);
displayedDescriptionValues.add(String.format(
res.getQuantityString(R.plurals.dynamic_seek_duration_description,
currentDurationValue),
From 4bb6a146e8212af975d9c1acd1bbd3cf51fa6af6 Mon Sep 17 00:00:00 2001
From: Stypox
Date: Tue, 3 Mar 2020 21:51:46 +0100
Subject: [PATCH 045/195] Update app/src/main/res/values/strings.xml
---
app/src/main/res/values/strings.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index e46bef4e8a3..2e5b1d75cf9 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -593,7 +593,7 @@
App language
System default
%s seconds
- Due to ExoPlayer contraints the seek duration was set to %d seconds
+ Due to ExoPlayer constraints the seek duration was set to %d seconds
- %s seconds
From 9b65b000dbd2bdcff3ad381e10088462b3e6d84a Mon Sep 17 00:00:00 2001
From: Dani Pragustia
Date: Mon, 2 Mar 2020 17:59:04 +0000
Subject: [PATCH 046/195] Translated using Weblate (Indonesian)
Currently translated at 100.0% (533 of 533 strings)
---
app/src/main/res/values-in/strings.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/app/src/main/res/values-in/strings.xml b/app/src/main/res/values-in/strings.xml
index 4712a91d19e..2efe3e01240 100644
--- a/app/src/main/res/values-in/strings.xml
+++ b/app/src/main/res/values-in/strings.xml
@@ -395,7 +395,7 @@
Nihil
Minimalkan ke pemutar latar belakang
Minimalkan ke pemutar popup
- Unsubscribe
+ Berhenti berlangganan
Tab Baru
Pilih Tab
Tema
From e421d47b231e0226a616607c4e946c1607ebd87c Mon Sep 17 00:00:00 2001
From: IQBAL AL FATAH
Date: Wed, 4 Mar 2020 08:55:04 +0000
Subject: [PATCH 047/195] Translated using Weblate (Indonesian)
Currently translated at 100.0% (533 of 533 strings)
---
app/src/main/res/values-in/strings.xml | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/app/src/main/res/values-in/strings.xml b/app/src/main/res/values-in/strings.xml
index 2efe3e01240..050134c6aa0 100644
--- a/app/src/main/res/values-in/strings.xml
+++ b/app/src/main/res/values-in/strings.xml
@@ -5,13 +5,13 @@
Dipublikasikan tanggal %1$s
Pasang
Batal
- Buka di peramban
+ Buka di browser
Bagikan
Unduh
- Cari
- Pengaturan
+ Telusuri
+ Setelan
Bagikan dengan
- Pilih peramban
+ Pilih browser
Gunakan pemutar video eksternal
Gunakan pemutar audio eksternal
Folder unduhan video
@@ -46,7 +46,7 @@
Tampilkan video yang dibatasi usia. Bisa diubah nanti dari pengaturan.
Galat jaringan
Tidak bisa memuat semua thumbnail
- Maksud anda: %1$s\?
+ Apakah yang kamu maksud: %1$s\?
rotasi
Langsung
Unduhan
@@ -116,7 +116,7 @@
T
Ya
Nanti
- Buka di mode popup
+ Buka dalam mode popup
Izin ini dibutuhkan untuk
\nmembuka di mode popup
Mode popup
From e1fb8831deacfcf3287ecfc039aed71c6f997889 Mon Sep 17 00:00:00 2001
From: AioiLight
Date: Tue, 3 Mar 2020 08:26:56 +0000
Subject: [PATCH 048/195] Translated using Weblate (Japanese)
Currently translated at 100.0% (533 of 533 strings)
---
app/src/main/res/values-ja/strings.xml | 32 +++++++++++++++-----------
1 file changed, 18 insertions(+), 14 deletions(-)
diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml
index adaaa382887..f49c5b60405 100644
--- a/app/src/main/res/values-ja/strings.xml
+++ b/app/src/main/res/values-ja/strings.xml
@@ -1,7 +1,7 @@
%1$s に公開
- 動画プレイヤーが見つかりません。VLC を入手しますか?
+ 動画プレイヤーが見つかりません。VLC をインストールしますか?
入手
キャンセル
ブラウザで開く
@@ -18,7 +18,7 @@
動画ファイルをダウンロードするフォルダーを選択して下さい
デフォルトの解像度
Kodi で再生
- Koreが見つかりません。Kore を入手しますか?
+ Kore をインストールしますか?
\"Kodi で再生\" オプションを表示
Kodi メディアセンター経由で動画を再生するための設定を表示します
音声
@@ -75,13 +75,13 @@
動画
音声
再試行
- ストレージへのアクセスが拒否されました
+ 初めにストレージへのアクセスを許可する
自動再生
NewPipe が他のアプリから呼び出された時、動画を再生します。
不具合を報告
利用者レポートを送る
生放送
- 開始するには検索をタップ
+ 開始するには \"検索\" をタップ
開始
一時停止
再生
@@ -120,13 +120,13 @@
ポップアップモードで開く
ポップアップモードで開くには
\n権限の許可が必要です
- NewPipe ポップアップモード
+ ポップアップモード
ポップアップモードで再生中
無効
デフォルトの動画形式
デフォルトのポップアップ解像度
高い解像度で表示
- 2K/4K ビデオの再生は一部のデバイスのみサポートしています
+ 2K/4K ビデオの再生は一部のデバイスのみ再生できます
バックグラウンド
ポップアップ
フィルター
@@ -170,10 +170,10 @@
検索した履歴を記憶します
視聴履歴
再生した履歴を記憶します
- オーディオフォーカス復帰で再開する
+ 再生の再開
電話などによる中断の後、再生を再開します
プレイヤー
- 動画の詳細ページで、背景またはポップアップボタンが押されたときにヒントを表示する
+ 動画の詳細ページで、\"バックグラウンド\" または \"ポップアップ\" ボタンが押されたときにヒントを表示する
動作
履歴とキャッシュ
プレイリスト
@@ -325,12 +325,12 @@
おおまかなシーク
おおまかなシークを使用すると、正確さが下がりますが高速なシークが可能になります
すべてのサムネイルの読み込みと保存を無効化します、このオプションを切り替えるとメモリおよびディスク上の画像キャッシュがクリアされます。
- 繰り返しではないキューの再生後、関連動画を自動的にキューに追加します
+ キューに関連動画を追加し続けて、再生を続ける(リピートしない場合)
すべての再生履歴を削除しますか?
すべての検索履歴を削除しますか?
このファイル/コンテンツはありません
- - %s を登録しています
+ - %s が登録しています
視聴なし
@@ -375,7 +375,7 @@
何もしない
バックグラウンドに変更
ポップアップに変更
- LeakCanary を有効にする
+ LeakCanary
メモリリークの監視は、ヒープダンピング時にアプリが無反応になる原因となります
ライフサイクルエラーの報告
破棄されたフラグメントまたはアクティビティの、ライフサイクル範囲外での配信不能なRx例外を強制的に報告します
@@ -453,7 +453,7 @@
ファイルを削除しました
アプリの更新通知
外部 SD カードにダウンロードできません。ダウンロードフォルダーの場所をリセットしますか\?
- デフォルトのタブを使用します。保存されたタブの読み込みエラーが発生しました
+ 保存されたタブを読み込めないため、デフォルトのタブを使用します
メインページに表示されるタブ
新しいバージョンが利用可能なときにアプリの更新を確認する通知を表示します
従量制課金ネットワークの割り込み
@@ -462,7 +462,7 @@
無効にするとコメントの表示を停止します
自動再生
- - コメント
+ - %s コメント
コメントはありません
コメントを読み込めませんでした
@@ -525,7 +525,7 @@
修復中
ダウンロードが修復できません
インスタンスを選択
- ロック画面の動画サムネイルを有効にする
+ ロック画面の動画サムネイル
バックグラウンドプレイヤーを使用中、ロック画面に動画のサムネイルが表示されるようになります
ダウンロード履歴を消去
ダウンロードしたファイルを消去
@@ -536,4 +536,8 @@
システムの既定
解けたら \"完了\" を押してください
完了
+ 動画
+
+ - %s 秒
+
\ No newline at end of file
From 6962882e75e839a58c12ef874d0e574f942fb205 Mon Sep 17 00:00:00 2001
From: Sylke Vicious
Date: Tue, 3 Mar 2020 14:55:44 +0000
Subject: [PATCH 049/195] Translated using Weblate (Italian)
Currently translated at 100.0% (533 of 533 strings)
---
app/src/main/res/values-it/strings.xml | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml
index 2607ab210be..d36d03a6160 100644
--- a/app/src/main/res/values-it/strings.xml
+++ b/app/src/main/res/values-it/strings.xml
@@ -218,13 +218,13 @@
Feed Iscrizioni
Canale Personalizzato
Seleziona Canale
- Nessuna Iscrizione
+ Ancora nessuna iscrizione ad un canale
Seleziona Contenuto
Locandina
Tendenze
Top 50
New & hot
- Mostra Suggerimento \"Tieni Premuto per Accocodare\"
+ Mostra suggerimento \"Tieni premuto per accodare\"
Nei \"Dettagli\" dei video, mostra suggerimento alla pressione dei pulsanti per la riproduzione Popup o in Sottofondo
Accoda in Sottofondo
Accodato in Popup
@@ -352,7 +352,7 @@
Tieni presente che questa operazione può consumare una grande quantità di traffico dati.
\n
\nVuoi continuare?
- Carica Copertine
+ Carica miniature
Disabilita per prevenire il caricamento delle anteprime, risparmiando dati e memoria. La modifica di questa opzione cancellerà la cache delle immagini in memoria e sul disco.
Cache immagini svuotata
Pulisci Cache Metadati
@@ -533,8 +533,8 @@
recupero
Impossibile recuperare questo download
Scegli un\'Istanza
- Copertina sulla Schermata di Blocco
- La copertina del video verrà mostrata nella schermata di blocco, durante la riproduzione in sottofondo.
+ Miniatura del video sulla schermata di blocco
+ La miniatura del video verrà mostrata nella schermata di blocco, durante la riproduzione in sottofondo
Svuota Cronologia Download
Elimina File Scaricati
%1$s download eliminati
@@ -546,6 +546,6 @@
Video
- %s secondi
-
+
\ No newline at end of file
From ebdf48899fd0a8a3555bd3415fdb3fd11bc9d121 Mon Sep 17 00:00:00 2001
From: "Mohd. A" <1mohd@pm.me>
Date: Tue, 3 Mar 2020 09:52:17 +0000
Subject: [PATCH 050/195] Translated using Weblate (Arabic)
Currently translated at 98.3% (524 of 533 strings)
---
app/src/main/res/values-ar/strings.xml | 24 ++++++++++++------------
1 file changed, 12 insertions(+), 12 deletions(-)
diff --git a/app/src/main/res/values-ar/strings.xml b/app/src/main/res/values-ar/strings.xml
index 469c131779d..0407e183650 100644
--- a/app/src/main/res/values-ar/strings.xml
+++ b/app/src/main/res/values-ar/strings.xml
@@ -94,7 +94,7 @@
تذكر حجم النافذة و وضعها
تذكر آخر مكان و حجم للنافذة المنبثقة
اعدادات إيماءة المشغل
- استخدم إيماءات التحكم في سطوع وصوت المشغل
+ استخدم الإيماءات للتحكم في سطوع وصوت المشغل
اقتراحات البحث
عرض الاقتراحات عند البحث
سجل البحث
@@ -111,7 +111,7 @@
تم وضعه على قائمة الانتظار في مشغل الخلفية
تم وضعه على قائمة الانتظار في مشغل النافذة المنبثقة
محتوى مقيد بحسب العمر
- "إظهار الفيديو المقيد بحسب العمر. يمكن السماح باستخدام هذه المواد من \"الإعدادات\"."
+ إظهار الفيديو المقيد بحسب العمر. التغييرات المستقبلية ممكنة من \"الإعدادات\".
بث مباشر
تقرير خطأ
قائمة التشغيل
@@ -205,7 +205,7 @@
إذا كانت لديك أفكار؛ أو ترجمة، أو تغييرات تخص التصميم، أو تنظيف و تحسين الشفرة البرمجية ، أو تعديلات عميقة عليها، فتذكر أنّ مساعدتك دائما موضع ترحيب. وكلما أتممنا شيئا كلما كان ذلك أفضل !
عرض على GitHub
تبرع
- يتم تطوير NewPipe من قبل متطوعين يقضون وقت فراغهم لتقديم أفضل تجربة لك. حان الوقت لرد المساعدة مع المطورين وجعل NewPipe أكثر و أفضل بينما تستمتع بفنجان من القهوة.
+ يتم تطوير NewPipe من قبل متطوعين يقضون وقت فراغهم لتقديم أفضل تجربة لك. حان الوقت لرد المساعدة مع المطورين وجعل NewPipe أكثر و أفضل بينما يستمتعون بفنجان من القهوة.
تبرع
موقع الويب
قم بزيارة موقع NewPipe لمزيد من المعلومات والمستجدات.
@@ -417,7 +417,7 @@
إلغاء الاشتراك
علامة تبويب جديدة
اختر علامة التبويب
- استخدم إيماءات التحكم في سطوع وصوت المشغل
+ استخدم إيماءات التحكم في صوت المشغل
التحكم بالإيماءات السطوع
استخدام الإيماءات للتحكم في سطوع المشغل
التحديثات
@@ -463,7 +463,7 @@
لا يمكن إنشاء الملف
لا يمكن إنشاء المجلد الوجهة
تم رفضها من قبل النظام
- فشل اتصال الأمن
+ فشل الاتصال الآمن
تعذر العثور على الخادم
لا يمكن الاتصال بالخادم
الخادم لايقوم بإرسال البيانات
@@ -556,8 +556,8 @@
لا يمكن استرداد هذا التنزيل
اختيار مثيل
ابحث عن مثيلات الخوادم التي تناسبك على %s
- تمكين قفل شاشة الصور المصغرة الفيديو
- عند استخدام مشغل الخلفية ، سيتم عرض صورة مصغرة للفيديو على شاشة القفل
+ تمكين صورة العرض للفيديو في شاشة القفل
+ عند استخدام مشغل الخلفية، سيتم عرض صورة العرض للفيديو على شاشة القفل
تنظيف تاريخ التحميل
حذف الملفات التي تم تنزيلها
التنزيلات %1$s المحذوفة
@@ -569,10 +569,10 @@
الفيديوهات
- %s ثوانٍ
-
-
-
-
-
+
+
+
+
+
\ No newline at end of file
From 371280ff766b0335b70acb12005ab27279c3f5eb Mon Sep 17 00:00:00 2001
From: IQBAL AL FATAH
Date: Wed, 4 Mar 2020 09:09:51 +0000
Subject: [PATCH 051/195] Translated using Weblate (Indonesian)
Currently translated at 100.0% (533 of 533 strings)
---
app/src/main/res/values-in/strings.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/app/src/main/res/values-in/strings.xml b/app/src/main/res/values-in/strings.xml
index 050134c6aa0..55745122032 100644
--- a/app/src/main/res/values-in/strings.xml
+++ b/app/src/main/res/values-in/strings.xml
@@ -395,7 +395,7 @@
Nihil
Minimalkan ke pemutar latar belakang
Minimalkan ke pemutar popup
- Berhenti berlangganan
+ Berhenti Subscribe
Tab Baru
Pilih Tab
Tema
From 5c559e4cc6172d1a99f0d944cd759cf5da486593 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Isak=20Holmstr=C3=B6m?=
Date: Wed, 4 Mar 2020 05:31:01 +0000
Subject: [PATCH 052/195] Translated using Weblate (Swedish)
Currently translated at 86.8% (463 of 533 strings)
---
app/src/main/res/values-sv/strings.xml | 17 ++++++++++++++---
1 file changed, 14 insertions(+), 3 deletions(-)
diff --git a/app/src/main/res/values-sv/strings.xml b/app/src/main/res/values-sv/strings.xml
index 68aeca87ca9..5290517abeb 100644
--- a/app/src/main/res/values-sv/strings.xml
+++ b/app/src/main/res/values-sv/strings.xml
@@ -18,7 +18,7 @@
Använd extern videospelare
Tar bort ljud vid VISSA upplösningar
Använd extern ljudspelare
- NewPipe popup-läge
+ Popup-läge
Bakgrund
Extrafönster
Mapp för nerladdning av video
@@ -112,7 +112,7 @@
Spara sökfrågor lokalt
Visningshistorik
Håll koll på videor som du tittat på
- Återuppta när fokus återfås
+ Återuppta spelning
Fortsätta spela efter avbrott (t.ex. telefonsamtal)
Visa \"Håll för att lägga till\" tips
Visa tips när bakgrunds- eller popup-knappen trycks på sidan för videodetaljer
@@ -458,7 +458,7 @@
- Kommentarer
- Inaktivera för att sluta visa kommentarer
+ Inaktivera för att inte visa kommentarer
Återuppta uppspelning
Återställ den senaste uppspelningspositionen
Positioner i listor
@@ -468,4 +468,15 @@
Snabb spola -framåt/-bakåt
Aktivera video på låsskärmen
När bakgrundsspelaren används så visas videon på låsskärmen
+ Visa positionindikationer i listor
+ Radera uppspelningspositioner
+ PeerTube-instanser
+ Välj din favorit PeerTube-instans
+ Hitta instanser du gillar på %s
+ Lägg till instans
+ Fyll i instans-URL
+ Kunde inte validera instans
+ Enbart HTTPS-URL stöds
+ Instansen finns redan
+ Videos
\ No newline at end of file
From 7da11206dabeed73509efa19f6258a6f5c679a1d Mon Sep 17 00:00:00 2001
From: opusforlife2 <53176348+opusforlife2@users.noreply.github.com>
Date: Wed, 4 Mar 2020 18:41:41 +0530
Subject: [PATCH 053/195] Relocate two settings from Appearance to Content
---
app/src/main/res/xml/appearance_settings.xml | 13 -------------
app/src/main/res/xml/content_settings.xml | 13 +++++++++++++
2 files changed, 13 insertions(+), 13 deletions(-)
diff --git a/app/src/main/res/xml/appearance_settings.xml b/app/src/main/res/xml/appearance_settings.xml
index b5f222130c7..31be267af9a 100644
--- a/app/src/main/res/xml/appearance_settings.xml
+++ b/app/src/main/res/xml/appearance_settings.xml
@@ -13,12 +13,6 @@
android:summary="%s"
android:title="@string/theme_title"/>
-
-
-
-
diff --git a/app/src/main/res/xml/content_settings.xml b/app/src/main/res/xml/content_settings.xml
index 8fe8a66af8a..fd87de9efb5 100644
--- a/app/src/main/res/xml/content_settings.xml
+++ b/app/src/main/res/xml/content_settings.xml
@@ -31,6 +31,13 @@
android:summary="%s"
android:title="@string/default_content_country_title"/>
+
+
+
+
Date: Wed, 4 Mar 2020 18:37:04 +0100
Subject: [PATCH 054/195] mute icon change in action bar
---
.../newpipe/player/ServicePlayerActivity.java | 12 ++-------
.../res/drawable/ic_volume_off_gray_24dp.xml | 13 ++++++---
.../activity_player_queue_control.xml | 27 +++++--------------
.../layout/activity_player_queue_control.xml | 18 +------------
4 files changed, 19 insertions(+), 51 deletions(-)
diff --git a/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java b/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
index 75107a7e411..07cdd73da5a 100644
--- a/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
+++ b/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
@@ -88,7 +88,6 @@ public abstract class ServicePlayerActivity extends AppCompatActivity
private TextView seekDisplay;
private ImageButton repeatButton;
- private ImageButton muteButton;
private ImageButton backwardButton;
private ImageButton playPauseButton;
private ImageButton forwardButton;
@@ -319,7 +318,6 @@ private void buildSeekBar() {
private void buildControls() {
repeatButton = rootView.findViewById(R.id.control_repeat);
- muteButton = rootView.findViewById(R.id.control_mute);
backwardButton = rootView.findViewById(R.id.control_backward);
playPauseButton = rootView.findViewById(R.id.control_play_pause);
forwardButton = rootView.findViewById(R.id.control_forward);
@@ -329,7 +327,6 @@ private void buildControls() {
progressBar = rootView.findViewById(R.id.control_progress_bar);
repeatButton.setOnClickListener(this);
- muteButton.setOnClickListener(this);
backwardButton.setOnClickListener(this);
playPauseButton.setOnClickListener(this);
forwardButton.setOnClickListener(this);
@@ -462,10 +459,7 @@ public void onClick(View view) {
if (view.getId() == repeatButton.getId()) {
player.onRepeatClicked();
- } else if (view.getId() == muteButton.getId()) {
- player.onMuteUnmuteButtonClicked();
-
- } else if (view.getId() == backwardButton.getId()) {
+ } else if (view.getId() == backwardButton.getId()) {
player.onPlayPrevious();
} else if (view.getId() == playPauseButton.getId()) {
@@ -698,9 +692,7 @@ private void onMaybePlaybackAdapterChanged() {
}
private void onMaybeMuteChanged() {
- muteButton.setColorFilter(ContextCompat.getColor(getApplicationContext(), player.isMuted() ? R.color.white : R.color.gray));
-
- if (menu != null) {
+ if (menu != null && player != null) {
MenuItem item = menu.findItem(R.id.action_mute);
TypedArray a = getTheme().obtainStyledAttributes(R.style.Theme_AppCompat, new int[]{R.attr.volume_off});
int attributeResourceId = a.getResourceId(0, 0);
diff --git a/app/src/main/res/drawable/ic_volume_off_gray_24dp.xml b/app/src/main/res/drawable/ic_volume_off_gray_24dp.xml
index 156ee53bb43..ade6bfec252 100644
--- a/app/src/main/res/drawable/ic_volume_off_gray_24dp.xml
+++ b/app/src/main/res/drawable/ic_volume_off_gray_24dp.xml
@@ -1,5 +1,10 @@
-
-
+
+
diff --git a/app/src/main/res/layout-land/activity_player_queue_control.xml b/app/src/main/res/layout-land/activity_player_queue_control.xml
index 0277c28b522..6468c6784bd 100644
--- a/app/src/main/res/layout-land/activity_player_queue_control.xml
+++ b/app/src/main/res/layout-land/activity_player_queue_control.xml
@@ -192,7 +192,7 @@
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_centerVertical="true"
- android:layout_toLeftOf="@+id/control_mute"
+ android:layout_toLeftOf="@+id/control_repeat"
android:gravity="center"
android:minWidth="50dp"
android:text="1x"
@@ -201,30 +201,13 @@
android:background="?attr/selectableItemBackground"
tools:ignore="HardcodedText,RtlHardcoded"/>
-
-
+
-
-
Date: Wed, 4 Mar 2020 18:53:17 +0100
Subject: [PATCH 055/195] mute/unmute text change in action bar
---
.../org/schabi/newpipe/player/ServicePlayerActivity.java | 8 +++++++-
app/src/main/res/values/strings.xml | 1 +
2 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java b/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
index 07cdd73da5a..e7700351e47 100644
--- a/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
+++ b/app/src/main/java/org/schabi/newpipe/player/ServicePlayerActivity.java
@@ -459,7 +459,7 @@ public void onClick(View view) {
if (view.getId() == repeatButton.getId()) {
player.onRepeatClicked();
- } else if (view.getId() == backwardButton.getId()) {
+ } else if (view.getId() == backwardButton.getId()) {
player.onPlayPrevious();
} else if (view.getId() == playPauseButton.getId()) {
@@ -694,6 +694,12 @@ private void onMaybePlaybackAdapterChanged() {
private void onMaybeMuteChanged() {
if (menu != null && player != null) {
MenuItem item = menu.findItem(R.id.action_mute);
+
+ //Change the mute-button item in ActionBar
+ //1) Text change:
+ item.setTitle(player.isMuted() ? R.string.unmute : R.string.mute);
+
+ //2) Icon change accordingly to current App Theme
TypedArray a = getTheme().obtainStyledAttributes(R.style.Theme_AppCompat, new int[]{R.attr.volume_off});
int attributeResourceId = a.getResourceId(0, 0);
Drawable drawableMuted = getResources().getDrawable(attributeResourceId);
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 2f0803e1a37..773614263b1 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -449,6 +449,7 @@
Name
Add To Playlist
Mute
+ Unmute
Set as Playlist Thumbnail
Bookmark Playlist
Remove Bookmark
From 2ca580dc1639d9eb7e4c87600dbacc8bce22a16c Mon Sep 17 00:00:00 2001
From: Poolitzer <25934244+Poolitzer@users.noreply.github.com>
Date: Wed, 4 Mar 2020 20:21:44 -0800
Subject: [PATCH 056/195] minor improvements of sentences
Co-Authored-By: Stypox
---
.github/ISSUE_TEMPLATE/bug_report.md | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md
index 19e8a9fbe0a..0137335e4c1 100644
--- a/.github/ISSUE_TEMPLATE/bug_report.md
+++ b/.github/ISSUE_TEMPLATE/bug_report.md
@@ -14,7 +14,7 @@ Use this template to notify us if you found a bug.
To make it easier for us to help you please enter detailed information below.
-Please note, we only support the latest version of NewPipe and the master branch. Please make sure to upgrade & recreate the issue on the latest version prior to opening an issue. The release page (https://github.com/TeamNewPipe/NewPipe/releases/latest) is a good start. Make sure its version is the same as in your app (to check your version, open the left drawer and click on "About").
+Please note, we only support the latest version of NewPipe and the master branch. Make sure to upgrade & reproduce the problem on the latest version before opening an issue. The release page (https://github.com/TeamNewPipe/NewPipe/releases/latest) is a good start. Make sure its version is the same as in your app (to check your version, open the left drawer and click on "About").
P.S.: Our [contribution guidelines](https://github.com/TeamNewPipe/NewPipe/blob/HEAD/.github/CONTRIBUTING.md) might be a nice document to read before you fill out the report :)
-->
@@ -24,7 +24,7 @@ P.S.: Our [contribution guidelines](https://github.com/TeamNewPipe/NewPipe/blob/
### Steps to reproduce the bug
-
+
Steps to reproduce the behavior:
1. Go to '...'
2. Press on '....'
From 4e37a762d2fa4336f804e1f0a57743751dffd0d3 Mon Sep 17 00:00:00 2001
From: poolitzer <25934244+Poolitzer@users.noreply.github.com>
Date: Wed, 4 Mar 2020 20:31:36 -0800
Subject: [PATCH 057/195] Further minor improvements
---
.github/ISSUE_TEMPLATE/bug_report.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md
index 0137335e4c1..85a0583445a 100644
--- a/.github/ISSUE_TEMPLATE/bug_report.md
+++ b/.github/ISSUE_TEMPLATE/bug_report.md
@@ -14,7 +14,7 @@ Use this template to notify us if you found a bug.
To make it easier for us to help you please enter detailed information below.
-Please note, we only support the latest version of NewPipe and the master branch. Make sure to upgrade & reproduce the problem on the latest version before opening an issue. The release page (https://github.com/TeamNewPipe/NewPipe/releases/latest) is a good start. Make sure its version is the same as in your app (to check your version, open the left drawer and click on "About").
+Please note, we only support the latest version of NewPipe and the master branch. Make sure you have that version installed. If you don't, upgrade & reproduce the problem before opening the issue. The release page (https://github.com/TeamNewPipe/NewPipe/releases/latest) is the go-to place to get this version. In order to check your app version, open the left drawer and click on "About".
P.S.: Our [contribution guidelines](https://github.com/TeamNewPipe/NewPipe/blob/HEAD/.github/CONTRIBUTING.md) might be a nice document to read before you fill out the report :)
-->
From 55d7be0b2fb9e08402e28a560cdc63fe787d3afb Mon Sep 17 00:00:00 2001
From: karol
Date: Thu, 5 Mar 2020 19:07:46 +0100
Subject: [PATCH 058/195] null risk issue
---
app/src/main/java/org/schabi/newpipe/player/BasePlayer.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
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 a71671e7b09..08fdb9258ba 100644
--- a/app/src/main/java/org/schabi/newpipe/player/BasePlayer.java
+++ b/app/src/main/java/org/schabi/newpipe/player/BasePlayer.java
@@ -277,7 +277,7 @@ public void handleIntent(Intent intent) {
final float playbackPitch = intent.getFloatExtra(PLAYBACK_PITCH, getPlaybackPitch());
final boolean playbackSkipSilence = intent.getBooleanExtra(PLAYBACK_SKIP_SILENCE,
getPlaybackSkipSilence());
- final boolean isMuted = intent.getBooleanExtra(IS_MUTED, isMuted());
+ final boolean isMuted = intent.getBooleanExtra(IS_MUTED, simpleExoPlayer == null ? false : isMuted());
// seek to timestamp if stream is already playing
if (simpleExoPlayer != null
From ecb1b45280951599c636d7600af95f5d89570172 Mon Sep 17 00:00:00 2001
From: Mauricio Colli
Date: Sat, 7 Mar 2020 15:55:55 -0300
Subject: [PATCH 059/195] Fix visual glitch when exiting the app
---
.../main/res/values-v21/styles_services.xml | 24 +++++++++----------
app/src/main/res/values/styles.xml | 17 -------------
app/src/main/res/values/styles_services.xml | 24 +++++++++----------
3 files changed, 24 insertions(+), 41 deletions(-)
diff --git a/app/src/main/res/values-v21/styles_services.xml b/app/src/main/res/values-v21/styles_services.xml
index 176bc1f5183..1c725f88715 100644
--- a/app/src/main/res/values-v21/styles_services.xml
+++ b/app/src/main/res/values-v21/styles_services.xml
@@ -1,69 +1,69 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/app/src/main/res/values/styles_services.xml b/app/src/main/res/values/styles_services.xml
index 28490d7c6aa..013690b44fa 100644
--- a/app/src/main/res/values/styles_services.xml
+++ b/app/src/main/res/values/styles_services.xml
@@ -1,31 +1,31 @@
-
-
-
-
-
-
-
-
-
-
-
-
@@ -127,15 +165,53 @@
- @drawable/ic_pause_white_24dp
- @drawable/ic_settings_update_white
- @drawable/ic_done_white_24dp
+ - @drawable/ic_refresh_white_24dp
+ - @drawable/ic_computer_white_24dp
+ - @drawable/ic_videogame_white_24dp
+ - @drawable/ic_music_note_white_24dp
+ - @drawable/ic_stars_white_24dp
+ - @drawable/ic_sports_white_24dp
+ - @drawable/ic_money_white_24dp
+ - @drawable/ic_person_white_24dp
+ - @drawable/ic_people_white_24dp
+ - @drawable/ic_heart_white_24dp
+ - @drawable/ic_kids_white_24dp
+ - @drawable/ic_fastfood_white_24dp
+ - @drawable/ic_car_white_24dp
+ - @drawable/ic_motorcycle_white_24dp
+ - @drawable/ic_trending_up_white_24dp
+ - @drawable/ic_school_white_24dp
+ - @drawable/ic_asterisk_white_24dp
+ - @drawable/ic_emoticon_white_24dp
+ - @drawable/ic_edit_white_24dp
+ - @drawable/ic_explore_white_24dp
+ - @drawable/ic_fitness_white_24dp
+ - @drawable/ic_restaurant_white_24dp
+ - @drawable/ic_mic_white_24dp
+ - @drawable/ic_radio_white_24dp
+ - @drawable/ic_shopping_cart_white_24dp
+ - @drawable/ic_watch_later_white_24dp
+ - @drawable/ic_work_white_24dp
+ - @drawable/ic_movie_white_24dp
+ - @drawable/ic_pets_white_24dp
+ - @drawable/ic_world_white_24dp
+ - @drawable/ic_sunny_white_24dp
+ - @drawable/ic_telescope_white_24dp
+ - @drawable/ic_megaphone_white_24dp
- @color/dark_separator_color
- @color/dark_contrast_background_color
- @drawable/dark_checked_selector
+ - @drawable/dark_focused_selector
- @color/dark_queue_background_color
- @drawable/toolbar_shadow_dark
- @drawable/dark_selector
- @color/dark_ripple_color
- @drawable/progress_youtube_horizontal_dark
+ - @color/dark_card_item_background_color
+ - @color/dark_card_item_contrast_color
+ - @color/dark_border_color
+ - @drawable/dashed_border_dark
- @style/PreferenceThemeOverlay.v14.Material
@@ -148,6 +224,11 @@
- @color/black_separator_color
- @color/black_contrast_background_color
+
+ - @color/black_card_item_background_color
+ - @color/black_card_item_contrast_color
+ - @color/black_border_color
+ - @drawable/dashed_border_black
@@ -167,6 +248,22 @@
- @color/dark_dialog_background_color
+
+
+
+