added share image intent to android manifest for testing purposes
This commit is contained in:
parent
41834b5e24
commit
0102032fc5
|
@ -93,6 +93,7 @@
|
|||
<action android:name="android.intent.action.SEND" />
|
||||
<category android:name="android.intent.category.DEFAULT" />
|
||||
<data android:mimeType="text/plain" />
|
||||
<data android:mimeType="image/*" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
</application>
|
||||
|
|
|
@ -15,8 +15,10 @@ import eu.siacs.conversations.utils.UIHelper;
|
|||
import android.content.Intent;
|
||||
import android.content.SharedPreferences;
|
||||
import android.graphics.Bitmap;
|
||||
import android.net.Uri;
|
||||
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;
|
||||
|
@ -41,11 +43,11 @@ public class ShareWithActivity extends XmppActivity {
|
|||
|
||||
}
|
||||
|
||||
|
||||
public View createContactView(String name, String msgTxt, Bitmap bm) {
|
||||
View view = (View) getLayoutInflater().inflate(R.layout.contact, null);
|
||||
view.setBackgroundResource(R.drawable.greybackground);
|
||||
TextView contactName =(TextView) view.findViewById(R.id.contact_display_name);
|
||||
TextView contactName = (TextView) view
|
||||
.findViewById(R.id.contact_display_name);
|
||||
contactName.setText(name);
|
||||
TextView msg = (TextView) view.findViewById(R.id.contact_jid);
|
||||
msg.setText(msgTxt);
|
||||
|
@ -54,11 +56,12 @@ public class ShareWithActivity extends XmppActivity {
|
|||
return view;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
void onBackendConnected() {
|
||||
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this);
|
||||
final boolean isImage = (getIntent().getType() != null && getIntent()
|
||||
.getType().startsWith("image/"));
|
||||
SharedPreferences preferences = PreferenceManager
|
||||
.getDefaultSharedPreferences(this);
|
||||
boolean useSubject = preferences.getBoolean("use_subject_in_muc", true);
|
||||
|
||||
Set<Contact> displayedContacts = new HashSet<Contact>();
|
||||
|
@ -67,11 +70,14 @@ public class ShareWithActivity extends XmppActivity {
|
|||
Collections.sort(convList, new Comparator<Conversation>() {
|
||||
@Override
|
||||
public int compare(Conversation lhs, Conversation rhs) {
|
||||
return (int) (rhs.getLatestMessage().getTimeSent() - lhs.getLatestMessage().getTimeSent());
|
||||
return (int) (rhs.getLatestMessage().getTimeSent() - lhs
|
||||
.getLatestMessage().getTimeSent());
|
||||
}
|
||||
});
|
||||
for(final Conversation conversation : convList) {
|
||||
View view = createContactView(conversation.getName(useSubject),
|
||||
for (final Conversation conversation : convList) {
|
||||
if (!isImage || conversation.getMode() == Conversation.MODE_SINGLE) {
|
||||
View view = createContactView(
|
||||
conversation.getName(useSubject),
|
||||
conversation.getLatestMessage().getBody().trim(),
|
||||
UIHelper.getContactPicture(conversation, 48,
|
||||
this.getApplicationContext(), false));
|
||||
|
@ -79,19 +85,28 @@ public class ShareWithActivity extends XmppActivity {
|
|||
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
String sharedText = getIntent().getStringExtra(Intent.EXTRA_TEXT);
|
||||
switchToConversation(conversation, sharedText,true);
|
||||
String sharedText = null;
|
||||
if (isImage) {
|
||||
Uri uri = (Uri) getIntent().getParcelableExtra(Intent.EXTRA_STREAM);
|
||||
Log.d(LOGTAG,uri.toString());
|
||||
} else {
|
||||
sharedText = getIntent().getStringExtra(
|
||||
Intent.EXTRA_TEXT);
|
||||
}
|
||||
switchToConversation(conversation, sharedText, true);
|
||||
finish();
|
||||
}
|
||||
});
|
||||
conversations.addView(view);
|
||||
displayedContacts.add(conversation.getContact());
|
||||
}
|
||||
}
|
||||
contacts.removeAllViews();
|
||||
List<Contact> contactsList = new ArrayList<Contact>();
|
||||
for(Account account : xmppConnectionService.getAccounts()) {
|
||||
for(Contact contact : account.getRoster().getContacts()) {
|
||||
if (!displayedContacts.contains(contact)&&(contact.showInRoster())) {
|
||||
for (Account account : xmppConnectionService.getAccounts()) {
|
||||
for (Contact contact : account.getRoster().getContacts()) {
|
||||
if (!displayedContacts.contains(contact)
|
||||
&& (contact.showInRoster())) {
|
||||
contactsList.add(contact);
|
||||
}
|
||||
}
|
||||
|
@ -100,21 +115,28 @@ public class ShareWithActivity extends XmppActivity {
|
|||
Collections.sort(contactsList, new Comparator<Contact>() {
|
||||
@Override
|
||||
public int compare(Contact lhs, Contact rhs) {
|
||||
return lhs.getDisplayName().compareToIgnoreCase(rhs.getDisplayName());
|
||||
return lhs.getDisplayName().compareToIgnoreCase(
|
||||
rhs.getDisplayName());
|
||||
}
|
||||
});
|
||||
|
||||
for(int i = 0; i < contactsList.size(); ++i) {
|
||||
for (int i = 0; i < contactsList.size(); ++i) {
|
||||
final Contact con = contactsList.get(i);
|
||||
View view = createContactView(con.getDisplayName(), con.getJid(),
|
||||
UIHelper.getContactPicture(con, 48, this.getApplicationContext(), false));
|
||||
View view = createContactView(
|
||||
con.getDisplayName(),
|
||||
con.getJid(),
|
||||
UIHelper.getContactPicture(con, 48,
|
||||
this.getApplicationContext(), false));
|
||||
view.setOnClickListener(new OnClickListener() {
|
||||
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
String sharedText = getIntent().getStringExtra(Intent.EXTRA_TEXT);
|
||||
Conversation conversation = xmppConnectionService.findOrCreateConversation(con.getAccount(), con.getJid(), false);
|
||||
switchToConversation(conversation, sharedText,true);
|
||||
String sharedText = getIntent().getStringExtra(
|
||||
Intent.EXTRA_TEXT);
|
||||
Conversation conversation = xmppConnectionService
|
||||
.findOrCreateConversation(con.getAccount(),
|
||||
con.getJid(), false);
|
||||
switchToConversation(conversation, sharedText, true);
|
||||
finish();
|
||||
}
|
||||
});
|
||||
|
|
Loading…
Reference in a new issue