summaryrefslogtreecommitdiff
path: root/org.fox.ttcomics/src/main/java/org
diff options
context:
space:
mode:
Diffstat (limited to 'org.fox.ttcomics/src/main/java/org')
-rw-r--r--org.fox.ttcomics/src/main/java/org/fox/ttcomics/CbrComicArchive.java69
-rw-r--r--org.fox.ttcomics/src/main/java/org/fox/ttcomics/ComicArchive.java2
-rw-r--r--org.fox.ttcomics/src/main/java/org/fox/ttcomics/ComicListFragment.java50
-rw-r--r--org.fox.ttcomics/src/main/java/org/fox/ttcomics/ComicPager.java7
4 files changed, 26 insertions, 102 deletions
diff --git a/org.fox.ttcomics/src/main/java/org/fox/ttcomics/CbrComicArchive.java b/org.fox.ttcomics/src/main/java/org/fox/ttcomics/CbrComicArchive.java
deleted file mode 100644
index b1fb65d..0000000
--- a/org.fox.ttcomics/src/main/java/org/fox/ttcomics/CbrComicArchive.java
+++ /dev/null
@@ -1,69 +0,0 @@
-package org.fox.ttcomics;
-
-import java.io.File;
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Comparator;
-import java.util.zip.ZipFile;
-
-import com.github.junrar.Archive;
-import com.github.junrar.exception.RarException;
-import com.github.junrar.rarfile.FileHeader;
-
-import android.util.Log;
-
-public class CbrComicArchive extends ComicArchive {
- private final String TAG = this.getClass().getSimpleName();
-
- private Archive m_archive;
- private ArrayList<FileHeader> m_entries = new ArrayList<FileHeader>();
-
- @Override
- public int getCount() {
- return m_entries.size();
- }
-
- @Override
- public InputStream getItem(int index) throws IOException {
- try {
- return m_archive.getInputStream(m_entries.get(index));
- } catch (RarException e) {
- e.printStackTrace();
- return null;
- } catch (OutOfMemoryError e) {
- e.printStackTrace();
- return null;
- }
- }
-
- public CbrComicArchive(String fileName) throws IOException, RarException {
- m_archive = new Archive(new File(fileName));
-
- FileHeader header = m_archive.nextFileHeader();
-
- while (header != null) {
- if (!header.isDirectory()) {
- String name = header.isUnicode() ? header.getFileNameW() : header.getFileNameString();
-
- if (isValidComic(name)) {
- m_entries.add(header);
- }
- }
-
- header = m_archive.nextFileHeader();
- }
-
- Collections.sort(m_entries, new Comparator<FileHeader>() {
- public int compare(FileHeader a, FileHeader b) {
- String nameA = a.isUnicode() ? a.getFileNameW() : a.getFileNameString();
- String nameB = b.isUnicode() ? b.getFileNameW() : b.getFileNameString();
-
- return nameA.compareTo(nameB);
- }
- });
-
- }
-
-}
diff --git a/org.fox.ttcomics/src/main/java/org/fox/ttcomics/ComicArchive.java b/org.fox.ttcomics/src/main/java/org/fox/ttcomics/ComicArchive.java
index 3070323..17ebfb9 100644
--- a/org.fox.ttcomics/src/main/java/org/fox/ttcomics/ComicArchive.java
+++ b/org.fox.ttcomics/src/main/java/org/fox/ttcomics/ComicArchive.java
@@ -7,6 +7,6 @@ public abstract class ComicArchive {
public abstract int getCount();
public abstract InputStream getItem(int index) throws IOException;
public boolean isValidComic(String fileName) {
- return fileName.toLowerCase().matches(".*\\.(jpg|bmp|gif|png)$");
+ return fileName.toLowerCase().matches(".*\\.(jpe?g|bmp|gif|png)$");
}
}
diff --git a/org.fox.ttcomics/src/main/java/org/fox/ttcomics/ComicListFragment.java b/org.fox.ttcomics/src/main/java/org/fox/ttcomics/ComicListFragment.java
index ff142b9..acfb134 100644
--- a/org.fox.ttcomics/src/main/java/org/fox/ttcomics/ComicListFragment.java
+++ b/org.fox.ttcomics/src/main/java/org/fox/ttcomics/ComicListFragment.java
@@ -36,8 +36,6 @@ import android.widget.ListView;
import android.widget.ProgressBar;
import android.widget.TextView;
-import com.github.junrar.exception.RarException;
-
public class ComicListFragment extends Fragment implements OnItemClickListener {
private final String TAG = this.getClass().getSimpleName();
@@ -94,8 +92,8 @@ public class ComicListFragment extends Fragment implements OnItemClickListener {
LayoutInflater vi = (LayoutInflater)getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
- v = vi.inflate(isList ? R.layout.comics_list_row : R.layout.comics_grid_row, null);
-
+ //v = vi.inflate(isList ? R.layout.comics_list_row : R.layout.comics_grid_row, null);
+ v = vi.inflate(R.layout.comics_grid_row, null);
}
TextView name = (TextView) v.findViewById(R.id.file_name);
@@ -108,16 +106,20 @@ public class ComicListFragment extends Fragment implements OnItemClickListener {
if (info != null) {
if (size != -1 && size != SIZE_DIR) {
- if (lastPos == size - 1) {
- info.setText(getString(R.string.file_finished));
- } else if (lastPos > 0) {
- info.setText(getString(R.string.file_progress_info, lastPos+1, size, (int)(lastPos/ (float)size * 100f)));
- } else {
- info.setText(getString(R.string.file_unread, size));
- }
- info.setVisibility(View.VISIBLE);
+ if (lastPos == size - 1) {
+ info.setText(getString(R.string.file_finished));
+ } else if (lastPos > 0) {
+ info.setText(getString(R.string.file_progress_info, lastPos + 1, size, (int) (lastPos / (float) size * 100f)));
+ } else {
+ info.setText(getString(R.string.file_unread, size));
+ }
+ info.setVisibility(View.VISIBLE);
+ } else if (size == SIZE_DIR) {
+ info.setText(getString(R.string.list_type_directory));
+ info.setVisibility(View.VISIBLE);
} else {
- info.setVisibility(View.GONE);
+ info.setText(getString(R.string.list_type_unknown));
+ info.setVisibility(View.VISIBLE);
}
}
@@ -125,11 +127,15 @@ public class ComicListFragment extends Fragment implements OnItemClickListener {
if (progressBar != null) {
if (size != -1 && size != SIZE_DIR) {
- progressBar.setMax(size-1);
+ progressBar.setMax(size - 1);
progressBar.setProgress(lastPos);
- progressBar.setVisibility(View.VISIBLE);
+ progressBar.setEnabled(true);
+ progressBar.setVisibility(View.VISIBLE);
} else {
- progressBar.setVisibility(View.GONE);
+ progressBar.setProgress(0);
+ progressBar.setMax(0);
+ progressBar.setEnabled(false);
+ progressBar.setVisibility(View.VISIBLE);
}
}
@@ -154,7 +160,7 @@ public class ComicListFragment extends Fragment implements OnItemClickListener {
ImageView thumbnail = (ImageView) v.findViewById(R.id.thumbnail);
if (thumbnail != null) {
- View imageholder = v.findViewById(R.id.imageholder);
+ /* View imageholder = v.findViewById(R.id.imageholder);
int padding = dpToPx(2);
@@ -166,7 +172,7 @@ public class ComicListFragment extends Fragment implements OnItemClickListener {
imageholder.setBackgroundResource(R.drawable.comic_tile);
imageholder.setPadding(padding, padding, padding, padding);
}
- }
+ } */
thumbnail.setTag("");
thumbnail.setImageResource(R.drawable.ic_launcher);
@@ -256,7 +262,7 @@ public class ComicListFragment extends Fragment implements OnItemClickListener {
android.R.color.holo_orange_dark);
}
- m_adapter = new ComicsListAdapter(getActivity(), R.layout.comics_list_row, createCursor(),
+ m_adapter = new ComicsListAdapter(getActivity(), R.layout.comics_grid_row, createCursor(),
new String[] { "filename" }, new int[] { R.id.file_name }, 0);
if (view.findViewById(R.id.comics_list) != null) {
@@ -410,12 +416,6 @@ public class ComicListFragment extends Fragment implements OnItemClickListener {
if (archive.getName().toLowerCase().matches(".*\\.(cbz|zip)")) {
cba = new CbzComicArchive(filePath);
- } else {
- try {
- cba = new CbrComicArchive(filePath);
- } catch (RarException e) {
- e.printStackTrace();
- }
}
if (cba != null && cba.getCount() > 0) {
diff --git a/org.fox.ttcomics/src/main/java/org/fox/ttcomics/ComicPager.java b/org.fox.ttcomics/src/main/java/org/fox/ttcomics/ComicPager.java
index 4371df4..c533bad 100644
--- a/org.fox.ttcomics/src/main/java/org/fox/ttcomics/ComicPager.java
+++ b/org.fox.ttcomics/src/main/java/org/fox/ttcomics/ComicPager.java
@@ -3,8 +3,6 @@ package org.fox.ttcomics;
import java.io.IOException;
import java.util.HashMap;
-import com.github.junrar.exception.RarException;
-
import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.SharedPreferences;
@@ -105,8 +103,6 @@ public class ComicPager extends Fragment {
try {
if (m_fileName.toLowerCase().matches(".*\\.(cbz|zip)")) {
m_archive = new CbzComicArchive(m_fileName);
- } else {
- m_archive = new CbrComicArchive(m_fileName);
}
int position = m_activity.getLastPosition(m_fileName);
@@ -121,9 +117,6 @@ public class ComicPager extends Fragment {
} catch (IOException e) {
m_activity.toast(R.string.error_could_not_open_comic_archive);
e.printStackTrace();
- } catch (RarException e) {
- m_activity.toast(R.string.error_could_not_open_comic_archive);
- e.printStackTrace();
}
pager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {