hide fingerprints in UI if encryption is disabled
This commit is contained in:
		
							parent
							
								
									5137837f6d
								
							
						
					
					
						commit
						83adbb6052
					
				| @ -390,35 +390,39 @@ public class ContactDetailsActivity extends XmppActivity implements OnAccountUpd | ||||
| 		keys.removeAllViews(); | ||||
| 		boolean hasKeys = false; | ||||
| 		LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE); | ||||
| 		for(final String otrFingerprint : contact.getOtrFingerprints()) { | ||||
| 			hasKeys = true; | ||||
| 			View view = inflater.inflate(R.layout.contact_key, keys, false); | ||||
| 			TextView key = (TextView) view.findViewById(R.id.key); | ||||
| 			TextView keyType = (TextView) view.findViewById(R.id.key_type); | ||||
| 			ImageButton removeButton = (ImageButton) view | ||||
| 				.findViewById(R.id.button_remove); | ||||
| 			removeButton.setVisibility(View.VISIBLE); | ||||
| 			keyType.setText("OTR Fingerprint"); | ||||
| 			key.setText(CryptoHelper.prettifyFingerprint(otrFingerprint)); | ||||
| 			keys.addView(view); | ||||
| 			removeButton.setOnClickListener(new OnClickListener() { | ||||
| 		if (Config.supportOtr()) { | ||||
| 			for (final String otrFingerprint : contact.getOtrFingerprints()) { | ||||
| 				hasKeys = true; | ||||
| 				View view = inflater.inflate(R.layout.contact_key, keys, false); | ||||
| 				TextView key = (TextView) view.findViewById(R.id.key); | ||||
| 				TextView keyType = (TextView) view.findViewById(R.id.key_type); | ||||
| 				ImageButton removeButton = (ImageButton) view | ||||
| 						.findViewById(R.id.button_remove); | ||||
| 				removeButton.setVisibility(View.VISIBLE); | ||||
| 				keyType.setText("OTR Fingerprint"); | ||||
| 				key.setText(CryptoHelper.prettifyFingerprint(otrFingerprint)); | ||||
| 				keys.addView(view); | ||||
| 				removeButton.setOnClickListener(new OnClickListener() { | ||||
| 
 | ||||
| 				@Override | ||||
| 				public void onClick(View v) { | ||||
| 					confirmToDeleteFingerprint(otrFingerprint); | ||||
| 				} | ||||
| 			}); | ||||
| 					@Override | ||||
| 					public void onClick(View v) { | ||||
| 						confirmToDeleteFingerprint(otrFingerprint); | ||||
| 					} | ||||
| 				}); | ||||
| 			} | ||||
| 		} | ||||
| 		for (final String fingerprint : contact.getAccount().getAxolotlService().getFingerprintsForContact(contact)) { | ||||
| 			boolean highlight = fingerprint.equals(messageFingerprint); | ||||
| 			hasKeys |= addFingerprintRow(keys, contact.getAccount(), fingerprint, highlight, new OnClickListener() { | ||||
| 				@Override | ||||
| 				public void onClick(View v) { | ||||
| 					onOmemoKeyClicked(contact.getAccount(), fingerprint); | ||||
| 				} | ||||
| 			}); | ||||
| 		if (Config.supportOmemo()) { | ||||
| 			for (final String fingerprint : contact.getAccount().getAxolotlService().getFingerprintsForContact(contact)) { | ||||
| 				boolean highlight = fingerprint.equals(messageFingerprint); | ||||
| 				hasKeys |= addFingerprintRow(keys, contact.getAccount(), fingerprint, highlight, new OnClickListener() { | ||||
| 					@Override | ||||
| 					public void onClick(View v) { | ||||
| 						onOmemoKeyClicked(contact.getAccount(), fingerprint); | ||||
| 					} | ||||
| 				}); | ||||
| 			} | ||||
| 		} | ||||
| 		if (contact.getPgpKeyId() != 0) { | ||||
| 		if (Config.supportOpenPgp() && contact.getPgpKeyId() != 0) { | ||||
| 			hasKeys = true; | ||||
| 			View view = inflater.inflate(R.layout.contact_key, keys, false); | ||||
| 			TextView key = (TextView) view.findViewById(R.id.key); | ||||
|  | ||||
| @ -390,8 +390,11 @@ public class ConversationFragment extends Fragment implements EditMessage.Keyboa | ||||
| 		} else { | ||||
| 			switch (conversation.getNextEncryption()) { | ||||
| 				case Message.ENCRYPTION_NONE: | ||||
| 					mEditMessage | ||||
| 							.setHint(getString(R.string.send_unencrypted_message)); | ||||
| 					if (Config.multipleEncryptionChoices()) { | ||||
| 						mEditMessage.setHint(getString(R.string.send_unencrypted_message)); | ||||
| 					} else { | ||||
| 						mEditMessage.setHint(getString(R.string.send_message_to_x,conversation.getName())); | ||||
| 					} | ||||
| 					break; | ||||
| 				case Message.ENCRYPTION_OTR: | ||||
| 					mEditMessage.setHint(getString(R.string.send_otr_message)); | ||||
|  | ||||
| @ -523,7 +523,7 @@ public class EditAccountActivity extends XmppActivity implements OnAccountUpdate | ||||
| 			} | ||||
| 			mamPrefs.setVisible(mAccount.getXmppConnection().getFeatures().mam()); | ||||
| 			Set<Integer> otherDevices = mAccount.getAxolotlService().getOwnDeviceIds(); | ||||
| 			if (otherDevices == null || otherDevices.isEmpty()) { | ||||
| 			if (otherDevices == null || otherDevices.isEmpty() || Config.supportOmemo()) { | ||||
| 				clearDevices.setVisible(false); | ||||
| 			} | ||||
| 			changePresence.setVisible(manuallyChangePresence()); | ||||
| @ -776,7 +776,7 @@ public class EditAccountActivity extends XmppActivity implements OnAccountUpdate | ||||
| 				this.mServerInfoPush.setText(R.string.server_info_unavailable); | ||||
| 			} | ||||
| 			final String otrFingerprint = this.mAccount.getOtrFingerprint(); | ||||
| 			if (otrFingerprint != null) { | ||||
| 			if (otrFingerprint != null && Config.supportOtr()) { | ||||
| 				this.mOtrFingerprintBox.setVisibility(View.VISIBLE); | ||||
| 				this.mOtrFingerprint.setText(CryptoHelper.prettifyFingerprint(otrFingerprint)); | ||||
| 				this.mOtrFingerprintToClipboardButton | ||||
| @ -798,10 +798,10 @@ public class EditAccountActivity extends XmppActivity implements OnAccountUpdate | ||||
| 			} else { | ||||
| 				this.mOtrFingerprintBox.setVisibility(View.GONE); | ||||
| 			} | ||||
| 			final String axolotlFingerprint = this.mAccount.getAxolotlService().getOwnFingerprint(); | ||||
| 			if (axolotlFingerprint != null) { | ||||
| 			final String ownAxolotlFingerprint = this.mAccount.getAxolotlService().getOwnFingerprint(); | ||||
| 			if (ownAxolotlFingerprint != null && Config.supportOmemo()) { | ||||
| 				this.mAxolotlFingerprintBox.setVisibility(View.VISIBLE); | ||||
| 				this.mAxolotlFingerprint.setText(CryptoHelper.prettifyFingerprint(axolotlFingerprint.substring(2))); | ||||
| 				this.mAxolotlFingerprint.setText(CryptoHelper.prettifyFingerprint(ownAxolotlFingerprint.substring(2))); | ||||
| 				this.mAxolotlFingerprintToClipboardButton | ||||
| 						.setVisibility(View.VISIBLE); | ||||
| 				this.mAxolotlFingerprintToClipboardButton | ||||
| @ -810,7 +810,7 @@ public class EditAccountActivity extends XmppActivity implements OnAccountUpdate | ||||
| 							@Override | ||||
| 							public void onClick(final View v) { | ||||
| 
 | ||||
| 								if (copyTextToClipboard(axolotlFingerprint.substring(2), R.string.omemo_fingerprint)) { | ||||
| 								if (copyTextToClipboard(ownAxolotlFingerprint.substring(2), R.string.omemo_fingerprint)) { | ||||
| 									Toast.makeText( | ||||
| 											EditAccountActivity.this, | ||||
| 											R.string.toast_message_omemo_fingerprint, | ||||
| @ -833,17 +833,16 @@ public class EditAccountActivity extends XmppActivity implements OnAccountUpdate | ||||
| 			} else { | ||||
| 				this.mAxolotlFingerprintBox.setVisibility(View.GONE); | ||||
| 			} | ||||
| 			final String ownFingerprint = mAccount.getAxolotlService().getOwnFingerprint(); | ||||
| 			boolean hasKeys = false; | ||||
| 			keys.removeAllViews(); | ||||
| 			for (final String fingerprint : mAccount.getAxolotlService().getFingerprintsForOwnSessions()) { | ||||
| 				if (ownFingerprint.equals(fingerprint)) { | ||||
| 				if (ownAxolotlFingerprint.equals(fingerprint)) { | ||||
| 					continue; | ||||
| 				} | ||||
| 				boolean highlight = fingerprint.equals(messageFingerprint); | ||||
| 				hasKeys |= addFingerprintRow(keys, mAccount, fingerprint, highlight, null); | ||||
| 			} | ||||
| 			if (hasKeys) { | ||||
| 			if (hasKeys && Config.supportOmemo()) { | ||||
| 				keysCard.setVisibility(View.VISIBLE); | ||||
| 			} else { | ||||
| 				keysCard.setVisibility(View.GONE); | ||||
|  | ||||
| @ -81,6 +81,7 @@ | ||||
| 	<string name="also_end_conversation">End this conversation afterwards</string> | ||||
| 	<string name="choose_presence">Choose presence to contact</string> | ||||
| 	<string name="send_unencrypted_message">Send unencrypted message</string> | ||||
| 	<string name="send_message_to_x">Send message to %s</string> | ||||
| 	<string name="send_otr_message">Send OTR encrypted message</string> | ||||
| 	<string name="send_omemo_message">Send OMEMO encrypted message</string> | ||||
| 	<string name="send_omemo_x509_message">Send v\\OMEMO encrypted message</string> | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 Daniel Gultsch
						Daniel Gultsch