Added "No bookmarks!" TextView to bookmarks activity

This commit is contained in:
Elad Keyshawn 2016-04-05 17:32:56 +03:00
parent 1cc808ee99
commit 1a11733325
3 changed files with 18 additions and 1 deletions

View File

@ -34,6 +34,8 @@
android:id="@+id/bookmarks_list_nobookmarks" android:id="@+id/bookmarks_list_nobookmarks"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:gravity="center"
android:paddingBottom="15dp" android:paddingBottom="15dp"
android:paddingLeft="10dp" android:paddingLeft="10dp"
android:paddingRight="10dp" android:paddingRight="10dp"

View File

@ -53,7 +53,7 @@
<string name="no_reader_application_installed">Could not find an installed application for this type of file</string> <string name="no_reader_application_installed">Could not find an installed application for this type of file</string>
<string name="customapp_missing_content">Your application is corrupted.\nThis might happen when you remove files on the SD Card.\nYou need to uninstall then reinstall the App from the Play Store.</string> <string name="customapp_missing_content">Your application is corrupted.\nThis might happen when you remove files on the SD Card.\nYou need to uninstall then reinstall the App from the Play Store.</string>
<string name="go_to_play_store">Go to Play Store</string> <string name="go_to_play_store">Go to Play Store</string>
<string name="no_bookmarks">No Bookmarks!</string> <string name="no_bookmarks">No bookmarks!</string>
<string name="menu_bookmarks_list">Bookmarks</string> <string name="menu_bookmarks_list">Bookmarks</string>
<string name="no_section_info">No Content Headers Found</string> <string name="no_section_info">No Content Headers Found</string>
<string name="request_storage">To search for zim files we need access to your storage</string> <string name="request_storage">To search for zim files we need access to your storage</string>

View File

@ -16,6 +16,7 @@ import android.widget.AdapterView;
import android.widget.ArrayAdapter; import android.widget.ArrayAdapter;
import android.widget.LinearLayout; import android.widget.LinearLayout;
import android.widget.ListView; import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast; import android.widget.Toast;
import java.util.ArrayList; import java.util.ArrayList;
import org.kiwix.kiwixmobile.R; import org.kiwix.kiwixmobile.R;
@ -31,6 +32,7 @@ public class BookmarksActivity extends AppCompatActivity
private int numOfSelected; private int numOfSelected;
SparseBooleanArray sparseBooleanArray; SparseBooleanArray sparseBooleanArray;
private LinearLayout snackbarLayout; private LinearLayout snackbarLayout;
private TextView noBookmarksTextView;
@Override protected void onCreate(Bundle savedInstanceState) { @Override protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); super.onCreate(savedInstanceState);
@ -40,9 +42,13 @@ public class BookmarksActivity extends AppCompatActivity
contents = getIntent().getStringArrayListExtra("bookmark_contents"); contents = getIntent().getStringArrayListExtra("bookmark_contents");
selected = new ArrayList<>(); selected = new ArrayList<>();
bookmarksList = (ListView) findViewById(R.id.bookmarks_list); bookmarksList = (ListView) findViewById(R.id.bookmarks_list);
noBookmarksTextView = (TextView) findViewById(R.id.bookmarks_list_nobookmarks);
adapter = new ArrayAdapter(getApplicationContext(), R.layout.bookmarks_row, R.id.bookmark_title, adapter = new ArrayAdapter(getApplicationContext(), R.layout.bookmarks_row, R.id.bookmark_title,
contents); contents);
bookmarksList.setAdapter(adapter); bookmarksList.setAdapter(adapter);
setNoBookmarksState();
bookmarksList.setChoiceMode(AbsListView.CHOICE_MODE_MULTIPLE_MODAL); bookmarksList.setChoiceMode(AbsListView.CHOICE_MODE_MULTIPLE_MODAL);
bookmarksList.setMultiChoiceModeListener(new AbsListView.MultiChoiceModeListener() { bookmarksList.setMultiChoiceModeListener(new AbsListView.MultiChoiceModeListener() {
@Override public void onItemCheckedStateChanged(ActionMode mode, int position, long id, @Override public void onItemCheckedStateChanged(ActionMode mode, int position, long id,
@ -90,6 +96,13 @@ public class BookmarksActivity extends AppCompatActivity
bookmarksList.setOnItemClickListener(this); bookmarksList.setOnItemClickListener(this);
} }
private void setNoBookmarksState() {
if(bookmarksList.getCount() == 0)
noBookmarksTextView.setVisibility(View.VISIBLE);
else
noBookmarksTextView.setVisibility(View.GONE);
}
private void popDeleteBookmarksSnackbar() { private void popDeleteBookmarksSnackbar() {
Snackbar bookmarkDeleteSnackbar = Snackbar bookmarkDeleteSnackbar =
Snackbar.make(snackbarLayout, numOfSelected + " deleted", Snackbar.LENGTH_LONG) Snackbar.make(snackbarLayout, numOfSelected + " deleted", Snackbar.LENGTH_LONG)
@ -98,6 +111,7 @@ public class BookmarksActivity extends AppCompatActivity
contents.clear(); contents.clear();
contents.addAll(tempContents); contents.addAll(tempContents);
adapter.notifyDataSetChanged(); adapter.notifyDataSetChanged();
setNoBookmarksState();
Toast.makeText(getApplicationContext(), "Bookmarks restored", Toast.LENGTH_SHORT).show(); Toast.makeText(getApplicationContext(), "Bookmarks restored", Toast.LENGTH_SHORT).show();
} }
}); });
@ -112,6 +126,7 @@ public class BookmarksActivity extends AppCompatActivity
contents.remove(sparseBooleanArray.keyAt(i)); contents.remove(sparseBooleanArray.keyAt(i));
adapter.notifyDataSetChanged(); adapter.notifyDataSetChanged();
setNoBookmarksState();
} }
private void setUpToolbar() { private void setUpToolbar() {