package com.topjohnwu.magisk; import android.content.pm.PackageManager; import android.os.Bundle; import android.support.annotation.Nullable; import android.support.v7.widget.RecyclerView; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.TextView; import com.topjohnwu.magisk.adapters.PolicyAdapter; import com.topjohnwu.magisk.components.Fragment; import com.topjohnwu.magisk.container.Policy; import java.util.List; import butterknife.BindView; import butterknife.ButterKnife; import butterknife.Unbinder; public class SuperuserFragment extends Fragment { private Unbinder unbinder; private PackageManager pm; @BindView(R.id.recyclerView) RecyclerView recyclerView; @BindView(R.id.empty_rv) TextView emptyRv; @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_superuser, container, false); unbinder = ButterKnife.bind(this, view); pm = getActivity().getPackageManager(); return view; } @Override public void onStart() { super.onStart(); requireActivity().setTitle(getString(R.string.superuser)); } @Override public void onResume() { super.onResume(); displayPolicyList(); } @Override public void onDestroyView() { super.onDestroyView(); unbinder.unbind(); } private void displayPolicyList() { List policyList = mm.mDB.getPolicyList(pm); if (policyList.size() == 0) { emptyRv.setVisibility(View.VISIBLE); recyclerView.setVisibility(View.GONE); } else { recyclerView.setAdapter(new PolicyAdapter(policyList, mm.mDB, pm)); emptyRv.setVisibility(View.GONE); recyclerView.setVisibility(View.VISIBLE); } } }