2020
2121package com.owncloud.android.presentation.sharing
2222
23+ import android.app.AlertDialog
2324import android.content.Context
2425import android.os.Bundle
2526import android.view.LayoutInflater
@@ -32,6 +33,8 @@ import com.owncloud.android.R
3233import com.owncloud.android.databinding.MembersFragmentBinding
3334import com.owncloud.android.domain.files.model.OCFile
3435import com.owncloud.android.domain.roles.model.OCRole
36+ import com.owncloud.android.domain.sharing.shares.model.MemberPermission
37+ import com.owncloud.android.extensions.avoidScreenshotsIfNeeded
3538import com.owncloud.android.extensions.collectLatestLifecycleFlow
3639import com.owncloud.android.extensions.showErrorInSnackbar
3740import com.owncloud.android.extensions.showMessageInSnackbar
@@ -40,7 +43,7 @@ import org.koin.androidx.viewmodel.ext.android.activityViewModel
4043import org.koin.core.parameter.parametersOf
4144import timber.log.Timber
4245
43- class GraphShareFragment : Fragment () {
46+ class GraphShareFragment : Fragment (), GraphSharesAdapter.GraphSharesAdapterListener {
4447 private var _binding : MembersFragmentBinding ? = null
4548 private val binding get() = _binding !!
4649
@@ -66,7 +69,7 @@ class GraphShareFragment : Fragment() {
6669 super .onViewCreated(view, savedInstanceState)
6770 binding.membersTitle.text = getString(R .string.share_with_people_title)
6871
69- graphSharesAdapter = GraphSharesAdapter ()
72+ graphSharesAdapter = GraphSharesAdapter (this )
7073 binding.membersRecyclerView.apply {
7174 layoutManager = LinearLayoutManager (requireContext())
7275 adapter = graphSharesAdapter
@@ -105,6 +108,15 @@ class GraphShareFragment : Fragment() {
105108 _binding = null
106109 }
107110
111+ override fun onRemoveShare (share : MemberPermission ) {
112+ AlertDialog .Builder (requireContext())
113+ .setMessage(getString(R .string.confirmation_remove_share_message, share.displayName))
114+ .setPositiveButton(getString(R .string.common_yes)) { _, _ -> }
115+ .setNegativeButton(getString(R .string.common_no)) { dialog, _ -> dialog.dismiss() }
116+ .show()
117+ .avoidScreenshotsIfNeeded()
118+ }
119+
108120 private fun subscribeToViewModels () {
109121 observeRoles()
110122 observeShares()
0 commit comments