mirror of
https://github.com/kiwix/kiwix-android.git
synced 2025-09-08 06:42:21 -04:00
rolled back to old bookmarks
This commit is contained in:
parent
f5d7f25243
commit
e28779f98d
@ -53,14 +53,7 @@ dependencies {
|
|||||||
compile 'eu.mhutti1.utils.storage:android-storage-devices:0.4.7'
|
compile 'eu.mhutti1.utils.storage:android-storage-devices:0.4.7'
|
||||||
compile 'com.jakewharton:butterknife:8.0.1'
|
compile 'com.jakewharton:butterknife:8.0.1'
|
||||||
apt 'com.jakewharton:butterknife-compiler:8.0.1'
|
apt 'com.jakewharton:butterknife-compiler:8.0.1'
|
||||||
|
|
||||||
// fast adapter
|
|
||||||
// compile('com.mikepenz:fastadapter:2.1.6@aar') {
|
|
||||||
compile('com.mikepenz:fastadapter:1.6.0@aar') {
|
|
||||||
transitive = true
|
|
||||||
}
|
|
||||||
compile 'com.mikepenz:fastadapter-extensions:1.8.0@aar'
|
|
||||||
|
|
||||||
compile files("$buildDir/native-libs/native-libs.jar")
|
compile files("$buildDir/native-libs/native-libs.jar")
|
||||||
compile group: 'com.google.guava', name: 'guava', version: '19.0'
|
compile group: 'com.google.guava', name: 'guava', version: '19.0'
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
<!-- Color when the row is selected -->
|
<!-- Color when the row is selected -->
|
||||||
<item android:drawable="@android:color/darker_gray" android:state_pressed="false" android:state_selected="true" />
|
<item android:drawable="@android:color/darker_gray" android:state_pressed="false" android:state_selected="true" />
|
||||||
<!-- Standard background color -->
|
|
||||||
|
|
||||||
</selector>
|
</selector>
|
@ -6,6 +6,7 @@
|
|||||||
android:id="@+id/bookmarks_activity_layout"
|
android:id="@+id/bookmarks_activity_layout"
|
||||||
android:layout_width="fill_parent"
|
android:layout_width="fill_parent"
|
||||||
android:layout_height="fill_parent"
|
android:layout_height="fill_parent"
|
||||||
|
android:fitsSystemWindows="true"
|
||||||
tools:context=".BookmarksActivity">
|
tools:context=".BookmarksActivity">
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
@ -32,12 +33,11 @@
|
|||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent">
|
android:layout_height="match_parent">
|
||||||
|
|
||||||
<android.support.v7.widget.RecyclerView
|
<ListView
|
||||||
android:id="@+id/bookmarks_list"
|
android:id="@+id/bookmarks_list"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:background="?android:attr/selectableItemBackground"
|
android:background="?attr/listBackground"/>
|
||||||
/>
|
|
||||||
|
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
@ -58,6 +58,7 @@
|
|||||||
style="@android:style/TextAppearance.Large"
|
style="@android:style/TextAppearance.Large"
|
||||||
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:gravity="center"
|
||||||
android:paddingBottom="15dp"
|
android:paddingBottom="15dp"
|
||||||
android:paddingLeft="10dp"
|
android:paddingLeft="10dp"
|
||||||
|
@ -3,8 +3,7 @@
|
|||||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:orientation="horizontal"
|
android:orientation="horizontal"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content">
|
||||||
android:background="@drawable/bookmark_row_selector">
|
|
||||||
|
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
@ -17,6 +16,7 @@
|
|||||||
android:layout_width="fill_parent"
|
android:layout_width="fill_parent"
|
||||||
android:layout_height="fill_parent"
|
android:layout_height="fill_parent"
|
||||||
android:layout_margin="15dp"
|
android:layout_margin="15dp"
|
||||||
|
android:textColor="@drawable/bookmarks_selector"
|
||||||
android:textSize="15sp"
|
android:textSize="15sp"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
|
@ -1,58 +1,58 @@
|
|||||||
package org.kiwix.kiwixmobile;
|
//package org.kiwix.kiwixmobile;
|
||||||
|
//
|
||||||
import android.support.v7.widget.RecyclerView;
|
//import android.support.v7.widget.RecyclerView;
|
||||||
import android.view.View;
|
//import android.view.View;
|
||||||
import android.widget.TextView;
|
//import android.widget.TextView;
|
||||||
|
//
|
||||||
import com.mikepenz.fastadapter.items.AbstractItem;
|
//import com.mikepenz.fastadapter.items.AbstractItem;
|
||||||
|
//
|
||||||
import java.util.List;
|
//import java.util.List;
|
||||||
|
//
|
||||||
/**
|
///**
|
||||||
* Created by EladKeyshawn on 03/02/2017.
|
// * Created by EladKeyshawn on 03/02/2017.
|
||||||
*/
|
// */
|
||||||
|
//
|
||||||
public class BookmarkItem extends AbstractItem<BookmarkItem,BookmarkItem.ViewHolder> {
|
//public class BookmarkItem extends AbstractItem<BookmarkItem,BookmarkItem.ViewHolder> {
|
||||||
|
//
|
||||||
private String title;
|
// private String title;
|
||||||
private String url;
|
// private String url;
|
||||||
public BookmarkItem(String title,String url) {
|
// public BookmarkItem(String title,String url) {
|
||||||
this.title = title;
|
// this.title = title;
|
||||||
this.url = url;
|
// this.url = url;
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
|
//
|
||||||
public String getTitle() {
|
// public String getTitle() {
|
||||||
return title;
|
// return title;
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
public String getUrl() {
|
// public String getUrl() {
|
||||||
return url;
|
// return url;
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
@Override
|
// @Override
|
||||||
public int getType() {
|
// public int getType() {
|
||||||
return 0;
|
// return 0;
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
@Override
|
// @Override
|
||||||
public int getLayoutRes() {
|
// public int getLayoutRes() {
|
||||||
return R.layout.bookmarks_row;
|
// return R.layout.bookmarks_row;
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
@Override
|
// @Override
|
||||||
public void bindView(ViewHolder holder) {
|
// public void bindView(ViewHolder holder) {
|
||||||
super.bindView(holder);
|
// super.bindView(holder);
|
||||||
holder.titleTextView.setText(title);
|
// holder.titleTextView.setText(title);
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
static class ViewHolder extends RecyclerView.ViewHolder {
|
// static class ViewHolder extends RecyclerView.ViewHolder {
|
||||||
|
//
|
||||||
TextView titleTextView;
|
// TextView titleTextView;
|
||||||
public ViewHolder(View view) {
|
// public ViewHolder(View view) {
|
||||||
super(view);
|
// super(view);
|
||||||
this.titleTextView = (TextView) view.findViewById(R.id.bookmark_title);
|
// this.titleTextView = (TextView) view.findViewById(R.id.bookmark_title);
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
|
//
|
||||||
}
|
//}
|
||||||
|
@ -28,19 +28,22 @@ import android.provider.Settings;
|
|||||||
import android.support.design.widget.CoordinatorLayout;
|
import android.support.design.widget.CoordinatorLayout;
|
||||||
import android.support.design.widget.Snackbar;
|
import android.support.design.widget.Snackbar;
|
||||||
import android.support.v7.app.AppCompatActivity;
|
import android.support.v7.app.AppCompatActivity;
|
||||||
import android.support.v7.view.ActionMode;
|
|
||||||
import android.support.v7.widget.LinearLayoutManager;
|
|
||||||
import android.support.v7.widget.RecyclerView;
|
|
||||||
import android.support.v7.widget.Toolbar;
|
import android.support.v7.widget.Toolbar;
|
||||||
|
import android.util.SparseBooleanArray;
|
||||||
|
import android.view.ActionMode;
|
||||||
|
import android.view.LayoutInflater;
|
||||||
import android.view.Menu;
|
import android.view.Menu;
|
||||||
|
import android.view.MenuInflater;
|
||||||
import android.view.MenuItem;
|
import android.view.MenuItem;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
|
import android.widget.AbsListView;
|
||||||
|
import android.widget.AdapterView;
|
||||||
|
import android.widget.ArrayAdapter;
|
||||||
import android.widget.LinearLayout;
|
import android.widget.LinearLayout;
|
||||||
|
import android.widget.ListView;
|
||||||
import com.mikepenz.fastadapter.FastAdapter;
|
import android.widget.RelativeLayout;
|
||||||
import com.mikepenz.fastadapter.adapters.ItemAdapter;
|
import android.widget.TextView;
|
||||||
import com.mikepenz.fastadapter_extensions.ActionModeHelper;
|
|
||||||
|
|
||||||
import org.kiwix.kiwixmobile.database.BookmarksDao;
|
import org.kiwix.kiwixmobile.database.BookmarksDao;
|
||||||
import org.kiwix.kiwixmobile.database.KiwixDatabase;
|
import org.kiwix.kiwixmobile.database.KiwixDatabase;
|
||||||
@ -48,17 +51,20 @@ import org.kiwix.kiwixmobile.utils.DimenUtils;
|
|||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
|
||||||
public class BookmarksActivity extends AppCompatActivity {
|
public class BookmarksActivity extends AppCompatActivity
|
||||||
private ArrayList<String> bookmarksTitles;
|
implements AdapterView.OnItemClickListener {
|
||||||
|
|
||||||
|
private SparseBooleanArray sparseBooleanArray;
|
||||||
|
private ArrayList<String> bookmarks;
|
||||||
private ArrayList<String> bookmarkUrls;
|
private ArrayList<String> bookmarkUrls;
|
||||||
private RecyclerView bookmarksRecyclerview;
|
private ArrayList<String> tempContents;
|
||||||
|
private ListView bookmarksList;
|
||||||
|
private ArrayAdapter adapter;
|
||||||
|
private ArrayList<String> selected;
|
||||||
|
private int numOfSelected;
|
||||||
private CoordinatorLayout snackbarLayout;
|
private CoordinatorLayout snackbarLayout;
|
||||||
private LinearLayout noBookmarksLayout;
|
private LinearLayout noBookmarksLayout;
|
||||||
private BookmarksDao bookmarksDao;
|
private BookmarksDao bookmarksDao;
|
||||||
FastAdapter<BookmarkItem> fastAdapter;
|
|
||||||
ItemAdapter<BookmarkItem> bookmarkItemAdapter;
|
|
||||||
private ArrayList<BookmarkItem> bookmarkItems;
|
|
||||||
private ActionModeHelper actionModeHelper;
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onCreate(Bundle savedInstanceState) {
|
protected void onCreate(Bundle savedInstanceState) {
|
||||||
@ -70,113 +76,121 @@ public class BookmarksActivity extends AppCompatActivity {
|
|||||||
setContentView(R.layout.activity_bookmarks);
|
setContentView(R.layout.activity_bookmarks);
|
||||||
setUpToolbar();
|
setUpToolbar();
|
||||||
snackbarLayout = (CoordinatorLayout) findViewById(R.id.bookmarks_activity_layout);
|
snackbarLayout = (CoordinatorLayout) findViewById(R.id.bookmarks_activity_layout);
|
||||||
|
selected = new ArrayList<>();
|
||||||
|
bookmarksList = (ListView) findViewById(R.id.bookmarks_list);
|
||||||
noBookmarksLayout = (LinearLayout) findViewById(R.id.bookmarks_none_linlayout);
|
noBookmarksLayout = (LinearLayout) findViewById(R.id.bookmarks_none_linlayout);
|
||||||
|
|
||||||
setUpFastAdapter(savedInstanceState);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void setUpFastAdapter(Bundle savedInstanceState) {
|
|
||||||
bookmarkItems = new ArrayList<>();
|
|
||||||
bookmarkItemAdapter = new ItemAdapter<>();
|
|
||||||
fastAdapter = new FastAdapter<>();
|
|
||||||
fastAdapter.withSavedInstanceState(savedInstanceState);
|
|
||||||
|
|
||||||
ActionBarCallBack actionBarCallBack = new ActionBarCallBack();
|
|
||||||
actionModeHelper = new ActionModeHelper(fastAdapter, R.menu.menu_bookmarks, actionBarCallBack );
|
|
||||||
|
|
||||||
fastAdapter.withSelectable(true);
|
|
||||||
fastAdapter.withSelectOnLongClick(true);
|
|
||||||
fastAdapter.withMultiSelect(true);
|
|
||||||
fastAdapter.withSelectOnLongClick(true);
|
|
||||||
fastAdapter.withOnPreClickListener((v, adapter, item, position) -> {
|
|
||||||
Boolean res = actionModeHelper.onClick(item);
|
|
||||||
return res != null && !res;
|
|
||||||
});
|
|
||||||
fastAdapter.withOnClickListener((v, adapter, item, position) -> {
|
|
||||||
if (actionModeHelper.getActionMode() == null) {
|
|
||||||
goToBookmark(position);
|
|
||||||
} else {
|
|
||||||
actionModeHelper.getActionMode().setTitle(Integer.toString(fastAdapter.getSelectedItems().size()));
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
});
|
|
||||||
|
|
||||||
fastAdapter.withOnPreLongClickListener((v, adapter12, item, position) -> {
|
|
||||||
ActionMode actionMode = actionModeHelper.onLongClick(BookmarksActivity.this, position);
|
|
||||||
if (actionMode!=null){
|
|
||||||
actionModeHelper.getActionMode().setTitle(Integer.toString(fastAdapter.getSelectedItems().size()));
|
|
||||||
}
|
|
||||||
return actionMode != null;
|
|
||||||
});
|
|
||||||
|
|
||||||
|
|
||||||
bookmarksRecyclerview = (RecyclerView) findViewById(R.id.bookmarks_list);
|
|
||||||
bookmarksRecyclerview.setLayoutManager(new LinearLayoutManager(this));
|
|
||||||
|
|
||||||
|
|
||||||
bookmarksDao = new BookmarksDao(KiwixDatabase.getInstance(this));
|
bookmarksDao = new BookmarksDao(KiwixDatabase.getInstance(this));
|
||||||
bookmarksTitles = bookmarksDao.getBookmarkTitles(ZimContentProvider.getId(), ZimContentProvider.getName());
|
bookmarks = bookmarksDao.getBookmarkTitles(ZimContentProvider.getId(), ZimContentProvider.getName());
|
||||||
bookmarkUrls = bookmarksDao.getBookmarks(ZimContentProvider.getId(), ZimContentProvider.getName());
|
bookmarkUrls = bookmarksDao.getBookmarks(ZimContentProvider.getId(), ZimContentProvider.getName());
|
||||||
|
|
||||||
bookmarksRecyclerview.setAdapter(bookmarkItemAdapter.wrap(fastAdapter));
|
adapter = new ArrayAdapter<String>(getApplicationContext(), R.layout.bookmarks_row, R.id.bookmark_title, bookmarks) {
|
||||||
addDataToBookmarkItems();
|
@Override
|
||||||
|
public View getView(int position, View convertView, ViewGroup parent) {
|
||||||
|
if(convertView == null){
|
||||||
|
LayoutInflater inflater = getLayoutInflater();
|
||||||
|
convertView = inflater.inflate(R.layout.bookmarks_row, null);
|
||||||
|
}
|
||||||
|
return super.getView(position, convertView, parent);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
bookmarksList.setAdapter(adapter);
|
||||||
setNoBookmarksState();
|
setNoBookmarksState();
|
||||||
|
|
||||||
|
bookmarksList.setChoiceMode(AbsListView.CHOICE_MODE_MULTIPLE_MODAL);
|
||||||
|
bookmarksList.setMultiChoiceModeListener(new AbsListView.MultiChoiceModeListener() {
|
||||||
|
@Override
|
||||||
|
public void onItemCheckedStateChanged(ActionMode mode, int position, long id,
|
||||||
|
boolean checked) {
|
||||||
|
if (checked) {
|
||||||
|
selected.add(bookmarks.get(position));
|
||||||
|
numOfSelected++;
|
||||||
|
mode.setTitle(Integer.toString(numOfSelected));
|
||||||
|
} else if (selected.contains(bookmarks.get(position))) {
|
||||||
|
selected.remove(bookmarks.get(position));
|
||||||
|
numOfSelected--;
|
||||||
|
if (numOfSelected == 0) {
|
||||||
|
mode.finish();
|
||||||
|
} else {
|
||||||
|
mode.setTitle(Integer.toString(numOfSelected));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onCreateActionMode(ActionMode mode, Menu menu) {
|
||||||
|
MenuInflater inflater = mode.getMenuInflater();
|
||||||
|
inflater.inflate(R.menu.menu_bookmarks, menu);
|
||||||
|
numOfSelected = 0;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
|
||||||
|
|
||||||
|
switch (item.getItemId()) {
|
||||||
|
case R.id.menu_bookmarks_delete:
|
||||||
|
deleteSelectedItems();
|
||||||
|
popDeleteBookmarksSnackbar();
|
||||||
|
mode.finish();
|
||||||
|
return true;
|
||||||
|
default:
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onDestroyActionMode(ActionMode mode) {
|
||||||
|
|
||||||
|
}
|
||||||
|
});
|
||||||
|
bookmarksList.setOnItemClickListener(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void goToBookmark(int position) {
|
|
||||||
Intent intent = new Intent(this, KiwixMobileActivity.class);
|
|
||||||
if (!bookmarkItems.get(position).getUrl().equals("null")) {
|
|
||||||
intent.putExtra("choseXURL", bookmarkItems.get(position).getUrl());
|
|
||||||
} else {
|
|
||||||
intent.putExtra("choseXTitle", bookmarkItems.get(position).getTitle());
|
|
||||||
}
|
|
||||||
intent.putExtra("bookmarkClicked", true);
|
|
||||||
int value = Settings.System.getInt(getContentResolver(), Settings.System.ALWAYS_FINISH_ACTIVITIES, 0);
|
|
||||||
if (value == 1) {
|
|
||||||
startActivity(intent);
|
|
||||||
finish();
|
|
||||||
} else {
|
|
||||||
setResult(RESULT_OK, intent);
|
|
||||||
finish();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
private void addDataToBookmarkItems() {
|
|
||||||
for (int i = 0; i < bookmarksTitles.size(); i++) {
|
|
||||||
bookmarkItems.add(new BookmarkItem(bookmarksTitles.get(i), bookmarkUrls.get(i)).withSelectable(true));
|
|
||||||
}
|
|
||||||
bookmarkItemAdapter.add(bookmarkItems);
|
|
||||||
bookmarkItemAdapter.notifyDataSetChanged();
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
private void setNoBookmarksState() {
|
private void setNoBookmarksState() {
|
||||||
if (fastAdapter.getItemCount() == 0) {
|
if (bookmarksList.getCount() == 0) {
|
||||||
noBookmarksLayout.setVisibility(View.VISIBLE);
|
noBookmarksLayout.setVisibility(View.VISIBLE);
|
||||||
} else {
|
} else {
|
||||||
noBookmarksLayout.setVisibility(View.GONE);
|
noBookmarksLayout.setVisibility(View.GONE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void popDeleteBookmarksSnackbar(int numOfSelected) {
|
private void popDeleteBookmarksSnackbar() {
|
||||||
Snackbar bookmarkDeleteSnackbar =
|
Snackbar bookmarkDeleteSnackbar =
|
||||||
Snackbar.make(snackbarLayout, numOfSelected + " " + getString(R.string.deleted_message), Snackbar.LENGTH_LONG);
|
Snackbar.make(snackbarLayout, numOfSelected + " " + getString(R.string.deleted_message), Snackbar.LENGTH_LONG);
|
||||||
|
// .setAction(ShortcutUtils.stringsGetter(R.string.undo, this), v -> {
|
||||||
|
// restoreBookmarks();
|
||||||
|
// setNoBookmarksState();
|
||||||
|
// Toast.makeText(getApplicationContext(), ShortcutUtils.stringsGetter(R.string.bookmarks_restored, getBaseContext()), Toast.LENGTH_SHORT)
|
||||||
|
// .show();
|
||||||
|
// });
|
||||||
|
|
||||||
bookmarkDeleteSnackbar.setActionTextColor(getResources().getColor(R.color.white));
|
bookmarkDeleteSnackbar.setActionTextColor(getResources().getColor(R.color.white));
|
||||||
bookmarkDeleteSnackbar.show();
|
bookmarkDeleteSnackbar.show();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*private void restoreBookmarks() {
|
||||||
|
bookmarksDao.resetBookmarksToPrevious(tempContents);
|
||||||
|
bookmarks = bookmarksDao.getBookmarks();
|
||||||
|
adapter.notifyDataSetChanged();
|
||||||
|
setNoBookmarksState();
|
||||||
|
refreshBookmarksList();
|
||||||
|
}*/
|
||||||
|
|
||||||
private void deleteSelectedItems() {
|
private void deleteSelectedItems() {
|
||||||
for (BookmarkItem item: fastAdapter.getSelectedItems()) {
|
sparseBooleanArray = bookmarksList.getCheckedItemPositions();
|
||||||
deleteBookmark(item.getUrl());
|
tempContents = new ArrayList<>(bookmarks);
|
||||||
bookmarkItems.remove(item);
|
for (int i = sparseBooleanArray.size() - 1; i >= 0; i--) {
|
||||||
|
deleteBookmark(bookmarkUrls.get(sparseBooleanArray.keyAt(i)));
|
||||||
|
bookmarks.remove(sparseBooleanArray.keyAt(i));
|
||||||
|
bookmarkUrls.remove(sparseBooleanArray.keyAt(i));
|
||||||
}
|
}
|
||||||
bookmarkItemAdapter.clear();
|
adapter.notifyDataSetChanged();
|
||||||
bookmarkItemAdapter.add(bookmarkItems);
|
|
||||||
fastAdapter.notifyDataSetChanged();
|
|
||||||
setNoBookmarksState();
|
setNoBookmarksState();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -184,6 +198,12 @@ public class BookmarksActivity extends AppCompatActivity {
|
|||||||
bookmarksDao.deleteBookmark(article, ZimContentProvider.getId(), ZimContentProvider.getName());
|
bookmarksDao.deleteBookmark(article, ZimContentProvider.getId(), ZimContentProvider.getName());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*private void refreshBookmarksList() {
|
||||||
|
bookmarks.clear();
|
||||||
|
bookmarks = bookmarksDao.getBookmarks();
|
||||||
|
adapter.notifyDataSetChanged();
|
||||||
|
setNoBookmarksState();
|
||||||
|
}*/
|
||||||
|
|
||||||
private void setUpToolbar() {
|
private void setUpToolbar() {
|
||||||
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
|
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
|
||||||
@ -196,15 +216,25 @@ public class BookmarksActivity extends AppCompatActivity {
|
|||||||
toolbar.setNavigationOnClickListener(v -> onBackPressed());
|
toolbar.setNavigationOnClickListener(v -> onBackPressed());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onSaveInstanceState(Bundle outState) {
|
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
|
||||||
//add the values which need to be saved from the adapter to the bundle
|
Intent intent = new Intent(this, KiwixMobileActivity.class);
|
||||||
outState = fastAdapter.saveInstanceState(outState);
|
if (!bookmarkUrls.get(position).equals("null")) {
|
||||||
super.onSaveInstanceState(outState);
|
intent.putExtra("choseXURL", bookmarkUrls.get(position));
|
||||||
|
} else {
|
||||||
|
intent.putExtra("choseXTitle", bookmarks.get(position));
|
||||||
|
}
|
||||||
|
intent.putExtra("bookmarkClicked", true);
|
||||||
|
int value = Settings.System.getInt(getContentResolver(), Settings.System.ALWAYS_FINISH_ACTIVITIES, 0);
|
||||||
|
if (value == 1) {
|
||||||
|
startActivity(intent);
|
||||||
|
finish();
|
||||||
|
} else {
|
||||||
|
setResult(RESULT_OK, intent);
|
||||||
|
finish();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onBackPressed() {
|
public void onBackPressed() {
|
||||||
int value = Settings.System.getInt(getContentResolver(), Settings.System.ALWAYS_FINISH_ACTIVITIES, 0);
|
int value = Settings.System.getInt(getContentResolver(), Settings.System.ALWAYS_FINISH_ACTIVITIES, 0);
|
||||||
@ -215,34 +245,9 @@ public class BookmarksActivity extends AppCompatActivity {
|
|||||||
startActivity(startIntent);
|
startActivity(startIntent);
|
||||||
|
|
||||||
} else { // we have a parent activity waiting...
|
} else { // we have a parent activity waiting...
|
||||||
setResult(RESULT_OK, startIntent);
|
setResult(RESULT_OK,startIntent );
|
||||||
finish();
|
finish();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
class ActionBarCallBack implements ActionMode.Callback {
|
|
||||||
@Override
|
|
||||||
public boolean onCreateActionMode(ActionMode mode, Menu menu) {
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
|
|
||||||
deleteSelectedItems();
|
|
||||||
mode.finish();
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onDestroyActionMode(ActionMode mode) {
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user