diff options
author | Scott Jackson <daneren2005@gmail.com> | 2014-07-07 22:18:55 -0700 |
---|---|---|
committer | Scott Jackson <daneren2005@gmail.com> | 2014-07-07 22:18:55 -0700 |
commit | 7ef4a53106e94621cab5082cfb225c1ef436944d (patch) | |
tree | 87e320b5e5e2a58741248f41900e47ea1d4896d5 | |
parent | ddf1059770adbbb1bdc0fcf092c9a2e2a0c05029 (diff) | |
download | dsub-7ef4a53106e94621cab5082cfb225c1ef436944d.tar.gz dsub-7ef4a53106e94621cab5082cfb225c1ef436944d.tar.bz2 dsub-7ef4a53106e94621cab5082cfb225c1ef436944d.zip |
#372 Use bold for drawer, fix delay between opening for first time and showing selection
-rw-r--r-- | res/values-v16/themes.xml | 4 | ||||
-rw-r--r-- | res/values/themes.xml | 4 | ||||
-rw-r--r-- | src/github/daneren2005/dsub/activity/SubsonicActivity.java | 22 | ||||
-rw-r--r-- | src/github/daneren2005/dsub/view/DrawerAdapter.java | 10 |
4 files changed, 34 insertions, 6 deletions
diff --git a/res/values-v16/themes.xml b/res/values-v16/themes.xml index aabcfaa9..3bbdd5ed 100644 --- a/res/values-v16/themes.xml +++ b/res/values-v16/themes.xml @@ -4,6 +4,10 @@ <item name="android:fontFamily">sans-serif-light</item>
</style>
+ <style name="DSub.TextViewStyle.Bold" parent="android:Widget.TextView">
+ <item name="android:fontFamily">sans-serif-regular</item>
+ </style>
+
<style name="DSub.ButtonStyle" parent="android:Widget.Holo.Button">
<item name="android:fontFamily">sans-serif-light</item>
</style>
diff --git a/res/values/themes.xml b/res/values/themes.xml index 6611cff7..1700aa88 100644 --- a/res/values/themes.xml +++ b/res/values/themes.xml @@ -120,6 +120,10 @@ <style name="DSub.TextViewStyle" parent="android:Widget.TextView"> </style> + <style name="DSub.TextViewStyle.Bold" parent="android:Widget.TextView"> + <item name="android:textStyle">bold</item> + </style> + <style name="DSub.ButtonStyle.Dark" parent="android:Widget.Holo.Button"> </style> <style name="DSub.ButtonStyle.Light" parent="android:Widget.Holo.Light.Button"> diff --git a/src/github/daneren2005/dsub/activity/SubsonicActivity.java b/src/github/daneren2005/dsub/activity/SubsonicActivity.java index 78589a44..44310ede 100644 --- a/src/github/daneren2005/dsub/activity/SubsonicActivity.java +++ b/src/github/daneren2005/dsub/activity/SubsonicActivity.java @@ -50,6 +50,7 @@ import android.widget.AdapterView.OnItemSelectedListener; import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Spinner;
+import android.widget.TextView;
import java.io.File;
import java.io.PrintWriter;
@@ -90,7 +91,7 @@ public class SubsonicActivity extends ActionBarActivity implements OnItemSelecte ActionBarDrawerToggle drawerToggle;
DrawerAdapter drawerAdapter;
ListView drawerList;
- View lastSelectedView = null;
+ TextView lastSelectedView = null;
int lastSelectedPosition = 0;
boolean drawerOpen = false;
@@ -177,10 +178,10 @@ public class SubsonicActivity extends ActionBarActivity implements OnItemSelecte if(lastSelectedView != view) {
if(lastSelectedView != null) {
- lastSelectedView.setBackgroundResource(android.R.color.transparent);
+ lastSelectedView.setTextAppearance(SubsonicActivity.this, R.style.DSub_TextViewStyle);
}
- view.setBackgroundResource(R.color.dividerColor);
- lastSelectedView = view;
+ lastSelectedView = (TextView) view.findViewById(R.id.drawer_name);
+ lastSelectedView.setTextAppearance(SubsonicActivity.this, R.style.DSub_TextViewStyle_Bold);
lastSelectedPosition = position;
}
}
@@ -209,9 +210,9 @@ public class SubsonicActivity extends ActionBarActivity implements OnItemSelecte }
if(lastSelectedView == null) {
- lastSelectedView = drawerList.getChildAt(lastSelectedPosition);
+ lastSelectedView = (TextView) drawerList.getChildAt(lastSelectedPosition).findViewById(R.id.drawer_name);
if(lastSelectedView != null) {
- lastSelectedView.setBackgroundResource(R.color.dividerColor);
+ lastSelectedView.setTextAppearance(SubsonicActivity.this, R.style.DSub_TextViewStyle_Bold);
}
}
@@ -444,6 +445,15 @@ public class SubsonicActivity extends ActionBarActivity implements OnItemSelecte }
}
}
+
+ if(drawerList.getChildAt(lastSelectedPosition) == null) {
+ drawerAdapter.setSelectedPosition(lastSelectedPosition);
+ } else {
+ lastSelectedView = (TextView) drawerList.getChildAt(lastSelectedPosition).findViewById(R.id.drawer_name);
+ if(lastSelectedView != null) {
+ lastSelectedView.setTextAppearance(SubsonicActivity.this, R.style.DSub_TextViewStyle_Bold);
+ }
+ }
}
}
diff --git a/src/github/daneren2005/dsub/view/DrawerAdapter.java b/src/github/daneren2005/dsub/view/DrawerAdapter.java index 345ca34c..cc0d5864 100644 --- a/src/github/daneren2005/dsub/view/DrawerAdapter.java +++ b/src/github/daneren2005/dsub/view/DrawerAdapter.java @@ -41,6 +41,7 @@ public class DrawerAdapter extends ArrayAdapter<String> { private List<String> items;
private List<Integer> icons;
private List<Boolean> visible;
+ private int selectedPosition = -1;
public DrawerAdapter(Context context, List<String> items, List<Integer> icons, List<Boolean> visible) {
super(context, R.layout.drawer_list_item, items);
@@ -63,6 +64,11 @@ public class DrawerAdapter extends ArrayAdapter<String> { TextView textView = (TextView) convertView.findViewById(R.id.drawer_name);
textView.setText(item);
+
+ if(selectedPosition == position) {
+ textView.setTextAppearance(context, R.style.DSub_TextViewStyle_Bold);
+ }
+
ImageView iconView = (ImageView) convertView.findViewById(R.id.drawer_icon);
iconView.setImageResource(icon);
@@ -109,4 +115,8 @@ public class DrawerAdapter extends ArrayAdapter<String> { public void setDownloadVisible(boolean visible) {
setItemVisible(items.size() - 2, visible);
}
+
+ public void setSelectedPosition(int position) {
+ selectedPosition = position;
+ }
}
|