diff --git a/CHANGELOG.md b/CHANGELOG.md index cc57f3942..3e6400b6a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,7 @@ * New icon for the in-chat apps button * Improve hint for app drafts * Add Text-To-Speech (TTS) support for in-chat apps +* New icon for the QR icon ## v1.58.4 2025-05 diff --git a/src/main/java/org/thoughtcrime/securesms/ConversationTitleView.java b/src/main/java/org/thoughtcrime/securesms/ConversationTitleView.java index 9d2cc8051..e5a711318 100644 --- a/src/main/java/org/thoughtcrime/securesms/ConversationTitleView.java +++ b/src/main/java/org/thoughtcrime/securesms/ConversationTitleView.java @@ -157,8 +157,4 @@ public class ConversationTitleView extends RelativeLayout { public void setOnBackClickedListener(@Nullable OnClickListener listener) { this.back.setOnClickListener(listener); } - - public void registerForContextMenu(Activity activity) { - activity.registerForContextMenu(content); - } } diff --git a/src/main/java/org/thoughtcrime/securesms/ProfileAdapter.java b/src/main/java/org/thoughtcrime/securesms/ProfileAdapter.java index 1f6850bd1..d66eb64d1 100644 --- a/src/main/java/org/thoughtcrime/securesms/ProfileAdapter.java +++ b/src/main/java/org/thoughtcrime/securesms/ProfileAdapter.java @@ -8,6 +8,7 @@ import android.widget.TextView; import androidx.annotation.NonNull; import androidx.annotation.Nullable; +import androidx.fragment.app.Fragment; import androidx.recyclerview.widget.RecyclerView; import com.b44t.messenger.DcChat; @@ -44,6 +45,7 @@ public class ProfileAdapter extends RecyclerView.Adapter public static final int ITEM_SHARED_CHATS = 60; private final @NonNull Context context; + private final @NonNull Fragment fragment; private final @NonNull DcContext dcContext; private @Nullable DcChat dcChat; private @Nullable DcContact dcContact; @@ -83,12 +85,13 @@ public class ProfileAdapter extends RecyclerView.Adapter } }; - public ProfileAdapter(@NonNull Context context, + public ProfileAdapter(@NonNull Fragment fragment, @NonNull GlideRequests glideRequests, @Nullable ItemClickListener clickListener) { super(); - this.context = context; + this.fragment = fragment; + this.context = fragment.requireContext(); this.glideRequests = glideRequests; this.clickListener = clickListener; this.dcContext = DcHelper.getContext(context); @@ -211,6 +214,9 @@ public class ProfileAdapter extends RecyclerView.Adapter if (data.viewType == ITEM_LAST_SEEN || data.viewType == ITEM_ADDRESS) { int padding = (int)((float)context.getResources().getDimensionPixelSize(R.dimen.contact_list_normal_padding) * 1.2); item.setPadding(item.getPaddingLeft(), item.getPaddingTop(), item.getPaddingRight(), padding); + if (data.viewType == ITEM_ADDRESS) { + fragment.registerForContextMenu(item); + } } else if (data.viewType == ITEM_INTRODUCED_BY) { int padding = context.getResources().getDimensionPixelSize(R.dimen.contact_list_normal_padding); item.setPadding(item.getPaddingLeft(), padding, item.getPaddingRight(), item.getPaddingBottom()); @@ -318,7 +324,7 @@ public class ProfileAdapter extends RecyclerView.Adapter } } - if (sharedChats != null && !isDeviceTalk) { + if (!isDeviceTalk && sharedChats != null && sharedChats.getCnt() > 0) { itemData.add(new ItemData(ITEM_HEADER, context.getString(R.string.profile_shared_chats), 0)); for (int i = 0; i < sharedChats.getCnt(); i++) { itemData.add(new ItemData(ITEM_SHARED_CHATS, 0, i)); diff --git a/src/main/java/org/thoughtcrime/securesms/ProfileFragment.java b/src/main/java/org/thoughtcrime/securesms/ProfileFragment.java index 3c9c0d855..e3a665e5b 100644 --- a/src/main/java/org/thoughtcrime/securesms/ProfileFragment.java +++ b/src/main/java/org/thoughtcrime/securesms/ProfileFragment.java @@ -67,7 +67,7 @@ public class ProfileFragment extends Fragment @Override public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.profile_fragment, container, false); - adapter = new ProfileAdapter(requireContext(), GlideApp.with(this), this); + adapter = new ProfileAdapter(this, GlideApp.with(this), this); RecyclerView list = ViewUtil.findById(view, R.id.recycler_view); list.setAdapter(adapter); diff --git a/src/main/java/org/thoughtcrime/securesms/contacts/ContactSelectionListItem.java b/src/main/java/org/thoughtcrime/securesms/contacts/ContactSelectionListItem.java index 943ee3901..a6f6c8f70 100644 --- a/src/main/java/org/thoughtcrime/securesms/contacts/ContactSelectionListItem.java +++ b/src/main/java/org/thoughtcrime/securesms/contacts/ContactSelectionListItem.java @@ -79,7 +79,7 @@ public class ContactSelectionListItem extends LinearLayout implements RecipientM this.nameView.setTypeface(null, Typeface.NORMAL); } if (specialId == DcContact.DC_CONTACT_ID_QR_INVITE) { - this.avatar.setImageDrawable(new ResourceContactPhoto(R.drawable.baseline_qr_code_24).asDrawable(getContext(), ThemeUtil.getDummyContactColor(getContext()))); + this.avatar.setImageDrawable(new ResourceContactPhoto(R.drawable.ic_qr_code_24).asDrawable(getContext(), ThemeUtil.getDummyContactColor(getContext()))); } else { this.avatar.setAvatar(glideRequests, recipient, false); } diff --git a/src/main/res/drawable/baseline_qr_code_24.xml b/src/main/res/drawable/baseline_qr_code_24.xml deleted file mode 100644 index e7edb465f..000000000 --- a/src/main/res/drawable/baseline_qr_code_24.xml +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - diff --git a/src/main/res/drawable/ic_qr_code_24.xml b/src/main/res/drawable/ic_qr_code_24.xml new file mode 100644 index 000000000..f95c18d61 --- /dev/null +++ b/src/main/res/drawable/ic_qr_code_24.xml @@ -0,0 +1,3 @@ + + + diff --git a/src/main/res/layout/profile_divider.xml b/src/main/res/layout/profile_divider.xml index a1458c441..a33b1a034 100644 --- a/src/main/res/layout/profile_divider.xml +++ b/src/main/res/layout/profile_divider.xml @@ -6,9 +6,9 @@ + android:background="?attr/conversation_list_item_divider"/> diff --git a/src/main/res/menu/text_secure_normal.xml b/src/main/res/menu/text_secure_normal.xml index 05d26d1a1..8a942ede3 100644 --- a/src/main/res/menu/text_secure_normal.xml +++ b/src/main/res/menu/text_secure_normal.xml @@ -4,7 +4,7 @@