38
38
import com .flask .colorpicker .OnColorSelectedListener ;
39
39
import com .flask .colorpicker .builder .ColorPickerClickListener ;
40
40
import com .flask .colorpicker .builder .ColorPickerDialogBuilder ;
41
+ import com .google .android .material .snackbar .Snackbar ;
41
42
import com .google .gson .Gson ;
42
43
import com .stfalcon .chatkit .commons .ImageLoader ;
43
44
import com .stfalcon .chatkit .messages .MessageHolders ;
@@ -160,6 +161,9 @@ public void loadImage(ImageView imageView, @Nullable String url, @Nullable Objec
160
161
161
162
adapter .setOnMessageLongClickListener (this );
162
163
loaded = false ;
164
+ btnSend .setEnabled (true );
165
+ btnAttachment .setEnabled (true );
166
+ btnImage .setEnabled (true );
163
167
}
164
168
165
169
@ Override
@@ -433,32 +437,40 @@ public void setMessage(final Message msg) {
433
437
sender .cancel (true );
434
438
if (messageReceiveServer != null )
435
439
messageReceiveServer .onDestroy ();
436
- this .finish ();
437
- return ;
438
- }
439
-
440
- runOnUiThread (new Runnable () {
441
- @ Override
442
- public void run () {
443
- if (msg .getText () != null ) {
444
- msg .setUser (user );
445
- adapter .addToStart (msg , true );
446
- messageArrayList .add (msg );
447
- } else if (msg .isImage ()) {
448
- msg .setUser (user );
449
- adapter .addToStart (msg , true );
450
- messageArrayList .add (msg );
451
- } else if (msg .isFile ()) {
452
- msg .setUser (user );
453
- adapter .addToStart (msg , true );
454
- messageArrayList .add (msg );
455
- } else if (msg .isColor ()) {
456
- back_view .setBackgroundColor (msg .getColor ());
440
+ runOnUiThread (new Runnable () {
441
+ @ Override
442
+ public void run () {
443
+ Snackbar .make (btnSend , user .getName () + " is Offline. Messages will not be sent." , Snackbar .LENGTH_INDEFINITE )
444
+ .show ();
445
+ btnSend .setEnabled (false );
446
+ btnAttachment .setEnabled (false );
447
+ btnImage .setEnabled (false );
457
448
}
449
+ });
450
+ } else {
451
+ runOnUiThread (new Runnable () {
452
+ @ Override
453
+ public void run () {
454
+ if (msg .getText () != null ) {
455
+ msg .setUser (user );
456
+ adapter .addToStart (msg , true );
457
+ messageArrayList .add (msg );
458
+ } else if (msg .isImage ()) {
459
+ msg .setUser (user );
460
+ adapter .addToStart (msg , true );
461
+ messageArrayList .add (msg );
462
+ } else if (msg .isFile ()) {
463
+ msg .setUser (user );
464
+ adapter .addToStart (msg , true );
465
+ messageArrayList .add (msg );
466
+ } else if (msg .isColor ()) {
467
+ back_view .setBackgroundColor (msg .getColor ());
468
+ }
458
469
459
470
460
- }
461
- });
471
+ }
472
+ });
473
+ }
462
474
}
463
475
464
476
@ Override
@@ -484,6 +496,9 @@ protected void onPause() {
484
496
485
497
@ Override
486
498
public void onBackPressed () {
499
+ btnSend .setEnabled (true );
500
+ btnAttachment .setEnabled (true );
501
+ btnImage .setEnabled (true );
487
502
Log .e ("CHAT_ACTIVITY" , "PAUSE" );
488
503
if (saved == false ) {
489
504
String jsonDataString = gson .toJson (messageArrayList );
0 commit comments