Skip to content

Commit d5c3f60

Browse files
Android UI Kit v2.1.9
1 parent 392e717 commit d5c3f60

28 files changed

+414
-121
lines changed

.idea/compiler.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/misc.xml

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@
1010

1111
[![Platform](https://img.shields.io/badge/Platform-Android-brightgreen.svg)](#)
1212
[![Platform](https://img.shields.io/badge/Language-Java-yellowgreen.svg)](#)
13-
![GitHub repo size](https://img.shields.io/github/repo-size/cometchat-pro/android-kotlin-chat-app)
14-
![GitHub contributors](https://img.shields.io/github/contributors/cometchat-pro/android-kotlin-chat-app)
13+
![GitHub repo size](https://img.shields.io/github/repo-size/cometchat-pro/android-java-chat-app)
14+
![GitHub contributors](https://img.shields.io/github/contributors/cometchat-pro/android-java-chat-app)
1515
![GitHub stars](https://img.shields.io/github/stars/cometchat-pro/android-java-chat-app?style=social)
1616
![Twitter Follow](https://img.shields.io/twitter/follow/cometchat?style=social)
1717

app/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,5 +59,5 @@ dependencies {
5959
implementation 'com.google.android.material:material:1.2.0-alpha05'
6060
implementation 'com.facebook.shimmer:shimmer:0.4.0'
6161
//
62-
implementation 'com.cometchat:pro-android-chat-sdk:2.1.7-beta2'
62+
implementation 'com.cometchat:pro-android-chat-sdk:2.1.7-beta3'
6363
}

uikit/build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ dependencies {
6868
implementation 'com.google.android.gms:play-services-location:17.0.0'
6969
implementation 'com.google.android.gms:play-services-maps:17.0.0'
7070
//cometchat
71-
compileOnly 'com.cometchat:pro-android-chat-sdk:2.1.7-beta2'
71+
compileOnly 'com.cometchat:pro-android-chat-sdk:2.1.7-beta3'
7272
implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.4.0'
7373
}
7474
repositories {

uikit/src/main/java/adapter/MessageAdapter.java

Lines changed: 94 additions & 38 deletions
Large diffs are not rendered by default.

uikit/src/main/java/adapter/ThreadAdapter.java

Lines changed: 46 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -745,13 +745,17 @@ private void setDeleteData(DeleteMessageViewHolder viewHolder, int i) {
745745
private void showMessageTime(RecyclerView.ViewHolder viewHolder, BaseMessage baseMessage) {
746746

747747
if (viewHolder instanceof TextMessageViewHolder) {
748-
setStatusIcon(((TextMessageViewHolder) viewHolder).txtTime, baseMessage);
748+
setStatusIcon(((TextMessageViewHolder) viewHolder).progressBar,((TextMessageViewHolder) viewHolder).txtTime, baseMessage);
749749
} else if (viewHolder instanceof LinkMessageViewHolder) {
750-
setStatusIcon(((LinkMessageViewHolder) viewHolder).txtTime, baseMessage);
750+
setStatusIcon(((LinkMessageViewHolder) viewHolder).progressBar,((LinkMessageViewHolder) viewHolder).txtTime, baseMessage);
751751
} else if (viewHolder instanceof ImageMessageViewHolder) {
752-
setStatusIcon(((ImageMessageViewHolder) viewHolder).txtTime, baseMessage);
752+
setStatusIcon(((ImageMessageViewHolder) viewHolder).progressBar,((ImageMessageViewHolder) viewHolder).txtTime, baseMessage);
753753
} else if (viewHolder instanceof FileMessageViewHolder) {
754-
setStatusIcon(((FileMessageViewHolder) viewHolder).txtTime, baseMessage);
754+
setStatusIcon(((FileMessageViewHolder) viewHolder).progressBar,((FileMessageViewHolder) viewHolder).txtTime, baseMessage);
755+
} else if (viewHolder instanceof VideoMessageViewHolder) {
756+
setStatusIcon(((VideoMessageViewHolder) viewHolder).progressBar,((TextMessageViewHolder) viewHolder).txtTime,baseMessage);
757+
} else if (viewHolder instanceof AudioMessageViewHolder) {
758+
setStatusIcon(((AudioMessageViewHolder) viewHolder).progressBar,((AudioMessageViewHolder) viewHolder).txtTime,baseMessage);
755759
}
756760

757761
}
@@ -765,20 +769,30 @@ private void showMessageTime(RecyclerView.ViewHolder viewHolder, BaseMessage bas
765769
* @param baseMessage is a object of BaseMessage used to identify baseMessage sender.
766770
* @see BaseMessage
767771
*/
768-
private void setStatusIcon(TextView txtTime, BaseMessage baseMessage) {
772+
private void setStatusIcon(ProgressBar progressBar,TextView txtTime, BaseMessage baseMessage) {
769773
if (baseMessage.getSender().getUid().equals(loggedInUser.getUid())) {
774+
if (progressBar!=null)
775+
progressBar.setVisibility(View.GONE);
770776
if (baseMessage.getReadAt() != 0) {
771777
txtTime.setText(Utils.getHeaderDate(baseMessage.getReadAt() * 1000));
772-
// txtTime.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.drawable.ic_double_tick, 0);
778+
txtTime.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.drawable.ic_double_tick, 0);
773779
txtTime.setCompoundDrawablePadding(10);
774780
} else if (baseMessage.getDeliveredAt() != 0) {
775781
txtTime.setText(Utils.getHeaderDate(baseMessage.getDeliveredAt() * 1000));
776-
// txtTime.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.drawable.ic_done_all_black_24dp, 0);
782+
txtTime.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.drawable.ic_done_all_black_24dp, 0);
777783
txtTime.setCompoundDrawablePadding(10);
778-
} else {
784+
} else if (baseMessage.getSentAt()>0){
779785
txtTime.setText(Utils.getHeaderDate(baseMessage.getSentAt() * 1000));
780-
// txtTime.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.drawable.ic_check_black_24dp, 0);
786+
txtTime.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.drawable.ic_check_black_24dp, 0);
781787
txtTime.setCompoundDrawablePadding(10);
788+
} else if (baseMessage.getSentAt()==-1) {
789+
txtTime.setText("");
790+
txtTime.setCompoundDrawablesWithIntrinsicBounds(0,0,R.drawable.ic_info_red,0);
791+
} else {
792+
txtTime.setCompoundDrawablesWithIntrinsicBounds(0,0,0,0);
793+
txtTime.setText("");
794+
if (progressBar!=null)
795+
progressBar.setVisibility(View.VISIBLE);
782796
}
783797
} else {
784798
txtTime.setText(Utils.getHeaderDate(baseMessage.getSentAt() * 1000));
@@ -1296,6 +1310,21 @@ public void addMessage(BaseMessage baseMessage) {
12961310
notifyItemInserted(messageList.size()-1);
12971311
}
12981312

1313+
/**
1314+
* THis method is used to update the old message with the new message
1315+
* @param baseMessage
1316+
*/
1317+
public void updateChangedMessage(BaseMessage baseMessage) {
1318+
for (int i = messageList.size() - 1; i >= 0; i--) {
1319+
String muid = messageList.get(i).getMuid();
1320+
if (muid!=null && muid.equals(baseMessage.getMuid())) {
1321+
messageList.remove(i);
1322+
messageList.add(i,baseMessage);
1323+
notifyItemChanged(i);
1324+
}
1325+
}
1326+
}
1327+
12991328
/**
13001329
* This method is used to update previous message with new message in messageList of adapter.
13011330
*
@@ -1366,17 +1395,6 @@ public ImageMessageViewHolder(@NonNull View view) {
13661395
}
13671396
}
13681397

1369-
public class ActionMessageViewHolder extends RecyclerView.ViewHolder {
1370-
1371-
private TextView textView;
1372-
1373-
public ActionMessageViewHolder(@NonNull View view) {
1374-
super(view);
1375-
int type = (int) view.getTag();
1376-
textView = view.findViewById(R.id.go_txt_message);
1377-
}
1378-
}
1379-
13801398
class VideoMessageViewHolder extends RecyclerView.ViewHolder {
13811399

13821400
private ImageView imageView;
@@ -1414,6 +1432,7 @@ public class FileMessageViewHolder extends RecyclerView.ViewHolder {
14141432
private Avatar ivUser;
14151433
private RelativeLayout rlMessageBubble;
14161434
private ChipGroup reactionLayout;
1435+
private ProgressBar progressBar;
14171436

14181437
FileMessageViewHolder(@NonNull View itemView) {
14191438
super(itemView);
@@ -1425,6 +1444,7 @@ public class FileMessageViewHolder extends RecyclerView.ViewHolder {
14251444
fileName = itemView.findViewById(R.id.tvFileName);
14261445
rlMessageBubble = itemView.findViewById(R.id.rl_message);
14271446
reactionLayout = itemView.findViewById(R.id.reactions_layout);
1447+
progressBar = itemView.findViewById(R.id.progress_bar);
14281448
this.view = itemView;
14291449
}
14301450
}
@@ -1472,7 +1492,7 @@ public class TextMessageViewHolder extends RecyclerView.ViewHolder {
14721492
private RelativeLayout sentimentVw;
14731493
private TextView viewSentimentMessage;
14741494
private ChipGroup reactionLayout;
1475-
1495+
private ProgressBar progressBar;
14761496
TextMessageViewHolder(@NonNull View view) {
14771497
super(view);
14781498

@@ -1490,6 +1510,7 @@ public class TextMessageViewHolder extends RecyclerView.ViewHolder {
14901510
sentimentVw = view.findViewById(R.id.sentiment_layout);
14911511
viewSentimentMessage = view.findViewById(R.id.view_sentiment);
14921512
reactionLayout = view.findViewById(R.id.reactions_layout);
1513+
progressBar = view.findViewById(R.id.progress_bar);
14931514
this.view = view;
14941515

14951516
}
@@ -1567,6 +1588,7 @@ public class AudioMessageViewHolder extends RecyclerView.ViewHolder {
15671588
private RelativeLayout rlMessageBubble;
15681589
private TextView txtTime;
15691590
private ChipGroup reactionLayout;
1591+
private ProgressBar progressBar;
15701592
public AudioMessageViewHolder(@NonNull View itemView) {
15711593
super(itemView);
15721594
type = (int)itemView.getTag();
@@ -1577,6 +1599,7 @@ public AudioMessageViewHolder(@NonNull View itemView) {
15771599
ivUser = itemView.findViewById(R.id.iv_user);
15781600
txtTime = itemView.findViewById(R.id.txt_time);
15791601
reactionLayout = itemView.findViewById(R.id.reactions_layout);
1602+
progressBar = itemView.findViewById(R.id.progress_bar);
15801603
}
15811604
}
15821605
public class LinkMessageViewHolder extends RecyclerView.ViewHolder {
@@ -1596,6 +1619,7 @@ public class LinkMessageViewHolder extends RecyclerView.ViewHolder {
15961619
private Avatar ivUser;
15971620
private RelativeLayout rlMessageBubble;
15981621
private ChipGroup reactionLayout;
1622+
private ProgressBar progressBar;
15991623

16001624
LinkMessageViewHolder(@NonNull View view) {
16011625
super(view);
@@ -1614,20 +1638,11 @@ public class LinkMessageViewHolder extends RecyclerView.ViewHolder {
16141638
ivUser = view.findViewById(R.id.iv_user);
16151639
rlMessageBubble = view.findViewById(R.id.rl_message);
16161640
reactionLayout = view.findViewById(R.id.reactions_layout);
1641+
progressBar = view.findViewById(R.id.progress_bar);
16171642
this.view = view;
16181643
}
16191644
}
16201645

1621-
public class DateItemHolder extends RecyclerView.ViewHolder {
1622-
1623-
TextView txtMessageDate;
1624-
1625-
DateItemHolder(@NonNull View itemView) {
1626-
super(itemView);
1627-
txtMessageDate = itemView.findViewById(R.id.txt_message_date);
1628-
}
1629-
}
1630-
16311646
public interface OnMessageLongClick
16321647
{
16331648
void setLongMessageClick(List<BaseMessage> baseMessage);

uikit/src/main/java/screen/CometChatMediaViewActivity.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ protected void onCreate(Bundle savedInstanceState) {
5656
toolbar = findViewById(R.id.toolbar);
5757
toolbar.getNavigationIcon().setTint(getResources().getColor(R.color.textColorWhite));
5858
toolbar.setTitle(senderName);
59-
toolbar.setSubtitle(Utils.getMessageDate(sentAt));
59+
toolbar.setSubtitle(Utils.getLastMessageDate(sentAt));
6060
imageMessage = findViewById(R.id.image_message);
6161
videoMessage = findViewById(R.id.video_message);
6262
audioMessage = findViewById(R.id.audio_message);

0 commit comments

Comments
 (0)