aboutsummaryrefslogtreecommitdiffstats
path: root/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/linked
diff options
context:
space:
mode:
authorVincent Breitmoser <valodim@mugenguild.com>2015-03-06 16:49:40 +0100
committerVincent Breitmoser <valodim@mugenguild.com>2015-03-06 17:12:49 +0100
commit73ba19460b2eeb75566bb55df14bb5916d72b3b2 (patch)
treeb4877e53e946f575a4fcc91b6f70c72dce1c2d44 /OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/linked
parent088282483f57cf03d9ee75578cd9d3bf6a74a4d9 (diff)
downloadopen-keychain-73ba19460b2eeb75566bb55df14bb5916d72b3b2.tar.gz
open-keychain-73ba19460b2eeb75566bb55df14bb5916d72b3b2.tar.bz2
open-keychain-73ba19460b2eeb75566bb55df14bb5916d72b3b2.zip
use final fragment superclass for dns
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/linked')
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/linked/LinkedIdCreateDnsStep2Fragment.java231
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/linked/LinkedIdCreateFinalFragment.java2
2 files changed, 19 insertions, 214 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/linked/LinkedIdCreateDnsStep2Fragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/linked/LinkedIdCreateDnsStep2Fragment.java
index 3b0860fa9..de3a63256 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/linked/LinkedIdCreateDnsStep2Fragment.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/linked/LinkedIdCreateDnsStep2Fragment.java
@@ -17,37 +17,21 @@
package org.sufficientlysecure.keychain.ui.linked;
-import android.app.Activity;
-import android.app.ProgressDialog;
import android.content.Intent;
-import android.graphics.PorterDuff;
import android.net.Uri;
-import android.os.AsyncTask;
import android.os.Build;
import android.os.Bundle;
import android.os.Environment;
-import android.os.Message;
-import android.os.Messenger;
-import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
-import android.widget.ImageView;
import android.widget.TextView;
import org.sufficientlysecure.keychain.Constants;
import org.sufficientlysecure.keychain.R;
-import org.sufficientlysecure.keychain.operations.results.LinkedVerifyResult;
-import org.sufficientlysecure.keychain.operations.results.OperationResult;
-import org.sufficientlysecure.keychain.pgp.WrappedUserAttribute;
-import org.sufficientlysecure.keychain.pgp.linked.LinkedIdentity;
-import org.sufficientlysecure.keychain.pgp.linked.RawLinkedIdentity;
+import org.sufficientlysecure.keychain.pgp.linked.LinkedCookieResource;
import org.sufficientlysecure.keychain.pgp.linked.resources.DnsResource;
-import org.sufficientlysecure.keychain.service.KeychainIntentService;
-import org.sufficientlysecure.keychain.service.KeychainIntentServiceHandler;
-import org.sufficientlysecure.keychain.service.SaveKeyringParcel;
-import org.sufficientlysecure.keychain.ui.PassphraseDialogActivity;
import org.sufficientlysecure.keychain.ui.util.Notify;
import org.sufficientlysecure.keychain.ui.util.Notify.Style;
import org.sufficientlysecure.keychain.util.FileHelper;
@@ -56,38 +40,25 @@ import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintWriter;
-public class LinkedIdCreateDnsStep2Fragment extends Fragment {
+public class LinkedIdCreateDnsStep2Fragment extends LinkedIdCreateFinalFragment {
private static final int REQUEST_CODE_OUTPUT = 0x00007007;
- private static final int REQUEST_CODE_PASSPHRASE = 0x00007008;
- public static final String DOMAIN = "domain", NONCE = "nonce", TEXT = "text";
-
- LinkedIdWizard mLinkedIdWizard;
+ public static final String DOMAIN = "domain", TEXT = "text";
TextView mTextView;
- ImageView mVerifyImage;
- View mVerifyProgress;
- TextView mVerifyStatus;
String mResourceDomain;
- int mResourceNonce;
String mResourceString;
- // This is a resource, set AFTER it has been verified
- DnsResource mVerifiedResource = null;
-
- /**
- * Creates new instance of this fragment
- */
public static LinkedIdCreateDnsStep2Fragment newInstance
(String uri, int proofNonce, String proofText) {
LinkedIdCreateDnsStep2Fragment frag = new LinkedIdCreateDnsStep2Fragment();
Bundle args = new Bundle();
+ args.putInt(ARG_NONCE, proofNonce);
args.putString(DOMAIN, uri);
- args.putInt(NONCE, proofNonce);
args.putString(TEXT, proofText);
frag.setArguments(args);
@@ -95,30 +66,22 @@ public class LinkedIdCreateDnsStep2Fragment extends Fragment {
}
@Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
- final View view = inflater.inflate(R.layout.linked_create_dns_fragment_step2, container, false);
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
mResourceDomain = getArguments().getString(DOMAIN);
- mResourceNonce = getArguments().getInt(NONCE);
mResourceString = getArguments().getString(TEXT);
- view.findViewById(R.id.next_button).setOnClickListener(new OnClickListener() {
- @Override
- public void onClick(View v) {
- startCertify();
- }
- });
+ }
- view.findViewById(R.id.back_button).setOnClickListener(new OnClickListener() {
- @Override
- public void onClick(View v) {
- mLinkedIdWizard.loadFragment(null, null, LinkedIdWizard.FRAG_ACTION_TO_LEFT);
- }
- });
+ @Override
+ protected View newView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
+ return inflater.inflate(R.layout.linked_create_dns_fragment_step2, container, false);
+ }
- mVerifyImage = (ImageView) view.findViewById(R.id.verify_image);
- mVerifyProgress = view.findViewById(R.id.verify_progress);
- mVerifyStatus = (TextView) view.findViewById(R.id.verify_status);
+ @Override
+ public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
+ View view = super.onCreateView(inflater, container, savedInstanceState);
view.findViewById(R.id.button_send).setOnClickListener(new OnClickListener() {
@Override
@@ -134,48 +97,15 @@ public class LinkedIdCreateDnsStep2Fragment extends Fragment {
}
});
- view.findViewById(R.id.button_verify).setOnClickListener(new OnClickListener() {
- @Override
- public void onClick(View v) {
- proofVerify();
- }
- });
-
mTextView = (TextView) view.findViewById(R.id.linked_create_dns_text);
mTextView.setText(mResourceString);
- setVerifyProgress(false, null);
- mVerifyStatus.setText(R.string.linked_verify_pending);
-
return view;
}
@Override
- public void onActivityCreated(Bundle savedInstanceState) {
- super.onActivityCreated(savedInstanceState);
-
- mLinkedIdWizard = (LinkedIdWizard) getActivity();
- }
-
- public void setVerifyProgress(boolean on, Boolean success) {
- mVerifyProgress.setVisibility(on ? View.VISIBLE : View.GONE);
- mVerifyImage.setVisibility(on ? View.GONE : View.VISIBLE);
- if (success == null) {
- mVerifyStatus.setText(R.string.linked_verifying);
- mVerifyImage.setImageResource(R.drawable.status_signature_unverified_cutout_24dp);
- mVerifyImage.setColorFilter(getResources().getColor(R.color.tertiary_text_light),
- PorterDuff.Mode.SRC_IN);
- } else if (success) {
- mVerifyStatus.setText(R.string.linked_verify_success);
- mVerifyImage.setImageResource(R.drawable.status_signature_verified_cutout_24dp);
- mVerifyImage.setColorFilter(getResources().getColor(R.color.android_green_dark),
- PorterDuff.Mode.SRC_IN);
- } else {
- mVerifyStatus.setText(R.string.linked_verify_error);
- mVerifyImage.setImageResource(R.drawable.status_signature_unknown_cutout_24dp);
- mVerifyImage.setColorFilter(getResources().getColor(R.color.android_red_dark),
- PorterDuff.Mode.SRC_IN);
- }
+ LinkedCookieResource getResource() {
+ return DnsResource.createNew(mResourceDomain);
}
private void proofSend () {
@@ -218,125 +148,6 @@ public class LinkedIdCreateDnsStep2Fragment extends Fragment {
}
}
- public void proofVerify() {
- setVerifyProgress(true, null);
-
- final DnsResource resource = DnsResource.createNew(mResourceDomain);
-
- new AsyncTask<Void,Void,LinkedVerifyResult>() {
-
- @Override
- protected LinkedVerifyResult doInBackground(Void... params) {
- return resource.verify(mLinkedIdWizard.mFingerprint, mResourceNonce);
- }
-
- @Override
- protected void onPostExecute(LinkedVerifyResult result) {
- super.onPostExecute(result);
- if (result.success()) {
- setVerifyProgress(false, true);
- mVerifiedResource = resource;
- } else {
- setVerifyProgress(false, false);
- mVerifiedResource = resource;
- // on error, show error message
- result.createNotify(getActivity()).show();
- }
- }
- }.execute();
-
- }
-
- public void startCertify() {
-
- if (mVerifiedResource == null) {
- Notify.showNotify(getActivity(), R.string.linked_need_verify, Style.ERROR);
- return;
- }
-
- Intent intent = new Intent(getActivity(), PassphraseDialogActivity.class);
- intent.putExtra(PassphraseDialogActivity.EXTRA_SUBKEY_ID, mLinkedIdWizard.mMasterKeyId);
- startActivityForResult(intent, REQUEST_CODE_PASSPHRASE);
-
- }
-
- public void certifyLinkedIdentity (String passphrase) {
- KeychainIntentServiceHandler saveHandler = new KeychainIntentServiceHandler(
- getActivity(),
- getString(R.string.progress_saving),
- ProgressDialog.STYLE_HORIZONTAL,
- true) {
- public void handleMessage(Message message) {
- // handle messages by standard KeychainIntentServiceHandler first
- super.handleMessage(message);
-
- if (message.arg1 == KeychainIntentServiceHandler.MESSAGE_OKAY) {
-
- // get returned data bundle
- Bundle returnData = message.getData();
- if (returnData == null) {
- return;
- }
- final OperationResult result =
- returnData.getParcelable(OperationResult.EXTRA_RESULT);
- if (result == null) {
- return;
- }
-
- // if bad -> display here!
- if (!result.success()) {
- result.createNotify(getActivity()).show();
- return;
- }
-
- result.createNotify(getActivity()).show();
-
- // if good -> finish, return result to showkey and display there!
- // Intent intent = new Intent();
- // intent.putExtra(OperationResult.EXTRA_RESULT, result);
- // getActivity().setResult(EditKeyActivity.RESULT_OK, intent);
-
- // AffirmationCreateHttpsStep3Fragment frag =
- // AffirmationCreateHttpsStep3Fragment.newInstance(
- // mResourceDomain, mResourceNonce, mResourceString);
-
- // mAffirmationWizard.loadFragment(null, frag, AffirmationWizard.FRAG_ACTION_TO_RIGHT);
-
- }
- }
- };
-
- SaveKeyringParcel skp =
- new SaveKeyringParcel(mLinkedIdWizard.mMasterKeyId, mLinkedIdWizard.mFingerprint);
-
- WrappedUserAttribute ua =
- LinkedIdentity.fromResource(mVerifiedResource, mResourceNonce).toUserAttribute();
-
- skp.mAddUserAttribute.add(ua);
-
- // Send all information needed to service to import key in other thread
- Intent intent = new Intent(getActivity(), KeychainIntentService.class);
- intent.setAction(KeychainIntentService.ACTION_EDIT_KEYRING);
-
- // fill values for this action
- Bundle data = new Bundle();
- data.putString(KeychainIntentService.EDIT_KEYRING_PASSPHRASE, passphrase);
- data.putParcelable(KeychainIntentService.EDIT_KEYRING_PARCEL, skp);
- intent.putExtra(KeychainIntentService.EXTRA_DATA, data);
-
- // Create a new Messenger for the communication back
- Messenger messenger = new Messenger(saveHandler);
- intent.putExtra(KeychainIntentService.EXTRA_MESSENGER, messenger);
-
- // show progress dialog
- saveHandler.showProgressDialog(getActivity());
-
- // start service with intent
- getActivity().startService(intent);
-
- }
-
-
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
switch (requestCode) {
@@ -348,15 +159,9 @@ public class LinkedIdCreateDnsStep2Fragment extends Fragment {
Uri uri = data.getData();
saveFile(uri);
break;
- case REQUEST_CODE_PASSPHRASE:
- if (resultCode == Activity.RESULT_OK && data != null) {
- String passphrase =
- data.getStringExtra(PassphraseDialogActivity.MESSAGE_DATA_PASSPHRASE);
- certifyLinkedIdentity(passphrase);
- }
- break;
+ default:
+ super.onActivityResult(requestCode, resultCode, data);
}
- super.onActivityResult(requestCode, resultCode, data);
}
}
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/linked/LinkedIdCreateFinalFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/linked/LinkedIdCreateFinalFragment.java
index b02d70b33..c8c0c1239 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/linked/LinkedIdCreateFinalFragment.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/linked/LinkedIdCreateFinalFragment.java
@@ -33,7 +33,7 @@ public abstract class LinkedIdCreateFinalFragment extends Fragment {
public static final String ARG_NONCE = "nonce";
protected static final int REQUEST_CODE_PASSPHRASE = 0x00007008;
- LinkedIdWizard mLinkedIdWizard;
+ private LinkedIdWizard mLinkedIdWizard;
private ImageView mVerifyImage;
private View mVerifyProgress;