Merge branch 'android_branch' into relay_noconn

This commit is contained in:
Eric House 2015-08-25 06:40:42 -07:00
commit c81f035133
7 changed files with 24 additions and 84 deletions

View file

@ -22,7 +22,7 @@
to come from a domain that you own or have control over. -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="org.eehouse.android.xw4dbg"
android:versionCode="90"
android:versionCode="91"
android:versionName="@string/app_version"
>

View file

@ -22,7 +22,7 @@
to come from a domain that you own or have control over. -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="org.eehouse.android.xw4"
android:versionCode="90"
android:versionCode="91"
android:versionName="@string/app_version"
>

View file

@ -13,10 +13,10 @@
</style>
</head>
<body>
<h2>Crosswords 4.4 beta 97 release</h2>
<h2>Crosswords 4.4 beta 98 release</h2>
<p>This release changes how networked games are started and
communicate.</p>
<p>This release is mostly to get the new Dutch translation out
there, and to catch up Catalan and French.</p>
<div id="survey">
<p>Please <a href="https://www.surveymonkey.com/s/GX3XLHR">take
@ -26,63 +26,23 @@
<h3>New with this release</h3>
<ul>
<li>Change how games communicate: instead of using only one
means (e.g. Bluetooth, SMS, or the internet/relay) a game can
use all three, switching based on what works at the time</li>
<li>Complete and up-to-date translations into Dutch, French and
Catalan. What langauge is next?</li>
<li>Game creation requires only picking whether you&apos;re
networked or not, not how to communicate (though you can
still control that if you like)</li>
<li>Allow copying invitation URL to clipboard so you can paste
it into any messaging app you like</li>
<li>Separate inviting from playing: e.g. you can invite via
Bluetooth to a game that will be played via SMS</li>
<li>Improvements to in-game chat experience (but more are coming)</li>
<li>A game that needs remote players has a dialog on top of it
at all times you can use to invite players. The dialog goes
away when invited players connect.</li>
<li>Show a "toast" when hint button can't find any moves</li>
<li>But when a game hasn&apos;t connected yet, warn, and
don&apos;t let it send an invitation</li>
<li>Add sms to the list of ways you can invite somebody</li>
<li>On startup, if on a phone configured for other than English,
offer to download an appropriate wordlist</li>
<li>New games are placed in the selected group (if any,
otherwise in default as before)</li>
<li>Add new-games buttons to main screen, and offer to hide them
after a while</li>
<li>Offer to turn Bluetooth and SMS on directly rather than just
take you to the Android prefs app</li>
<li>Hide public rooms interface by default, and add a preference
to turn it back on</li>
<li>Remove option to invite using SMS, since invitations are too
large now. (Will address in a release soon.)</li>
<li>Kill play-via-SMS for non-GSM phones. (Google&apos;s making
it too hard to support this, and non-GSM phones are only
found in one country anyway.)</li>
<li>Deal with deletion of dictionary that&apos;s been set as
default</li>
<li>In popup menu from in-game wordlist button, show only
wordlists in same language as game</li>
<li>When assigning new tiles, don&apos;t sort tiles to left of
tray divider</li>
<li>Remove &quot;Reconnect&quot; button from network status info</li>
<li>Include info for all communication means being used in
network status, and only show an icon in networked games </li>
<li>Show status message after writing to SD card</li>
<li>Fix a few crashes</li>
<li>When displaying Bluetooth-connected devices to invite, skip
stuff like headphones</li>
<li>Turn off email invite attachments. They didn't seem to work anyway,
and aren't needed on modern Android.</li>
<li>Fix very old memory leak</li>
</ul>
<p>(The full changelog
@ -92,7 +52,6 @@
<ul>
<li>Offer &quot;Rematch&quot; when game&apos;s over (Easy via
SMS and Bluetooth; harder via the internet/relay)</li>
<li>Fix invite-by-SMS (and then re-enable)</li>
<li>Look into supporting play via peer-to-peer wifi</li>
</ul>

View file

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_version">4.4 beta 97</string>
<string name="app_version">4.4 beta 98</string>
</resources>

View file

@ -142,7 +142,7 @@ public class DBUtils {
DBHelper.ROOMNAME, DBHelper.RELAYID,
/*DBHelper.SMSPHONE,*/ DBHelper.SEED,
DBHelper.DICTLANG, DBHelper.GAMEID,
DBHelper.SCORES, DBHelper.HASMSGS,
DBHelper.SCORES,
DBHelper.LASTPLAY_TIME, DBHelper.REMOTEDEVS,
DBHelper.LASTMOVE, DBHelper.NPACKETSPENDING,
DBHelper.EXTRAS,
@ -255,11 +255,6 @@ public class DBUtils {
col = cursor.getColumnIndex( DBHelper.SERVERROLE );
tmp = cursor.getInt( col );
summary.serverRole = CurGameInfo.DeviceRole.values()[tmp];
col = cursor.getColumnIndex( DBHelper.HASMSGS );
if ( col >= 0 ) {
summary.pendingMsgLevel = cursor.getInt( col );
}
}
cursor.close();
db.close();
@ -307,7 +302,6 @@ public class DBUtils {
values.put( DBHelper.NEXTNAG, nextNag );
values.put( DBHelper.DICTLIST, summary.dictNames(DICTS_SEP) );
values.put( DBHelper.HASMSGS, summary.pendingMsgLevel );
if ( null != inviteID ) {
values.put( DBHelper.INVITEID, inviteID );
}

View file

@ -162,13 +162,6 @@ public class GameUtils {
}
}
private static GameSummary summarizeAndClose( Context context,
GameLock lock,
int gamePtr, CurGameInfo gi )
{
return summarizeAndClose( context, lock, gamePtr, gi, null );
}
private static int setFromFeedImpl( FeedUtilsImpl feedImpl )
{
int result = GameSummary.MSG_FLAGS_NONE;
@ -185,17 +178,12 @@ public class GameUtils {
}
private static GameSummary summarizeAndClose( Context context,
GameLock lock,
int gamePtr, CurGameInfo gi,
FeedUtilsImpl feedImpl )
GameLock lock, int gamePtr,
CurGameInfo gi )
{
GameSummary summary = new GameSummary( context, gi );
XwJNI.game_summarize( gamePtr, summary );
if ( null != feedImpl ) {
summary.pendingMsgLevel |= setFromFeedImpl( feedImpl );
}
DBUtils.saveSummary( context, lock, summary );
XwJNI.game_dispose( gamePtr );
@ -932,12 +920,13 @@ public class GameUtils {
}
saveGame( context, gamePtr, gi, lock, false );
summarizeAndClose( context, lock, gamePtr, gi, feedImpl );
summarizeAndClose( context, lock, gamePtr, gi );
int flags = setFromFeedImpl( feedImpl );
if ( GameSummary.MSG_FLAGS_NONE != flags ) {
draw = true;
DBUtils.setMsgFlags( rowid, flags );
int curFlags = DBUtils.getMsgFlags( context, rowid );
DBUtils.setMsgFlags( rowid, flags | curFlags );
}
}
lock.unlock();

View file

@ -63,7 +63,6 @@ public class GameSummary {
public String roomName;
public String relayID;
public int seed;
public int pendingMsgLevel;
public long modtime;
public int gameID;
public String[] remoteDevs; // BTAddrs and phone numbers
@ -83,7 +82,6 @@ public class GameSummary {
public GameSummary( Context context ) {
m_context = context;
pendingMsgLevel = 0;
gameID = 0;
}