diff --git a/.idea/misc.xml b/.idea/misc.xml
index 703e5d4b..af0bbdde 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -5,7 +5,7 @@
-
+
diff --git a/app/src/main/java/org/nuclearfog/twidda/window/MediaViewer.java b/app/src/main/java/org/nuclearfog/twidda/window/MediaViewer.java
index 4bcb4fa5..e6f6f73a 100644
--- a/app/src/main/java/org/nuclearfog/twidda/window/MediaViewer.java
+++ b/app/src/main/java/org/nuclearfog/twidda/window/MediaViewer.java
@@ -1,10 +1,8 @@
package org.nuclearfog.twidda.window;
-import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.Point;
import android.media.MediaPlayer;
-import android.media.MediaPlayer.OnInfoListener;
import android.media.MediaPlayer.OnPreparedListener;
import android.net.Uri;
import android.os.AsyncTask.Status;
@@ -37,8 +35,6 @@ import java.util.Locale;
import static android.Manifest.permission.WRITE_EXTERNAL_STORAGE;
import static android.content.pm.PackageManager.PERMISSION_GRANTED;
-import static android.media.MediaPlayer.MEDIA_INFO_BUFFERING_START;
-import static android.media.MediaPlayer.MEDIA_INFO_VIDEO_RENDERING_START;
import static android.view.View.INVISIBLE;
import static android.view.View.VISIBLE;
import static androidx.recyclerview.widget.LinearLayoutManager.HORIZONTAL;
@@ -46,7 +42,7 @@ import static org.nuclearfog.twidda.backend.ImageLoader.Mode.ONLINE;
import static org.nuclearfog.twidda.backend.ImageLoader.Mode.STORAGE;
-public class MediaViewer extends AppCompatActivity implements OnImageClickListener, OnPreparedListener, OnInfoListener {
+public class MediaViewer extends AppCompatActivity implements OnImageClickListener, OnPreparedListener, MediaPlayer.OnBufferingUpdateListener {
public static final String KEY_MEDIA_LINK = "link";
public static final String KEY_MEDIA_TYPE = "mediatype";
@@ -155,6 +151,7 @@ public class MediaViewer extends AppCompatActivity implements OnImageClickListen
break;
case VIDEO:
+ video_progress.setVisibility(VISIBLE);
case ANGIF:
case VIDEO_STORAGE:
videoView.start();
@@ -181,16 +178,6 @@ public class MediaViewer extends AppCompatActivity implements OnImageClickListen
}
- @Override
- protected void onActivityResult(int reqCode, int returnCode, Intent intent) {
- super.onActivityResult(reqCode, returnCode, intent);
- if (reqCode == REQCODE_SD && returnCode == RESULT_OK) {
- //storeImage(image); // TODO
- }
- }
-
-
-
@Override
public void onImageClick(Bitmap image) {
setImage(image);
@@ -220,15 +207,15 @@ public class MediaViewer extends AppCompatActivity implements OnImageClickListen
public void onPrepared(MediaPlayer mp) {
switch (type) {
case ANGIF:
- mp.setOnInfoListener(this);
+ mp.setOnBufferingUpdateListener(this);
mp.setLooping(true);
mp.start();
break;
case VIDEO:
+ mp.setOnBufferingUpdateListener(this);
case VIDEO_STORAGE:
videoController.show(0);
- mp.setOnInfoListener(this);
mp.seekTo(lastPos);
mp.start();
break;
@@ -237,18 +224,13 @@ public class MediaViewer extends AppCompatActivity implements OnImageClickListen
@Override
- public boolean onInfo(MediaPlayer mp, int infoCode, int extra) {
- switch (infoCode) {
- case MEDIA_INFO_BUFFERING_START:
- video_progress.setVisibility(VISIBLE);
- return true;
-
- case MEDIA_INFO_VIDEO_RENDERING_START:
+ public void onBufferingUpdate(MediaPlayer mp, int percent) {
+ if (mp.isPlaying()) {
+ if (video_progress.getVisibility() == VISIBLE)
video_progress.setVisibility(INVISIBLE);
- return true;
-
- default:
- return false;
+ } else {
+ if (video_progress.getVisibility() == INVISIBLE)
+ video_progress.setVisibility(VISIBLE);
}
}
diff --git a/app/src/main/res/layout/page_media.xml b/app/src/main/res/layout/page_media.xml
index 451c0396..1724e68e 100644
--- a/app/src/main/res/layout/page_media.xml
+++ b/app/src/main/res/layout/page_media.xml
@@ -50,7 +50,8 @@
android:id="@+id/video_load"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:layout_gravity="center" />
+ android:layout_gravity="center"
+ android:visibility="invisible" />