provide default rematch game name that makes sense on both devices

This commit is contained in:
Eric House 2015-09-24 20:26:43 -07:00
parent 8a3bc943c8
commit e9059cba47
7 changed files with 21 additions and 32 deletions

View file

@ -2395,7 +2395,7 @@
<string name="new_game">New one-device game</string> <string name="new_game">New one-device game</string>
<string name="new_game_networked">New networked game</string> <string name="new_game_networked">New networked game</string>
<string name="rematch_name_fmt">Rematch with %1$s</string> <string name="rematch_name_fmt">Rematch: %1$s</string>
<string name="new_game_message">Would you like to create this game <string name="new_game_message">Would you like to create this game
using default settings?\n\nOr would you like to configure it using default settings?\n\nOr would you like to configure it

View file

@ -2057,7 +2057,7 @@
<string name="title_addrs_pref">Etacinummoc aiv</string> <string name="title_addrs_pref">Etacinummoc aiv</string>
<string name="new_game">Wen ecived-eno emag</string> <string name="new_game">Wen ecived-eno emag</string>
<string name="new_game_networked">Wen dekrowten emag</string> <string name="new_game_networked">Wen dekrowten emag</string>
<string name="rematch_name_fmt">Hctamer htiw %1$s</string> <string name="rematch_name_fmt">Hctamer: %1$s</string>
<string name="new_game_message">Dluow uoy ekil ot etaerc siht emag <string name="new_game_message">Dluow uoy ekil ot etaerc siht emag
gnisu tluafed ?sgnittes\n\nRo dluow uoy ekil ot erugifnoc ti gnisu tluafed ?sgnittes\n\nRo dluow uoy ekil ot erugifnoc ti
?tsrif</string> ?tsrif</string>

View file

@ -2057,7 +2057,7 @@
<string name="title_addrs_pref">COMMUNICATE VIA</string> <string name="title_addrs_pref">COMMUNICATE VIA</string>
<string name="new_game">NEW ONE-DEVICE GAME</string> <string name="new_game">NEW ONE-DEVICE GAME</string>
<string name="new_game_networked">NEW NETWORKED GAME</string> <string name="new_game_networked">NEW NETWORKED GAME</string>
<string name="rematch_name_fmt">REMATCH WITH %1$s</string> <string name="rematch_name_fmt">REMATCH: %1$s</string>
<string name="new_game_message">WOULD YOU LIKE TO CREATE THIS GAME <string name="new_game_message">WOULD YOU LIKE TO CREATE THIS GAME
USING DEFAULT SETTINGS?\n\nOR WOULD YOU LIKE TO CONFIGURE IT USING DEFAULT SETTINGS?\n\nOR WOULD YOU LIKE TO CONFIGURE IT
FIRST?</string> FIRST?</string>

View file

@ -2584,12 +2584,11 @@ public class BoardDelegate extends DelegateBase
} }
if ( doIt ) { if ( doIt ) {
String[] opponents = m_gi.getRemoteNames(); String newName = m_summary.getRematchName();
String opponent = (0 == opponents.length) ? null : opponents[0];
Intent intent = GamesListDelegate Intent intent = GamesListDelegate
.makeRematchIntent( m_activity, m_rowid, m_gi.dictName, .makeRematchIntent( m_activity, m_rowid, m_gi.dictName,
m_gi.dictLang, m_connTypes, btAddr, m_gi.dictLang, m_connTypes, btAddr,
phone, relayID, opponent ); phone, relayID, newName );
if ( null != intent ) { if ( null != intent ) {
startActivity( intent ); startActivity( intent );
finish(); finish();

View file

@ -89,7 +89,7 @@ public class GamesListDelegate extends ListDelegateBase
private static final String REMATCH_ROWID_EXTRA = "rm_rowid"; private static final String REMATCH_ROWID_EXTRA = "rm_rowid";
private static final String REMATCH_DICT_EXTRA = "rm_dict"; private static final String REMATCH_DICT_EXTRA = "rm_dict";
private static final String REMATCH_LANG_EXTRA = "rm_lang"; private static final String REMATCH_LANG_EXTRA = "rm_lang";
private static final String REMATCH_OPPONENT_EXTRA = "rm_opp"; private static final String REMATCH_NEWNAME_EXTRA = "rm_nnm";
private static final String REMATCH_ADDRS_EXTRA = "rm_addrs"; private static final String REMATCH_ADDRS_EXTRA = "rm_addrs";
private static final String REMATCH_BTADDR_EXTRA = "rm_btaddr"; private static final String REMATCH_BTADDR_EXTRA = "rm_btaddr";
private static final String REMATCH_PHONE_EXTRA = "rm_phone"; private static final String REMATCH_PHONE_EXTRA = "rm_phone";
@ -901,16 +901,12 @@ public class GamesListDelegate extends ListDelegateBase
case GAMES_LIST_NAME_REMATCH: case GAMES_LIST_NAME_REMATCH:
edit = (TextView)dialog.findViewById( R.id.edit ); edit = (TextView)dialog.findViewById( R.id.edit );
String opponent = edit.setText( m_rematchIntent
m_rematchIntent.getStringExtra( REMATCH_OPPONENT_EXTRA ); .getStringExtra( REMATCH_NEWNAME_EXTRA ) );
boolean solo = opponent == null; boolean solo =
String name = solo -1 == m_rematchIntent.getIntExtra( REMATCH_ADDRS_EXTRA, -1 );
? GameUtils.makeDefaultName( m_activity ) ad.setIcon( solo ? R.drawable.sologame__gen
: getString( R.string.rematch_name_fmt, opponent ); : R.drawable.multigame__gen );
edit.setText( name );
int icon = solo
? R.drawable.sologame__gen : R.drawable.multigame__gen;
ad.setIcon( icon );
((TextView)dialog.findViewById( R.id.msg )) ((TextView)dialog.findViewById( R.id.msg ))
.setVisibility( View.GONE ); .setVisibility( View.GONE );
break; break;
@ -2306,7 +2302,7 @@ public class GamesListDelegate extends ListDelegateBase
String dict, int lang, String dict, int lang,
CommsConnTypeSet addrTypes, CommsConnTypeSet addrTypes,
String btAddr, String phone, String btAddr, String phone,
String relayID, String opponent ) String relayID, String newName )
{ {
Intent intent = null; Intent intent = null;
if ( XWApp.REMATCH_SUPPORTED ) { if ( XWApp.REMATCH_SUPPORTED ) {
@ -2314,9 +2310,8 @@ public class GamesListDelegate extends ListDelegateBase
intent.putExtra( REMATCH_ROWID_EXTRA, rowid ); intent.putExtra( REMATCH_ROWID_EXTRA, rowid );
intent.putExtra( REMATCH_DICT_EXTRA, dict ); intent.putExtra( REMATCH_DICT_EXTRA, dict );
intent.putExtra( REMATCH_LANG_EXTRA, lang ); intent.putExtra( REMATCH_LANG_EXTRA, lang );
if ( null != opponent ) { intent.putExtra( REMATCH_NEWNAME_EXTRA, newName );
intent.putExtra( REMATCH_OPPONENT_EXTRA, opponent );
}
if ( null != addrTypes ) { if ( null != addrTypes ) {
intent.putExtra( REMATCH_ADDRS_EXTRA, addrTypes.toInt() ); // here intent.putExtra( REMATCH_ADDRS_EXTRA, addrTypes.toInt() ); // here
if ( null != btAddr ) { if ( null != btAddr ) {

View file

@ -367,17 +367,6 @@ public class CurGameInfo {
} }
} }
public String[] getRemoteNames()
{
ArrayList<String> al = new ArrayList<String>();
for ( int ii = 0; ii < nPlayers; ++ii ) {
if ( ! players[ii].isLocal ) {
al.add( players[ii].name );
}
}
return al.toArray( new String[al.size()] );
}
private boolean moveUp( int which ) private boolean moveUp( int which )
{ {
boolean canMove = which > 0 && which < nPlayers; boolean canMove = which > 0 && which < nPlayers;

View file

@ -131,6 +131,12 @@ public class GameSummary {
return result; return result;
} }
public String getRematchName()
{
return LocUtils.getString( m_context, R.string.rematch_name_fmt,
playerNames() );
}
public void setRemoteDevs( Context context, String asString ) public void setRemoteDevs( Context context, String asString )
{ {
if ( null != asString ) { if ( null != asString ) {