diff --git a/app/src/main/java/org/futo/circles/feature/groups/GroupsFragment.kt b/app/src/main/java/org/futo/circles/feature/groups/GroupsFragment.kt index 3981c199f751afb67e3e71ab5cdca5dc51f5ef55..ed39a488783d78c188cc36d0fc6967310992ceeb 100644 --- a/app/src/main/java/org/futo/circles/feature/groups/GroupsFragment.kt +++ b/app/src/main/java/org/futo/circles/feature/groups/GroupsFragment.kt @@ -1,7 +1,13 @@ package org.futo.circles.feature.groups +import android.annotation.SuppressLint import android.os.Bundle +import android.view.Menu +import android.view.MenuInflater +import android.view.MenuItem import android.view.View +import androidx.appcompat.view.menu.MenuBuilder +import androidx.core.view.MenuProvider import androidx.fragment.app.Fragment import androidx.fragment.app.viewModels import androidx.navigation.fragment.findNavController @@ -24,7 +30,7 @@ import org.futo.circles.feature.groups.list.GroupsListAdapter import org.futo.circles.model.GroupListItem @AndroidEntryPoint -class GroupsFragment : Fragment(org.futo.circles.core.R.layout.fragment_rooms) { +class GroupsFragment : Fragment(org.futo.circles.core.R.layout.fragment_rooms), MenuProvider { private val viewModel by viewModels<GroupsViewModel>() private val binding by viewBinding(FragmentRoomsBinding::bind) @@ -42,6 +48,7 @@ class GroupsFragment : Fragment(org.futo.circles.core.R.layout.fragment_rooms) { super.onViewCreated(view, savedInstanceState) setupViews() setupObservers() + activity?.addMenuProvider(this, viewLifecycleOwner) } override fun onCreate(savedInstanceState: Bundle?) { @@ -50,6 +57,20 @@ class GroupsFragment : Fragment(org.futo.circles.core.R.layout.fragment_rooms) { CirclesExplanationDialog(requireContext(), CircleRoomTypeArg.Group).show() } + @SuppressLint("RestrictedApi") + override fun onCreateMenu(menu: Menu, inflater: MenuInflater) { + (menu as? MenuBuilder)?.setOptionalIconsVisible(true) + menu.clear() + inflater.inflate(R.menu.circles_tab_menu, menu) + } + + override fun onMenuItemSelected(item: MenuItem): Boolean { + when (item.itemId) { + R.id.help -> CirclesExplanationDialog(requireContext(), CircleRoomTypeArg.Group).show() + } + return true + } + private fun setupViews() { binding.rvRooms.apply { setEmptyView(EmptyTabPlaceholderView(requireContext()).apply {