summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Wren <cwren@android.com>2013-04-17 14:36:32 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2013-04-17 14:36:32 -0700
commit6e5180a86df70a5e7bc70619d1297f5417cdb3ac (patch)
tree1ee2862b762c24c623dd8d7804c337fc249db789
parent64cc0094372b6687fc18a023e6abe44a026435b8 (diff)
parent57d36f58a1156b51bbceb836a8373c81e1410a9b (diff)
downloadandroid_packages_screensavers_PhotoTable-6e5180a86df70a5e7bc70619d1297f5417cdb3ac.tar.gz
android_packages_screensavers_PhotoTable-6e5180a86df70a5e7bc70619d1297f5417cdb3ac.tar.bz2
android_packages_screensavers_PhotoTable-6e5180a86df70a5e7bc70619d1297f5417cdb3ac.zip
am 57d36f58: am ab617db4: no blank album lists.
* commit '57d36f58a1156b51bbceb836a8373c81e1410a9b': no blank album lists.
-rw-r--r--res/layout/settingslist.xml29
-rw-r--r--res/values/strings.xml2
-rw-r--r--src/com/android/dreams/phototable/FlipperDreamSettings.java31
3 files changed, 50 insertions, 12 deletions
diff --git a/res/layout/settingslist.xml b/res/layout/settingslist.xml
index 0ea6661..c383856 100644
--- a/res/layout/settingslist.xml
+++ b/res/layout/settingslist.xml
@@ -22,11 +22,28 @@
android:paddingRight="16dp"
/>
- <ProgressBar android:id="@android:id/empty"
- style="?android:attr/progressBarStyleLarge"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_gravity="center"
- />
+ <FrameLayout
+ android:id="@android:id/empty"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent" >
+
+ <ProgressBar
+ android:id="@+id/spinner"
+ style="?android:attr/progressBarStyleLarge"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_gravity="center" />
+
+ <TextView
+ android:id="@+id/sorry"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:alpha="0.5"
+ android:gravity="center_vertical|center_horizontal"
+ android:text="@string/no_photos"
+ android:textColor="@android:color/white"
+ android:textSize="20sp"
+ android:visibility="gone" />
+ </FrameLayout>
</merge>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 087f8b1..1f64e10 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -47,4 +47,6 @@
<!-- Click to clear selection in the album selection activity. [CHAR LIMIT=15] -->
<string name="photodream_select_none">Deselect All</string>
+ <!-- Text shown instead of a list of albums when there are no albums with photos. [CHAR LIMIT=50] -->
+ <string name="no_photos">No photos on the device.</string>
</resources>
diff --git a/src/com/android/dreams/phototable/FlipperDreamSettings.java b/src/com/android/dreams/phototable/FlipperDreamSettings.java
index 87802c6..464029e 100644
--- a/src/com/android/dreams/phototable/FlipperDreamSettings.java
+++ b/src/com/android/dreams/phototable/FlipperDreamSettings.java
@@ -19,6 +19,7 @@ import android.app.ListActivity;
import android.content.SharedPreferences;
import android.database.DataSetObserver;
import android.os.AsyncTask;
+import android.os.AsyncTask.Status;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuInflater;
@@ -40,6 +41,7 @@ public class FlipperDreamSettings extends ListActivity {
private PhotoSourcePlexor mPhotoSource;
private SectionedAlbumDataAdapter mAdapter;
private MenuItem mSelectAll;
+ private AsyncTask<Void, Void, Void> mLoadingTask;
@Override
protected void onCreate(Bundle savedInstanceState){
@@ -48,11 +50,20 @@ public class FlipperDreamSettings extends ListActivity {
init();
}
+ @Override
+ protected void onResume(){
+ super.onResume();
+ init();
+ }
+
protected void init() {
mPhotoSource = new PhotoSourcePlexor(this, mSettings);
setContentView(R.layout.settingslist);
-
- new AsyncTask<Void, Void, Void>() {
+ if (mLoadingTask != null && mLoadingTask.getStatus() != Status.FINISHED) {
+ mLoadingTask.cancel(true);
+ }
+ showApology(false);
+ mLoadingTask = new AsyncTask<Void, Void, Void>() {
@Override
public Void doInBackground(Void... unused) {
mAdapter = new SectionedAlbumDataAdapter(FlipperDreamSettings.this,
@@ -78,11 +89,10 @@ public class FlipperDreamSettings extends ListActivity {
setListAdapter(mAdapter);
getListView().setItemsCanFocus(true);
updateActionItem();
- if (mAdapter.getCount() == 0) {
- findViewById(android.R.id.empty).setVisibility(View.GONE);
- }
+ showApology(mAdapter.getCount() == 0);
}
- }.execute();
+ };
+ mLoadingTask.execute();
}
@Override
@@ -105,6 +115,15 @@ public class FlipperDreamSettings extends ListActivity {
}
}
+ private void showApology(boolean apologize) {
+ View empty = findViewById(R.id.spinner);
+ View sorry = findViewById(R.id.sorry);
+ if (empty != null && sorry != null) {
+ empty.setVisibility(apologize ? View.GONE : View.VISIBLE);
+ sorry.setVisibility(apologize ? View.VISIBLE : View.GONE);
+ }
+ }
+
private void updateActionItem() {
if (mAdapter != null && mSelectAll != null) {
if (mAdapter.areAllSelected()) {