Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/stefan-niedermann/nextcloud-deck.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorstefan-niedermann <info@niedermann.it>2019-12-14 12:46:57 +0300
committerstefan-niedermann <info@niedermann.it>2019-12-14 12:46:57 +0300
commitc0fe95fe5040a8627783bb98cd40ae5a1d154112 (patch)
treeab0e5be4871243beafb89b3554702d8651652d94 /app/src/main
parent88c5ef5dc0cb9ba9f951b103d6cdc9dc880090a7 (diff)
#175 Menu to move cards between columns
Do not fetch available stacks for each card
Diffstat (limited to 'app/src/main')
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/ui/MainActivity.java3
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/ui/card/CardAdapter.java8
-rw-r--r--app/src/main/java/it/niedermann/nextcloud/deck/ui/stack/StackFragment.java7
3 files changed, 9 insertions, 9 deletions
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/MainActivity.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/MainActivity.java
index 1d5451553..6b1e09d35 100644
--- a/app/src/main/java/it/niedermann/nextcloud/deck/ui/MainActivity.java
+++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/MainActivity.java
@@ -25,6 +25,7 @@ import com.google.android.material.snackbar.Snackbar;
import com.google.android.material.tabs.TabLayout;
import com.h6ah4i.android.tablayouthelper.TabLayoutHelper;
+import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
@@ -414,7 +415,7 @@ public class MainActivity extends DrawerActivity implements
StackAdapter newStackAdapter = new StackAdapter(getSupportFragmentManager());
for (int i = 0; i < fullStacks.size(); i++) {
FullStack stack = fullStacks.get(i);
- newStackAdapter.addFragment(StackFragment.newInstance(board.getLocalId(), stack.getStack().getLocalId(), account, currentBoardHasEditPermission), stack.getStack().getTitle());
+ newStackAdapter.addFragment(StackFragment.newInstance(board.getLocalId(), stack.getStack().getLocalId(), account, new ArrayList<>(fullStacks), currentBoardHasEditPermission), stack.getStack().getTitle());
if (stack.getLocalId() == savedStackId) {
stackPositionInAdapter = i;
}
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/CardAdapter.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/CardAdapter.java
index 9b89f071c..b61dd3ea5 100644
--- a/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/CardAdapter.java
+++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/CardAdapter.java
@@ -88,11 +88,12 @@ public class CardAdapter extends RecyclerView.Adapter<CardAdapter.CardViewHolder
@BindInt(R.integer.max_labels_chars)
int maxLabelsChars;
- public CardAdapter(long boardId, boolean canEdit, @NonNull SyncManager syncManager, @NonNull Fragment fragment) {
+ public CardAdapter(long boardId, boolean canEdit, @NonNull SyncManager syncManager, List<FullStack> stacks, @NonNull Fragment fragment) {
ButterKnife.bind(this, Objects.requireNonNull(fragment.getActivity()));
this.lifecycleOwner = fragment;
this.boardId = boardId;
this.canEdit = canEdit;
+ this.availableStacks = stacks;
this.syncManager = syncManager;
}
@@ -141,7 +142,6 @@ public class CardAdapter extends RecyclerView.Adapter<CardAdapter.CardViewHolder
DeckLog.log("onLongClickListener");
return true;
});
- setupMoveMenu(card.getAccountId(), boardId);
}
viewHolder.cardTitle.setText(card.getCard().getTitle());
String description = card.getCard().getDescription();
@@ -203,10 +203,6 @@ public class CardAdapter extends RecyclerView.Adapter<CardAdapter.CardViewHolder
viewHolder.cardMenu.setOnClickListener(v -> onOverflowIconClicked(v, card));
}
- private void setupMoveMenu(long accountId, long boardId) {
- syncManager.getStacksForBoard(accountId, boardId).observe(lifecycleOwner, (stacks) -> availableStacks = stacks);
- }
-
private void setupLabels(@NonNull ChipGroup labels, List<Label> labelList) {
Chip chip;
for (int i = 0; i < labelList.size(); i++) {
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/stack/StackFragment.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/stack/StackFragment.java
index 1678398b2..8f2b9e798 100644
--- a/app/src/main/java/it/niedermann/nextcloud/deck/ui/stack/StackFragment.java
+++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/stack/StackFragment.java
@@ -12,6 +12,7 @@ import androidx.annotation.NonNull;
import androidx.fragment.app.Fragment;
import androidx.recyclerview.widget.RecyclerView;
+import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
@@ -29,6 +30,7 @@ public class StackFragment extends Fragment {
private static final String KEY_BOARD_ID = "boardId";
private static final String KEY_STACK_ID = "stackId";
private static final String KEY_ACCOUNT = "account";
+ private static final String KEY_STACKS = "stacks";
private static final String KEY_HAS_EDIT_PERMISSION = "hasEditPermission";
private CardAdapter adapter = null;
private SyncManager syncManager;
@@ -49,12 +51,13 @@ public class StackFragment extends Fragment {
* @return new fragment instance
* @see <a href="https://gunhansancar.com/best-practice-to-instantiate-fragments-with-arguments-in-android/">Best Practice to Instantiate Fragments with Arguments in Android</a>
*/
- public static StackFragment newInstance(long boardId, long stackId, Account account, boolean hasEditPermission) {
+ public static StackFragment newInstance(long boardId, long stackId, Account account, ArrayList<FullStack> fullStacks, boolean hasEditPermission) {
Bundle bundle = new Bundle();
bundle.putLong(KEY_BOARD_ID, boardId);
bundle.putLong(KEY_STACK_ID, stackId);
bundle.putBoolean(KEY_HAS_EDIT_PERMISSION, hasEditPermission);
bundle.putSerializable(KEY_ACCOUNT, account);
+ bundle.putSerializable(KEY_STACKS, fullStacks);
StackFragment fragment = new StackFragment();
fragment.setArguments(bundle);
@@ -87,7 +90,7 @@ public class StackFragment extends Fragment {
syncManager = new SyncManager(activity);
- adapter = new CardAdapter(boardId, getArguments().getBoolean(KEY_HAS_EDIT_PERMISSION), syncManager, this);
+ adapter = new CardAdapter(boardId, getArguments().getBoolean(KEY_HAS_EDIT_PERMISSION), syncManager, (List<FullStack>) getArguments().getSerializable(KEY_STACKS), this);
recyclerView.setAdapter(adapter);
if (onScrollListener != null) {
recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {