diff options
-rw-r--r-- | gen/de/gultsch/chat/R.java | 68 | ||||
-rw-r--r-- | res/layout/dialog_contact_details.xml | 118 | ||||
-rw-r--r-- | src/de/gultsch/chat/ui/DialogContactDetails.java | 21 |
3 files changed, 121 insertions, 86 deletions
diff --git a/gen/de/gultsch/chat/R.java b/gen/de/gultsch/chat/R.java index 924200d0..ebe4e3b3 100644 --- a/gen/de/gultsch/chat/R.java +++ b/gen/de/gultsch/chat/R.java @@ -41,24 +41,24 @@ public final class R { public static final int section_header=0x7f02000c; } public static final class id { - public static final int account_confirm_password_desc=0x7f0a0017; - public static final int account_delete=0x7f0a002b; - public static final int account_disable=0x7f0a002c; - public static final int account_enable=0x7f0a002d; + public static final int account_confirm_password_desc=0x7f0a0019; + public static final int account_delete=0x7f0a002d; + public static final int account_disable=0x7f0a002e; + public static final int account_enable=0x7f0a002f; public static final int account_jid=0x7f0a0000; - public static final int account_list=0x7f0a0020; - public static final int account_password=0x7f0a0014; - public static final int account_password_confirm2=0x7f0a0018; + public static final int account_list=0x7f0a0022; + public static final int account_password=0x7f0a0016; + public static final int account_password_confirm2=0x7f0a001a; public static final int account_status=0x7f0a0002; - public static final int account_usetls=0x7f0a0015; - public static final int action_accounts=0x7f0a0028; - public static final int action_add=0x7f0a0024; - public static final int action_add_account=0x7f0a002a; - public static final int action_archive=0x7f0a0027; - public static final int action_details=0x7f0a0026; - public static final int action_refresh_contacts=0x7f0a002e; - public static final int action_security=0x7f0a0025; - public static final int action_settings=0x7f0a0029; + public static final int account_usetls=0x7f0a0017; + public static final int action_accounts=0x7f0a002a; + public static final int action_add=0x7f0a0026; + public static final int action_add_account=0x7f0a002c; + public static final int action_archive=0x7f0a0029; + public static final int action_details=0x7f0a0028; + public static final int action_refresh_contacts=0x7f0a0030; + public static final int action_security=0x7f0a0027; + public static final int action_settings=0x7f0a002b; public static final int contactList=0x7f0a0006; public static final int contact_display_name=0x7f0a0008; public static final int contact_jid=0x7f0a0009; @@ -68,26 +68,28 @@ public final class R { public static final int conversation_lastmsg=0x7f0a000c; public static final int conversation_lastupdate=0x7f0a000d; public static final int conversation_name=0x7f0a000b; - public static final int details_account=0x7f0a0010; - public static final int details_contact_jid=0x7f0a000e; - public static final int details_contact_status=0x7f0a000f; - public static final int details_receive_presence=0x7f0a0012; - public static final int details_send_presence=0x7f0a0011; - public static final int edit_account_register_new=0x7f0a0016; - public static final int list=0x7f0a001e; - public static final int message_body=0x7f0a0022; - public static final int message_photo=0x7f0a0021; - public static final int message_time=0x7f0a0023; - public static final int messages_view=0x7f0a001c; + public static final int details_account=0x7f0a0012; + public static final int details_contact_picture=0x7f0a000e; + public static final int details_contactjid=0x7f0a0010; + public static final int details_contactstatus=0x7f0a0011; + public static final int details_jidbox=0x7f0a000f; + public static final int details_receive_presence=0x7f0a0014; + public static final int details_send_presence=0x7f0a0013; + public static final int edit_account_register_new=0x7f0a0018; + public static final int list=0x7f0a0020; + public static final int message_body=0x7f0a0024; + public static final int message_photo=0x7f0a0023; + public static final int message_time=0x7f0a0025; + public static final int messages_view=0x7f0a001e; public static final int new_conversation_search=0x7f0a0004; public static final int progressBar1=0x7f0a0003; - public static final int selected_conversation=0x7f0a001f; - public static final int slidingpanelayout=0x7f0a001d; - public static final int textSendButton=0x7f0a001b; - public static final int textView1=0x7f0a0013; + public static final int selected_conversation=0x7f0a0021; + public static final int slidingpanelayout=0x7f0a001f; + public static final int textSendButton=0x7f0a001d; + public static final int textView1=0x7f0a0015; public static final int textView2=0x7f0a0001; - public static final int textinput=0x7f0a001a; - public static final int textsend=0x7f0a0019; + public static final int textinput=0x7f0a001c; + public static final int textsend=0x7f0a001b; } public static final class layout { public static final int account_row=0x7f030000; diff --git a/res/layout/dialog_contact_details.xml b/res/layout/dialog_contact_details.xml index 9bbe5539..b74b8155 100644 --- a/res/layout/dialog_contact_details.xml +++ b/res/layout/dialog_contact_details.xml @@ -3,75 +3,91 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" - android:padding="8dp"> + android:padding="8dp" > - <TextView + <RelativeLayout android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:text="Jabber ID" - android:textColor="#636363" - android:textSize="20sp"/> + android:layout_height="96dp" > - <TextView - android:id="@+id/details_contact_jid" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:text="something@jabber.example.com" - android:paddingLeft="8dp" - android:textSize="14sp"/> + <ImageView + android:id="@+id/details_contact_picture" + android:layout_width="96dp" + android:layout_height="96dp" + android:layout_centerVertical="true" + android:paddingRight="8dp" /> - <TextView - android:paddingTop="8dp" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:text="Status" - android:textColor="#636363" - android:textSize="20sp"/> + <LinearLayout + android:id="@+id/details_jidbox" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_toRightOf="@+id/details_contact_picture" + android:orientation="vertical" + android:layout_alignParentTop="true"> + + <TextView + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Jabber ID" + android:textColor="#33B5E5" + android:textSize="20sp" /> + + <TextView + android:id="@+id/details_contactjid" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="something@jabber.example.com" + android:textSize="14sp" /> + + + </LinearLayout> + <TextView + android:id="@+id/details_contactstatus" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:paddingTop="3dp" + android:text="online" + android:textSize="24sp" + android:textStyle="bold" + android:layout_below="@+id/details_jidbox" + android:layout_toRightOf="@id/details_contact_picture"/> + </RelativeLayout> <TextView - android:paddingLeft="8dp" - android:id="@+id/details_contact_status" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:text="online" - android:textSize="14sp"/> - - <TextView android:paddingTop="8dp" - android:layout_width="wrap_content" - android:layout_height="wrap_content" android:text="Your account" - android:textColor="#636363" - android:textSize="20sp"/> + android:textColor="#33B5E5" + android:textSize="20sp"/> <TextView - android:paddingLeft="8dp" android:id="@+id/details_account" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:textSize="14sp" - android:text="julia@jabber.example.com" /> - - <TextView - android:paddingTop="8dp" + android:paddingLeft="8dp" + android:text="julia@jabber.example.com" + android:textSize="14sp" /> + + <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" + android:paddingTop="8dp" android:text="Subscription" - android:textColor="#636363" - android:textSize="20sp"/> + android:textColor="#33B5E5" + android:textSize="20sp" /> - <CheckBox - android:id="@+id/details_send_presence" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:text="Send presence updates" - android:textSize="14sp"/> + <CheckBox + android:id="@+id/details_send_presence" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Send presence updates" + android:textSize="14sp" /> - <CheckBox - android:id="@+id/details_receive_presence" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:text="Receive presence updates" - android:textSize="14sp"/> + <CheckBox + android:id="@+id/details_receive_presence" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="Receive presence updates" + android:textSize="14sp" /> -</LinearLayout> +</LinearLayout>
\ No newline at end of file diff --git a/src/de/gultsch/chat/ui/DialogContactDetails.java b/src/de/gultsch/chat/ui/DialogContactDetails.java index 7af8db70..51819399 100644 --- a/src/de/gultsch/chat/ui/DialogContactDetails.java +++ b/src/de/gultsch/chat/ui/DialogContactDetails.java @@ -3,13 +3,16 @@ package de.gultsch.chat.ui; import de.gultsch.chat.R; import de.gultsch.chat.entities.Contact; import de.gultsch.chat.entities.Presences; +import de.gultsch.chat.utils.UIHelper; import android.app.AlertDialog; import android.app.Dialog; import android.app.DialogFragment; +import android.net.Uri; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.widget.CheckBox; +import android.widget.ImageView; import android.widget.TextView; public class DialogContactDetails extends DialogFragment { @@ -26,11 +29,12 @@ public class DialogContactDetails extends DialogFragment { final AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); LayoutInflater inflater = getActivity().getLayoutInflater(); View view = inflater.inflate(R.layout.dialog_contact_details, null); - TextView contactJid = (TextView) view.findViewById(R.id.details_contact_jid); + TextView contactJid = (TextView) view.findViewById(R.id.details_contactjid); TextView accountJid = (TextView) view.findViewById(R.id.details_account); - TextView status = (TextView) view.findViewById(R.id.details_contact_status); + TextView status = (TextView) view.findViewById(R.id.details_contactstatus); CheckBox send = (CheckBox) view.findViewById(R.id.details_send_presence); CheckBox receive = (CheckBox) view.findViewById(R.id.details_receive_presence); + ImageView contactPhoto = (ImageView) view.findViewById(R.id.details_contact_picture); boolean subscriptionSend = false; boolean subscriptionReceive = false; @@ -46,24 +50,31 @@ public class DialogContactDetails extends DialogFragment { switch (contact.getMostAvailableStatus()) { case Presences.CHAT: status.setText("free to chat"); + status.setTextColor(0xFF83b600); break; case Presences.ONLINE: status.setText("online"); + status.setTextColor(0xFF83b600); break; case Presences.AWAY: status.setText("away"); + status.setTextColor(0xFFffa713); break; case Presences.XA: status.setText("extended away"); + status.setTextColor(0xFFffa713); break; case Presences.DND: status.setText("do not disturb"); + status.setTextColor(0xFFe92727); break; case Presences.OFFLINE: status.setText("offline"); + status.setTextColor(0xFFe92727); break; default: status.setText("offline"); + status.setTextColor(0xFFe92727); break; } @@ -72,6 +83,12 @@ public class DialogContactDetails extends DialogFragment { contactJid.setText(contact.getJid()); accountJid.setText(contact.getAccount().getJid()); + if (contact.getProfilePhoto()!=null) { + contactPhoto.setImageURI(Uri.parse(contact.getProfilePhoto())); + } else { + contactPhoto.setImageBitmap(UIHelper.getUnknownContactPicture(contact.getDisplayName(), 300)); + } + builder.setView(view); builder.setTitle(contact.getDisplayName()); |