aboutsummaryrefslogtreecommitdiffstats
path: root/OpenKeychain/src/main/java/org/sufficientlysecure
diff options
context:
space:
mode:
authorDominik Schürmann <dominik@dominikschuermann.de>2014-10-05 10:59:52 +0200
committerDominik Schürmann <dominik@dominikschuermann.de>2014-10-05 10:59:52 +0200
commit276867120681399b86057fbbff9ba02c8d1c57fe (patch)
treecb95b6a5cc507c06494ae2c0b730aec2fb5aed05 /OpenKeychain/src/main/java/org/sufficientlysecure
parent0b9308753d7339251f9051316b00f6f0c9b0efbc (diff)
downloadopen-keychain-276867120681399b86057fbbff9ba02c8d1c57fe.tar.gz
open-keychain-276867120681399b86057fbbff9ba02c8d1c57fe.tar.bz2
open-keychain-276867120681399b86057fbbff9ba02c8d1c57fe.zip
UI stuff
Diffstat (limited to 'OpenKeychain/src/main/java/org/sufficientlysecure')
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/AddKeysActivity.java16
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysActivity.java48
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysFileFragment.java8
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysQrCodeFragment.java2
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListActivity.java10
-rw-r--r--OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListFragment.java10
6 files changed, 49 insertions, 45 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/AddKeysActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/AddKeysActivity.java
index fd013739e..427fc9315 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/AddKeysActivity.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/AddKeysActivity.java
@@ -73,7 +73,6 @@ public class AddKeysActivity extends ActionBarActivity implements
ImageView mActionSafeSlingerIcon;
View mActionQrCode;
View mActionNfc;
- View mActionSearchCloud;
ProviderHelper mProviderHelper;
@@ -103,7 +102,6 @@ public class AddKeysActivity extends ActionBarActivity implements
PorterDuff.Mode.SRC_IN);
mActionQrCode = findViewById(R.id.add_keys_qr_code);
mActionNfc = findViewById(R.id.add_keys_nfc);
- mActionSearchCloud = findViewById(R.id.add_keys_search_cloud);
mSafeSlingerKeySpinner.setOnKeyChangedListener(new KeySpinner.OnKeyChangedListener() {
@Override
@@ -135,14 +133,6 @@ public class AddKeysActivity extends ActionBarActivity implements
startActivityForResult(intent, REQUEST_CODE_RESULT);
}
});
-
- mActionSearchCloud.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- searchCloud();
- }
- });
-
}
private void startExchange() {
@@ -171,12 +161,6 @@ public class AddKeysActivity extends ActionBarActivity implements
new IntentIntegrator(this).initiateScan();
}
- private void searchCloud() {
- finish();
- Intent importIntent = new Intent(this, ImportKeysActivity.class);
- startActivity(importIntent);
- }
-
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
switch (requestCode) {
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysActivity.java
index 002f85e5d..f0bd2c76c 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysActivity.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysActivity.java
@@ -150,12 +150,13 @@ public class ImportKeysActivity extends ActionBarActivity {
}
Bundle serverBundle = null;
- int showTabOnly = ALL_TABS;
+ int showTabOnly = TAB_CLOUD;
if (ACTION_IMPORT_KEY.equals(action)) {
/* Keychain's own Actions */
// display file fragment
- mViewPager.setCurrentItem(TAB_FILE);
+ showTabOnly = TAB_FILE;
+ mSwitchToTab = TAB_FILE;
if (dataUri != null) {
// action: directly load data
@@ -229,6 +230,7 @@ public class ImportKeysActivity extends ActionBarActivity {
}
} else if (ACTION_IMPORT_KEY_FROM_FILE.equals(action)) {
// NOTE: this only displays the appropriate fragment, no actions are taken
+ showTabOnly = TAB_FILE;
mSwitchToTab = TAB_FILE;
// no immediate actions!
@@ -243,14 +245,14 @@ public class ImportKeysActivity extends ActionBarActivity {
startListFragment(savedInstanceState, null, null, null);
} else if (ACTION_IMPORT_KEY_FROM_QR_CODE.equals(action)) {
// also exposed in AndroidManifest
-
+ showTabOnly = ALL_TABS;
// NOTE: this only displays the appropriate fragment, no actions are taken
mSwitchToTab = TAB_QR_CODE;
// no immediate actions!
startListFragment(savedInstanceState, null, null, null);
} else if (ACTION_IMPORT_KEY_FROM_NFC.equals(action)) {
-
+ showTabOnly = ALL_TABS;
// NOTE: this only displays the appropriate fragment, no actions are taken
mSwitchToTab = TAB_QR_CODE;
@@ -334,32 +336,36 @@ public class ImportKeysActivity extends ActionBarActivity {
getSupportFragmentManager().executePendingTransactions();
}
- private String getFingerprintFromUri(Uri dataUri) {
+ public static String getFingerprintFromUri(Uri dataUri) {
String fingerprint = dataUri.toString().split(":")[1].toLowerCase(Locale.ENGLISH);
Log.d(Constants.TAG, "fingerprint: " + fingerprint);
return fingerprint;
}
- public void loadFromFingerprintUri(Uri dataUri) {
- String query = "0x" + getFingerprintFromUri(dataUri);
+ public void loadFromFingerprint(String fingerprint) {
+// String fingerprint = "0x" + getFingerprintFromUri(dataUri);
// setCurrentItem does not work directly after onResume (from qr code scanner)
// see http://stackoverflow.com/q/19316729
// so, reset adapter completely!
- if (mViewPager.getAdapter() != null)
- mViewPager.setAdapter(null);
- mViewPager.setAdapter(mTabsAdapter);
- mViewPager.setCurrentItem(TAB_CLOUD);
-
- ImportKeysCloudFragment f = (ImportKeysCloudFragment)
- getActiveFragment(mViewPager, TAB_CLOUD);
-
- // search config
- Preferences prefs = Preferences.getPreferences(ImportKeysActivity.this);
- Preferences.CloudSearchPrefs cloudPrefs = new Preferences.CloudSearchPrefs(true, true, prefs.getPreferredKeyserver());
-
- // search directly
- loadCallback(new ImportKeysListFragment.CloudLoaderState(query, cloudPrefs));
+// if (mViewPager.getAdapter() != null)
+// mViewPager.setAdapter(null);
+// mViewPager.setAdapter(mTabsAdapter);
+// mViewPager.setCurrentItem(TAB_CLOUD);
+
+// ImportKeysCloudFragment f = (ImportKeysCloudFragment)
+// getActiveFragment(mViewPager, TAB_CLOUD);
+
+ Intent searchIntent = new Intent(this, ImportKeysActivity.class);
+ searchIntent.putExtra(ImportKeysActivity.EXTRA_FINGERPRINT, fingerprint);
+ startActivity(searchIntent);
+
+// // search config
+// Preferences prefs = Preferences.getPreferences(ImportKeysActivity.this);
+// Preferences.CloudSearchPrefs cloudPrefs = new Preferences.CloudSearchPrefs(true, true, prefs.getPreferredKeyserver());
+//
+// // search directly
+// loadCallback(new ImportKeysListFragment.CloudLoaderState(query, cloudPrefs));
}
// http://stackoverflow.com/a/9293207
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysFileFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysFileFragment.java
index e5bad16ce..538fa16c7 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysFileFragment.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysFileFragment.java
@@ -31,8 +31,6 @@ import org.sufficientlysecure.keychain.R;
import org.sufficientlysecure.keychain.compatibility.ClipboardReflection;
import org.sufficientlysecure.keychain.util.FileHelper;
-import java.util.Locale;
-
public class ImportKeysFileFragment extends Fragment {
private ImportKeysActivity mImportActivity;
private View mBrowse;
@@ -80,12 +78,8 @@ public class ImportKeysFileFragment extends Fragment {
String sendText = "";
if (clipboardText != null) {
sendText = clipboardText.toString();
- if (sendText.toLowerCase(Locale.ENGLISH).startsWith(Constants.FINGERPRINT_SCHEME)) {
- mImportActivity.loadFromFingerprintUri(Uri.parse(sendText));
- return;
- }
+ mImportActivity.loadCallback(new ImportKeysListFragment.BytesLoaderState(sendText.getBytes(), null));
}
- mImportActivity.loadCallback(new ImportKeysListFragment.BytesLoaderState(sendText.getBytes(), null));
}
});
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysQrCodeFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysQrCodeFragment.java
index a52737979..fb4bbfac4 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysQrCodeFragment.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ImportKeysQrCodeFragment.java
@@ -132,7 +132,7 @@ public class ImportKeysQrCodeFragment extends Fragment {
}
public void importFingerprint(Uri dataUri) {
- mImportActivity.loadFromFingerprintUri(dataUri);
+ mImportActivity.loadFromFingerprint(ImportKeysActivity.getFingerprintFromUri(dataUri));
}
}
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListActivity.java
index ce2aa8368..4419a8a64 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListActivity.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListActivity.java
@@ -87,6 +87,10 @@ public class KeyListActivity extends DrawerActivity {
addKeys();
return true;
+ case R.id.menu_key_list_search_cloud:
+ searchCloud();
+ return true;
+
case R.id.menu_key_list_create:
createKey();
return true;
@@ -144,6 +148,12 @@ public class KeyListActivity extends DrawerActivity {
startActivityForResult(intent, 0);
}
+ private void searchCloud() {
+ Intent importIntent = new Intent(this, ImportKeysActivity.class);
+ importIntent.putExtra(ImportKeysActivity.EXTRA_QUERY, (String) null); // hack to show only cloud tab
+ startActivity(importIntent);
+ }
+
private void createKey() {
Intent intent = new Intent(this, CreateKeyActivity.class);
startActivityForResult(intent, 0);
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListFragment.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListFragment.java
index 9c261cc49..8c4278835 100644
--- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListFragment.java
+++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/KeyListFragment.java
@@ -470,6 +470,11 @@ public class KeyListFragment extends LoaderFragment
MenuItemCompat.setOnActionExpandListener(searchItem, new MenuItemCompat.OnActionExpandListener() {
@Override
public boolean onMenuItemActionExpand(MenuItem item) {
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
+ hideMenu = true;
+ getActivity().invalidateOptionsMenu();
+ }
+
// disable swipe-to-refresh
// mSwipeRefreshLayout.setIsLocked(true);
return true;
@@ -479,6 +484,11 @@ public class KeyListFragment extends LoaderFragment
public boolean onMenuItemActionCollapse(MenuItem item) {
mQuery = null;
getLoaderManager().restartLoader(0, null, KeyListFragment.this);
+
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
+ hideMenu = false;
+ getActivity().invalidateOptionsMenu();
+ }
// enable swipe-to-refresh
// mSwipeRefreshLayout.setIsLocked(false);
return true;