Loading app/src/androidTest/java/it/niedermann/owncloud/notes/persistence/NotesDatabaseTest.java +2 −2 Original line number Diff line number Diff line Loading @@ -146,7 +146,7 @@ public class NotesDatabaseTest { String newContent = getCurDate() + " This is a even greater day my friend."; DBNote dbNote = new DBNote(newNoteID, 1, Calendar.getInstance(), "A Greater Day", newContent, true, "Best Friend's Record", null, DBStatus.VOID, accountID, NoteUtil.generateNoteExcerpt(newContent), 0); accountID, NoteUtil.generateNoteExcerpt(newContent, false), 0); // Add a new note long noteID = db.addNote(accountID, dbNote); Loading @@ -161,7 +161,7 @@ public class NotesDatabaseTest { newContent = getCurDate() + " This is a even greater day my friend."; dbNote = new DBNote(0, 1, Calendar.getInstance(), "An Even Greater Day", newContent, true, "Sincere Friend's Record", null, DBStatus.VOID, accountID, NoteUtil.generateNoteExcerpt(newContent), 0); accountID, NoteUtil.generateNoteExcerpt(newContent, false), 0); // Add a new note noteID = db.addNote(accountID, dbNote); // Check if this note is added successfully Loading app/src/main/java/it/niedermann/owncloud/notes/android/activity/NotesListViewActivity.java +23 −5 Original line number Diff line number Diff line Loading @@ -23,6 +23,7 @@ import androidx.annotation.NonNull; import androidx.appcompat.view.ActionMode; import androidx.appcompat.widget.SearchView; import androidx.coordinatorlayout.widget.CoordinatorLayout; import androidx.core.content.ContextCompat; import androidx.core.graphics.drawable.DrawableCompat; import androidx.core.view.GravityCompat; import androidx.core.view.ViewCompat; Loading Loading @@ -68,6 +69,7 @@ import it.niedermann.owncloud.notes.model.GridItemDecoration; import it.niedermann.owncloud.notes.model.ISyncCallback; import it.niedermann.owncloud.notes.model.Item; import it.niedermann.owncloud.notes.model.ItemAdapter; import it.niedermann.owncloud.notes.model.SectionItemDecoration; import it.niedermann.owncloud.notes.model.LocalAccount; import it.niedermann.owncloud.notes.model.NavigationAdapter; import it.niedermann.owncloud.notes.model.NavigationAdapter.CategoryNavigationItem; Loading @@ -84,9 +86,9 @@ import it.niedermann.owncloud.notes.util.NoteUtil; import static android.view.View.GONE; import static android.view.View.VISIBLE; import static androidx.preference.PreferenceManager.getDefaultSharedPreferences; import static it.niedermann.owncloud.notes.branding.BrandingUtil.getSecondaryForegroundColorDependingOnTheme; import static it.niedermann.owncloud.notes.util.ColorUtil.contrastRatioIsSufficient; import static it.niedermann.owncloud.notes.util.Notes.isGridViewEnabled; import static it.niedermann.owncloud.notes.util.SSOUtil.askForNewAccount; import static java.util.Arrays.asList; Loading Loading @@ -129,7 +131,7 @@ public class NotesListViewActivity extends LockedActivity implements NoteClickLi protected FloatingActionButton fabCreate; private RecyclerView listView; protected ItemAdapter adapter = null; protected ItemAdapter adapter; protected NotesDatabase db = null; private NavigationAdapter adapterCategories; Loading Loading @@ -183,7 +185,10 @@ public class NotesListViewActivity extends LockedActivity implements NoteClickLi db = NotesDatabase.getInstance(this); gridView = getDefaultSharedPreferences(this).getBoolean(getString(R.string.pref_key_gridview), false); gridView = isGridViewEnabled(this); if (!gridView) { activityBinding.activityNotesListView.setBackgroundColor(ContextCompat.getColor(this, R.color.primary)); } setupToolbars(); setupNavigationList(categoryAdapterSelectedItem); Loading Loading @@ -606,9 +611,22 @@ public class NotesListViewActivity extends LockedActivity implements NoteClickLi int spanCount = (int) ((displayMetrics.widthPixels / displayMetrics.density) / getResources().getInteger(R.integer.max_dp_grid_view)); StaggeredGridLayoutManager gridLayoutManager = new StaggeredGridLayoutManager(spanCount, StaggeredGridLayoutManager.VERTICAL); listView.setLayoutManager(gridLayoutManager); listView.addItemDecoration(new GridItemDecoration(adapter, getResources().getDimensionPixelSize(R.dimen.spacer_2x))); listView.addItemDecoration(new GridItemDecoration(adapter, getResources().getDimensionPixelSize(R.dimen.spacer_3x), getResources().getDimensionPixelSize(R.dimen.spacer_5x), getResources().getDimensionPixelSize(R.dimen.spacer_3x), getResources().getDimensionPixelSize(R.dimen.spacer_1x), getResources().getDimensionPixelSize(R.dimen.spacer_2x) )); } else { listView.setLayoutManager(new LinearLayoutManager(this)); LinearLayoutManager layoutManager = new LinearLayoutManager(this); listView.setLayoutManager(layoutManager); listView.addItemDecoration(new SectionItemDecoration(adapter, getResources().getDimensionPixelSize(R.dimen.spacer_6x), getResources().getDimensionPixelSize(R.dimen.spacer_5x), getResources().getDimensionPixelSize(R.dimen.spacer_1x), 0 )); } } Loading app/src/main/java/it/niedermann/owncloud/notes/android/fragment/PreferencesFragment.java +2 −1 Original line number Diff line number Diff line Loading @@ -66,7 +66,8 @@ public class PreferencesFragment extends PreferenceFragmentCompat implements Bra final Boolean gridView = (Boolean) newValue; Log.v(TAG, "gridView: " + gridView); requireActivity().setResult(Activity.RESULT_OK); new Thread(() -> NotesDatabase.getInstance(requireContext()).regenerateExcerpts(!gridView)).start(); new Thread(() -> NotesDatabase.getInstance(requireContext()).regenerateExcerpts(gridView)).start(); Notes.updateGridViewEnabled(gridView); return true; }); } else { Loading app/src/main/java/it/niedermann/owncloud/notes/model/GridItemDecoration.java +6 −2 Original line number Diff line number Diff line Loading @@ -4,21 +4,25 @@ import android.graphics.Rect; import android.view.View; import androidx.annotation.NonNull; import androidx.annotation.Px; import androidx.recyclerview.widget.RecyclerView; import androidx.recyclerview.widget.StaggeredGridLayoutManager; public class GridItemDecoration extends RecyclerView.ItemDecoration { public class GridItemDecoration extends SectionItemDecoration { @NonNull private final ItemAdapter adapter; private final int gutter; public GridItemDecoration(@NonNull ItemAdapter adapter, int gutter) { public GridItemDecoration(@NonNull ItemAdapter adapter, @Px int sectionLeft, @Px int sectionTop, @Px int sectionRight, @Px int sectionBottom, @Px int gutter) { super(adapter, sectionLeft, sectionTop, sectionRight, sectionBottom); this.adapter = adapter; this.gutter = gutter; } @Override public void getItemOffsets(@NonNull Rect outRect, @NonNull View view, @NonNull RecyclerView parent, @NonNull RecyclerView.State state) { super.getItemOffsets(outRect, view, parent, state); final int position = parent.getChildAdapterPosition(view); final StaggeredGridLayoutManager.LayoutParams lp = (StaggeredGridLayoutManager.LayoutParams) view.getLayoutParams(); Loading app/src/main/java/it/niedermann/owncloud/notes/model/NoteViewGridHolder.java +1 −1 Original line number Diff line number Diff line Loading @@ -14,7 +14,7 @@ public class NoteViewGridHolder extends NoteViewHolder { private final ItemNotesListNoteItemGridBinding binding; public NoteViewGridHolder(@NonNull ItemNotesListNoteItemGridBinding binding, @NonNull NoteClickListener noteClickListener) { super(binding.getRoot(), noteClickListener, true); super(binding.getRoot(), noteClickListener); this.binding = binding; } Loading Loading
app/src/androidTest/java/it/niedermann/owncloud/notes/persistence/NotesDatabaseTest.java +2 −2 Original line number Diff line number Diff line Loading @@ -146,7 +146,7 @@ public class NotesDatabaseTest { String newContent = getCurDate() + " This is a even greater day my friend."; DBNote dbNote = new DBNote(newNoteID, 1, Calendar.getInstance(), "A Greater Day", newContent, true, "Best Friend's Record", null, DBStatus.VOID, accountID, NoteUtil.generateNoteExcerpt(newContent), 0); accountID, NoteUtil.generateNoteExcerpt(newContent, false), 0); // Add a new note long noteID = db.addNote(accountID, dbNote); Loading @@ -161,7 +161,7 @@ public class NotesDatabaseTest { newContent = getCurDate() + " This is a even greater day my friend."; dbNote = new DBNote(0, 1, Calendar.getInstance(), "An Even Greater Day", newContent, true, "Sincere Friend's Record", null, DBStatus.VOID, accountID, NoteUtil.generateNoteExcerpt(newContent), 0); accountID, NoteUtil.generateNoteExcerpt(newContent, false), 0); // Add a new note noteID = db.addNote(accountID, dbNote); // Check if this note is added successfully Loading
app/src/main/java/it/niedermann/owncloud/notes/android/activity/NotesListViewActivity.java +23 −5 Original line number Diff line number Diff line Loading @@ -23,6 +23,7 @@ import androidx.annotation.NonNull; import androidx.appcompat.view.ActionMode; import androidx.appcompat.widget.SearchView; import androidx.coordinatorlayout.widget.CoordinatorLayout; import androidx.core.content.ContextCompat; import androidx.core.graphics.drawable.DrawableCompat; import androidx.core.view.GravityCompat; import androidx.core.view.ViewCompat; Loading Loading @@ -68,6 +69,7 @@ import it.niedermann.owncloud.notes.model.GridItemDecoration; import it.niedermann.owncloud.notes.model.ISyncCallback; import it.niedermann.owncloud.notes.model.Item; import it.niedermann.owncloud.notes.model.ItemAdapter; import it.niedermann.owncloud.notes.model.SectionItemDecoration; import it.niedermann.owncloud.notes.model.LocalAccount; import it.niedermann.owncloud.notes.model.NavigationAdapter; import it.niedermann.owncloud.notes.model.NavigationAdapter.CategoryNavigationItem; Loading @@ -84,9 +86,9 @@ import it.niedermann.owncloud.notes.util.NoteUtil; import static android.view.View.GONE; import static android.view.View.VISIBLE; import static androidx.preference.PreferenceManager.getDefaultSharedPreferences; import static it.niedermann.owncloud.notes.branding.BrandingUtil.getSecondaryForegroundColorDependingOnTheme; import static it.niedermann.owncloud.notes.util.ColorUtil.contrastRatioIsSufficient; import static it.niedermann.owncloud.notes.util.Notes.isGridViewEnabled; import static it.niedermann.owncloud.notes.util.SSOUtil.askForNewAccount; import static java.util.Arrays.asList; Loading Loading @@ -129,7 +131,7 @@ public class NotesListViewActivity extends LockedActivity implements NoteClickLi protected FloatingActionButton fabCreate; private RecyclerView listView; protected ItemAdapter adapter = null; protected ItemAdapter adapter; protected NotesDatabase db = null; private NavigationAdapter adapterCategories; Loading Loading @@ -183,7 +185,10 @@ public class NotesListViewActivity extends LockedActivity implements NoteClickLi db = NotesDatabase.getInstance(this); gridView = getDefaultSharedPreferences(this).getBoolean(getString(R.string.pref_key_gridview), false); gridView = isGridViewEnabled(this); if (!gridView) { activityBinding.activityNotesListView.setBackgroundColor(ContextCompat.getColor(this, R.color.primary)); } setupToolbars(); setupNavigationList(categoryAdapterSelectedItem); Loading Loading @@ -606,9 +611,22 @@ public class NotesListViewActivity extends LockedActivity implements NoteClickLi int spanCount = (int) ((displayMetrics.widthPixels / displayMetrics.density) / getResources().getInteger(R.integer.max_dp_grid_view)); StaggeredGridLayoutManager gridLayoutManager = new StaggeredGridLayoutManager(spanCount, StaggeredGridLayoutManager.VERTICAL); listView.setLayoutManager(gridLayoutManager); listView.addItemDecoration(new GridItemDecoration(adapter, getResources().getDimensionPixelSize(R.dimen.spacer_2x))); listView.addItemDecoration(new GridItemDecoration(adapter, getResources().getDimensionPixelSize(R.dimen.spacer_3x), getResources().getDimensionPixelSize(R.dimen.spacer_5x), getResources().getDimensionPixelSize(R.dimen.spacer_3x), getResources().getDimensionPixelSize(R.dimen.spacer_1x), getResources().getDimensionPixelSize(R.dimen.spacer_2x) )); } else { listView.setLayoutManager(new LinearLayoutManager(this)); LinearLayoutManager layoutManager = new LinearLayoutManager(this); listView.setLayoutManager(layoutManager); listView.addItemDecoration(new SectionItemDecoration(adapter, getResources().getDimensionPixelSize(R.dimen.spacer_6x), getResources().getDimensionPixelSize(R.dimen.spacer_5x), getResources().getDimensionPixelSize(R.dimen.spacer_1x), 0 )); } } Loading
app/src/main/java/it/niedermann/owncloud/notes/android/fragment/PreferencesFragment.java +2 −1 Original line number Diff line number Diff line Loading @@ -66,7 +66,8 @@ public class PreferencesFragment extends PreferenceFragmentCompat implements Bra final Boolean gridView = (Boolean) newValue; Log.v(TAG, "gridView: " + gridView); requireActivity().setResult(Activity.RESULT_OK); new Thread(() -> NotesDatabase.getInstance(requireContext()).regenerateExcerpts(!gridView)).start(); new Thread(() -> NotesDatabase.getInstance(requireContext()).regenerateExcerpts(gridView)).start(); Notes.updateGridViewEnabled(gridView); return true; }); } else { Loading
app/src/main/java/it/niedermann/owncloud/notes/model/GridItemDecoration.java +6 −2 Original line number Diff line number Diff line Loading @@ -4,21 +4,25 @@ import android.graphics.Rect; import android.view.View; import androidx.annotation.NonNull; import androidx.annotation.Px; import androidx.recyclerview.widget.RecyclerView; import androidx.recyclerview.widget.StaggeredGridLayoutManager; public class GridItemDecoration extends RecyclerView.ItemDecoration { public class GridItemDecoration extends SectionItemDecoration { @NonNull private final ItemAdapter adapter; private final int gutter; public GridItemDecoration(@NonNull ItemAdapter adapter, int gutter) { public GridItemDecoration(@NonNull ItemAdapter adapter, @Px int sectionLeft, @Px int sectionTop, @Px int sectionRight, @Px int sectionBottom, @Px int gutter) { super(adapter, sectionLeft, sectionTop, sectionRight, sectionBottom); this.adapter = adapter; this.gutter = gutter; } @Override public void getItemOffsets(@NonNull Rect outRect, @NonNull View view, @NonNull RecyclerView parent, @NonNull RecyclerView.State state) { super.getItemOffsets(outRect, view, parent, state); final int position = parent.getChildAdapterPosition(view); final StaggeredGridLayoutManager.LayoutParams lp = (StaggeredGridLayoutManager.LayoutParams) view.getLayoutParams(); Loading
app/src/main/java/it/niedermann/owncloud/notes/model/NoteViewGridHolder.java +1 −1 Original line number Diff line number Diff line Loading @@ -14,7 +14,7 @@ public class NoteViewGridHolder extends NoteViewHolder { private final ItemNotesListNoteItemGridBinding binding; public NoteViewGridHolder(@NonNull ItemNotesListNoteItemGridBinding binding, @NonNull NoteClickListener noteClickListener) { super(binding.getRoot(), noteClickListener, true); super(binding.getRoot(), noteClickListener); this.binding = binding; } Loading