fix reveal image spoilers option

also add a description to the setting.
refactor-toolbar
Floens 8 years ago
parent b6df25fa71
commit 581f792765
  1. 4
      Clover/app/src/main/java/org/floens/chan/core/manager/WatchManager.java
  2. 16
      Clover/app/src/main/java/org/floens/chan/core/model/PostImage.java
  3. 2
      Clover/app/src/main/java/org/floens/chan/core/presenter/ThreadPresenter.java
  4. 10
      Clover/app/src/main/java/org/floens/chan/core/site/common/FutabaChanReader.java
  5. 4
      Clover/app/src/main/java/org/floens/chan/ui/controller/ImageViewerController.java
  6. 3
      Clover/app/src/main/java/org/floens/chan/ui/controller/MediaSettingsController.java
  7. 2
      Clover/app/src/main/java/org/floens/chan/ui/view/MultiImageView.java
  8. 2
      Clover/app/src/main/java/org/floens/chan/ui/view/PostImageThumbnailView.java
  9. 2
      Clover/app/src/main/res/values/strings.xml

@ -166,7 +166,7 @@ public class WatchManager {
pin.loadable = loadable;
pin.loadable.title = PostHelper.getTitle(opPost, loadable);
PostImage image = opPost.image;
pin.thumbnailUrl = image == null ? "" : image.thumbnailUrl.toString();
pin.thumbnailUrl = image == null ? "" : image.getThumbnailUrl().toString();
return createPin(pin);
}
@ -756,7 +756,7 @@ public class WatchManager {
pin.isError = false;
if (pin.thumbnailUrl == null && thread.op != null && thread.op.image != null) {
pin.thumbnailUrl = thread.op.image.thumbnailUrl.toString();
pin.thumbnailUrl = thread.op.image.getThumbnailUrl().toString();
}
// Populate posts list

@ -28,6 +28,7 @@ public class PostImage {
public final String originalName;
public final HttpUrl thumbnailUrl;
public final HttpUrl spoilerThumbnailUrl;
public final HttpUrl imageUrl;
public final String filename;
public final String extension;
@ -41,6 +42,7 @@ public class PostImage {
private PostImage(Builder builder) {
this.originalName = builder.originalName;
this.thumbnailUrl = builder.thumbnailUrl;
this.spoilerThumbnailUrl = builder.spoilerThumbnailUrl;
this.imageUrl = builder.imageUrl;
this.filename = builder.filename;
this.extension = builder.extension;
@ -62,9 +64,18 @@ public class PostImage {
}
}
public HttpUrl getThumbnailUrl() {
if (!spoiler) {
return thumbnailUrl;
} else {
return spoilerThumbnailUrl;
}
}
public static final class Builder {
private String originalName;
private HttpUrl thumbnailUrl;
private HttpUrl spoilerThumbnailUrl;
private HttpUrl imageUrl;
private String filename;
private String extension;
@ -86,6 +97,11 @@ public class PostImage {
return this;
}
public Builder spoilerThumbnailUrl(HttpUrl spoilerThumbnailUrl) {
this.spoilerThumbnailUrl = spoilerThumbnailUrl;
return this;
}
public Builder imageUrl(HttpUrl imageUrl) {
this.imageUrl = imageUrl;
return this;

@ -708,7 +708,7 @@ public class ThreadPresenter implements ChanLoader.ChanLoaderCallback, PostAdapt
History history = new History();
history.loadable = loadable;
PostImage image = chanLoader.getThread().op.image;
history.thumbnailUrl = image == null ? "" : image.thumbnailUrl.toString();
history.thumbnailUrl = image == null ? "" : image.getThumbnailUrl().toString();
databaseManager.runTaskAsync(databaseManager.getDatabaseHistoryManager().addHistory(history));
}
}

@ -219,13 +219,13 @@ public class FutabaChanReader implements ChanReader {
SiteEndpoints endpoints = queue.getLoadable().getSite().endpoints();
if (fileId != null && fileName != null && fileExt != null) {
Map<String, String> hack = new HashMap<>(2);
hack.put("tim", fileId);
hack.put("ext", fileExt);
Map<String, String> args = makeArgument("tim", fileId,
"ext", fileExt);
builder.image(new PostImage.Builder()
.originalName(String.valueOf(fileId))
.thumbnailUrl(endpoints.thumbnailUrl(builder, fileSpoiler, hack))
.imageUrl(endpoints.imageUrl(builder, hack))
.thumbnailUrl(endpoints.thumbnailUrl(builder, false, args))
.spoilerThumbnailUrl(endpoints.thumbnailUrl(builder, true, args))
.imageUrl(endpoints.imageUrl(builder, args))
.filename(Parser.unescapeEntities(fileName, false))
.extension(fileExt)
.imageWidth(fileWidth)

@ -397,7 +397,7 @@ public class ImageViewerController extends Controller implements ImageViewerPres
}
});
imageLoader.get(postImage.thumbnailUrl.toString(), new ImageLoader.ImageListener() {
imageLoader.get(postImage.getThumbnailUrl().toString(), new ImageLoader.ImageListener() {
@Override
public void onErrorResponse(VolleyError error) {
Log.e(TAG, "onErrorResponse for preview in transition in ImageViewerController, cannot show correct transition bitmap");
@ -419,7 +419,7 @@ public class ImageViewerController extends Controller implements ImageViewerPres
return;
}
imageLoader.get(postImage.thumbnailUrl.toString(), new ImageLoader.ImageListener() {
imageLoader.get(postImage.getThumbnailUrl().toString(), new ImageLoader.ImageListener() {
@Override
public void onErrorResponse(VolleyError error) {
Log.e(TAG, "onErrorResponse for preview out transition in ImageViewerController, cannot show correct transition bitmap");

@ -110,7 +110,8 @@ public class MediaSettingsController extends SettingsController {
media.add(new BooleanSettingView(this,
ChanSettings.revealImageSpoilers,
R.string.settings_reveal_image_spoilers, 0));
R.string.settings_reveal_image_spoilers,
R.string.settings_reveal_image_spoilers_description));
groups.add(media);
}

@ -128,7 +128,7 @@ public class MultiImageView extends FrameLayout implements View.OnClickListener
public boolean onMeasured(View view) {
switch (newMode) {
case LOWRES:
setThumbnail(postImage.thumbnailUrl.toString());
setThumbnail(postImage.getThumbnailUrl().toString());
break;
case BIGIMAGE:
setBigImage(postImage.imageUrl.toString());

@ -52,7 +52,7 @@ public class PostImageThumbnailView extends ThumbnailView {
this.postImage = postImage;
if (postImage != null) {
setUrl(postImage.thumbnailUrl.toString(), width, height);
setUrl(postImage.getThumbnailUrl().toString(), width, height);
} else {
setUrl(null, width, height);
}

@ -514,7 +514,7 @@ Re-enable this permission in the app settings if you permanently disabled it."</
<string name="setting_share_url">Share url to image</string>
<string name="setting_share_url_description">Share the url to the image instead of the image itself</string>
<string name="settings_reveal_image_spoilers">Reveal image spoilers</string>
<string name="settings_reveal_image_spoilers_description">Always reveal spoiler thumbnails and images.</string>
<!-- Media loading group -->
<string name="settings_group_media_loading">Media loading</string>

Loading…
Cancel
Save