Commit graph

8064 commits

Author SHA1 Message Date
Eric House
9cfc6be82c fix for when wordlist not found 2013-05-02 06:52:12 -07:00
Eric House
5a026ffda3 merge android_wordlists (local branch) 2013-05-01 06:39:31 -07:00
Eric House
c31a1d98df update changes list 2013-05-01 06:33:22 -07:00
Eric House
4e2f5b3b14 add (commented-out) debug function to print list of extras in an intent 2013-05-01 06:26:02 -07:00
Eric House
a62f9d4097 Fix but with missing-dict SMS invites: add missing intent extra. 2013-04-30 21:20:59 -07:00
Eric House
c8f447171a Stop SMS service if play via SMS is disabled by user 2013-04-29 07:40:42 -07:00
Eric House
e4eb867717 add new flag bit to built-in wordlists 2013-04-20 19:46:52 -07:00
Eric House
541fc546ab remove that bit from flags -- since we already do the right thing for it. 2013-04-20 19:46:35 -07:00
Eric House
519ba71e87 add new bit indicating that wordlist has synonyms 2013-04-20 19:45:54 -07:00
Eric House
87e21cd204 fix type in English string 2013-04-18 19:46:12 -07:00
Eric House
81ce47fe5e Add Brazilian Portuguese translation. 2013-04-18 19:44:52 -07:00
Eric House
bc1c8d0769 add variants of multi-letter "specials" that mix case 2013-04-18 19:42:02 -07:00
Eric House
75d11d7d95 Revert "First cut at Brazilian Portuguese localization, unmodified from what"
This reverts commit 6b43d29ff1.

Belongs on the main branch as it won't be part of the next beta.
2013-04-18 19:24:19 -07:00
Eric House
dbc8605d1d remove removed change from changelist 2013-04-18 19:19:41 -07:00
Eric House
0d260155ee Revert "On some devices a downloaded wordlist shows up twice, once in Internal"
This reverts commit 685971532a.

No way to test this right now....
2013-04-18 19:12:49 -07:00
Eric House
e4f52c5678 add assert and comment explaining why non-utf-8-aware hack is safe. 2013-04-18 07:15:14 -07:00
Eric House
cdcfef4e18 fix type in English string 2013-04-17 20:03:14 -07:00
Eric House
6b43d29ff1 First cut at Brazilian Portuguese localization, unmodified from what
the translator provided.
2013-04-17 19:59:41 -07:00
Eric House
7288e8c6dc up version/changes for next release 2013-04-16 07:14:03 -07:00
Eric House
685971532a On some devices a downloaded wordlist shows up twice, once in Internal
and again in Downloads.  I assume that's because the two directories
are the same, so fix by tracking directories that have been checked
and not checking the same twice.
2013-04-16 06:56:53 -07:00
Eric House
1614ebd551 new versions of builtin English wordlists with lowercase synonyms for all
letters ('a' for 'A', etc.)
2013-04-14 15:54:39 -07:00
Eric House
c8332a9665 load synonyms for specials correctly. So now Catalan works: wordlists
load, and search for "l-l" will find "L·L".
2013-04-14 15:45:23 -07:00
Eric House
cae631eeb0 handle synonyms in non-special tiles for Android: wordlists load and
display, and searching using lower case works.  Specials (e.g. Catalan
changes) not yet supported.
2013-04-14 11:58:11 -07:00
Eric House
2873d08974 fix memory leak 2013-04-13 16:49:20 -07:00
Eric House
195e6bfad3 add option to dump an .xwd file, meant to replace dawg2dict.pl which
is becoming a pain to maintain.
2013-04-09 21:10:40 -07:00
Eric House
5912b76cb8 add option to dump an .xwd file, meant to replace dawg2dict.pl which
is becoming a pain to maintain.
2013-04-09 21:05:35 -07:00
Eric House
07cfdad699 fix to support synonyms within specials too -- for linux only so far.
Seems to work, though the dawg2dict.pl script is broken.
2013-04-09 07:43:04 -07:00
Eric House
3a628f4375 load new-format dict into linux client, display default faces
correctly, and search using alternate as well as default faces.  Next:
support for alternate specials.
2013-04-06 11:43:57 -07:00
Eric House
03f175dd8f handle new format for tile face 'A|a', meaning "A" or "a", as far as
being able to compile a wordlist and take it apart using dawg2dict.
None of the compiled clients can handle this format yet.
2013-04-06 10:28:22 -07:00
Eric House
a9d94e2977 list changes for b59 2013-04-06 08:24:30 -07:00
Eric House
43f4e802b6 up copyright year -- it's 2013 now 2013-04-06 08:18:27 -07:00
Eric House
388d37e4ee deal with more than one connected device/emulator 2013-04-06 08:16:57 -07:00
Eric House
51d72447c6 fix crash when wordlist winds up in downloads dir (for reasons I don't
understand: I can't reproduce the crash but for at least one
correspondent it happens every time.)
2013-04-06 08:05:39 -07:00
Eric House
86b39b8340 up version strings and number 2013-04-06 08:04:05 -07:00
Eric House
567cd2913a Merge remote-tracking branch 'origin/android_branch' into android_branch 2013-04-06 05:32:10 -07:00
Eric House
cc7220fa85 first cut at makefile for new Brazillian Portugese wordlist 2013-04-04 07:18:36 -07:00
Eric House
bd1a909321 assert, in debug-only code, that saved moves alternate between players
and are ordered.  I've seen games in the wild with three moves in a
row by the same player and want to catch this in testing.
2013-03-01 07:49:26 -08:00
Eric House
2bfda1b56d function to print StackMoveType 2013-02-22 21:34:53 -08:00
Eric House
168ebeeb5b fix variable name misspelling 2013-02-22 21:10:46 -08:00
Eric House
7c937fd763 improve script a bit 2013-02-12 07:37:44 -08:00
Eric House
40470b491e update note for new version 2013-02-12 07:08:21 -08:00
Eric House
eafac8724e don't stop processing message referring to multiple games as soon as
one of them can't be found.
2013-02-08 20:58:09 -08:00
Eric House
6a1b86380e add missing files from gtk_multigame branch -- to fix broken compile 2013-02-04 21:33:35 -08:00
Eric House
5e0fd89c9e update with all relay/ changes from gtk_multigame. This is what the
live relay's running anyway.
2013-02-04 06:08:39 -08:00
Eric House
a18fb62b0f fix dialog not having custom OK button by not ignoring the param passed in. 2013-01-31 06:59:42 -08:00
Eric House
bf479c4334 Merge branch 'android_branch' into gtk_multigame 2013-01-30 08:03:48 -08:00
Eric House
660efa6380 rename script to be easier to type 2013-01-30 08:03:13 -08:00
Eric House
66a00bd76e make DlgState Parcelable rather than Serializable to work around what
seems to be a bug in the Blaze's OS.  (Requires that it be a
standalone class.)
2013-01-30 07:58:37 -08:00
Eric House
5e7fd39d66 always remove dialog state so we don't get confused 2013-01-29 21:59:42 -08:00
Eric House
0dc3856250 set initial rowID based on clock to avoid duplicates after an
uninstall/reinstall.
2013-01-29 19:02:53 -08:00
Eric House
d154efa441 rowid needs to be autoincrement to be useful as a token with new relay
protocol.  And you can't make it autoincrement except when creating a
table.  So add new column set equal to current rowid, then create a
new table and copy the old data into it.
2013-01-29 19:01:00 -08:00
Eric House
cdd40b0782 Merge remote-tracking branch 'origin/android_branch' into android_branch 2013-01-29 18:57:38 -08:00
Eric House
d88f66a890 record experiment with serialization -- no code change. 2013-01-29 18:57:03 -08:00
Eric House
d5842e79c2 use the new ANON devid type 2013-01-29 18:36:19 -08:00
Eric House
2cfa56c2d8 update to not require incomplete gcm module 2013-01-29 18:34:33 -08:00
Eric House
f3a063698c set initial rowID based on clock to avoid duplicates after an
uninstall/reinstall.
2013-01-29 08:01:14 -08:00
Eric House
c75ecef240 test deletion of games and generation of anonymous relayIDs 2013-01-29 07:42:10 -08:00
Eric House
9ee16adc3a add support for udp-based delete and anonymous (relay-provided) regIDs 2013-01-29 07:38:07 -08:00
Eric House
72e100ccac use autoincrement primary key, same as on Android 2013-01-28 07:02:33 -08:00
Eric House
d78a4979da HACK: if gi's notion of gameID is out of sync, force it in (logging
the fact).  I'm not sure why but this is required sometimes on
Android.
2013-01-28 07:01:49 -08:00
Eric House
339ec66844 Merge remote-tracking branch 'origin/gtk_multigame' into gtk_multigame 2013-01-28 06:53:17 -08:00
Eric House
3e723c72c5 call comms_stop() before closing (removing from memory) a game. 2013-01-28 06:52:32 -08:00
Eric House
1546b15997 rowid needs to be autoincrement to be useful as a token with new relay
protocol.  And you can't make it autoincrement except when creating a
table.  So add new column set equal to current rowid, then create a
new table and copy the old data into it.
2013-01-28 06:51:39 -08:00
Eric House
d1621c8d4b track and log all packetIDs and acks, including number (but not type)
of unacked packets.
2013-01-27 21:29:36 -08:00
Eric House
4aee75aeab ack all packets from clients; log acks. This is for debugging and may
not need to stay.
2013-01-27 21:26:27 -08:00
Eric House
302ac9d55c script to list who's attached to the db 2013-01-27 08:30:02 -08:00
Eric House
82dc986c79 remove bad asserts and unused variable 2013-01-26 21:49:17 -08:00
Eric House
cc69901632 reset to null in loop in case exit due to exceeding retry count 2013-01-26 21:17:46 -08:00
Eric House
a9b459ea2e log rather than assert 2013-01-26 21:16:48 -08:00
Eric House
06bc80fcc9 let's make 1 the default number of threads 2013-01-26 20:59:27 -08:00
Eric House
cba04e4b95 Merge branch 'android_branch' into gtk_multigame
Conflicts:
	xwords4/relay/xwrelay.cpp
2013-01-26 20:20:54 -08:00
Eric House
3be45a67f7 fix erroneous asserts: it's uncommon but ok for a device to get
assigne a second connname.  (Cause: failure of relay to receive the
device's ACK.)
2013-01-26 18:56:53 -08:00
Eric House
2fdcea54f5 fix logging of sockets 2013-01-26 18:55:55 -08:00
Eric House
7ecf57c556 increase size of buffer for incoming proxy packets, since now that I
have 50+ saved network games requests for moves are that big.  (This
is a temporary fix.)
2013-01-26 18:48:57 -08:00
Eric House
4b335ab464 make function static 2013-01-26 18:36:40 -08:00
Eric House
b324a382e2 I've seen read() return 0 after being told there's something on the
socket.  So in that case loop and try again five time -- in case the
docs are wrong that 0 means EOF?  Hmmm.
2013-01-26 11:58:48 -08:00
Eric House
88b20769f9 increase buffer size 2013-01-26 11:56:29 -08:00
Eric House
2aba3c0ce1 load dict early enough to have lang available to comms when it first connects. 2013-01-26 11:56:20 -08:00
Eric House
336e3cd289 handle all three types of message in a single thread, punting all
synchronization issues to a future point where the load demands it.
2013-01-26 11:54:48 -08:00
Eric House
9e1d09648d fix log statement 2013-01-26 11:04:20 -08:00
Eric House
8cb0a8a7a7 fix crash on startup (as done already on gtk branch) 2013-01-26 09:23:44 -08:00
Eric House
7ee402d2ae move callback into queueelem so same queue can service udp and tcp (eventually) 2013-01-25 07:19:44 -08:00
Eric House
4417591b06 debug pref to disable GCM so new stuff can be tested on-device 2013-01-25 07:17:00 -08:00
Eric House
83441c65ef debug pref to disable GCM so new stuff can be tested on-device 2013-01-25 07:16:38 -08:00
Eric House
f91af77438 always try starting UDP threads in case Service has been stopped;
implement transportSend in RelayMsgSink since relay-connection packets
need it.
2013-01-25 06:22:37 -08:00
Eric House
c8b3050c8d fix duplicate key that was getting lots of extra games created 2013-01-25 06:20:32 -08:00
Eric House
23b7e5a2eb fix syntax error in query 2013-01-24 21:11:15 -08:00
Eric House
2e0ff09cf9 fix memory leak and uninstall idle proc on the way out 2013-01-24 21:10:41 -08:00
Eric House
af58e7c4e1 comment 2013-01-24 20:27:56 -08:00
Eric House
084643ca82 don't include dead-game messages when fetching for devices 2013-01-24 20:27:36 -08:00
Eric House
7253cfa313 assert that map.insert() is actually doing something in those cases
where I expect it to.
2013-01-24 19:34:20 -08:00
Eric House
036c908b72 remove token from XWPDEV_HAVEMSGS message 2013-01-24 19:33:33 -08:00
Eric House
5f2d628855 update protocol description 2013-01-24 19:33:02 -08:00
Eric House
55c117c9fc fix assert by nulling out variable 2013-01-24 19:25:32 -08:00
Eric House
481e50aaae don't bother pushing do-we-ack decision out of static method 2013-01-24 19:23:05 -08:00
Eric House
498498a2bf remove gameToken param from XWPDEV_HAVEMSGS message since it's for the
whole device rather than one game on it.
2013-01-24 19:20:35 -08:00
Eric House
0fad19e38a make it possible to mix udp and non-udp games (which currently crashes the relay very rarely) 2013-01-24 18:56:10 -08:00
Eric House
481f344ff4 fix failure to clean up on exit 2013-01-24 08:08:53 -08:00
Eric House
cbb82eb5e8 add --via-udp option -- which causes app to crash because the memory
leak detector is working
2013-01-24 08:00:53 -08:00
Eric House
9f3250cb3f make curses version use udp socket when --db param passed. There's no
UI for the DB and the assumption is only one game will be stored but
this should let the test script be modified to test the new protocol.
2013-01-24 07:49:49 -08:00
Eric House
c465a0bb0c add loop to print when packets haven't been ack'd 2013-01-24 07:43:24 -08:00
Eric House
da4d841220 use per-device UDP rather than per-board TCP to communicate with
relay, including latest UDP protocol and acking changes.  Basically
works (in emulator at least) but there are problems especially with
initial game creation.
2013-01-23 07:46:13 -08:00
Eric House
12f70154a0 changes for includes-messageID-please-ack protocol addition 2013-01-23 07:43:58 -08:00
Eric House
ce7cdab3f0 add msgid and acking to protocol -- maybe for debugging only. 2013-01-23 07:40:52 -08:00
Eric House
ff70e3fbc2 fix use of map.insert: check for existing key and overwrite value 2013-01-23 07:35:20 -08:00
Eric House
a3e4e31205 remove logging 2013-01-23 07:28:25 -08:00
Eric House
8c0984fb7a Merge remote-tracking branch 'origin/gtk_multigame' into gtk_multigame 2013-01-22 06:54:42 -08:00
Eric House
2d7977e4b5 fix test: unset TEXT column returns as "", not NULL. 2013-01-22 06:52:50 -08:00
Eric House
c839db4a25 disconnect from relay no matter what the state 2013-01-22 06:12:55 -08:00
Eric House
29acab1ef2 tweak display 2013-01-21 19:44:08 -08:00
Eric House
90b8f966f6 comment out unnecessary assert 2013-01-21 19:40:56 -08:00
Eric House
2744e8698c optionally (compile-time change for now) store message data as
b64-encoded TEXT instead of BYTEA, which on my laptop is getting
corrupted sometimes.
2013-01-21 19:40:20 -08:00
Eric House
d374d0f3d8 optionally (compile-time change for now) store message data as
b64-encoded TEXT instead of BYTEA, which on my laptop is getting
corrupted sometimes.
2013-01-21 19:39:57 -08:00
Eric House
ae9ec31863 don't call g_main_loop_quit() from inside signal handler: it doesn't
work on Ubuntu LTS at least.  Instead write to a "quit pipe" and exit
the loop from the pipe's reader back outside exception context.
2013-01-21 18:57:48 -08:00
Eric House
a6b3cb8cbe add new param JNIThread requires 2013-01-20 21:34:28 -08:00
Eric House
de7c29dcc7 add comms_stop() to jni and use it 2013-01-20 21:33:35 -08:00
Eric House
132a495c4f add explanatory comment 2013-01-20 21:32:19 -08:00
Eric House
991cc8f04c fail in main mode if udp socket not set 2013-01-20 21:03:43 -08:00
Eric House
e79b0bd3eb Merge branch 'gtk_multigame' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into gtk_multigame 2013-01-20 19:27:50 -08:00
Eric House
21570ec9b4 Merge remote-tracking branch 'origin/android_branch' into gtk_multigame 2013-01-20 19:27:25 -08:00
Eric House
3df0484e6a get maintenance mode message into an alert -- and create a new common
superclass for Service subclasses to reuse some code.
2013-01-20 16:07:38 -08:00
Eric House
fd2f4309f4 beginning of android changes to talk udp to the relay: sufficient to
get back (and log, not display) a message when the relay is in
maintenance mode.
2013-01-20 15:29:51 -08:00
Eric House
93ff4f4fcb handle the new length-plus-string format 2013-01-20 13:07:01 -08:00
Eric House
016b16a8b2 change relay alert message format to length-plus-string rather than
null-terminated for easier handling on the java end.
2013-01-20 13:06:34 -08:00
Eric House
3fc31a6fe1 new enum for alert 2013-01-20 10:04:24 -08:00
Eric House
9023440a88 reply with alert to any connection attempt when in maint mode 2013-01-20 10:03:20 -08:00
Eric House
f06d129c24 change env variable name; provided inital board size and dict choices 2013-01-20 09:53:26 -08:00
Eric House
b768d8fccc fall through to using hard-coded maxsocks value 2013-01-20 09:22:35 -08:00
Eric House
3dfb2e04e6 call comms_close in curses too to avoid new assert 2013-01-19 22:53:25 -08:00
Eric House
3313c776ab fix unregister sql error 2013-01-19 22:37:12 -08:00
Eric House
3bcf5d504b add a debug pref for turning on UDP-based networking (ignored so far) 2013-01-19 16:03:29 -08:00
Eric House
360602b3a0 fix compile failure: never meant to check this change in. 2013-01-19 16:02:58 -08:00
Eric House
6797e069bc Merge branch 'android_branch' into gtk_multigame 2013-01-19 15:56:16 -08:00
Eric House
54ad381749 Merge remote-tracking branch 'origin/android_branch' into android_branch 2013-01-19 15:54:40 -08:00
Eric House
0ef3549a4e handle (display) the relay's new error message 2013-01-19 15:18:36 -08:00
Eric House
65e9789c3f add mainentance mode, triggered by a commandline flag, that does
nothing but loop waiting for connections on the UDP socket and sending
them back the error message provided on the commandline.
2013-01-19 15:17:51 -08:00
Eric House
1bb9f9b1bf handle sending of messages generated by games opened only to receive
messages from relay.  And handle report that relayID is bad.
2013-01-19 14:37:49 -08:00
Eric House
63d3f70cdf more changes to storage and fetching of messages and to protocol so
presence of messages is reported on connect (as are bad relayIDs).
Now a game with a robot player in a "closed" game can continue.  Once
the next set of linux-side chances is committed.
2013-01-19 14:34:04 -08:00
Eric House
99307e45a0 queue incoming packets and process them in order in a separate thread 2013-01-18 19:56:21 -08:00
Eric House
1519a00004 toward being able to handle messages received for closed game.
Receipt seems to work but send in that state doesn't.
2013-01-18 07:49:00 -08:00
Eric House
c999bbae92 always test those last-minute pre-checkin cleanups 2013-01-18 07:22:56 -08:00
Eric House
3984d85795 oops -- prev checkin didn't compile 2013-01-18 07:12:26 -08:00
Eric House
1c5fef6a38 relay improvements for UDP connection: record addresses, prepare to
run in separate thread, etc.
2013-01-18 07:10:47 -08:00
Eric House
932778f700 stubbed-out thread manager for udp connection 2013-01-18 06:57:57 -08:00
Eric House
4163309dae Let's have just one set of signal handlers 2013-01-17 06:37:53 -08:00
Eric House
2f772c56b2 make gtk app a better test bed: add db and row to window titles,
implement delete button and multiple selections, etc.
2013-01-16 21:16:07 -08:00
Eric House
c33c50ee6b add deleteGame() 2013-01-16 21:11:35 -08:00
Eric House
a6784464ff first set of networking changes testing per-device communication with
relay on behalf of a number of games.  Works as long as all the games
are open.
2013-01-16 06:46:33 -08:00
Eric House
f6e7ece578 add comms_stop() and an assert to make sure it's called. Explicit
stop and a message to the relay when using a UDP socket makes up for
there being no notification of connection closing.
2013-01-16 06:31:09 -08:00
Eric House
a107365c88 change names of two types and variables of that type to make a common
pattern more sensible.  No code changes.
2013-01-15 19:04:20 -08:00
Eric House
7fec736947 add udp socket and protocol for use over it so that a device can
manage a single connection to the relay for all of its games.  Works
so far to the extent that the game's playable with all boards on the
same device (with checkins about to come) as long as all boards are
open.  (Client doesn't handle opening closed games yet.)
2013-01-15 18:41:17 -08:00
Eric House
5a51af489a Merge branch 'android_branch' into gtk_multigame 2013-01-13 10:41:14 -08:00
Eric House
dc0cfdf001 bug in recent changes: need to mark socket unused to avoid double removal 2013-01-13 10:37:47 -08:00
Eric House
98679c8363 cleanup: better encapsulation for AddrInfo 2013-01-13 10:14:06 -08:00
Eric House
c567647a8d get rid of mapping of socket->game_connection, which will not work
once UDP sockets and/or per-device (not per-game) connections come
along.  Lots of changes, most not involving code flow but a couple
that did.  So far two gtk games can connect and exchange moves.
Haven't tested reconnection or store-and-forward.
2013-01-12 16:09:24 -08:00
Eric House
33735ae7a5 Merge branch 'android_branch' into gtk_multigame 2013-01-11 20:48:44 -08:00
Eric House
b46df07237 Merge remote branch 'origin/android_branch' into android_branch 2013-01-11 20:48:04 -08:00
Eric House
6dcd7022d4 don't pass .css file in; it's ignored 2013-01-11 20:42:57 -08:00
Eric House
55514719be include thread ptr in hung threads logging; assert (restart) when hung for too long 2013-01-11 20:42:04 -08:00
Eric House
39d12d088a use usleep when waiting for cref to be available 2013-01-11 20:37:08 -08:00
Eric House
aed2b6135c Merge branch 'android_branch' into gtk_multigame 2013-01-10 21:10:48 -08:00
Eric House
2ccc297463 make number of sockets at which we assert/reboot configurable so tests
can be done with large numbers of clients.
2013-01-10 21:10:18 -08:00
Eric House
dddb135b9d add more columns, and update each time game is saved 2013-01-09 06:30:52 -08:00
Eric House
7437a71aa6 use string_printf 2013-01-09 06:29:12 -08:00
Eric House
fac3e6b678 fix gtk version to correctly implement util_setIsServer (which only
Android did so far) by calling server_initClientConnection().  Now
relay games work with both started as hosts.  (GTK UI prevents
starting one as a guest; cmdline is required for that, if it still
works.)
2013-01-08 07:28:30 -08:00
Eric House
5e2bfd20da add a checkbox -- which apparently won't interact until I "implement
the 'activate' virtual method".
2013-01-08 06:32:43 -08:00
Eric House
1cb959c86d type tree model column correctly 2013-01-07 20:51:59 -08:00
Eric House
76f3bb3413 fix curses version so discon_ok2 tests work again. 2013-01-07 20:40:46 -08:00
Eric House
565b742971 snapshot -- connects to relay but doesn't play yet. 2013-01-07 08:00:47 -08:00
Eric House
469e656464 track open games so don't double-open and can close all on quit 2013-01-07 06:36:34 -08:00
Eric House
f88387da80 lots of changes to separate game data from app data so several games
can be open at once.  (curses version is almost certainly broken)
2013-01-07 06:10:44 -08:00
Eric House
b61ed7b631 opening saved games and saving of changes now work. 2013-01-05 21:01:26 -08:00
Eric House
a8014a855b now games are displayed in lists. Next: open them. 2013-01-05 19:40:29 -08:00
Eric House
8238d45350 ignore the db 2013-01-05 19:37:05 -08:00
Eric House
e0dc83ed70 rest of what I just meant to commit. 2013-01-05 16:08:47 -08:00
Eric House
4af30c534c snapshot. New game button works and game gets saved in DB. Next: display and open from DB. 2013-01-05 16:08:19 -08:00
Eric House
63487dc5d0 assert gdk setup going ok 2013-01-03 08:18:35 -08:00
Eric House
f827bebf80 ignore .pyc file 2013-01-02 21:13:36 -08:00
Eric House
ad78129e74 changes made over the past couple of months toward tracking an
apparent thread leak.
2013-01-02 21:12:42 -08:00
Eric House
d34ac1f86d rewrite to work without gcm library (whose lack of support for some
documented params makes it impossible to try using them)
2013-01-02 21:08:10 -08:00
Eric House
f5b8bb7aae fix text to match there being multiple buttons 2013-01-01 23:26:31 -08:00
Eric House
2202c6c6bf up version strings and number 2013-01-01 22:33:31 -08:00
Eric House
c97ec6b1e9 up copyright year -- it's 2013 now 2013-01-01 22:33:19 -08:00
Eric House
05cee5ce09 further work supporting simultaneous dialogs: use
bundle.get/putSerializable() to save/restore dialog state
2013-01-01 22:27:14 -08:00
Eric House
af406d92dc Handle multiple dialogs at once: save dialog state by dialog ID (ok
since the OS won't track more than one at a time with the same ID) and
look it up that way when needed.  Get rid of onPrepareDialog() (and in
all my Activity subclasses) since it's now a requirement that all
DlgDelegate-managed dialogs remove themselves from the Activity on
dismissal so that onCreateDialog will always get called and
onPrepareDialog not be needed.
2013-01-01 21:45:37 -08:00
Eric House
8b2712bd9e always remove dialog on dismissal since each must have its on-dismiss
handler called with its own state.  Fixes assertion failure that was
happening the second time a dialog was used.  Next: find a
reproducible case where two dialogs want to be created at the same
time.
2012-12-31 07:08:41 -08:00
Eric House
d1941090c5 Merge branch 'android_branch' into fix_dlgdelegate 2012-12-31 06:25:49 -08:00
Eric House
049b3389a6 turn DEBUG back on 2012-12-29 18:49:13 -08:00
Eric House
bbf9e8e0df tweaks suggested by code review 2012-12-29 13:22:00 -08:00
Eric House
1faf60f667 move updateRow back where it was (prior to some merge); no code change 2012-12-29 12:50:02 -08:00
Eric House
90adcde164 move side padding around 2012-12-29 12:42:48 -08:00
Eric House
04a7f9c999 tweak text; fix misspelling 2012-12-29 12:30:01 -08:00
Eric House
05566b1833 add space before ) to protect against buggy email url parsers. 2012-12-29 12:24:13 -08:00
Eric House
e58e520f70 fix name/rename group dialog title 2012-12-29 11:53:18 -08:00
Eric House
498ca99020 deal with added groups too, and better with removed groups. 2012-12-29 11:36:51 -08:00
Eric House
8c4b878e21 preserve order of groups when removing one by removing it from list
rather than allowing list to be regenerated.
2012-12-29 09:35:44 -08:00
Eric House
674b6d3e8e don't let new group dialog present the last name chosen as default name 2012-12-29 09:18:17 -08:00
Eric House
78670e9650 fix bug: include wordlist name in bad word info passed into util function 2012-12-29 07:48:31 -08:00
Eric House
ad2b925a60 print wordlist name as part of error message 2012-12-29 07:47:44 -08:00
Eric House
ff3af7f095 add xml-non-strippable space between sentences 2012-12-29 07:47:12 -08:00
Eric House
c994b27c04 try grey background and italic text for list group views 2012-12-28 20:01:13 -08:00
Eric House
4d07046a99 make static GamesListItem method responsible for providing new instances. 2012-12-28 20:00:46 -08:00
Eric House
21e572acfc Revert "use WeakReference to cache GameListItems and to inval them"
(Reusing Views this way seems to cause the occasional failure to recognize a tap-on-item bug.)

This reverts commit edd712ac16.
2012-12-28 10:06:16 -08:00
Eric House
edd712ac16 use WeakReference to cache GameListItems and to inval them 2012-12-28 09:50:33 -08:00
Eric House
fb575949ac order games within group the same way all games used to be ordered,
and get rid of the old all-games-listing code since it's no longer
used.
2012-12-27 20:50:37 -08:00
Eric House
a6586b6131 docs say not to call cursor.close -- so don't. 2012-12-27 20:38:31 -08:00
Eric House
8bba5d6106 Revert "add POSITION column to groups table, unused as yet"
This reverts commit 7be6a182f0.
2012-12-26 19:35:21 -08:00
Eric House
68026fef3e disable (but don't hide) group context menus that can't do anything. 2012-12-26 19:31:24 -08:00
Eric House
0d9f1a3ba7 add move-up and move-down menuitems so group order can be controlled
by user.  Store position as array of rowids in preferences, and make
game info hashed by rowid rather than name.
2012-12-26 18:55:15 -08:00
Eric House
0a7fcb2de4 remove deleteAll menuitem 2012-12-22 23:21:01 -08:00
Eric House
7be6a182f0 add POSITION column to groups table, unused as yet 2012-12-22 22:59:08 -08:00
Eric House
3ce379588b indent game list items to make them easier to tell from group items 2012-12-22 22:54:10 -08:00
Eric House
110df3c1ba Merge branch 'android_branch' into fix_dlgdelegate 2012-12-21 23:03:22 -08:00
Eric House
a594a77673 Merge branch 'android_branch' into android_groups 2012-12-21 18:06:48 -08:00
Eric House
2461b526a5 move check for updates into async task 2012-12-21 18:06:27 -08:00
Eric House
e8c3c304ab Fix so when child is invalidated its group/parent also is. Now when
an invisible child gets a network game message that changes its expiry
rendering and it's the one the group is showing, the group will follow.
2012-12-21 17:31:37 -08:00
Eric House
3436a71d65 new string for dialog title (forgot this last checkin) 2012-12-21 17:29:44 -08:00
Eric House
d33f44ea24 Merge branch 'android_branch' into android_groups 2012-12-21 17:15:30 -08:00
Eric House
1998da45de don't save game when it hasn't changed -- when saved bytes are
identical with those we started with.
2012-12-21 17:14:55 -08:00
Eric House
2375f86f61 improve move-to-group dialog: add title and disabled Move button when
radio is current group.
2012-12-21 17:06:04 -08:00
Eric House
a3b24be661 clear background drawable when no longer a local turn 2012-12-21 06:20:58 -08:00
Eric House
1743382e1f cleanup: combine files that belong together 2012-12-20 21:55:57 -08:00
Eric House
db829337f5 up version strings etc. 2012-12-20 21:51:38 -08:00
Eric House
7f9898f317 don't include expiry in group header when expanded 2012-12-19 20:49:02 -08:00
Eric House
ed0bb5b31e minimum to get game list group headers reflecting the most urgent move
expiry info of a contained game: local if there is one, otherwise
remote.  Still need to hide it when expanded, update, etc.
2012-12-19 20:45:58 -08:00
Eric House
7e302aae69 always show game count 2012-12-18 07:57:14 -08:00
Eric House
6690fdf122 derive from XWExpandableListActivity since it exists now 2012-12-18 07:56:48 -08:00
Eric House
9cbd76aae7 more cleanup; log info toward reuse of list items (looks unlikely) 2012-12-18 07:40:48 -08:00
Eric House
d583ec139d move all existing games into the curGames group 2012-12-18 07:08:57 -08:00
Eric House
24bddd1ff7 cleanup 2012-12-18 06:52:13 -08:00
Eric House
983a560294 expand groups in onCreate() 2012-12-18 06:51:43 -08:00
Eric House
3a1b39f827 more of the (conflicted) merge from android_branch. These may be
changes I need to make to get what git produced to compile and so not
what it included in the previous commit.
2012-12-18 06:36:30 -08:00
Eric House
8a58492389 Merge branch 'android_branch' into android_groups
Conflicts:
	xwords4/android/XWords4/res/values/strings.xml
	xwords4/android/XWords4/src/org/eehouse/android/xw4/DBUtils.java
	xwords4/android/XWords4/src/org/eehouse/android/xw4/GameListAdapter.java
	xwords4/android/XWords4/src/org/eehouse/android/xw4/GamesList.java
	xwords4/android/XWords4/src/org/eehouse/android/xw4/XWApp.java
2012-12-18 06:35:07 -08:00
Eric House
8cb9d3d66b turn debug back on 2012-12-18 05:56:14 -08:00
Eric House
6988b14247 no need for redraw in onWindowFocusChanged 2012-12-18 05:40:25 -08:00
Eric House
9d7d0aca2b cleanup: logging and unused imports 2012-12-16 20:14:15 -08:00
Eric House
60adf36718 fix typo 2012-12-16 15:14:33 -08:00
Eric House
e38b99c0c8 set DEBUG to false for release 2012-12-16 15:14:04 -08:00
Eric House
51a5e80a26 mention attachment in invite email text 2012-12-16 15:13:36 -08:00
Eric House
3c4f266b8f work around problems locating GameListItems when it's time to
invalidate them by adding static list of those needing invalidating
and checking it in a new onDraw override.
2012-12-14 18:46:54 -08:00
Eric House
646ec65d66 wrap elapsed time logging in its own debug flag and turn off. 2012-12-14 18:23:33 -08:00
Eric House
8125c451cd in GamesList, save rowid of launched game and inval it afterwards so
scores etc. get updated.
2012-12-14 07:26:13 -08:00
Eric House
028899a9c4 no need to set action on local intent 2012-12-14 07:24:26 -08:00
Eric House
322a65ee41 in several places where lock() was being called without a timeout, add
one, and fail gracefully when a timeout occurs.
2012-12-13 20:22:11 -08:00
Eric House
7a1de73fb7 remove unused file 2012-12-13 20:18:36 -08:00
Eric House
85953c64dd move GameLock into its own file 2012-12-13 18:47:55 -08:00
Eric House
f989dad63c tweak changed descriptions 2012-12-13 07:11:51 -08:00
Eric House
6060d5e8bd Fix hangs when receiving relay messages in background for open game by
adding a static feedMessages method like the one used by SMS and BT
games.  For that to work, rowid and relayid need to be fetched and
tracked together -- so do that in RelayService.
2012-12-13 06:57:12 -08:00
Eric House
91ac04b896 remove logging 2012-12-13 06:32:57 -08:00
Eric House
b71046e5aa lock, rather than tryLock, game when feeding it messages. Otherwise
messages are dropped e.g. when UI's loading a summary in GameListItem.
2012-12-12 07:13:25 -08:00
Eric House
db8364c285 return empty array rather than null when query succeeds but produces
no result.
2012-12-12 06:43:18 -08:00
Eric House
69f868722f cancel any notification for game when resetting it 2012-12-12 06:41:56 -08:00
Eric House
eee954e705 list changes for next release 2012-12-11 19:15:15 -08:00
Eric House
575d5e9745 reduce time we'll wait for a summary to unlock when loading it for games list. 2012-12-11 19:11:23 -08:00
Eric House
01d17fe0c5 redraw full list after resetting a game in case position changes 2012-12-11 19:10:05 -08:00
Eric House
7246ae28c6 clear the cache after loading a new DB so will redraw correctly in list 2012-12-11 19:09:33 -08:00
Eric House
b2bd6ce662 add and use preference for square rack tiles, removing code that alternated for testing purposes. 2012-12-11 07:25:43 -08:00
Eric House
877225f59d rename interface; no code change 2012-12-10 18:20:44 -08:00
Eric House
f599ca8be4 make tiles square based on rowid so people can see both 2012-12-10 07:54:42 -08:00
Eric House
d820554ffb change game list item strategy since it turns out adapter's findView()
doesn't pass in the previous representation of a given item for
recycling: move async loading of summary into GameListItem class, and
use getChildAt() to invalidate a single list (rather than reloading
the whole list) whereever possible.  Still need to dump the list
whenever the number of items changes since we're depending on DBUtils
to determine the order and have no way to reshuffle existing items.
2012-12-10 07:48:15 -08:00
Eric House
1bc8070bb1 disable Rematch button (for now) 2012-12-10 07:11:13 -08:00
Eric House
3a45db66cf cache array of rowids, and clear cache appropriately, rather than
query DB for all games every time.
2012-12-08 20:28:11 -08:00
Eric House
ce803a928c pass summary rather than have callee refetch it 2012-12-08 08:55:45 -08:00
Eric House
7efbd2697d rewrite list item logic. Use a single custom LinearLayout subclass
for both the loading and loaded phases, toggling its state once the
data's available.  Reuse it: pay attention to what's passed into
getView and only allocate when there's no existing View to reuse.
Stop caching Views, as that defeats Android list logic that might
limit in-memory representation to the subset that's visible on-screen,
instead tracking a set of rowids whose data is known to be good as a
way of quickly drawing when there's a refresh.
2012-12-08 08:47:53 -08:00
Eric House
83b1d4c364 fix compiler warnings 2012-12-08 06:40:21 -08:00
Eric House
93bf2a1b3e hard-code tiles drawn nearly-square, just to see what it looks like.
Making them exactly square would probably take a new jni call.  And if
I ship this it needs to be optional, controlled by a preference.
2012-12-05 19:15:20 -08:00
Eric House
e719c6e61d don't crash if for some reason json file can't be written 2012-12-05 08:15:48 -08:00
Eric House
6789a64b68 reduce redundant code (hopefully without adding too much confusion) 2012-12-05 08:14:55 -08:00
Eric House
af853098f2 use preferred SDK-8 API to look for downloads directory, and wrap it
in an interface loaded only when SDK>=8 to avoid load-time crash on
older devices.
2012-12-05 07:32:11 -08:00
Eric House
a035ef5623 attachment can come in as file or content scheme 2012-12-05 06:52:10 -08:00
Eric House
ac8c229e75 Fix attachments, at least for the one phone I've tested on. Requires
K-9 mail (Gmail doesn't allow opening attachments).  Trick was to drop
the file extension, since if present that seems to come ahead of mime
type for filtering.
2012-12-03 23:10:31 -08:00
Eric House
922f4a22f4 remove unneeded variable 2012-12-03 23:07:14 -08:00
Eric House
2c71c8425f pass the rematch request off to GamesList where it can create new
games without interference from locked current game.  Handle
standalone case by cloning and launching: easy.  Networked games will
be harder.
2012-12-03 08:30:29 -08:00
Eric House
c041792f83 move methods toward better encapsualtion (no behavior change) 2012-12-03 08:03:00 -08:00
Eric House
ad606cdec0 trying to figure out why games list is occasionally redrawing itself
all the time: add logging that activated only when XWApp's DEBUG flag
is set, and turn that flag on.  The latter change should be reversed
before the next release.
2012-12-03 06:53:15 -08:00
Eric House
a640f9d97b up version number and string 2012-12-03 06:51:50 -08:00
Eric House
da9c7a1afd comment out unused column 2012-12-02 21:39:33 -08:00
Eric House
bda0d51c7f add Rematch button to game over dialog -- which only puts up notImpl
toast so far.
2012-12-02 18:45:35 -08:00
Eric House
7621b909c3 hide a couple of message-related menuitems for standalone games 2012-12-02 18:19:52 -08:00
Eric House
9eea15185c set m_gameOver when it's first known. 2012-12-02 18:09:15 -08:00
Eric House
e5bb360537 When a game is over, show "Game over" dialog containing score summary
every time it's opened.  This is a quick way to get around it being a
bit hard to tell a board's in that state.
2012-12-02 18:02:27 -08:00
Eric House
264118a5ff Merge remote-tracking branch 'origin/android_branch' into android_branch 2012-12-01 21:13:43 -08:00
Eric House
9007331fb0 cleanup, and suggest accepting Android's make-default offer 2012-12-01 21:13:04 -08:00
Eric House
e920fbcaff unregister (flag in db) devids google says are unregistered 2012-12-01 11:55:16 -08:00
Eric House
0d0146cb17 additional changes required post-merge to compile 2012-12-01 10:53:55 -08:00
Eric House
c4e638bd84 Merge branch 'android_branch' into android_groups
Conflicts:
	xwords4/android/XWords4/res/values/strings.xml
	xwords4/android/XWords4/src/org/eehouse/android/xw4/DBHelper.java
	xwords4/android/XWords4/src/org/eehouse/android/xw4/GamesList.java
	xwords4/android/XWords4/src/org/eehouse/android/xw4/XWApp.java
2012-12-01 10:52:42 -08:00
Eric House
2859ec9132 stime is the name of the column in actual use 2012-12-01 10:31:55 -08:00
Eric House
618d8530f2 some changes accumulated as script was running 2012-12-01 10:27:02 -08:00
Eric House
4dddd2da42 some changes accumulated as script was running 2012-12-01 10:26:00 -08:00
Eric House
38e6eac3a1 improve page users see when opening invite from new device on an old one. 2012-12-01 10:10:28 -08:00
Eric House
dd882ba9d4 first cut at script old clients will see responding to new-style invitations 2012-12-01 09:34:21 -08:00
Eric House
e16245d19e include new column 2012-12-01 09:33:38 -08:00
Eric House
0394579b7c cleanup (and use factored-out updateRow a couple of additional places) 2012-11-30 19:58:23 -08:00
Eric House
795e05f544 update with changes and next steps 2012-11-30 19:57:46 -08:00
Eric House
13b7877a80 put name of file being downloaded in progress dialog 2012-11-30 08:08:45 -08:00
Eric House
74fec9d3d3 disable attachments as part of invitations -- for now. 2012-11-30 07:50:10 -08:00
Eric House
8b5ec28120 SMS play logs too much: remove non-error logging. 2012-11-30 07:22:16 -08:00
Eric House
32d7daf2b5 warn about duplicate games not just when there's exactly one, and
include the most recent create time in the warning.
2012-11-30 07:13:00 -08:00
Eric House
95062fb967 log missing dicts 2012-11-30 07:12:07 -08:00
Eric House
ab0fb918ee open json attachment and from it create a new game. Works, but there
are enough problems with attachements I may turn them off.
2012-11-30 06:21:18 -08:00
Eric House
f4dc8a6b41 snapshot of code and intent filter that gets an attachment into an
email and launches Crosswords when the attachment is opened.
Shouldn't, or at least shouldn't launch ONLY Crosswords, as the mime
type's not in the filter, but it does.
2012-11-29 08:19:07 -08:00
Eric House
9f5a64ee50 don't try to use null gamePtr. Happens when relay moves arrive for a
game whose dict has been deleted.
2012-11-29 06:20:45 -08:00
Eric House
bffb231d13 improve download-or-cancel messages 2012-11-28 21:07:03 -08:00
Eric House
8250447eca launch game after successfully downloading dict it's missing 2012-11-28 20:41:08 -08:00
Eric House
4bae56e631 use rowid as notification id for all types of games, and cancel when
games deleted.
2012-11-28 19:32:50 -08:00
Eric House
19333e33ac fix confirmation of duplicate game from invite. Along the way
dramatically simplify how new game intents are passed around.
2012-11-28 19:17:29 -08:00
Eric House
6f620ebc44 move prefix into resources two since it's repeated. 2012-11-28 06:30:35 -08:00
Eric House
baa790a8c3 remove debugging code; make Intent content details private to class. 2012-11-28 06:06:42 -08:00
Eric House
cd197e4530 use Class instance for synchronization of static methods rather than
creating an object only for that purpose.
2012-11-27 18:55:08 -08:00
Eric House
3cc92e99ca fix uri format error that was causing install to fail 2012-11-27 18:48:05 -08:00
Eric House
7c5a59beb3 remind self of Blaze's download directory 2012-11-27 18:31:14 -08:00
Eric House
bf970b6dd9 remove some logging 2012-11-27 07:53:48 -08:00
Eric House
c39d434ffa add logging giving size and md5sum of downloaded .apk. 2012-11-27 07:22:03 -08:00
Eric House
441cc53740 Remove debug preference for setting host in invite emails, replacing
it with a string resource.  The value passed in invites must match the
string hard-coded in the AndroidManifest so there's no point in making
it runtime-configurable.
2012-11-27 07:04:47 -08:00
Eric House
f3ecfa569a get rid of the second URL in invites that's meant for those without
the app installed.  It's confusing, especially in SMS case, and the
page they see when they don't have the app installed can explain how
to install it.
2012-11-27 07:02:44 -08:00
Eric House
30377908df Use the downloader with an infinite progress indicator instead of the
status-bar notifier (which is removed) for dict downloads.
2012-11-26 20:19:25 -08:00
Eric House
b1f54a67ed end path prefix with a /; otherwise Crosswords gets launched to browse
the wordlist directory.
2012-11-26 20:14:32 -08:00
Eric House
b433438022 add message via GCM to check for wordlist/app upgrades 2012-11-26 18:47:35 -08:00
Eric House
e590db5f3f merge in the db part of 82c39489f0
(android_groups branch, local only right now), but not the UI part
since it won't make the next release.
2012-11-26 08:05:05 -08:00
Eric House
a39cc44d56 Merge branch 'android_branch' into android_groups 2012-11-26 07:41:20 -08:00
Eric House
9130c8da50 download and install upgrade .apk files where possible. Download is
via the existing DictImportActivity, which should also be used for
dict upgrade downloads to keep the UI consistent.
2012-11-26 07:40:45 -08:00
Eric House
302ad04ef9 use recommended intent filtering to allow Crosswords to launch in
response to http URLs, removing need for custom scheme and one step
from the invitation process.
2012-11-26 05:41:42 -08:00
Eric House
6f3881d53d don't crash on malformed invite URL 2012-11-26 03:08:54 -08:00
Eric House
ac435b7857 Merge branch 'android_branch' into android_groups
Conflicts:
	xwords4/android/XWords4/src/org/eehouse/android/xw4/GamesList.java
2012-11-25 14:11:04 -08:00
Eric House
63b29a2cb2 Revert "add read-only debug prefs giving GCM and relay device IDs."
This reverts commit 5019d3960b.
2012-11-25 13:55:02 -08:00
Eric House
f82e5bd0e9 add code to deal with Amazon, which I falsely identified as having
broken custom schemes.  I'm leaving it in, unreachable, to have a record.
2012-11-25 12:30:25 -08:00
Eric House
d7bb869a5b rewrite to present a link rather than redirect, to attempt to present
the link only on Android devices, and to encourage users to email me
if I'm wrong about their not being on a device.
2012-11-25 10:39:46 -08:00
Eric House
5019d3960b add read-only debug prefs giving GCM and relay device IDs. 2012-11-25 09:58:46 -08:00
Eric House
7d6e393007 use a different missing-dict explanation string when the name of the
inviter isn't known (relay case)
2012-11-25 09:58:14 -08:00
Eric House
2a1c028268 deal with case where relay invite arrives for a language that device
doesn't have support for.  Dictionary name is now included in the
invite, and if that's present offer to download it then launch game.
For previous versions that don't include the dict name, offer to
download from the language (though that isn't tested yet.)
2012-11-25 08:54:46 -08:00
Eric House
b2e329f670 pass along wl (dict) param if present 2012-11-25 08:53:15 -08:00
Eric House
a3e0d0ca1e recover from situation where game is created in response to an
invitation for a lang for which it has no dicts installed.  Shouldn't
happen, but on relay still can.
2012-11-22 13:03:32 -08:00
Eric House
9659f810dc work even if ENV variable unset 2012-11-22 08:20:08 -08:00
Eric House
0bea58b128 make it possible to build without knowing the GCM sender ID. 2012-11-22 08:13:06 -08:00
Eric House
daf5a89a0e remove unused imports (no code change) 2012-11-21 21:49:42 -08:00
Eric House
dcf239ca48 add newGroup menu for when button's hidden; add deleteAll menuitem to
set of debug-features (but this should probably not ship until
deleting is changed.)
2012-11-21 06:17:09 -08:00
Eric House
cf88b60c4b make the two buttons fill the screen, and use newly created style
for new_games layout too.
2012-11-20 19:11:39 -08:00
Eric House
a199dd2b92 when deleting a group's games do as when they're deleted individually:
get the lock, tell the relay, and THEN remove from DB.
2012-11-20 19:03:39 -08:00
Eric House
3bff555bfd For move, make current group the default and warn whether there's only
one.
2012-11-20 18:34:26 -08:00
Eric House
19e7e27f1e fix so remembered expanded/contracted state is displayed 2012-11-20 07:40:33 -08:00
Eric House
fbfeae379d cache DB info on groups for better performance 2012-11-20 07:15:56 -08:00
Eric House
48dd3bb72e Merge branch 'android_branch' into android_groups 2012-11-20 07:02:27 -08:00
Eric House
04d839868d on launch to handle an invite for a game that seems to already exist,
instead launch that game -- for better feedback.
2012-11-20 06:24:23 -08:00
Eric House
b244adae1b fix transposed words 2012-11-20 06:22:29 -08:00
Eric House
f149391838 cleanup 2012-11-20 06:13:29 -08:00
Eric House
face24e915 make invite email text a bit easier to read 2012-11-20 06:10:57 -08:00
Eric House
cb70858583 up strings for next release (still a while out!) 2012-11-20 04:14:25 -08:00
Eric House
b827c82291 force refresh after delete 2012-11-19 21:23:19 -08:00
Eric House
be3cad96d7 tweak strings 2012-11-19 21:23:07 -08:00
Eric House
1994ea788e don't allow deleting default group. Wording needs fixing, or better
yet, replace the menuitem with greyed-out "is default group".  But
this works for now.
2012-11-19 19:28:26 -08:00
Eric House
82c39489f0 lots of changes toward grouping games in user-definable groups.
Creation and movement between work.  Deletion crashes.  Expansion
doesn't stick.  All's rough.
2012-11-19 07:41:15 -08:00
Eric House
2779139e75 add columns using data as well. Like pref commit, this does not change behavior. 2012-11-17 10:20:14 -08:00
Eric House
9ad41d5a3a use String[] data to build table-creation queries rather than huge
inline string concatenations.
2012-11-17 10:14:55 -08:00
Eric House
416db91312 experimental: always post notification on new moves received rather
than giving GamesList a chance to launch game directly.
2012-11-16 07:31:52 -08:00
Eric House
cefc13a2cd Docs say should allow GCM to reregister on app upgrade. And that the
registrar takes care of storing devid.  So app version when
registration arrives, and get from registrar except after an upgrade.
2012-11-15 21:44:56 -08:00
Eric House
9a4a8c7b26 use static to avoid querying OS for version over and over. 2012-11-15 21:41:51 -08:00
Eric House
f70a5bc6ee add getAppVersion() 2012-11-15 21:24:54 -08:00
Eric House
e1bc9876dd add to-do 2012-11-15 21:23:31 -08:00
Eric House
bda193029e add constructor in order to pass SENDER_ID to parent constructor,
as docs say to do
2012-11-15 21:14:45 -08:00
Eric House
f64de16ce3 catch and discard all exceptions that come when initing GCM. Fringe
devices may do anthing at that point.
2012-11-15 07:03:32 -08:00
Eric House
5afd93c5f5 fix NPE on Kindle 2012-11-15 06:42:27 -08:00
Eric House
694857dd4e add, but disable with compile flags, ability to mark sent messages
with a timestamp rather than delete them.  Plan is to experiement with
this as a way of keeping devices from sending too many identical
messages when GCM's in use -- since constraints on the msgs table will
not allow identical messages to be added.
2012-11-15 06:25:22 -08:00
Eric House
c847ec127e add and use function that does formatted printing to a std::string so
query buffers can no longer overflow.
2012-11-15 06:15:44 -08:00
Eric House
5463535265 don't increase backoff if there wasn't actually anything to send. 2012-11-14 05:42:47 -08:00
Eric House
9598ea3585 fix to compile post API change. 2012-11-13 21:32:42 -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
cf8d30ce5d tweak logging; fix uninitialized debug-only variable 2012-11-13 21:18:52 -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
cd2550a90d Merge remote-tracking branch 'origin/android_branch' into android_branch 2012-11-13 07:24:54 -08:00
Eric House
093fc4d1fa cleanup 2012-11-13 07:23:07 -08:00
Eric House
57ea768aaf refuse to send 0-length messages. That may happen only when the stupid
curses client calls server_initClientConnection over and over, but
reduces unnecessary messaging in that case at least.
2012-11-13 07:22:48 -08:00
Eric House
c4f5b4522e minor printing tweaks 2012-11-13 07:17:56 -08:00
Eric House
2908802017 try to make linux client mimic Android a bit better in saving after
any network activity so messages get acked more quickly.
2012-11-13 06:15:36 -08:00
Eric House
43b1e219f3 add a bit more logging to comms 2012-11-13 06:14:36 -08:00
Eric House
082e6a61f7 comment out unused command 2012-11-12 20:57:39 -08:00
Eric House
60814264e7 compile with XWFEATURE_COMMSACK turned off 2012-11-12 20:56:50 -08:00
Eric House
76c938cc67 fix to compile with API change; to drop relayid when it's rejected and
to use register with the GCM id on next [re]connect; and to not leave
variable unintialized when unable to call into java world due to being
called without context.
2012-11-12 08:03:25 -08:00
Eric House
4f3c81417d go back to logging devids for now 2012-11-12 08:01:24 -08:00
Eric House
6ca966f22a make test script and linux client mimic case where relay regid is
rejected by relay.  Client re-registers and a new relay regid is
issued.
2012-11-12 07:27:20 -08:00
Eric House
6a85661095 lots of improvements: make useful for testing with non-android clients; shelve backoff data, etc. 2012-11-10 19:31:22 -08:00
Eric House
1316ae4b67 Fix relay devid protocol to deal with case where client submits a
ID_TYPE_RELAY id that's not in the devices table (as has happened when
a device switches relay URLs during testing, but might also happen if
I have to delete an entry from the devices table.)  In that case,
return ID_TYPE_NONE to the client, which will be its clue to delete
its ID_TYPE_RELAY id and submit the platform-specific id again.

Note: android won't compile this revision thanks to util.h change
2012-11-10 15:05:44 -08:00
Eric House
b53412d98d Fix to actually work. Grrr. 2012-11-10 14:52:10 -08:00
Eric House
ba733634cb NPE: don't crash on first install 2012-11-09 06:57:37 -08:00
Eric House
b0f85e02df use grep of app's help message to determine whether a param is
supported so can test with older clients and not crash.
2012-11-09 06:55:38 -08:00
Eric House
f1ee77882b Send devid with RECONN as well as CONN so games present when device
upgrades can also use GCM.  Tested on relay but not device.
2012-11-09 06:54:12 -08:00
Eric House
ff16db5c10 remove logging 2012-11-08 20:09:16 -08:00
Eric House
0f21f849d9 fix crash attempting to download dict when there's no network, e.g. in
airplane mode.
2012-11-08 20:08:20 -08:00
Eric House
0ef7c8bf46 return TYPE_NONE on devices like Kindle that don't do GCM instead of
an empty string claiming to be a GCM ID.
2012-11-08 19:58:03 -08:00
Eric House
07123ac823 cleanup: remove logging and only check for messages when the json data
holds that command.
2012-11-08 19:54:09 -08:00
Eric House
5cbafb9f56 up version strings and code 2012-11-08 19:49:45 -08:00
Eric House
283045c649 revert previous trivial change 2012-11-08 19:23:52 -08:00
Eric House
49117927db start process of allowing DlgDelegate to handle more than one dialog
at a time.  Step one is to move all the data into a singleton.  Once
that seems to work (excepting in the cases that fire assertions or lead
to dropped dialogs now) move to using a queue of them.  Right now it crashes
with an assertion on dismissing the second dialog.
2012-11-08 19:05:23 -08:00
Eric House
3b1f6a695f don't show "can't do GCM" Toast on Kindle Fire 2012-11-08 06:38:35 -08:00
Eric House
2df4199a77 test script for messaging devices 2012-11-08 06:13:01 -08:00
Eric House
4eff38a85d Merge remote-tracking branch 'origin/android_branch' into android_branch 2012-11-07 22:06:41 -08:00
Eric House
af89047969 treat an empty devID string as TYPE_NONE regardless of what the client claims. 2012-11-07 22:03:58 -08:00
Eric House
e6cd2265df fix crash: make formatParams work with empty strings 2012-11-07 21:57:18 -08:00
Eric House
aafcd5144a Better Kindle fix: don't even post message if SMS not supported. 2012-11-07 19:46:33 -08:00
Eric House
949b804f35 fix NPE on Kindle Fire, which has no SMS DB. Duh. 2012-11-07 19:43:08 -08:00
Eric House
83754d626e add backoff for resending for messages still not removed from msgs table 2012-11-07 08:05:45 -08:00
Eric House
45d0b2dbc8 various improvements, including printing a period on every loop when
there's no work to do.  All that remains is backoff.
2012-11-07 07:31:52 -08:00
Eric House
8516dca1cb what I really meant to check in 2012-11-07 06:23:20 -08:00
Eric House
9b48523ff3 fix to work with new DB scheme and to send json client now expects 2012-11-07 06:17:33 -08:00
Eric House
1e13d6ac6c look for values in msg sent from server, including one that puts up a
message via a notification.
2012-11-06 19:09:15 -08:00
Eric House
2c339ed7a5 fix to work with new devid/table scheme 2012-11-06 07:25:38 -08:00
Eric House
39dbed2004 add missing util method (fixing crash) and with it wire up new devID
scheme: now relay-assigned shorter id will be saved and used for
future games.
2012-11-06 07:08:06 -08:00
Eric House
9ad28908bb assert enum within range 2012-11-06 07:07:14 -08:00
Eric House
9981360c67 put back minsdk stuff accidentally removed in merge. 2012-11-05 06:55:54 -08:00
Eric House
41cfacfee4 don't crash on emulator (which doesn't have library required by GCM) 2012-11-05 06:20:55 -08:00
Eric House
03108f311a Merge branch 'android_branch' into android_gcm 2012-11-05 06:14:21 -08:00
Eric House
0376e25c26 Merge branch 'fix_beta_53' into android_branch 2012-11-05 05:43:33 -08:00
Eric House
bb2e3ffdb1 fix (by dropping second message) assert that there is no first
message.  This is a TEMPORARY fix.
2012-11-04 21:36:20 -08:00
Eric House
e8720ec419 add link to changelog 2012-11-04 17:53:42 -08:00
Eric House
3942a49cac Add a debug preference allowing to provide, or override, the download
dir.  This will let users work around bugs on devices like my Blaze 4G
where the OS gives the wrong path, and also allows testing.  Inval
DictUtil's dict cache eash time this is changed, so in effect adding a
wrong path pref hides all dicts in the Downloads dir.
2012-11-04 17:47:30 -08:00
Eric House
69108fd8a1 cleanup: import class to make declarations shorter. 2012-11-04 17:33:07 -08:00
Eric House
30675cfd3e remove logging 2012-11-04 17:21:37 -08:00
Eric House
90480aca4c don't put up toast when checking SMS DB 2012-11-04 07:40:24 -08:00
Eric House
68d6e10ab7 up version strings for quick bugfix release. 2012-11-03 17:27:46 -07:00
Eric House
4dd094b2b3 if the download dir doesn't exist (and on my "Blaze 4G" the function
getDownloadCacheDirectory() returns a path that doesn't) then don't
offer to move things there.
2012-11-03 17:26:43 -07:00
Eric House
59937b8514 modify how devids are handled on the relay and the protocol through
which they're communicated to the device.  Device is expected to have
a platform-specific notion of ID which the relay stores in a new
devices table and indexes with a 32-bit number which is returned to
the device -- which is encouraged but not required to use it in lieu
of the longer ID in future communications.  Modify linux client and
test script to use the relay-supplied id.  Some of this is commented
out for now.
2012-11-03 10:58:01 -07:00
Eric House
773f04e95b remove .gitignores from directory that's going away 2012-11-02 05:36:48 -07:00
Eric House
563422de02 turn on DEVID feature for linux 2012-11-02 05:35:56 -07:00
Eric House
47f9eb03b9 merge in changes from the -gcm directory: GCM will be a feature of the
non-variant build now.
2012-11-02 05:35:31 -07:00
Eric House
e66ddc3765 make stream_catString work with null ptr 2012-11-01 21:08:58 -07:00
Eric House
ecd6d81228 Merge branch 'android_branch' into android_gcm 2012-11-01 19:50:07 -07:00
Eric House
a73a5e8077 there seems to be no way to fix the warning so add comment 2012-11-01 19:46:38 -07:00
Eric House
257a15917b script to run with lint checks enabled -- since I always have to look up how. 2012-11-01 19:46:08 -07:00
Eric House
a4787d5614 remove unused strings 2012-11-01 19:45:13 -07:00
Eric House
364acb6dcd cleanup: remove some logging and unused string resources 2012-11-01 19:32:29 -07:00
Eric House
935e3b9673 fix to work from main build directory 2012-11-01 19:32:08 -07:00
Eric House
1c33c8cc31 scripts that help find unneeded string resources 2012-11-01 19:17:46 -07:00
Eric House
27935752a8 check cursor still open in attempt to fix crash seen on Galaxy Nexus 2012-11-01 18:39:26 -07:00
Eric House
057a41e4a9 check cursor still open in attempt to fix crash seen on Galaxy Nexus 2012-11-01 07:59:42 -07:00
Eric House
7135e30fe9 add missing ifdef 2012-11-01 07:58:36 -07:00
Eric House
3e289adc18 move related methods together 2012-11-01 07:58:27 -07:00
Eric House
fe819982da Merge remote-tracking branch 'origin/android_branch' into android_gcm 2012-10-31 07:44:16 -07:00
Eric House
3d6a170921 python script to check relay and invoke GCM to notify recipients 2012-10-31 07:20:40 -07:00
Eric House
a61bb31aa5 update for newest wordlist 2012-10-31 07:12:10 -07:00
Eric House
b552a1fad0 check for moves on receiving message from GCM. Round-trip now works! 2012-10-31 07:09:23 -07:00
Eric House
d97c057b8c Merge branch 'android_branch' into android_gcm 2012-10-31 06:33:54 -07:00
Eric House
1cae4e9a4c increase buffer size, and test rather than assert for overflow. Fixes
crash with new large GCM devids.
2012-10-31 06:12:24 -07:00
Eric House
1b7a618454 send the right dev id 2012-10-31 06:03:31 -07:00
Eric House
fe47266b1f don't ignore output when compiling jni: hides errors! 2012-10-30 08:05:25 -07:00
Eric House
6014e3d76f turn on devid code and implement support in java. Untested, but should work. 2012-10-30 07:57:17 -07:00
Eric House
6cf5d7e04e Android.mk needs to be checked in 2012-10-30 07:48:16 -07:00
Eric House
c93dfd6605 Merge branch 'android_branch' into android_gcm
Conflicts:
	xwords4/android/XWords4/res/values/common_rsrc.xml
2012-10-30 07:10:42 -07:00
Eric House
3469975d2a add, still disabled by compile-time flags, code to transmit device ID
(e.g. ID Android devices get via GCM) to relay and to associate it
there with messages that need to be delivered.
2012-10-30 07:01:47 -07:00
Eric House
80a79b6991 Make it less likely that a message received while I'm not intercepting
them will be opened more than once: track whether I've searched the
SMS db, and only clear that setting when SMS play is *disabled*.
2012-10-29 21:20:32 -07:00
Eric House
ba0f91c438 cleanup: use constant 2012-10-29 20:43:02 -07:00
Eric House
e90621ec1d use existing string rather than invent a new one 2012-10-29 07:30:09 -07:00
Eric House
e39b776d80 Add button to alert warning that SMS isn't on that takes you to
Preferences.
2012-10-29 07:20:11 -07:00
Eric House
2375a6730a tweak text 2012-10-27 15:31:49 -07:00
Eric House
b83e587d91 changelog and version strings for beta 53 2012-10-27 15:21:33 -07:00
Eric House
5aef1afec3 point URL at android part of sf.net site, not home. 2012-10-27 13:18:08 -07:00
Eric House
f0a46eacfa script reached by URL in SMS messages sent to devices without
Crosswords installed.
2012-10-27 13:15:34 -07:00
Eric House
86378e4f0b Merge remote branch 'origin/android_branch' into android_branch 2012-10-27 08:55:19 -07:00
Eric House
e7d5be06e9 fix crash when old client connects to new host by making host use the
right version test in deciding what to send.
2012-10-27 08:52:54 -07:00
Eric House
4ea8569abc honor --min-devs flag 2012-10-27 08:15:07 -07:00
Eric House
e1fa0f9dd3 Merge remote-tracking branch 'origin/android_branch' into android_branch 2012-10-26 07:06:59 -07:00
Eric House
fb747304eb put sms at bottom of new-game dialog 2012-10-26 07:00:23 -07:00
Eric House
b097e0825e fix linux crash do to casting problem 2012-10-26 06:49:15 -07:00
Eric House
d7d666e4f9 Merge branch 'android_branch' into android_gcm 2012-10-25 08:12:02 -07:00
Eric House
6e39466b09 somehow new dict-download code is storing some in info DB with
langcode of 0.  Work around that by rebuilding cache entry when that's
seen.
2012-10-25 08:03:56 -07:00
Eric House
6180834ada log case where game has no dicts 2012-10-25 08:02:30 -07:00
Eric House
4ed1446e06 Fix new bug: don't null out default dict just because we don't have one. 2012-10-25 07:58:39 -07:00
Eric House
b40e9b7928 assert non-0 lang code 2012-10-25 07:10:54 -07:00
Eric House
f2684e5652 log device ID even when it's not newly assigned 2012-10-25 06:24:19 -07:00
Eric House
fcc4a0a5f9 add new file 2012-10-25 06:23:49 -07:00
Eric House
4c1c0ddaaa Merge branch 'android_branch' into android_gcm
Conflicts:
	xwords4/android/XWords4/src/org/eehouse/android/xw4/XWPrefs.java
2012-10-24 08:05:50 -07:00
Eric House
9bb8c9cddf don't allow change of dict in in-play networked game 2012-10-24 08:01:52 -07:00
Eric House
3d14ed96e7 cleanup and rename method 2012-10-24 07:40:14 -07:00
Eric House
643a301214 cleanup: add additional param to downloadFinished() iface method 2012-10-24 07:22:26 -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
13c74cfbd5 protect changeDict feature with compile-time flags (since it can't be
used on Android)
2012-10-24 06:46:54 -07:00
Eric House
c69dbda36f add new game_changeDict() and enough gtk code to test it. 2012-10-23 19:06:00 -07:00
Eric House
521d7042be remove redundant class name (no code change) 2012-10-23 06:50:49 -07:00
Eric House
1ce7b36b59 add pref to replace querying on each download where to store dict.
And use new background-download for update-triggered downloads.
2012-10-22 19:35:47 -07:00
Eric House
80e2b8955e comments to remind not to remove code not called from java; no code change 2012-10-22 19:29:05 -07:00
Eric House
8f4c0169b4 fix to print contents again 2012-10-22 19:19:38 -07:00
Eric House
8e911fef05 use import to shorten type -- no code change 2012-10-22 07:30:44 -07:00
Eric House
ca561f225c make dict storage location a default set in preference rather than
something queried each time.
2012-10-22 07:06:12 -07:00
Eric House
6ba5d4f7c8 use new internal download code for download to get dict required for
SMS invite as well.  Still to do: put back the query for where the
thing should be stored.  Hard-coded to go in INTERNAL for now.
2012-10-20 18:28:14 -07:00
Eric House
13557b6e25 use Utils.showToast() everywhere 2012-10-19 18:03:00 -07:00
Eric House
04f56ccf74 download dicts without the browser. This is a partial implementation
that will need to be generalized and used in other places, basically
whenever the full URL can be known.
2012-10-19 17:57:17 -07:00
Eric House
37c698f41b fix link problem with upgrade from natty to oneiric (Ubuntu): -lpq
param must follow object file list.
2012-10-19 17:54:18 -07:00
Eric House
0f9500cea3 comment out unused param/variable 2012-10-19 17:53:15 -07:00
Eric House
6c34f43df7 show toast when update requested manually and nothing found 2012-10-18 19:51:40 -07:00
Eric House
cb1a0093c3 Merge branch 'android_branch' into android_gcm 2012-10-17 21:23:09 -07:00
Eric House
e5feded0b1 When receiving an invite for a dict we don't have, post a notification
to DictsActivity that offers to download, and on download completion
arranges for notification of SMSService so the game can be created.
2012-10-17 21:20:08 -07:00
Eric House
3e83af3b97 pass dict name (in addition to language) with SMS invite, and
currently on recipient device refuse to create a game if dict not
installed.  Next step is to give a choice to download the thing or
decline.
2012-10-17 07:11:39 -07:00
Eric House
04f51bd392 add haveDict() 2012-10-17 07:10:08 -07:00
Eric House
a8c77bca88 fix NPE 2012-10-17 07:01:01 -07:00
Eric House
6d7d8d5c64 ignore dir not on this branch 2012-10-16 08:20:53 -07:00
Eric House
50238bea3e generate sender_id const from ENV so doesn't need to be checked in.
Now works to register as I'm using the right id.
2012-10-16 08:16:43 -07:00
Eric House
be79ce77ee fix name of service so reply received from GCM 2012-10-16 07:56:10 -07:00
Eric House
85f81a700c missing gitignores 2012-10-16 07:42:35 -07:00
Eric House
de5dcdc5f9 starting new variant for GCM 2012-10-16 07:41:04 -07:00
Eric House
077270f1cd merge in SMS-version UI -- there will not be a separate version for
SMS any more.
2012-10-15 08:29:46 -07:00
Eric House
eb47e75c50 put up more user-friendly message when dicts don't match. 2012-10-15 08:07:17 -07:00
Eric House
5f247db29c use the same missing-players message for all three connection types
(even though the way they're reported is, though shouldn't be,
different.)
2012-10-15 07:31:02 -07:00
Eric House
96ea4f3963 ignore new files 2012-10-15 06:21:50 -07:00
Eric House
528c061156 report host-chosen dict name a bit later 2012-10-15 06:21:08 -07:00
Eric House
c811282591 UI change: networked games are no longer allowed to have per-player
dicts.  Now you select a single dict for such games in a new spinner
just below the lang spinner, and player's dicts are no longer
displayed.  For standalone games, the single dict choice isn't there,
the individual dicts are displayed, and you must open a player config
to change the dict as before.  The idea is that this will be less
confusing, particularly when I need to tell the guest that the host is
using a different dict.
2012-10-14 19:21:27 -07:00
Eric House
4cf595e939 on commandline, only allow assignment of per-player dicts to local
players.  I don't know what happens when a player's position is
changed when its game is a guest and the hosts rearranges players.
Which is why on Android I'm moving to allowing per-player dicts only
on local-only games.
2012-10-14 19:10:42 -07:00
Eric House
25a1ee451b resolve links if required to get the actual name of the dict 2012-10-12 20:50:34 -07:00
Eric House
e90c5ee94f pass index of resigning player into util_notifyGameOver. Not yet
passed into java.
2012-10-09 05:31:12 -07:00
Eric House
3221fb237a Make state disallow hints when game over 2012-10-08 07:21:36 -07:00
Eric House
ce58750b92 change "resign" menu text once game is over 2012-10-08 07:09:44 -07:00
Eric House
e64ecfb78d implement resign on top of existing endGame logic, adding "quitter" as
new param passed to remote and changing final score formatting and
menu items to match.  Still need to show old menu on android in case
where game has already ended.
2012-10-07 12:47:06 -07:00
Eric House
4e0c7923d9 fix bug with clean target introduced when BUILD_DIR was introduced 2012-10-07 12:14:47 -07:00
Eric House
968340f665 Fix release-build warnings that new compiler flags. 2012-10-07 11:43:50 -07:00
Eric House
fd9b9f85e2 make util_hiliteCell conditional, and remove from android where it
wasn't used anyway.
2012-10-05 18:51:32 -07:00
Eric House
b11da9d8eb use GamesList's Handler to set timers to redraw turn expiry indicators
when the percent left changes.  This may be done -- except for
deciding what to do when the time actually runs out.
2012-10-02 07:30:31 -07:00
Eric House
0a60419802 make ExpiringDelegate responsible for figuring percentage of time left
given start time and having a constant for how long a turn lasts.  Eventually
the constant will be replaced by a second number passed in.
2012-10-01 19:07:23 -07:00
Eric House
cd776a34dd Revert "Display turn start time in game summary. This is definitely not its"
This reverts commit ebaa22594d.
2012-10-01 17:53:35 -07:00
Eric House
bec596c744 remove no-longer-needed drawable 2012-10-01 17:52:56 -07:00
Eric House
0579253b8d Also override TextView to show turn left there. Works, requiring only
that actual percentage of turn remainning be calculated.
2012-10-01 07:24:45 -07:00
Eric House
50b10cd365 new classes overriding LinearLayout to allow framing is-turn rect to
be drawn in two colors showing how much time left for turn.  Required
because there's no (reasonably-easy) way to create nine-parts
dynamically.
2012-10-01 06:57:40 -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
ebaa22594d Display turn start time in game summary. This is definitely not its
final form!
2012-09-27 07:48:30 -07:00
Eric House
2c89f13383 add turn as param to util_turnChanged, and call from server rather
than board.
2012-09-27 07:04:57 -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
6ddd4a61c1 fix compile errors (mostly unused variables) found by gcc on latest
Ubuntu (12.04).
2012-09-25 07:28:02 -07:00
Eric House
53774eb807 Merge remote-tracking branch 'origin/android_branch' into android_branch 2012-09-24 20:08:14 -07:00
Eric House
65598cdb7b replace DeleteLocalRef calls 2012-09-24 07:44:43 -07:00
Eric House
140c982d41 merge from android_branch 2012-09-24 07:39:44 -07:00
Eric House
4909dde622 call a script rather than an html file so file doesn't have to be
updated with every release.
2012-09-24 07:35:14 -07:00
Eric House
9a3e43428a Merge remote-tracking branch 'origin/android_branch' into android_branch 2012-09-24 07:26:57 -07:00
Eric House
bdc114dc46 add phony targets to check, on debian-based systems, whether required
packages are installed and to install them.
2012-09-24 07:26:37 -07:00
Eric House
d24f9a28f6 up release number 2012-09-24 07:00:18 -07:00
Eric House
c76c5f5868 don't create obits for apps that don't have relayIDs (and presumably
never connected.)
2012-09-20 07:45:04 -07:00
Eric House
96e277c7ba don't offer to copy DB from sdcard when there is none. 2012-09-20 07:29:00 -07:00
Eric House
598a154693 factor common code into function 2012-09-19 08:09:27 -07:00
Eric House
81d3f7d15f up version strings for SMS version too 2012-09-19 07:20:43 -07:00
Eric House
a601d0818e save and restore search prefix even when find button not clicked, and
display last scroll position when different from what prefix finds.
2012-09-18 07:51:50 -07:00
Eric House
210913d4d4 track dictbrowse info for multiple copies of same dict if that's
what's installed.
2012-09-18 07:36:54 -07:00
Eric House
fcecd1db3c don't ask for column no longer there 2012-09-18 06:38:22 -07:00
Eric House
4fa5c61e14 add option to build in a separate directory, for e.g. case where source files
are on ro filesystem.
2012-09-17 06:48:53 -07:00
Eric House
168b69112e up version strings for pending new release 2012-09-17 06:36:58 -07:00
Eric House
33772ff0b9 remove redundant DB field and variable 2012-09-15 17:11:59 -07:00
Eric House
a939c9ec4b cleanup 2012-09-15 17:11:45 -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
b2d47d70be saveToken can be 0 when only gi is being saved 2012-09-15 15:49:26 -07:00
Eric House
937bde6378 combine two jniutils methods into one 2012-09-15 15:21:31 -07:00
Eric House
ad67f31573 saveToken can be 0 when only gi is being saved 2012-09-15 15:19:23 -07:00
Eric House
1e12464934 Merge branch 'android_branch' into android_dictdb 2012-09-15 10:51:58 -07:00
Eric House
571300c0f8 work with two checksums per wordlist, the old that's on the whole
file, and the new that's on the wordlist data only.
2012-09-15 09:34:27 -07:00
Eric House
5d45d8d35f remove param that doesn't work when called from mod_python 2012-09-15 09:03:52 -07:00
Eric House
c815d739cd generate md5sum for old .xwd files that don't have it internally. And
for those that do, verify that stored and generated values match.
2012-09-13 20:54:35 -07:00
Eric House
bcc8c0c249 remove code figuring md5sum on full dict file; the sum on data is all
we're using now.
2012-09-13 19:33:17 -07:00
Eric House
a5bd932e0a Merge branch 'android_branch' into android_dictdb 2012-09-13 19:20:24 -07:00
Eric House
aaa12a291e use unpack to correctly pull wordcount, note and checksum 2012-09-13 19:07:37 -07:00
Eric House
20afa9fd56 rename: file's obsolete now 2012-09-13 19:06:46 -07:00
Eric House
a85ab865cb up note for new version of DISC 2012-09-13 19:05:09 -07:00
Eric House
9ea1311aa0 Merge branch 'android_branch' into android_dictdb 2012-09-13 08:00:54 -07:00
Eric House
50e90405a7 add new Catalan word lookup URL 2012-09-13 08:00:37 -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
edc6b9c270 Merge branch 'android_branch' into android_dictdb 2012-09-13 05:40:08 -07:00
Eric House
3e4384c2a8 when dict doesn't have built-in md5sum, or when in DEBUG code, call
back into java to get a sum.  It's very slow for large dicts, but will
eventually be in a DB so only done once per dict that doesn't have it.
2012-09-13 05:39:44 -07:00
Eric House
13507e6fc2 break dict info table in two, one browse state and one for what's been
stored in static data in DictLangCache up to now -- and remove that
static data in favor of the new table.
2012-09-12 19:50:03 -07:00
Eric House
67b0d44f26 save search prefix too 2012-09-12 07:55:41 -07:00
Eric House
ce6356fb92 add new db table for tracking dict-releated stuff. Use it to save
state in wordlist browser so can return to same place as left for each
dict.  Eventually the new table should replace DictLangCache.
2012-09-12 07:44:58 -07:00
Eric House
a6bed2706d include, commented out, the parameter that makes things fall apart. I
think the protocol needs work to survive devices failing to save
state.  Better to work on making sure they always save.
2012-09-11 20:45:03 -07:00
Eric House
72b4b02c20 improve messages display 2012-09-11 20:44:07 -07:00
Eric House
ae2b6205bd use mem_stream_make_sized 2012-09-11 19:17:27 -07:00
Eric House
4f18f01cb8 don't malloc(0) 2012-09-11 19:17:10 -07:00
Eric House
a0b564c7e8 show related messages as well 2012-09-11 19:07:16 -07:00
Eric House
761f93dd7e use new mem_stream_make_sized 2012-09-11 19:07:00 -07:00
Eric House
5c683f173a add mem_stream_make_sized, meant to make saving games more efficient 2012-09-11 19:06:27 -07:00
Eric House
75474e1891 Add option to pretend save failed a random pct of time. Point it to
test fix for problem on Android, but right now turning this on breaks
networking.
2012-09-11 07:26:17 -07:00
Eric House
ad4231289f fix --max-devs and resigns begin allowed when only one game 2012-09-11 07:24:51 -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
45de62818b format to 80 columns -- no code change. 2012-09-09 15:49:55 -07:00
Eric House
1608f0a8f9 handle missing error messages 2012-09-09 15:49:17 -07:00
Eric House
9340db36c1 disallow opening android DBs when not configured correctly. 2012-09-09 15:48:57 -07:00
Eric House
8fbc9ca343 fix to compile in release mode 2012-09-09 09:22:00 -07:00
Eric House
95a7b14a3a transmit dict's md5sum along with name in initial message from host to
guest.  On guest, pass that sum into client code along with names so
the appropriate tests can be done and corrections taken.
2012-09-08 20:23:48 -07:00
Eric House
f90e6343c7 don't crash if no dict info 2012-09-08 20:22:22 -07:00
Eric House
9a72f252ed Merge branch 'android_branch' into android_dictname 2012-09-08 13:20:59 -07:00
Eric House
1957ad3dbe add options, that sometimes work, to print desc and md5sum from .xwd
files.  Still need to figure out how to parse binary into UTF-8.
2012-09-08 13:20:12 -07:00
Eric House
047f68aafd version with checksum and note 2012-09-08 13:18:58 -07:00
Eric House
ca88c9850e add DICTNOTE 2012-09-08 13:17:49 -07:00
Eric House
5a81484cf1 add md5Sum to DictInfo and add a getter 2012-09-08 10:11:18 -07:00
Eric House
977bee15d9 add DICTNOTEs 2012-09-08 10:10:17 -07:00
Eric House
7d51ee99d9 add dict_getMd5Sum 2012-09-08 10:09:31 -07:00
Eric House
50a4f32bfa new versions of dicts with checksums and descriptions 2012-09-08 10:08:39 -07:00
Eric House
077560bcd3 load md5sum if present 2012-09-08 09:42:23 -07:00
Eric House
14a77ff7f1 factor out common code 2012-09-08 07:45:18 -07:00
Eric House
8e58d8c1c0 print header elems, including md5sum, if present rather than just
skipping.
2012-09-07 20:34:55 -07:00
Eric House
5fa9b60846 add md5Sum field to dict struct, and on linux load it if present,
otherwise calculate it.  In DEBUG builds always calculate and assert
they match.
2012-09-07 20:34:06 -07:00
Eric House
0b81516682 add md5sum to dict header, summing not the whole file but the parts
that make the wordlist unique: tile counts and values, and bitmaps,
and the data.  This happens to be contiguous data on non-palm .xwd
files so it's easy to duplicate if the sum isn't there.
2012-09-07 20:32:10 -07:00
Eric House
4f180e9e14 pass rejecting dict name into java layer and display as part of turn
lost message.
2012-09-06 19:04:40 -07:00
Eric House
07e6239699 transmit name of failing dict 2012-09-06 08:01:11 -07:00
Eric House
509c832f2f more progress: copy dict name into badwordinfo and free it successfully 2012-09-06 07:49:05 -07:00
Eric House
2f8b6cceb5 pass additional param into callback -- unused so far. 2012-09-06 07:19:12 -07:00
Eric House
4325d4e709 Merge branch 'android_branch' into android_dictname 2012-09-05 19:30:50 -07:00
Eric House
fa90150055 Revert "As an experiment, lower case words being looked up. Apparently one of"
This reverts commit 5bdebd445f.
2012-09-05 19:20:05 -07:00
Eric House
4d57fb889b new and improved URL for Catalan lookup 2012-09-05 19:19:05 -07:00
Eric House
1ec03e48bb plug leak: don't alloc stream when it won't be used 2012-09-05 19:09:01 -07:00
Eric House
71c1fc527a add counter to mpool tracking so easier to find source of leaks 2012-09-05 19:08:22 -07:00
Eric House
5bdebd445f As an experiment, lower case words being looked up. Apparently one of
the Catalan sites doesn't like upper case.  At least in theory no site
should care so the rest of the world should be ok with lower case too.
2012-09-04 19:03:53 -07:00
Eric House
270a19f3aa Revert "first of a set of changes to communicate to clients dictionary being"
This reverts commit b7a0f1489b, which I didn't mean to check in on this branch.
2012-09-03 21:34:51 -07:00
Eric House
ea4d805d5f first of a set of changes to communicate to clients dictionary being
used by server.  Clients need to care if e.g. the server's disallowing
phonies based on its dict.  Can only be sent if client is of latest
version.  In that case, common code calls into new util function.  In
future changes, BoardActivity's implemention of the callback will need
to check if the server's choice of dict is available, and if not offer
to download it.  Once it's available, will want to install it.
2012-09-03 21:33:46 -07:00
Eric House
b7a0f1489b first of a set of changes to communicate to clients dictionary being
used by server.  Clients need to care if e.g. the server's disallowing
phonies based on its dict.  Can only be sent if client is of latest
version.  In that case, common code calls into new util function.  In
future changes, BoardActivity's implemention of the callback will need
to check if the server's choice of dict is available, and if not offer
to download it.  Once it's available, will want to install it.
2012-09-03 21:29:21 -07:00
Eric House
d12ed144ea normalize file: add comments where don't proceed a string, and replace
tabs with spaces.
2012-08-31 21:36:49 -07:00
Eric House
73e29211b0 remove strings no longer used 2012-08-31 21:34:25 -07:00
Eric House
a3b1fc8379 beginnings of script to annotate localized .xml files with what's missing 2012-08-31 21:33:44 -07:00
Eric House
1f330e0c49 tweak name and reflect new name on website 2012-08-30 19:21:05 -07:00
Eric House
adab1b5cea replace getString() calls that fetch format strings then apply them
with calls to the formatting (varargs) version of getString().  Should
be no behavior change.
2012-08-30 19:18:08 -07:00
Eric House
2eb8904a0a rename to cWords-SMS, and move name <string/> into strings.xml so it
can be substituted too.
2012-08-30 19:11:46 -07:00
Eric House
4ffb4efb0c silence compiler warning 2012-08-30 19:10:52 -07:00
Eric House
568bef7ac3 add DICTNOTE 2012-08-30 07:08:55 -07:00
Eric House
3b8c9bfada add two Catalan word lookup URLs 2012-08-30 07:07:42 -07:00
Eric House
73c26d8643 replace Crosswords in variants' xml files. Required passing in app
name from build.xml and a new clean-target script that removes the
generated variant files.
2012-08-30 07:00:26 -07:00
Eric House
4cb848582e fix edge cases in prefix matching 2012-08-28 07:35:11 -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
fddd2c4ed5 fix bug in dict_tilesToString that occurred only when a language had
two tiles starting with the same letter: use recursive search to try
both paths in such cases.
2012-08-27 07:10:40 -07:00
Eric House
79be03ac66 splite lines to get under 80 columns; no code change 2012-08-27 07:06:40 -07:00
Eric House
da4ec16ba4 remove one-release logging confirming getInstallerPackageName result. 2012-08-27 06:15:11 -07:00
Eric House
a0e8b6c076 add description 2012-08-26 21:36:00 -07:00
Eric House
c5f21a3517 new field to be populated if dict desc header is found. 2012-08-26 21:00:21 -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
9d174601b9 add field, and getter, for new dict header description string, and
load it in linux client.
2012-08-26 20:58:28 -07:00
Eric House
f3b289f4be fix to take defaults from current dir 2012-08-26 20:18:37 -07:00
Eric House
6cf138b962 Merge remote branch 'origin/android_branch' into android_branch 2012-08-25 10:22:12 -07:00
Eric House
b29df8512a add null-terminated note to dawg header and modify linux client to
accept it if present.  Android client will successfully ignore it and
will need to be modified to capture and display it if present.  Idea's
to display information about copyright, source, etc. of wordlists.
2012-08-25 10:20:52 -07:00
Eric House
efb7a9b5c5 call loge rather than logf from within catch statements 2012-08-23 07:08:17 -07:00
Eric House
9606c2ec56 Merge remote-tracking branch 'origin/android_branch' into android_branch 2012-08-23 06:53:23 -07:00
Eric House
c6ce5da5a5 Merge remote branch 'origin/android_branch' into android_branch 2012-08-23 06:52:47 -07:00
Eric House
786e05b1f9 update to install beta 51 2012-08-23 06:51:32 -07:00
Eric House
47822e94e3 remove comment 2012-08-23 06:38:57 -07:00
Eric House
67ddbf140b remove comment unintentionally committed 2012-08-23 06:38:45 -07:00
Eric House
c13971e3d8 convert a few more variable names from single- to double-letter 2012-08-23 06:38:29 -07:00
Eric House
8f6486b381 add psuedo-unique device id to update messages; log installer once
(which will only matter once it's on the market)
2012-08-22 19:10:38 -07:00
Eric House
32e1530d3f i => ii; no other change 2012-08-22 07:44:21 -07:00
Eric House
a86ab69aec don't store argv element in game data structure where it gets freed. 2012-08-22 07:35:18 -07:00
Eric House
6758ebcdf5 version strings 2012-08-21 18:57:26 -07:00
Eric House
1423968098 check every day, not every seven, for users who've said they want the
intermediate builds.
2012-08-21 18:55:44 -07:00
Eric House
02fa53cbc7 bring in recent tweak 2012-08-21 08:02:36 -07:00
Eric House
31ef5026be use constants for json params so easier to paste into python code 2012-08-21 07:43:49 -07:00
Eric House
46a5486071 Merge remote-tracking branch 'origin/android_branch' into android_branch 2012-08-21 07:18:05 -07:00
Eric House
ba43e54d8b make default false 2012-08-21 07:14:58 -07:00
Eric House
6b23bebd0a use constants 2012-08-20 21:36:14 -07:00
Eric House
cc4549e7d3 add debug pref controlling whether non-release updates are installed.
(passed to info.py, but is ignored there so far)
2012-08-20 07:23:13 -07:00
Eric House
4d51cc8d3a check for presence of apache mode (which is unavable when running from
cmdline)
2012-08-20 07:07:57 -07:00
Eric House
fca1621ad0 use json to do app and all dict queries in one transaction 2012-08-18 07:42:42 -07:00
Eric House
07c6d57233 pass git version and installer name (usually empty) as part of update
for more granularity
2012-08-16 21:49:52 -07:00
Eric House
16de50ce3d catch sms version up with beta-50 and auto-update changes 2012-08-16 08:15:52 -07:00
Eric House
fbe842d089 cleanup 2012-08-16 08:14:50 -07:00
Eric House
7b86eb7a59 new file 2012-08-16 08:10:05 -07:00
Eric House
75d8820b98 make check-for-updates a debug-only menuitem 2012-08-16 07:48:34 -07:00
Eric House
5584a66043 run update checks off a timer that adds a random element to its
interval; move update check URL into a debug pref.
2012-08-16 07:43:57 -07:00
Eric House
6bdec885b1 add nextRandomInt() to Utils and use it 2012-08-16 07:26:51 -07:00
Eric House
6226efe8d6 move remaining non-jni prefs stuff from CommonPrefs to XWPrefs. No
other changes.
2012-08-16 06:31:23 -07:00
Eric House
81d7903aa3 move new version checking stuff into new file 2012-08-15 19:24:57 -07:00
Eric House
e749aedd34 return url inside a json rather than just a url for more flexibility
and so python's error messages don't trigger Notifications that then
fail.
2012-08-15 18:55:54 -07:00
Eric House
4b318070ca remove unused imports 2012-08-15 18:52:56 -07:00
Eric House
910bb2a5a0 add new function loge that takes an Exception and logs a stack trace
for it
2012-08-15 18:52:31 -07:00
Eric House
3666d5b541 Merge branch 'from_android_beta_49' into android_branch 2012-08-15 18:31:07 -07:00
Eric House
ca4b2e5354 update version code/strings 2012-08-15 18:18:59 -07:00
Eric House
de87b32bb8 fix bug the right way this time: it's ok for a word not to be in the
current player's wordlist when the most recent move's being reported,
but not to ignore word legality altogether.
2012-08-15 18:11:16 -07:00
Eric House
de9a408b15 Revert "Fix bug where if word being scored for long-touch-on-scoreboard wasn't"
This reverts commit 07912bdcdb.
Problem is it breaks WARN-PHONIES
2012-08-15 18:01:36 -07:00
Eric House
6947c50238 pass lang instead of lang code; include app name in notification text 2012-08-15 07:22:10 -07:00
Eric House
cd340aba0c post notification on receipt of url for new app that'll result it it's
being downloaded.
2012-08-15 06:53:13 -07:00
Eric House
dfdaa500a7 return url for app to download when version's old 2012-08-15 06:51:48 -07:00
Eric House
7cb68f1c85 post notification when new dict is available and download it in
when notification selected.
2012-08-15 06:10:39 -07:00
Eric House
e0a8af72c9 work on temporary help site 2012-08-15 06:08:53 -07:00
Eric House
2155631021 improve, including commmandline testability and use of shelve to store
md5sums after they're generated.
2012-08-14 18:29:48 -07:00
Eric House
8b6af3fdb9 add md5sum calculator for dicts and use to send POST that checks if
they're current.
2012-08-14 07:13:03 -07:00
Eric House
3ef81f248b start on checking for updates/latest version: a menu item that
triggers new code that sends an HTTP POST to a python script on the
server that returns whether the current version is correct.
2012-08-13 21:10:22 -07:00
Eric House
9128c2d60c factor code into new method copyFileStream 2012-08-13 07:45:14 -07:00
Eric House
829fd01685 remove change note about SMS version release 2012-08-13 07:09:59 -07:00
Eric House
13d359cb39 turn on endgame BONUSALL feature for linux client too 2012-08-13 06:44:46 -07:00
Eric House
c98bbe2b9a use setsockopt to limit read() block time and so to prevent linux
version from being unkillable when relay crashes at the wrong time.
2012-08-13 06:44:16 -07:00
Eric House
25e65d3e6f cleanup: don't return from middle of function 2012-08-12 19:45:54 -07:00
Eric House
c49408d7e9 fix warnings compiling in release mode 2012-08-12 19:37:47 -07:00
Eric House
07912bdcdb Fix bug where if word being scored for long-touch-on-scoreboard wasn't
in current player's dictionary it'd show up empty: word, once played,
needn't be legal to be displayed.
2012-08-12 19:25:16 -07:00
Eric House
eb8401bb7a fix bug when turn lost for phonies in networked game: what's sent must
match what's expected.
2012-08-12 11:52:20 -07:00
Eric House
ec0702d584 initialize buffer that common code will pass to strcat. 2012-08-10 21:31:01 -07:00
Eric House
d66208a1f2 add script to sync; rename to put all in directory 2012-08-10 08:05:12 -07:00
Eric House
1e5757dc45 to start work on website... 2012-08-02 22:26:48 -07:00
Eric House
c046606e53 string changes a new changes file toward new release and initial
release of SMS version
2012-08-02 07:18:58 -07:00
Eric House
27cbd0e0c9 go with end-game change that takes remaining tiles into account for
robots but not for hints.
2012-08-01 20:31:21 -07:00
Eric House
464696566d get rid of NODE_CAN_4. Not change to post-compiled code 2012-08-01 20:29:15 -07:00
Eric House
b8ba3c5906 move sms enable checkbox to top of screen 2012-07-31 23:25:51 -07:00
Eric House
ade5a84e2d tweak sms plan confirmation text 2012-07-31 07:46:16 -07:00
Eric House
3641799c4e wrap sms confirm view in scroller as it's wordy enough to need it in
landscape mode.
2012-07-31 07:45:58 -07:00
Eric House
8562503cd9 show status icon as red when SMS game and airplane mode on. (Better
would be to track radio state in NetStateCache.)
2012-07-31 06:47:52 -07:00
Eric House
0aadec9380 Uninstall variant based on where called from if unspecified 2012-07-31 06:46:11 -07:00
Eric House
4414943f90 implement loading saved DB from /sdcard 2012-07-30 18:36:41 -07:00
Eric House
b8a96f70bf turn on (experimentally) new feature making robot more likely to use
all remaining tiles (in doing same with hints, which probably won't
ship)
2012-07-30 07:34:41 -07:00
Eric House
af2c361225 add debug menu option to enable debug features, and first such
feature, to copy xwdb file to /sdcard.  Option to do opposite is
stubbed out.
2012-07-30 07:23:52 -07:00
Eric House
1fe14be9bf less ominous text for new SMS game creation, ominousness having moved. 2012-07-30 07:14:52 -07:00
Eric House
d25916ae5f protect sqlite code with compile-time flag so easier to disable. 2012-07-29 08:37:08 -07:00
Eric House
8f04bfadaf modify engine score ranking to include estimate of bonus to be earned
if all tiles are used (ending the game and triggering penalties for
other players.)  Changes are protected by compile-time flags currently
not turned on.
2012-07-29 08:35:08 -07:00
Eric House
730cd0d599 tweak dialog text 2012-07-26 21:16:00 -07:00
Eric House
9185ec71ca use newest Catalan wordlist 2012-07-26 21:14:40 -07:00
Eric House
08e5fbdcc2 add ability to open game in sqlite3 DB from an Android phone. It's
read-only now: changes are not saved.  But it works!
2012-07-26 20:44:33 -07:00
Eric House
0c030360bf fix compile warning 2012-07-26 20:42:25 -07:00
Eric House
e70fbda502 don't send packets if SMS play disabled 2012-07-26 07:21:16 -07:00
Eric House
1abba7e560 fix crash on first install: context !always= PrefsActivity 2012-07-26 07:20:39 -07:00
Eric House
9c670804f2 draw status icon background red when SMS turned off. 2012-07-25 23:26:24 -07:00
Eric House
bc91956e20 put up an alert when SMS game opened but SMS is disabled. (Does not
have a button taking you to settings.)
2012-07-25 07:15:57 -07:00
Eric House
6405294f2f remove unused pref 2012-07-25 07:12:54 -07:00
Eric House
cd1eb2e4da add pref enabling SMS games, and a scary confirmation dialog meant to
force user to realize the potential costs (by requiring interaction).
Until that's enabled, show in New Game activity an explanation and
button that goes to Preferences.
2012-07-24 07:15:27 -07:00
Eric House
4f437f0d55 don't start SMS receivers on device without a phone 2012-07-24 07:09:37 -07:00
Eric House
8e961fcb4c remove logging 2012-07-24 06:56:55 -07:00
Eric House
b7247d259c add superclass for CommonPrefs that can hold stuff not related to
jni/common code.
2012-07-23 22:42:38 -07:00
Eric House
381f30b6d2 claim to handle keyboard/orientation changes for prefs activity 2012-07-23 22:36:50 -07:00
Eric House
a785d89d31 ignore new files 2012-07-23 22:33:43 -07:00
Eric House
9df8086476 no SMS game option if device has no phone 2012-07-21 19:02:23 -07:00
Eric House
549c826c9a show SMS message send/receives from BoardActivity where a hander's
available.
2012-07-20 21:36:59 -07:00
Eric House
54b4478582 show orange arrows briefly when net traffic goes in or out 2012-07-20 18:11:02 -07:00
Eric House
00317dea1e center board and buttons so that any leftover white space is half
above and half below.
2012-07-20 17:01:58 -07:00
Eric House
2a25bae706 don't use cached bitmap if board's been resized 2012-07-19 06:54:56 -07:00
Eric House
95b68ffae2 up changelog and version strings for new release 2012-07-18 07:24:59 -07:00
Eric House
a5c3c7e548 fix layout on wider screens (e.g. 768x1024): rather than draw the
board so wide that scrolling's required, reduce width enough that it's
not.
2012-07-18 07:07:53 -07:00
Eric House
516a1800a0 Add board-size to game config. It makes no sense for it to exist in
per-game defaults but not be settable in config.  But it may make more
sense to remove both options/locations entirely, or hide them by
default.
2012-07-16 07:15:33 -07:00
Eric House
50a749eccc ignore new file 2012-07-16 06:17:01 -07:00
Eric House
9b0436d1ee Make rem string measure function return boolean to indicate rect will
be invisible rather than setting width and height to 0.  No real
change beyond simplifying/speeding platform code.
2012-07-15 09:30:27 -07:00
Eric House
d602a0c22b fix reported NPE by saving variable in bundle passed to onCreate 2012-07-14 14:53:57 -07:00
Eric House
0769cbccdc capitalize consistently 2012-07-14 07:48:19 -07:00
Eric House
479ed0dc58 update conn status on receipt or send of packets to/from relay, not
just when relay connect status changes.  This means that a game will
show as connected when it's still waiting for another device to join
room, but also fixes exchanging moves over 10 minutes and having the
status icon say you haven't sent or received in that long.  This could
be improved.
2012-07-12 21:15:35 -07:00
Eric House
248db3d144 update version strings and changelog 2012-07-12 20:56:28 -07:00
Eric House
b02855b00c sort tray after an undo adds tiles 2012-07-12 06:48:09 -07:00
Eric House
a3de089e15 remove unused constant 2012-07-12 06:34:54 -07:00
Eric House
abcdafe56a always invalidate board view to force layout/draw. Fixes crosshairs
not going away, and board being unresponsive, after lookup activity is
dismissed.
2012-07-12 06:34:01 -07:00
Eric House
d3b56f4167 don't show rem text when -1 2012-07-12 06:15:53 -07:00
Eric House
11bd4a73fe oops: fix centered text drawing. 2012-07-11 06:17:36 -07:00
Eric House
bad6c599f8 more tweaks to tray tile drawing: make small screen letters 3/4 height
even though numbers are 1/3 and overlap is in theory possible; put 1/5
of extra space to left of letters so they don't hug the edge.
2012-07-10 21:04:54 -07:00
Eric House
bfc68656cb move arrow to where removed tile was, and set its direction based on
whether removed tile and the next tile are in the same column or row.
2012-07-10 18:00:23 -07:00
Eric House
c2956f4064 save net status state on a timer (when handler is available) waiting
five seconds.
2012-07-10 06:21:49 -07:00
Eric House
bd70a1dd7d improve text in remaining tiles dialog, and always show the tiles for
all trays rather than excluding those in current player's tray.
2012-07-09 21:44:29 -07:00
Eric House
f1c5ebeb31 don't hide REM tiles square when drops to 0 2012-07-09 21:43:35 -07:00
Eric House
09a81a2639 add some consts 2012-07-09 21:36:17 -07:00
Eric House
d234646fb2 fix broken compile 2012-07-09 21:17:01 -07:00
Eric House
e6f02ee3c7 when drawing letter in tray tile, only shift origin left of edge when
letter width exceeds that of tile.
2012-07-09 07:03:39 -07:00
Eric House
5702c83f17 do string formatting properly, using resources and StringBuffer. 2012-07-09 06:56:08 -07:00
Eric House
6da3f10855 cleanup -- no code change 2012-07-09 06:15:02 -07:00
Eric House
e7b0727e0c leave remaining-tiles in place when pool count drops to 0. 2012-07-09 06:07:26 -07:00
Eric House
9885d3bf61 draw letters in tray tiles as far to left as possible 2012-07-07 19:55:19 -07:00
Eric House
7f087181e5 Don't store current network connType in ConnStatusHandler; instead
pass the one for which we want icon displayed or status text
generated.
2012-07-07 19:45:18 -07:00
Eric House
0c02103d42 fix assertion failures due to failure to get game locks. The problem
is that getSummary() can be called at unpredictable times by
background tasks for the games list, and the current open game holds a
lock as long as it's open.  So those getSummary() calls must be
allowed to fail.  Before, letting them fail immediately meant
empty/unusable list elements; now I've added a time they'll wait
before failing.  Now the ones that are called while a game is open can
fail without being noticed, but the ones that are called as a game is
closed to update its summary will succeed by being able to wait for
its lock to be given up.
2012-07-07 11:34:40 -07:00
Eric House
ae3ae6a3a4 turn on base64 for SMS too 2012-07-07 11:29:54 -07:00
Eric House
30c77de2d0 tweak menu name 2012-07-07 11:29:25 -07:00
Eric House
6abb56dd0c make tmp list elem closer in size to the real thing so screen jumps
around less.
2012-07-07 11:29:15 -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
052725aabc fix problems with serialization: use types that are serializable, and
init transients correctly.
2012-07-07 11:05:07 -07:00
Eric House
43fead368c make Random class static rather than generate one over and over 2012-07-07 09:27:27 -07:00
Eric House
3c19a7ef44 tolerate failure to get lock for five seconds before asserting (up
from one.)
2012-07-06 07:14:01 -07:00
Eric House
75602c47d8 on Amazon-made devices only, sleep randomly during load of game
summary.  This seems to work around a bug where only the last item in
the list is clickable but once it's clicked events are received for
every failed click up to that point.
2012-07-06 07:13:11 -07:00
Eric House
9a23473b2f use a dummy TextArea instead of an empty custom view as a placeholder
for loading game summary view.
2012-07-06 06:49:09 -07:00
Eric House
d6fdd24637 move interface methods together -- no code change 2012-07-06 06:10:04 -07:00
Eric House
1ad0a899f0 don't return from getSummary without succeeding, even if must wait on
lock.  Fixes problem with blank entries in game list after returning
from config screen.
2012-07-03 20:30:31 -07:00
Eric House
60a799ef1f move SMS games up again, this time in a way that networked game creation
isn't hidden along with SMS.
2012-07-03 07:02:29 -07:00
Eric House
bf9fe75f5c Revert "in new game dialog, move sms above network (since that's presumably"
This reverts commit 19dbddc0b8.
2012-07-03 06:37:24 -07:00
Eric House
eba1d91157 fix game_config view contents sticking to bottom of tall screen when lock
checkbox hidden, e.g. on Kindle Fire.
2012-07-03 06:29:59 -07:00
Eric House
be9ed5b963 add toolbar button style for 'large' devices so buttons are bigger on
the Kindle Fire but not too big on phones.
2012-07-02 07:39:06 -07:00
Eric House
8ebe180eab fix NPE 2012-07-02 06:59:35 -07:00
Eric House
c386537cb7 gitignore new files 2012-07-01 21:02:42 -07:00
Eric House
66f2007347 turn new tray-undo feature on for SMS version too 2012-07-01 21:02:11 -07:00
Eric House
19dbddc0b8 in new game dialog, move sms above network (since that's presumably
the reason people chose that version)
2012-07-01 17:35:50 -07:00
Eric House
2e6b64a4e4 complete implementation of java part of one-pass scoreboard draw. Now
looks pretty much identical to what the old code draws except that
rather than having width allocated in proportion to requested size all
get the same width except the one whose score it is which gets 2x.
2012-07-01 17:24:50 -07:00
Eric House
c41c877ae7 fix right edge of scaled text getting clipped by paying attention to
where getTextBounds() says its left edge is.
2012-07-01 17:05:39 -07:00
Eric House
43e8205fd8 only honor one install-set option -- fixes multiple installs. 2012-07-01 16:03:02 -07:00
Eric House
2434d85684 don't pass the same player-1 data for every player 2012-07-01 16:01:01 -07:00
Eric House
5cd8ab2b33 remove uncalled method -- no change. 2012-07-01 15:57:20 -07:00
Eric House
2ae6bd8caf override onMeasure to make BoardView only as large as it needs to be
so that on tall narrow screens (e.g. Kindle Fire) there's no white
space between the tray and the buttons.
2012-07-01 12:54:38 -07:00
Eric House
03f4236240 install to everything by default 2012-07-01 12:53:36 -07:00
Eric House
89ffd972bf more work on single-pass scoreboard drawing. Now the jni stuff is
finished, but disabled via compile-time flag, and there's a
commented-out rudimentary implementation on the java side.
2012-07-01 10:04:10 -07:00
Eric House
b9b58bd0a5 enable tray tap undo 2012-06-29 06:52:49 -07:00
Eric House
c272491db6 add compile-time option to have tap on empty tray space return one
tile instead of all of them.
2012-06-29 06:50:46 -07:00
Eric House
69b0a0d4a3 load conn state for sms app too 2012-06-28 07:22:10 -07:00
Eric House
9b9aec45da format status timestamps in terms of how long ago (using
getRelativeDateTimeString); save and restore serialized timestamps.
2012-06-28 07:20:28 -07:00
Eric House
52e70bff3d rename method; make [g|s]etPrefsString public 2012-06-28 07:17:48 -07:00
Eric House
c8e2dff962 start process of compiling with XWFEATURE_SCOREONEPASS enabled by
adding stubbed-out methods and making old methods conditionally
compiled.  No change in code.
2012-06-27 07:08:09 -07:00
Eric House
c8cd2d500a fix to compile and save player score rect info for non-keyboard-nav case 2012-06-27 07:04:36 -07:00
Eric House
065446def4 paint status area background manually in red or green and use a single
transparent background icon for success and failure.
2012-06-27 06:44:24 -07:00
Eric House
2fc2a60842 create alternate scoreboard draw flow, disabled by compile-time flag,
that does layout and draw in a single pass and with more information
so platform has more responsibilty for dealing with space constraints
and can, I hope, do a better job.  There's no change until the flag is
turned on.  Works for GTK with flag on, but is stubbed out for ncurses.
2012-06-26 07:20:09 -07:00
Eric House
d8e4b6481c make rectContainsRect public so can be used in assert 2012-06-26 07:15:26 -07:00
Eric House
13633186ff don't reset variable unless changed 2012-06-26 06:50:54 -07:00
Eric House
8ff27cc075 include "sms" or "text" in chooser title 2012-06-24 14:46:02 -07:00
Eric House
5eb937dede use deviceSupportsSMS() to skip asking user whether to invite vis SMS
or email when SMS isn't an option.  Assumption: email *is* available,
which it isn't if it hasn't been configured yet.
2012-06-24 14:43:57 -07:00
Eric House
392f4239d7 add deviceSupportsSMS() -- which checks phonetype, i.e. that there's no phone. 2012-06-24 14:42:46 -07:00
Eric House
7dfe5ba8e1 inval status icon when there's a change so it gets updated. 2012-06-21 18:28:45 -07:00
Eric House
10b47257e9 flesh out new connection status icon: track times and give meaningful
message.  Still to do: [de]serialize state, and separate global from
per-game somehow.  Might also want to include game state (e.g. whether
in a game or still looking.)
2012-06-20 07:50:08 -07:00
Eric House
dcf343b700 ignore new images 2012-06-20 07:32:28 -07:00
Eric House
df62888104 up version for sms build too 2012-06-20 06:35:01 -07:00
Eric House
2b9fb13dbd Merge branch 'android_smallscreen' into android_branch
Conflicts:
	xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardView.java
2012-06-20 06:14:37 -07:00
Eric House
c2c1fe4f89 attempt to improve scoreboard drawing when names are long or numerous
enough to crowd by using same math to figure height when measuring as
when drawing, but it still needs work.
2012-06-19 07:44:26 -07:00
Eric House
df907f6cb3 up version strings and changelog 2012-06-19 07:36:32 -07:00
Eric House
964c4cecd8 add dict-browse menuitem to small-screen board menu and on same move
undo/redo up per user request
2012-06-19 06:19:03 -07:00
Eric House
bb5cd677ab make turn color public so can be used from board too (though I'm not
doing that yet.)
2012-06-19 06:19:03 -07:00
Eric House
9d8e1ec261 cleanup: one-letter variables are bad. 2012-06-19 06:19:03 -07:00
Eric House
c34f70f9eb fix bug where current player's scoreboard would disappear if other
players' names were too long by giving all a the same proportion of
what they request and passing in the percent given in case draw
implementation wants to use it as a cue to truncate.
2012-06-19 06:19:03 -07:00
Eric House
4cd8f8bfd1 change toast to not imply game to start immediately. 2012-06-19 06:18:44 -07:00
Eric House
545cf9166f show green border in contracted view too when appropriate, and not
only for net games.
2012-06-19 06:18:16 -07:00
Eric House
d46c827b4c reduce min tray height to twice cell height, and tweak layout on
small-screen devices to make the value readable.
2012-06-19 06:16:36 -07:00
Eric House
2e2df3dc17 add hasSmallScreen() 2012-06-19 06:11:16 -07:00
Eric House
a65e1dfa79 add menus for small-screen devices to provide functionality others get
from toolbar.
2012-06-19 06:11:16 -07:00
Eric House
7a6d4c870e new .gitignore for new res directory 2012-06-19 06:11:16 -07:00
Eric House
5d9381e1bc change text of menu from hide rack to show rack depending on hidden state 2012-06-19 06:11:16 -07:00
Eric House
78dfd6267c include trayVisState in GameStateInfo on the java side 2012-06-19 06:11:16 -07:00
Eric House
fcf76aba0f include trayVisState in GameStateInfo 2012-06-19 06:11:16 -07:00
Eric House
b78ea03ea6 add board layout for small case that doesn't include toolbar or
exchange-state buttons, and check for presence of Views that may now
be missing.  With this checkin small screen devices don't have access
to toolbar functionality -- new and expanded menu will be required for
them.
2012-06-19 06:11:16 -07:00
Eric House
1e9928e7f3 add commented-out toString() for debugging 2012-06-19 06:11:16 -07:00
Eric House
d7f576d6b7 fix board dimensioning for small (needs-scrolling) screens. Since this
effects larger screens needs some testing.
2012-06-19 06:11:16 -07:00
Eric House
00102ec20a include stylesheet in generated index.html 2012-06-19 06:11:15 -07:00
Eric House
9ac5113c93 add dict-browse menuitem to small-screen board menu and on same move
undo/redo up per user request
2012-06-15 07:00:18 -07:00
Eric House
628c058c4c make turn color public so can be used from board too (though I'm not
doing that yet.)
2012-06-15 06:44:39 -07:00
Eric House
6beb572180 cleanup: one-letter variables are bad. 2012-06-15 06:43:54 -07:00
Eric House
405cb23023 fix bug where current player's scoreboard would disappear if other
players' names were too long by giving all a the same proportion of
what they request and passing in the percent given in case draw
implementation wants to use it as a cue to truncate.
2012-06-15 06:26:40 -07:00
Eric House
3d9478744a change toast to not imply game to start immediately. 2012-06-13 20:07:28 -07:00
Eric House
46770ac0cb show green border in contracted view too when appropriate, and not
only for net games.
2012-06-12 07:19:18 -07:00
Eric House
e3401724e1 new icons for network status and code to draw them, so far hard-coded
to show success.
2012-06-11 19:23:01 -07:00
Eric House
1993ea48f7 ignore new file 2012-06-11 07:02:39 -07:00
Eric House
266e9ba91a reduce min tray height to twice cell height, and tweak layout on
small-screen devices to make the value readable.
2012-06-11 07:01:36 -07:00
Eric House
ac74e2e832 add new class that will be responsible for drawing network status icon
at right end of scoreboard.  It now shows the same icon as the games
list per connection type and gives a stubbed-out status message dialog
when tapped.  Still need to add actual status: when was the last
successful send or receive; and need to add decorations to show
connection state.
2012-06-10 07:40:33 -07:00
Eric House
4fc33fe4e5 add hasSmallScreen() 2012-06-09 10:01:41 -07:00
Eric House
9827ea1b39 add menus for small-screen devices to provide functionality others get
from toolbar.
2012-06-06 06:48:55 -07:00
Eric House
dd30bb6a7c new .gitignore for new res directory 2012-06-06 06:43:00 -07:00
Eric House
b8bad58125 change text of menu from hide rack to show rack depending on hidden state 2012-06-05 22:19:44 -07:00
Eric House
6257c14436 include trayVisState in GameStateInfo on the java side 2012-06-05 22:13:58 -07:00
Eric House
60a4f123a2 include trayVisState in GameStateInfo 2012-06-05 22:13:26 -07:00
Eric House
e15c104eb4 add board layout for small case that doesn't include toolbar or
exchange-state buttons, and check for presence of Views that may now
be missing.  With this checkin small screen devices don't have access
to toolbar functionality -- new and expanded menu will be required for
them.
2012-06-05 07:42:39 -07:00
Eric House
c5358dc9c3 add commented-out toString() for debugging 2012-06-05 07:41:00 -07:00
Eric House
b3cf9c65aa fix board dimensioning for small (needs-scrolling) screens. Since this
effects larger screens needs some testing.
2012-06-05 07:38:58 -07:00
Eric House
baa8c7472d include stylesheet in generated index.html 2012-05-30 22:16:43 -07:00
Eric House
a38c275663 back to building for android-7 2012-05-30 21:23:53 -07:00
Eric House
27ddc355ed don't bother cloning message when it'll be passed to multiple games.
Clone was too late, and there's no chance of modification of the
contents.
2012-05-30 06:54:30 -07:00
Eric House
a03dc80205 tweak method for clarity -- no behavior change 2012-05-30 06:52:08 -07:00
Eric House
42f2612e67 turn on HASH_STREAM to match Android 2012-05-30 06:51:26 -07:00
Eric House
a0336ebb01 turn on new HASH_STREAM feature 2012-05-29 07:26:51 -07:00
Eric House
65f90b2d86 up version number and add changes 2012-05-29 07:26:24 -07:00
Eric House
821add6df5 fix to compile when HASH_STREAM not defined 2012-05-29 07:19:19 -07:00
Eric House
ac23e7e950 define HASH_STREAM to enable new algorithm 2012-05-28 15:58:00 -07:00
Eric House
240d308d07 move nperdevice and ntotal side-by-side 2012-05-28 11:08:43 -07:00
Eric House
adadc9c90c use new hash algorithm for new stream version, old for previous
versions.  Tested upgrade scenario from b44: works.
2012-05-28 11:07:59 -07:00
Eric House
b343034cc2 add ability to pass params only to new version of app so that test of
upgrade from old to new needn't skip test of new features.
2012-05-28 11:04:39 -07:00
Eric House
e36635944e fix to make two-device games much more common than four-device ones 2012-05-27 19:05:27 -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
0cb217496e cleanup 2012-05-24 22:22:00 -07:00
Eric House
5309da9845 add --undo-pct option that passes through to curses client 2012-05-24 22:17:10 -07:00
Eric House
9354e0e0cd fix off-by-one error in stream_copyBits that seems to have been
responsible for HASH_STREAM not working.
2012-05-24 22:16:22 -07:00
Eric House
fd7a25ba3c makefile for just-released DISC2 wordlist for Catalan 2012-05-23 20:04:11 -07:00
Eric House
cd89885cd2 add new periodic (one-second) timer, and commandline option that sets
what percent of the times that timer fires will result in a move being
undone.  Will be used to interject random out-of-order undos into
games played for testing.  (Currently the tests fail when this is
enabled; I need to fix that.)
2012-05-23 19:58:03 -07:00
Eric House
2db02f9aa5 fix delegated dialogs to clear state before issuing dismiss callback
so that callback can set up another dialog without tripping an assert,
then move SMS invite dialog chaining from on-click callback to
on-dismiss.
2012-05-23 07:16:27 -07:00
Eric House
60e1d50f43 add stream_copyBits, and use it to hash the move stack -- commented
out via conditional compile as it still doesn't work in all cases.
2012-05-22 19:24:54 -07:00
Eric House
d1869a233c fix so non-debug build builds 2012-05-22 19:18:04 -07:00
Eric House
60aa0cb614 revert unintended commit 2012-05-21 21:49:02 -07:00
Eric House
622afa4d98 track what games we've sent died notices for and don't repeat. Fixes
infinite message flood occurring when a packet was received after
games had been deleted on both devices.
2012-05-21 21:47:09 -07:00
Eric House
5efaced84b Revert "Revert "track what games we've sent died notices for and don't repeat. Fixes""
This reverts commit 8fd1388b5f.
2012-05-21 21:45:30 -07:00
Eric House
8fd1388b5f Revert "track what games we've sent died notices for and don't repeat. Fixes"
This reverts commit 67715b653a.
2012-05-21 21:44:51 -07:00
Eric House
67715b653a track what games we've sent died notices for and don't repeat. Fixes
infinite message flood occurring when a packet was received after
games had been deleted on both devices.
2012-05-21 21:27:22 -07:00
Eric House
e80417e806 don't draw separate icon in games list elements for needs-sync relay
game -- since that state no longer really exists.
2012-05-21 21:23:13 -07:00
Eric House
adac3abcc6 fix bug where all notifications wound up launching the same game
because all their PendingIntents were the same by passing a unique
resultCode on creation.
2012-05-21 06:46:37 -07:00
Eric House
f56b09980c include game name in notification text 2012-05-21 06:40:52 -07:00
Eric House
469f63f96f log when more than one game found with a given ID. 2012-05-20 10:33:26 -07:00
Eric House
1ca36044a0 allow for possibility that there's more than one game on device with
one gameID.  Currently this should only happen when a device is
playing via SMS against itself -- i.e. when I'm debugging or a user is
playing around.  It hasn't been tested and may not work to the extent
that a game like that can actually work and so may want to be backed
out later.
2012-05-20 10:24:37 -07:00
Eric House
3c4e01ef52 improve text clarity 2012-05-18 21:23:38 -07:00
Eric House
2564a660ad remove logging 2012-05-18 21:23:12 -07:00
Eric House
211318f2ef remove logging 2012-05-18 21:23:09 -07:00
Eric House
df0c5e4abf move plus button to middle, and fix so both text buttons wrap when
required on narrow screen.
2012-05-18 21:14:50 -07:00
Eric House
47a5ab65df use broadcast receiver for status PendingIntents from SendTextMessage,
and pass up new MultiService messages on success or failure.  In
response to these, post SMS status icons on board.  Still need to come
up with an initial status, notice radio ups/downs, etc.  And design icons!
2012-05-18 07:55:10 -07:00
Eric House
523d49ef04 stubs for sms status icons 2012-05-18 07:52:32 -07:00
Eric House
9ba663ab98 implement util_phoneNumbersSame in java and call telephony's number
compare method.  Skip the java call when the numbers are
strcmp-identical.
2012-05-18 07:41:46 -07:00
Eric House
867e9ffc2f implement stubbed-out util_phoneNumbersSame so that three-device SMS
games work in emulator.  May need to call into java to use Android's
more sophisticated phone number comparison to work on devices.
2012-05-18 07:17:21 -07:00
Eric House
60c3a5bf64 use green_border to frame remote players whose turn it is. 2012-05-18 06:54:05 -07:00
Eric House
091f927c8b add new file 2012-05-18 06:53:28 -07:00
Eric House
40843db7df rename 9-patch 2012-05-18 06:52:25 -07:00
Eric House
599d0630d3 built main app for same version as sms version 2012-05-18 06:22:23 -07:00
Eric House
81f830c0d4 drawable that creates a green frame around view -- to show it's remote
player's turn.
2012-05-18 06:22:06 -07:00
Eric House
3a54aa0ebc add util_informUndo() that gets called, and puts up a dialog, after
remote device has performed an undo on a committed turn.
2012-05-14 07:01:02 -07:00
Eric House
61453b8720 center gtk_ask window on parent window rather than on screen so can
tell which instance it belongs to
2012-05-14 06:58:54 -07:00
Eric House
edd02c24ea derive variant if called from a directory with AndroidManifest in it 2012-05-11 07:32:02 -07:00
Eric House
10ad59247a don't remove undo menuitem for networked games -- should be safe to
use now.
2012-05-11 07:26:49 -07:00
Eric House
a311e487a9 add another change 2012-05-09 18:22:30 -07:00
Eric House
013d9c689b fix bug introduced with dictionary lookup of words played that meant
trades didn't get reported as remote moves -- it just became your turn
without notice.
2012-05-09 18:22:05 -07:00
Eric House
2996af17ce fix crash when trade happens while --show-other is on 2012-05-09 18:20:51 -07:00
Eric House
261908a09f use non-strippable spaces when ': ' is meant to terminate string. 2012-05-09 18:19:53 -07:00
Eric House
f6ba94735d move BT and SMS listener installation behind if_supported tests 2012-05-09 07:09:15 -07:00
Eric House
1c08190941 list the other change 2012-05-09 06:51:48 -07:00
Eric House
d846f96ec5 post-code-review cleanup: no significant change 2012-05-09 06:51:06 -07:00
Eric House
d23f50a801 Merge remote branch 'origin/android_branch' into android_branch 2012-05-08 06:16:40 -07:00
Eric House
f7c49a6620 remove shift: --one-per doesn't take a param 2012-05-08 06:15:06 -07:00
Eric House
e797b342fe check in sms version of prefs xml file so that it can have its
checkbox for turning off warnings about SMS costs.  I've already
wasted too much time without figuring out how to add or remove the
pref programatically....
2012-05-07 21:09:01 -07:00
Eric House
155df55b5c break hash finishing stuff out to be called only once 2012-05-07 20:48:00 -07:00
Eric House
e82faedc63 up version number here too. 2012-05-07 07:13:48 -07:00
Eric House
08f03af2cc don't write gameID as 32 bits when it's bound for old-version client,
and assert based only on the lower 16 bits in case came from
old-version client.  Fixes crashes testing mid-game upgrade from beta
43.
2012-05-07 07:02:43 -07:00
Eric House
c17826ffbf up beta version 2012-05-05 17:39:30 -07:00
Eric House
3b3439371f Merge branch 'android_branch' into android_bt 2012-05-05 17:33:21 -07:00
Eric House
5104ca6bc5 always sort tiles prior to including in hash -- as a fix for the case
where a game is opened that was created by an earlier version that
didn't save assigned tiles in sorted order.
2012-05-05 17:33:07 -07:00
Eric House
64199c4e64 Merge branch 'android_branch' into android_bt 2012-05-05 11:08:03 -07:00
Eric House
adf43bb1e8 Merge branch 'android_branch' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_branch 2012-05-05 11:07:20 -07:00
Eric House
c2d8b17747 add --sort-tiles and fix confict between param name in code and in usage() 2012-05-05 10:55:35 -07:00
Eric House
058cbc4e1b first attempt, commented out, to hash the stream directly rather than
its exploded contents.  Does't work once there's been some undo
activity as I don't have a way to get the length of the stack below
the undo/redo line.  Looks promising though.
2012-05-05 10:47:28 -07:00
Eric House
eb2f5ff6eb sort assigned tiles before putting them in the move stack. Fixes hash
comparison failure when devices are using sort-tiles option.
2012-05-05 09:47:57 -07:00
Eric House
44a6653166 add passthrough of params present in gtk but not curses 2012-05-05 09:24:41 -07:00
Eric House
fd4ad0ae31 turn on board hashing and bigboard options (in protocol, not UI) 2012-05-04 06:16:02 -07:00
Eric House
83fec4d5eb turn on board hashing and bigboard options (in protocol, not UI) 2012-05-04 06:00:46 -07:00
Eric House
501210e3a3 turn on hash feature and mark so can see on relay 2012-05-03 21:49:15 -07:00
Eric House
d59b19514b Merge branch 'android_branch' into android_bt 2012-05-03 21:44:35 -07:00
Eric House
de3107271d changes to make hashing work -- make sure unused space in structs is 0
-- and to detect when an incoming move doesn't make sense.  These
latter changes may not be necessary now that hash code is checked
first thing, but can't hurt, and there will be devices without hash
codes for a while.
2012-05-03 19:02:42 -07:00
Eric House
7afa4f26db use the new --trade-pct flag 2012-05-03 19:00:56 -07:00
Eric House
47dde6cf3c init bitfield to 0 in case I want to hash stream directly 2012-05-03 19:00:43 -07:00
Eric House
652fe6dd64 fix test: unsigned can't drop below 0 2012-05-02 20:42:45 -07:00
Eric House
26913c5a37 get rid of excessive logging 2012-05-02 20:41:46 -07:00
Eric House
09f9038cff add option to have robot choose to trade tiles a configurable percent
of the time.  Meant to increase automated test coverage of trades.
2012-05-02 20:14:42 -07:00
Eric House
de965350c4 turn on feature that allows version of remote device to be deduced and
included in stream -- so that new move stack hash can be included when
possible.
2012-05-01 07:59:22 -07:00
Eric House
c52db8a8f0 toward better recovery from out-of-sync move and undo: include a hash
of the move stack with every turn (version permitting), and drop
incoming moves created against a move stack different from ours.
2012-05-01 07:58:11 -07:00
Eric House
0e07fab731 add stack_getHash() -- returning hash of current move stack (excluding
any pending redos)
2012-05-01 07:56:45 -07:00
Eric House
89ca45357a add pool_containsTiles() 2012-05-01 07:49:41 -07:00
Eric House
75247e59df fix confusing log message 2012-04-26 19:12:13 -07:00
Eric House
49f4700799 change sms-game-name dialog title 2012-04-24 19:01:21 -07:00
Eric House
b68b8aa0d0 for extra safety, move message hash into header where it can be part
of test whether message should be deleteted from sms inbox.
2012-04-24 07:19:52 -07:00
Eric House
9035f901b1 fix NPE for non-SMS case 2012-04-23 21:46:27 -07:00
Eric House
6930da9686 add warning about unlimited SMS plans that's triggered whenever a new
number is added to the list of possible invitees.
2012-04-23 20:07:44 -07:00
Eric House
010fae495b fix compile error 2012-04-23 07:37:02 -07:00
Eric House
2082b40d4a look up names from phones rather than store them separately 2012-04-23 07:32:42 -07:00
Eric House
f7c9e0cc16 use name in summary where available 2012-04-23 07:31:33 -07:00
Eric House
b2a1fefd26 synchronize access to phone-to-name hash 2012-04-23 06:55:00 -07:00
Eric House
07c1d68321 syntax error! 2012-04-23 06:54:23 -07:00
Eric House
97cb3863a6 name constant -- no code change 2012-04-23 06:34:00 -07:00
Eric House
02443d26a9 catch oob exception when older version receives enum not in values() array 2012-04-23 06:30:20 -07:00
Eric House
b34e741e30 add param to phoneToContact controlling whether phone number is
returned when name can't be found.
2012-04-23 06:16:06 -07:00
Eric House
d5076e2167 make a couple of methods private 2012-04-23 06:14:02 -07:00
Eric House
a98f9ef12f refactor; don't rely on otherwise unused i-var. 2012-04-23 06:13:05 -07:00
Eric House
c15b56199c use marker enum to test for size. no code change 2012-04-22 17:55:53 -07:00
Eric House
a72dbdd8dd add static to cache phone->name mapping 2012-04-21 22:16:47 -07:00
Eric House
3af20f1d5a look up name for phone number in contacts and use in game config.
Will want to use elsewhere.  May want to cache depending on speed.
2012-04-19 00:37:37 -07:00
Eric House
e5758766f7 test for null comment 2012-04-19 00:36:51 -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
d6ad17ad58 don't crash if relayID null 2012-04-18 23:07:14 -07:00
Eric House
8713b9e148 don't crash when relayID is null 2012-04-18 23:05:28 -07:00
Eric House
b4416f3abe add missing private keyword 2012-04-18 23:04:55 -07:00
Eric House
d67614cd69 send ack after creating game on receipt of SMS invitation. Thought
about starting up the game so it could connect, but that'd make it
impossible to change any settings, e.g. player name, on the accepting
end.
2012-04-17 21:46:57 -07:00
Eric House
019a053df0 give move-made notifications ids based on the games they belong to so
that there can be more than one, then use those ids to dismiss them if
the game's opened other than through the notifications.
2012-04-17 20:08:37 -07:00
Eric House
3d60ee701e honor setting for toast showing messages sent and received 2012-04-17 19:23:15 -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
Eric House
416a1054a7 Merge branch 'android_ack' into android_bt
Conflicts:
	xwords4/common/comms.c
	xwords4/common/comtypes.h
2012-04-13 20:57:35 -07:00
Eric House
f22d9530b1 track what's been ack'd, and add method to ack what hasn't been. 2012-04-13 20:21:59 -07:00
Eric House
0e4abccc41 clean up, and try to keep contacts checked while the count available
is not in excess of the number needed.  Makes it easier to use early
on.
2012-04-12 23:24:13 -07:00
Eric House
6ea692d430 use showConfirmThen() for non-mobile numbers 2012-04-12 23:04:08 -07:00
Eric House
8a4452ea53 add another variant of showConfirmThen() 2012-04-12 22:56:40 -07:00
Eric House
e2be770ca9 if the number of phone numbers sought matches the number available
check them all; confirm delete (since the button's enabled now from
the beginning.)
2012-04-12 22:38:42 -07:00
Eric House
404265565b tighten definition of connected BT or SMS game 2012-04-12 22:14:13 -07:00
Eric House
5949994557 cleanup -- remove logging and simplify code a bit. 2012-04-12 21:24:52 -07:00
Eric House
5b5b969e71 Merge branch 'android_branch' into android_bt 2012-04-12 20:59:47 -07:00
Eric House
4ffdeefe3b add dumpCursor 2012-04-12 20:59:29 -07:00
Eric House
e1c977323a on first boot, run through SMS database in case there are any messages
there that came in before we were installed.  Pass any found in as if
newly received (but don't delete.)
2012-04-12 20:57:52 -07:00
Eric House
459ddf6e96 Merge branch 'android_branch' into android_bt
Conflicts:
	xwords4/android/XWords4/src/org/eehouse/android/xw4/Utils.java
2012-04-12 18:05:58 -07:00
Eric House
5efe959584 move test for whether this is first boot on new version into Utils,
and add test for whether it's new boot ever (to be used with sms on
another branch.)
2012-04-12 18:04:21 -07:00
Eric House
31659bc514 improvements to smsinviter dialog: add explanatory empty text, dialog
that warns when non-mobile number being added, always check
newly-added number, etc.
2012-04-11 18:54:38 -07:00
Eric House
0c241cf207 fix crash in sms message sink when address null -- same as bt message sink. 2012-04-10 21:47:15 -07:00
Eric House
522fd29b44 fix to show/return individual phone numbers. Still todo: warn rather
than drop numbers not flagged as mobile.
2012-04-10 19:25:22 -07:00
Eric House
e703685021 add new pref controlling whether networked games have hints enabled by
default.
2012-04-10 07:53:39 -07:00
Eric House
90bca47e1b query and send name with SMS invite -- same as for BT. 2012-04-10 07:26:56 -07:00
Eric House
027ab0538e ignore new file 2012-04-10 06:50:31 -07:00
Eric House
f841b8ccce use different SMS-headers for different variants so they can coexist
and not poach each others' conversations.
2012-04-10 06:49:43 -07:00
Eric House
871cf7b580 lock SMS-invite in portrait mode here too 2012-04-10 06:48:51 -07:00
Eric House
e6c8c898fc hide '+' button when no number text entered 2012-04-10 06:36:34 -07:00
Eric House
b98be90869 tweak sms-inviter button text for greater clarity 2012-04-10 06:36:17 -07:00
Eric House
66a120bd08 lock SMSInviteActivity in portrait mode -- until I think it's
worthwile to make it scrolling.
2012-04-10 06:30:17 -07:00
Eric House
d72cd547b7 fix bug where new game gets data from just deleted: clear cache! 2012-04-08 21:35:50 -07:00
Eric House
d6a3aafaec factor upward code from BTEvent so that SMSService can use same
mechanism to send asynchronous results, then use to notify when a game
on other end has been deleted.  This flushed out a bug where a rowid
will get reused and a new game wind up with data from the previous
one -- but otherwise works.
2012-04-06 23:00:47 -07:00
Eric House
d9ba0c4229 display phones sorted by contact name. 2012-04-05 18:35:29 -07:00
Eric House
523af50d1b use a single custom class rather than three parallel arrays. 2012-04-05 18:22:08 -07:00
Eric House
2a121b1635 get rid of debug formatting 2012-04-05 07:50:40 -07:00
Eric House
bffc403c0c fix problems tracking what's checked by keeping separate array of
booleans -- since list items come and go as you scroll.  Means moving
some behavior out of InviteActivity superclass, and that untested BT
subclass may have new bugs.
2012-04-05 07:47:59 -07:00
Eric House
784a5d5d44 handle orientation changes for BT and SMS dialogs 2012-04-05 07:37:48 -07:00
Eric House
8aa570c490 name game locally too. But still need the option, present with BT
games, to change the name from the default before it's sent.
2012-04-03 07:16:48 -07:00
Eric House
d37b4423a7 log when fail to delete a game. 2012-04-03 07:04:19 -07:00
Eric House
2406287a34 don't crash when msg doesn't match expected pattern. 2012-04-02 19:12:25 -07:00
Eric House
51cfbb196e to deal with case where somebody invites a friend who doesn't have
Crosswords installed, add a URL to texts that will show up if it makes
it to an inbox and takes user to an explanation and download URL.
2012-03-31 10:05:31 -07:00
Eric House
fff4116d24 add a .css file that makes text readably large 2012-03-31 10:03:14 -07:00
Eric House
06ff720d66 fix so SMS works and remove some BT stuff 2012-03-31 09:39:24 -07:00
Eric House
7ba69319d9 add sms variant separate from bt 2012-03-31 08:59:44 -07:00
Eric House
18a781d516 add debug-prefs checkbox to turn on Toasts when SMS sent or received;
send on emulator too -- which works to test between two instances.
2012-03-31 08:25:43 -07:00
Eric House
1e22a33d55 go back to android-7 SDK version to support 2.1, and to make that work
remove use of java base64 encoding in favor of the C version I'd
already written (and that was probably compiled into the library
anyway unless the strip step catched unused code.)
2012-03-26 20:03:29 -07:00
Eric House
0fd9e6c30f Merge branch 'android_branch' into android_bt 2012-03-26 07:14:46 -07:00
Eric House
14a1e22c5e remove dead strings (should cherry-pick) 2012-03-26 07:13:46 -07:00
Eric House
55980386fa test for mobile numbers works only on my ICS device, so comment out for now. 2012-03-26 05:34:16 -07:00
Eric House
3b10f1593c change "nbs" to "sms" everywhere. No other code change. 2012-03-24 12:52:35 -07:00
Eric House
7b9e835722 fix SMS games not having role/connection status messages. Use same
for BT and SMS, and show different messages for host and guest.
2012-03-24 12:30:01 -07:00
Eric House
30e2057496 put up the right new-game notification title 2012-03-24 12:13:10 -07:00
Eric House
ac06d730f8 fix so chat works on SMS (and BT, though untested) 2012-03-24 12:04:07 -07:00
Eric House
de4b72e5ff null is ok for intents to be sent by SendTextMessage 2012-03-24 11:51:12 -07:00
Eric House
d7c77d538d don't add files whose names end with ~ to .gitignored 2012-03-24 11:50:39 -07:00
Eric House
b4242fe123 use SDK-8 for now, and modify build scripts to set up properties based
on SDK listed in AndroidManifest.xml.
2012-03-24 11:29:19 -07:00
Eric House
0229c4ca2a go back to requiring SDK 8 APIs for Base64. Will probably need to
expose the implementation in common via jni since there are still a
lot of SDK-7 devices out there.
2012-03-24 11:09:13 -07:00
Eric House
606cfef6d6 prefix my messages with a header and when messages with that header
appear stop other SMS apps from getting them.  Works!
2012-03-24 11:01:05 -07:00
Eric House
bffa3f7a35 send via text messages rather than NBS/data messages. At this point
all wind up in inbox, but that can be changed.
2012-03-24 10:37:50 -07:00
Eric House
fca1e8af64 Revert "get rid of Base64 encoding stuff -- since Android apparently does it"
This reverts commit 45715ae1e0.

Move back to using Base64 encoding to try working with straight text messages rather than NBS.
2012-03-24 10:05:16 -07:00
Eric House
fd30b25546 put up dialog when user picks contact that has no mobile number 2012-03-22 18:50:32 -07:00
Eric House
622bf21308 plug leak: remove message store when complete. 2012-03-22 18:49:58 -07:00
Eric House
d8e4cf0c55 cleanup excessive logging 2012-03-21 07:59:24 -07:00
Eric House
495eab9d9b fix NPE 2012-03-21 07:59:11 -07:00
Eric House
859e32e785 add field for manual number entry (and remember the number like all others) 2012-03-21 07:39:21 -07:00
Eric House
3e26bbb450 improve look of dialog, mostly by putting phone number and name on
separate lines.
2012-03-21 07:04:12 -07:00
Eric House
ba44f1355c save sms-invite contacts across uses of the dialog 2012-03-21 06:54:25 -07:00
Eric House
84496b3012 get phone numbers from contacts DB: factor some of BTInviteActivity
into superclass that NBSInviteActivity can share and use to make their
UIs similar: fetch mobile numbers from DB one-at-a-time, keep a list
there, and let you check then delete or return.  Rough, and doesn't
save state the way BT does, but works.
2012-03-21 06:17:09 -07:00
Eric House
45715ae1e0 get rid of Base64 encoding stuff -- since Android apparently does it
internally for 'data' messages.
2012-03-19 19:36:32 -07:00
Eric House
599d01bfc7 Replace most of NBSReceiver with new NBSService. Route outgoing (from
comms) and incoming (from NBSReceiver) messages through it.  Since
some messages are too big, add header/protocol for breaking them up
and reassemble.  With this commit complete robot-vs-robot games are
possible between two very new Samsung phones on T-mobile.  Older
phones and other networks not tested.
2012-03-19 07:56:55 -07:00
Eric House
8e3d8c20c1 remove temporary test sms menuitem 2012-03-19 07:39:28 -07:00
Eric House
235807df4f remove logging 2012-03-19 07:37:16 -07:00
Eric House
d63a9860cd turn on XWFEATURE_SMS 2012-03-19 07:36:40 -07:00
Eric House
fe614e9efc delegate phone number comparison to platform code which in Android
case has a method for it.  strcmp is not enough.
2012-03-19 07:36:18 -07:00
Eric House
9caeff4a5e recover a bit better from messages not meant for me, as is happening
when a devices sends to self via SMS and client winds up getting a
registration message it just sent.  Not perfect yet (and may require a
change in the comms protocol -- that's not versioned :-(.
2012-03-19 07:35:20 -07:00
Eric House
f9cd6190db don't call DeleteLocalRef on an object to be returned from the JNI.
Crashes ICS bigtime.  This needs to be ported back to android_branch.
2012-03-14 20:28:53 -07:00
Eric House
631666cede don't call DeleteLocalRef on an object to be returned from the JNI.
Crashes ICS bigtime.  This needs to be ported back to android_branch.
2012-03-14 20:26:23 -07:00
Eric House
e58747f2ec add code to build, encode, send, receive, decode and disassemble an
new-game invitation.  Not yet tested on device.
2012-03-14 18:13:43 -07:00
Eric House
7a6593582d use sdk-api-8 for now to get Base64 stuff. Can and should revert later. 2012-03-14 18:10:08 -07:00
Eric House
8ca6535a81 don't require Context inside CommsAddrRec 2012-03-14 07:49:37 -07:00
Eric House
60d91f1a21 add UI (some of it rough) to invite to play a new game via NBS and to
invite if a game is opened that has not been connected to yet.
2012-03-14 06:06:25 -07:00
Eric House
905be85e92 add temp menu that gets a phone number and sends an NBS message to it,
and modify NBSReceiver to print sender phone number and message
contents.  Works for send-to-self!
2012-03-13 07:51:45 -07:00
Eric House
49aefabfc5 remove inaccurate comment 2012-03-13 07:49:07 -07:00
Eric House
8cefbabd8a add different app name for BT/SMS -- as I thought I'd done before 2012-03-13 07:24:00 -07:00
Eric House
d96395c808 Merge branch 'android_branch' into android_bt 2012-03-12 21:21:03 -07:00
Eric House
326671081a Remove support for versions prior to 2.1, as nobody's using them.
Remove code to avoid classload crash when multitouch support not
present since now it always will be.
2012-03-12 20:34:34 -07:00
Eric House
5a3f6d6194 remove dead code 2012-03-12 20:32:21 -07:00
Eric House
3865a5f8c6 complete changelog 2012-03-12 19:52:35 -07:00
Eric House
cd8889f90e Merge branch 'android_branch' into android_bt
Conflicts:
	xwords4/android/XWords4/src/org/eehouse/android/xw4/DlgDelegate.java
	xwords4/linux/Makefile
2012-03-12 07:04:06 -07:00
Eric House
3b5dcdc2e0 add const param decls; remove redundant method call 2012-03-12 06:59:08 -07:00
Eric House
f51c0b39e6 use const where possible for game_writeToStream and others it calls.
No other code changes.
2012-03-11 18:28:14 -07:00
Eric House
2a728ce4b0 turn off debug flag that's started crashing the gtk app (presumably
due to an upgrade to a stricter version of glib)
2012-03-11 15:06:57 -07:00
Eric House
07fba2c71b Fix problem with writing server to stream changing its internal state
so that snapshotting made score strings disappear.  Also rename
stream_copyFromStream to stream_getFromStream to make it clearer that
the src is modified.  And swap params in stream_setPos().
2012-03-11 14:57:28 -07:00
Eric House
a8cf03f68e optimization: allocate tmp buffer on stack rather than with malloc. 2012-03-11 14:51:51 -07:00
Eric House
5c11f1b284 add XP_LOGSTREAM 2012-03-11 14:46:03 -07:00
Eric House
739b0b6125 fix off-by-one assertion 2012-03-09 23:51:39 -08:00
Eric House
e145a04111 add missing variable assigment 2012-03-09 22:11:51 -08:00
Eric House
d732094c59 rename LookupView to LookupActivity 2012-03-08 07:58:19 -08:00
Eric House
0d69c6097a Go back to lookup dialog as dialog-themed activity. I just can't get
contrast right on all platforms any other way.  Previous change to
using dialogs was motivated by speed, but I don't see any slowdown so
far.  Will address if I find it.
2012-03-08 07:54:36 -08:00
Eric House
25f4e8b707 Merge remote-tracking branch 'origin/android_bt' into android_bt 2012-03-06 21:27:53 -08:00
Eric House
3aa6932f03 Merge remote-tracking branch 'origin/android_branch' into android_branch 2012-03-06 21:27:38 -08:00
Eric House
a2493ffa97 Merge branch 'android_branch' into android_bt 2012-03-06 07:47:05 -08:00
Eric House
6a635d1631 Go back to using a built-in list item resource. Mine was
white-on-white on several OS versions.  Need to test further to try to
reproduce the conditions that had me trying to manage contrast myself.
Or use a dialog-themed Activity for lookup dialog -- prev checkins say
that was too slow but that might be fixable....
2012-03-06 07:41:33 -08:00
Eric House
9d153b500c don't insist that dgb .apk exist if it't not what's being installed 2012-03-06 07:36:07 -08:00
Eric House
2a8a5eb2e9 up version strings and changes list 2012-03-06 06:23:48 -08:00
Eric House
24ac205917 cleanup -- no behavior change 2012-03-06 06:23:04 -08:00
Eric House
fb45ea639f make buttons same size 2012-03-05 20:38:43 -08:00
Eric House
ae81f07997 add test for BTSUPPORTED to function so compiler can strip it 2012-03-05 20:30:02 -08:00
Eric House
57a1759b69 remove empty btconfig area from game config dialog 2012-03-05 20:24:48 -08:00
Eric House
82e1c826a6 add pre-clean target other build.xml files have 2012-03-05 20:14:54 -08:00
Eric House
fdfbd792f7 Merge branch 'android_branch' into android_bt 2012-03-05 20:08:43 -08:00
Eric House
edf13be4c8 I'm getting a crash on 2.1 in the simulator when calling
DeleteGlobalRef then NewGlobalRef on the same ref.  So use a temp to
reverse the order.  May fix reported crash as well.
2012-03-05 20:04:32 -08:00
Eric House
79be6654dc -p to allow multiple runs 2012-03-05 19:16:03 -08:00
Eric House
319c9da258 add -pre-clean that invokes the jni's 'make clean' 2012-03-05 19:07:49 -08:00
Eric House
a0b38ed83f Merge branch 'android_branch' into android_bt 2012-03-04 08:19:24 -08:00
Eric House
ef0c301e1a fix NPEs that would occur if play and back buttons pressed at about
the same time by ignoring the second if we've already closed the game
being edited.
2012-03-04 08:18:54 -08:00
Eric House
542f10a3e5 improvements to work with variants -- though jni still doesn't compile. 2012-03-02 05:49:25 -08:00
Eric House
d2952794af add variant support 2012-03-01 22:10:41 -08:00
Eric House
49b04257d3 tweak date format 2012-03-01 18:16:04 -08:00
Eric House
1fc814b104 0, not -1, is an invalid gameid 2012-03-01 18:14:51 -08:00
Eric House
1a9b3a7c63 make helper class to provide game-name dialog, use it for renaming and
to query for name of BT game being created.
2012-03-01 07:57:04 -08:00
Eric House
788f241238 new files to .gitignores; go back to discarding build command output 2012-03-01 06:32:49 -08:00
Eric House
3723cf08fa remove checked-in variant now that smaller one exists 2012-03-01 06:16:51 -08:00
Eric House
fc607fbd73 fix new standalone games being confused with networked ones by making
default new addr type be NONE and checking CurGameInfo for whether
device is networked.  The default change may introduce problems: needs
testing.
2012-02-29 18:22:20 -08:00
Eric House
10d2d222e5 Merge branch 'android_branch' into android_bt 2012-02-29 17:59:54 -08:00
Eric House
9194bbe4b1 replace large with small on the -dbg version 2012-02-29 17:49:34 -08:00
Eric House
dcbbb26e1c move app name out into separate file so the big one doesn't have to be
checked in in multiple places.
2012-02-29 17:48:31 -08:00
Eric House
e8ab6ede42 remove BT-related stuff from non-BT variant 2012-02-29 07:59:48 -08:00
Eric House
36908226c1 remove ping command/menu item 2012-02-29 07:36:38 -08:00
Eric House
241e9c1fde check in files that are now different for BT variant (i.e. required
for BT to be enabled)
2012-02-29 06:49:30 -08:00
Eric House
cb1e1692b2 turn off BT in main part of tree and fix a couple of places not
dealing with that correctly.
2012-02-29 06:47:19 -08:00
Eric House
c1c20db6dd add static final boolean by which to turn BT support off and change so
UI and background service disappear/don't run when it's off.  Goal's
to ship two apps that differ in this setting, a change in Android.mk,
and little else.
2012-02-27 20:35:31 -08:00
Eric House
b7f82475b8 fix to compile when XWFEATURE_BLUETOOTH not set 2012-02-27 20:31:01 -08:00
Eric House
eec1cb00a1 wrap UUID in #ifdef XWFEATURE_BLUETOOTH 2012-02-27 20:30:48 -08:00
Eric House
21e69adda7 add various files required for new variant. Plan is this will be a
separate version of the app with Bluetooth support included.
2012-02-27 20:02:15 -08:00
Eric House
2282a976f3 add missing PKG_PATH invocation 2012-02-27 20:01:12 -08:00
Eric House
7644eb69cf Merge branch 'android_branch' into android_bt 2012-02-27 19:41:04 -08:00
Eric House
933b812d3a paths within src directory need to change to match class names. Not
sure how I thought this was working before.
2012-02-27 19:40:48 -08:00
Eric House
0732da0724 checking this file in -- the first to be different in a variant 2012-02-27 19:39:36 -08:00
Eric House
0578c3de24 remove duplicate string since it's ignored anyway. 2012-02-27 19:39:03 -08:00
Eric House
213f1454fb remove duplicate string since it's ignored anyway. 2012-02-27 19:38:27 -08:00
Eric House
22f866cc87 right dir name 2012-02-27 19:34:02 -08:00
Eric House
ac2fd069f1 wrong dir name 2012-02-27 19:33:44 -08:00
Eric House
1ea892e88e add variant option 2012-02-27 19:32:57 -08:00
Eric House
6496736625 take .apk file as optional param 2012-02-27 19:15:53 -08:00
Eric House
1892ccf640 Merge branch 'android_branch' into android_bt 2012-02-27 18:28:17 -08:00
Eric House
840385b3ad print dates in shorter format so columns don't wrap as frequently 2012-02-27 18:28:04 -08:00
Eric House
f1956ddcb4 prevent continuing attempts to send messages from client after it's
deleted the game those messages are part of.  I'm keeping a list of
dead games and checking against that, and currently that list will
grow for as long as the sender thread lives.  Shouldn't be a problem
but needs fixing.  Better would be to remove all messages from queues,
but that has synchronization issues.
2012-02-27 07:57:54 -08:00
Eric House
456dcca7b8 don't crash when device list empty 2012-02-27 07:50:11 -08:00
Eric House
34f3c38b48 Add "clear selected" button to btinviter UI that's enabled when one or
more is checked.  On launch, get the set of known device, and on scan
do NOT start by emptying.  This allows to maintain a set of devices
and still scan without losing those not present.
2012-02-25 10:43:08 -08:00
Eric House
99e0fea3c3 use resource rather than hard-coding name of game. 2012-02-22 14:09:03 -08:00
Eric House
1b542a1d22 using the version of BluetoothServerSocket.accept that doesn't take a
timeout makes it slightly more likely that HTC Sensation will notice
an incoming connection, but it's still unusable most of the time.
2012-02-22 14:08:38 -08:00
Eric House
cf77872dd4 test for null object before calling method 2012-02-22 14:06:47 -08:00
Eric House
7cef230e2c BTEventListener is implemented by superclass, so override rather then
implement the interface.
2012-02-22 14:06:15 -08:00
Eric House
7a21d4c151 show the giving up message as a dialog rather than a toast 2012-02-22 14:04:36 -08:00
Eric House
eecc609eae take .apk file as optional param 2012-02-22 13:01:00 -08:00
Eric House
8c7487dc91 use GameUtils.getName() to avoid NPE -- it doesn't return null 2012-02-22 13:00:16 -08:00
Eric House
642ba9bc61 fix off-by-one assertion 2012-02-22 12:58:33 -08:00
Eric House
9c217e924c use dialog theme for btinviter activity 2012-02-22 12:58:15 -08:00
Eric House
12de8bf38b change button text from Ok to Invite 2012-02-22 10:37:10 -08:00
Eric House
6f2b5a9c8d don't ask to invite when opening unconnected BT game immediately after
sending an invitation.
2012-02-22 10:36:37 -08:00
Eric House
b2f67cfcce don't try to send without an address. Fixes an occasional assertion
failure.
2012-02-22 10:35:22 -08:00
Eric House
01c86522ef bt icons now have green and red arrows to show connectedness. Still
needs an artist's touch.
2012-02-22 10:34:16 -08:00
Eric House
10f41e5c5b Merge branch 'android_branch' into android_bt 2012-02-22 09:52:31 -08:00
Eric House
72e114838f commented-out function to send a .xwd as an email attachment. I can't
get it to work but it's worth keeping for a try later.
2012-02-22 09:51:35 -08:00
Eric House
ca7a0a5913 fix to work on devices too 2012-02-22 09:49:57 -08:00
Eric House
03fcbb3ddc comment out unused button; cache list of known local devices and use
that as starting point so initial scan can be skipped.  When unable to
deliver a message to remote device, give up after three tries and send
message to that effect.
2012-02-22 08:02:11 -08:00
Eric House
4600ea12bf add methods to get/set cache of known BT devices (key strings required
for prev commit)
2012-02-22 07:51:50 -08:00
Eric House
a6f35af187 add methods to get/set cache of known BT devices 2012-02-22 07:50:33 -08:00
Eric House
a6a13bcffd add new BTEvent to tell UI that a message will be resent, and in UI
put up a toast naming the unavailable device.  Might want a backoff on
this....
2012-02-15 18:55:58 -08:00
Eric House
7d573970e0 move handler and post() into Activity superclasses 2012-02-15 18:38:49 -08:00
Eric House
1f4f6a06a8 Merge branch 'android_branch' into android_bt
Conflicts:
	xwords4/android/XWords4/jni/xwjni.c
2012-02-15 18:18:26 -08:00
Eric House
e7a5882ed9 add a state transition lack of which fired an assert -- and that's
rare but consistent with others.
2012-02-15 18:17:26 -08:00
Eric House
14a3a5a7aa Save which languages are displayed opened as an invisible preference
rather than in a static so it is more persistent.
2012-02-15 18:16:46 -08:00
Eric House
3a657eb40d Merge remote-tracking branch 'origin/android_branch' into android_branch 2012-02-15 18:09:45 -08:00
Eric House
8590aae9b2 fix emacs compile-commands 2012-02-15 18:07:19 -08:00
Eric House
663734d0da When a message isn't sent, keep it in a per-target-device queue and
try again in five seconds This seems to fix nearly all stalls.
Eventually will try notifying users and backing off on the resends.
2012-02-15 06:14:40 -08:00
Eric House
3acc38076b move methods inside the threads that are their only callers. No
behavior change.
2012-02-15 04:53:34 -08:00
Eric House
9a2b488183 Merge branch 'android_branch' into android_bt 2012-02-14 16:56:20 -08:00
Eric House
914fa857be return COMMS_CONN_NONE as address type of null comms rather than asserting. 2012-02-14 16:54:19 -08:00
Eric House
dde97562e4 Merge branch 'android_branch' into android_bt 2012-02-13 23:36:44 -08:00
Eric House
45f2134ab5 fix variant generation -- seems to work now. JNI was broken. 2012-02-13 23:35:41 -08:00
Eric House
88ad6d81ef Merge branch 'android_branch' into android_bt
Conflicts:
	xwords4/android/XWords4/jni/xportwrapper.c
	xwords4/android/XWords4/jni/xwjni.c
2012-02-13 22:38:17 -08:00
Eric House
e3ffbd57ba add .gitignore files generated by script 2012-02-13 22:27:08 -08:00
Eric House
cf9ab45e6f finish first pass at build variant generation. This works well enough
that the app so generated runs in emulator, talks to relay, and does
not crash.  Makefile has rules for .java, .xml and .h that run through
sed to xw4 in import statements, package names etc so the variant app
is in a different namespace.  Also honors any files in the variant
tree that are actually checked into git should it be necessary to make
changes beyond what sed can manage.
2012-02-13 22:25:27 -08:00
Eric House
8590466229 stop changing directiories/assuing where it'll be run from 2012-02-13 22:15:34 -08:00
Eric House
05c220cf40 launch NDK build from inside build.xml. 2012-02-13 22:15:12 -08:00
Eric House
82b232cf74 use a macro instead of lots of repetitions of the package path to make
it easier to modify.
2012-02-13 22:13:23 -08:00
Eric House
a2d54794c9 Merge remote-tracking branch 'origin/android_branch' into android_bt 2012-02-12 22:30:11 -08:00
Eric House
1ed1bce7d1 call informMissing after loading game -- before that it'll never be 0. 2012-02-12 22:27:58 -08:00
Eric House
0f8ddadd69 make work from more than one directory 2012-02-12 21:23:50 -08:00
Eric House
f2b86b2a71 work-in-progress on scripts to generate a second app from the same source tree. 2012-02-12 21:22:36 -08:00
Eric House
f40f2bffcf add game name as something passed with invitation. Later will get it
from user.  Idea is to make it easy to identify the games in GamesList
on two devices side-by-side.
2012-02-10 18:48:46 -08:00
Eric House
43dca99a2c add preliminary text including number missing. 2012-02-10 18:44:27 -08:00
Eric House
114db0c96a cleanup: consistent param name 2012-02-10 18:08:59 -08:00
Eric House
32e2053d95 cache relay address but not BT address, which will vary on host if
more than one guest.  This fixes three-way play over BT!!
2012-02-10 07:00:09 -08:00
Eric House
1bb18cbde5 don't put up missing players dialog unless there's at least one. 2012-02-10 06:53:15 -08:00
Eric House
d469467fcc cleanup 2012-02-09 19:02:46 -08:00
Eric House
a0134a8500 more detail in still-rough string. 2012-02-09 18:50:32 -08:00
Eric House
73d1d1dcbd fix problem with crash after receiving names of devices chosen to
provide missing players by postponing it until the game's fully
opened.  Now games are created on the chosen devices that are able to
connect.
2012-02-09 18:50:01 -08:00
Eric House
75cb8cae9c factor code and log bt name of local device on startup -- no
significant change.
2012-02-09 18:48:26 -08:00
Eric House
74aeeca8e0 move BT device listing into its own Activity. Call it from
NewGameActivity and from BoardActivity when the new notifyMissing
method gets called.  Works as before called from NewGameActivity but
BoardActivity crashes on iterating over list of devices returned.
2012-02-09 05:21:23 -08:00
Eric House
0755a9e781 add new util function that gets called when a game is opened to inform
it if any players are missing.  Idea's to allow for non-relay devices
the invitation opportunity that comes when a game connects to the
relay and learns that no other games have joined its room.
2012-02-09 05:19:03 -08:00
Eric House
79a897b428 fix assert (but still leaking) 2012-02-09 05:16:32 -08:00
Eric House
764180fc48 remove unused member 2012-02-09 05:15:09 -08:00
Eric House
8fb962eaab strings for new layout 2012-02-09 04:46:58 -08:00
Eric House
ea0893bad6 layout for replacement for BT-device chooser dialog -- so can be
called from other places.
2012-02-09 04:46:01 -08:00
Eric House
be8d3e8b5a when receiving a message for a game that no longer exists, reply to
that effect, and on receipt of that reply offer to delete the local
copy.
2012-02-08 06:41:39 -08:00
Eric House
bf5b6ada77 include public-room column 2012-02-07 18:59:17 -08:00
Eric House
15f8cd5b33 post notifications when moves arrive and game isn't open. And handle
BAD_PROTO event (untested).
2012-02-07 18:41:56 -08:00
Eric House
ba40028a91 raise an error when unexpected protocol received. Later I can add a
user-visible message.
2012-02-07 18:11:56 -08:00
Eric House
898d9c339a add protocol-identifier byte. For now just assert it matches. 2012-02-07 18:05:06 -08:00
Eric House
ac2ac47aed code cleanup: make treads own their queue datastructures, use methods
to stop them, etc.  Heading toward making it easier to detect when the
BT stack is hosed and user needs to be warned or told to get a better
phone.
2012-02-07 17:42:01 -08:00
Eric House
3bda56420c turn on XWFEATURE_BLUETOOTH 2012-02-07 17:38:50 -08:00
Eric House
7214b7e12a turn off the palmos-era bt wrapper stuff I was trying to use to know
when to reset the stack.  It breaks Android when I turn on
XWFEATURE_BLUETOOTH and adds no value I can see.
2012-02-07 17:38:24 -08:00
Eric House
aca4e1fed8 init db before using it 2012-02-07 07:06:25 -08:00
Eric House
bde5910c2a Merge branch 'android_branch' into android_bt 2012-02-07 06:21:13 -08:00
Eric House
49a3f1cad6 git-copied (using checkout) from android_bt 2012-02-07 06:20:51 -08:00
Eric House
e0ee197888 make relay check happen on demand, not many minutes later. 2012-02-06 21:35:11 -08:00
Eric House
c8d4090510 another change for b42 2012-02-06 19:26:56 -08:00
Eric House
47c3bd3090 track a BT game's set (singleton for two-device game) of remote
devices in summary DB so, e.g., we can quickly determine what games
care when a devices becomes available via BT.  First use of this is
notifying when a remote game's deleted -- least that's the plan.  This
commit just adds to the DB and scans the DB to build a map of
device->gameIDs array.
2012-02-06 19:02:19 -08:00
Eric House
52ffefb173 add new column to store mac addresses of remote devices in this game via BT. 2012-02-06 18:57:30 -08:00
Eric House
796baffa6d Merge branch 'android_branch' into android_bt 2012-02-06 18:13:57 -08:00
Eric House
d3bb7d490a simplify cursor code 2012-02-06 18:12:28 -08:00
Eric House
bfe04a08b5 removed unneeded null-byte addition 2012-02-06 18:11:30 -08:00
Eric House
39e30184b1 move responsibility for letting other device know a participant game
has loaded into CommsTransport.
2012-02-06 06:53:28 -08:00
Eric House
d8ee493f1b On "configure first" BT newgame button, create the game then launch
the GameConfig activity.  If the user exits other than with "play
game", delete it so user never sees it.  Otherwise launch it.  Next
step is to detect a BT host that's missing clients and offer to invite
them.
2012-02-06 06:29:37 -08:00
Eric House
606e733b19 add _ to typedef to reduce number of etags hits on name. No code change. 2012-02-06 06:27:53 -08:00
Eric House
4deb1d3a77 add threadKiller to close sockets when remote isn't responding --
which can sometimes be for minutes with the Moment at least.  Make
name->hwaddr Map static since it might as well outlive a Service
instance (though right now I'm clearing it all the time.)
2012-02-05 21:47:26 -08:00
Eric House
99e001b8a2 launch game after creating it 2012-02-05 21:45:21 -08:00
Eric House
0cc7ad3e49 start from gameID in onCreate as well as onNewIntent. 2012-02-05 21:44:52 -08:00
Eric House
a2b5274b6c on ICS CreateGlobalRef doesn't return the same value as is passed in.
So stop assuming it does!  Fixes multiple crashes on ICS and need to
be ported to android_branch.
2012-02-05 19:12:09 -08:00
Eric House
8947ddca0b on ICS CreateGlobalRef doesn't return the same value as is passed in.
So stop assuming it does!  Fixes multiple crashes on ICS and need to
be ported to android_branch.
2012-02-05 19:11:38 -08:00
Eric House
bc8299fe30 run accept() with timeout so it'll show up in logs when the thread
died.  I hope.
2012-02-03 17:30:47 -08:00
Eric House
cc9f2b793e enhance receiver to get BT on/off and connect attempts and to start
bt service in response.
2012-02-03 17:29:40 -08:00
Eric House
6982545f59 Recipient of BT new-game invitation puts up Notification after
creating it that will launch it.
2012-02-03 17:21:17 -08:00
Eric House
3026a7e4f8 fix compile warning 2012-02-03 17:14:04 -08:00
Eric House
121e4a5d1d remove unused import statements: no code change 2012-02-03 17:12:14 -08:00
Eric House
cebb002fd0 add state summaries for BT games too 2012-02-03 17:09:59 -08:00
Eric House
8793d8f4fd include seed and missingPlayers in any non-standalone game summary 2012-02-03 17:03:47 -08:00
Eric House
a392826ebf move notification posting into new method that can be called from
elsewhere.
2012-02-03 06:25:17 -08:00
Eric House
e53621a5bc fix compile warnings 2012-02-03 05:43:17 -08:00
Eric House
82586668f9 move bteventhandler implementation up into XWActivity so subclasses
can easily listen for one or two events.  Have Board listen to events
for un/successful message sends and up up icon to indicate if BT is
working.
2012-02-01 18:51:41 -08:00
Eric House
00a0ecb1b8 icons stolen from ubuntu as placeholders for BT-working and -not. 2012-02-01 18:49:42 -08:00
Eric House
b3fdcecaf4 send result (failure) for SEND even if there's an exception 2012-02-01 18:42:30 -08:00
Eric House
6b600f4d9b Merge remote branch 'origin/android_branch' into android_branch 2012-02-01 07:13:15 -08:00
Eric House
ab32480cd5 Even host needs an address to mark game as BT 2012-02-01 07:00:25 -08:00
Eric House
5e330595fc pass bt address as well as name, and use when available -- since OS
doesn't provide ready name->addr translation.
2012-02-01 06:50:19 -08:00
Eric House
afac1cc5bd add BTReceiver -- will need to know when BT goes up and down. 2012-02-01 06:13:55 -08:00
Eric House
26109f926b implement BT's "configure first" to create a BT game without any other
device being involved.  Useful for testing of config.  Might be the
basis for getting games going with non-default settings but I'm not
sure how to get them all set up with the same gameID so they'll
connect.
2012-01-31 18:52:18 -08:00
Eric House
b4b7609894 include hwAddr as well as device name in bt section of address 2012-01-31 18:48:59 -08:00
Eric House
af2fcc76e0 consider it an error if no dicts found for language. With this change
I can install a game for which there's no dict and when user opens it
he'll get an opportunity to download one.  Might be better to refuse
to install it....
2012-01-31 18:47:38 -08:00
Eric House
5c8488af1b string and layout needed for edb39ac77d 2012-01-31 18:45:00 -08:00
Eric House
6326e45892 make btAddr a string rather than array of bytes. 2012-01-31 18:43:26 -08:00
Eric House
edb39ac77d remove assumptions that non-standalone==relay. BT games now
configurable (though no BT-specific settings are exposed).
2012-01-31 18:28:49 -08:00
Eric House
e91c0daf65 check for null obj before calling through its vtable 2012-01-31 06:44:54 -08:00
Eric House
579e8b7dfd send language and player counts with invitations. Works as long as
the recipient has a dict in the lang; otherwise crashes on that device.
2012-01-30 20:41:50 -08:00
Eric House
6978ba06f1 kick off scan immediately if have no devices to present 2012-01-30 19:39:45 -08:00
Eric House
82529c738e add start/stopProgress methods and push to DlgDelegate so can be used
from other Activities.  Use while sending game info as well as scanning.
2012-01-30 19:33:56 -08:00
Eric House
cd8ace6c9f queue isn't meant to be static 2012-01-30 19:32:56 -08:00
Eric House
144db5628f Merge branch 'android_branch' into android_bt 2012-01-30 18:47:10 -08:00
Eric House
0b197bf12e include DbgUtils to make debug changes easier. No code change. 2012-01-30 18:46:51 -08:00
Eric House
ad5b42121b revert recently-added typo 2012-01-30 18:39:11 -08:00
Eric House
b4f9553579 install into devices too 2012-01-30 18:38:43 -08:00
Eric House
06d8df4fb5 remove dead file 2012-01-30 06:39:54 -08:00
Eric House
094d08e903 Get play via BT working!!! Replace BTConnection with BTService to make
keeping the listener/sender threads going much easier.  Create new
message sink to dispatch incoming messages, and start passing return
addresses into comms (not required before when relay was only
transport as it has no return addresses.)
2012-01-30 06:39:18 -08:00
Eric House
3f03232008 include jni log messages too 2012-01-30 06:34:15 -08:00
Eric House
786cb4dc55 replaces BTConnection (and uses a lot of its code) 2012-01-30 06:26:48 -08:00
Eric House
edaef7f0a4 add new column 2012-01-26 23:02:56 -08:00
Eric House
698dac890f combine bt receivers, and start listening when ACL connected. Less
reliable but means I don't have to powercycle BT every time I install.
2012-01-26 07:14:43 -08:00
Eric House
bc351d1675 add ok button to dialog listing paired devices, make them selectable,
and don't dismiss/invite until the ok button's tapped.
2012-01-26 06:54:55 -08:00
Eric House
6bfd6e74e6 Merge branch 'android_branch' into android_bt 2012-01-26 06:24:18 -08:00
Eric House
9f2ec43617 move ProgressDialog into NewGameActivity where it belongs. 2012-01-26 06:23:46 -08:00
Eric House
adf49dffd7 init/take down thread local storage in constructor/destructor rather
than as static initializer (and then leaking on shutdown.)
2012-01-26 05:48:10 -08:00
Eric House
866aeb2387 change relay connect message format to include client version (meaning
of which is TBD).  When a new-version client connects, store the value
it's passed. At first this will let me track how quickly people
upgrade.  Later I can use it to let different clients have different
formats to their messages e.g. to proxy.
2012-01-26 05:43:54 -08:00
Eric House
af26ebfff9 fix usage hint 2012-01-26 05:40:22 -08:00
Eric House
da9f206f86 fix scan. 2012-01-25 18:56:40 -08:00
Eric House
5ca35254cc pass messages to BT and send them -- they're received on the other
side but not yet acted on.  Combine several send threads into one so
that all bt socket operations will be in the same thread and can't
coincide.  (Rescan is broken.)
2012-01-25 18:32:07 -08:00
Eric House
8959dc09a2 add -g option that filters for xw4 2012-01-25 18:28:25 -08:00
Eric House
0934f83106 add gameID to params passed to comms' sendproc, including passing
through to java layer.
2012-01-25 18:27:37 -08:00
Eric House
813e31ada8 fix crash by checking for null socket (meaning unable to open
connection to relay)
2012-01-25 18:09:26 -08:00
Eric House
74efac3dd9 include bt name of host in client games, but not of client[s] in host
games.  This allows clients to pass host name for use in addressing
when their initial message is sent.
2012-01-24 06:53:50 -08:00
Eric House
ac6ecfa845 copy bt_hostName as part of address 2012-01-24 06:51:40 -08:00
Eric House
a543bfa639 send new gameID so it actually arrives. Games are being created on
both ends with the same gameID.
2012-01-24 06:28:55 -08:00
Eric House
b954ef0643 revert recently-added typo 2012-01-24 06:21:43 -08:00
Eric House
4e1e5ab303 script to make it easier to run two or more logcat sessions 2012-01-24 06:21:12 -08:00
Eric House
c425686589 lots of changes. Respond to new-bt-game button by posting a list of
known paired-with-Crosswords devices and sending invite to the one
selected.  Includes rescan button with infinite progress indicator
(that sometimes works).  Recipient saves new game with the gameID
passed.  Then sender does too (but gameID doesn't seem to stick.)
Both games crash when you open them, but they're created.
2012-01-23 20:52:04 -08:00
Eric House
f048980701 cleanup 2012-01-23 20:49:34 -08:00
Eric House
2c24441ff3 create BT game and display with BT icon using hard-coded defaults for
now and no addressing.  Fails in assert when trying to send as BT
addressing isn't handled yet.
2012-01-23 07:54:22 -08:00
Eric House
beef55e3ac formatting 2012-01-23 07:52:46 -08:00
Eric House
f42f9adad1 use listener to ensure that BT-related UI is enabled/disabled when
power state changes.
2012-01-23 06:37:54 -08:00
Eric House
eb214d4f69 Turn on BT in response to user tapping "turn on" button. Still to do:
listen for BT turnoff/on that's independent of the button and
re-layout -- in case user does it himself while the NewGame Activity
is frontmost.
2012-01-21 10:19:36 -08:00
Eric House
18b620732b fix missing buttons 2012-01-21 10:17:07 -08:00
Eric House
81e29482fe add buttons, text etc. still to be determined, to start BT games. Add
text and unimplemented button to turn BT on if it's not there.
2012-01-21 09:46:52 -08:00
Eric House
6d93fcfdd3 install into devices too 2012-01-21 08:50:12 -08:00
Eric House
adb5ce541d add room name to subject of invite 2012-01-20 17:35:50 -08:00
Eric House
548fb86734 Play around with getting notified when another device connects. I
need an alternative to keeping a listening socket open in a thread
forever, as the OS will eventually shut me down if there's memory
pressure.
2012-01-19 22:32:34 -08:00
Eric House
847f1199be add gameID to summary. The slot's already in the DB, though unused,
so no version change required.
2012-01-19 18:53:55 -08:00
Eric House
923d6a24bd use libuuid to prep BT UUID, now a string instead of an array of bytes
for ease of use from java.  Since libbluetooth stupidly and
unrepentantly redefines uuid_t, add a new file/function to call
libuuid without having to pull its definitions into the bt code.  This
code compiles but is completely untested: I don't quite remember how
to play games via BT on Linux and at any rate will need an always-on
listener like the one I'm adding to the Android client.
2012-01-19 18:52:33 -08:00
Eric House
a34921155f make gameID consistently 32 bits in C code. It's been stored as 16,
so stream version must change.  Plan's to use it to address incoming
BT packets so a game needn't be open to receive.
2012-01-19 18:47:53 -08:00
Eric House
5f77ef6e13 get uuid from C code so can ensure linux version has same. 2012-01-19 18:28:27 -08:00
Eric House
1f8be87acb put up Toast when ping succeeds with name of device[s] pinged. 2012-01-19 18:08:54 -08:00
Eric House
00d2bb2a56 add temporary ping menuitem, and implement by sending message to first
device that's running our service.  Logs show messages being received.
2012-01-19 06:42:08 -08:00
Eric House
0337b97b57 begin bluetooth work. Add new class that logs when BT comes on and
goes off.  Sketch out always-on listening socket, but it's not called
yet.
2012-01-18 18:30:53 -08:00
Eric House
8a66cd4c1f Address reports of crashes tapping wordlist button when device is
having trouble making initial relay connection for a game (which I
can't reproduce) by disabling that button when there isn't a current
player.
2012-01-17 18:58:45 -08:00
Eric House
00575c6d4e Don't assert when don't have expected connType (likely as result of
race condition.  Just don't show the type in summary.  Likely fixes
once-seen assertion failure.
2012-01-17 18:48:33 -08:00
Eric House
7a90f71d41 up version strings 2012-01-17 18:23:26 -08:00
Eric House
07e93971d3 makefile for latest CSW 2012-01-17 18:19:57 -08:00
Eric House
4a52ad4d0c cleanup: remove logging 2012-01-17 06:54:07 -08:00
Eric House
2a51f8d621 cleanup 2012-01-17 06:53:47 -08:00
Eric House
960dfc7825 draw alternating game lines in alternating colors 2012-01-16 12:13:35 -08:00
Eric House
edd1dd95dd Merge remote branch 'origin/android_branch' into android_branch 2012-01-13 07:54:40 -08:00
Eric House
546ec8a3f4 get non-printing column out of cols array to be treated separately. 2012-01-13 07:54:11 -08:00
Eric House
2902b38405 Merge remote-tracking branch 'origin/android_branch' into android_branch
Conflicts:
	xwords4/relay/scripts/showgames.php
2012-01-13 07:50:53 -08:00
Eric House
ca49078730 improve to print each game as multiple rows, one per device. 2012-01-12 19:17:38 -08:00
Eric House
8c52836f9d php file to display state of relay's DB. This is the first and rough cut. 2012-01-12 06:30:30 -08:00
Eric House
bd35f8363f cast enum to int inside switch to avoid new compiler error 2012-01-11 18:43:51 -08:00
Eric House
7de8a90df3 silence compiler warning. 2012-01-11 18:29:14 -08:00
Eric House
37b333001b outline of php script to print contents of games DB 2012-01-05 20:25:34 -08:00
Eric House
db78b986c9 I've seen index OOB exceptions from lookup code, so assert at likely
entry point that null array isn't being passed.  This should probably
not ship.
2012-01-05 17:19:58 -08:00
Eric House
1fc286ee95 show in collapsed summary if game is over 2012-01-05 17:18:07 -08:00
Eric House
1ae2879fb7 tweak logging 2012-01-04 18:35:21 -08:00
Eric House
5b9b531cb9 log one line before honoring logging-on preference. 2012-01-04 18:34:15 -08:00
Eric House
b8528145b3 explicitly store bool as int 2012-01-04 18:21:52 -08:00
Eric House
4a8a52a921 Merge remote branch 'origin/android_branch' into android_branch 2012-01-04 18:16:32 -08:00
Eric House
caa40fa023 store most recent IP address each device has come in on. Requires new
column in db.  Not really used yet but interesting to watch....
2012-01-04 18:14:12 -08:00
Eric House
72dd8f6b6a ignore debian build files 2012-01-04 18:11:29 -08:00
Eric House
32988413dd cleanup: remove unneeded private constructor and make statics private 2012-01-04 06:26:17 -08:00
Eric House
814e4dd088 cut some logging 2012-01-03 18:53:58 -08:00
Eric House
8e62cf10c7 script to uninstall 2012-01-03 18:53:42 -08:00
Eric House
03e6db5107 remove logging 2012-01-03 18:27:25 -08:00
Eric House
0e7fcf7b51 ignore new obj dir 2012-01-03 18:27:15 -08:00
Eric House
de269f1e3d up copyright for the new year 2012-01-03 06:20:23 -08:00
Eric House
a2c4114d0b fix uninitialized variable error 2012-01-02 18:25:01 -08:00
Eric House
1b395b637b use the full name 2012-01-02 18:17:29 -08:00
Eric House
6344db199a go with target==7 for consistency. 2012-01-02 18:15:43 -08:00
Eric House
d0999d1944 update build scripts to use newer NDK. 2012-01-02 18:11:36 -08:00
Andy2
9879f96729 cleanup -- no code change 2011-12-21 18:50:55 -08:00
Andy2
2a34cd1e05 remove second param from server_do() -- it doesn't work anyway. 2011-12-21 18:45:05 -08:00
Eric House
cb04eb8840 finally got the socket leak: use keepalive ioctl to detect sockets
whose other ends have gone down without closing properly.
2011-12-21 18:18:30 -08:00
eehouse@eehouse.org
d5d3ad2cb0 Merge branch 'android_branch' into send_in_background 2011-12-21 06:49:03 -08:00
Andy2
f475356c87 up strings for new release 2011-12-21 06:46:42 -08:00
eehouse@eehouse.org
abd6727b10 Merge branch 'android_branch' into send_in_background 2011-12-20 17:34:26 -08:00
Andy2
0e487a4a42 When creating game in response to new-from menuitem, juggle players if
the juggle newgame preference is set.
2011-12-20 17:31:13 -08:00
Andy2
3e42c68091 add randomly-generated inviteID to set of params transmitted with an
invitation and stored in a summary.  On receipe of an invitation, if
the room/inviteID exists just drop it -- don't even bring app to the
foreground.  This is meant to stop people from getting lots of
games/warnings about dupes if they happen to trigger a refresh of the
negame.php page in their browsers.
2011-12-20 17:29:05 -08:00
Andy2
9023806b5f cleanup: move instanceof/cast from use of vector elements to addition
of elements to save memory and time.
2011-12-20 17:24:38 -08:00
Andy2
f40174ea30 update to add new optional param -- invite ID 2011-12-20 17:14:21 -08:00
Andy2
6cc1a2d672 Add new column and up db version number. 2011-12-20 17:12:23 -08:00
Andy2
9a26ccf1c8 prevent long names from forcing linewrap 2011-12-20 17:10:41 -08:00
Andy2
8eaeb9c2d0 reword SMS invite so URL isn't split across messages (which makes it
not recognized by recipient as a clickable URL).
2011-12-18 16:23:14 -08:00
Andy2
431a01ef0a remove logging I didn't mean to check in 2011-12-18 15:55:54 -08:00
Andy2
d03fc77990 list changes for next release 2011-12-18 12:27:13 -08:00
Andy2
c2c2c7e766 NEW_TASK plus CLEAR_TOP is the magic combination -- says one set of
docs.  Looks good so far.
2011-12-18 12:23:00 -08:00
Andy2
dd8da6d312 tweak wording 2011-12-18 12:22:06 -08:00
Andy2
a86ffa39ba up strings for next beta 2011-12-16 20:59:40 -08:00
Andy2
0d6b5914b9 revert to standard launchMode to get proper from-Launcher behavior and
specify a pair of flags when background-launching GamesList that
strips any stack it has and doesn't launch a new instance.  Seems to
fix the problems with launching from notifications and invite emails.
But then I've thought this fixed before.
2011-12-16 19:02:20 -08:00
eehouse@eehouse.org
14bddb0e45 Merge branch 'android_branch' into send_in_background 2011-12-15 18:46:24 -08:00
Eric House
888b4f6701 fix undeclared variable. 2011-12-15 18:45:22 -08:00
Eric House
166d8f8c03 log number of sockets tracked -- it's climbing on server and I need to
figure out why.  This and listening for POLLRDHUP are a start (but not
sufficient).
2011-12-15 18:41:07 -08:00
Eric House
b04604595f change assertion to log -- fails very infrequently which is probably to be expected. 2011-12-15 18:37:20 -08:00
Eric House
af7398ce20 fix undeclared variable. 2011-12-15 18:36:47 -08:00
Andy2
2ff4338797 Move more oft-used button. Thanks JB. 2011-12-15 18:33:10 -08:00
Andy2
494652518a comment out dead code (entire class) 2011-12-15 07:44:16 -08:00
Andy2
f504c3688c reverse sense of test done on receiving invitation whether game
already exists.  Unless I'm missing something I have it wrong.
2011-12-14 20:09:57 -08:00
Andy2
420661bf9f put back the URL in parens. Not all email clients show the link otherwise. 2011-12-14 20:08:38 -08:00
Andy2
d6ce11b084 fix to compile with DEBUG off 2011-12-14 18:17:52 -08:00
Andy2
867d9d68b0 script to install onto multiple emulators 2011-12-14 18:17:37 -08:00
Andy2
5cd8694569 ignore dicts in main wince dir 2011-12-14 07:37:59 -08:00
Eric House
de59408cb0 Merge remote branch 'origin/android_branch' into android_branch 2011-12-13 21:34:58 -08:00
Eric House
1d0b554283 add debian/ files as generated by dh_make: no changes yet, so debuild
builds an empty .deb.
2011-12-13 18:57:19 -08:00
Andy2
0dfc1312ff set up intents to limit choices in sending invites to SMS and email,
and recast choices offered users from text vs. html to SMS vs. email.
Revert recent change (88986b49d5) adding
visible URL to email as it doesn't seem to be needed now.  Will want
to keep an eye on that.
2011-12-13 17:24:21 -08:00
Andy2
e5294f2393 add to commented out code 2011-12-12 19:09:50 -08:00
Andy2
fa39db7fc6 comment out file not being used now 2011-12-12 19:01:04 -08:00
Andy2
f07e1c5ea1 use same email address for both ways you can send to me, and rfc822
instead of text type to prevent giving handler options that aren't
email clients.
2011-12-12 19:00:30 -08:00
Andy2
fe98d4983c fix to compile for win32 with new APIs and to some extent to run
(under WINE only).  Randomness is pretty screwed up -- typical initial
tray is all As.
2011-12-12 18:53:40 -08:00
Andy2
3b13f047d7 fix to accept new dict format with 4-byte header 2011-12-12 18:51:49 -08:00
Andy2
88986b49d5 include visible URLs in parens since something about mailing seems to be
breaking them inside <a> tags so there's something for a user to tap.
2011-12-12 07:08:56 -08:00
eehouse@eehouse.org
9e979a9e7f Merge branch 'android_branch' into send_in_background 2011-12-08 20:59:24 -08:00
Eric House
7c9519f80f remove translations of translations of strings no longer there 2011-12-08 18:13:20 -08:00
Eric House
78672c01a3 there's room to spell out length 2011-12-08 18:12:10 -08:00
eehouse@eehouse.org
b2a3c444f3 Merge branch 'android_branch' into send_in_background 2011-12-07 19:09:36 -08:00
eehouse@eehouse.org
4581046954 Merge remote branch 'origin/android_branch' into android_branch 2011-12-07 19:07:37 -08:00
eehouse@eehouse.org
20fa54ba59 Merge branch 'android_branch' into send_in_background 2011-12-07 19:06:26 -08:00
Andy2
46efe15f4e up version and change notes for new release 2011-12-07 19:06:03 -08:00
Andy2
2992c33396 Merge branch 'android_branch' into send_in_background
Conflicts:
	xwords4/android/XWords4/src/org/eehouse/android/xw4/GameUtils.java
(conflicts were for formatting changes only)
2011-12-07 18:46:59 -08:00
Andy2
0d4e839dba log an error and drop bad fwd packet rather than assert 2011-12-07 18:43:13 -08:00
Eric House
6cc3770cd1 script to trace history of one game in db by polling db and listing
changes
2011-12-07 18:37:28 -08:00
Andy2
2d7ac8e7b0 use SystemClock.elapsedRealtime() rather than 0 as initial fire time
when setting background update timer.
2011-12-07 18:33:26 -08:00
Andy2
c12f64cc03 save pendingMsgLevel flag as part of summary. This fixes reset games
being displayed with the sync icon if they had it before the reset.
I'm not sure if not saving was an omission or if I've forgotten the
reason.  There *is* separate API for clearing the flags stored in that
variable but it requires a second DB write.
2011-12-07 18:24:22 -08:00
Andy2
7b985fcbae fix formatting -- no code change 2011-12-07 06:16:11 -08:00
Andy2
17edc79aaf Merge branch 'android_branch' into send_in_background
Conflicts:
	xwords4/android/XWords4/src/org/eehouse/android/xw4/XWApp.java
2011-12-06 19:56:10 -08:00
Andy2
ded7ffc6fe Attempting to fix occasional stalls of background proxy checker. It
could be caused by the timer not running after an install, so always
launch it when the app is launched.  (There's no notification
available on [re]install.)  So that the check doesn't happen
immediately, which would be silly, make the initial wait same as
interval when not called in response to check-relay menu.
2011-12-06 19:52:01 -08:00
Andy2
20446bcf32 for style points, don't return from middle of function. No behavior
change.
2011-12-06 19:49:41 -08:00
Andy2
5d01de4c0c found a better send email menu icon 2011-12-06 19:24:22 -08:00
Andy2
5d09c7bbed add git describe for version to email body 2011-12-06 19:19:50 -08:00
eehouse@eehouse.org
88b0535866 Merge remote branch 'origin/android_branch' into android_branch 2011-12-06 18:51:50 -08:00
Eric House
7015ae500b exit after showing usage 2011-12-06 18:50:04 -08:00
Andy2
7884246d7a add menu to main screen for sending me email. TODO: find a darker
menu icon; add git revision to outgoing text.
2011-12-06 18:49:48 -08:00
Andy2
3b48c3ca60 use title rather than a field in custom view for title of lookup
dialog.
2011-12-06 18:25:55 -08:00
Andy2
7c76af30b2 remove excessing logging 2011-12-06 18:21:48 -08:00
Andy2
ebca62b25e don't specify text file for view used in Dialog -- device will set it.
Prevents invisible text on HTC MyTouch.
2011-12-06 18:21:33 -08:00
Andy2
0474984b82 export new preference from jni and add a checkbox setting for it 2011-12-06 18:18:50 -08:00
Andy2
b0470d5276 add new preference that when set prevents calculation and drawing of
crosshairs.
2011-12-06 18:17:55 -08:00
Andy2
daa64a19a4 need to generate local.properties now that it's not checked in 2011-12-04 19:32:06 -08:00
Andy2
2918e8f059 need to generate local.properties now that it's not checked in 2011-12-02 21:35:12 -08:00
eehouse@eehouse.org
e1e8516e1b Merge branch 'android_branch' into send_in_background 2011-12-02 19:04:12 -08:00
Andy2
52d02f04dd pass tile value into drawCell(). Java code doesn't use it yet, but I
want to play with drawing cells tray-tile-style when they're big
enough.
2011-12-02 18:58:52 -08:00
Eric House
dc42e63974 fix read_packet() logging 2011-12-02 18:55:47 -08:00
Eric House
964d2dfb0b allow, by default, more than one-player-per-device, but require that
roomnames be unique to eliminate risk of devices not matching up
correctly.
2011-12-02 18:55:20 -08:00
Eric House
b706486b6e get rid of stringstream: it's either buggy or I'm using it
incorrectly, but regardless postgres doesn't like random chars
terminating queries.
2011-12-02 18:32:37 -08:00
Eric House
3f5e62c9b7 remove logging 2011-12-02 18:31:05 -08:00
Andy2
ae2e27e651 Put the values button back (and remove the corresponding menuitem). 2011-12-02 18:14:26 -08:00
Andy2
08063d9444 Merge branch 'android_branch' into send_in_background
Conflicts:
	xwords4/android/XWords4/src/org/eehouse/android/xw4/NetUtils.java
	xwords4/android/XWords4/src/org/eehouse/android/xw4/XWApp.java
2011-12-01 21:18:37 -08:00
Andy2
4c320a52e7 allow scrolling to go a bit deeper 2011-12-01 21:10:04 -08:00
Andy2
fc00102384 don't leak/fail to install zoom-out button when chat enabled 2011-12-01 21:09:37 -08:00
Andy2
3e21b7845a comment 2011-12-01 21:04:31 -08:00
Andy2
85fdb950bb init board so deeper scrolling possible 2011-12-01 21:04:18 -08:00
Eric House
cbd455148d comment only. I tracked down the most recent network proto change
from before which devices probably can't upgrade mid-game once the
MAX_COLS=32 change is enabled and wanted to record it.
2011-12-01 20:23:58 -08:00
Eric House
4a32942e57 two fixes that seem to allow old- and new-proto devices to play games
with 15x15 and 17x17 (and presumably larger) with the old games being
upgraded mid-game: when server's new and wants to use a larger board
but not all clients are capable, shrink the board; and, when new
server is opening state saved by pre-upgrade code, assume a non-0
proto version for clients that registered earlier (as old code didn't
save the client's proto version.)
2011-12-01 20:22:16 -08:00
Eric House
6691c0713c Merge remote branch 'origin/android_branch' into android_branch 2011-12-01 20:16:15 -08:00
Eric House
0065f5078e add variable controlling odds of "upgrading" -- which still needs tweaking. 2011-12-01 20:16:09 -08:00
Eric House
1e48a8d615 Merge remote branch 'origin/android_branch' into android_branch
Conflicts:
	xwords4/common/model.c
2011-12-01 20:12:27 -08:00
Eric House
7da7dbc731 shoulda tried compiling before committing a large merge.... 2011-12-01 19:54:56 -08:00
Eric House
9d42e3f4d0 move logf and showf into their own DbgUtils class 2011-12-01 19:51:02 -08:00
Eric House
47884b8387 ignore new tools-generated file 2011-12-01 19:50:22 -08:00
eehouse@eehouse.org
1272ed3bf5 Merge remote branch 'origin/android_branch' into android_branch 2011-12-01 19:46:10 -08:00
Andy2
577c2c8538 move MultiHandler implementation inside BoardView. 2011-12-01 19:44:22 -08:00
Andy2
15503522f2 implement pinch-to-zoom on board -- and do it in such a way that class
loader doesn't barf on older versions of the OS that don't provide the
necessary APIs.  Tested only on original Motorola Droid so far (and
emulator running 1.6, which is too old.)
2011-12-01 18:56:44 -08:00
Andy2
b242d70029 up target SDK to pull in multitouch APIs 2011-12-01 05:40:50 -08:00
Eric House
32f1dfa5da configure by passing params rather than setting ENV variables 2011-11-30 21:01:11 -08:00
Eric House
c39487e0cc add ability to start out with mix of old and new versions and have old
upgrade to new at random times.
2011-11-29 20:51:19 -08:00
Eric House
c1e420f726 Merge branch 'android_branch' into send_in_background
Conflicts:
	xwords4/relay/rq.c
2011-11-29 06:45:32 -08:00
Eric House
c8b868c243 Separate app from params. No change in behavior (though restart of
existing games is now broken), but this sets up testing mid-game
upgrade.
2011-11-29 06:43:16 -08:00
Eric House
ba5ff6cb5d fix too-small buffer. Seems I've done this before. 2011-11-28 20:35:34 -08:00
Eric House
c6e994abef use $RANDOM rather than $SEED -- still repeatable, but avoids relay
problems when devices have same game seed.
2011-11-28 18:53:40 -08:00
Eric House
adb9b3853d fix bugs around new variable-length tiles array changes, and otherwise
improve storage of col/row data so that test runs succeed with
MAX_COLS of 16 or 32.  Still to do: test mid-game upgrade.
2011-11-28 18:46:08 -08:00
Eric House
42d1d2f7bd define variable before it's first used. 2011-11-28 18:21:46 -08:00
Eric House
e5a943eecb tweak output 2011-11-28 18:15:09 -08:00
Eric House
f20f9d6503 complain if conf file not found (rather than leaving relay to crash
with an assert whose cause may not be obvious)
2011-11-28 18:14:39 -08:00
Eric House
1b864b5527 Add backtrace function. May only work on Linux but still very useful. 2011-11-28 18:12:56 -08:00
Eric House
384a41ed5b add ability to specify seed and vary board-size 2011-11-25 18:03:51 -08:00
Eric House
2bfe120014 do away with need to accept out-of-bounds values in getTileRaw(). 2011-11-23 18:25:12 -08:00
eehouse@eehouse.org
93a7d15a5e Merge remote branch 'origin/send_in_background' into send_in_background 2011-11-23 17:57:54 -08:00
Andy2
1575279cd8 replace restore menus in prefs activity with buttons at bottom of
screen.  The trick involves getting the OS to insert the prefs xml
layout as a ListView, and seems like a hack, but it works so far.
Ought to be tested on several OS versions before next release.
2011-11-22 19:00:03 -08:00
Andy2
cd23022cde Get rid of int m_msgID, storing all dialog messages as String m_msg.
The code was getting confused and sometimes set one then tried to
display the other.
2011-11-22 18:28:57 -08:00
Andy2
cdef8f42f6 add comment about NPEs received when device networking foobared. No
code change.
2011-11-22 18:12:21 -08:00
eehouse@eehouse.org
b2a0057d7b Merge branch 'android_branch' into send_in_background 2011-11-21 22:23:25 -08:00
Andy2
91eeee0f72 new file that build.xml comments say should be checked in. 2011-11-21 22:21:28 -08:00
Andy2
d37424ad7f Merge branch 'android_branch' into send_in_background
Conflicts:
	xwords4/linux/linuxutl.h
2011-11-21 22:18:52 -08:00
Andy2
a8859599dd update emacs compile-command for new SDK. No code change. 2011-11-21 22:16:33 -08:00
Andy2
795b86e569 when asked to browse empty dict, put up explanatory dialog then exit
activity.  Required new DlgDelegate method to send event after posting
alert.  Note that eventually when the dict browser shows tile info as
well as words this will change.
2011-11-21 18:08:51 -08:00
Andy2
f32f7a8b19 Don't behave badly in presence of empty dict: word count should be 0
and sanity test should pass.
2011-11-21 18:07:08 -08:00
Andy2
d856b9a8ce Don't behave badly in presence of empty dict: word count should be 0
and sanity test should pass.
2011-11-21 18:06:46 -08:00
Andy2
e1e9a68d8f fix ptr out-of-bounds test. Was failing an empty dict. 2011-11-21 18:04:20 -08:00
Eric House
9115b344fb use a hash of lists rather than a single list to store pending
background messages to fix assertion failure when more than two
devices are playing: messages must be sent grouped by relayID.
2011-11-21 17:57:38 -08:00
Eric House
eec83fe5b6 don't fail when RELAY_ALLHERE comes without a connection, as that will
happen when messages come in background.  I'm not sure what the test
I'm removing was there to catch so need to test thoroughly.
2011-11-21 17:38:50 -08:00
Eric House
b00327aa8b fix to work for NDEVS > 2. 2011-11-21 17:35:08 -08:00
Eric House
72a3ed1891 increase buffer size: longer relay name caused stack overwrite
failures.
2011-11-21 17:33:44 -08:00
Eric House
a0a8a816a4 make number of devices configurable 2011-11-21 10:09:29 -08:00
Andy2
c7906c3bd4 prevent min from exceed max by not including values below min as
possible max settings and vice-versa.  Since spinner values no longer
have a consistent base, parse them rather than relying on position --
requires assumptions such as that View is a TextView, but that is
probably not changing.
2011-11-21 08:19:25 -08:00
Andy2
aba4e02cac use a standard list item for words rather than consing up a TextView
and having to worry about text size.
2011-11-21 07:20:12 -08:00
Eric House
1d13f7d1f2 update instructions for building 2011-11-19 20:05:04 -08:00
Eric House
33496914a4 More new SDK fixes: put back script to generate GitVersion.java. 2011-11-19 19:49:15 -08:00
Eric House
e335f5cf61 fix to use new sdk version to generate local.properties 2011-11-19 19:23:58 -08:00
Eric House
d806e3f906 changes made by android tool for compatibility with new SDK version 2011-11-19 19:07:16 -08:00
Andy2
c781bfc29e remove hard-coded 2-15 array for word-len limit spinners and instead
create at runtime arrays that represent the words actually in the dict
-- e.g. showing a max of 8 when there are no words longer than that.
2011-11-18 21:24:59 -08:00
Andy2
872ebe68f4 make array one large to hold word whose len is == max 2011-11-18 21:14:24 -08:00
Andy2
b86330c71f add dict_iter_getCounts() 2011-11-18 21:10:17 -08:00
Andy2
21330af568 make tiles array variable sizes. 32*32*2 is too many bytes to use
when the typical board at 15*15 requires less than 1/4 of that.
2011-11-18 18:59:59 -08:00
Andy2
cc0105e14c add param to dict_countWords in which it accumulates counts per word
length.  Shouldn't hurt speed too much if null passed.
2011-11-18 08:15:21 -08:00
Andy2
598be8b404 MAX_COLS -> MAX_COLS_DICT for dict-related stuff (since dicts are
staying with fewer words for now.)
2011-11-18 07:56:02 -08:00
Andy2
2eac8e70e0 adding missing ifdef 2011-11-18 07:43:37 -08:00
Andy2
37e81fd062 use number of bits based on stream version not current build --
required in case new code is talking with old in networked game.
2011-11-18 07:43:10 -08:00
Andy2
f9c3a95603 move stream version definitions 2011-11-18 07:41:57 -08:00
Andy2
f06eaa573b fix to compile with API changes 2011-11-18 07:41:13 -08:00
Andy2
4760ceda5a Merge branch 'android_branch' into android_browsedict
Conflicts:
	xwords4/android/XWords4/jni/anddict.c
2011-11-17 20:55:02 -08:00
Eric House
55d23c9502 various improvements, including allowing to specify seed to enhance
reproducibility, copying xwrelay.log into directory with game logs
when they don't finish for easier analysis.
2011-11-17 19:58:08 -08:00
Eric House
cd699ba547 close socket when done 2011-11-17 19:56:54 -08:00
Eric House
8a51d5f3e4 fix race condition that was breaking tests: when one device sends two
messages they must be handled by the relay in order.  So modify linux
client to build a single packet of all messages sent instead of
letting rq sent each on a separate socket.  The relay would give the
sockets to different threads and sometimes the wrong one won.  Will
need to make sure the android code's doing the same thing (it appears
to be), or perhaps make the coalescing code common so I only debug it
once.
2011-11-17 19:56:36 -08:00
Andy2
1889fbd78b relaunch activity, with pararms in intent, every time min or max
changed.  Can't figure any other way to change the list of section
heads, as setListAdapter() is ignored when called a second time.
Note: I got an assertion failure in the jni indexing code so there
may be a bug here.
2011-11-17 19:52:10 -08:00
Andy2
aab9fd9df2 test the variable that may have been changed, not the one that holds
the pre-change value.
2011-11-17 06:54:26 -08:00
Andy2
63c0c5cf09 fix compile warning by passing ptr to embedded super 2011-11-17 06:11:42 -08:00
Andy2
210c59ef9b move bonus square values into model: add API to set an array, and API
to query model for values.  Now everybody else queries new model API
rather than client via util_getSquareBonus(), model uses its internal
values if present otherwise falls back to util_getSquareBonus(), and
internalizes the array as part of the game.  Now it should be easier
to have different bonus patterns and to have them exchanged as part of
network game init.
2011-11-16 19:01:11 -08:00
Andy2
fab39a5f87 Trying to deal with old- and new-proto devices interacting. Fix
clients to append their stream version to their inital connect
message.  (The format can't change, so detecting additional length was
the only option.  comm.c on existing clients won't allow more than one
connect message per channel, so adding a new to be used in addition
didn't work.)  New servers detect this; old will ignore.  Track the
version (implicit or not) of all clients, and use the lowest any
supports, so that new server and all new clients will use newer proto.
2011-11-16 06:47:55 -08:00
Andy2
bdb8e6f03c fix several crashers that prevented network games from working when
MAX_COLS was larger than 16.  In order that old-style messages on
relay be readable by new-style code on device, modified server.c's
protocol to include stream version.  But: unless I come up with a
better way of doing this all devices will have to be upgraded at the
same time: old won't be able to read the new format as it's done here.
2011-11-15 06:13:25 -08:00
Andy2
379e5f1d96 use actual rather than max possible board dimensions to apportion
space, fixing crashes when max upped to 32.  Will still fail as actual
size approaches that number.
2011-11-14 20:18:09 -08:00
Andy2
86d5778ec3 remove 16x16 limitation on board size, replacing with 32x32. Change
is enabled by a compile-time flag so Android needn't follow yet.
2011-11-14 18:21:41 -08:00
Andy2
2492e7cfc5 Merge branch 'android_branch' into send_in_background
Conflicts:
	xwords4/linux/cursesmain.c
2011-11-13 17:10:46 -08:00
Eric House
d6fecaa3d3 don't crash when dict is empty file 2011-11-13 17:06:57 -08:00
Andy2
4edca4ee4c Check for null return from getInfo(), the result when it tries to open
a corrupt dict.  Such dicts should never get this far, but it doesn't
hurt to be safe.
2011-11-11 18:30:53 -08:00
Andy2
44c5500ab0 don't crash when empty or corrupt dict file passed in. 2011-11-11 18:29:26 -08:00
Andy2
b334e688bb use getInfo to run sanity check on .xwd files in download directory.
This prevents deliberately corrupted files from making it into dict
lists.  To the extent that checkSanity() works, it should make use of
that dir safe.
2011-11-11 07:45:25 -08:00
Andy2
9ff4596667 fix compile warning by passing ptr to embedded super 2011-11-11 07:42:00 -08:00
Andy2
92eb6b857d allow null info ptr so getInfo can be used solely to run sanity check
on dict.
2011-11-11 07:41:31 -08:00
Andy2
dddec50f1d Merge branch 'android_branch' into android_browsedict
Conflicts:
	xwords4/android/XWords4/jni/Android.mk
	xwords4/linux/Makefile
	xwords4/linux/linuxmain.c
2011-11-10 19:22:57 -08:00
eehouse@eehouse.org
e48ed847df Merge remote branch 'origin/android_branch' into android_branch 2011-11-10 19:02:57 -08:00
Andy2
284bd2d0c4 turn on sanity checking of dicts in download directory, but from
DictLangCache rather than when the directory's walked initially.  Need
to test still with bogus dict and make sure it's never shown.
2011-11-10 19:02:18 -08:00
Eric House
5be5e9fdeb cleanup script output 2011-11-10 18:39:35 -08:00
Eric House
619c25ee49 add a bit of logging to help deciphering test app problems. 2011-11-10 18:28:11 -08:00
Eric House
cee738942e back out earlier change using redo: it was broken. Add assert to
catch problem with passing ptr to tiles as src of tiles.
2011-11-10 18:26:32 -08:00
Eric House
6d98631640 sanity check: make sure tiles are within range. 2011-11-10 18:24:45 -08:00
eehouse@eehouse.org
9f22b11f81 Merge remote branch 'origin/android_branch' into android_branch 2011-11-10 06:54:42 -08:00
Andy2
43a79a0b47 use undo/redo rather than copying stack to figure past move score.
This may have been contributing to crashes, but the new code's more
effecient anyway.
2011-11-10 06:52:33 -08:00
Andy2
00f743409a script for reproducing problem with relay games that show up randomly. 2011-11-10 06:51:30 -08:00
Andy2
d479b2b979 use timeout rather than idle. Sometimes (due to bug?) curses app is
too busy ever to fire idle proc.
2011-11-10 06:51:05 -08:00
Andy2
645695e358 improve logging, and fix mistyped variable found by inspection rather
because of a problem.
2011-11-10 06:41:07 -08:00
Andy2
b9a7574925 fix emacs header comments; no code change 2011-11-10 06:39:36 -08:00
Andy2
af5c8a096f don't pass a pointer to a tray inside the model to model code that
will modify that tray!  Fixes nasty random crash/assertion failure.
2011-11-10 06:35:05 -08:00
Eric House
36c267ad88 Merge remote branch 'origin/android_branch' into android_branch 2011-11-09 06:52:32 -08:00
Eric House
268f018140 add dict sanity check that will, I hope, catch corrupt dicts. 2011-11-09 06:51:12 -08:00
eehouse@eehouse.org
ffd6a42c1e Merge remote branch 'origin/android_branch' into android_branch 2011-11-08 21:12:47 -08:00
Eric House
c591182d6c Modify linux bonus square code to work with board data that's half the
size.  Toward a board small enough to be transmitted as part of
network game initialization.
2011-11-08 21:11:06 -08:00
Andy2
956fe350ba remove changed param -- mmap's the default now. 2011-11-07 18:19:12 -08:00
Andy2
e4aa2ff180 finish changelog 2011-11-07 06:51:27 -08:00
Andy2
995c410b7c revert unintended checkin: logging should not always be on. 2011-11-07 06:49:55 -08:00
Andy2
4b5a06fe20 test code tweaks 2011-11-05 06:14:46 -07:00
Andy2
3707e7aaca tweak to get performance to same level as before length-filtering was
added, mostly by using local variables instead of ptr-accessed in
struct and macro magic to support that.  Passes every test I can think
of on Linux but fast-scrolling broken on Android.
2011-11-05 06:14:35 -07:00
eehouse@eehouse.org
214f8990bf Merge branch 'android_branch' into android_browsedict 2011-11-04 17:23:27 -07:00
Andy2
ac875894a6 replace assert that occasionally fails with logging. Not sure why it
fails, but I just drop the (timer) event in the non-debug case so it's
probably harmless.
2011-11-04 17:19:50 -07:00
Andy2
5123bebe50 don't set dict name to "download more". Just not a good idea. 2011-11-04 17:15:12 -07:00
Andy2
0561ca5ab9 make buttons a bit wider since the bar scrolls now, and rearrange. 2011-11-04 17:14:37 -07:00
Andy2
223d2d6e92 set configchanges on chat activity -- it handles orientations changes fine. 2011-11-04 07:11:34 -07:00
eehouse@eehouse.org
71b09b80ab Merge remote branch 'origin/android_branch' into android_branch 2011-11-04 07:05:56 -07:00
eehouse@eehouse.org
6c1b0e9b58 Merge branch 'android_branch' into android_browsedict 2011-11-04 07:05:16 -07:00
Andy2
61681745c2 sort languages (groups) in dicts activity alphabetically 2011-11-04 07:03:40 -07:00
Andy2
57a1069efe wire min/max through jni: now selecting numbers changes the number and
length of words selected.  But it's really slow, and indexing seems
broken in some cases.  Not ready for release yet.
2011-11-04 06:56:59 -07:00
Andy2
fa14f02b69 add ui support for min,max filtering of wordlist. Not yet wired into
jni.  But: even disabled it seems to lead to much slower scrolling, so
I need to investigate that before taking this any further.
2011-11-04 06:18:11 -07:00
Andy2
1bba95a985 add minmax compile-time flag, commented-out 2011-11-04 06:17:09 -07:00
Andy2
da02e994b7 protext min,max with compile-time flag 2011-11-04 06:16:44 -07:00
Andy2
4e66747bbc fix for changed API 2011-11-03 21:35:17 -07:00
Eric House
adb9473a87 Merge branch 'android_branch' into android_browsedict
Conflicts:
	xwords4/common/dictiter.c
	xwords4/linux/linuxmain.c
2011-11-03 21:32:04 -07:00
Eric House
30387bc528 up version codes 2011-11-03 21:27:43 -07:00
Eric House
a2319a8073 experimental additions, mostly compile-time disable-able, so prune
dict by wordlen.
2011-11-03 21:25:51 -07:00
Andy2
948def8223 replace burried launch-dict-browser menuitem with toolbar button and
newbie hint.
2011-11-03 18:14:01 -07:00
Andy2
8db6b0bddd wrap toolbar in a HorizontalScrollView. Comes into action when all
buttons are enabled.
2011-11-03 17:24:56 -07:00
Andy2
1de9f806e9 test dict_countWords() 2011-11-03 06:19:07 -07:00
Andy2
627410250f reuse existing code in dict_countWords() 2011-11-03 06:18:53 -07:00
Andy2
4f29f51253 turn dict iter feature on for linux for good 2011-11-03 06:18:15 -07:00
Andy2
d19858d6bb add (buried) menuitem to launch dict browser from game. Required
adding method to get current player from BoardView.
2011-11-03 05:51:38 -07:00
Andy2
6e58963231 sign up to handle keyboard/orientation changes for dict browser 2011-11-03 05:32:36 -07:00
Andy2
eace89000b save text size rather than figure each time 2011-11-03 05:20:38 -07:00
Andy2
a5498ee33a fix find to return position rather than boolean 2011-11-03 05:20:11 -07:00
Andy2
56fc73e78a don't go straight from tap on dict word to browser: add bool so that
even if there's only one lookup URL it'll be listed and user can
quickly cancel.
2011-11-02 18:48:13 -07:00
Andy2
c222f08252 catch up with API changes. 2011-11-02 18:46:06 -07:00
eehouse@eehouse.org
ae118e78a3 Merge branch 'android_branch' into android_browsedict 2011-11-02 18:32:26 -07:00
Andy2
5c995af38c stop changing formats between internal and external structs
(iterators); use internal format all the time for speed.  Update linux
test code for new API.
2011-11-02 18:32:00 -07:00
Andy2
7231bd4be3 make dict entries text size bigger 2011-11-02 05:18:10 -07:00
Andy2
8704acfbf1 launch dict browser from tap on dict rather than contextual menu on it. 2011-11-02 05:06:53 -07:00
Andy2
050a68ce42 use XP_REALLOC now that it's fixes 2011-11-02 05:04:31 -07:00
eehouse@eehouse.org
04b8c09128 Merge branch 'android_branch' into android_browsedict 2011-11-02 04:39:51 -07:00
Andy2
ab4ccb1a22 use realloc for testing 2011-11-02 04:39:12 -07:00
Andy2
38867b2875 fix bug in debug free following debug realloc to smaller size 2011-11-02 04:38:39 -07:00
Andy2
eb2b139e48 add some consts and better test for null index data 2011-11-01 18:47:20 -07:00
Andy2
b822f573d6 use getStartsWith() to implement search; add dict name and word count to
title; change text of menu item that launches dict browser from
Details to Browse
2011-11-01 18:45:41 -07:00
Andy2
9f2158f094 add dict_getStartsWith to jni 2011-11-01 18:43:36 -07:00
Andy2
482aca5cfb fix crash due to bad allocation of indexing data space. First cut
used XP_REALLOC, but that turns out to be broken, at least on android.
Haven't really used it before...
2011-11-01 18:33:29 -07:00
Andy2
5827127ceb add some consts and better test for null index data 2011-11-01 18:18:06 -07:00
Andy2
fc4a5c31f4 silence picky compiler 2011-10-31 21:11:52 -07:00
Andy2
11b7ed1e8e fix to compile with new dictiter files 2011-10-31 21:11:22 -07:00
Andy2
3b04cb542c silence picky compiler 2011-10-31 21:11:10 -07:00
eehouse@eehouse.org
45de6c734b Merge branch 'android_branch' into android_browsedict 2011-10-31 21:06:04 -07:00
Andy2
0d4404d43b add dict_getStartsWith(), and code to test it. Lots of cleanup and
bugfixing of dictiter code as well.
2011-10-31 21:05:34 -07:00
Andy2
88f556356c dict_tileForString -> dict_tilesForString 2011-10-31 20:56:48 -07:00
Andy2
69b1b4da27 break dict iteration stuff out into new files. No code change
otherwise.
2011-10-31 18:30:55 -07:00
Andy2
3c53da46ce fix to compile with changed API. Crashes, but want to fix up API in
other branch before debugging here....
2011-10-31 18:22:33 -07:00
eehouse@eehouse.org
24d95675c7 Merge branch 'android_branch' into android_browsedict 2011-10-31 07:03:34 -07:00
eehouse@eehouse.org
916d817ef2 Merge remote branch 'origin/android_branch' into android_branch 2011-10-31 07:02:30 -07:00
eehouse@eehouse.org
ff3a8d4179 Merge branch 'android_branch' into android_browsedict 2011-10-31 06:38:16 -07:00
Andy2
1d34c26ebc remove unneeded parama 2011-10-31 06:37:53 -07:00
Andy2
dc58d123d5 combine params into single struct 2011-10-31 06:34:21 -07:00
Eric House
491c9d06d6 reverse sense of option to mmap dicts by default 2011-10-29 20:31:47 -07:00
Andy2
7d1e9c7638 Merge branch 'android_branch' into android_browsedict
Conflicts:
	xwords4/android/XWords4/jni/Android.mk
	xwords4/android/XWords4/res/values/strings.xml
	xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardActivity.java
2011-10-28 22:27:22 -07:00
Andy2
8f3c4f6426 add config option to enable face-up tile picking 2011-10-28 22:24:47 -07:00
Andy2
8d228ae190 turn on face-up tile picking for Android (though there's no prefs UI
to enable it for a game yet).  In common code, break pick tile utils
method in two, one for blank and the other for tray tiles.  In java,
implement dialog for picking the tiles.  Works, though is a bit clumsy
to have the dialog come and go after every pick.  Better would be a
dialog that stays up and accumulates picks -- but it'd have to know to
reduce the set of tile choices as letters are chosen.  This'll do for
now.
2011-10-28 22:15:56 -07:00
Andy2
390e7558b0 Merge branch 'android_branch' into android_browsedict
Conflicts:
	xwords4/common/dictnry.c
2011-10-28 21:00:01 -07:00
Eric House
f6ff3e85c6 Merge remote branch 'origin/android_branch' into android_branch
Conflicts:
	xwords4/common/dictnry.c
	xwords4/common/dictnry.h
	xwords4/linux/linuxmain.c
2011-10-28 20:54:55 -07:00
Eric House
71450b02b3 use indexing (and add binary search) to double speed of getNthWord 2011-10-28 20:27:16 -07:00
Eric House
ff89ffb168 add missing backup button to fully test tile picking 2011-10-28 20:23:59 -07:00
Andy2
4df13f5617 fix missing dict language 2011-10-28 06:39:47 -07:00
Andy2
b490618c8e silence warning with cast 2011-10-28 06:34:59 -07:00
Eric House
84044fa9ee move lookup dialog into superclass so can be used from dict browser. 2011-10-27 21:10:35 -07:00
Eric House
308720186d get all word-click events and print contents -- setting up for lookup 2011-10-27 18:43:28 -07:00
Eric House
1741021c3c add search field and button. Not yet wired to do anything. 2011-10-27 18:26:48 -07:00
Eric House
ed055b83c6 export index from jni and use for fastscrolling. Works, but is a bit slow still. 2011-10-27 07:01:57 -07:00
Eric House
5282246dd6 use <cr> and previx separator, not terminator, so java-side split() doesn't end list with empty str. 2011-10-27 07:00:57 -07:00
Eric House
4818a2919d Merge branch 'android_branch' into android_browsedict 2011-10-26 22:25:54 -07:00
Eric House
42d1a48a1d don't include indices for prefixes that don't exist. 2011-10-26 22:25:21 -07:00
Eric House
412a58f6b9 make dict_makeIndex work for depth > 1. 2011-10-26 22:20:21 -07:00
Eric House
f2c4e39cd4 add dict_makeIndex(). Works, but only for depth==1 so far (A, not AA or AAA). 2011-10-26 07:10:50 -07:00
Andy2
92f692510f outline for fastscroll with thumb. Will need jin support mapping
indices <-> first letters, e.g. BB to whatever the index is of the
first word starting with BB.
2011-10-25 19:33:55 -07:00
Andy2
a7ce5a43de fix so count comes from dict; combine two jni methods into one; fix
crash in destructor.  Now an entire dict can be scrolled through if
you have the patience.
2011-10-25 18:36:12 -07:00
eehouse@eehouse.org
57487aaf3e Merge branch 'android_branch' into android_browsedict 2011-10-25 06:49:32 -07:00
Andy2
b62fe13c97 move dict iterator test into separate function and add test for
dict_getNthWord().  Still ifdef'd out.
2011-10-25 06:48:59 -07:00
Andy2
fc973079dc add first cut at dict_getNthWord. Works. Is slow. 2011-10-25 06:48:16 -07:00
Andy2
74cf751729 use existing dict iteration APIs to implement jni that adequately
displays a dict.  But I don't have a getNth in C to implement the one
I've added in java; need to add that, and caching, to speed it up.
2011-10-24 20:15:52 -07:00
eehouse@eehouse.org
a75aa88c58 Merge branch 'android_branch' into android_browsedict 2011-10-24 18:27:33 -07:00
Andy2
ac214236c4 add code to walk dict backwards as well, and test code that
succesfully walks huge dicts in both directions turning out the same
list of words either way.  Still compile-time disabled.
2011-10-24 18:27:16 -07:00
Andy2
b08f9770cf add dictionary browser. For now it just adds items to the list that
give the position so I can get a feel for how it works.  Will use this
to figure out the right API for a dictionary iterator.
2011-10-23 19:35:15 -07:00
Andy2
c237717de5 dict_getInfo returns false if the dict doesn't parse so can be used to
test validity of downloaded dict.  Internally (in jni), add lots of
checks that format is correct and we don't run off end of ptr walking
truncated dict.
2011-10-23 14:21:57 -07:00
Andy2
7c7cd82e0a add code to iterate over words in a dict. Works on Linux (iterating
forward only) but disabled at compile time.  Idea's to have a dict
browser.  There was some simple refactoring in common code Android
uses, and that tests fine.
2011-10-21 18:51:33 -07:00
Andy2
201c32e4db add support for download directory as a place where we look for dicts
and to/from which dicts can be moved.  Right now it's just
/sdcard/download.  Dunno if that's universal.  There seems not to be
API except in newer SDK versions for finding it.
2011-10-20 20:22:36 -07:00
Andy2
4eee7f8aa7 Pass selected tiles into new util function, and from there into java
world, so confirming query can include them.
2011-10-19 18:34:26 -07:00
Andy2
f41d3c27e6 Merge branch 'android_branch' into send_in_background
Conflicts:
	xwords4/common/server.c
2011-10-19 06:23:16 -07:00
Andy2
d63f6961d4 fix log comment to correctly identify site. 2011-10-18 21:29:59 -07:00
Andy2
c2a7a5c347 fix crash: don't destroy stream if for some reason it's null. Not
sure how that happens, but it does.
2011-10-18 21:29:40 -07:00
Andy2
90b0a4e46f if words stream is null, don't pass into java code (where current impl
will get a NPE)
2011-10-18 21:28:50 -07:00
Andy2
652b7e703a Remove difference between debug- and non-debug stream format. 2011-10-18 21:27:28 -07:00
Andy2
b31e829414 Remove file-format differences between debug and non-debug versions.
Fix curses to compile non-debug.
2011-10-18 18:52:37 -07:00
eehouse@eehouse.org
b8adbd94c1 Merge branch 'android_branch' into send_in_background 2011-10-18 06:47:38 -07:00
Andy2
028c416587 don't disable player listing when game is in play and locked; allow
users to see info about players and change dict.
2011-10-18 06:46:46 -07:00
Andy2
71fabdac95 add changelist change 2011-10-18 06:35:26 -07:00
Andy2
214debca47 up strings for beta 37 2011-10-18 06:16:15 -07:00
Andy2
ff82c20b2c fix brokenness (black-on-black text in lookup dialog) on 2.2 and
beyond by copying in layout for built-in list items and hard-coding
white text color.  This is risky/fragile but I can't find another fix.
2011-10-17 21:33:11 -07:00
Andy2
dc84cfcb97 cleanup/reformat. No code change. 2011-10-17 20:27:51 -07:00
Andy2
235259ef45 a bit more tuning of model_listWordsThrough()... 2011-10-17 18:26:04 -07:00
Andy2
3b7532aba8 improve stack_redo() to return the redone move, and use that to avoid
making a copy of the move stack in model_listWordsThrough()
2011-10-17 18:16:19 -07:00
Andy2
9109396ae9 in model_listWordsThrough, only undo as much as needed to find the
move tile that places a tile on the cell we're interested in.
2011-10-17 06:48:59 -07:00
Andy2
8062a027e7 cleanup: NULL's a legal value now. 2011-10-17 06:48:13 -07:00
Andy2
b02e0eb9cf actually list words: makes a better test. 2011-10-17 06:47:49 -07:00
Andy2
29eec38821 remove unused strings 2011-10-16 17:59:00 -07:00
eehouse@eehouse.org
5afb0ae145 Merge branch 'android_branch' into send_in_background 2011-10-14 22:34:29 -07:00
Andy2
6793742f0f remove option to list all words played in a single lookup dialog, and
supporting code in the jni/common C.
2011-10-14 22:32:30 -07:00
Eric House
46392da205 Fix crash when password dialog comes up second time: don't be cute and
reuse custom views as they remember their parent and that needs to be
cleared.  Just recreate each time and let gc() do its job.
2011-10-14 19:07:19 -07:00
Eric House
851b2d296f Should have gone with last checkin: delete of file due to renaming. 2011-10-14 19:05:07 -07:00
Eric House
e848b150b5 rename LookupActivity->LookupView since it's not an Activity any more. 2011-10-14 18:45:47 -07:00
Eric House
0b54b190b6 make lookup dialog a mere dialog rather than an activity to fix
too-slow transitions to and from it.  Works by keeping code in
separate custom view and not setting buttons or anything else on the
dialog.
2011-10-14 18:39:39 -07:00
Andy2
0e6b4d749f When pen held on committed tile on board, cons up list of all words
played that include that tile and pass to new util_cellSquareHeld()
method.  In java implementation of that method, use existing lookup
activity code to display list of words.  Enabled on the C side by a
compile-time flag in case it has problems.  Right now the time spent
saving a game before launching the lookup activity, and reloading it
after, is pretty apparent, but that's in emulator which is slow.
2011-10-13 19:14:08 -07:00
Andy2
7449923328 log tiles left in pool -- makes progress of automated/test games
easier to follow.
2011-10-13 19:10:13 -07:00
Andy2
01459285d5 show dict as comment beside player name in players list. And since
dicts change when language does, put language choice above players
list.
2011-10-12 18:37:31 -07:00
Andy2
0dfa69b1b2 implement pen timer with timeout, not idle. 2011-10-11 19:38:26 -07:00
Eric House
861a24dfeb Merge branch 'android_branch' into send_in_background 2011-10-10 22:42:28 -07:00
Eric House
f86b0dfcc5 fix to compile on x86 (with newer compiler that doesn't like unused variables) 2011-10-10 22:42:02 -07:00
Eric House
eb60bfade7 fix to compile on x86 (with newer compiler that doesn't like unused variables) 2011-10-10 22:40:05 -07:00
Andy2
9551f29335 up strings for beta 36. I'm skipping b35 rather than try to move the tag. 2011-10-10 22:30:38 -07:00
Andy2
4bb61401bd fix crash: src and dest stream params were reversed. 2011-10-10 22:24:44 -07:00
eehouse@eehouse.org
99707e4029 Merge branch 'android_branch' into send_in_background 2011-10-10 18:31:30 -07:00
Andy2
92a2fb1a1f attach newbie info to the lookup button 2011-10-10 18:24:06 -07:00
Andy2
cdf57d3bb7 cleanup 2011-10-10 06:53:46 -07:00
Andy2
d5ca5bbd0d remove misplaced assert: in network games illegal words may well
arrive.
2011-10-10 06:48:07 -07:00
Andy2
c3ba50c905 up strings for beta 35 2011-10-07 18:59:32 -07:00
Andy2
03543c17ea fix NPE I got once, presumably when activity shutting down. 2011-10-07 18:59:17 -07:00
Andy2
febf32040e don't kill xwords; it'll exit when it's done 2011-10-07 18:51:27 -07:00
Andy2
da5da3dd89 wait for connection rather than asserting immediate success so can be
started before server.
2011-10-07 18:50:37 -07:00
eehouse@eehouse.org
8712918e73 Merge branch 'android_branch' into send_in_background 2011-10-07 05:49:52 -07:00
Andy2
f03699f701 add newbie warning/request for languages with only google as
word-lookup site.
2011-10-06 19:03:07 -07:00
Andy2
f084661ec3 Never meant to check in having lookup menuitem at top level. 2011-10-06 18:47:08 -07:00
Andy2
152a9175c6 use dialog theme for lookups -- just works now, though didn't at first. 2011-10-06 18:44:59 -07:00
Andy2
a129f353f5 fix assertion by skipping states only when applicable, and running in
a loop so works in either direction.  Cleanup -- this is done.
2011-10-06 18:44:24 -07:00
Andy2
0a474804ce fix to work with bundling, i.e. by removing configChanges entry in
AndroidManifest.xml and changing orientation.
2011-10-06 18:25:17 -07:00
Andy2
d8c1e3822b fix problems with skipping singleton words and URLs; replace window
title with TextView.
2011-10-06 17:47:00 -07:00
eehouse@eehouse.org
6bf8d5abeb Merge branch 'android_branch' into send_in_background 2011-10-06 06:51:05 -07:00
Andy2
a9b467c903 make adapter based on static array static 2011-10-06 06:31:04 -07:00
Andy2
e292056b9c add new activity (with layout) to replace dialogs for word lookup.
Lots of code moved there from BoardActivity.
2011-10-06 06:26:46 -07:00
eehouse@eehouse.org
471a9d988d Merge branch 'android_branch' into send_in_background 2011-10-05 07:10:52 -07:00
Andy2
aaf0ba34e4 add a couple of French word lookup URLs. 2011-10-05 06:55:25 -07:00
Andy2
90f11abc37 add to game state passed into java world whether it's the cur selected
player's turn, and use that to enable/disable Pass/Turn done button.
2011-10-05 06:36:01 -07:00
Andy2
179560867f for symmetry, remove default menu title from res file and set in code
either way.
2011-10-05 06:14:48 -07:00
Andy2
c5c0fbccae remove unused DrawFocusState params from jni interface 2011-10-04 19:03:27 -07:00
Andy2
dc20b04a4c remove unused param (on the C/jni side) 2011-10-04 18:54:53 -07:00
Andy2
3ec97d5c07 Turn "Turn done" into "Pass" when the pending score is 0. To do that
I had to pass the score into draw_trayBegin since
draw_drawPendingScore() isn't called until the first tile's placed.
Note: as long as I'm messinng with this menuitem it should be disabled
when it's not the player's turn.
2011-10-04 18:48:33 -07:00
eehouse@eehouse.org
82615f409b Merge branch 'android_branch' into send_in_background 2011-10-04 06:49:19 -07:00
Andy2
f4b8b2806e remove unused parameter 2011-10-04 06:48:53 -07:00
Andy2
5dd21a16ea don't crash if words stream is null, as it will be when turn's a pass. 2011-10-04 06:45:16 -07:00
Andy2
c04f981442 fix new word-list reporting to work for networked games too: create
and save a second stream parallel to the existing one reporting the
move scoring.  Requires bump in stream version.
2011-10-04 06:44:29 -07:00
Andy2
3cf1d07df3 optimization: set up word-tracking invariants on init rather than each
time used
2011-10-04 06:21:02 -07:00