Commit graph

497 commits

Author SHA1 Message Date
Eric House
3b24aab8c3 add new jni call board_containsPt()
for use debugging layouts/orientation changes later
2016-08-15 17:26:10 -07:00
Eric House
8e399ef9b7 assert from java that jni code has an env
Rare crashes are happening inside the jni, in game_dispose(), when a
game's double-disposed. Adding a jni call to check if the thread about
to do a game_dispose() will fail then asserting its result in java
allows useful stack traces to come via Crittercism. Or should.
2016-08-11 16:42:18 -07:00
Eric House
8b142e4a56 use new board_drawSnapshot() from android
BoardCanvas wouldn't render anything without an associated dict via
dictChanged()
2016-08-05 11:51:47 -07:00
Eric House
df6c1e0d3a make beginDraw return a boolean so can abort
When a gtk3 window's shutting down it appears we can't get a cairo_t*
for it. This change makes it possible to turn that fact into aborting
the whole draw operation.
2016-08-04 15:12:05 -07:00
Eric House
33f904fa1e provide no-op implementations of new draw methods 2016-08-04 07:07:52 -07:00
Eric House
d2edbaff37 log more about jni thread mapping 2016-08-04 06:46:34 -07:00
Eric House
5fc6ae5591 only log what's there 2016-07-29 08:02:00 -07:00
Eric House
ec96a00b46 remove compile-time enabling of chat: it's not coming out 2016-07-29 07:32:50 -07:00
Eric House
2b3ddcb431 cleanup thread->env mapping code 2016-07-28 08:52:11 -07:00
Eric House
272f8a3960 don't bother saving if no data loaded yet
Fixes, or at least makes extremely unlikely, race condition where one
thread makes use of an existing JNIThread instance then releases it
before the thread that created it has had a chance to call configure()
to actually load the game.
2016-07-26 07:27:13 -07:00
Eric House
406eb77f54 post notification (rather than just play sound) when turn comes into
boarddelegate but it's not visible
2016-04-14 22:16:18 -07:00
Eric House
589535cdbc Make JNIThread responsible for opening/owning game and other objects
whose lifespan matches its, e.g. the gameptr and gi. This is a big
change, and there are still some bugs/crashes, but it's worth
committing this snapshot.
2016-04-07 12:23:13 -07:00
Eric House
0b7dca2222 store and present chat sender's name instead of the lame "Me"/"Not me"
thing. Requires a new table, and includes code to convert from old
format. Still need to clean up the presentation (TableRow).
2016-03-06 07:03:54 -08:00
Eric House
6e30d77ada pull int (ptr) out of GamePtr inside jni code where it can be done
once instead of at every call site. There's probably a performance
penalty to making bunch of extra calls back into java, but the code's
much cleaner. Will pay attention to performance changes.
2016-02-02 07:50:02 -08:00
Eric House
19713a40ad add param to comms_resendAll to limit type of message sent
(e.g. BT). Meant to be used when a single type has become available.
2016-02-02 07:01:48 -08:00
Eric House
45224a75fa add (disabled) code for case where game ptr wrapper is passed instead
of the ptr itself.
2016-01-31 20:06:45 -08:00
Eric House
9455c0ef26 wrap jni ptr so can detect leaks (failure to call
game_dispose()). There was one that had been undetected for years. The
int is still passed into the jni, and each call site has to pull it
from the wrapper. Better would be to pass the wrapper, but I'm worried
about the performance hit of making a call back into the java world
from every jni entrypoint. Will test....
2016-01-31 19:51:51 -08:00
Eric House
22dde029c8 Merge tag 'android_beta_100' into android_branch
ready for release
2016-01-03 11:36:37 -08:00
Eric House
929141f36d fix compiler warning 2016-01-01 21:13:35 -08:00
Eric House
87517edd6f fix counting of messages sent by "Resend messages" menuitem: actually
count them, and do so based on new msgNo passed from comms that's
concatenation of channelNo and msgID so that duplicates (over multiple
transports) aren't counted twice.
2015-09-30 06:50:04 -07:00
Eric House
389a09ac1a Merge branch 'android_branch' into relay_noconn
Conflicts:
	xwords4/android/XWords4/archive/R.java
	xwords4/android/XWords4/res/values/strings.xml
	xwords4/android/XWords4/res_src/values-ba_CK/strings.xml
	xwords4/android/XWords4/res_src/values-ca_PS/strings.xml
2015-08-13 07:30:55 -07:00
Eric House
3a32d3a17b return count of messages sent from comms_resendAll(), and post it as a
toast so user sees something happened.
2015-08-13 07:05:06 -07:00
Eric House
dea75a815e vary common-code logging tag by variant 2015-08-13 07:02:57 -07:00
Eric House
7824df67f5 copy over VARIANT compile-time flag stuff. Not sure how it got dropped
in this branch.
2015-08-13 06:54:07 -07:00
Eric House
47954f82d0 add index of sending player to chat transmission, and on receiving
side translate that into showing the sender's name in
notification. Not yet done: replacing silly "not me" in chat listing
with same, but now it should be easy.

Conflicts:
	xwords4/android/XWords4/archive/R.java
2015-08-12 07:43:20 -07:00
Eric House
8f7267b3ec add index of sending player to chat transmission, and on receiving
side translate that into showing the sender's name in
notification. Not yet done: replacing silly "not me" in chat listing
with same, but now it should be easy.
2015-08-12 07:36:36 -07:00
Eric House
a612a89ac6 fix variant crashes: had forgotten PKG_PATH on new method 2015-08-03 04:59:15 -07:00
Eric House
b500a4646d use different uuid for dbg variant so it's not cross-sending BT
messages with other variants, causing among other problems spurious
"deleted on other device" warnings.
2015-08-03 04:50:56 -07:00
Eric House
b56924b030 fix off-by-one error that probably had me slowly leaking local obj
references for the last few years.
2015-08-02 16:43:52 -07:00
Eric House
a349ab4bee add commented-out getClassName() in case it's useful in the future. 2015-08-02 16:41:28 -07:00
Eric House
b3ca4ee223 fix off-by-one error that probably had me slowly leaking local obj
references for the last few years.
2015-08-02 16:29:53 -07:00
Eric House
56082d2f7b fix variant crashes: had forgotten PKG_PATH on new method 2015-08-02 16:15:32 -07:00
Eric House
6c863155ef clean up BT UUID assignment, replacing runtime strcmp with compile
time macro magic
2015-07-31 07:35:44 -07:00
Eric House
65606607ab use different uuid for dbg variant so it's not cross-sending BT
messages with other variants, causing among other problems spurious
"deleted on other device" warnings.
2015-07-29 19:48:56 -07:00
Eric House
dad39eedde Remove devID from comms address. It's not needed yet, may never be,
and I don't want to store it until it is.
2015-07-22 06:16:29 -07:00
Eric House
eebf27d051 fix warning 2015-07-11 16:25:01 -07:00
Eric House
587f3b7630 export comms_formatRelayID via jni. 2015-07-11 14:25:16 -07:00
Eric House
8c72866b03 remove old compile-command 2015-07-11 10:27:02 -07:00
Eric House
1423bc933d rename common file and methods for consistency with android. No logic
change.
2015-07-11 08:40:49 -07:00
Eric House
b5ae54f313 use common/native NetLaunchInfo to implement invite-via-relay that
works between linux and Android clients. Required renaming so struct
names and names of fields within match in c and java code. The point
is to test this as the foundation of rematch: now you have to type in
a deviceID in order to invite, which clearly sucks for users. Either
that goes away, or it's replaced with something that scans existing
games and lists past opponents as possible invitees.
2015-07-10 23:19:38 -07:00
Eric House
d4bfaca127 cleanup: mostly removing logging and wrapping rematch code in an
if(false) so it goes away.
2015-06-14 22:39:47 -07:00
Eric House
6a36c1252d fix assert that wasn't asserting anything 2015-06-14 19:39:51 -07:00
Eric House
e66260950e change final score formatting so it can be properly localized.
Note: because the substitution is done in common code I can't use the
positional specifiers (%1$s vs %s) and so this breaks the generated
"translations". The scripts that do the generation need to be fixed to
understand the formatted="false" attribute.
2015-05-13 07:51:32 -07:00
Eric House
16e3ef9246 assert I've got the plurals vs singular strings right 2015-03-24 07:33:24 -07:00
Eric House
36839ac82b fix so multiple strings can be cached per id to support <plurals>
strings crossing jni boundary.
2015-03-19 23:03:15 -07:00
Eric House
5f33d99c2e toward making full use of getQuantityString(): add util method to pass
quantity through to java world, use it, convert English <string>
resources to <plurals> (using python script) based on parallel changes
in French, and modify callsites to call getQuantityString() where
R.string.xxx became R.plurals.xxx.
2015-03-18 21:23:30 -07:00
Eric House
3e27721ca4 cleanup 2015-02-26 21:35:45 -08:00
Eric House
f2f5fb22e6 use new comms header to transmit isServer bit 2015-02-23 18:28:31 -08:00
Eric House
ad6be1bb7e add debug-only "tag" to open games so logging can more easily track
what's going on when multiple participants in a single game are on the
same device. But for a couple of strings passed into the jni the
changes are only in DEBUG code.
2015-02-09 19:15:43 -08:00
Eric House
aa77413116 remove logging 2015-02-08 18:35:34 -08:00