From 2993e08c4af89888a5ac4c569b1a12687949f9a5 Mon Sep 17 00:00:00 2001 From: yashk2000 Date: Thu, 23 Jan 2020 01:33:14 +0530 Subject: [PATCH 1/4] #1708 Add a text when Bookmarks or History is empty --- .../core/bookmark/BookmarksActivity.java | 16 ++++++++++++++++ .../core/history/HistoryActivity.java | 16 ++++++++++++++++ core/src/main/res/layout/activity_bookmarks.xml | 14 ++++++++++++++ core/src/main/res/layout/activity_history.xml | 14 ++++++++++++++ core/src/main/res/values/strings.xml | 2 ++ 5 files changed, 62 insertions(+) diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/bookmark/BookmarksActivity.java b/core/src/main/java/org/kiwix/kiwixmobile/core/bookmark/BookmarksActivity.java index f3b4d29d9..82eb818d1 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/core/bookmark/BookmarksActivity.java +++ b/core/src/main/java/org/kiwix/kiwixmobile/core/bookmark/BookmarksActivity.java @@ -24,7 +24,10 @@ import android.os.Bundle; import android.provider.Settings; import android.view.Menu; import android.view.MenuItem; +import android.view.View; import android.widget.ImageView; +import android.widget.TextView; + import androidx.appcompat.app.ActionBar; import androidx.appcompat.view.ActionMode; import androidx.appcompat.widget.SearchView; @@ -58,6 +61,8 @@ public class BookmarksActivity extends BaseActivity implements BookmarksContract Toolbar toolbar; @BindView(R2.id.recycler_view) RecyclerView recyclerView; + @BindView(R2.id.no_bookmarks) + TextView noBookmarks; @Inject BookmarksContract.Presenter presenter; @Inject @@ -106,6 +111,7 @@ public class BookmarksActivity extends BaseActivity implements BookmarksContract if (refreshAdapter) { bookmarksAdapter.notifyDataSetChanged(); } + checkEmpty(); } }; @@ -124,6 +130,15 @@ public class BookmarksActivity extends BaseActivity implements BookmarksContract bookmarksAdapter = new BookmarksAdapter(bookmarksList, deleteList, this); recyclerView.setAdapter(bookmarksAdapter); + checkEmpty(); + } + + private void checkEmpty() { + if (bookmarksList.size() == 0) { + noBookmarks.setVisibility(View.VISIBLE); + } else { + noBookmarks.setVisibility(View.GONE); + } } @Override @@ -187,6 +202,7 @@ public class BookmarksActivity extends BaseActivity implements BookmarksContract allBookmarks.clear(); allBookmarks.addAll(bookmarksList); notifyBookmarksListFiltered(bookmarksList); + checkEmpty(); } @Override diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/history/HistoryActivity.java b/core/src/main/java/org/kiwix/kiwixmobile/core/history/HistoryActivity.java index d8fb1a3e3..b9c2e75a7 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/core/history/HistoryActivity.java +++ b/core/src/main/java/org/kiwix/kiwixmobile/core/history/HistoryActivity.java @@ -25,7 +25,9 @@ import android.os.Parcelable; import android.provider.Settings; import android.view.Menu; import android.view.MenuItem; +import android.view.View; import android.widget.ImageView; +import android.widget.TextView; import android.widget.Toast; import androidx.appcompat.app.ActionBar; import androidx.appcompat.view.ActionMode; @@ -66,6 +68,8 @@ public class HistoryActivity extends BaseActivity implements HistoryContract.Vie ZimReaderContainer zimReaderContainer; @BindView(R2.id.recycler_view) RecyclerView recyclerView; + @BindView(R2.id.no_history) + TextView noHistory; private boolean refreshAdapter = true; private HistoryAdapter historyAdapter; private LinearLayoutManager layoutManager; @@ -121,6 +125,7 @@ public class HistoryActivity extends BaseActivity implements HistoryContract.Vie if (refreshAdapter) { historyAdapter.notifyDataSetChanged(); } + checkEmpty(); } }; @@ -141,6 +146,15 @@ public class HistoryActivity extends BaseActivity implements HistoryContract.Vie recyclerView.setAdapter(historyAdapter); layoutManager = (LinearLayoutManager) recyclerView.getLayoutManager(); recyclerView.setLayoutManager(layoutManager); + checkEmpty(); + } + + private void checkEmpty() { + if (historyList.size() == 0) { + noHistory.setVisibility(View.VISIBLE); + } else { + noHistory.setVisibility(View.GONE); + } } @Override @@ -149,6 +163,7 @@ public class HistoryActivity extends BaseActivity implements HistoryContract.Vie presenter.loadHistory(sharedPreferenceUtil.getShowHistoryCurrentBook()); if (listState != null) { layoutManager.onRestoreInstanceState(listState); + checkEmpty(); } } @@ -230,6 +245,7 @@ public class HistoryActivity extends BaseActivity implements HistoryContract.Vie fullHistory.clear(); fullHistory.addAll(historyList); notifyHistoryListFiltered(historyList); + checkEmpty(); } @Override diff --git a/core/src/main/res/layout/activity_bookmarks.xml b/core/src/main/res/layout/activity_bookmarks.xml index 20d7de44c..efad06367 100644 --- a/core/src/main/res/layout/activity_bookmarks.xml +++ b/core/src/main/res/layout/activity_bookmarks.xml @@ -7,6 +7,20 @@ + + + + This app requires the ability to read storage to function. Please grant the permission in your settings Go to Settings No Results + No bookmarks yet + No history yet On Off From cbedf9629ebcec6f6437a2e2d91363b465daccb7 Mon Sep 17 00:00:00 2001 From: yashk2000 Date: Thu, 23 Jan 2020 18:52:56 +0530 Subject: [PATCH 2/4] #1708 Add a text when Bookmarks or History is empty --- .../kiwix/kiwixmobile/core/bookmark/BookmarksActivity.java | 7 +------ .../kiwix/kiwixmobile/core/history/HistoryActivity.java | 7 +------ core/src/main/res/layout/activity_bookmarks.xml | 3 +-- core/src/main/res/layout/activity_history.xml | 3 +-- core/src/main/res/values/strings.xml | 4 ++-- 5 files changed, 6 insertions(+), 18 deletions(-) diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/bookmark/BookmarksActivity.java b/core/src/main/java/org/kiwix/kiwixmobile/core/bookmark/BookmarksActivity.java index 82eb818d1..218cdecd1 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/core/bookmark/BookmarksActivity.java +++ b/core/src/main/java/org/kiwix/kiwixmobile/core/bookmark/BookmarksActivity.java @@ -130,15 +130,10 @@ public class BookmarksActivity extends BaseActivity implements BookmarksContract bookmarksAdapter = new BookmarksAdapter(bookmarksList, deleteList, this); recyclerView.setAdapter(bookmarksAdapter); - checkEmpty(); } private void checkEmpty() { - if (bookmarksList.size() == 0) { - noBookmarks.setVisibility(View.VISIBLE); - } else { - noBookmarks.setVisibility(View.GONE); - } + noBookmarks.setVisibility(bookmarksList.size()==0 ? View.VISIBLE : View.GONE); } @Override diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/history/HistoryActivity.java b/core/src/main/java/org/kiwix/kiwixmobile/core/history/HistoryActivity.java index b9c2e75a7..efc4f5a90 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/core/history/HistoryActivity.java +++ b/core/src/main/java/org/kiwix/kiwixmobile/core/history/HistoryActivity.java @@ -146,15 +146,10 @@ public class HistoryActivity extends BaseActivity implements HistoryContract.Vie recyclerView.setAdapter(historyAdapter); layoutManager = (LinearLayoutManager) recyclerView.getLayoutManager(); recyclerView.setLayoutManager(layoutManager); - checkEmpty(); } private void checkEmpty() { - if (historyList.size() == 0) { - noHistory.setVisibility(View.VISIBLE); - } else { - noHistory.setVisibility(View.GONE); - } + noHistory.setVisibility(historyList.size()==0 ? View.VISIBLE : View.GONE); } @Override diff --git a/core/src/main/res/layout/activity_bookmarks.xml b/core/src/main/res/layout/activity_bookmarks.xml index efad06367..71e83f595 100644 --- a/core/src/main/res/layout/activity_bookmarks.xml +++ b/core/src/main/res/layout/activity_bookmarks.xml @@ -12,8 +12,7 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/no_bookmarks" - android:textSize="15sp" - android:gravity="center" + android:textAppearance="@style/TextAppearance.KiwixTheme.Headline5" android:visibility="gone" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" diff --git a/core/src/main/res/layout/activity_history.xml b/core/src/main/res/layout/activity_history.xml index bdfa29cf4..c4d87ea89 100644 --- a/core/src/main/res/layout/activity_history.xml +++ b/core/src/main/res/layout/activity_history.xml @@ -12,9 +12,8 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/no_history" - android:textSize="15sp" + android:textAppearance="@style/TextAppearance.KiwixTheme.Headline5" android:gravity="center" - android:visibility="gone" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" diff --git a/core/src/main/res/values/strings.xml b/core/src/main/res/values/strings.xml index c8b0c692d..849e7b202 100644 --- a/core/src/main/res/values/strings.xml +++ b/core/src/main/res/values/strings.xml @@ -293,8 +293,8 @@ This app requires the ability to read storage to function. Please grant the permission in your settings Go to Settings No Results - No bookmarks yet - No history yet + No Bookmarks + No History On Off From ec195dfe7d9198a42257ca681239621342e1e9f8 Mon Sep 17 00:00:00 2001 From: Yash Khare Date: Mon, 27 Jan 2020 18:14:24 +0530 Subject: [PATCH 3/4] #1708 Add a text when Bookmarks or History is empty --- .../core/bookmark/BookmarksActivity.java | 16 +++++++++++----- .../core/history/HistoryActivity.java | 15 +++++++++------ 2 files changed, 20 insertions(+), 11 deletions(-) diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/bookmark/BookmarksActivity.java b/core/src/main/java/org/kiwix/kiwixmobile/core/bookmark/BookmarksActivity.java index 218cdecd1..0852fec59 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/core/bookmark/BookmarksActivity.java +++ b/core/src/main/java/org/kiwix/kiwixmobile/core/bookmark/BookmarksActivity.java @@ -19,6 +19,7 @@ package org.kiwix.kiwixmobile.core.bookmark; import android.content.Intent; +import android.database.DataSetObserver; import android.net.Uri; import android.os.Bundle; import android.provider.Settings; @@ -111,7 +112,6 @@ public class BookmarksActivity extends BaseActivity implements BookmarksContract if (refreshAdapter) { bookmarksAdapter.notifyDataSetChanged(); } - checkEmpty(); } }; @@ -128,12 +128,19 @@ public class BookmarksActivity extends BaseActivity implements BookmarksContract actionBar.setTitle(R.string.menu_bookmarks); } - bookmarksAdapter = new BookmarksAdapter(bookmarksList, deleteList, this); + setupBookmarksAdapter(); recyclerView.setAdapter(bookmarksAdapter); + } - private void checkEmpty() { - noBookmarks.setVisibility(bookmarksList.size()==0 ? View.VISIBLE : View.GONE); + private void setupBookmarksAdapter() { + bookmarksAdapter = new BookmarksAdapter(bookmarksList, deleteList, this); + bookmarksAdapter.registerAdapterDataObserver(new RecyclerView.AdapterDataObserver() { + @Override public void onChanged() { + super.onChanged(); + noBookmarks.setVisibility(bookmarksList.size() == 0 ? View.VISIBLE : View.GONE); + } + }); } @Override @@ -197,7 +204,6 @@ public class BookmarksActivity extends BaseActivity implements BookmarksContract allBookmarks.clear(); allBookmarks.addAll(bookmarksList); notifyBookmarksListFiltered(bookmarksList); - checkEmpty(); } @Override diff --git a/core/src/main/java/org/kiwix/kiwixmobile/core/history/HistoryActivity.java b/core/src/main/java/org/kiwix/kiwixmobile/core/history/HistoryActivity.java index efc4f5a90..f46c7e568 100644 --- a/core/src/main/java/org/kiwix/kiwixmobile/core/history/HistoryActivity.java +++ b/core/src/main/java/org/kiwix/kiwixmobile/core/history/HistoryActivity.java @@ -125,7 +125,6 @@ public class HistoryActivity extends BaseActivity implements HistoryContract.Vie if (refreshAdapter) { historyAdapter.notifyDataSetChanged(); } - checkEmpty(); } }; @@ -142,14 +141,20 @@ public class HistoryActivity extends BaseActivity implements HistoryContract.Vie actionBar.setTitle(R.string.history); } - historyAdapter = new HistoryAdapter(historyList, deleteList, this); + setupHistoryAdapter(); recyclerView.setAdapter(historyAdapter); layoutManager = (LinearLayoutManager) recyclerView.getLayoutManager(); recyclerView.setLayoutManager(layoutManager); } - private void checkEmpty() { - noHistory.setVisibility(historyList.size()==0 ? View.VISIBLE : View.GONE); + private void setupHistoryAdapter() { + historyAdapter = new HistoryAdapter(historyList, deleteList, this); + historyAdapter.registerAdapterDataObserver(new RecyclerView.AdapterDataObserver() { + @Override public void onChanged() { + super.onChanged(); + noHistory.setVisibility(historyList.size() == 0 ? View.VISIBLE : View.GONE); + } + }); } @Override @@ -158,7 +163,6 @@ public class HistoryActivity extends BaseActivity implements HistoryContract.Vie presenter.loadHistory(sharedPreferenceUtil.getShowHistoryCurrentBook()); if (listState != null) { layoutManager.onRestoreInstanceState(listState); - checkEmpty(); } } @@ -240,7 +244,6 @@ public class HistoryActivity extends BaseActivity implements HistoryContract.Vie fullHistory.clear(); fullHistory.addAll(historyList); notifyHistoryListFiltered(historyList); - checkEmpty(); } @Override From 1f3093f180e27a522ce2c419f46932661a415cd7 Mon Sep 17 00:00:00 2001 From: Yash Khare Date: Mon, 27 Jan 2020 18:39:31 +0530 Subject: [PATCH 4/4] #1708 Add a text when Bookmarks or History is empty --- core/src/main/res/layout/activity_history.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/src/main/res/layout/activity_history.xml b/core/src/main/res/layout/activity_history.xml index c4d87ea89..2014327f1 100644 --- a/core/src/main/res/layout/activity_history.xml +++ b/core/src/main/res/layout/activity_history.xml @@ -12,8 +12,8 @@ android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/no_history" + android:visibility="gone" android:textAppearance="@style/TextAppearance.KiwixTheme.Headline5" - android:gravity="center" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent"