summaryrefslogtreecommitdiff
path: root/org.fox.ttcomics/src/main/java/org/fox/ttcomics/ComicPager.java
diff options
context:
space:
mode:
Diffstat (limited to 'org.fox.ttcomics/src/main/java/org/fox/ttcomics/ComicPager.java')
-rw-r--r--org.fox.ttcomics/src/main/java/org/fox/ttcomics/ComicPager.java57
1 files changed, 44 insertions, 13 deletions
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 c533bad..6905416 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
@@ -1,8 +1,5 @@
package org.fox.ttcomics;
-import java.io.IOException;
-import java.util.HashMap;
-
import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.SharedPreferences;
@@ -11,10 +8,12 @@ import android.preference.PreferenceManager;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentStatePagerAdapter;
-import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
+import android.widget.SeekBar;
+
+import java.io.IOException;
public class ComicPager extends Fragment {
private String m_fileName;
@@ -22,8 +21,13 @@ public class ComicPager extends Fragment {
private final String TAG = this.getClass().getSimpleName();
private ComicArchive m_archive;
private CommonActivity m_activity;
-
- private class PagerAdapter extends FragmentStatePagerAdapter {
+ private SeekBar m_seekBar;
+
+ public void hideSeekBar(boolean hide) {
+ m_seekBar.setVisibility(hide ? View.GONE : View.VISIBLE);
+ }
+
+ private class PagerAdapter extends FragmentStatePagerAdapter {
public PagerAdapter(FragmentManager fm) {
super(fm);
}
@@ -104,15 +108,41 @@ public class ComicPager extends Fragment {
if (m_fileName.toLowerCase().matches(".*\\.(cbz|zip)")) {
m_archive = new CbzComicArchive(m_fileName);
}
-
- int position = m_activity.getLastPosition(m_fileName);
-
+
+ final int position = m_activity.getLastPosition(m_fileName);
+
+ m_seekBar = (SeekBar) view.findViewById(R.id.comics_seek_bar);
+ m_seekBar.setMax(m_archive.getCount()-1);
+ m_seekBar.setProgress(position);
+ m_seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
+ @Override
+ public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
+ if (fromUser) {
+ setCurrentItem(progress);
+ }
+ }
+
+ @Override
+ public void onStartTrackingTouch(SeekBar seekBar) {
+
+ }
+
+ @Override
+ public void onStopTrackingTouch(SeekBar seekBar) {
+
+ }
+ });
+
pager.setAdapter(m_adapter);
pager.setCurrentItem(position);
-
- m_activity.onComicSelected(m_fileName, position);
- m_activity.setProgress(Math.round(((float)position / (float)(m_archive.getCount()-1)) * 10000));
+
+ m_activity.onComicSelected(m_fileName, position);
+ //m_activity.setProgress(Math.round(((float)position / (float)(m_archive.getCount()-1)) * 10000));
m_activity.hideSystemUiIfNecessary();
+
+ if (m_prefs.getBoolean("use_full_screen", false)) {
+ hideSeekBar(true);
+ }
} catch (IOException e) {
m_activity.toast(R.string.error_could_not_open_comic_archive);
@@ -123,7 +153,8 @@ public class ComicPager extends Fragment {
public void onPageSelected(int position) {
m_activity.onComicSelected(m_fileName, position);
- m_activity.setProgress(Math.round(((float)position / (float)(m_archive.getCount()-1)) * 10000));
+ //m_activity.setProgress(Math.round(((float)position / (float)(m_archive.getCount()-1)) * 10000));
+ m_seekBar.setProgress(position);
m_activity.hideSystemUiIfNecessary();
}