summaryrefslogtreecommitdiff
path: root/org.fox.ttcomics/src/main/java
diff options
context:
space:
mode:
Diffstat (limited to 'org.fox.ttcomics/src/main/java')
-rwxr-xr-x[-rw-r--r--]org.fox.ttcomics/src/main/java/org/fox/ttcomics2/Application.java21
-rwxr-xr-x[-rw-r--r--]org.fox.ttcomics/src/main/java/org/fox/ttcomics2/ComicFragment.java30
-rwxr-xr-xorg.fox.ttcomics/src/main/java/org/fox/ttcomics2/ComicListFragment.java33
-rwxr-xr-xorg.fox.ttcomics/src/main/java/org/fox/ttcomics2/ComicPager.java15
-rwxr-xr-xorg.fox.ttcomics/src/main/java/org/fox/ttcomics2/MainActivity.java14
-rwxr-xr-xorg.fox.ttcomics/src/main/java/org/fox/ttcomics2/ViewComicActivity.java19
6 files changed, 50 insertions, 82 deletions
diff --git a/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/Application.java b/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/Application.java
index 535d87f..1e9091c 100644..100755
--- a/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/Application.java
+++ b/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/Application.java
@@ -1,9 +1,18 @@
package org.fox.ttcomics2;
+import android.os.Bundle;
+import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
+
+import com.livefront.bridge.Bridge;
+import com.livefront.bridge.SavedStateHandler;
+
import org.acra.ACRA;
import org.acra.ReportingInteractionMode;
import org.acra.annotation.ReportsCrashes;
+import icepick.Icepick;
+
@ReportsCrashes(mode = ReportingInteractionMode.SILENT,
excludeMatchingSharedPreferencesKeys = {"password"},
resDialogText = R.string.crash_dialog_text,
@@ -16,6 +25,18 @@ public class Application extends android.app.Application {
if (!BuildConfig.DEBUG) {
ACRA.init(this);
}
+
+ Bridge.initialize(getApplicationContext(), new SavedStateHandler() {
+ @Override
+ public void saveInstanceState(@NonNull Object target, @NonNull Bundle state) {
+ Icepick.saveInstanceState(target, state);
+ }
+
+ @Override
+ public void restoreInstanceState(@NonNull Object target, @Nullable Bundle state) {
+ Icepick.restoreInstanceState(target, state);
+ }
+ });
}
}
diff --git a/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/ComicFragment.java b/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/ComicFragment.java
index 85e7537..a514bd0 100644..100755
--- a/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/ComicFragment.java
+++ b/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/ComicFragment.java
@@ -20,17 +20,18 @@ import org.fox.ttcomics2.archive.ComicArchive;
import java.io.IOException;
+import icepick.State;
import it.sephiroth.android.library.imagezoom.ImageViewTouch;
public class ComicFragment extends Fragment implements GestureDetector.OnDoubleTapListener {
private final String TAG = this.getClass().getSimpleName();
private SharedPreferences m_prefs;
- private int m_page;
+ @State protected int m_page;
private ViewComicActivity m_activity;
private GestureDetector m_detector;
- private boolean m_thumbnail = false;
- private ComicArchive m_archive;
+ @State protected boolean m_thumbnail = false;
+ @State protected ComicArchive m_archive;
public ComicFragment() {
super();
@@ -50,14 +51,7 @@ public class ComicFragment extends Fragment implements GestureDetector.OnDoubleT
View view = inflater.inflate(R.layout.fragment_comic, container, false);
- final ImageViewTouch image = (ImageViewTouch) view.findViewById(R.id.comic_image);
-
- if (savedInstanceState != null) {
- m_page = savedInstanceState.getInt("page");
- m_thumbnail = savedInstanceState.getBoolean("thumbnail");
- m_archive = savedInstanceState.getParcelable("archive");
- }
-
+ final ImageViewTouch image = view.findViewById(R.id.comic_image);
image.setFitToScreen(true);
ImageLoader imageLoader = ImageLoader.getInstance();
@@ -110,7 +104,7 @@ public class ComicFragment extends Fragment implements GestureDetector.OnDoubleT
}
private void onLeftSideTapped() {
- ImageViewTouch image = (ImageViewTouch) getView().findViewById(R.id.comic_image);
+ ImageViewTouch image = getView().findViewById(R.id.comic_image);
if (image != null) {
boolean atLeftEdge = !image.canScroll(1);
@@ -122,7 +116,7 @@ public class ComicFragment extends Fragment implements GestureDetector.OnDoubleT
}
public boolean canScroll(int direction) {
- ImageViewTouch image = (ImageViewTouch) getView().findViewById(R.id.comic_image);
+ ImageViewTouch image = getView().findViewById(R.id.comic_image);
if (image != null) {
return image.canScroll(direction);
@@ -132,7 +126,7 @@ public class ComicFragment extends Fragment implements GestureDetector.OnDoubleT
}
private void onRightSideTapped() {
- ImageViewTouch image = (ImageViewTouch) getView().findViewById(R.id.comic_image);
+ ImageViewTouch image = getView().findViewById(R.id.comic_image);
if (image != null) {
boolean atRightEdge = !image.canScroll(-1);
@@ -202,14 +196,6 @@ public class ComicFragment extends Fragment implements GestureDetector.OnDoubleT
}
@Override
- public void onSaveInstanceState(Bundle out) {
- super.onSaveInstanceState(out);
- out.putInt("page", m_page);
- out.putBoolean("thumbnail", m_thumbnail);
- out.putParcelable("archive", m_archive);
- }
-
- @Override
public boolean onDoubleTap(MotionEvent e) {
// TODO Auto-generated method stub
return false;
diff --git a/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/ComicListFragment.java b/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/ComicListFragment.java
index 0e88474..1b8ff04 100755
--- a/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/ComicListFragment.java
+++ b/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/ComicListFragment.java
@@ -36,6 +36,7 @@ import com.nostra13.universalimageloader.core.process.BitmapProcessor;
import java.io.File;
+import icepick.State;
import jp.co.recruit_mp.android.widget.HeaderFooterGridView;
public class ComicListFragment extends Fragment implements OnItemClickListener {
@@ -52,8 +53,8 @@ public class ComicListFragment extends Fragment implements OnItemClickListener {
private MainActivity m_activity;
private SharedPreferences m_prefs;
private ComicsListAdapter m_adapter;
- private int m_mode = 0;
- private String m_baseDirectory = "";
+ @State protected int m_mode = 0;
+ @State protected String m_baseDirectory = "";
private SwipeRefreshLayout m_swipeLayout;
private AnimationAdapter m_animationAdapter;
private ImageLoader m_imageLoader = ImageLoader.getInstance();
@@ -90,11 +91,11 @@ public class ComicListFragment extends Fragment implements OnItemClickListener {
ImageView thumbnail;
public ComicsViewHolder(View v) {
- name = (TextView) v.findViewById(R.id.file_name);
- info = (TextView) v.findViewById(R.id.file_progress_info);
- progressBar = (ProgressBar) v.findViewById(R.id.file_progress_bar);
- overflow = (ImageView) v.findViewById(R.id.overflow);
- thumbnail = (ImageView) v.findViewById(R.id.thumbnail);
+ name = v.findViewById(R.id.file_name);
+ info = v.findViewById(R.id.file_progress_info);
+ progressBar = v.findViewById(R.id.file_progress_bar);
+ overflow = v.findViewById(R.id.overflow);
+ thumbnail = v.findViewById(R.id.thumbnail);
}
@@ -266,13 +267,7 @@ public class ComicListFragment extends Fragment implements OnItemClickListener {
View view = inflater.inflate(R.layout.fragment_comics_grid, container, false);
- if (savedInstanceState != null) {
- m_mode = savedInstanceState.getInt("mode");
- m_baseDirectory = savedInstanceState.getString("baseDir");
- }
-
- m_swipeLayout = (SwipeRefreshLayout) view.findViewById(R.id.comics_swipe_container);
-
+ m_swipeLayout = view.findViewById(R.id.comics_swipe_container);
m_swipeLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
@Override
public void onRefresh() {
@@ -284,7 +279,7 @@ public class ComicListFragment extends Fragment implements OnItemClickListener {
new String[] { "filename" }, new int[] { R.id.file_name }, 0);
m_animationAdapter = new ScaleInAnimationAdapter(m_adapter);
- HeaderFooterGridView grid = (HeaderFooterGridView) view.findViewById(R.id.comics_grid);
+ HeaderFooterGridView grid = view.findViewById(R.id.comics_grid);
if (m_prefs.getBoolean("enable_fab", true)) {
View footer = inflater.inflate(R.layout.comics_grid_footer, grid, false);
@@ -482,12 +477,4 @@ public class ComicListFragment extends Fragment implements OnItemClickListener {
}
- @Override
- public void onSaveInstanceState(Bundle out) {
- super.onSaveInstanceState(out);
-
- out.putInt("mode", m_mode);
- out.putString("baseDir", m_baseDirectory);
- }
-
}
diff --git a/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/ComicPager.java b/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/ComicPager.java
index b421021..c1757d8 100755
--- a/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/ComicPager.java
+++ b/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/ComicPager.java
@@ -25,8 +25,10 @@ import org.fox.ttcomics2.utils.IVTViewPager;
import java.io.IOException;
+import icepick.State;
+
public class ComicPager extends Fragment {
- private String m_fileName;
+ @State protected String m_fileName;
private SharedPreferences m_prefs;
private final String TAG = this.getClass().getSimpleName();
private ComicArchive m_archive;
@@ -124,10 +126,6 @@ public class ComicPager extends Fragment {
final IVTViewPager pager = view.findViewById(R.id.comics_pager);
- if (savedInstanceState != null) {
- m_fileName = savedInstanceState.getString("fileName");
- }
-
try {
if (m_fileName.toLowerCase().matches(".*\\.(cbz|zip)")) {
m_archive = new CbzComicArchive(m_fileName);
@@ -224,12 +222,5 @@ public class ComicPager extends Fragment {
m_prefs = PreferenceManager.getDefaultSharedPreferences(activity.getApplicationContext());
}
-
- @Override
- public void onSaveInstanceState(Bundle out) {
- super.onSaveInstanceState(out);
- out.putString("fileName", m_fileName);
- }
-
}
diff --git a/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/MainActivity.java b/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/MainActivity.java
index 778e161..cc1f3c2 100755
--- a/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/MainActivity.java
+++ b/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/MainActivity.java
@@ -37,13 +37,15 @@ import java.io.File;
import java.util.ArrayList;
import java.util.Arrays;
+import icepick.State;
+
public class MainActivity extends CommonActivity implements SharedPreferences.OnSharedPreferenceChangeListener {
private final String TAG = this.getClass().getSimpleName();
private ProgressDialog m_progressDialog;
private boolean m_needRestart;
private ComicsPagerAdapter m_adapter;
- private String m_baseDir;
+ @State protected String m_baseDir;
private ViewPager m_pager;
private BroadcastReceiver m_serviceReceiver = new BroadcastReceiver() {
@@ -140,9 +142,6 @@ public class MainActivity extends CommonActivity implements SharedPreferences.On
} else {
m_baseDir = m_prefs.getString("comics_directory", "");
}
-
- } else {
- m_baseDir = savedInstanceState.getString("baseDir");
}
String[] permissions;
@@ -277,13 +276,6 @@ public class MainActivity extends CommonActivity implements SharedPreferences.On
return true;
}
- @Override
- public void onSaveInstanceState(Bundle out) {
- super.onSaveInstanceState(out);
-
- out.putString("baseDir", m_baseDir);
- }
-
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.menu_sync_directory:
diff --git a/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/ViewComicActivity.java b/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/ViewComicActivity.java
index 5699943..660f32b 100755
--- a/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/ViewComicActivity.java
+++ b/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/ViewComicActivity.java
@@ -33,11 +33,13 @@ import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
+import icepick.State;
+
public class ViewComicActivity extends CommonActivity {
private final String TAG = this.getClass().getSimpleName();
- private String m_fileName;
- private String m_tmpFileName;
+ @State protected String m_fileName;
+ @State protected String m_tmpFileName;
@SuppressLint("NewApi")
@Override
@@ -71,9 +73,6 @@ public class ViewComicActivity extends CommonActivity {
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
ft.replace(R.id.comics_pager_container, cp, FRAG_COMICS_PAGER);
ft.commit();
- } else {
- m_fileName = savedInstanceState.getString("fileName");
- m_tmpFileName = savedInstanceState.getString("tmpFileName");
}
setOrientationLock(isOrientationLocked(), true);
@@ -93,15 +92,7 @@ public class ViewComicActivity extends CommonActivity {
return true;
}
-
- @Override
- public void onSaveInstanceState(Bundle out) {
- super.onSaveInstanceState(out);
- out.putString("fileName", m_fileName);
- out.putString("tmpFileName", m_tmpFileName);
- }
-
@Override
public void onComicSelected(String fileName, int position) {
super.onComicSelected(fileName, position);
@@ -278,7 +269,7 @@ public class ViewComicActivity extends CommonActivity {
LayoutInflater inflater = getLayoutInflater();
View contentView = inflater.inflate(R.layout.dialog_location, null);
- final NumberPicker picker = (NumberPicker) contentView.findViewById(R.id.number_picker);
+ final NumberPicker picker = contentView.findViewById(R.id.number_picker);
picker.setMinValue(1);
picker.setMaxValue(m_databaseHelper.getSize(m_fileName));