From 36f00ab56829ec0ac93e18f03c25a27a7727c6d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8F=E7=99=BD-=E7=99=BD?= Date: Mon, 5 Dec 2022 16:55:18 +0800 Subject: [PATCH] Fix disowned parsing --- .../ehviewer/client/parser/GalleryDetailParser.java | 2 +- .../ehviewer/client/parser/GalleryListParser.java | 4 +++- .../hippo/ehviewer/ui/scene/GalleryDetailScene.java | 10 +++++++++- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/com/hippo/ehviewer/client/parser/GalleryDetailParser.java b/app/src/main/java/com/hippo/ehviewer/client/parser/GalleryDetailParser.java index 5eb09494b..6f3bf0923 100644 --- a/app/src/main/java/com/hippo/ehviewer/client/parser/GalleryDetailParser.java +++ b/app/src/main/java/com/hippo/ehviewer/client/parser/GalleryDetailParser.java @@ -178,7 +178,7 @@ public class GalleryDetailParser { // Uploader Element gdn = gm.getElementById("gdn"); if (null != gdn) { - gd.disowned = "opacity:0.5".equals(gdn.attr("style")); + gd.disowned = gdn.attr("style").contains("opacity:0.5"); gd.uploader = StringUtils.trim(gdn.text()); } else { gd.uploader = ""; diff --git a/app/src/main/java/com/hippo/ehviewer/client/parser/GalleryListParser.java b/app/src/main/java/com/hippo/ehviewer/client/parser/GalleryListParser.java index 1ba324757..2f9ae3225 100644 --- a/app/src/main/java/com/hippo/ehviewer/client/parser/GalleryListParser.java +++ b/app/src/main/java/com/hippo/ehviewer/client/parser/GalleryListParser.java @@ -254,10 +254,12 @@ public class GalleryListParser { if (children.size() > uploaderIndex) { Element div = children.get(uploaderIndex); if (div != null) { - gi.disowned = "opacity:0.5".equals(div.attr("style")); + gi.disowned = div.attr("style").contains("opacity:0.5"); Element a = div.children().first(); if (a != null) { gi.uploader = a.text().trim(); + } else { + gi.uploader = div.text().trim(); } } } diff --git a/app/src/main/java/com/hippo/ehviewer/ui/scene/GalleryDetailScene.java b/app/src/main/java/com/hippo/ehviewer/ui/scene/GalleryDetailScene.java index 2c5acb6d3..e69ea278a 100755 --- a/app/src/main/java/com/hippo/ehviewer/ui/scene/GalleryDetailScene.java +++ b/app/src/main/java/com/hippo/ehviewer/ui/scene/GalleryDetailScene.java @@ -412,6 +412,11 @@ public class GalleryDetailScene extends CollapsingToolbarScene implements View.O } } + // Judging by the uploader to exclude the cooldown period + private boolean getDisowned() { + return getUploader().equals("(Disowned)"); + } + // -1 for error private int getCategory() { if (mGalleryDetail != null) { @@ -1121,7 +1126,7 @@ public class GalleryDetailScene extends CollapsingToolbarScene implements View.O } } else if (mUploader == v) { String uploader = getUploader(); - if (TextUtils.isEmpty(uploader)) { + if (TextUtils.isEmpty(uploader) || getDisowned()) { return; } ListUrlBuilder lub = new ListUrlBuilder(); @@ -1426,6 +1431,9 @@ public class GalleryDetailScene extends CollapsingToolbarScene implements View.O } if (mUploader == v) { + if (TextUtils.isEmpty(getUploader()) || getDisowned()) { + return false; + } showFilterUploaderDialog(); } else if (mDownload == v) { GalleryInfo galleryInfo = getGalleryInfo();