Commit graph

4397 commits

Author SHA1 Message Date
Andy2
bfc82242d7 add new column to be used to track whether a game is in use -- not
used yet but anticipated and I'm added a lot this release anyway....
2011-02-28 06:45:52 -08:00
Andy2
20ad465b96 from GamesList.onNewIntent, launch the first changed game rather than
just invalidating all changed list items.
2011-02-28 06:37:29 -08:00
Andy2
ed8707fb4b replace array[1] with HashSet to support more than one db change
listener (part 2)
2011-02-28 05:42:09 -08:00
Andy2
b57b6b1b31 replace array[1] with HashSet to support more than one db change listener 2011-02-28 05:41:02 -08:00
Andy2
c31e964ce4 remove class and interface no longer used 2011-02-27 22:45:51 -08:00
Andy2
fe9932b57d remove hint menu. Add sync-with-server item to board and factor code
implementing same in GamesList up into DlgDelegate where it can be
called from both.  Also, make syncing fire off the service just as the
timer does so that results generate Notifications.  Makes it better
for testing if nothing else.
2011-02-27 22:43:09 -08:00
Andy2
d2e663fa99 remove logging 2011-02-27 22:40:26 -08:00
Eric House
4d5aad61b4 Merge branch 'android_branch' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_branch
Conflicts:
	xwords4/android/XWords4/src/org/eehouse/android/xw4/RelayService.java
2011-02-26 20:02:29 -08:00
Andy2
6df2abecb6 don't use special launchModes for GamesList *but* do invoke it from
DispatchNotify so that an existing instance will be reused rather than
a new on created on top of the stack.
2011-02-26 19:47:33 -08:00
Andy2
9cc7cd0dc8 add logging of activity lifecycle methods -- and override a couple just
to do the logging before calling super().  These should go once I've
got the lifecycle stuff working.
2011-02-26 19:46:29 -08:00
Andy2
ef074f2944 don't bother passing flags to DispatchNotify class. 2011-02-26 19:45:05 -08:00
Andy2
a0f5ef4e18 remove logging 2011-02-26 19:44:02 -08:00
Eric House
a68170de51 remove PendingIntent.FLAG_UPDATE_CURRENT; it's breaking things. 2011-02-26 12:10:24 -08:00
Andy2
5ba6579180 Add Discard button to dialog explaining that remote game's been
deleted.  To do that: added interface to TransportProcs that a caller
can implement and to which it delegates the UI (error code reports).
BoardActivity implements that interface.  To avoid a race condition
where the JNIThread would save the game after I'd deleted it I kill
the thread and wait for it to die before deleting the game and calling
finish().
2011-02-25 19:57:43 -08:00
Andy2
86274785dd add newbie-info on turn-changed 2011-02-25 07:13:54 -08:00
Andy2
5e0f12e49d add a confirmation dialog to "undo last", and remove it altogether
from networked games since as currently implemented it can quickly get
them permanently out-of-sync (and cause the jni code to assert.)  Need
to debug this....
2011-02-25 06:54:38 -08:00
Andy2
0be59d1ba7 add showConfirmThen (which XWListActivity already has) 2011-02-25 06:53:36 -08:00
Andy2
d41487150b add draw_boardBegin (fix broken compile) 2011-02-24 22:28:15 -08:00
Andy2
ce64f79cdd add draw_boardBegin 2011-02-24 22:24:24 -08:00
Andy2
5afb7aadff add dict_getTileValue 2011-02-24 22:23:57 -08:00
Andy2
40dcda2262 add flag that's supposed to help notification launch an open activity 2011-02-24 22:21:04 -08:00
Andy2
5291307c11 get rid of onRestart -- onStart is always called right after. 2011-02-24 22:20:10 -08:00
Andy2
8b5f4a84f2 tweak strings so relevant part visible. 2011-02-24 17:45:02 -08:00
Andy2
9809864afb move connect-never option to the top where won't be scrolled off
screen initially
2011-02-24 17:44:43 -08:00
Andy2
66bc435f28 always save after receiving messages that may have changed state.
Previously did so only when in background, but that leaves a problem:
if device A sends messages to B and B ACKs them so that they're
deleted but exits without saving (for any reason) the game is
permanently horked.  It's safer to save immediately.
2011-02-24 17:35:22 -08:00
Andy2
f382f17d20 make game_receiveMessage return even if server doesn't do anything
with it -- since caller will use the return value to decide whether to
save state.
2011-02-24 17:33:10 -08:00
Andy2
f0d90f0576 get rid of cute auto-array-creation. No behavior change; maybe no
change in generated code.
2011-02-24 07:39:35 -08:00
Andy2
9818a29f86 Use bitvector (an int) instead of an enum for flags noting what
arrived in the background. When notification that game's over arrives,
add it to the flags, then on game open show the game over dialog (in
addition to raising chat activity and possibly showing recent move.)
2011-02-24 07:09:41 -08:00
Andy2
7910aed896 XW[List]Activity now call removeDialog() every time a dialog is
dismissed so that they now all go through onCreateDialog() every time.
This allows to shrink or eliminate onPrepareDialog().  The hope is
that it will fix the occasional crash where restoreManagedDialogs
invokes onPrepareDialog() and some ivar I need isn't set because the
class was just reloaded.
2011-02-24 06:25:18 -08:00
Andy2
1529319a60 add vibrate permission; get RelayReceiver notified on boot so can set
initial timer.
2011-02-23 07:39:14 -08:00
Eric House
83cb8550dc set the right field for sounds and notifications (helps to RTFM, but still not tested on device) 2011-02-23 06:00:27 -08:00
Eric House
29b05b83ec Merge branch 'android_branch' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_branch 2011-02-22 19:56:40 -08:00
Eric House
ab71ac8847 add game name to chat activity title 2011-02-22 19:55:57 -08:00
Andy2
aaffb749cd move network prefs into its own category; add prefs checkboxes there
and getters controlling whether vibrate and sound are used as part of
notifications.
2011-02-22 18:59:56 -08:00
Andy2
151df44c96 get rid of m_invalPath. It seems to be the onContentChanged() on
focus grabs that was needed.
2011-02-22 18:30:37 -08:00
Andy2
dbb69bfff5 add in flags to get vibration and sound with notifications. (Untested
on device.)  Will want to add prefs to disable these.
2011-02-22 18:29:53 -08:00
Andy2
bf567a131a fix crash (according to stack crawl from device) 2011-02-22 18:09:20 -08:00
Andy2
697fc7d5ca get rid of some logging 2011-02-22 06:54:03 -08:00
Andy2
030d2e76a7 add interface with method that's called whenever a DB record is saved.
GamesList implements that interface and invalidates the list item
corresponding so it'll get redrawn with updated info.  Should allow to
replace m_invalPath but doesn't...
2011-02-22 06:48:20 -08:00
Andy2
f75318e9d0 rename method and add variant then remove duplicated code. No behavior change. 2011-02-21 19:47:00 -08:00
Andy2
a4e995742f bring back RelayService, which RelayReceiver now delegates to for the
work of pinging relay on timer.  That work, which can cause receiver
to exceed its timeout if there are e.g. problems resolving hostnames,
must be done in a thread and Receivers aren't supposed to have
threads.  Seems to work as well as it did before and also fixes
force-restart bugs when the network is slow/unavailable.
2011-02-21 18:12:15 -08:00
Andy2
318b820ea7 tweak newbie info for chat 2011-02-21 18:09:12 -08:00
Andy2
07fd2f6bb8 add title to chat activity 2011-02-21 06:51:47 -08:00
Andy2
21d46957be comment out some logging and the annoying toast-on-relay-check 2011-02-21 06:50:54 -08:00
Andy2
353832a7ca Look at opening game immediately when relaunched via onNewIntent() as
well as via onCreate().
2011-02-19 21:20:56 -08:00
Andy2
5ede3b19f0 up constants for beta 22 2011-02-19 08:41:14 -08:00
Andy2
2150d8b4a4 be a bit less pessimistic 2011-02-18 22:53:13 -08:00
Eric House
5d25faa780 update changes log 2011-02-18 22:51:09 -08:00
Eric House
1e3f094289 up constants for b21 2011-02-18 22:50:37 -08:00
Andy2
3fb7c48172 turn off tile selection for linux (perhaps temporarily) 2011-02-18 22:31:28 -08:00
Andy2
15f40f01af fix to compile with new gdk that's on ubuntu 10.10. Need to fix the
APIs eventually.....
2011-02-18 22:28:32 -08:00
Andy2
5460941ba8 cleanup 2011-02-18 22:23:06 -08:00
Andy2
9fbce6f942 remove old comment that wasn't supposed to get checked in. 2011-02-18 22:18:28 -08:00
Eric House
8fe195e91c Merge branch 'android_branch' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_branch 2011-02-18 22:15:03 -08:00
Eric House
020c2b6982 fix warnings by removing unused strings 2011-02-18 22:13:24 -08:00
Andy2
27bc89b684 when launched after chat messages have been received, launch the chat
activity.  This requires an enum be stored in the DB instead of a
boolean.
2011-02-18 18:45:26 -08:00
Andy2
31348d978e mark game as synced -- having messages -- if the only messages to
arrive had to do with chat.  Clear that flag when opening game, not
when saving it.
2011-02-18 18:06:27 -08:00
Andy2
94a7361e99 Add spaces to sql commands adding columns -- they'll fail otherwise. 2011-02-18 18:02:52 -08:00
Andy2
0726cefb10 fix NPE: if there's no history string don't try to split it. 2011-02-18 17:44:23 -08:00
Andy2
d2fda267e5 fix assertion failure that happened when I changed whether remote
scores were shown mid-game.  If the value's not as expected just don't
show the score.
2011-02-18 17:43:01 -08:00
Andy2
da6d7da350 always say the net's available when on simulator. The net-up
notification stuff just doesn't work there.
2011-02-18 17:41:15 -08:00
Andy2
cd01c32ad1 When launched with a list of relayIDs (presumably because data has
arrived for them), open the first corresponding game for which the
dictionary is still there.
2011-02-17 17:41:53 -08:00
Andy2
2e9d87fddc override gameDictHere to allow null params 2011-02-17 17:40:35 -08:00
Andy2
c271cb2fdd add a clear-history menu to chat 2011-02-17 07:14:58 -08:00
Andy2
b3ffb4895b use background rather than text color to separate local and non- chat. 2011-02-17 06:56:48 -08:00
Andy2
c844e9165d limit knowledge of how history is stored to DBUtils. 2011-02-17 06:27:48 -08:00
Andy2
fec402cf50 display chat history as a scrolling list of TextView objects rather
than in a single TextView so different styles can be applied based on
whether text is from local or remote device.  For now text is just
grey if local.
2011-02-16 18:53:47 -08:00
Andy2
736860685b add a Send button to the chat activity and send on it rather than <cr>. 2011-02-16 18:13:54 -08:00
Andy2
0c9b053844 save into DB rather than drop chat messages received in background.
Still need to add UI to let user know a new message is there.
2011-02-16 07:37:14 -08:00
Andy2
a954977e56 white-space difference only: fix indentation. 2011-02-16 07:13:41 -08:00
Andy2
1400de489d implement chat with an activity rather than a little dialog. Include
history, and store it in the game record in the DB (new column).  This
will allow to not drop chat messages that arrive in the background,
though that's not implemented yet.
2011-02-16 06:55:46 -08:00
Andy2
9eba54344b get rid of theme stuff. It's broken and looks like crap. When
there's enough color control to make a different theme look good put
this change back and fix it.
2011-02-14 20:14:48 -08:00
Andy2
526b3c1bef register receiver with app context rather than a single activity's so
that it doesn't leak when that activity goes away.
2011-02-14 18:12:46 -08:00
Andy2
0354c3f1d9 sort by creation time rather than lastsaved time. This is a temporary
workaround to fix a bug where the UI isn't updating often enough and
sometimes delete or other position-based long-tap menu actions on the
list act on the wrong game.  This gives an order that won't change.
Revisit later if a more dynamic order is desired.
2011-02-14 18:11:55 -08:00
Andy2
700c58d6dc drop any relayIDs for which messages didn't have any effect on the
game they were passed to.  This prevents duplicate messages from
generating notifications over and over -- and dupes are common when
messages stay on relay until the receiving game ACKs them.
2011-02-14 07:08:35 -08:00
Andy2
688fadb965 override onNewIntent to inval games whose ids have changed 2011-02-14 07:07:05 -08:00
Andy2
fffeceb665 include list of changed relayIDs in intent used to relaunch GamesList. 2011-02-14 07:06:16 -08:00
Andy2
be4bb3a73e set launchMode of GamesList activity to singleTask. This seems to be
the only way to have it wind up on top *and without it being a second
instance of the activity* when relaunched in response to a move-made
notification.  Even passing the SINGLE_TASK flag to the relaunching
Intent doesn't accomplish this.
2011-02-14 07:04:34 -08:00
Andy2
c2aa7438c7 get rid of excess logging 2011-02-14 06:13:20 -08:00
Andy2
95b60cc767 modify games list items to include a second column with everything but
the players and connection method in it.  Put the game's last-saved
time in that column.  Now sort order has most recently opened games at
top.
2011-02-11 18:29:11 -08:00
eehouse@eehouse.org
2beea5b04f Merge branch 'android_branch' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_branch 2011-02-10 06:45:12 -08:00
Andy2
061eb9c405 return list of games ordered by mod time so they display in that
order, with newest (most recently modified) at top.  This won't really
make sense until modtime is added to the display.
2011-02-10 06:13:07 -08:00
Andy2
0f764664d4 add comment about failed attempt to deliniate list items by having
their backgrounds alternate slightly.
2011-02-10 06:11:54 -08:00
Eric House
984227955b make two versions the same since there's been no release since first was added. 2011-02-09 22:17:18 -08:00
eehouse@eehouse.org
0184369e5d Merge branch 'android_branch' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_branch 2011-02-09 06:50:21 -08:00
Andy2
b4d0774aa7 getRelayIDs -> getRelayIDNoMsgs to allow option of querying all, even
those already flagged as having new data.  The idea is that there
might be still newer data available, e.g. chat messages, that should
be fetched.
2011-02-09 06:45:45 -08:00
Andy2
cf65d9baec override onRestart to, like onStart, register subclasses with
DispatchNotify class as ready to handle notifications.
2011-02-09 06:44:16 -08:00
Andy2
d02295ac85 use new function to try to avoid creating a notification when the UI
to display a change -- the GamesList activity -- is already available.
2011-02-09 06:43:11 -08:00
Andy2
e59148dbe5 use changed API 2011-02-09 06:42:14 -08:00
Andy2
af0048c93a use changed API 2011-02-09 06:41:53 -08:00
Andy2
4c1c298168 move logic for deciding whether a change needs to be turned into a
notification or can just be reflected via a currently-visible UI into
a separate function callable from outside.
2011-02-09 06:40:27 -08:00
Andy2
c18625d69a change what's reported via notifications to reflect that changes have
already been fetched.
2011-02-09 06:32:58 -08:00
Andy2
c60e48b156 RelayReceiver should not be launched in new process since that
prevents its communicating with/updating a game that's already
running.  User presumably wants the current app state updated when
possible.
2011-02-09 06:32:07 -08:00
Andy2
c56f0b5cea Save cached prev move explanation as part of stream so can be shown to
user when game is opened later. Fixes problem displaying empty
explanation on first open of game that was updated in the background.
2011-02-09 06:30:51 -08:00
Andy2
f956df853d return "" rather than null when there's no java class backing util --
common code is less likely to crash.
2011-02-09 06:17:38 -08:00
Eric House
dada74aad7 delete dict if there's an IO error while writing it. A German
correspondent's having occasional crashes with a single dictionary.
It appears that if it were truncated during the download that it would
appear ok until a word search spread into a missing area.  This fix is
untested, and should probably be replaced by a checksum that computed
and checked after the download, but I think it's an improvement.
2011-02-08 21:18:51 -08:00
Eric House
a2ad3d7c0b cleanup 2011-02-08 21:07:31 -08:00
Eric House
ad7f8252b9 separate out UtilCtxt implementation from BoardActivity so there's no
dependency on an open game having a visual representation.  This
should allow e.g. receiving and caching chat messages that come in
while game is not in foreground.
2011-02-08 21:06:18 -08:00
Eric House
d1ffc3af7b Merge branch 'android_branch' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_branch 2011-02-08 20:59:11 -08:00
Eric House
beaa7ba5a5 assume dict is utf8-encoded but check and fail if it isn't 2011-02-08 20:57:41 -08:00
Eric House
861aec127b Merge branch 'android_branch' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_branch 2011-02-04 08:09:50 -08:00
eehouse@eehouse.org
a22f50f2f6 Merge branch 'android_branch' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_branch 2011-02-04 07:09:59 -08:00
Andy2
c587a11ee2 Add turn and isrobot/islocal flags to summaries DB, and use to
background in green the player whose turn it is provided that player's
local.
2011-02-04 06:20:40 -08:00
Eric House
e196cfb352 add state table entry lack of which caused a bunch of crashes in a
short time on the live relay.  I'm not sure why it's needed, why they
happened only this time (likely due to a single device) or
alternatively why I don't see those crashes in testing, but the
addition doesn't break anything.
2011-02-04 05:41:44 -08:00
Andy2
79bd17e59b put each player in a game list item in its own line with score at
right end and name at the left.  This will allow e.g. marking in green
a local player whose turn it is.
2011-02-03 06:47:20 -08:00
Andy2
935fe0c7a0 remove option to not show bonus values. 2011-02-01 21:13:46 -08:00
Andy2
33bccaaf42 use slightly different, recommended code to test if network's available. 2011-02-01 20:57:05 -08:00
Andy2
223909f560 change what checking with the server means, from calling HAS_MSGS to
GET_MSGS.  When the messages come in, open up saved games and play
them into them, saving them after if there were any changes.  Tested
by playing a two-device game all the way through fetching messages
after every move.
2011-02-01 20:51:46 -08:00
Andy2
f41356c98b fix the show-other param 2011-02-01 18:57:01 -08:00
Andy2
bf0582f0aa make hint buttons en/disabled based on board_canHint() results. 2011-02-01 18:56:37 -08:00
Andy2
8a7029435c fix some comments 2011-02-01 18:55:48 -08:00
Andy2
ee620a3e37 move bonus squares into jni since they're constant rather than e.g. in
an editable resource.
2011-02-01 18:55:00 -08:00
Andy2
c2be642302 add game_getGi to fetch into java world any changes to the gi in the
jni world.
2011-02-01 18:53:29 -08:00
Andy2
383206f5dc move bonus squares into jni since they're constant rather than e.g. in
an editable resource.
2011-02-01 18:52:29 -08:00
Eric House
c6e7b21f8a Merge branch 'android_branch' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_branch 2011-02-01 09:39:55 -08:00
eehouse@eehouse.org
71c92bbaef Merge branch 'android_branch' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_branch 2011-01-31 21:47:20 -08:00
Andy2
977feada82 use a reference to a byte array in the java heap (locking down the
object) rather than allocating a new array in the C heap -- for the
DAWG data of a dictionary.  This can use up to 5% of the java heap for
huge dictionaries, but I'm hoping it fixes a problem reported by a
user of the large German dictionary that seems to involve allocation.
If I'm reading correctly, as long as I stay within 16M (24M or more on
newer devices) I'm sure to get my memory in the java world while it's
less a sure thing in the JNI world (where in addition linux's
aggressive overallocation is used, meaning I'll fail when I try to
swap in memory on write rather than get back NULL from malloc.)
2011-01-31 18:56:20 -08:00
Eric House
95443ec9d9 Merge branch 'android_branch' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_branch 2011-01-28 14:43:20 -08:00
Eric House
bb24694e37 Merge branch 'android_branch' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_branch 2011-01-27 21:09:30 -08:00
Eric House
dc82e57f14 add ability to fetch messages for more than one game at a time 2011-01-27 21:08:17 -08:00
Andy2
566a456489 use getChannel().size() rather than available() to decide how many
bytes to read from downloaded dictionary file -- because available()
will not always return the full size.  I suspect this is why a German
user is crashing when using the very large 2_15 German dict.
2011-01-27 21:03:37 -08:00
Eric House
70f52b162b Merge branch 'android_branch' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_branch 2011-01-27 14:58:10 -08:00
Andy2
57ec020330 change format of reply to MSG_GET: include number of messages per
device to support fetching for more than one at once.  This is
meaningless for rq as written now but a device will want to do this.
2011-01-27 06:37:36 -08:00
Eric House
481a533e58 ignore uncompressed dicts too 2011-01-24 22:21:44 -08:00
Eric House
4bf613a006 move pipe handling code to where can be shared by curses and gtk -- but use from curses is untested. 2011-01-24 22:20:47 -08:00
Eric House
63d16a99a2 turn off http view 2011-01-24 22:20:01 -08:00
Eric House
4ae8c76959 break printed runtime into hours:minutes:seconds 2011-01-24 22:19:02 -08:00
Andy2
825cda9125 new feature for testing proxy: --with-pipe option causes linux client
to, instead of putting up UI, blocking on pipe and once it's readable
opening saved game and passing messages into it from pipe then saving
it when done.  Works, but requires gtk so far.
2011-01-23 21:52:26 -08:00
Andy2
4b8e462b8b check for null ptrs to allow creating loading games that won't draw or
communicate with users.
2011-01-23 21:45:41 -08:00
Andy2
42d1a713c9 add new -f flag to invoke new fetch-message proxy command. Write the
results to stdout in stream format (len + message).  Goal is to be
able to pipe output to the linux clients to test.
2011-01-22 12:54:47 -08:00
Andy2
f96f4a040b add new proxy command that fetches actual messages stored for a device. 2011-01-22 12:52:26 -08:00
Andy2
d98a3fe232 when peeking is disabled (the default on android), don't allow
swapping to view of the current player's board if the current player
is remote -- because then won't be able to swap back to own view until
it's your turn.  Fixes annoyance in multi-device game on Android.
2011-01-21 21:32:52 -08:00
Andy2
09b5c44fb4 add option to prevent switching players by tapping scoreboard (to
mimic android)
2011-01-21 21:29:28 -08:00
Andy2
96fead3164 add msglen column to msgs table to be used to avoid calculating size
later.  Stores size of string as it was passed to db, not as stored.
2011-01-21 06:46:49 -08:00
Andy2
b863931db5 turn proxy service back on 2011-01-21 06:10:06 -08:00
Eric House
725888cb6c run proxy sockets through same thread pool as game sockets. This
prevents race conditions that are turning up when I'm running multiple
threads -- by allowing me to really not be running multiple threads.
Tested with the usual script.
2011-01-20 18:14:56 -08:00
Eric House
c4bf153d36 log reason game ended to game's logfile 2011-01-20 18:10:33 -08:00
Andy2
b506673946 use only one thread until race condition's fixed 2011-01-19 18:36:50 -08:00
Andy2
3ae62e4704 use an index rather than a ptr to track fd array (so a parallel array
can be added)
2011-01-19 18:36:24 -08:00
Eric House
4202ea5fac Merge branch 'android_branch' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_branch 2011-01-19 09:10:51 -08:00
Andy2
a8f4d772f8 set one timestamp when saving game, and another on game creation. 2011-01-19 06:54:23 -08:00
Andy2
7d6e136ca3 fix comment 2011-01-19 06:21:31 -08:00
eehouse@eehouse.org
a9c65aa950 Revert "add ctime and mtime timestamps to DB when creating, and upgrade to new"
This reverts commit 465370bac6.

Better to work with the existing timestamps as ints than mess with largely unsupported TIMESTAMP type.
2011-01-19 06:19:33 -08:00
Andy2
7f866da8da draw dragged tiles translucent 2011-01-18 22:03:17 -08:00
Andy2
46f085f479 drop rather than asserting failure when unable to create a dialog. 2011-01-18 21:19:02 -08:00
Andy2
f6b95f93a1 use HashSet rather than String[] for faster lookup. 2011-01-18 18:47:24 -08:00
Andy2
bce4a11595 more work on color prefs. Add a list pref at the same level as colors
for setting "scheme".  Implement that as changing potentially several
colors but only empty cell color for now.  Remove prefs for whether
cell letters follow user colors (they always will) and the new one for
frame color -- it'll always be dark grey.
2011-01-18 18:42:25 -08:00
Andy2
8d52149c28 cache the background color on which arrow is based so don't have to
compute its blackness each time.
2011-01-17 20:39:35 -08:00
Andy2
e9e54ba379 toward supporting a light-on-dark theme: add pref for cell border
color; add pref for whether highlight is black-on-white or the
reverse; and remake the board arrow in white if the background is a
dark color.  It's now possible to configure various colors so that
black empty cells looks good.  Next need a single control to do it.
2011-01-17 18:55:36 -08:00
Andy2
33d5246b7a add a new-user hint, displayed the first time the arrow's drawn on the
board, explaining what the arrow's for and how to move and disable it.
Implementation required passing XWActivity into BoardView so the
newbie hint method could be called on it.
2011-01-15 21:46:28 -08:00
Andy2
465370bac6 add ctime and mtime timestamps to DB when creating, and upgrade to new
version by adding them.  Can't have them default to 'now' because
that's not supported for ADDs.  Can't remove columns either, so at
some point I'll need to migrate to get rid of accumulated cruft.
Timestamps are not set nor read yet.
2011-01-14 19:03:08 -08:00
Andy2
c9fec737e5 changes, protected by a disabled compile-time flag, to use cairo-based
API for drawing instead of now-deprecated gdk ones.  Unfortunately
nothing actually draws and I'm putting the debugging off until I have
some time.
2011-01-14 18:15:33 -08:00
Eric House
04d8260f01 Merge branch 'android_branch' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_branch 2011-01-14 12:02:15 -08:00
Andy2
13ef8dd098 add hints-allowed to set of defaults for new games 2011-01-13 18:45:38 -08:00
Eric House
e7172fb4af Merge branch 'android_branch' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_branch 2011-01-13 14:57:24 -08:00
Andy2
9ebbbb0fec replace robot smart checkbox with a spinner having three settings.
Keep the kludge whereby the settings in all the players are kept the
same.
2011-01-13 06:48:50 -08:00
Andy2
d2ddc5cee7 turn off tile selection for android 2011-01-12 19:01:04 -08:00
Andy2
cd5dedfa67 add compile-time flag to disable selection of tiles in tray (other
than as part of an exchange) and to remove feature where tapping empty
cell moves selected tile there.  This is to address user confusion on
Android, and I'll ask for testing before putting this in the main
branch.  This leaves only place-arrow-then-tap as an alternative to
drag-and-drop, and may annoy people.  Worth trying: disable only the
automatic selection of another tile after the selected one is dropped.
2011-01-12 19:00:48 -08:00
Andy2
e7dbac41a6 fix to compile with new gdk that's on ubuntu 10.10. Need to fix the
APIs eventually.....
2011-01-12 19:00:20 -08:00
Andy2
6ccf0c167c fix next-hint which I just broke: need to track whether working on
behalf of robot after all, though it's not needed in the API, to
distinguish case where moves must be cached (for next-hint feature).
2011-01-11 18:10:48 -08:00
Andy2
ceab787cdd update to work with robot-smartness changes. At this point the UI's
unchanged and I'm trying to mimic the old per-game setting using the
new per-robot setting internally.  Still need to change the UI to
allow move than just a boolean choice.
2011-01-10 20:46:05 -08:00
eehouse@eehouse.org
a656bb8f0c Merge branch 'android_branch' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_branch 2011-01-10 18:20:42 -08:00
Eric House
2b502a39c6 fix mod-by-zero error when iq == 2 2011-01-10 18:19:10 -08:00
Eric House
b3de3fc91e add --robot-iq param for testing 2011-01-10 18:18:35 -08:00
Andy2
6495bd321f fix to compile with robotiq changes 2011-01-10 06:57:10 -08:00
Andy2
efb54c7b05 fix compile errors the stricter android compiler found. 2011-01-10 06:56:11 -08:00
eehouse@eehouse.org
09da57f165 Merge branch 'android_branch' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_branch 2011-01-10 06:48:25 -08:00
Andy2
f48c1cc8b2 add robot-iq param to test new common code and adapt to its API
changes; change param from robot-name to robot.
2011-01-10 06:46:09 -08:00
Andy2
639279f865 up the number of moves saved to 32 to match Android. 2011-01-10 06:44:47 -08:00
Andy2
f111b78714 switch from tracking robot intelligence as a per-game boolean
implemented (when not smart) as trying to match the human's score to a
per-robot value between 1 and 100 that gives the percentage of best
moves to store before picking randomly from among them.  So a 1 means
save only the best move and always pick it; 100 means save all the
best moves (how many are saved is compile-time configurable) and pick
one of them.  Because it's settable per-robot a smarter robot can be
played against a dumber one (though I may choose not to make it
settable per-robot on shipping versions.)
2011-01-10 06:44:28 -08:00
Andy2
fc23080120 param name has changed 2011-01-10 06:40:42 -08:00
Eric House
c7b6d799f0 switch to utf8 2011-01-07 18:05:57 -08:00
Andy2
5459631c76 No need for empty .dict when creating empty .dict.gz 2011-01-06 18:20:56 -08:00
Andy2
6f2cde1304 create an index at the top of page; indent dict lines; drop ".xwd" 2011-01-06 18:09:10 -08:00
Andy2
d3717c579e add ACCESS_NETWORK_STATE permission 2011-01-06 08:08:36 -08:00
Andy2
99c26cc0e9 move network state listener into own class so it can live longer than
a single game (keeping network state across games launches) and be
used by other network clients later.
2011-01-06 08:08:16 -08:00
Andy2
d832ba6795 Merge branch 'android_branch' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_branch
Conflicts:
	xwords4/linux/linuxmain.c
	xwords4/linux/scripts/discon_ok2.sh
2011-01-06 07:44:33 -08:00
Eric House
720f78d18a get rid of ivars used only for http UI 2011-01-04 21:43:10 -08:00
Eric House
46e9ae3c01 up copyright date 2011-01-03 16:33:03 -08:00
Eric House
11d7de5f0d display the number of devices (pids) running 2010-12-21 20:52:01 -08:00
Eric House
64004e9df8 fix to use long-opts 2010-12-21 20:51:36 -08:00
Eric House
9ea5c7462d fix long-opts glitches 2010-12-21 20:51:21 -08:00
Andy2
7fe5e43963 modify to use new long-only flags 2010-12-21 08:02:51 -08:00
Andy2
63e7084cc8 fix a couple of the new options 2010-12-21 08:01:44 -08:00
Andy2
a7aabdc41b use getopt_long_only and a table to make adding params easier, fix
running out of letters, and force better usage.
2010-12-21 00:58:02 -08:00
Andy2
2cc46d8a69 get rid of unused but oft-included file 2010-12-17 19:02:01 -08:00
Andy2
ff6fb7070e Android market reports a few crashes going out-of-bounds on array of
bad words.  Add an assertion on the only path that seems likely to be
causing that.
2010-12-17 18:57:43 -08:00
Andy2
0ee156c9f0 add empty: case for WINCE type too 2010-12-17 18:55:44 -08:00
Andy2
c0bec75fd8 fix crash when input wordlist is empty by not counting zero-length
word as a word.
2010-12-17 18:55:25 -08:00
Andy2
53de4eab9b correctly detect empty dict and set top ptr to null. Fixes crash
using empty dicts.
2010-12-17 18:54:27 -08:00
Andy2
c5e0955460 simplify build rule 2010-12-17 17:39:33 -08:00
Andy2
7e46163988 add counts and values -- from wikipedia article, as are Arabic and
Turkish files just checked in.
2010-12-17 17:38:47 -08:00
Andy2
18f8b0d4e4 switch to utf-8, adding an iconv call to translate the wordlists. 2010-12-17 17:37:57 -08:00
Andy2
32fccca995 Turkish. As with Arabic, untested. 2010-12-17 17:36:38 -08:00
Andy2
71559e27c6 add Arabic. I have no wordlist but this should still allow play
between humans, even over the net.  Untested, though, as my phone
doesn't have any Arabic glyphs.
2010-12-17 17:36:03 -08:00
Andy2
1535f56cd6 adding Turkish and Arabic and language names 2010-12-17 17:34:54 -08:00
Andy2
7e0f025d9e remove logging 2010-12-17 06:51:56 -08:00
Andy2
3336b39d6d add (wordcount) to subst title to make meaning more clear 2010-12-16 20:29:48 -08:00
Andy2
ea85512c4f put word count into list of dicts for substitution. Done by adding
actual count then stripping it back off to form the dict name again.
2010-12-16 20:24:04 -08:00
Andy2
0059f92626 use medium sized text for empty view 2010-12-16 18:50:15 -08:00