diff options
Diffstat (limited to 'app/src/main/java/it/niedermann/nextcloud/deck/ui/card/CardAttachmentsFragment.java')
-rw-r--r-- | app/src/main/java/it/niedermann/nextcloud/deck/ui/card/CardAttachmentsFragment.java | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/CardAttachmentsFragment.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/CardAttachmentsFragment.java index a26bac420..563b8ce2c 100644 --- a/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/CardAttachmentsFragment.java +++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/CardAttachmentsFragment.java @@ -16,6 +16,7 @@ import androidx.annotation.Nullable; import androidx.annotation.RequiresApi; import androidx.coordinatorlayout.widget.CoordinatorLayout; import androidx.fragment.app.Fragment; +import androidx.recyclerview.widget.GridLayoutManager; import androidx.recyclerview.widget.RecyclerView; import com.google.android.material.floatingactionbutton.FloatingActionButton; @@ -83,6 +84,22 @@ public class CardAttachmentsFragment extends Fragment implements AttachmentAdapt syncManager.readAccount(accountId).observe(getViewLifecycleOwner(), (Account account) -> { RecyclerView.Adapter adapter = new AttachmentAdapter(this, account, fullCard.getCard().getId(), fullCard.getAttachments()); attachmentsList.setAdapter(adapter); + GridLayoutManager glm = new GridLayoutManager(getActivity(), 3); + + glm.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() { + @Override + public int getSpanSize(int position) { + switch (adapter.getItemViewType(position)) { + case AttachmentAdapter.VIEW_TYPE_IMAGE: + return 1; + case AttachmentAdapter.VIEW_TYPE_DEFAULT: + return 3; + default: + return 1; + } + } + }); + attachmentsList.setLayoutManager(glm); }); } }); |