//package org.qii.weiciyuan.ui.browser;
//
//import android.app.Activity;
//import android.content.ClipData;
//import android.content.ClipboardManager;
//import android.content.Context;
//import android.content.Intent;
//import android.content.res.TypedArray;
//import android.graphics.drawable.ColorDrawable;
//import android.graphics.drawable.Drawable;
//import android.net.Uri;
//import android.os.Bundle;
//import android.os.Handler;
//import android.text.TextUtils;
//import android.view.*;
//import android.webkit.WebView;
//import android.widget.ImageButton;
//import android.widget.Toast;
//import org.qii.weiciyuan.R;
//import org.qii.weiciyuan.bean.MessageBean;
//import org.qii.weiciyuan.support.asyncdrawable.TaskCache;
//import org.qii.weiciyuan.support.file.FileDownloaderHttpHelper;
//import org.qii.weiciyuan.support.file.FileLocationMethod;
//import org.qii.weiciyuan.support.file.FileManager;
//import org.qii.weiciyuan.support.imageutility.ImageUtility;
//import org.qii.weiciyuan.support.lib.CheatSheet;
//import org.qii.weiciyuan.support.lib.CircleProgressView;
//import org.qii.weiciyuan.support.lib.MyAsyncTask;
//import org.qii.weiciyuan.support.utils.Utility;
//
//import java.io.File;
//
///**
// * User: qii
// * Date: 12-8-18
// */
//public class BrowserBigPicActivity extends Activity {
//
// private PicSimpleBitmapWorkerTask task;
// private PicSaveTask saveTask;
// private String path;
// private MessageBean msg;
// private Layout layout;
// private boolean hd;
//
// @Override
// protected void onCreate(Bundle savedInstanceState) {
// super.onCreate(savedInstanceState);
// getWindow().setBackgroundDrawable(new ColorDrawable(0));
// setContentView(R.layout.browserbigpicactivity_layout);
// WindowManager.LayoutParams params = getWindow().getAttributes();
// params.width = getResources().getDimensionPixelOffset(R.dimen.browser_pic_activity_width);
// getWindow().setAttributes((android.view.WindowManager.LayoutParams) params);
//
// layout = new Layout();
// layout.refresh = (ImageButton) findViewById(R.id.ib_refresh);
// layout.copy = (ImageButton) findViewById(R.id.ib_copy);
// layout.share = (ImageButton) findViewById(R.id.ib_share);
// layout.save = (ImageButton) findViewById(R.id.ib_save);
// layout.hd = (ImageButton) findViewById(R.id.ib_hd);
//
// layout.pb = (CircleProgressView) findViewById(R.id.pb);
//
// layout.webView = (WebView) findViewById(R.id.iv);
//
// layout.webView.setBackgroundColor(getResources().getColor(R.color.transparent));
// layout.webView.getSettings().setJavaScriptEnabled(true);
// layout.webView.getSettings().setUseWideViewPort(true);
// layout.webView.getSettings().setLoadWithOverviewMode(true);
// layout.webView.getSettings().setBuiltInZoomControls(true);
// layout.webView.getSettings().setDisplayZoomControls(false);
//
// layout.webView.setVerticalScrollBarEnabled(false);
// layout.webView.setHorizontalScrollBarEnabled(false);
// layout.webView.setOnTouchListener(new View.OnTouchListener() {
// boolean mPressed;
// boolean mClose;
// CheckForSinglePress mPendingCheckForSinglePress = new CheckForSinglePress();
// long lastTime = 0;
// float[] location = new float[2];
//
// @Override
// public boolean onTouch(View v, MotionEvent event) {
// switch (event.getActionMasked()) {
// case MotionEvent.ACTION_DOWN:
// mPressed = true;
// if (System.currentTimeMillis() - lastTime > ViewConfiguration.getDoubleTapTimeout() + 100) {
// mClose = true;
// new Handler().postDelayed(mPendingCheckForSinglePress,
// ViewConfiguration.getDoubleTapTimeout() + 100);
// } else {
// mClose = false;
// }
// lastTime = System.currentTimeMillis();
//
// location[0] = event.getRawX();
// location[1] = event.getRawY();
//
// break;
// case MotionEvent.ACTION_UP:
// mPressed = false;
// break;
// case MotionEvent.ACTION_CANCEL:
// mPressed = false;
// break;
// case MotionEvent.ACTION_MOVE:
// float x = event.getRawX();
// float y = event.getRawY();
// if (Math.abs(location[0] - x) > 5.0f && Math.abs(location[1] - y) > 5.0f) {
// mClose = false;
// }
// break;
// }
//
// return false;
// }
//
//
// class CheckForSinglePress implements Runnable {
//
// public void run() {
//
// if (!mPressed && mClose)
// finish();
//
// }
//
// }
// });
//
// msg = (MessageBean) getIntent().getParcelableExtra("msg");
// if (Utility.isTaskStopped(task)) {
// task = new PicSimpleBitmapWorkerTask(hd);
// task.executeOnExecutor(MyAsyncTask.THREAD_POOL_EXECUTOR);
// }
//
// initOnClickListener();
//
// String largePath = FileManager.getFilePathFromUrl(msg.getOriginal_pic(), FileLocationMethod.picture_large);
// if (new File(largePath).exists()) {
// layout.hd.setVisibility(View.GONE);
// }
// }
//
// private void initOnClickListener() {
// layout.refresh.setOnClickListener(onClickListener);
// layout.copy.setOnClickListener(onClickListener);
// layout.share.setOnClickListener(onClickListener);
// layout.save.setOnClickListener(onClickListener);
// layout.hd.setOnClickListener(onClickListener);
//
// CheatSheet.setup(this, layout.refresh, R.string.refresh);
// CheatSheet.setup(this, layout.copy, R.string.copy_link_to_clipboard);
// CheatSheet.setup(this, layout.share, R.string.share);
// CheatSheet.setup(this, layout.save, R.string.save_pic_album);
// CheatSheet.setup(this, layout.hd, R.string.switch_to_ori_pic);
// }
//
// private View.OnClickListener onClickListener = new View.OnClickListener() {
// @Override
// public void onClick(View v) {
// switch (v.getId()) {
// case R.id.ib_refresh:
// if (task != null) {
// task.cancel(true);
// }
//
// if (!TextUtils.isEmpty(path)) {
// new File(path).delete();
// }
//
// task = new PicSimpleBitmapWorkerTask(hd);
//
// task.executeOnExecutor(MyAsyncTask.THREAD_POOL_EXECUTOR);
//
// break;
// case R.id.ib_copy:
// ClipboardManager cm = (ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);
// cm.setPrimaryClip(ClipData.newPlainText("sinaweibo", msg.getOriginal_pic()));
// Toast.makeText(BrowserBigPicActivity.this, getString(R.string.copy_successfully), Toast.LENGTH_SHORT).show();
// break;
// case R.id.ib_share:
// Intent sharingIntent = new Intent(Intent.ACTION_SEND);
// sharingIntent.setType("image/jpeg");
// if (!TextUtils.isEmpty(path)) {
// Uri uri = Uri.fromFile(new File(path));
// sharingIntent.putExtra(Intent.EXTRA_STREAM, uri);
// if (Utility.isIntentSafe(BrowserBigPicActivity.this, sharingIntent)) {
// startActivity(Intent.createChooser(sharingIntent, getString(R.string.share)));
// }
// }
// break;
// case R.id.ib_save:
// if (task != null && task.getStatus() == MyAsyncTask.Status.FINISHED) {
// if (saveTask == null) {
// saveTask = new PicSaveTask();
// saveTask.executeOnExecutor(MyAsyncTask.THREAD_POOL_EXECUTOR);
// } else if (saveTask.getStatus() == MyAsyncTask.Status.FINISHED) {
// Toast.makeText(BrowserBigPicActivity.this, getString(R.string.already_saved), Toast.LENGTH_SHORT).show();
// }
// }
// break;
// case R.id.ib_hd:
// if (task != null) {
// task.cancel(true);
// }
// hd = true;
// task = new PicSimpleBitmapWorkerTask(hd);
// task.executeOnExecutor(MyAsyncTask.THREAD_POOL_EXECUTOR);
// path = "";
// break;
// }
// }
// };
//
// @Override
// protected void onSaveInstanceState(Bundle outState) {
// super.onSaveInstanceState(outState);
// outState.putParcelable("msg", msg);
// }
//
//
// private class PicSaveTask extends MyAsyncTask<Void, Boolean, Boolean> {
//
// @Override
// protected Boolean doInBackground(Void... params) {
// return FileManager.saveToPicDir(path);
// }
//
//
// @Override
// protected void onPostExecute(Boolean value) {
// super.onPostExecute(value);
// saveTask = null;
// if (value)
// Toast.makeText(BrowserBigPicActivity.this, getString(R.string.save_to_album_successfully), Toast.LENGTH_SHORT).show();
// else
// Toast.makeText(BrowserBigPicActivity.this, getString(R.string.cant_save_pic), Toast.LENGTH_SHORT).show();
// }
//
//
// }
//
// class PicSimpleBitmapWorkerTask extends MyAsyncTask<String, Integer, String> {
//
// FileDownloaderHttpHelper.DownloadListener downloadListener = new FileDownloaderHttpHelper.DownloadListener() {
// @Override
// public void pushProgress(int progress, int max) {
// publishProgress(progress, max);
// }
//
//
// };
//
// boolean hd;
//
// public PicSimpleBitmapWorkerTask(boolean hd) {
// this.hd = hd;
// }
//
// @Override
// protected void onPreExecute() {
// super.onPreExecute();
//// pb.setIndeterminate(true);
// layout.pb.setVisibility(View.VISIBLE);
// layout.webView.setVisibility(View.INVISIBLE);
// }
//
// @Override
// protected String doInBackground(String... dd) {
// if (isCancelled()) {
// return null;
// }
//
// TaskCache.waitForMsgDetailPictureDownload(msg, downloadListener);
//
// String middlePath = FileManager.getFilePathFromUrl(msg.getBmiddle_pic(), FileLocationMethod.picture_bmiddle);
// String largePath = FileManager.getFilePathFromUrl(msg.getOriginal_pic(), FileLocationMethod.picture_large);
// if (new File(largePath).exists()) {
// return largePath;
// } else if (!this.hd && new File(middlePath).exists()) {
// return middlePath;
// } else {
// String data = (this.hd ? msg.getOriginal_pic() : msg.getBmiddle_pic());
// FileLocationMethod method = (this.hd ? FileLocationMethod.picture_large : FileLocationMethod.picture_bmiddle);
// return ImageUtility.getLargePictureWithoutRoundedCorner(data, downloadListener, method);
//
// }
//
//
// }
//
// @Override
// protected void onProgressUpdate(Integer... values) {
// super.onProgressUpdate(values);
// int progress = values[0];
// int max = values[1];
//// pb.setIndeterminate(false);
// layout.pb.setMax(max);
// layout.pb.setProgress(progress);
// }
//
// @Override
// protected void onCancelled(String bitmap) {
// if (bitmap != null) {
//
//
// }
//
// super.onCancelled(bitmap);
// }
//
// @Override
// protected void onPostExecute(final String bitmapPath) {
//
// if (!TextUtils.isEmpty(bitmapPath)) {
// path = bitmapPath;
//
// File file = new File(bitmapPath);
//
// String str1 = "file://" + file.getAbsolutePath().replace("/mnt/sdcard/", "/sdcard/");
// String str2 = "<html>\n<head>\n <style>\n html,body{background:transparent;margin:0;padding:0;} *{-webkit-tap-highlight-color:rgba(0, 0, 0, 0);}\n </style>\n <script type=\"text/javascript\">\n var imgUrl = \"" + str1 + "\";" + " var objImage = new Image();\n" + " var realWidth = 0;\n" + " var realHeight = 0;\n" + "\n" + " function onLoad() {\n" + " objImage.onload = function() {\n" + " realWidth = objImage.width;\n" + " realHeight = objImage.height;\n" + "\n" + " document.gagImg.src = imgUrl;\n" + " onResize();\n" + " }\n" + " objImage.src = imgUrl;\n" + " }\n" + "\n" + " function onResize() {\n" + " var scale = 1;\n" + " var newWidth = document.gagImg.width;\n" + " if (realWidth > newWidth) {\n" + " scale = realWidth / newWidth;\n" + " } else {\n" + " scale = newWidth / realWidth;\n" + " }\n" + "\n" + " hiddenHeight = Math.ceil(30 * scale);\n" + " document.getElementById('hiddenBar').style.height = hiddenHeight + \"px\";\n" + " document.getElementById('hiddenBar').style.marginTop = -hiddenHeight + \"px\";\n" + " }\n" + " </script>\n" + "</head>\n" + "<body onload=\"onLoad()\" onresize=\"onResize()\" onclick=\"Android.toggleOverlayDisplay();\">\n" + " <table style=\"width: 100%;height:100%;\">\n" + " <tr style=\"width: 100%;\">\n" + " <td valign=\"middle\" align=\"center\" style=\"width: 100%;\">\n" + " <div style=\"display:block\">\n" + " <img name=\"gagImg\" src=\"\" width=\"100%\" style=\"\" />\n" + " </div>\n" + " <div id=\"hiddenBar\" style=\"position:absolute; width: 100%; background: transparent;\"></div>\n" + " </td>\n" + " </tr>\n" + " </table>\n" + "</body>\n" + "</html>";
// layout.webView.loadDataWithBaseURL("file:///android_asset/", str2, "text/html", "utf-8", null);
// layout.webView.setVisibility(View.VISIBLE);
// layout.pb.setVisibility(View.INVISIBLE);
//
// } else {
// layout.pb.setVisibility(View.GONE);
// int[] attrs = new int[]{R.attr.error};
// TypedArray ta = BrowserBigPicActivity.this.obtainStyledAttributes(attrs);
// Drawable drawableFromTheme = ta.getDrawable(0);
// // webView.setImageDrawable(drawableFromTheme);
// }
//
// }
//
//
// }
//
// @Override
// protected void onDestroy() {
// super.onDestroy();
// Utility.cancelTasks(task, saveTask);
// layout.webView.loadUrl("about:blank");
// layout.webView.stopLoading();
// }
//
// private class Layout {
// WebView webView;
// CircleProgressView pb;
//
// ImageButton refresh;
// ImageButton copy;
// ImageButton share;
// ImageButton save;
// ImageButton hd;
// }
//}