mirror of
https://github.com/moparisthebest/open-keychain
synced 2024-12-25 08:28:50 -05:00
Save account on back press and with notify
This commit is contained in:
parent
0e83df21cf
commit
27772d401c
@ -31,6 +31,7 @@ import org.sufficientlysecure.keychain.helper.ActionBarHelper;
|
|||||||
import org.sufficientlysecure.keychain.provider.ProviderHelper;
|
import org.sufficientlysecure.keychain.provider.ProviderHelper;
|
||||||
import org.sufficientlysecure.keychain.remote.AccountSettings;
|
import org.sufficientlysecure.keychain.remote.AccountSettings;
|
||||||
import org.sufficientlysecure.keychain.service.OperationResultParcel;
|
import org.sufficientlysecure.keychain.service.OperationResultParcel;
|
||||||
|
import org.sufficientlysecure.keychain.ui.CertifyKeyActivity;
|
||||||
import org.sufficientlysecure.keychain.util.Log;
|
import org.sufficientlysecure.keychain.util.Log;
|
||||||
|
|
||||||
public class AccountSettingsActivity extends ActionBarActivity {
|
public class AccountSettingsActivity extends ActionBarActivity {
|
||||||
@ -104,6 +105,11 @@ public class AccountSettingsActivity extends ActionBarActivity {
|
|||||||
|
|
||||||
private void save() {
|
private void save() {
|
||||||
new ProviderHelper(this).updateApiAccount(mAccountUri, mAccountSettingsFragment.getAccSettings());
|
new ProviderHelper(this).updateApiAccount(mAccountUri, mAccountSettingsFragment.getAccSettings());
|
||||||
|
// TODO: show "account saved" instead of "operation succeeded"
|
||||||
|
OperationResultParcel result = new OperationResultParcel(OperationResultParcel.RESULT_OK, null);
|
||||||
|
Intent intent = new Intent();
|
||||||
|
intent.putExtra(OperationResultParcel.EXTRA_RESULT, result);
|
||||||
|
setResult(RESULT_OK, intent);
|
||||||
finish();
|
finish();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -118,4 +124,9 @@ public class AccountSettingsActivity extends ActionBarActivity {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onBackPressed() {
|
||||||
|
save();
|
||||||
|
super.onBackPressed();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -104,7 +104,7 @@ public class AccountsListFragment extends ListFragment implements
|
|||||||
// edit account settings
|
// edit account settings
|
||||||
Intent intent = new Intent(getActivity(), AccountSettingsActivity.class);
|
Intent intent = new Intent(getActivity(), AccountSettingsActivity.class);
|
||||||
intent.setData(accountUri);
|
intent.setData(accountUri);
|
||||||
startActivity(intent);
|
startActivityForResult(intent, 0);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -17,12 +17,9 @@
|
|||||||
|
|
||||||
package org.sufficientlysecure.keychain.remote.ui;
|
package org.sufficientlysecure.keychain.remote.ui;
|
||||||
|
|
||||||
import android.content.ComponentName;
|
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.content.pm.ApplicationInfo;
|
import android.content.pm.ApplicationInfo;
|
||||||
import android.content.pm.PackageInfo;
|
|
||||||
import android.content.pm.PackageManager;
|
import android.content.pm.PackageManager;
|
||||||
import android.content.pm.ResolveInfo;
|
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.support.v7.app.ActionBar;
|
import android.support.v7.app.ActionBar;
|
||||||
@ -35,10 +32,9 @@ import org.sufficientlysecure.keychain.R;
|
|||||||
import org.sufficientlysecure.keychain.provider.KeychainContract;
|
import org.sufficientlysecure.keychain.provider.KeychainContract;
|
||||||
import org.sufficientlysecure.keychain.provider.ProviderHelper;
|
import org.sufficientlysecure.keychain.provider.ProviderHelper;
|
||||||
import org.sufficientlysecure.keychain.remote.AppSettings;
|
import org.sufficientlysecure.keychain.remote.AppSettings;
|
||||||
|
import org.sufficientlysecure.keychain.service.OperationResultParcel;
|
||||||
import org.sufficientlysecure.keychain.util.Log;
|
import org.sufficientlysecure.keychain.util.Log;
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
public class AppSettingsActivity extends ActionBarActivity {
|
public class AppSettingsActivity extends ActionBarActivity {
|
||||||
private Uri mAppUri;
|
private Uri mAppUri;
|
||||||
|
|
||||||
@ -95,7 +91,7 @@ public class AppSettingsActivity extends ActionBarActivity {
|
|||||||
return super.onOptionsItemSelected(item);
|
return super.onOptionsItemSelected(item);
|
||||||
}
|
}
|
||||||
|
|
||||||
// disabled: breaks Yubikey NFC Foreground dispatching
|
// TODO: breaks Yubikey NFC Foreground dispatching
|
||||||
private void startApp() {
|
private void startApp() {
|
||||||
Intent i;
|
Intent i;
|
||||||
PackageManager manager = getPackageManager();
|
PackageManager manager = getPackageManager();
|
||||||
@ -159,4 +155,15 @@ public class AppSettingsActivity extends ActionBarActivity {
|
|||||||
finish();
|
finish();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
|
||||||
|
// if a result has been returned, display a notify
|
||||||
|
if (data != null && data.hasExtra(OperationResultParcel.EXTRA_RESULT)) {
|
||||||
|
OperationResultParcel result = data.getParcelableExtra(OperationResultParcel.EXTRA_RESULT);
|
||||||
|
result.createNotify(this).show();
|
||||||
|
} else {
|
||||||
|
super.onActivityResult(requestCode, resultCode, data);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user