diff --git a/app/src/main/java/com/nextcloud/talk/controllers/bottomsheet/CallMenuController.java b/app/src/main/java/com/nextcloud/talk/controllers/bottomsheet/CallMenuController.java index a4f30050a..42b367b67 100644 --- a/app/src/main/java/com/nextcloud/talk/controllers/bottomsheet/CallMenuController.java +++ b/app/src/main/java/com/nextcloud/talk/controllers/bottomsheet/CallMenuController.java @@ -21,21 +21,14 @@ package com.nextcloud.talk.controllers.bottomsheet; import android.content.ComponentName; +import android.content.Context; import android.content.Intent; import android.os.Bundle; import android.text.TextUtils; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; -import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.recyclerview.widget.LinearLayoutManager; -import androidx.recyclerview.widget.RecyclerView; -import androidx.work.Data; -import androidx.work.OneTimeWorkRequest; -import androidx.work.WorkManager; -import autodagger.AutoInjector; -import butterknife.BindView; + import com.bluelinelabs.conductor.RouterTransaction; import com.bluelinelabs.conductor.changehandler.HorizontalChangeHandler; import com.kennyc.bottomsheet.adapters.AppAdapter; @@ -55,17 +48,30 @@ import com.nextcloud.talk.utils.DisplayUtils; import com.nextcloud.talk.utils.ShareUtils; import com.nextcloud.talk.utils.bundle.BundleKeys; import com.nextcloud.talk.utils.database.user.UserUtils; -import eu.davidea.flexibleadapter.FlexibleAdapter; -import eu.davidea.flexibleadapter.common.SmoothScrollLinearLayoutManager; -import eu.davidea.flexibleadapter.items.AbstractFlexibleItem; + import org.greenrobot.eventbus.EventBus; import org.parceler.Parcel; import org.parceler.Parcels; -import javax.inject.Inject; import java.util.ArrayList; import java.util.List; +import javax.inject.Inject; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.core.content.ContextCompat; +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; +import androidx.work.Data; +import androidx.work.OneTimeWorkRequest; +import androidx.work.WorkManager; +import autodagger.AutoInjector; +import butterknife.BindView; +import eu.davidea.flexibleadapter.FlexibleAdapter; +import eu.davidea.flexibleadapter.common.SmoothScrollLinearLayoutManager; +import eu.davidea.flexibleadapter.items.AbstractFlexibleItem; + @AutoInjector(NextcloudTalkApplication.class) public class CallMenuController extends BaseController implements FlexibleAdapter.OnItemClickListener { @BindView(R.id.recycler_view) @@ -77,6 +83,9 @@ public class CallMenuController extends BaseController implements FlexibleAdapte @Inject UserUtils userUtils; + @Inject + Context context; + private Conversation conversation; private List menuItems; private FlexibleAdapter adapter; @@ -104,6 +113,7 @@ public class CallMenuController extends BaseController implements FlexibleAdapte } @Override + @NonNull protected View inflateView(@NonNull LayoutInflater inflater, @NonNull ViewGroup container) { return inflater.inflate(R.layout.controller_call_menu, container, false); } @@ -153,45 +163,57 @@ public class CallMenuController extends BaseController implements FlexibleAdapte if (conversation.isFavorite()) { menuItems.add(new MenuItem(getResources().getString(R.string.nc_remove_from_favorites), 97, DisplayUtils.getTintedDrawable(getResources(), R.drawable.ic_star_border_black_24dp, R.color.grey_600))); } else if (CapabilitiesUtil.hasSpreedFeatureCapability(currentUser, "favorites")) { - menuItems.add(new MenuItem(getResources().getString(R.string.nc_add_to_favorites) - , 98, DisplayUtils.getTintedDrawable(getResources(), R.drawable.ic_star_black_24dp, R.color.grey_600))); + menuItems.add(new MenuItem(getResources().getString(R.string.nc_add_to_favorites), + 98, + DisplayUtils.getTintedDrawable(getResources(), + R.drawable.ic_star_black_24dp, + R.color.grey_600))); } if (conversation.isNameEditable(currentUser)) { - menuItems.add(new MenuItem(getResources().getString(R.string.nc_rename), 2, getResources().getDrawable(R.drawable - .ic_pencil_grey600_24dp))); + menuItems.add(new MenuItem(getResources().getString(R.string.nc_rename), + 2, + ContextCompat.getDrawable(context, + R.drawable.ic_pencil_grey600_24dp))); } if (conversation.canModerate(currentUser)) { if (!conversation.isPublic()) { - menuItems.add(new MenuItem(getResources().getString(R.string.nc_make_call_public), 3, getResources().getDrawable(R.drawable - .ic_link_grey600_24px))); + menuItems.add(new MenuItem(getResources().getString(R.string.nc_make_call_public), + 3, ContextCompat.getDrawable(context, + R.drawable.ic_link_grey600_24px))); } else { if (conversation.isHasPassword()) { - menuItems.add(new MenuItem(getResources().getString(R.string.nc_change_password), 4, getResources().getDrawable(R.drawable - .ic_lock_grey600_24px))); - menuItems.add(new MenuItem(getResources().getString(R.string.nc_clear_password), 5, getResources().getDrawable(R.drawable - .ic_lock_open_grey600_24dp))); + menuItems.add(new MenuItem(getResources().getString(R.string.nc_change_password), + 4, ContextCompat.getDrawable(context, + R.drawable.ic_lock_grey600_24px))); + menuItems.add(new MenuItem(getResources().getString(R.string.nc_clear_password), + 5, + ContextCompat.getDrawable(context, + R.drawable.ic_lock_open_grey600_24dp))); } else { - menuItems.add(new MenuItem(getResources().getString(R.string.nc_set_password), 6, getResources().getDrawable(R.drawable - .ic_lock_plus_grey600_24dp))); + menuItems.add(new MenuItem(getResources().getString(R.string.nc_set_password), + 6, ContextCompat.getDrawable(context, + R.drawable.ic_lock_plus_grey600_24dp))); } } - menuItems.add(new MenuItem(getResources().getString(R.string.nc_delete_call), 9, getResources().getDrawable(R.drawable - .ic_delete_grey600_24dp))); + menuItems.add(new MenuItem(getResources().getString(R.string.nc_delete_call), + 9, ContextCompat.getDrawable(context, + R.drawable.ic_delete_grey600_24dp))); } if (conversation.isPublic()) { - menuItems.add(new MenuItem(getResources().getString(R.string.nc_share_link), 7, getResources().getDrawable(R.drawable - .ic_link_grey600_24px))); + menuItems.add(new MenuItem(getResources().getString(R.string.nc_share_link), + 7, ContextCompat.getDrawable(context, + R.drawable.ic_link_grey600_24px))); if (conversation.canModerate(currentUser)) { - menuItems.add(new MenuItem(getResources().getString(R.string.nc_make_call_private), 8, getResources().getDrawable(R.drawable - .ic_group_grey600_24px))); + menuItems.add(new MenuItem(getResources().getString(R.string.nc_make_call_private), + 8, ContextCompat.getDrawable(context, + R.drawable.ic_group_grey600_24px))); } } - if (conversation.canLeave(currentUser)) { menuItems.add(new MenuItem(getResources().getString(R.string.nc_leave), 1, DisplayUtils.getTintedDrawable(getResources(), @@ -202,8 +224,10 @@ public class CallMenuController extends BaseController implements FlexibleAdapte prepareIntent(); List appInfoList = ShareUtils.getShareApps(getActivity(), shareIntent, null, null); - menuItems.add(new AppItem(getResources().getString(R.string.nc_share_link_via), "", "", - getResources().getDrawable(R.drawable.ic_link_grey600_24px))); + menuItems.add(new AppItem(getResources().getString(R.string.nc_share_link_via), + "", + "", + ContextCompat.getDrawable(context, R.drawable.ic_link_grey600_24px))); if (appInfoList != null) { for (AppAdapter.AppInfo appInfo : appInfoList) { menuItems.add(new AppItem(appInfo.title, appInfo.packageName, appInfo.name, appInfo.drawable)); @@ -211,8 +235,12 @@ public class CallMenuController extends BaseController implements FlexibleAdapte } } else { menuItems.add(new MenuItem(getResources().getString(R.string.nc_start_conversation), 0, null)); - menuItems.add(new MenuItem(getResources().getString(R.string.nc_new_conversation), 1, getResources().getDrawable(R.drawable.ic_add_grey600_24px))); - menuItems.add(new MenuItem(getResources().getString(R.string.nc_join_via_link), 2, getResources().getDrawable(R.drawable.ic_link_grey600_24px))); + menuItems.add(new MenuItem(getResources().getString(R.string.nc_new_conversation), + 1, ContextCompat.getDrawable(context, + R.drawable.ic_add_grey600_24px))); + menuItems.add(new MenuItem(getResources().getString(R.string.nc_join_via_link), + 2, ContextCompat.getDrawable(context, + R.drawable.ic_link_grey600_24px))); } }