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
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
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
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
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
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
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
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
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
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
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