Commit graph

299 commits

Author SHA1 Message Date
Andy2
2a34cd1e05 remove second param from server_do() -- it doesn't work anyway. 2011-12-21 18:45:05 -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
0474984b82 export new preference from jni and add a checkbox setting for it 2011-12-06 18:18:50 -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
Andy2
d37424ad7f Merge branch 'android_branch' into send_in_background
Conflicts:
	xwords4/linux/linuxutl.h
2011-11-21 22:18:52 -08:00
Andy2
e1e9a68d8f fix ptr out-of-bounds test. Was failing an empty dict. 2011-11-21 18:04:20 -08:00
Andy2
b86330c71f add dict_iter_getCounts() 2011-11-18 21:10:17 -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
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
2492e7cfc5 Merge branch 'android_branch' into send_in_background
Conflicts:
	xwords4/linux/cursesmain.c
2011-11-13 17:10:46 -08:00
Andy2
44c5500ab0 don't crash when empty or corrupt dict file passed in. 2011-11-11 18:29:26 -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
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
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
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
1bba95a985 add minmax compile-time flag, commented-out 2011-11-04 06:17:09 -07:00
Andy2
4e66747bbc fix for changed API 2011-11-03 21:35:17 -07:00
Andy2
a5498ee33a fix find to return position rather than boolean 2011-11-03 05:20:11 -07:00
Andy2
c222f08252 catch up with API changes. 2011-11-02 18:46:06 -07:00
Andy2
050a68ce42 use XP_REALLOC now that it's fixes 2011-11-02 05:04:31 -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
11b7ed1e8e fix to compile with new dictiter files 2011-10-31 21:11:22 -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
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
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
b490618c8e silence warning with cast 2011-10-28 06:34:59 -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
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
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
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
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
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
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
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
eehouse@eehouse.org
471a9d988d Merge branch 'android_branch' into send_in_background 2011-10-05 07:10:52 -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
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
35e4c21f17 add util_informMove to jni. Use it, but not to advantage yet. 2011-10-02 16:42:10 -07:00
Eric House
f0c3e2c5f0 Merge branch 'android_branch' into send_in_background 2011-09-22 17:22:01 -07:00
Andy2
fcdbed0920 fix to work with changed C api 2011-09-22 06:49:34 -07:00
Andy2
92614370ce Merge branch 'android_branch' into send_in_background
Conflicts:
	xwords4/common/comms.c
2011-09-20 06:21:54 -07:00
Andy2
dced47e202 export server_listWordsPlayed via jni. 2011-09-18 19:06:23 -07:00
eehouse@eehouse.org
98c2617613 Merge branch 'android_branch' into send_in_background 2011-09-14 06:47:12 -07:00
Andy2
c9c498786e add to game state whether any tiles selected. Use that to disable
'commit exchange' button when there's nothing to commit, and get rid
of error message used when committing nothing since it's now
impossible (on Android).
2011-09-09 19:04:25 -07:00
eehouse@eehouse.org
eb0e41e978 Merge branch 'android_branch' into send_in_background 2011-09-08 21:38:50 -07:00
Andy2
2aa5447301 remove some logging 2011-09-08 19:03:08 -07:00
Eric House
84931f34ff Merge branch 'android_branch' into send_in_background 2011-09-07 21:44:36 -07:00
Andy2
8087153b73 log name of dict being set -- as an easy way to confirm that the right
dicts are getting passed to the jin.
2011-09-03 20:19:51 -07:00
Andy2
da475347a5 get rid of unused constants 2011-09-02 18:36:26 -07:00
Andy2
2d2f3e23fd change signature of util_playerScoreHeld(): pass player num rather
than formatted text. Client code can use new
model_getPlayersLastScore() or whatever else it wants to build text to
show the user.
2011-09-02 18:36:03 -07:00
Andy2
42950c38bd export model_getPlayersLastScore() 2011-09-02 18:33:34 -07:00
Andy2
e94524958f get rid of util_setInTrade(); fix passing of selBits when trading
(broken with prev checkin.)
2011-09-01 19:51:26 -07:00
eehouse@eehouse.org
b6e5327b1a Merge branch 'android_branch' into send_in_background 2011-08-31 06:46:42 -07:00
Andy2
671877cbca implement new util_ methods in jni and java; remove old miniwindow
stuff.  In java, respond to util_playerScoreHeld() and
util_bonusSquareHeld() by putting up toasts with existing strings.
For util_setInTrade(), fix exchange mode. Add two buttons at bottom
that replace toolbar (and corresponding buttons on menu). Redraw
scoreboard and board with high transparency to make it clear they're
disabled.  Still to do: deal with case where ability to switch which
player's tray is visible is enabled.
2011-08-31 06:37:33 -07:00
Eric House
c01981bc8f Make miniwindow stuff compile-time optional. The goal's to use native
features where they look better or are easier to manage, e.g. Toasts
and dialogs on Android.
2011-08-29 20:36:01 -07:00
eehouse@eehouse.org
147687890f Merge branch 'android_branch' into send_in_background 2011-08-24 06:52:51 -07:00
Andy2
84e61f3b3f remove no-op line 2011-08-22 18:43:42 -07:00
Andy2
c41af221b7 fix non-debug compile warning 2011-08-21 11:33:23 -07:00
Andy2
08789c4097 call server_do() up to five times to allow some extra work to get
done.  Required if a host is also a robot.
2011-08-17 19:48:55 -07:00
Andy2
8148c7699a don't loop forever on server_do(). It's broken w.r.t. guaranteeing
that it can always change state.
2011-08-17 06:52:04 -07:00
Andy2
7ab8c6eca4 re-factor sending code so essentially same message (without cookieID
that implies a connection) is sent and received by no-conn code.  Use
flags to determine if comms can support no-conn sending without making
up the message only to have it fail to send.
2011-08-16 19:36:23 -07:00
Andy2
066cef0306 using new send-noconn proc is too expensive if it's only going to fail
(return false) so add new iface comms can call once to get flags to
tell it whether to use that proc.  One implementation of
TransportProcs returns one flag; the other, the other.
2011-08-16 19:31:08 -07:00
Andy2
dfab747504 make server_do() take a new param to allow caller to call it until
there's nothing more to do (without the assumption it's driven from an
event queue.)
2011-08-16 19:28:59 -07:00
Andy2
f61748369a fix non-debug compile warning 2011-08-16 19:17:47 -07:00
Andy2
ea05c34d8f add the alternative send proc to the java transportprocs interface,
and call through to it from the jni.  Add another implemenation of the
interface and pass that when opening games in the background.
2011-08-10 21:06:05 -07:00
Andy2
e88af19e0a toward the ability to send replies to messages received in background
without user having to open the game, which will e.g. allow a host to
assign tiles, or a robot to move, without the phone's owner noticing
there's a message.  This is on a branch because it may never work.
2011-08-10 18:28:34 -07:00
Andy2
8adb925cca only load and pass in dict as byte[] when path isn't available
(i.e. when it's a builtin), and use mmap in that case.  Works!  Still
need to try a speed test.
2011-08-08 20:27:42 -07:00
Andy2
755d3e5bb2 as first step in using mmap for dictionaries instead of passing byte
arrays into the jni, pass the full file paths in in addition to the
byte arrays.  This isn't possible with the built-in dicts, but does
work for the downloaded ones (which are usually larger).  This checkin
does the mmap and uses memcmp to verify that the bytes are the same as
passed in.  Next step is to not pass the bytes when the path will do
and to actually use the mmap'd ptr.
2011-08-08 19:41:45 -07:00
Eric House
1c227c8921 remove code for engine progress -- it's been disabled for a while
anyway as it gave away whether robot had blanks.
2011-07-31 20:52:27 -07:00
Andy2
698d549fd1 assert fired for unknown reason. Fix behavior in non-assert-enabled
build to do the right thing in that case.
2011-07-21 05:07:41 -07:00
Eric House
febb640049 add name of remote player to notification that remote player moved.
And remove a few dead strings.
2011-07-15 18:13:55 -07:00
Andy2
ab8e4e437b call server_do before passing message to server to give it a chance to
get any pending work done.
2011-07-04 12:37:23 -07:00
Andy2
7024718c87 add timestamps to jni logs 2011-07-04 09:38:22 -07:00
Andy2
cd844a5bad plug memory leak flushed out by auto-juggle code: null dict doesn't
mean the end of the list.
2011-06-29 18:28:55 -07:00
eehouse@eehouse.org
484bb295d0 Merge branch 'android_branch' into android_invite 2011-06-06 22:08:49 -07:00
Andy2
7fc267bb24 google reports a crash in warnIllegalWord that only makes sense if I'm
passing a 0-length array of bad words.  Which should never happen, and
would be caught by asserts in a debug build, but: when there are no
bad words don't call back into the java world.
2011-06-06 20:35:34 -07:00
Andy2
232e4ec1e9 track missing players -- players for whom space is reserved locally
and whose names have not yet been received from host/server -- as part
of summary.  They can be drawn differently to give a clear visual
indication which games are not in play and for which the user might
want to issue an invitation.
2011-05-19 22:53:04 -07:00
Andy2
4c5c435fb5 add new parameter so client always gets notified on connection
including how many players are still missing.
2011-05-19 05:51:00 -07:00
Andy2
f05e02144c move setting gameID (if not already set) to creation of C version of
the struct so it always happens, and also set it back into the java
version at the same time.  Makes creation of new games easier.
2011-05-06 06:47:44 -07:00
Andy2
ba026f761d get rid of unused parameter 2011-04-28 18:47:16 -07:00
Andy2
09100dcb2c track lang code of last dict sent and don't send repeats. 2011-04-28 18:41:39 -07:00
Andy2
bf67a88c5a expect the array of dicts passed to include the game dict (as part of
changes to always have a game dict and to have player dicts only when
they're different.)
2011-04-25 20:16:38 -07:00
Andy2
6aa0d38c45 don't call through to java draw_dictChanged unless it's for the main
game dict.
2011-04-25 20:15:34 -07:00
Andy2
c814226a08 get rid of gi.dictName: don't pass it across the jni boundary 2011-04-21 18:29:37 -07:00
eehouse@eehouse.org
5a21aea2e5 Merge branch 'android_branch' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_branch 2011-04-13 06:58:58 -07:00
Eric House
baedbdff2c remove logging 2011-04-12 22:17:56 -07:00