Merge pull request #14 from brion/blank2

Show 'waiting' or 'no uploads' messages when no uploads
This commit is contained in:
Brion Vibber 2013-05-06 11:56:12 -07:00
commit f141e137a3
4 changed files with 31 additions and 0 deletions

View file

@ -6,6 +6,16 @@
android:layout_height="fill_parent"
android:background="#000000"
>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/waiting_first_sync"
android:id="@+id/waitingMessage" android:layout_gravity="center" android:visibility="gone"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/no_uploads_yet"
android:id="@+id/emptyMessage" android:layout_gravity="center" android:visibility="gone"/>
<GridView android:id="@+id/contributionsList"
android:layout_height="fill_parent"
android:layout_width="fill_parent"

View file

@ -67,4 +67,6 @@
<string name="menu_about">{{Identical|About}}</string>
<string name="title_activity_about">{{Identical|About}}</string>
<string name="menu_feedback">Menu item text that prompts user to send feedback to WMF via email</string>
<string name="waiting_first_sync">Message shown on contributions list during first sync.</string>
<string name="no_uploads_yet">Message shown on contribution list during non-first sync if no uploads present.</string>
</resources>

View file

@ -81,4 +81,7 @@
<string name="title_activity_about">About</string>
<string name="menu_feedback">Send Feedback (via Email)</string>
<string name="provider_categories">Recently used categories</string>
<string name="waiting_first_sync">Waiting for first sync...</string>
<string name="no_uploads_yet">You have not yet uploaded any photos.</string>
</resources>

View file

@ -3,6 +3,7 @@ package org.wikimedia.commons.contributions;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.database.Cursor;
import android.graphics.Bitmap;
import android.graphics.drawable.BitmapDrawable;
@ -36,6 +37,8 @@ public class ContributionsListFragment extends SherlockFragment {
private final static int SELECT_FROM_CAMERA = 2;
private GridView contributionsList;
private TextView waitingMessage;
private TextView emptyMessage;
private ContributionsListAdapter contributionsAdapter;
@ -73,6 +76,8 @@ public class ContributionsListFragment extends SherlockFragment {
@Override
public void bindView(View view, Context context, Cursor cursor) {
// hack: hide the 'first sync' message once we've loaded a cell
clearSyncMessage();
final ContributionViewHolder views = (ContributionViewHolder)view.getTag();
Contribution contribution = Contribution.fromCursor(cursor);
@ -258,6 +263,8 @@ public class ContributionsListFragment extends SherlockFragment {
super.onActivityCreated(savedInstanceState);
contributionsList = (GridView)getView().findViewById(R.id.contributionsList);
waitingMessage = (TextView)getView().findViewById(R.id.waitingMessage);
emptyMessage = (TextView)getView().findViewById(R.id.waitingMessage);
contributionDisplayOptions = Utils.getGenericDisplayOptions().build();
contributionsList.setOnItemClickListener((AdapterView.OnItemClickListener)getActivity());
@ -267,5 +274,14 @@ public class ContributionsListFragment extends SherlockFragment {
contributionsList.setSelection(savedInstanceState.getInt("grid-position"));
}
SharedPreferences prefs = this.getSherlockActivity().getSharedPreferences("prefs", Context.MODE_PRIVATE);
String lastModified = prefs.getString("lastSyncTimestamp", "");
if (lastModified.equals("")) {
waitingMessage.setVisibility(View.VISIBLE);
}
}
private void clearSyncMessage() {
waitingMessage.setVisibility(View.GONE);
}
}