package me.ccrama.redditslide.Activities;
import android.content.DialogInterface;
import android.content.Intent;
import android.graphics.Color;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.view.Window;
import android.view.WindowManager;
import android.webkit.WebChromeClient;
import android.webkit.WebSettings;
import android.webkit.WebView;
import com.afollestad.materialdialogs.AlertDialogWrapper;
import me.ccrama.redditslide.R;
import me.ccrama.redditslide.Reddit;
import me.ccrama.redditslide.util.LogUtil;
/**
* Created by ccrama on 3/5/2015.
*/
public class FullscreenVideo extends FullScreenActivity {
public static final String EXTRA_HTML = "html";
private WebView v;
@Override
public void finish() {
super.finish();
v.loadUrl("about:blank");
overridePendingTransition(0, R.anim.fade_out);
}
public void onCreate(Bundle savedInstanceState) {
overrideRedditSwipeAnywhere();
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_video);
String data = getIntent().getExtras().getString(EXTRA_HTML);
v = (WebView) findViewById(R.id.webgif);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
Window window = this.getWindow();
window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
window.setStatusBarColor(Color.BLACK);
}
String dat = data;
final WebSettings settings = v.getSettings();
settings.setJavaScriptEnabled(true);
settings.setJavaScriptCanOpenWindowsAutomatically(true);
settings.setPluginState(WebSettings.PluginState.ON);
v.setWebChromeClient(new WebChromeClient());
LogUtil.v(dat);
if (dat.contains("src=\"")) {
int start = dat.indexOf("src=\"") + 5;
dat = dat.substring(start, dat.indexOf("\"", start));
if(dat.startsWith("//")){
dat = "https:" + dat;
}
LogUtil.v(dat);
setShareUrl(dat);
v.loadUrl(dat);
if ((dat.contains("youtube.co" ) || dat.contains("youtu.be")) && !Reddit.appRestart.contains("showYouTubePopup")) {
new AlertDialogWrapper.Builder(FullscreenVideo.this).setTitle(getString(R.string.load_videos_internally))
.setMessage(getString(R.string.load_videos_internally_content))
.setPositiveButton(getString(R.string.btn_sure), new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
try {
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=ccrama.me.slideyoutubeplugin")));
} catch (android.content.ActivityNotFoundException anfe) {
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("http://play.google.com/store/apps/details?id=ccrama.me.slideyoutubeplugin")));
}
}
}).setNegativeButton(getString(R.string.btn_no), null)
.setNeutralButton(getString(R.string.do_not_show_again), new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Reddit.appRestart.edit().putBoolean("showYouTubePopup", false).apply();
}
}).show();
}
} else {
LogUtil.v(dat);
v.loadDataWithBaseURL("", dat, "text/html", "utf-8", "");
}
}
}