Commit graph

1962 commits

Author SHA1 Message Date
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
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
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
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
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
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
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
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
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
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
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
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
32988413dd cleanup: remove unneeded private constructor and make statics private 2012-01-04 06:26:17 -08:00
Eric House
8e62cf10c7 script to uninstall 2012-01-03 18:53:42 -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
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
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
867d9d68b0 script to install onto multiple emulators 2011-12-14 18:17:37 -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
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
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
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