From eb25643d94b96069b96ac8360ab956949ee64522 Mon Sep 17 00:00:00 2001 From: Daniel Gultsch Date: Sat, 17 Feb 2018 18:07:20 +0100 Subject: [PATCH] migrate to CardView in contact and muc details --- build.gradle | 1 + .../ui/ConferenceDetailsActivity.java | 51 +-- .../ui/ContactDetailsActivity.java | 43 +-- .../res/layout/activity_contact_details.xml | 211 +++++----- src/main/res/layout/activity_muc_details.xml | 363 +++++++++--------- 5 files changed, 331 insertions(+), 338 deletions(-) diff --git a/build.gradle b/build.gradle index 722492254..2242a5a74 100644 --- a/build.gradle +++ b/build.gradle @@ -39,6 +39,7 @@ dependencies { implementation 'com.soundcloud.android:android-crop:1.0.1@aar' implementation "com.android.support:support-v13:$supportLibVersion" implementation "com.android.support:appcompat-v7:$supportLibVersion" + implementation "com.android.support:cardview-v7:$supportLibVersion" implementation "com.android.support:support-emoji-appcompat:$supportLibVersion" implementation "com.android.support:support-emoji:$supportLibVersion" implementation "com.android.support:design:$supportLibVersion" diff --git a/src/main/java/eu/siacs/conversations/ui/ConferenceDetailsActivity.java b/src/main/java/eu/siacs/conversations/ui/ConferenceDetailsActivity.java index d555ac0e9..f06fc33d2 100644 --- a/src/main/java/eu/siacs/conversations/ui/ConferenceDetailsActivity.java +++ b/src/main/java/eu/siacs/conversations/ui/ConferenceDetailsActivity.java @@ -6,6 +6,7 @@ import android.content.Context; import android.content.DialogInterface; import android.content.IntentSender.SendIntentException; import android.os.Bundle; +import android.support.v7.widget.CardView; import android.view.ContextMenu; import android.view.LayoutInflater; import android.view.Menu; @@ -59,7 +60,7 @@ public class ConferenceDetailsActivity extends XmppActivity implements OnConvers private TextView mFullJid; private TextView mAccountJid; private LinearLayout membersView; - private LinearLayout mMoreDetails; + private CardView mMoreDetails; private RelativeLayout mMucSettings; private TextView mConferenceType; private TableLayout mConferenceInfoTable; @@ -231,43 +232,33 @@ public class ConferenceDetailsActivity extends XmppActivity implements OnConvers protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_muc_details); - mYourNick = (TextView) findViewById(R.id.muc_your_nick); - mYourPhoto = (ImageView) findViewById(R.id.your_photo); - ImageButton mEditNickButton = (ImageButton) findViewById(R.id.edit_nick_button); - mFullJid = (TextView) findViewById(R.id.muc_jabberid); - membersView = (LinearLayout) findViewById(R.id.muc_members); - mAccountJid = (TextView) findViewById(R.id.details_account); + mYourNick = findViewById(R.id.muc_your_nick); + mYourPhoto = findViewById(R.id.your_photo); + ImageButton mEditNickButton = findViewById(R.id.edit_nick_button); + mFullJid = findViewById(R.id.muc_jabberid); + membersView = findViewById(R.id.muc_members); + mAccountJid = findViewById(R.id.details_account); mMucSettings = findViewById(R.id.muc_settings); - mMoreDetails = (LinearLayout) findViewById(R.id.muc_more_details); + mMoreDetails = findViewById(R.id.muc_more_details); mMoreDetails.setVisibility(View.GONE); - mChangeConferenceSettingsButton = (ImageButton) findViewById(R.id.change_conference_button); + mChangeConferenceSettingsButton = findViewById(R.id.change_conference_button); mChangeConferenceSettingsButton.setOnClickListener(this.mChangeConferenceSettings); - mInviteButton = (Button) findViewById(R.id.invite); + mInviteButton = findViewById(R.id.invite); mInviteButton.setOnClickListener(inviteListener); - mConferenceType = (TextView) findViewById(R.id.muc_conference_type); + mConferenceType = findViewById(R.id.muc_conference_type); if (getSupportActionBar() != null) { getSupportActionBar().setHomeButtonEnabled(true); getSupportActionBar().setDisplayHomeAsUpEnabled(true); } - mEditNickButton.setOnClickListener(new OnClickListener() { - - @Override - public void onClick(View v) { - quickEdit(mConversation.getMucOptions().getActualNick(), - 0, - new OnValueEdited() { - - @Override - public String onValueEdited(String value) { - if (xmppConnectionService.renameInMuc(mConversation,value,renameCallback)) { - return null; - } else { - return getString(R.string.invalid_username); - } - } - }); - } - }); + mEditNickButton.setOnClickListener(v -> quickEdit(mConversation.getMucOptions().getActualNick(), + 0, + value -> { + if (xmppConnectionService.renameInMuc(mConversation,value,renameCallback)) { + return null; + } else { + return getString(R.string.invalid_username); + } + })); this.mAdvancedMode = getPreferences().getBoolean("advanced_muc_mode", false); this.mConferenceInfoTable = (TableLayout) findViewById(R.id.muc_info_more); this.mConferenceInfoTable.setVisibility(this.mAdvancedMode ? View.VISIBLE : View.GONE); diff --git a/src/main/java/eu/siacs/conversations/ui/ContactDetailsActivity.java b/src/main/java/eu/siacs/conversations/ui/ContactDetailsActivity.java index f00a6e839..eb1435626 100644 --- a/src/main/java/eu/siacs/conversations/ui/ContactDetailsActivity.java +++ b/src/main/java/eu/siacs/conversations/ui/ContactDetailsActivity.java @@ -12,6 +12,7 @@ import android.provider.ContactsContract.CommonDataKinds; import android.provider.ContactsContract.Contacts; import android.provider.ContactsContract.Intents; import android.support.v4.content.ContextCompat; +import android.support.v7.widget.CardView; import android.view.LayoutInflater; import android.view.Menu; import android.view.MenuItem; @@ -115,7 +116,7 @@ public class ContactDetailsActivity extends OmemoActivity implements OnAccountUp private Button mShowInactiveDevicesButton; private QuickContactBadge badge; private LinearLayout keys; - private LinearLayout keysWrapper; + private CardView keysWrapper; private FlowLayout tags; private boolean showDynamicTags = false; private boolean showLastSeen = false; @@ -206,34 +207,26 @@ public class ContactDetailsActivity extends OmemoActivity implements OnAccountUp this.messageFingerprint = getIntent().getStringExtra("fingerprint"); setContentView(R.layout.activity_contact_details); - contactJidTv = (TextView) findViewById(R.id.details_contactjid); - accountJidTv = (TextView) findViewById(R.id.details_account); - lastseen = (TextView) findViewById(R.id.details_lastseen); - statusMessage = (TextView) findViewById(R.id.status_message); - send = (CheckBox) findViewById(R.id.details_send_presence); - receive = (CheckBox) findViewById(R.id.details_receive_presence); - badge = (QuickContactBadge) findViewById(R.id.details_contact_badge); - addContactButton = (Button) findViewById(R.id.add_contact_button); - addContactButton.setOnClickListener(new OnClickListener() { - @Override - public void onClick(View view) { - showAddToRosterDialog(contact); - } - }); - keys = (LinearLayout) findViewById(R.id.details_contact_keys); - keysWrapper = (LinearLayout) findViewById(R.id.keys_wrapper); - tags = (FlowLayout) findViewById(R.id.tags); - mShowInactiveDevicesButton = (Button) findViewById(R.id.show_inactive_devices); + contactJidTv = findViewById(R.id.details_contactjid); + accountJidTv = findViewById(R.id.details_account); + lastseen = findViewById(R.id.details_lastseen); + statusMessage = findViewById(R.id.status_message); + send = findViewById(R.id.details_send_presence); + receive = findViewById(R.id.details_receive_presence); + badge = findViewById(R.id.details_contact_badge); + addContactButton = findViewById(R.id.add_contact_button); + addContactButton.setOnClickListener(view -> showAddToRosterDialog(contact)); + keys = findViewById(R.id.details_contact_keys); + keysWrapper = findViewById(R.id.keys_wrapper); + tags = findViewById(R.id.tags); + mShowInactiveDevicesButton = findViewById(R.id.show_inactive_devices); if (getSupportActionBar() != null) { getSupportActionBar().setHomeButtonEnabled(true); getSupportActionBar().setDisplayHomeAsUpEnabled(true); } - mShowInactiveDevicesButton.setOnClickListener(new OnClickListener() { - @Override - public void onClick(View v) { - showInactiveOmemo = !showInactiveOmemo; - populateView(); - } + mShowInactiveDevicesButton.setOnClickListener(v -> { + showInactiveOmemo = !showInactiveOmemo; + populateView(); }); } diff --git a/src/main/res/layout/activity_contact_details.xml b/src/main/res/layout/activity_contact_details.xml index 0a677597a..d6fea88d8 100644 --- a/src/main/res/layout/activity_contact_details.xml +++ b/src/main/res/layout/activity_contact_details.xml @@ -1,147 +1,150 @@ + android:layout_width="fill_parent" + android:layout_height="fill_parent" + android:background="?attr/color_background_secondary"> + android:orientation="vertical"> - + android:layout_marginTop="@dimen/activity_vertical_margin"> - - - + android:padding="@dimen/infocard_padding"> + + + + + + + + + + + + + + +