mirror of
https://github.com/strongswan/strongswan.git
synced 2025-10-03 00:00:24 -04:00
android: Replace deprecated fragment menu APIs
This commit is contained in:
parent
10d8b66f05
commit
9a92088bb4
@ -44,12 +44,13 @@ import java.util.TreeSet;
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.appcompat.widget.SearchView;
|
||||
import androidx.core.view.MenuProvider;
|
||||
import androidx.fragment.app.ListFragment;
|
||||
import androidx.loader.app.LoaderManager;
|
||||
import androidx.loader.content.AsyncTaskLoader;
|
||||
import androidx.loader.content.Loader;
|
||||
|
||||
public class SelectedApplicationsListFragment extends ListFragment implements LoaderManager.LoaderCallbacks<Pair<List<SelectedApplicationEntry>, List<String>>>, SearchView.OnQueryTextListener
|
||||
public class SelectedApplicationsListFragment extends ListFragment implements MenuProvider, LoaderManager.LoaderCallbacks<Pair<List<SelectedApplicationEntry>, List<String>>>, SearchView.OnQueryTextListener
|
||||
{
|
||||
private SelectedApplicationsAdapter mAdapter;
|
||||
private SortedSet<String> mSelection;
|
||||
@ -58,7 +59,7 @@ public class SelectedApplicationsListFragment extends ListFragment implements Lo
|
||||
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState)
|
||||
{
|
||||
super.onViewCreated(view, savedInstanceState);
|
||||
setHasOptionsMenu(true);
|
||||
requireActivity().addMenuProvider(this, getViewLifecycleOwner());
|
||||
|
||||
final boolean readOnly = getActivity().getIntent().getBooleanExtra(VpnProfileDataSource.KEY_READ_ONLY, false);
|
||||
getListView().setChoiceMode(readOnly ? ListView.CHOICE_MODE_NONE : ListView.CHOICE_MODE_MULTIPLE);
|
||||
@ -134,17 +135,21 @@ public class SelectedApplicationsListFragment extends ListFragment implements Lo
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater)
|
||||
public void onCreateMenu(@NonNull Menu menu, @NonNull MenuInflater menuInflater)
|
||||
{
|
||||
MenuItem item = menu.add(R.string.search);
|
||||
item.setIcon(android.R.drawable.ic_menu_search);
|
||||
item.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
|
||||
item.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
|
||||
|
||||
SearchView sv = new SearchView(getActivity());
|
||||
sv.setOnQueryTextListener(this);
|
||||
item.setActionView(sv);
|
||||
}
|
||||
|
||||
super.onCreateOptionsMenu(menu, inflater);
|
||||
@Override
|
||||
public boolean onMenuItemSelected(@NonNull MenuItem menuItem)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -44,13 +44,15 @@ import java.util.Map.Entry;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.core.view.MenuProvider;
|
||||
import androidx.fragment.app.ListFragment;
|
||||
import androidx.lifecycle.Lifecycle;
|
||||
import androidx.loader.app.LoaderManager;
|
||||
import androidx.loader.app.LoaderManager.LoaderCallbacks;
|
||||
import androidx.loader.content.AsyncTaskLoader;
|
||||
import androidx.loader.content.Loader;
|
||||
|
||||
public class TrustedCertificateListFragment extends ListFragment implements LoaderCallbacks<List<TrustedCertificateEntry>>, OnQueryTextListener
|
||||
public class TrustedCertificateListFragment extends ListFragment implements MenuProvider, LoaderCallbacks<List<TrustedCertificateEntry>>, OnQueryTextListener
|
||||
{
|
||||
public static final String EXTRA_CERTIFICATE_SOURCE = "certificate_source";
|
||||
private OnTrustedCertificateSelectedListener mListener;
|
||||
@ -69,7 +71,7 @@ public class TrustedCertificateListFragment extends ListFragment implements Load
|
||||
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState)
|
||||
{
|
||||
super.onViewCreated(view, savedInstanceState);
|
||||
setHasOptionsMenu(true);
|
||||
requireActivity().addMenuProvider(this, getViewLifecycleOwner(), Lifecycle.State.RESUMED);
|
||||
|
||||
setEmptyText(getString(R.string.no_certificates));
|
||||
|
||||
@ -105,17 +107,23 @@ public class TrustedCertificateListFragment extends ListFragment implements Load
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater)
|
||||
public void onCreateMenu(@NonNull Menu menu, @NonNull MenuInflater menuInflater)
|
||||
{
|
||||
MenuItem item = menu.add(R.string.search);
|
||||
item.setIcon(android.R.drawable.ic_menu_search);
|
||||
item.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
|
||||
item.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS);
|
||||
|
||||
SearchView sv = new SearchView(getActivity());
|
||||
sv.setOnQueryTextListener(this);
|
||||
item.setActionView(sv);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onMenuItemSelected(@NonNull MenuItem menuItem)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onQueryTextSubmit(String query)
|
||||
{ /* already handled when the text changes */
|
||||
|
@ -57,10 +57,13 @@ import java.util.Objects;
|
||||
import java.util.Set;
|
||||
import java.util.UUID;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.core.view.MenuProvider;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import androidx.lifecycle.Lifecycle;
|
||||
import androidx.localbroadcastmanager.content.LocalBroadcastManager;
|
||||
|
||||
public class VpnProfileListFragment extends Fragment
|
||||
public class VpnProfileListFragment extends Fragment implements MenuProvider
|
||||
{
|
||||
private static final String SELECTED_KEY = "SELECTED";
|
||||
|
||||
@ -148,6 +151,7 @@ public class VpnProfileListFragment extends Fragment
|
||||
|
||||
if (!mReadOnly)
|
||||
{
|
||||
requireActivity().addMenuProvider(this, getViewLifecycleOwner());
|
||||
mListView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);
|
||||
mListView.setMultiChoiceModeListener(mVpnProfileSelected);
|
||||
}
|
||||
@ -167,8 +171,6 @@ public class VpnProfileListFragment extends Fragment
|
||||
|
||||
if (!mReadOnly)
|
||||
{
|
||||
setHasOptionsMenu(true);
|
||||
|
||||
ArrayList<Integer> selected = null;
|
||||
if (savedInstanceState != null)
|
||||
{
|
||||
@ -218,13 +220,13 @@ public class VpnProfileListFragment extends Fragment
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater)
|
||||
public void onCreateMenu(@NonNull Menu menu, @NonNull MenuInflater menuInflater)
|
||||
{
|
||||
inflater.inflate(R.menu.profile_list, menu);
|
||||
menuInflater.inflate(R.menu.profile_list, menu);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onPrepareOptionsMenu(Menu menu)
|
||||
public void onPrepareMenu(@NonNull Menu menu)
|
||||
{
|
||||
final MenuItem addProfile = menu.findItem(R.id.add_profile);
|
||||
if (addProfile != null)
|
||||
@ -236,16 +238,16 @@ public class VpnProfileListFragment extends Fragment
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onOptionsItemSelected(MenuItem item)
|
||||
public boolean onMenuItemSelected(@NonNull MenuItem menuItem)
|
||||
{
|
||||
if (item.getItemId() == R.id.add_profile)
|
||||
if (menuItem.getItemId() == R.id.add_profile)
|
||||
{
|
||||
Intent connectionIntent = new Intent(getActivity(),
|
||||
VpnProfileDetailActivity.class);
|
||||
startActivity(connectionIntent);
|
||||
return true;
|
||||
}
|
||||
return super.onOptionsItemSelected(item);
|
||||
return false;
|
||||
}
|
||||
|
||||
private final OnItemClickListener mVpnProfileClicked = new OnItemClickListener()
|
||||
|
Loading…
x
Reference in New Issue
Block a user