Simplification

pull/215/head
M66B 2 months ago
parent 35c7fe589d
commit e7747992da

@ -4692,78 +4692,72 @@ public class FragmentCompose extends FragmentBase {
snackbar.setAction(R.string.title_fix, new View.OnClickListener() { snackbar.setAction(R.string.title_fix, new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
if (ex.getCause() instanceof CertificateException) EntityIdentity identity = (EntityIdentity) spIdentity.getSelectedItem();
v.getContext().startActivity(new Intent(v.getContext(), ActivitySetup.class)
.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK)
.putExtra("tab", "encryption"));
else {
EntityIdentity identity = (EntityIdentity) spIdentity.getSelectedItem();
PopupMenuLifecycle popupMenu = new PopupMenuLifecycle(getContext(), getViewLifecycleOwner(), vwAnchor);
popupMenu.getMenu().add(Menu.NONE, R.string.title_send_dialog, 1, R.string.title_send_dialog);
if (identity != null)
popupMenu.getMenu().add(Menu.NONE, R.string.title_reset_sign_key, 2, R.string.title_reset_sign_key);
popupMenu.getMenu().add(Menu.NONE, R.string.title_advanced_manage_certificates, 3, R.string.title_advanced_manage_certificates);
popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() { PopupMenuLifecycle popupMenu = new PopupMenuLifecycle(getContext(), getViewLifecycleOwner(), vwAnchor);
@Override popupMenu.getMenu().add(Menu.NONE, R.string.title_send_dialog, 1, R.string.title_send_dialog);
public boolean onMenuItemClick(MenuItem item) { if (identity != null)
int itemId = item.getItemId(); popupMenu.getMenu().add(Menu.NONE, R.string.title_reset_sign_key, 2, R.string.title_reset_sign_key);
if (itemId == R.string.title_send_dialog) { popupMenu.getMenu().add(Menu.NONE, R.string.title_advanced_manage_certificates, 3, R.string.title_advanced_manage_certificates);
Helper.hideKeyboard(view);
FragmentDialogSend fragment = new FragmentDialogSend();
fragment.setArguments(args);
fragment.setTargetFragment(FragmentCompose.this, REQUEST_SEND);
fragment.show(getParentFragmentManager(), "compose:send");
return true;
} else if (itemId == R.string.title_reset_sign_key) {
Bundle args = new Bundle();
args.putLong("id", identity.id);
new SimpleTask<Void>() {
@Override
protected void onPostExecute(Bundle args) {
ToastEx.makeText(getContext(), R.string.title_completed, Toast.LENGTH_LONG).show();
}
@Override popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
protected Void onExecute(Context context, Bundle args) throws Throwable { @Override
long id = args.getLong("id"); public boolean onMenuItemClick(MenuItem item) {
int itemId = item.getItemId();
if (itemId == R.string.title_send_dialog) {
Helper.hideKeyboard(view);
FragmentDialogSend fragment = new FragmentDialogSend();
fragment.setArguments(args);
fragment.setTargetFragment(FragmentCompose.this, REQUEST_SEND);
fragment.show(getParentFragmentManager(), "compose:send");
return true;
} else if (itemId == R.string.title_reset_sign_key) {
Bundle args = new Bundle();
args.putLong("id", identity.id);
new SimpleTask<Void>() {
@Override
protected void onPostExecute(Bundle args) {
ToastEx.makeText(getContext(), R.string.title_completed, Toast.LENGTH_LONG).show();
}
DB db = DB.getInstance(context); @Override
try { protected Void onExecute(Context context, Bundle args) throws Throwable {
db.beginTransaction(); long id = args.getLong("id");
db.identity().setIdentitySignKey(id, null); DB db = DB.getInstance(context);
db.identity().setIdentitySignKeyAlias(id, null); try {
db.identity().setIdentityEncrypt(id, 0); db.beginTransaction();
db.setTransactionSuccessful(); db.identity().setIdentitySignKey(id, null);
} finally { db.identity().setIdentitySignKeyAlias(id, null);
db.endTransaction(); db.identity().setIdentityEncrypt(id, 0);
}
return null; db.setTransactionSuccessful();
} finally {
db.endTransaction();
} }
@Override return null;
protected void onException(Bundle args, Throwable ex) { }
Log.unexpectedError(getParentFragmentManager(), ex);
} @Override
}.execute(FragmentCompose.this, args, "identity:reset"); protected void onException(Bundle args, Throwable ex) {
} else if (itemId == R.string.title_advanced_manage_certificates) { Log.unexpectedError(getParentFragmentManager(), ex);
startActivity(new Intent(getContext(), ActivitySetup.class) }
.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK) }.execute(FragmentCompose.this, args, "identity:reset");
.putExtra("tab", "encryption")); } else if (itemId == R.string.title_advanced_manage_certificates) {
return true; startActivity(new Intent(getContext(), ActivitySetup.class)
} .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK)
return false; .putExtra("tab", "encryption"));
return true;
} }
}); return false;
}
});
popupMenu.show(); popupMenu.show();
}
} }
}); });
snackbar.show(); snackbar.show();

Loading…
Cancel
Save