From 03ddbbe9a2b11f10e0a1a1dfcbcf7698b51036c5 Mon Sep 17 00:00:00 2001 From: Vincent Breitmoser Date: Thu, 12 Jul 2018 17:19:21 +0200 Subject: [PATCH] small cleanup of DecryptListFragment --- .../keychain/ui/DecryptListFragment.java | 150 +++++++----------- 1 file changed, 58 insertions(+), 92 deletions(-) diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptListFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptListFragment.java index 8e2e9604f..52a198d53 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptListFragment.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/DecryptListFragment.java @@ -54,13 +54,11 @@ import android.view.LayoutInflater; import android.view.MenuItem; import android.view.View; import android.view.View.OnClickListener; -import android.view.View.OnLongClickListener; import android.view.ViewGroup; import android.webkit.MimeTypeMap; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.PopupMenu; -import android.widget.PopupMenu.OnDismissListener; import android.widget.PopupMenu.OnMenuItemClickListener; import android.widget.ProgressBar; import android.widget.TextView; @@ -79,7 +77,6 @@ import org.sufficientlysecure.keychain.keyimport.ParcelableKeyRing; import org.sufficientlysecure.keychain.operations.results.ImportKeyResult; import org.sufficientlysecure.keychain.operations.results.InputDataResult; import org.sufficientlysecure.keychain.pgp.PgpDecryptVerifyInputParcel; -import org.sufficientlysecure.keychain.provider.KeychainContract.KeyRings; import org.sufficientlysecure.keychain.service.ImportKeyringParcel; import org.sufficientlysecure.keychain.service.InputDataParcel; import org.sufficientlysecure.keychain.ui.base.CryptoOperationHelper; @@ -165,7 +162,7 @@ public class DecryptListFragment * Inflate the layout for this fragment */ @Override - public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { + public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.decrypt_files_list_fragment, container, false); RecyclerView vFilesList = view.findViewById(R.id.decrypted_files_list); @@ -240,8 +237,8 @@ public class DecryptListFragment mInputUris = inputUris; mCurrentInputUri = null; - mInputDataResults = results != null ? results : new HashMap(inputUris.size()); - mCancelledInputUris = cancelledUris != null ? cancelledUris : new ArrayList(); + mInputDataResults = results != null ? results : new HashMap<>(inputUris.size()); + mCancelledInputUris = cancelledUris != null ? cancelledUris : new ArrayList<>(); mPendingInputUris = new ArrayList<>(); @@ -499,23 +496,20 @@ public class DecryptListFragment return; } - new BottomSheet.Builder(activity).sheet(R.menu.decrypt_bottom_sheet).listener(new MenuItem.OnMenuItemClickListener() { - @Override - public boolean onMenuItemClick(MenuItem item) { - switch (item.getItemId()) { - case R.id.decrypt_open: - displayWithViewIntent(result, index, false, true); - break; - case R.id.decrypt_share: - displayWithViewIntent(result, index, true, true); - break; - case R.id.decrypt_save: - // only inside the menu xml for Android >= 4.4 - saveFileDialog(result, index); - break; - } - return false; + new BottomSheet.Builder(activity).sheet(R.menu.decrypt_bottom_sheet).listener(item -> { + switch (item.getItemId()) { + case R.id.decrypt_open: + displayWithViewIntent(result, index, false, true); + break; + case R.id.decrypt_share: + displayWithViewIntent(result, index, true, true); + break; + case R.id.decrypt_save: + // only inside the menu xml for Android >= 4.4 + saveFileDialog(result, index); + break; } + return false; }).grid().show(); } @@ -912,13 +906,14 @@ public class DecryptListFragment } // Provide a suitable constructor (depends on the kind of dataset) - public DecryptFilesAdapter() { + DecryptFilesAdapter() { mDataset = new ArrayList<>(); } // Create new views (invoked by the layout manager) + @NonNull @Override - public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { + public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { //inflate your layout and pass it to view holder View v = LayoutInflater.from(parent.getContext()) .inflate(R.layout.decrypt_list_entry, parent, false); @@ -927,7 +922,7 @@ public class DecryptListFragment // Replace the contents of a view (invoked by the layout manager) @Override - public void onBindViewHolder(ViewHolder holder, final int position) { + public void onBindViewHolder(@NonNull ViewHolder holder, final int position) { // - get element from your dataset at this position // - replace the contents of the view with that element final ViewModel model = mDataset.get(position); @@ -1010,23 +1005,17 @@ public class DecryptListFragment // save index closure-style :) final int idx = i; - fileHolder.vFile.setOnLongClickListener(new OnLongClickListener() { - @Override - public boolean onLongClick(View view) { - if (model.mResult.success()) { - displayBottomSheet(model.mResult, idx); - return true; - } - return false; + fileHolder.vFile.setOnLongClickListener(view -> { + if (model.mResult.success()) { + displayBottomSheet(model.mResult, idx); + return true; } + return false; }); - fileHolder.vFile.setOnClickListener(new OnClickListener() { - @Override - public void onClick(View view) { - if (model.mResult.success()) { - displayWithViewIntent(model.mResult, idx, false, false); - } + fileHolder.vFile.setOnClickListener(view -> { + if (model.mResult.success()) { + displayWithViewIntent(model.mResult, idx, false, false); } }); @@ -1036,48 +1025,32 @@ public class DecryptListFragment if (sigResult != null) { final long keyId = sigResult.getKeyId(); if (sigResult.getResult() != OpenPgpSignatureResult.RESULT_KEY_MISSING) { - holder.vSignatureLayout.setOnClickListener(new OnClickListener() { - @Override - public void onClick(View view) { - Activity activity = getActivity(); - if (activity == null) { - return; - } - Intent intent = ViewKeyActivity.getViewKeyActivityIntent(requireActivity(), keyId); - activity.startActivity(intent); + holder.vSignatureLayout.setOnClickListener(view -> { + Activity activity = getActivity(); + if (activity == null) { + return; } + Intent intent = ViewKeyActivity.getViewKeyActivityIntent(requireActivity(), keyId); + activity.startActivity(intent); }); } else { - holder.vSignatureLayout.setOnClickListener(new OnClickListener() { - @Override - public void onClick(View view) { - lookupUnknownKey(model.mInputUri, keyId); - } - }); + holder.vSignatureLayout.setOnClickListener(view -> lookupUnknownKey(model.mInputUri, keyId)); } } holder.vContextMenu.setTag(model); - holder.vContextMenu.setOnClickListener(new OnClickListener() { - @Override - public void onClick(View view) { - Activity activity = getActivity(); - if (activity == null) { - return; - } - mMenuClickedModel = model; - PopupMenu menu = new PopupMenu(activity, view); - menu.inflate(R.menu.decrypt_item_context_menu); - menu.setOnMenuItemClickListener(DecryptListFragment.this); - menu.setOnDismissListener(new OnDismissListener() { - @Override - public void onDismiss(PopupMenu popupMenu) { - mMenuClickedModel = null; - } - }); - menu.getMenu().findItem(R.id.decrypt_delete).setEnabled(mCanDelete); - menu.show(); + holder.vContextMenu.setOnClickListener(view -> { + Activity activity = getActivity(); + if (activity == null) { + return; } + mMenuClickedModel = model; + PopupMenu menu = new PopupMenu(activity, view); + menu.inflate(R.menu.decrypt_item_context_menu); + menu.setOnMenuItemClickListener(DecryptListFragment.this); + menu.setOnDismissListener(popupMenu -> mMenuClickedModel = null); + menu.getMenu().findItem(R.id.decrypt_delete).setEnabled(mCanDelete); + menu.show(); }); } @@ -1086,17 +1059,14 @@ public class DecryptListFragment holder.vErrorMsg.setText(model.mResult.getLog().getLast().mType.getMsgId()); - holder.vErrorViewLog.setOnClickListener(new OnClickListener() { - @Override - public void onClick(View v) { - Activity activity = getActivity(); - if (activity == null) { - return; - } - Intent intent = new Intent(activity, LogDisplayActivity.class); - intent.putExtra(LogDisplayFragment.EXTRA_RESULT, model.mResult); - activity.startActivity(intent); + holder.vErrorViewLog.setOnClickListener(v -> { + Activity activity = getActivity(); + if (activity == null) { + return; } + Intent intent = new Intent(activity, LogDisplayActivity.class); + intent.putExtra(LogDisplayFragment.EXTRA_RESULT, model.mResult); + activity.startActivity(intent); }); } @@ -1107,7 +1077,7 @@ public class DecryptListFragment return mDataset.size(); } - public InputDataResult getItemResult(Uri uri) { + InputDataResult getItemResult(Uri uri) { ViewModel model = new ViewModel(uri); int pos = mDataset.indexOf(model); if (pos == -1) { @@ -1131,16 +1101,11 @@ public class DecryptListFragment notifyItemChanged(pos); } - public void setCancelled(final Uri uri, boolean isCancelled) { + void setCancelled(final Uri uri, boolean isCancelled) { ViewModel newModel = new ViewModel(uri); int pos = mDataset.indexOf(newModel); if (isCancelled) { - mDataset.get(pos).setCancelled(new OnClickListener() { - @Override - public void onClick(View v) { - retryUri(uri); - } - }); + mDataset.get(pos).setCancelled(v -> retryUri(uri)); } else { mDataset.get(pos).setCancelled(null); } @@ -1162,7 +1127,7 @@ public class DecryptListFragment notifyItemChanged(pos); } - public void resetItemData(Uri uri) { + void resetItemData(Uri uri) { ViewModel model = new ViewModel(uri); int pos = mDataset.indexOf(model); model = mDataset.get(pos); @@ -1320,3 +1285,4 @@ public class DecryptListFragment } } +