summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--project.properties3
-rw-r--r--res/layout-sw600dp/activity_main.xml3
-rw-r--r--res/layout-sw600dp/activity_view_comic.xml6
-rw-r--r--res/layout-sw600dp/fragment_comics_list.xml3
-rw-r--r--res/layout/activity_main.xml3
-rw-r--r--res/layout/dialog_location.xml4
-rw-r--r--res/layout/dialog_location_compat.xml7
-rw-r--r--res/layout/fragment_comics_list.xml19
-rw-r--r--res/values/attrs.xml1
-rw-r--r--res/values/strings.xml4
-rw-r--r--res/values/style.xml15
-rw-r--r--res/values/styles.xml9
-rw-r--r--src/org/fox/ttcomics/ComicListFragment.java23
-rw-r--r--src/org/fox/ttcomics/CommonActivity.java18
-rw-r--r--src/org/fox/ttcomics/MainActivity.java2
-rw-r--r--src/org/fox/ttcomics/ViewComicActivity.java7
16 files changed, 98 insertions, 29 deletions
diff --git a/project.properties b/project.properties
index ff2453f..29d5acb 100644
--- a/project.properties
+++ b/project.properties
@@ -12,4 +12,5 @@
# Project target.
target=android-19
-android.library.reference.1=../appcompat
+android.library.reference.1=..\\appcompat
+android.library.reference.2=../SystemBarTint/SystemBarTint-library
diff --git a/res/layout-sw600dp/activity_main.xml b/res/layout-sw600dp/activity_main.xml
index 3e0dc88..81b302b 100644
--- a/res/layout-sw600dp/activity_main.xml
+++ b/res/layout-sw600dp/activity_main.xml
@@ -3,7 +3,8 @@
android:id="@+id/FrameLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent" >
-
+
+
<FrameLayout
android:id="@+id/comics_list"
android:layout_width="match_parent"
diff --git a/res/layout-sw600dp/activity_view_comic.xml b/res/layout-sw600dp/activity_view_comic.xml
index b32c9d7..e6479f6 100644
--- a/res/layout-sw600dp/activity_view_comic.xml
+++ b/res/layout-sw600dp/activity_view_comic.xml
@@ -3,14 +3,16 @@
android:id="@+id/FrameLayout2"
android:layout_width="match_parent"
android:layout_height="match_parent" >
-
+
+
<FrameLayout
android:id="@+id/comics_pager_container"
android:layout_width="match_parent"
android:layout_height="match_parent" >
</FrameLayout>
-
+
+
<TextView
android:id="@+id/tablet_layout_hack"
android:layout_width="wrap_content"
diff --git a/res/layout-sw600dp/fragment_comics_list.xml b/res/layout-sw600dp/fragment_comics_list.xml
index e4999c8..eaf8c90 100644
--- a/res/layout-sw600dp/fragment_comics_list.xml
+++ b/res/layout-sw600dp/fragment_comics_list.xml
@@ -3,7 +3,8 @@
android:id="@+id/FrameLayout4"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
-
+
+
<GridView
android:id="@+id/comics_grid"
android:layout_width="match_parent"
diff --git a/res/layout/activity_main.xml b/res/layout/activity_main.xml
index 3f686f0..790857f 100644
--- a/res/layout/activity_main.xml
+++ b/res/layout/activity_main.xml
@@ -3,7 +3,8 @@
android:id="@+id/FrameLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent" >
-
+
+
<FrameLayout
android:id="@+id/comics_list"
android:layout_width="match_parent"
diff --git a/res/layout/dialog_location.xml b/res/layout/dialog_location.xml
index 1ae24ce..cabbf9a 100644
--- a/res/layout/dialog_location.xml
+++ b/res/layout/dialog_location.xml
@@ -3,7 +3,9 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
-
+
+
+
<NumberPicker
android:id="@+id/number_picker"
android:layout_width="match_parent"
diff --git a/res/layout/dialog_location_compat.xml b/res/layout/dialog_location_compat.xml
index 3e2467e..385b8d5 100644
--- a/res/layout/dialog_location_compat.xml
+++ b/res/layout/dialog_location_compat.xml
@@ -3,13 +3,16 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
-
+
+
<SeekBar
android:id="@+id/number_seeker"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
-
+
+
+
<TextView
android:id="@+id/page_number"
android:layout_width="wrap_content"
diff --git a/res/layout/fragment_comics_list.xml b/res/layout/fragment_comics_list.xml
index cdef287..2461c15 100644
--- a/res/layout/fragment_comics_list.xml
+++ b/res/layout/fragment_comics_list.xml
@@ -4,18 +4,24 @@
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
- <ListView
- android:id="@+id/comics_list"
- android:layoutAnimation="@anim/layout_comics"
+ <android.support.v4.widget.SwipeRefreshLayout
+ android:id="@+id/comics_swipe_container"
android:layout_width="match_parent"
- android:layout_height="wrap_content" >
- </ListView>
+ android:layout_height="match_parent" >
+
+ <ListView
+ android:id="@+id/comics_list"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layoutAnimation="@anim/layout_comics" >
+ </ListView>
+ </android.support.v4.widget.SwipeRefreshLayout>
<LinearLayout
android:id="@+id/no_comics"
android:layout_width="match_parent"
android:layout_height="match_parent"
- android:layout_gravity="center"
+ android:layout_gravity="center"
android:orientation="vertical"
android:padding="4dp" >
@@ -25,7 +31,6 @@
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="@string/error_no_comic_arhives_found_" />
-
</LinearLayout>
</FrameLayout> \ No newline at end of file
diff --git a/res/values/attrs.xml b/res/values/attrs.xml
index 75347d8..9a693d4 100644
--- a/res/values/attrs.xml
+++ b/res/values/attrs.xml
@@ -1,4 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<attr name="viewComicsBackground" format="reference|color" />
+ <attr name="statusBarHintColor" format="reference|color" />
</resources> \ No newline at end of file
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 3d5cac4..7ef7de2 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -4,7 +4,7 @@
<string name="hello_world">Hello world!</string>
<string name="menu_settings">Settings</string>
<string name="menu_go_location">Go to</string>
- <string name="title_activity_main">Pow! Comics Reader</string>
+ <string name="title_activity_main">Comics Reader</string>
<string name="title_activity_preferences">Settings</string>
<string name="prefs_comics_directory">Comics directory</string>
<string name="prefs_general">General</string>
@@ -63,5 +63,5 @@
<string name="sync_running_in_test_mode">Sync running in test mode.</string>
<string name="reset_remove_synced_progress">Would you like to remove synced progress too?</string>
<string name="error_cant_open_file">Can\'t open file: %1$s</string>
- <string name="prefs_prevent_screen_sleep">Keep screen awake</string>
+ <string name="prefs_prevent_screen_sleep">Keep screen awake</string>
</resources> \ No newline at end of file
diff --git a/res/values/style.xml b/res/values/style.xml
new file mode 100644
index 0000000..a62c354
--- /dev/null
+++ b/res/values/style.xml
@@ -0,0 +1,15 @@
+<resources>
+
+ <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
+
+ </style>
+
+ <style name="ViewLightTheme" parent="Theme.AppCompat.Light.DarkActionBar">
+ <item name="viewComicsBackground">@android:color/transparent</item>
+ </style>
+
+ <style name="ViewDarkTheme" parent="Theme.AppCompat">
+ <item name="viewComicsBackground">@android:color/black</item>
+ </style>
+
+</resources> \ No newline at end of file
diff --git a/res/values/styles.xml b/res/values/styles.xml
deleted file mode 100644
index 4b718f3..0000000
--- a/res/values/styles.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-<resources>
- <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
- <item name="viewComicsBackground">@android:color/transparent</item>
- </style>
-
- <style name="DarkTheme" parent="Theme.AppCompat">
- <item name="viewComicsBackground">@android:color/black</item>
- </style>
-</resources>
diff --git a/src/org/fox/ttcomics/ComicListFragment.java b/src/org/fox/ttcomics/ComicListFragment.java
index 31dbf19..26166fc 100644
--- a/src/org/fox/ttcomics/ComicListFragment.java
+++ b/src/org/fox/ttcomics/ComicListFragment.java
@@ -18,6 +18,7 @@ import android.preference.PreferenceManager;
import android.provider.BaseColumns;
import android.support.v4.app.Fragment;
import android.support.v4.widget.SimpleCursorAdapter;
+import android.support.v4.widget.SwipeRefreshLayout;
import android.util.DisplayMetrics;
import android.util.Log;
import android.view.ContextMenu;
@@ -53,6 +54,7 @@ public class ComicListFragment extends Fragment implements OnItemClickListener {
private ComicsListAdapter m_adapter;
private int m_mode = 0;
private String m_baseDirectory = "";
+ private SwipeRefreshLayout m_swipeLayout;
public ComicListFragment() {
super();
@@ -238,6 +240,22 @@ public class ComicListFragment extends Fragment implements OnItemClickListener {
//m_files = savedInstanceState.getStringArrayList("files");
}
+ m_swipeLayout = (SwipeRefreshLayout) view.findViewById(R.id.comics_swipe_container);
+
+ m_swipeLayout.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
+ @Override
+ public void onRefresh() {
+ rescan(true);
+ }
+ });
+
+ if (!CommonActivity.isCompatMode()) {
+ m_swipeLayout.setColorScheme(android.R.color.holo_green_dark,
+ android.R.color.holo_red_dark,
+ android.R.color.holo_blue_dark,
+ android.R.color.holo_orange_dark);
+ }
+
m_adapter = new ComicsListAdapter(getActivity(), R.layout.comics_list_row, createCursor(),
new String[] { "filename" }, new int[] { R.id.file_name }, 0);
@@ -351,7 +369,8 @@ public class ComicListFragment extends Fragment implements OnItemClickListener {
}
protected void rescan(final boolean fullRescan) {
-
+ m_swipeLayout.setRefreshing(true);
+
AsyncTask<String, Integer, Integer> rescanTask = new AsyncTask<String, Integer, Integer>() {
@Override
@@ -448,6 +467,8 @@ public class ComicListFragment extends Fragment implements OnItemClickListener {
if (isAdded() && m_activity != null) {
m_activity.cleanupCache(false);
m_activity.cleanupSqliteCache(comicsDir);
+
+ m_swipeLayout.setRefreshing(false);
}
return fileIndex; //m_files.size();
diff --git a/src/org/fox/ttcomics/CommonActivity.java b/src/org/fox/ttcomics/CommonActivity.java
index ef3cdc4..6d392d2 100644
--- a/src/org/fox/ttcomics/CommonActivity.java
+++ b/src/org/fox/ttcomics/CommonActivity.java
@@ -6,6 +6,8 @@ import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Date;
+import com.readystatesoftware.systembartint.SystemBarTintManager;
+
import android.accounts.Account;
import android.accounts.AccountManager;
import android.app.AlertDialog;
@@ -26,6 +28,7 @@ import android.preference.PreferenceManager;
import android.provider.BaseColumns;
import android.support.v7.app.ActionBarActivity;
import android.util.Log;
+import android.util.TypedValue;
import android.view.Display;
import android.view.MenuItem;
import android.view.View;
@@ -597,6 +600,21 @@ public class CommonActivity extends ActionBarActivity {
}
}
}
+
+ public void setStatusBarTint() {
+ if (android.os.Build.VERSION.SDK_INT == android.os.Build.VERSION_CODES.KITKAT) {
+ SystemBarTintManager tintManager = new SystemBarTintManager(this);
+ // enable status bar tint
+ tintManager.setStatusBarTintEnabled(true);
+ // enable navigation bar tint
+ tintManager.setNavigationBarTintEnabled(true);
+
+ TypedValue tv = new TypedValue();
+ getTheme().resolveAttribute(R.attr.statusBarHintColor, tv, true);
+
+ tintManager.setStatusBarTintColor(tv.data);
+ }
+ }
public void hideSystemUiIfNecessary() {
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.KITKAT) {
diff --git a/src/org/fox/ttcomics/MainActivity.java b/src/org/fox/ttcomics/MainActivity.java
index cf2f798..0e589fa 100644
--- a/src/org/fox/ttcomics/MainActivity.java
+++ b/src/org/fox/ttcomics/MainActivity.java
@@ -13,6 +13,7 @@ import android.content.Intent;
import android.content.pm.PackageManager;
import android.os.Bundle;
import android.support.v4.app.FragmentTransaction;
+import android.support.v4.widget.SwipeRefreshLayout;
import android.support.v7.app.ActionBar;
import android.support.v7.app.ActionBar.Tab;
import android.util.Log;
@@ -76,6 +77,7 @@ public class MainActivity extends CommonActivity {
setProgressBarVisibility(false);
+ setStatusBarTint();
setSmallScreen(findViewById(R.id.tablet_layout_hack) == null);
if (savedInstanceState == null) {
diff --git a/src/org/fox/ttcomics/ViewComicActivity.java b/src/org/fox/ttcomics/ViewComicActivity.java
index deda68c..4459e18 100644
--- a/src/org/fox/ttcomics/ViewComicActivity.java
+++ b/src/org/fox/ttcomics/ViewComicActivity.java
@@ -42,13 +42,18 @@ public class ViewComicActivity extends CommonActivity {
super.onCreate(savedInstanceState);
if (!isCompatMode())
- setTheme(m_prefs.getBoolean("use_dark_theme", false) ? R.style.DarkTheme : R.style.AppTheme);
+ setTheme(m_prefs.getBoolean("use_dark_theme", false) ? R.style.ViewDarkTheme : R.style.ViewLightTheme);
requestWindowFeature(Window.FEATURE_PROGRESS);
if (m_prefs.getBoolean("prevent_screen_sleep", false))
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
+ if (android.os.Build.VERSION.SDK_INT == android.os.Build.VERSION_CODES.KITKAT && !m_prefs.getBoolean("use_full_screen", false)) {
+ getWindow().setFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS, WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
+ setStatusBarTint();
+ }
+
setContentView(R.layout.activity_view_comic);
if (savedInstanceState == null) {