diff options
author | Stefan Niedermann <info@niedermann.it> | 2020-07-21 13:08:27 +0300 |
---|---|---|
committer | Stefan Niedermann <info@niedermann.it> | 2020-07-21 13:08:27 +0300 |
commit | f2e73963e8d130c4dcd5cf361fd5e2c809921c35 (patch) | |
tree | 08872729e99d0eb04fec9802bdfff952e18bc2d1 /app | |
parent | d2774bf18855f08c65a46355e059e5bcd812b262 (diff) |
#573 projects - Enhance resources dialog
Diffstat (limited to 'app')
3 files changed, 31 insertions, 6 deletions
diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/details/CardProjectsAdapter.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/details/CardProjectsAdapter.java index f9b17560f..0c2d63d74 100644 --- a/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/details/CardProjectsAdapter.java +++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/details/CardProjectsAdapter.java @@ -42,7 +42,7 @@ public class CardProjectsAdapter extends RecyclerView.Adapter<CardProjectsViewHo @Override public void onBindViewHolder(@NonNull CardProjectsViewHolder holder, int position) { final OcsProjectWithResources project = projects.get(position); - holder.bind(project, (v) -> CardProjectResourcesDialog.newInstance(project.getResources()).show(fragmentManager, CardProjectResourcesDialog.class.getSimpleName())); + holder.bind(project, (v) -> CardProjectResourcesDialog.newInstance(project.getName(), project.getResources()).show(fragmentManager, CardProjectResourcesDialog.class.getSimpleName())); } @Override diff --git a/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/projectresources/CardProjectResourcesDialog.java b/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/projectresources/CardProjectResourcesDialog.java index a6464c247..fdd386f7e 100644 --- a/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/projectresources/CardProjectResourcesDialog.java +++ b/app/src/main/java/it/niedermann/nextcloud/deck/ui/card/projectresources/CardProjectResourcesDialog.java @@ -7,6 +7,7 @@ import android.view.View; import android.view.ViewGroup; import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import androidx.fragment.app.DialogFragment; import androidx.lifecycle.ViewModelProvider; @@ -23,11 +24,13 @@ import it.niedermann.nextcloud.deck.ui.card.EditCardViewModel; public class CardProjectResourcesDialog extends BrandedDialogFragment { private static final String KEY_RESOURCES = "resources"; + private static final String KEY_PROJECT_NAME = "projectName"; private CardProjectResourceAdapter adapter; private SyncManager syncManager; private DialogProjectResourcesBinding binding; private EditCardViewModel viewModel; + private String projectName; @NonNull private List<OcsProjectResource> resources = new ArrayList<>(); @@ -39,6 +42,7 @@ public class CardProjectResourcesDialog extends BrandedDialogFragment { throw new IllegalArgumentException("Provide at least " + KEY_RESOURCES); } this.resources.addAll((ArrayList<OcsProjectResource>) args.getSerializable(KEY_RESOURCES)); + this.projectName = args.getString(KEY_PROJECT_NAME); } @Override @@ -60,7 +64,8 @@ public class CardProjectResourcesDialog extends BrandedDialogFragment { // TODO parameter needed adapter = new CardProjectResourceAdapter(viewModel.getAccount(), resources); - binding.getRoot().setAdapter(adapter); + binding.recyclerView.setAdapter(adapter); + binding.projectName.setText(projectName); return binding.getRoot(); } @@ -69,9 +74,10 @@ public class CardProjectResourcesDialog extends BrandedDialogFragment { } - public static DialogFragment newInstance(@NonNull List<OcsProjectResource> resources) { + public static DialogFragment newInstance(@Nullable String projectName, @NonNull List<OcsProjectResource> resources) { final DialogFragment fragment = new CardProjectResourcesDialog(); final Bundle args = new Bundle(); + args.putString(KEY_PROJECT_NAME, projectName); args.putSerializable(KEY_RESOURCES, new ArrayList<>(resources)); fragment.setArguments(args); return fragment; diff --git a/app/src/main/res/layout/dialog_project_resources.xml b/app/src/main/res/layout/dialog_project_resources.xml index 2b78c8a56..44d90f075 100644 --- a/app/src/main/res/layout/dialog_project_resources.xml +++ b/app/src/main/res/layout/dialog_project_resources.xml @@ -1,8 +1,27 @@ <?xml version="1.0" encoding="utf-8"?> -<androidx.recyclerview.widget.RecyclerView xmlns:android="http://schemas.android.com/apk/res/android" +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="wrap_content" - app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager" - tools:listitem="@layout/item_project_resource" />
\ No newline at end of file + android:orientation="vertical" + android:padding="@dimen/spacer_2x"> + + <TextView + android:id="@+id/projectName" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_marginStart="@dimen/spacer_3x" + android:layout_marginEnd="0dp" + android:paddingStart="@dimen/spacer_2x" + android:paddingEnd="0dp" + android:textAppearance="?attr/textAppearanceBody1" + tools:text="@tools:sample/lorem" /> + + <androidx.recyclerview.widget.RecyclerView + android:id="@+id/recycler_view" + android:layout_width="match_parent" + android:layout_height="wrap_content" + app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager" + tools:listitem="@layout/item_project_resource" /> +</LinearLayout>
\ No newline at end of file |