Commit graph

185 commits

Author SHA1 Message Date
Eric House
0b00f303bb cleanup after code review 2013-11-25 07:46:25 -08:00
Eric House
0cc45ad865 add new field canHideRack to GameStateInfo and use it to disable menu. 2013-11-17 13:54:21 -08:00
Eric House
088dd1bd75 center board when it must be narrower than screen 2013-11-15 20:46:22 -08:00
Eric House
da3215c116 reduce logging 2013-11-11 08:00:56 -08:00
Eric House
dfdbd9a8a2 pass scoreWidth separately into formatting code so space can be left
for network status icon.
2013-11-09 05:34:23 -08:00
Eric House
71d83e188e null param ok for board_getActiveRect in jni 2013-11-07 19:54:13 -08:00
Eric House
bb80cdfb08 Merge branch 'android_branch' into android_thumbnail
Conflicts:
	xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardCanvas.java
	xwords4/android/XWords4/src/org/eehouse/android/xw4/jni/XwJNI.java
2013-11-07 05:25:51 -08:00
Eric House
272fc6e812 Move board_layout call onto jni thread, and change order in which it's
done to make that work. This is a snapshot: not all boards draw completely,
and there's other debugging to be done.
2013-11-06 06:49:27 -08:00
Eric House
7c47c27cee dispose any existing draw ctxt before setting another. 2013-11-05 07:36:56 -08:00
Eric House
499e07d84b follow convention: width usually comes before height 2013-11-05 06:38:48 -08:00
Eric House
03b023d506 dispose any existing draw ctxt before setting another. 2013-11-04 07:33:12 -08:00
Eric House
d4cf98553c Merge branch 'android_branch' into android_thumbnail 2013-11-04 06:37:13 -08:00
Eric House
2d7392a16d pass new score- and tray-size params through 2013-11-04 06:36:52 -08:00
Eric House
9c9a04025a Merge branch 'android_branch' into android_thumbnail
Conflicts:
	xwords4/android/XWords4/src/org/eehouse/android/xw4/jni/XwJNI.java
2013-11-04 06:20:53 -08:00
Eric House
9f1b0c5121 Specify relative height of scoreboard and tray in board_figureLayout,
and allow those to be 0.
2013-11-04 06:19:33 -08:00
Eric House
e01af60dab build with COMMON_LAYOUT defined, and when off-by-default debug pref
is on use it instead of java-side layout.
2013-11-03 12:17:20 -08:00
Eric House
cc994368aa move ints and booleans between java and c structs using arrays of data
rather than a ton of nearly identical function calls.
2013-11-01 19:10:08 -07:00
Eric House
d7a1f53157 Merge branch 'android_branch' into android_thumbnail
Conflicts:
	xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardView.java
2013-10-31 08:13:39 -07:00
Eric House
bfa6132ade add board_setDraw() to jni 2013-10-31 08:07:07 -07:00
Eric House
3858893ab2 don't crash on null dctxt 2013-10-31 06:35:23 -07:00
Eric House
0960e5510c add board_getActiveRect to jni, and use it to capture a thumbnail
that's smaller.  Scaling is still a problem, though: some but not all
grid lines show up.
2013-10-29 07:51:35 -07:00
Eric House
552fa28b39 export model_getNumTilesInTray() via jni 2013-09-30 21:59:12 -07:00
Eric House
a25d664eb5 Merge branch 'from_android_beta_65' into android_branch
Conflicts:
	xwords4/android/XWords4/res/raw/changes
	xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardActivity.java
2013-09-09 08:01:28 -07:00
Eric House
04eeebc3a4 fix so still compiles when chat feature is disabled 2013-09-08 19:08:58 -07:00
Eric House
27d9f3de45 Don't enable chat when more than 128 messages are in queue to prevent
an extremely unlikely cause of stalls -- and make tests trip over full
queues less often.
2013-07-18 07:37:45 -07:00
Eric House
de7c29dcc7 add comms_stop() to jni and use it 2013-01-20 21:33:35 -08:00
Eric House
c4df31892e Fix occasional infinite loop of devices sending and receiving the same
message over and over when getting updated by GCM.  The problem
occurred when one device had an un-ACKable initial message still in
its queue.  I call resendAll a lot, which caused that message to get
resent to the other game which then replied without being able to ACK
it so it remained to be sent again.  This would continue until users
moved forward in the game.  The fix is to add a backoff timer to
resendAll() so that it can't loop.  The timer is reset when an ackable
and new message is received, meaning there's been a change in what's
available to resend.  And since users calling resendAll manually
expect it to do something, add a force param that ignores the backoff.
seems to fix the problem (but needs a lot of testing.)
2012-11-13 21:25:03 -08:00
Eric House
ba11fcf8df don't bother checking for stream size of 0 in jni since comms does
that now.
2012-11-13 21:01:25 -08:00
Eric House
60814264e7 compile with XWFEATURE_COMMSACK turned off 2012-11-12 20:56:50 -08:00
Eric House
b40e9b7928 assert non-0 lang code 2012-10-25 07:10:54 -07:00
Eric House
aec03fc572 When a game's consumated and guest discovers it isn't using the same
dict, give chance to switch, and to download if required.  Because of
the way the JNI thread works, and JNI's requirement in general that
env instances match up (e.g. dicts must be destroyed in the same
thread that creates them), substituting into a live game is too hard.
So the game's saved with its new dict and then reloaded.
2012-10-24 07:17:21 -07:00
Eric House
8281bd7f10 call back into java for util_getCurSeconds implementation so java and
C world are sure to be using the same clock.
2012-09-29 19:27:02 -07:00
Eric House
94103a4212 track time of most recent turn start, and include it in summary table. 2012-09-27 06:55:46 -07:00
Eric House
598a154693 factor common code into function 2012-09-19 08:09:27 -07:00
Eric House
75398389b3 Merge branch 'android_branch' into android_dictdb
Conflicts:
	xwords4/android/XWords4/jni/jniutlswrapper.c
2012-09-15 16:36:15 -07:00
Eric House
ee1df7eeb7 replace DeleteLocalRef calls with version that checks for NULL 2012-09-15 15:57:38 -07:00
Eric House
aa974be567 Before figuring md5sum (via java callback added recently), use new
callback to see if there's already one in the DB.  Required passing
context into jniutils getter, and passing name into jni dict
constructors that previously didn't need it.
2012-09-13 07:38:08 -07:00
Eric House
ae2b6205bd use mem_stream_make_sized 2012-09-11 19:17:27 -07:00
Eric House
0ccc2331b5 address bug where message was getting ACK'd by a device that failed to
save what it had ACK'd leaving the game permanently broken.  Do that
by adding a new method game_saveSucceeded() called after the client
claims to have committed bytes returned by game_writeToStream() to
disk.  In that method comms updates the value it'll use in subseqent
ACKs.
2012-09-10 07:31:45 -07:00
Eric House
5a81484cf1 add md5Sum to DictInfo and add a getter 2012-09-08 10:11:18 -07:00
Eric House
145317426d Fix prefix matching to accept letters constituting the first part of a
digraph tile when at the end of a prefix so that e.g. GORIL in Catalan
will list GORIL·LA (rather than nothing since GORIL, ending with the L
tile, is not a prefix.)
2012-08-27 21:50:09 -07:00
Eric House
08aa9b66e8 also load new desc field in android client, and add jni call to retrieve it 2012-08-26 20:59:17 -07:00
Eric House
ec0702d584 initialize buffer that common code will pass to strcat. 2012-08-10 21:31:01 -07:00
Eric House
318cc52f5a we need the base64 stuff even when don't have SMS -- for serialization. 2012-07-07 11:05:45 -07:00
Eric House
6257c14436 include trayVisState in GameStateInfo on the java side 2012-06-05 22:13:58 -07:00
Eric House
0b1a9a67fe add param to server_handleUndo to prevent it from undoing all moves in
robot-vs-robot game, which is the wrong thing to do during a test
simulating play.
2012-05-24 22:25:30 -07:00
Eric House
d846f96ec5 post-code-review cleanup: no significant change 2012-05-09 06:51:06 -07:00
Eric House
fd18d8c95a add boolean param to jni version of comms_resendAll() to ack
afterwards.  Saves some extra jni calls.  Then make comms_ackAny()
separately-useable, and use from BoardActivity after receiving
SMS messages.
2012-04-19 00:03:22 -07:00
Eric House
033a69be8d to make it easier to tell games apart, print the number[s] of the
remote device[s] as part of summary view and in game config screen
(read-only).  Use same field in summaries table for remote phone
numbers and bt addresses.
2012-04-18 23:23:36 -07:00
Eric House
1134f71b7b use new comms_ackAny() call to send ACKs at points where currently
resendAll is being called.  Dramatically reduces SMS message count
when app is being relaunched and backgrounded between turns.
2012-04-14 18:00:43 -07:00