diff options
author | Dominik Schürmann <dominik@dominikschuermann.de> | 2015-02-25 20:50:34 +0100 |
---|---|---|
committer | Dominik Schürmann <dominik@dominikschuermann.de> | 2015-02-25 20:50:34 +0100 |
commit | b521162ef049d223987af4c424083a8355c9bfb0 (patch) | |
tree | 94e7f4b59751721a86198b3ba6bdaf6114c11a03 /OpenKeychain/src/main | |
parent | 0931c7742bdb238d222362fee3b865bfa33dfc22 (diff) | |
download | open-keychain-b521162ef049d223987af4c424083a8355c9bfb0.tar.gz open-keychain-b521162ef049d223987af4c424083a8355c9bfb0.tar.bz2 open-keychain-b521162ef049d223987af4c424083a8355c9bfb0.zip |
Invoke NFC button
Diffstat (limited to 'OpenKeychain/src/main')
16 files changed, 38 insertions, 2 deletions
diff --git a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyActivity.java b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyActivity.java index 4e8a14008..3ddaccad3 100644 --- a/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyActivity.java +++ b/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/ui/ViewKeyActivity.java @@ -88,6 +88,7 @@ public class ViewKeyActivity extends BaseActivity implements private ImageButton mActionEncryptText; private ImageButton mActionVerify; private ImageButton mActionEdit; + private ImageButton mActionNfc; private FloatingActionButton mFab; private AspectRatioImageView mPhoto; private ImageButton mQrCode; @@ -123,6 +124,7 @@ public class ViewKeyActivity extends BaseActivity implements mActionEncryptText = (ImageButton) findViewById(R.id.view_key_action_encrypt_text); mActionVerify = (ImageButton) findViewById(R.id.view_key_action_verify); mActionEdit = (ImageButton) findViewById(R.id.view_key_action_edit); + mActionNfc = (ImageButton) findViewById(R.id.view_key_action_nfc); mFab = (FloatingActionButton) findViewById(R.id.fab); mPhoto = (AspectRatioImageView) findViewById(R.id.view_key_photo); mQrCode = (ImageButton) findViewById(R.id.view_key_qr_code); @@ -187,6 +189,13 @@ public class ViewKeyActivity extends BaseActivity implements } }); + mActionNfc.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + invokeNfcBeam(); + } + }); + // Prepare the loaders. Either re-connect with an existing ones, // or start new ones. @@ -270,6 +279,15 @@ public class ViewKeyActivity extends BaseActivity implements return super.onOptionsItemSelected(item); } + @TargetApi(Build.VERSION_CODES.LOLLIPOP) + private void invokeNfcBeam() { + // Check for available NFC Adapter + mNfcAdapter = NfcAdapter.getDefaultAdapter(this); + if (mNfcAdapter != null) { + mNfcAdapter.invokeBeam(this); + } + } + private void scanQrCode() { Intent scanQrCode = new Intent(this, QrCodeScanActivity.class); scanQrCode.setAction(QrCodeScanActivity.ACTION_SCAN_WITH_RESULT); @@ -623,6 +641,7 @@ public class ViewKeyActivity extends BaseActivity implements mActionEncryptText.setVisibility(View.GONE); mActionVerify.setVisibility(View.GONE); mActionEdit.setVisibility(View.GONE); + mActionNfc.setVisibility(View.GONE); mFab.setVisibility(View.GONE); mQrCodeLayout.setVisibility(View.GONE); } else if (isExpired) { @@ -641,6 +660,7 @@ public class ViewKeyActivity extends BaseActivity implements mActionEncryptFile.setVisibility(View.GONE); mActionEncryptText.setVisibility(View.GONE); mActionVerify.setVisibility(View.GONE); + mActionNfc.setVisibility(View.GONE); mFab.setVisibility(View.GONE); mQrCodeLayout.setVisibility(View.GONE); } else if (mIsSecret) { @@ -675,6 +695,13 @@ public class ViewKeyActivity extends BaseActivity implements mActionEncryptText.setVisibility(View.VISIBLE); mActionVerify.setVisibility(View.GONE); mActionEdit.setVisibility(View.VISIBLE); + + // invokeBeam is available from API 21 + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { + mActionNfc.setVisibility(View.VISIBLE); + } else { + mActionNfc.setVisibility(View.GONE); + } mFab.setVisibility(View.VISIBLE); mFab.setIconDrawable(getResources().getDrawable(R.drawable.ic_repeat_white_24dp)); } else { @@ -682,6 +709,7 @@ public class ViewKeyActivity extends BaseActivity implements mActionEncryptText.setVisibility(View.VISIBLE); mActionEdit.setVisibility(View.GONE); mQrCodeLayout.setVisibility(View.GONE); + mActionNfc.setVisibility(View.GONE); if (isVerified) { mStatusText.setText(R.string.view_key_verified); diff --git a/OpenKeychain/src/main/res/drawable-hdpi/ic_action_nfc.png b/OpenKeychain/src/main/res/drawable-hdpi/ic_action_nfc.png Binary files differdeleted file mode 100644 index 635633709..000000000 --- a/OpenKeychain/src/main/res/drawable-hdpi/ic_action_nfc.png +++ /dev/null diff --git a/OpenKeychain/src/main/res/drawable-hdpi/ic_action_qr_code.png b/OpenKeychain/src/main/res/drawable-hdpi/ic_action_qr_code.png Binary files differdeleted file mode 100644 index ceb3b1645..000000000 --- a/OpenKeychain/src/main/res/drawable-hdpi/ic_action_qr_code.png +++ /dev/null diff --git a/OpenKeychain/src/main/res/drawable-hdpi/ic_nfc_white_24dp.png b/OpenKeychain/src/main/res/drawable-hdpi/ic_nfc_white_24dp.png Binary files differnew file mode 100644 index 000000000..1d87415c5 --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-hdpi/ic_nfc_white_24dp.png diff --git a/OpenKeychain/src/main/res/drawable-mdpi/ic_action_nfc.png b/OpenKeychain/src/main/res/drawable-mdpi/ic_action_nfc.png Binary files differdeleted file mode 100644 index da5e267d0..000000000 --- a/OpenKeychain/src/main/res/drawable-mdpi/ic_action_nfc.png +++ /dev/null diff --git a/OpenKeychain/src/main/res/drawable-mdpi/ic_action_qr_code.png b/OpenKeychain/src/main/res/drawable-mdpi/ic_action_qr_code.png Binary files differdeleted file mode 100644 index 21594e62f..000000000 --- a/OpenKeychain/src/main/res/drawable-mdpi/ic_action_qr_code.png +++ /dev/null diff --git a/OpenKeychain/src/main/res/drawable-mdpi/ic_nfc_white_24dp.png b/OpenKeychain/src/main/res/drawable-mdpi/ic_nfc_white_24dp.png Binary files differnew file mode 100644 index 000000000..65ae04b7c --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-mdpi/ic_nfc_white_24dp.png diff --git a/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_nfc.png b/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_nfc.png Binary files differdeleted file mode 100644 index ff569927c..000000000 --- a/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_nfc.png +++ /dev/null diff --git a/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_qr_code.png b/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_qr_code.png Binary files differdeleted file mode 100644 index 93bdac866..000000000 --- a/OpenKeychain/src/main/res/drawable-xhdpi/ic_action_qr_code.png +++ /dev/null diff --git a/OpenKeychain/src/main/res/drawable-xhdpi/ic_nfc_white_24dp.png b/OpenKeychain/src/main/res/drawable-xhdpi/ic_nfc_white_24dp.png Binary files differnew file mode 100644 index 000000000..44b9006ab --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-xhdpi/ic_nfc_white_24dp.png diff --git a/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_nfc.png b/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_nfc.png Binary files differdeleted file mode 100644 index 1f96ce37b..000000000 --- a/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_nfc.png +++ /dev/null diff --git a/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_qr_code.png b/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_qr_code.png Binary files differdeleted file mode 100644 index 7ede90609..000000000 --- a/OpenKeychain/src/main/res/drawable-xxhdpi/ic_action_qr_code.png +++ /dev/null diff --git a/OpenKeychain/src/main/res/drawable-xxhdpi/ic_nfc_white_24dp.png b/OpenKeychain/src/main/res/drawable-xxhdpi/ic_nfc_white_24dp.png Binary files differnew file mode 100644 index 000000000..484856b3f --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-xxhdpi/ic_nfc_white_24dp.png diff --git a/OpenKeychain/src/main/res/drawable-xxxhdpi/ic_nfc_white_24dp.png b/OpenKeychain/src/main/res/drawable-xxxhdpi/ic_nfc_white_24dp.png Binary files differnew file mode 100644 index 000000000..c8f25bbf7 --- /dev/null +++ b/OpenKeychain/src/main/res/drawable-xxxhdpi/ic_nfc_white_24dp.png diff --git a/OpenKeychain/src/main/res/layout/import_keys_qr_code_fragment.xml b/OpenKeychain/src/main/res/layout/import_keys_qr_code_fragment.xml index 1cc414dab..9007d2149 100644 --- a/OpenKeychain/src/main/res/layout/import_keys_qr_code_fragment.xml +++ b/OpenKeychain/src/main/res/layout/import_keys_qr_code_fragment.xml @@ -21,7 +21,7 @@ android:layout_height="match_parent" android:text="@string/import_qr_code_button" android:layout_weight="1" - android:drawableRight="@drawable/ic_action_qr_code" + android:drawableRight="@drawable/ic_qrcode_white_24dp" android:drawablePadding="8dp" android:gravity="center_vertical" /> @@ -38,7 +38,7 @@ android:layout_width="wrap_content" android:layout_height="match_parent" android:padding="8dp" - android:src="@drawable/ic_action_nfc" + android:src="@drawable/ic_nfc_white_24dp" android:layout_gravity="center_vertical" style="@style/SelectableItem" /> diff --git a/OpenKeychain/src/main/res/layout/view_key_activity.xml b/OpenKeychain/src/main/res/layout/view_key_activity.xml index bc46ac85f..94f0932f4 100644 --- a/OpenKeychain/src/main/res/layout/view_key_activity.xml +++ b/OpenKeychain/src/main/res/layout/view_key_activity.xml @@ -116,6 +116,14 @@ style="?android:attr/borderlessButtonStyle" android:src="@drawable/ic_mode_edit_white_24dp" /> + <ImageButton + android:id="@+id/view_key_action_nfc" + android:layout_width="64dp" + android:layout_height="64dp" + android:visibility="invisible" + style="?android:attr/borderlessButtonStyle" + android:src="@drawable/ic_nfc_white_24dp" /> + </LinearLayout> <ImageView |