some code cleanup to deal with the roster mgmt changes from earlier

Daniel Gultsch created

Change summary

src/eu/siacs/conversations/ui/ConversationFragment.java | 104 +++++-----
src/eu/siacs/conversations/ui/ShareWithActivity.java    |  22 -
src/eu/siacs/conversations/utils/UIHelper.java          |   5 
3 files changed, 54 insertions(+), 77 deletions(-)

Detailed changes

src/eu/siacs/conversations/ui/ConversationFragment.java 🔗

@@ -263,7 +263,7 @@ public class ConversationFragment extends Fragment {
 			}
 
 			private void displayInfoMessage(ViewHolder viewHolder, int r) {
-				if (viewHolder.download_button!=null) {
+				if (viewHolder.download_button != null) {
 					viewHolder.download_button.setVisibility(View.GONE);
 				}
 				viewHolder.image.setVisibility(View.GONE);
@@ -329,7 +329,8 @@ public class ConversationFragment extends Fragment {
 					@Override
 					public void onClick(View v) {
 						Intent intent = new Intent(Intent.ACTION_VIEW);
-						intent.setDataAndType(ImageProvider.getContentUri(message), "image/*");
+						intent.setDataAndType(
+								ImageProvider.getContentUri(message), "image/*");
 						startActivity(intent);
 					}
 				});
@@ -486,7 +487,7 @@ public class ConversationFragment extends Fragment {
 	@Override
 	public void onStop() {
 		super.onStop();
-		if (this.conversation!=null) {
+		if (this.conversation != null) {
 			this.conversation.setNextMessage(chatMsg.getText().toString());
 		}
 	}
@@ -577,13 +578,15 @@ public class ConversationFragment extends Fragment {
 	}
 
 	public void updateMessages() {
-		if (getView()==null) {
+		if (getView() == null) {
 			return;
 		}
 		ConversationActivity activity = (ConversationActivity) getActivity();
 		if (this.conversation != null) {
 			for (Message message : this.conversation.getMessages()) {
-				if ((message.getEncryption() == Message.ENCRYPTION_PGP)&&((message.getStatus() == Message.STATUS_RECIEVED)||(message.getStatus() == Message.STATUS_SEND))) {
+				if ((message.getEncryption() == Message.ENCRYPTION_PGP)
+						&& ((message.getStatus() == Message.STATUS_RECIEVED) || (message
+								.getStatus() == Message.STATUS_SEND))) {
 					decryptMessage(message);
 					break;
 				}
@@ -623,31 +626,26 @@ public class ConversationFragment extends Fragment {
 	protected void makeFingerprintWarning(int latestEncryption) {
 		final LinearLayout fingerprintWarning = (LinearLayout) getView()
 				.findViewById(R.id.new_fingerprint);
-		if (conversation.getContact() != null) {
-			Set<String> knownFingerprints = conversation.getContact()
-					.getOtrFingerprints();
-			if ((latestEncryption == Message.ENCRYPTION_OTR)
-					&& (conversation.hasValidOtrSession()
-							&& (conversation.getOtrSession().getSessionStatus() == SessionStatus.ENCRYPTED) && (!knownFingerprints
-								.contains(conversation.getOtrFingerprint())))) {
-				fingerprintWarning.setVisibility(View.VISIBLE);
-				TextView fingerprint = (TextView) getView().findViewById(
-						R.id.otr_fingerprint);
-				fingerprint.setText(conversation.getOtrFingerprint());
-				fingerprintWarning.setOnClickListener(new OnClickListener() {
+		Set<String> knownFingerprints = conversation.getContact()
+				.getOtrFingerprints();
+		if ((latestEncryption == Message.ENCRYPTION_OTR)
+				&& (conversation.hasValidOtrSession()
+						&& (conversation.getOtrSession().getSessionStatus() == SessionStatus.ENCRYPTED) && (!knownFingerprints
+							.contains(conversation.getOtrFingerprint())))) {
+			fingerprintWarning.setVisibility(View.VISIBLE);
+			TextView fingerprint = (TextView) getView().findViewById(
+					R.id.otr_fingerprint);
+			fingerprint.setText(conversation.getOtrFingerprint());
+			fingerprintWarning.setOnClickListener(new OnClickListener() {
 
-					@Override
-					public void onClick(View v) {
-						AlertDialog dialog = UIHelper
-								.getVerifyFingerprintDialog(
-										(ConversationActivity) getActivity(),
-										conversation, fingerprintWarning);
-						dialog.show();
-					}
-				});
-			} else {
-				fingerprintWarning.setVisibility(View.GONE);
-			}
+				@Override
+				public void onClick(View v) {
+					AlertDialog dialog = UIHelper.getVerifyFingerprintDialog(
+							(ConversationActivity) getActivity(), conversation,
+							fingerprintWarning);
+					dialog.show();
+				}
+			});
 		} else {
 			fingerprintWarning.setVisibility(View.GONE);
 		}
@@ -666,35 +664,31 @@ public class ConversationFragment extends Fragment {
 		final Contact contact = message.getConversation().getContact();
 		if (activity.hasPgp()) {
 			if (contact.getPgpKeyId() != 0) {
-				xmppService.getPgpEngine().hasKey(contact,
-						new UiCallback() {
-
-							@Override
-							public void userInputRequried(PendingIntent pi) {
-								activity.runIntent(
-										pi,
-										ConversationActivity.REQUEST_ENCRYPT_MESSAGE);
-							}
+				xmppService.getPgpEngine().hasKey(contact, new UiCallback() {
 
-							@Override
-							public void success() {
-								activity.encryptTextMessage();
-							}
+					@Override
+					public void userInputRequried(PendingIntent pi) {
+						activity.runIntent(pi,
+								ConversationActivity.REQUEST_ENCRYPT_MESSAGE);
+					}
 
-							@Override
-							public void error(int error) {
-								
-							}
-						});
+					@Override
+					public void success() {
+						activity.encryptTextMessage();
+					}
+
+					@Override
+					public void error(int error) {
+
+					}
+				});
 
 			} else {
 				showNoPGPKeyDialog(new DialogInterface.OnClickListener() {
 
 					@Override
-					public void onClick(DialogInterface dialog,
-							int which) {
-						conversation
-								.setNextEncryption(Message.ENCRYPTION_NONE);
+					public void onClick(DialogInterface dialog, int which) {
+						conversation.setNextEncryption(Message.ENCRYPTION_NONE);
 						message.setEncryption(Message.ENCRYPTION_NONE);
 						xmppService.sendMessage(message, null);
 						chatMsg.setText("");
@@ -703,15 +697,15 @@ public class ConversationFragment extends Fragment {
 			}
 		}
 	}
-	
+
 	public void showNoPGPKeyDialog(DialogInterface.OnClickListener listener) {
-		AlertDialog.Builder builder = new AlertDialog.Builder(
-				getActivity());
+		AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
 		builder.setTitle(getString(R.string.no_pgp_key));
 		builder.setIconAttribute(android.R.attr.alertDialogIcon);
 		builder.setMessage(getText(R.string.contact_has_no_pgp_key));
 		builder.setNegativeButton(getString(R.string.cancel), null);
-		builder.setPositiveButton(getString(R.string.send_unencrypted),listener);
+		builder.setPositiveButton(getString(R.string.send_unencrypted),
+				listener);
 		builder.create().show();
 	}
 

src/eu/siacs/conversations/ui/ShareWithActivity.java 🔗

@@ -17,7 +17,6 @@ import android.content.SharedPreferences;
 import android.graphics.Bitmap;
 import android.os.Bundle;
 import android.preference.PreferenceManager;
-import android.util.Log;
 import android.view.View;
 import android.view.View.OnClickListener;
 import android.widget.ImageView;
@@ -29,15 +28,6 @@ public class ShareWithActivity extends XmppActivity {
 	private LinearLayout conversations;
 	private LinearLayout contacts;
 	
-	private OnClickListener click = new OnClickListener() {
-		
-		@Override
-		public void onClick(View v) {
-			// TODO Auto-generated method stub
-			
-		}
-	};
-	
 	@Override
 	protected void onCreate(Bundle savedInstanceState) {
 
@@ -71,7 +61,7 @@ public class ShareWithActivity extends XmppActivity {
 		SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this);
 		boolean useSubject = preferences.getBoolean("use_subject_in_muc", true);
 		
-		Set<String> displayedContacts = new HashSet<String>();
+		Set<Contact> displayedContacts = new HashSet<Contact>();
 		conversations.removeAllViews();
 		List<Conversation> convList = xmppConnectionService.getConversations();
 		Collections.sort(convList, new Comparator<Conversation>() {
@@ -95,15 +85,13 @@ public class ShareWithActivity extends XmppActivity {
 				}
 			});
 			conversations.addView(view);
-			if (conversation.getContact() != null) {
-				displayedContacts.add(conversation.getContact().getUuid());
-			}
+			displayedContacts.add(conversation.getContact());
 		}
 		contacts.removeAllViews();
-		final List<Contact> contactsList = new ArrayList<Contact>();
+		List<Contact> contactsList = new ArrayList<Contact>();
 		for(Account account : xmppConnectionService.getAccounts()) {
-			for(final Contact contact : account.getRoster().getContacts()) {
-				if (!displayedContacts.contains(contact.getUuid())) {
+			for(Contact contact : account.getRoster().getContacts()) {
+				if (!displayedContacts.contains(contact)&&(contact.getOption(Contact.Options.IN_ROSTER))) {
 					contactsList.add(contact);
 				}
 			}

src/eu/siacs/conversations/utils/UIHelper.java 🔗

@@ -247,13 +247,8 @@ public class UIHelper {
 
 	public static Bitmap getContactPicture(Conversation conversation, int dpSize, Context context, boolean notification) {
 		if(conversation.getMode() == Conversation.MODE_SINGLE) {
-			if (conversation.getContact() != null){
 				return getContactPicture(conversation.getContact(), dpSize,
 						context, notification);
-			} else {
-				return getContactPicture(conversation.getName(false), dpSize,
-						context, notification);
-			}
 		} else{
 			int fgColor = UIHelper.FG_COLOR,
 				bgColor = (notification) ?