diff --git a/bin/EhViewer.apk b/bin/EhViewer.apk index 3d17eec52..dd129b6cc 100644 Binary files a/bin/EhViewer.apk and b/bin/EhViewer.apk differ diff --git a/bin/classes.dex b/bin/classes.dex index 2d323f917..c44803af7 100644 Binary files a/bin/classes.dex and b/bin/classes.dex differ diff --git a/bin/dexedLibs/android-support-v4-ad222bec85930bfd3f22cbfb79715dcb.jar b/bin/dexedLibs/android-support-v4-ad222bec85930bfd3f22cbfb79715dcb.jar index 84747b9c6..c054f2c25 100644 Binary files a/bin/dexedLibs/android-support-v4-ad222bec85930bfd3f22cbfb79715dcb.jar and b/bin/dexedLibs/android-support-v4-ad222bec85930bfd3f22cbfb79715dcb.jar differ diff --git a/bin/dexedLibs/commons-lang3-3.2.1-8a36c15e1c40f2ad0206e5389bc96b5a.jar b/bin/dexedLibs/commons-lang3-3.2.1-8a36c15e1c40f2ad0206e5389bc96b5a.jar index 9074d0169..803c29fad 100644 Binary files a/bin/dexedLibs/commons-lang3-3.2.1-8a36c15e1c40f2ad0206e5389bc96b5a.jar and b/bin/dexedLibs/commons-lang3-3.2.1-8a36c15e1c40f2ad0206e5389bc96b5a.jar differ diff --git a/bin/proguard.txt b/bin/proguard.txt deleted file mode 100644 index 3dad7c784..000000000 --- a/bin/proguard.txt +++ /dev/null @@ -1,122 +0,0 @@ -# view AndroidManifest.xml #generated:15 --keep class com.hippo.ehviewer.AppContext { (...); } - -# view AndroidManifest.xml #generated:24 --keep class com.hippo.ehviewer.StartActivity { (...); } - -# view AndroidManifest.xml #generated:77 --keep class com.hippo.ehviewer.activity.DownloadActivity { (...); } - -# view AndroidManifest.xml #generated:69 --keep class com.hippo.ehviewer.activity.FavouriteActivity { (...); } - -# view AndroidManifest.xml #generated:55 --keep class com.hippo.ehviewer.activity.MangaActivity { (...); } - -# view AndroidManifest.xml #generated:48 --keep class com.hippo.ehviewer.activity.MangaDetailActivity { (...); } - -# view AndroidManifest.xml #generated:86 --keep class com.hippo.ehviewer.activity.MangaDownloadActivity { (...); } - -# view AndroidManifest.xml #generated:35 --keep class com.hippo.ehviewer.activity.MangaListActivity { (...); } - -# view AndroidManifest.xml #generated:61 --keep class com.hippo.ehviewer.activity.SettingsActivity { (...); } - -# view res/layout/gl_root_group.xml #generated:7 --keep class com.hippo.ehviewer.gallery.ui.GLRootView { (...); } - -# view res/xml/settings.xml #generated:13 -# view res/xml/settings.xml #generated:21 -# view res/xml/settings.xml #generated:5 -# view res/xml/settings.xml #generated:71 --keep class com.hippo.ehviewer.preference.AutoListPreference { (...); } - -# view AndroidManifest.xml #generated:94 --keep class com.hippo.ehviewer.service.DownloadService { (...); } - -# view res/layout/dialog.xml #generated:70 -# view res/layout/dialog.xml #generated:77 -# view res/layout/dialog.xml #generated:84 --keep class com.hippo.ehviewer.view.AlertButton { (...); } - -# view res/layout/filter.xml #generated:19 -# view res/layout/filter.xml #generated:27 -# view res/layout/filter.xml #generated:37 -# view res/layout/filter.xml #generated:45 -# view res/layout/filter.xml #generated:55 -# view res/layout/filter.xml #generated:63 -# view res/layout/filter.xml #generated:73 -# view res/layout/filter.xml #generated:81 -# view res/layout/filter.xml #generated:91 -# view res/layout/filter.xml #generated:99 --keep class com.hippo.ehviewer.view.CheckImage { (...); } - -# view res/layout/download_item.xml #generated:1 --keep class com.hippo.ehviewer.view.DownloadItemLayout { (...); } - -# view res/layout/list.xml #generated:6 --keep class com.hippo.ehviewer.view.GetPaddingRelativeLayout { (...); } - -# view res/layout/manga.xml #generated:1 --keep class com.hippo.ehviewer.view.MangaViewPager { (...); } - -# view res/layout/detail.xml #generated:20 -# view res/layout/download_item.xml #generated:8 --keep class com.hippo.ehviewer.view.OlImageView { (...); } - -# view res/layout/list_menu_list.xml #generated:1 --keep class com.hippo.ehviewer.view.TagListView { (...); } - -# view res/layout/page_list.xml #generated:13 --keep class com.hippo.ehviewer.widget.AutoWrapLayout { (...); } - -# view res/layout/list.xml #generated:1 --keep class com.hippo.ehviewer.widget.DrawerLayout { (...); } - -# view res/layout/list_item.xml #generated:6 --keep class com.hippo.ehviewer.widget.LoadImageView { (...); } - -# view res/layout/list.xml #generated:12 --keep class com.hippo.ehviewer.widget.PullListView { (...); } - -# onClick res/layout/page_list_panel.xml #generated:6 --keepclassmembers class * { *** ButtonBack(...); } - -# onClick res/layout/page_list_panel.xml #generated:25 --keepclassmembers class * { *** ButtonFront(...); } - -# onClick res/layout/page_list.xml #generated:28 --keepclassmembers class * { *** ButtonPreviewRefresh(...); } - -# onClick res/layout/menu_login.xml #generated:17 --keepclassmembers class * { *** buttonCheckLogin(...); } - -# onClick res/layout/detail_offensive.xml #generated:41 --keepclassmembers class * { *** buttonEvery(...); } - -# onClick res/layout/detail_offensive.xml #generated:23 -# onClick res/layout/detail_pining.xml #generated:15 --keepclassmembers class * { *** buttonFinsh(...); } - -# onClick res/layout/menu_login.xml #generated:6 --keepclassmembers class * { *** buttonLogin(...); } - -# onClick res/layout/menu_login_over.xml #generated:16 --keepclassmembers class * { *** buttonLogout(...); } - -# onClick res/layout/detail_offensive.xml #generated:31 --keepclassmembers class * { *** buttonOnce(...); } - -# onClick res/layout/detail_normal.xml #generated:73 --keepclassmembers class * { *** buttonRead(...); } - -# onClick res/layout/detail.xml #generated:60 -# onClick res/layout/list.xml #generated:25 --keepclassmembers class * { *** buttonRefresh(...); } - -# onClick res/layout/page_list_panel.xml #generated:12 --keepclassmembers class * { *** goTo(...); } - diff --git a/bin/resources.ap_ b/bin/resources.ap_ index ebc6a32a6..e3de1f7cc 100644 Binary files a/bin/resources.ap_ and b/bin/resources.ap_ differ diff --git a/res/values-zh-rCN/strings.xml b/res/values-zh-rCN/strings.xml index 613004bcd..c4fbf12b7 100644 --- a/res/values-zh-rCN/strings.xml +++ b/res/values-zh-rCN/strings.xml @@ -153,8 +153,8 @@ 创建缓存错误 - 国外服务器 - 国内服务器 + Google + 七牛 添加标签 diff --git a/src/com/hippo/ehviewer/activity/MangaActivity.java b/src/com/hippo/ehviewer/activity/MangaActivity.java index 5d873bb38..bfc1ef610 100644 --- a/src/com/hippo/ehviewer/activity/MangaActivity.java +++ b/src/com/hippo/ehviewer/activity/MangaActivity.java @@ -150,6 +150,8 @@ public class MangaActivity extends Activity { private boolean testImage(String path, String name) { boolean isImage = false; File file = new File(path, name); + if (!file.exists() || !file.isFile()) + return false; FileInputStream fis = null; try { // Just test bound might error diff --git a/src/com/hippo/ehviewer/gallery/GalleryView.java b/src/com/hippo/ehviewer/gallery/GalleryView.java index 23bfa3b19..c8edf11c6 100644 --- a/src/com/hippo/ehviewer/gallery/GalleryView.java +++ b/src/com/hippo/ehviewer/gallery/GalleryView.java @@ -6,9 +6,6 @@ import android.graphics.Color; import android.graphics.Movie; import android.graphics.Rect; import android.graphics.RectF; - -import com.hippo.ehviewer.util.Log; - import android.view.MotionEvent; import com.hippo.ehviewer.R; @@ -24,6 +21,10 @@ import com.hippo.ehviewer.gallery.ui.GLView; import com.hippo.ehviewer.gallery.ui.GestureRecognizer; import com.hippo.ehviewer.gallery.util.GalleryUtils; import com.hippo.ehviewer.util.Config; +import com.hippo.ehviewer.util.Log; +import com.hippo.ehviewer.util.ThreadPool; +import com.hippo.ehviewer.util.ThreadPool.Job; +import com.hippo.ehviewer.util.ThreadPool.JobContext; import com.hippo.ehviewer.util.TimeRunner; import com.hippo.ehviewer.util.Ui; @@ -93,6 +94,7 @@ public class GalleryView extends GLView { // TODO private static final int BACKGROUND_COLOR = Color.BLACK; + @SuppressWarnings("unused") private static final int MASK_COLOR = 0x88000000; @@ -144,6 +146,8 @@ public class GalleryView extends GLView { private OnTapTextListener mOnTapTextListener; private OnScrollPageListener mOnScrollPageListener; + private ThreadPool mMovieWait; + public interface OnEdgeListener { public void onFirstPageEdge(); public void onLastPageEdge(); @@ -182,6 +186,8 @@ public class GalleryView extends GLView { setState(); + mMovieWait = new ThreadPool(1, 1); + mGestureRecognizer = new GestureRecognizer(mContext, new MyGestureListener()); setBackgroundColor(GalleryUtils.intColorToFloatARGBArray(BACKGROUND_COLOR)); @@ -296,24 +302,24 @@ public class GalleryView extends GLView { //canvas.fillRect(0, 0, mWidth, mHeight, MASK_COLOR); - // TODO - if (hasMovie) { - Log.d(TAG, "hasMovie"); - new Thread() { - @Override - public void run() { - try { - Thread.sleep(100); - } catch (InterruptedException e) { - e.printStackTrace(); - } finally { - invalidate(); - } - } - }.start(); - } + if (hasMovie) + mMovieWait.submit(mMovieShowJob); } + private Job mMovieShowJob = new Job() { + @Override + public Object run(JobContext jc) { + try { + Thread.sleep(100); + } catch (InterruptedException e) { + e.printStackTrace(); + } finally { + invalidate(); + } + return null; + } + }; + private void resetSizePosition() { resetSizePosition(PRE_TARGET_INDEX); resetSizePosition(CUR_TARGET_INDEX); @@ -579,11 +585,9 @@ public class GalleryView extends GLView { @Override public void onDecodeOver(Object res, int index) { int targetIndex = index - mCurIndex + 1; - ShowItem showItem; - Image image; if (targetIndex < 0 || targetIndex > 2 - || !((showItem = showItems[targetIndex]) instanceof EmptyItem)) {// If it do not need any more + || !(showItems[targetIndex] instanceof EmptyItem)) {// If it do not need any more if (res != null && res instanceof Bitmap) ((Bitmap)res).recycle(); } else { @@ -777,9 +781,14 @@ public class GalleryView extends GLView { } @Override - public boolean onSingleTapUp(float x, float y) { - if (mScrollState != SCROLL_NONE || mShowTapAreaTurn) + public boolean onSingleTapConfirmed(float x, float y) { + if (mScrollState != SCROLL_NONE) { return false; + } + if (mShowTapAreaTurn) { + mShowTapAreaTurn = false; + return false; + } if ( showItems[CUR_TARGET_INDEX] == null || showItems[CUR_TARGET_INDEX] instanceof Text) { @@ -815,6 +824,7 @@ public class GalleryView extends GLView { @Override public boolean onDoubleTap(float x, float y) { + Log.d(TAG, "onDoubleTap"); return true; } @@ -1029,8 +1039,13 @@ public class GalleryView extends GLView { @Override public void onUp() { mShowEdegTip = true; - if (!mShowTapArea) + + + // if use onSingleTapUp, use below + /* + * if (mShowTapAreaTurn) { mShowTapAreaTurn = false; + */ } // *** TimeRunner *** // @@ -1168,10 +1183,6 @@ public class GalleryView extends GLView { imageScale = 1; } - public boolean isLoaded() { - return mTexture != null; - } - @Override public void draw(GLCanvas canvas, int xOffset, int yOffset) { if (mTexture != null) { diff --git a/src/com/hippo/ehviewer/gallery/ui/GestureRecognizer.java b/src/com/hippo/ehviewer/gallery/ui/GestureRecognizer.java index 1dcd2e060..bb78f1664 100644 --- a/src/com/hippo/ehviewer/gallery/ui/GestureRecognizer.java +++ b/src/com/hippo/ehviewer/gallery/ui/GestureRecognizer.java @@ -29,7 +29,7 @@ public class GestureRecognizer { private static final String TAG = "GestureRecognizer"; public interface Listener { - boolean onSingleTapUp(float x, float y); + boolean onSingleTapConfirmed(float x, float y); boolean onDoubleTap(float x, float y); void onLongPress(MotionEvent e); boolean onScrollBegin(float dx, float dy, float totalX, float totalY); @@ -82,8 +82,8 @@ public class GestureRecognizer { float firstX = 0; float firstY = 0; @Override - public boolean onSingleTapUp(MotionEvent e) { - return mListener.onSingleTapUp(e.getX(), e.getY()); + public boolean onSingleTapConfirmed(MotionEvent e) { + return mListener.onSingleTapConfirmed(e.getX(), e.getY()); } @Override