Java 1.7 updates

captchafix
Florens Douwes 11 years ago
parent 87a16d5619
commit fd5a4e7cf3
  1. 2
      Clover/app/src/main/java/org/floens/chan/core/loader/LoaderPool.java
  2. 8
      Clover/app/src/main/java/org/floens/chan/core/manager/BoardManager.java
  3. 4
      Clover/app/src/main/java/org/floens/chan/core/manager/PinnedManager.java
  4. 8
      Clover/app/src/main/java/org/floens/chan/core/manager/ThreadManager.java
  5. 6
      Clover/app/src/main/java/org/floens/chan/core/model/Post.java
  6. 35
      Clover/app/src/main/java/org/floens/chan/core/net/BoardsRequest.java
  7. 154
      Clover/app/src/main/java/org/floens/chan/core/net/ChanReaderRequest.java
  8. 2
      Clover/app/src/main/java/org/floens/chan/core/watch/PinWatcher.java
  9. 6
      Clover/app/src/main/java/org/floens/chan/core/watch/WatchNotifier.java
  10. 2
      Clover/app/src/main/java/org/floens/chan/ui/SwipeDismissListViewTouchListener.java
  11. 2
      Clover/app/src/main/java/org/floens/chan/ui/activity/BoardActivity.java
  12. 6
      Clover/app/src/main/java/org/floens/chan/ui/activity/BoardEditor.java
  13. 4
      Clover/app/src/main/java/org/floens/chan/ui/activity/ImageViewActivity.java
  14. 2
      Clover/app/src/main/java/org/floens/chan/ui/adapter/ImageViewAdapter.java
  15. 2
      Clover/app/src/main/java/org/floens/chan/ui/adapter/PinnedAdapter.java
  16. 2
      Clover/app/src/main/java/org/floens/chan/ui/adapter/PostAdapter.java
  17. 36
      Clover/app/src/main/java/org/floens/chan/ui/fragment/ImageViewFragment.java
  18. 4
      Clover/app/src/main/java/org/floens/chan/utils/ImageDecoder.java
  19. 16
      Clover/app/src/main/java/org/floens/chan/utils/ThemeHelper.java

@ -27,7 +27,7 @@ public class LoaderPool {
private static LoaderPool instance;
private static Map<Loadable, Loader> loaders = new HashMap<Loadable, Loader>();
private static Map<Loadable, Loader> loaders = new HashMap<>();
public static LoaderPool getInstance() {
if (instance == null) {

@ -42,8 +42,8 @@ public class BoardManager {
private List<Board> allBoards;
private final List<String> savedKeys = new ArrayList<String>();
private final List<String> savedValues = new ArrayList<String>();
private final List<String> savedKeys = new ArrayList<>();
private final List<String> savedValues = new ArrayList<>();
public BoardManager() {
loadBoards();
@ -55,7 +55,7 @@ public class BoardManager {
}
public List<Board> getSavedBoards() {
List<Board> saved = new ArrayList<Board>(allBoards.size());
List<Board> saved = new ArrayList<>(allBoards.size());
for (Board b : allBoards) {
if (b.saved)
@ -178,7 +178,7 @@ public class BoardManager {
}
private List<Board> getDefaultBoards() {
List<Board> list = new ArrayList<Board>();
List<Board> list = new ArrayList<>();
list.add(new Board("Technology", "g", true, true));
list.add(new Board("Video Games", "v", true, true));
list.add(new Board("Anime & Manga", "a", true, true));

@ -27,7 +27,7 @@ import java.util.ArrayList;
import java.util.List;
public class PinnedManager {
private final List<PinListener> listeners = new ArrayList<PinListener>();
private final List<PinListener> listeners = new ArrayList<>();
private final List<Pin> pins;
public PinnedManager(Context context) {
@ -65,7 +65,7 @@ public class PinnedManager {
}
public List<Pin> getWatchingPins() {
List<Pin> l = new ArrayList<Pin>();
List<Pin> l = new ArrayList<>();
for (Pin p : pins) {
if (p.watching)

@ -65,7 +65,7 @@ public class ThreadManager implements Loader.LoaderListener {
private final Activity activity;
private final ThreadManager.ThreadManagerListener threadManagerListener;
private final List<List<Post>> popupQueue = new ArrayList<List<Post>>();
private final List<List<Post>> popupQueue = new ArrayList<>();
private PostRepliesFragment currentPopupFragment;
private int highlightedPost = -1;
private int lastSeenPost = -1;
@ -214,7 +214,7 @@ public class ThreadManager implements Loader.LoaderListener {
public void onPostLongClicked(final Post post) {
AlertDialog.Builder builder = new AlertDialog.Builder(activity);
List<String> options = new ArrayList<String>(Arrays.asList(activity.getResources().getStringArray(R.array.post_options)));
List<String> options = new ArrayList<>(Arrays.asList(activity.getResources().getStringArray(R.array.post_options)));
// Only add the delete option when the post is a saved reply
boolean delete = false, saved = false;
if (ChanApplication.getDatabaseManager().isSavedReply(post.board, post.no)) {
@ -380,7 +380,7 @@ public class ThreadManager implements Loader.LoaderListener {
}
public void showPostReplies(Post post) {
List<Post> p = new ArrayList<Post>();
List<Post> p = new ArrayList<>();
for (int no : post.repliesFrom) {
Post r = findPostById(no);
if (r != null) {
@ -444,7 +444,7 @@ public class ThreadManager implements Loader.LoaderListener {
post = findPostById(id);
if (post != null) {
List<Post> l = new ArrayList<Post>();
List<Post> l = new ArrayList<>();
l.add(post);
showPostsRepliesFragment(l);
}

@ -73,14 +73,14 @@ public class Post {
/**
* This post replies to the these ids
*/
public List<Integer> repliesTo = new ArrayList<Integer>();
public List<Integer> repliesTo = new ArrayList<>();
/**
* These ids replied to this post
*/
public List<Integer> repliesFrom = new ArrayList<Integer>();
public List<Integer> repliesFrom = new ArrayList<>();
public final ArrayList<PostLinkable> linkables = new ArrayList<PostLinkable>();
public final ArrayList<PostLinkable> linkables = new ArrayList<>();
public boolean parsedSpans = false;
public SpannableString subjectSpan;

@ -39,7 +39,7 @@ public class BoardsRequest extends JsonReaderRequest<List<Board>> {
}
private List<Board> parseJson(JsonReader reader) {
List<Board> list = new ArrayList<Board>();
List<Board> list = new ArrayList<>();
try {
reader.beginObject();
@ -59,11 +59,7 @@ public class BoardsRequest extends JsonReaderRequest<List<Board>> {
}
}
reader.endObject();
} catch (IOException e) {
e.printStackTrace();
} catch (NumberFormatException e) {
e.printStackTrace();
} catch (IllegalStateException e) {
} catch (IOException | IllegalStateException | NumberFormatException e) {
e.printStackTrace();
}
@ -83,17 +79,22 @@ public class BoardsRequest extends JsonReaderRequest<List<Board>> {
while (reader.hasNext()) {
String key = reader.nextName();
if (key.equals("title")) {
// Post number
board.key = reader.nextString();
} else if (key.equals("board")) {
board.value = reader.nextString();
} else if (key.equals("ws_board")) {
if (reader.nextInt() == 1) {
board.workSafe = true;
}
} else {
reader.skipValue();
switch (key) {
case "title":
// Post number
board.key = reader.nextString();
break;
case "board":
board.value = reader.nextString();
break;
case "ws_board":
if (reader.nextInt() == 1) {
board.workSafe = true;
}
break;
default:
reader.skipValue();
break;
}
}

@ -68,7 +68,7 @@ public class ChanReaderRequest extends JsonReaderRequest<List<Post>> {
@Override
public List<Post> readJson(JsonReader reader) {
List<Post> list = new ArrayList<Post>();
List<Post> list = new ArrayList<>();
if (loadable.isBoardMode()) {
list = loadBoard(reader);
@ -100,7 +100,7 @@ public class ChanReaderRequest extends JsonReaderRequest<List<Post>> {
}
private List<Post> loadThread(JsonReader reader) {
ArrayList<Post> list = new ArrayList<Post>();
ArrayList<Post> list = new ArrayList<>();
try {
reader.beginObject();
@ -119,13 +119,7 @@ public class ChanReaderRequest extends JsonReaderRequest<List<Post>> {
}
}
reader.endObject();
} catch (IOException e) {
e.printStackTrace();
setError(new ParseError(e));
} catch (NumberFormatException e) {
e.printStackTrace();
setError(new ParseError(e));
} catch (IllegalStateException e) {
} catch (IOException | IllegalStateException | NumberFormatException e) {
e.printStackTrace();
setError(new ParseError(e));
}
@ -134,7 +128,7 @@ public class ChanReaderRequest extends JsonReaderRequest<List<Post>> {
}
private List<Post> loadBoard(JsonReader reader) {
ArrayList<Post> list = new ArrayList<Post>();
ArrayList<Post> list = new ArrayList<>();
try {
reader.beginObject(); // Threads array
@ -168,13 +162,7 @@ public class ChanReaderRequest extends JsonReaderRequest<List<Post>> {
}
reader.endObject();
} catch (IOException e) {
e.printStackTrace();
setError(new ParseError(e));
} catch (NumberFormatException e) {
e.printStackTrace();
setError(new ParseError(e));
} catch (IllegalStateException e) {
} catch (IOException | IllegalStateException | NumberFormatException e) {
e.printStackTrace();
setError(new ParseError(e));
}
@ -183,7 +171,7 @@ public class ChanReaderRequest extends JsonReaderRequest<List<Post>> {
}
private List<Post> loadCatalog(JsonReader reader) {
ArrayList<Post> list = new ArrayList<Post>();
ArrayList<Post> list = new ArrayList<>();
try {
reader.beginArray(); // Array of pages
@ -209,13 +197,7 @@ public class ChanReaderRequest extends JsonReaderRequest<List<Post>> {
}
reader.endArray();
} catch (IOException e) {
e.printStackTrace();
setError(new ParseError(e));
} catch (NumberFormatException e) {
e.printStackTrace();
setError(new ParseError(e));
} catch (IllegalStateException e) {
} catch (IOException | IllegalStateException | NumberFormatException e) {
e.printStackTrace();
setError(new ParseError(e));
}
@ -231,59 +213,83 @@ public class ChanReaderRequest extends JsonReaderRequest<List<Post>> {
while (reader.hasNext()) {
String key = reader.nextName();
if (key.equals("no")) {
// Post number
post.no = reader.nextInt();
switch (key) {
case "no":
// Post number
post.no = reader.nextInt();
/*} else if (key.equals("time")) {
// Time
long time = reader.nextLong();
post.date = new Date(time * 1000);*/
} else if (key.equals("now")) {
post.date = reader.nextString();
} else if (key.equals("name")) {
post.name = reader.nextString();
} else if (key.equals("com")) {
post.setComment(reader.nextString());
} else if (key.equals("tim")) {
post.tim = reader.nextString();
} else if (key.equals("time")) {
post.time = reader.nextLong();
} else if (key.equals("email")) {
post.email = reader.nextString();
} else if (key.equals("ext")) {
post.ext = reader.nextString().replace(".", "");
} else if (key.equals("resto")) {
post.resto = reader.nextInt();
} else if (key.equals("w")) {
post.imageWidth = reader.nextInt();
} else if (key.equals("h")) {
post.imageHeight = reader.nextInt();
} else if (key.equals("fsize")) {
post.fileSize = reader.nextInt();
} else if (key.equals("sub")) {
post.subject = reader.nextString();
} else if (key.equals("replies")) {
post.replies = reader.nextInt();
} else if (key.equals("filename")) {
post.filename = reader.nextString();
} else if (key.equals("sticky")) {
post.sticky = reader.nextInt() == 1;
} else if (key.equals("closed")) {
post.closed = reader.nextInt() == 1;
} else if (key.equals("trip")) {
post.tripcode = reader.nextString();
} else if (key.equals("country")) {
post.country = reader.nextString();
} else if (key.equals("country_name")) {
post.countryName = reader.nextString();
} else if (key.equals("id")) {
post.id = reader.nextString();
} else if (key.equals("capcode")) {
post.capcode = reader.nextString();
} else {
// Unknown/ignored key
// log("Unknown/ignored key: " + key + ".");
reader.skipValue();
break;
case "now":
post.date = reader.nextString();
break;
case "name":
post.name = reader.nextString();
break;
case "com":
post.setComment(reader.nextString());
break;
case "tim":
post.tim = reader.nextString();
break;
case "time":
post.time = reader.nextLong();
break;
case "email":
post.email = reader.nextString();
break;
case "ext":
post.ext = reader.nextString().replace(".", "");
break;
case "resto":
post.resto = reader.nextInt();
break;
case "w":
post.imageWidth = reader.nextInt();
break;
case "h":
post.imageHeight = reader.nextInt();
break;
case "fsize":
post.fileSize = reader.nextInt();
break;
case "sub":
post.subject = reader.nextString();
break;
case "replies":
post.replies = reader.nextInt();
break;
case "filename":
post.filename = reader.nextString();
break;
case "sticky":
post.sticky = reader.nextInt() == 1;
break;
case "closed":
post.closed = reader.nextInt() == 1;
break;
case "trip":
post.tripcode = reader.nextString();
break;
case "country":
post.country = reader.nextString();
break;
case "country_name":
post.countryName = reader.nextString();
break;
case "id":
post.id = reader.nextString();
break;
case "capcode":
post.capcode = reader.nextString();
break;
default:
// Unknown/ignored key
// log("Unknown/ignored key: " + key + ".");
reader.skipValue();
break;
}
}
reader.endObject();

@ -35,7 +35,7 @@ public class PinWatcher implements Loader.LoaderListener {
private final Pin pin;
private Loader loader;
private final List<Post> posts = new ArrayList<Post>();
private final List<Post> posts = new ArrayList<>();
private boolean wereNewQuotes = false;
public PinWatcher(Pin pin) {

@ -84,10 +84,10 @@ public class WatchNotifier {
private void prepareNotification() {
List<Pin> watchingPins = ChanApplication.getPinnedManager().getWatchingPins();
List<Pin> pins = new ArrayList<Pin>();
List<Pin> pins = new ArrayList<>();
int newPostsCount = 0;
int newQuotesCount = 0;
List<Post> posts = new ArrayList<Post>();
List<Post> posts = new ArrayList<>();
boolean makeSound = false;
boolean show = false;
@ -140,7 +140,7 @@ public class WatchNotifier {
Collections.sort(posts, new PostAgeComparer());
List<CharSequence> lines = new ArrayList<CharSequence>();
List<CharSequence> lines = new ArrayList<>();
for (Post post : posts) {
CharSequence comment;
if (post.comment.length() == 0) {

@ -85,7 +85,7 @@ public class SwipeDismissListViewTouchListener implements View.OnTouchListener {
private int mViewWidth = 1; // 1 and not 0 to prevent dividing by zero
// Transient properties
private final List<PendingDismissData> mPendingDismisses = new ArrayList<PendingDismissData>();
private final List<PendingDismissData> mPendingDismisses = new ArrayList<>();
private int mDismissAnimationRefCount = 0;
private float mDownX;
private boolean mSwiping;

@ -73,7 +73,7 @@ public class BoardActivity extends BaseActivity implements ActionBar.OnNavigatio
final ActionBar actionBar = getActionBar();
actionBar.setListNavigationCallbacks(
new ArrayAdapter<String>(actionBar.getThemedContext(), R.layout.board_select_spinner,
new ArrayAdapter<>(actionBar.getThemedContext(), R.layout.board_select_spinner,
android.R.id.text1, ChanApplication.getBoardManager().getSavedKeys()), this
);

@ -245,7 +245,7 @@ public class BoardEditor extends Activity {
private List<Board> currentlyEditing;
private View autoCompleteView;
private final Filter filter;
private final List<Board> filtered = new ArrayList<Board>();
private final List<Board> filtered = new ArrayList<>();
public FillAdapter(Context context, int resource) {
super(context, resource);
@ -334,7 +334,7 @@ public class BoardEditor extends Activity {
private List<Board> getFiltered(String filter) {
String lowered = filter.toLowerCase(Locale.ENGLISH);
List<Board> list = new ArrayList<Board>();
List<Board> list = new ArrayList<>();
for (Board b : getBoards()) {
if ((b.key.toLowerCase(Locale.ENGLISH).contains(lowered) || b.value.toLowerCase(Locale.ENGLISH)
.contains(lowered))) {
@ -363,7 +363,7 @@ public class BoardEditor extends Activity {
}
}
List<Board> s = new ArrayList<Board>();
List<Board> s = new ArrayList<>();
for (Board b : ChanApplication.getBoardManager().getAllBoards()) {
if (!haveBoard(b.value) && (showUnsafe || b.workSafe))
s.add(b);

@ -75,7 +75,7 @@ public class ImageViewActivity extends Activity implements ViewPager.OnPageChang
if (postAdapter != null) {
// Get the posts with images
ArrayList<Post> imagePosts = new ArrayList<Post>();
ArrayList<Post> imagePosts = new ArrayList<>();
for (Post post : postAdapter.getList()) {
if (post.hasImage) {
imagePosts.add(post);
@ -166,7 +166,7 @@ public class ImageViewActivity extends Activity implements ViewPager.OnPageChang
finish();
return true;
} else if (item.getItemId() == R.id.action_download_album) {
List<Uri> uris = new ArrayList<Uri>();
List<Uri> uris = new ArrayList<>();
Post aPost = null;
for (Post post : adapter.getList()) {
uris.add(Uri.parse(post.imageUrl));

@ -32,7 +32,7 @@ import java.util.List;
public class ImageViewAdapter extends FragmentStatePagerAdapter {
private final ImageViewActivity activity;
private final ArrayList<Post> postList = new ArrayList<Post>();
private final ArrayList<Post> postList = new ArrayList<>();
public ImageViewAdapter(FragmentManager fragmentManager, ImageViewActivity activity) {
super(fragmentManager);

@ -41,7 +41,7 @@ public class PinnedAdapter extends ArrayAdapter<Pin> {
public PinnedAdapter(Context context, int resId) {
super(context, resId, new ArrayList<Pin>());
idMap = new HashMap<Pin, Integer>();
idMap = new HashMap<>();
}
@Override

@ -43,7 +43,7 @@ public class PostAdapter extends BaseAdapter {
private final ThreadManager threadManager;
private final ListView listView;
private boolean endOfLine;
private final List<Post> postList = new ArrayList<Post>();
private final List<Post> postList = new ArrayList<>();
private long lastViewedTime = 0;
private String loadMessage = null;

@ -120,24 +120,28 @@ public class ImageViewFragment extends Fragment implements ThumbnailImageViewCal
if (loaded) return;
loaded = true;
if (post.ext.equals("gif")) {
imageView.setGif(post.imageUrl);
} else if (post.ext.equals("webm")) {
isVideo = true;
activity.invalidateActionBar();
showProgressBar(false);
if (tapToLoad) {
if (!videoVisible) {
startVideo();
} else {
if (imageView.getVideoView() != null) {
imageView.getVideoView().start();
switch (post.ext) {
case "gif":
imageView.setGif(post.imageUrl);
break;
case "webm":
isVideo = true;
activity.invalidateActionBar();
showProgressBar(false);
if (tapToLoad) {
if (!videoVisible) {
startVideo();
} else {
if (imageView.getVideoView() != null) {
imageView.getVideoView().start();
}
}
}
}
} else {
imageView.setBigImage(post.imageUrl);
break;
default:
imageView.setBigImage(post.imageUrl);
break;
}
}

@ -51,9 +51,7 @@ public class ImageDecoder {
IOUtils.copy(fis, baos);
bitmap = decode(baos.toByteArray(), maxWidth, maxHeight);
} catch (IOException e) {
e.printStackTrace();
} catch (OutOfMemoryError e) {
} catch (IOException | OutOfMemoryError e) {
e.printStackTrace();
} finally {
try {

@ -48,12 +48,16 @@ public class ThemeHelper {
String themeName = ChanPreferences.getTheme();
Theme theme = null;
if (themeName.equals("light")) {
theme = Theme.LIGHT;
} else if (themeName.equals("dark")) {
theme = Theme.DARK;
} else if (themeName.equals("black")) {
theme = Theme.BLACK;
switch (themeName) {
case "light":
theme = Theme.LIGHT;
break;
case "dark":
theme = Theme.DARK;
break;
case "black":
theme = Theme.BLACK;
break;
}
return theme;

Loading…
Cancel
Save