Adjust similar gallery strategy

This commit is contained in:
seven332 committed 2016-03-23 14:09:15 +08:00
1 parent 281af4140a
commit 7515303e87
2 files changed
+28

No files matched your search

@@ -18,12 +18,15 @@ package com.hippo.ehviewer.client;
import android.content.Context;
import android.graphics.Color;
import android.support.annotation.Nullable;
import android.text.TextUtils;
import com.hippo.ehviewer.EhApplication;
import com.hippo.ehviewer.Settings;
import com.hippo.ehviewer.client.data.GalleryInfo;
import java.util.regex.Pattern;
public class EhUtils {
public static final int NONE = -1; // Use it for homepage
@@ -44,6 +47,9 @@ public class EhUtils {
public static final int BG_COLOR_MISC = 0xfff06292;
public static final int BG_COLOR_UNKNOWN = Color.BLACK;
public static final Pattern PATTERN_TITLE_PREFIX = Pattern.compile("^(?:(?:\\([^\\)]*\\))|(?:\\[[^\\]]*\\])|(?:\\{[^\\}]*\\})|(?:~[^~]*~)|\\s+)*");
public static final Pattern PATTERN_TITLE_SUFFIX = Pattern.compile("(?:(?:\\([^\\)]*\\))|(?:\\[[^\\]]*\\])|(?:\\{[^\\}]*\\})|(?:~[^~]*~)|\\s+)*$");
private static final int[] CATEGORY_VALUES = {
EhConfig.MISC,
EhConfig.DOUJINSHI,
@@ -136,4 +142,18 @@ public class EhUtils {
return TextUtils.isEmpty(gi.title) ? gi.titleJpn : gi.title;
}
}
@Nullable
public static String extractTitle(String title) {
if (null == title) {
return null;
}
title = PATTERN_TITLE_PREFIX.matcher(title).replaceFirst("");
title = PATTERN_TITLE_SUFFIX.matcher(title).replaceFirst("");
if (title.isEmpty()) {
return null;
} else {
return title;
}
}
}
@@ -1005,6 +1005,14 @@ public class GalleryDetailScene extends BaseScene implements View.OnClickListene
if (null == gd) {
return;
}
String keyword = EhUtils.extractTitle(gd.title);
if (null != keyword) {
ListUrlBuilder lub = new ListUrlBuilder();
lub.setMode(ListUrlBuilder.MODE_NORMAL);
lub.setKeyword(keyword);
GalleryListScene.startScene(this, lub);
return;
}
String artist = getArtist(gd.tags);
if (null != artist) {
ListUrlBuilder lub = new ListUrlBuilder();