diff --git a/xwords4/android/XWords4/jni/Android.mk b/xwords4/android/XWords4/jni/Android.mk index 886bcdc1f..40f7a7e81 100644 --- a/xwords4/android/XWords4/jni/Android.mk +++ b/xwords4/android/XWords4/jni/Android.mk @@ -15,6 +15,7 @@ local_DEFINES += \ $(local_DEBUG) \ -DXWFEATURE_RELAY \ -DXWFEATURE_TURNCHANGENOTIFY \ + -DXWFEATURE_CHAT \ -DSHOW_PROGRESS \ -DKEY_SUPPORT \ -DXWFEATURE_CROSSHAIRS \ diff --git a/xwords4/android/XWords4/jni/utilwrapper.c b/xwords4/android/XWords4/jni/utilwrapper.c index 791de092a..4b14f5b4f 100644 --- a/xwords4/android/XWords4/jni/utilwrapper.c +++ b/xwords4/android/XWords4/jni/utilwrapper.c @@ -346,6 +346,15 @@ and_util_warnIllegalWord( XW_UtilCtxt* uc, BadWordInfo* bwi, return result; } +static void +and_util_showChat( XW_UtilCtxt* uc, const XP_UCHAR const* msg ) +{ + UTIL_CBK_HEADER("showChat", "(Ljava/lang/String;)V" ); + jstring jmsg = (*env)->NewStringUTF( env, msg ); + (*env)->CallVoidMethod( env, util->jutil, mid, jmsg ); + (*env)->DeleteLocalRef( env, jmsg ); + UTIL_CBK_TAIL(); +} static void and_util_remSelected(XW_UtilCtxt* uc) @@ -445,6 +454,7 @@ makeUtil( MPFORMAL JNIEnv** envp, jobject jutil, CurGameInfo* gi, SET_PROC(makeEmptyDict); SET_PROC(getUserString); SET_PROC(warnIllegalWord); + SET_PROC(showChat); SET_PROC(remSelected); SET_PROC(setIsServer); diff --git a/xwords4/android/XWords4/res/values/strings.xml b/xwords4/android/XWords4/res/values/strings.xml index aae83091c..89fd85385 100644 --- a/xwords4/android/XWords4/res/values/strings.xml +++ b/xwords4/android/XWords4/res/values/strings.xml @@ -386,4 +386,6 @@ No public rooms found. Try refreshing or creating your own. + Message received + diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardActivity.java b/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardActivity.java index cb729bf89..5db821c03 100644 --- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardActivity.java +++ b/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardActivity.java @@ -1152,4 +1152,12 @@ public class BoardActivity extends Activity implements UtilCtxt { return accept; } + public void showChat( String msg ) + { + Utils.logf( "showChat(%s)", msg ); + m_dlgBytes = msg; + m_dlgTitle = R.string.chat_received; + showDialog( DLG_OKONLY ); + } + } // class BoardActivity diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/jni/UtilCtxt.java b/xwords4/android/XWords4/src/org/eehouse/android/xw4/jni/UtilCtxt.java index bc6a11b86..4210461e9 100644 --- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/jni/UtilCtxt.java +++ b/xwords4/android/XWords4/src/org/eehouse/android/xw4/jni/UtilCtxt.java @@ -108,4 +108,6 @@ public interface UtilCtxt { //void yOffsetChange( int maxOffset, int oldOffset, int newOffset ); boolean warnIllegalWord( String[] words, int turn, boolean turnLost ); + + void showChat( String msg ); }