mirror of
https://github.com/beemdevelopment/Aegis.git
synced 2025-05-14 14:02:49 +00:00
Add way to set view mode
This commit is contained in:
parent
f3ed79dc71
commit
a293078603
3 changed files with 26 additions and 0 deletions
|
@ -10,6 +10,7 @@ import android.content.Intent;
|
||||||
import android.graphics.Rect;
|
import android.graphics.Rect;
|
||||||
|
|
||||||
import com.beemdevelopment.aegis.SortCategory;
|
import com.beemdevelopment.aegis.SortCategory;
|
||||||
|
import com.beemdevelopment.aegis.ViewMode;
|
||||||
import com.beemdevelopment.aegis.helpers.comparators.IssuerNameComparator;
|
import com.beemdevelopment.aegis.helpers.comparators.IssuerNameComparator;
|
||||||
import com.google.android.material.bottomsheet.BottomSheetDialog;
|
import com.google.android.material.bottomsheet.BottomSheetDialog;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
|
@ -168,8 +169,14 @@ public class MainActivity extends AegisActivity implements EntryListView.Listene
|
||||||
}
|
}
|
||||||
|
|
||||||
private void onPreferencesResult(int resultCode, Intent data) {
|
private void onPreferencesResult(int resultCode, Intent data) {
|
||||||
|
ViewMode viewMode = ViewMode.fromInteger(getPreferences().getCurrentViewMode());
|
||||||
|
_entryListView.setViewMode(viewMode);
|
||||||
|
|
||||||
// refresh the entire entry list if needed
|
// refresh the entire entry list if needed
|
||||||
if (data.getBooleanExtra("needsRecreate", false)) {
|
if (data.getBooleanExtra("needsRecreate", false)) {
|
||||||
|
|
||||||
|
_entryListView.clearEntries();
|
||||||
|
_entryListView.addEntries(_db.getEntries());
|
||||||
recreate();
|
recreate();
|
||||||
} else if (data.getBooleanExtra("needsRefresh", false)) {
|
} else if (data.getBooleanExtra("needsRefresh", false)) {
|
||||||
boolean showAccountName = getPreferences().isAccountNameVisible();
|
boolean showAccountName = getPreferences().isAccountNameVisible();
|
||||||
|
@ -179,6 +186,7 @@ public class MainActivity extends AegisActivity implements EntryListView.Listene
|
||||||
_entryListView.setTapToReveal(tapToReveal);
|
_entryListView.setTapToReveal(tapToReveal);
|
||||||
_entryListView.setTapToRevealTime(tapToRevealTime);
|
_entryListView.setTapToRevealTime(tapToRevealTime);
|
||||||
_entryListView.refresh(true);
|
_entryListView.refresh(true);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -6,6 +6,7 @@ import android.view.View;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
|
|
||||||
import com.beemdevelopment.aegis.SortCategory;
|
import com.beemdevelopment.aegis.SortCategory;
|
||||||
|
import com.beemdevelopment.aegis.ViewMode;
|
||||||
import com.beemdevelopment.aegis.helpers.ItemTouchHelperAdapter;
|
import com.beemdevelopment.aegis.helpers.ItemTouchHelperAdapter;
|
||||||
import com.beemdevelopment.aegis.helpers.comparators.IssuerNameComparator;
|
import com.beemdevelopment.aegis.helpers.comparators.IssuerNameComparator;
|
||||||
import com.beemdevelopment.aegis.otp.HotpInfo;
|
import com.beemdevelopment.aegis.otp.HotpInfo;
|
||||||
|
@ -31,6 +32,8 @@ public class EntryAdapter extends RecyclerView.Adapter<EntryHolder> implements I
|
||||||
private String _groupFilter;
|
private String _groupFilter;
|
||||||
private SortCategory _sortCategory;
|
private SortCategory _sortCategory;
|
||||||
|
|
||||||
|
private ViewMode _viewMode;
|
||||||
|
|
||||||
// keeps track of the viewholders that are currently bound
|
// keeps track of the viewholders that are currently bound
|
||||||
private List<EntryHolder> _holders;
|
private List<EntryHolder> _holders;
|
||||||
|
|
||||||
|
@ -169,6 +172,10 @@ public class EntryAdapter extends RecyclerView.Adapter<EntryHolder> implements I
|
||||||
_sortCategory = sortCategory;
|
_sortCategory = sortCategory;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setViewMode(ViewMode viewMode) {
|
||||||
|
_viewMode = viewMode;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onItemDismiss(int position) {
|
public void onItemDismiss(int position) {
|
||||||
|
|
||||||
|
@ -203,6 +210,12 @@ public class EntryAdapter extends RecyclerView.Adapter<EntryHolder> implements I
|
||||||
@Override
|
@Override
|
||||||
public EntryHolder onCreateViewHolder(ViewGroup parent, int viewType) {
|
public EntryHolder onCreateViewHolder(ViewGroup parent, int viewType) {
|
||||||
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.card_entry_compact, parent, false);
|
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.card_entry_compact, parent, false);
|
||||||
|
if (_viewMode == ViewMode.NORMAL) {
|
||||||
|
view = LayoutInflater.from(parent.getContext()).inflate(R.layout.card_entry, parent, false);
|
||||||
|
} else if (_viewMode == ViewMode.COMPACT) {
|
||||||
|
view = LayoutInflater.from(parent.getContext()).inflate(R.layout.card_entry_compact, parent, false);
|
||||||
|
}
|
||||||
|
|
||||||
return new EntryHolder(view);
|
return new EntryHolder(view);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -15,6 +15,7 @@ import android.view.animation.AnimationUtils;
|
||||||
import android.view.animation.LayoutAnimationController;
|
import android.view.animation.LayoutAnimationController;
|
||||||
|
|
||||||
import com.beemdevelopment.aegis.SortCategory;
|
import com.beemdevelopment.aegis.SortCategory;
|
||||||
|
import com.beemdevelopment.aegis.ViewMode;
|
||||||
import com.beemdevelopment.aegis.helpers.SimpleItemTouchHelperCallback;
|
import com.beemdevelopment.aegis.helpers.SimpleItemTouchHelperCallback;
|
||||||
import com.beemdevelopment.aegis.helpers.UiRefresher;
|
import com.beemdevelopment.aegis.helpers.UiRefresher;
|
||||||
import com.beemdevelopment.aegis.otp.TotpInfo;
|
import com.beemdevelopment.aegis.otp.TotpInfo;
|
||||||
|
@ -101,6 +102,10 @@ public class EntryListView extends Fragment implements EntryAdapter.Listener {
|
||||||
runLayoutAnimation(_rvKeyProfiles);
|
runLayoutAnimation(_rvKeyProfiles);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setViewMode(ViewMode viewMode) {
|
||||||
|
_adapter.setViewMode(viewMode);
|
||||||
|
}
|
||||||
|
|
||||||
public void refresh(boolean hard) {
|
public void refresh(boolean hard) {
|
||||||
if (_showProgress) {
|
if (_showProgress) {
|
||||||
_progressBar.refresh();
|
_progressBar.refresh();
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue