eehouse
dfb33c33b4
change about toast into about alert, in Utils so callable from two
...
locations. Url and mailto ref may not work yet. Needs contrast of
text with background fixed.
2010-03-09 06:29:04 +00:00
eehouse
fd423f7704
treat enter key same as center; improves testing with emulator if
...
nothing else.
2010-03-09 06:28:42 +00:00
eehouse
04e454f922
add relay status icon
2010-03-08 06:16:08 +00:00
eehouse
e73c6d1234
pass relayStatus an enum rather than an int
2010-03-08 06:15:37 +00:00
eehouse
285e1b47d5
get rid of save button: dismiss to save.
2010-03-08 06:15:14 +00:00
eehouse
5140b95766
new dialog to force user to pick remote players after making game be
...
host; call new CurGameInfo methods to ensure gi is kosher before it's
passed to jni code (which asserts if it's not).
2010-03-08 06:14:44 +00:00
eehouse
f50a25ef3f
move creation of summary string into CurGameInfo
2010-03-08 06:14:28 +00:00
eehouse
9beada3c4c
add logic to show different names, even change values if needed, to be
...
consistent with rules based on the device role, e.g. that a guest has
no remove players and a host has at least one.
2010-03-08 06:14:00 +00:00
eehouse
5d42cebca1
change compile command
2010-03-08 06:13:06 +00:00
eehouse
0be2096f9c
report UnresolvedAddressException, which I've seen
2010-03-08 06:12:44 +00:00
eehouse
6e08bbc9ce
don't draw tile that's the source of a drag.
2010-03-08 06:11:18 +00:00
eehouse
6bb1170ca8
minor bugs with tray focus: player color not used for pending score;
...
pending score doesn't show focus; focussed empty tile slots drawn with
bogus value.
2010-03-08 06:09:40 +00:00
eehouse
5fc86dbe3a
0 means transparent
2010-02-28 16:56:27 +00:00
eehouse
0fa5f5fcd5
improve bitmap generation: only foreground needs to change; background
...
can always be transparent.
2010-02-28 16:55:56 +00:00
eehouse
cd85406c01
create and cache new bitmaps from black-on-transparent originals
...
provided from dict based on player color and whether inverted. This
works around apparent lack of API to change colors of monochrome
bitmaps at draw time (paralleling those for drawing text.)
2010-02-28 16:54:59 +00:00
eehouse
4e2ebebcfd
notify BoardView when prefs change
2010-02-28 16:54:22 +00:00
eehouse
da46fe3163
just draw the bitmap in the largest rect possible.
2010-02-28 16:54:06 +00:00
eehouse
36fd71bde8
use fillRect instead of two lines
2010-02-28 16:53:48 +00:00
eehouse
b4f40627ae
fix warnings flagged by Eclipse
2010-02-27 20:22:04 +00:00
eehouse
99847cd0c5
remove noop function
2010-02-27 20:06:45 +00:00
eehouse
a067da05db
when IS_CURSOR flag is set, use draw using background from prefs.
2010-02-27 18:06:06 +00:00
eehouse
f0840f1e8d
implement focus keys capture and jni interaction. Some hackishness
...
required due to inconsistency in ordering of key events,
e.g. sometimes up not preceeded by down.
2010-02-27 18:05:54 +00:00
eehouse
671876fc06
fix varargs version of logf
2010-02-27 18:05:12 +00:00
eehouse
26d4056a76
add timestamp to java logs
2010-02-27 18:04:52 +00:00
eehouse
7d0bd9d50c
implement mini window, jni and java rendering. Works on emulator, but
...
may not work as well under fat fingers....
2010-02-27 18:04:33 +00:00
eehouse
a18470e4a2
add and implement reset menuitem
2010-02-27 18:04:11 +00:00
eehouse
4b48c1a0e6
set draw after ending game so scoreboard will update
2010-02-27 18:03:51 +00:00
eehouse
28edaa09e2
fix missing import (oops) and cleanup final scores stuff.
2010-02-27 18:03:36 +00:00
eehouse
cf9c952fc2
handle final scores menuitem: add server_endGame to jni and new
...
dialog/mechanism to call back and forth between threads to query and
end game on positive response.
2010-02-27 18:03:07 +00:00
eehouse
142492ad85
get rid of game info menuitem and strings
2010-02-25 04:52:11 +00:00
eehouse
6fa6162a39
improve choice of font size for cells and tiles: calculate once based
...
on a reasonable size, then figure multipliers (floats) to be used to
calculate the size and descent for font selection and positioning
relative to baseline. Seems to work for dicts with and without
descending chars and with and without diacriticals. Untested for
dicts with bitmaps (e.g. Catalan.)
2010-02-25 04:51:35 +00:00
eehouse
210332ec93
implement and call comms_resendAll
2010-02-24 04:30:13 +00:00
eehouse
8de2665642
implement phonies: add jni->java for util_warnIllegalWord, jni changes
...
to preserve the field in CurGameInfo, and java changes to keep
correct text in reused dialogs.
2010-02-24 04:29:46 +00:00
eehouse
3ca7f84659
temporarily add options to prefs to choose flags passed to Paint for
...
drawing text; improve calc of textHeight to better fill cell. Still
need to detect dicts where descent isn't used, e.g. hex
2010-02-24 04:29:17 +00:00
eehouse
c7a0ebb830
cleanup: cache Paint used to draw bitmap, etc.
2010-02-21 21:42:23 +00:00
eehouse
2498e86a38
lock orientation at current setting before bringing up blocking
...
dialog; unlock on dismissing it. The solves problem of how to draw
background board when orientation changes and jni thread is blocked.
2010-02-21 21:41:21 +00:00
eehouse
fe8e49bce2
Forgot to add this yesterday: interface for jni thread to use to shift
...
drawing into BoardView where it can be synchronized.
2010-02-21 04:58:04 +00:00
eehouse
93ad1f3b30
get rid of BlockingActivity, using instead dialogs inside
...
BoardActivity. Block jni thread after it posts to the UI thread to
put up the dialog, and in a dismiss listener on the dialog release the
blocked thread. Seems to work.
2010-02-21 04:56:37 +00:00
eehouse
cbbf30d0b7
synchronize access to the bitmap and owning canvas used first by
...
jni-sourced drawing and then by doDraw to put the bits on the screen.
This should fix crashes when screen orientation changes while
board_draw is running in the JNI thread, but for some reason the
emulators aren't signaling config changes so I can't test.
2010-02-20 19:19:45 +00:00
eehouse
de58f33b4c
add game time to board and jni; clean up hide/show on check events.
2010-02-18 04:44:30 +00:00
eehouse
5cf9472642
translate error codes into alerts or toasts where appropriate.
2010-02-17 15:10:10 +00:00
eehouse
cd0afbfae8
Create and pass enum into relayErrorProc
2010-02-17 14:37:53 +00:00
eehouse
84fa9bce88
Fix problems detecting orientation change: instead of passing a
...
message, have draw check if dimensions are same as when did layout and
redo them if they're changed. Works because the OS wants us to redraw
as soon as orientation changes. But this makes it easier to hit a
synchronization problem: if re-layout happens mid-draw then canvas or
other draw-related objects may be null. Need to get rid of the jni
thread OR synchronization drawing and layout.
2010-02-15 02:48:27 +00:00
eehouse
996351cc9c
minor changes: rearrange menus, new strings, etc.
2010-02-14 22:05:08 +00:00
eehouse
65fb05b29c
Export remaining prefs colors; add default relay host to prefs.
2010-02-14 17:28:46 +00:00
eehouse
5e066514cb
Pare from connection options transports not supported on device. 1.5
...
will be relay only. 1.6 adds SMS, and 2.0 Bluetooth.
2010-02-14 17:27:27 +00:00
eehouse
885c9093fb
Put up Toast messages on connecting to relay.
2010-02-14 17:23:07 +00:00
eehouse
7d385e180a
Don't erase bottom of board drawing tiles; figure font size based on
...
chars in dict (untested); get background color from prefs; etc.
2010-02-14 17:21:59 +00:00
eehouse
d7fe6c80f8
load default preferences on boot.
2010-02-12 09:15:19 +00:00
eehouse
786a3fdc57
When drawing letters raise baseline by font's descent to avoid 'J'
...
etc. hanging below cell border.
2010-02-11 13:44:04 +00:00
eehouse
bd611bb6f4
implement dictChanged. And so that utf8 dicts could be opened without
...
their games being drawn (no BoardActivity around) break the two
android-only callbacks out of UtilCtxt and into a new JNIUtils
interface that then requires new handing in C.
2010-02-11 13:27:09 +00:00
eehouse
099cf66a79
add choice of SMS and BT as transports. SMS can't be tested on
...
emulator and so isn't; BT isn't implemented at all. But SMS works as
far as the send proc.
2010-02-09 14:43:37 +00:00
eehouse
2d17649af5
add overloaded methods for opening games that will never be rendered,
...
where several interfaces passed in are null.
2010-02-09 14:40:31 +00:00
eehouse
117ff31e64
remove assert. doCreate can get called several times.
2010-02-09 14:36:55 +00:00
eehouse
1afbaf9c42
rename menu item
2010-02-09 14:36:09 +00:00
eehouse
5510ebc388
remove logging
2010-02-09 14:35:16 +00:00
eehouse
e013cbd79d
The not-yet-working activities around SMS....
2010-02-09 14:33:24 +00:00
eehouse
35352f8b6c
pull bonus colors from prefs too
2010-02-09 13:14:40 +00:00
eehouse
6522f54989
fix player juggle
2010-02-09 13:14:11 +00:00
eehouse
4a12409d97
Add colors etc. to prefs dialog; wire player colors to be set from
...
prefs rather than hard-coded. Remaining new prefs entries still
unused.
2010-02-07 05:54:26 +00:00
eehouse
4db8750ec0
do app prefs the way they're supposed to be done
2010-02-06 21:04:19 +00:00
eehouse
fb65fecebb
When CommonPrefs field is changed mid-game, reflect it immediately.
...
Means adding board_prefsChanged() to jni and having Utils class call
it via JNIThread when prefs change.
2010-02-01 15:06:12 +00:00
eehouse
0df6bf873c
close socket on thread exit -- allows to reconnect to relay after
...
closing and reopening a game.
2010-02-01 15:03:13 +00:00
eehouse
7e20bd1a30
add about menu to opening dialog
2010-02-01 05:45:39 +00:00
eehouse
38ed6c925b
remove unneeded intents
2010-02-01 05:45:24 +00:00
eehouse
0485b6d4e6
invoke prefs from games list activity too
2010-02-01 05:45:10 +00:00
eehouse
24285b5d7a
include device role in game list summary
2010-01-31 21:46:04 +00:00
eehouse
9f250c99ef
get rid of gameID param. This change breaks all other platforms...
2010-01-31 21:35:07 +00:00
eehouse
caa5d6a55f
implement enough networking to play a game via relay (provided I don't
...
quit on either device.) Uses java.nio, a single thread blocking on
select() and a single SocketChannel. Outbound packets are queued, and
incoming packets reassembled then passed to the JNIThread to be sent
to the jni for parsing.
2010-01-31 21:26:21 +00:00
eehouse
15ce0a12da
add game_receiveMessage() (see prev note)
2010-01-31 21:22:55 +00:00
eehouse
69cbff63f6
Hardcode ip address of emulator's host rather than eehouse.org for
...
easier debugging. Needs to be in a preference....
2010-01-31 21:14:49 +00:00
eehouse
49402ed218
Get comms info (host name, etc.) from user and pass it through to the
...
send proc. Along the way, write jni code to instantiate a new object
including setting enums. *Now* I'm ready for networking....
2010-01-30 20:06:06 +00:00
eehouse
bb90dce2c4
coalesce CMD_DO messages; fixes robot-vs-robot game.
2010-01-30 15:33:57 +00:00
eehouse
3798084dab
idle via a local Runnable rather than having whole class implement it.
2010-01-30 15:33:16 +00:00
eehouse
20aad594e4
don't explain robot scores by default
2010-01-30 15:31:08 +00:00
eehouse
7b0f100f27
wire in enough comms that java's send proc gets called when device is
...
a guest. Networking's next....
2010-01-30 14:38:44 +00:00
eehouse
b915319178
create and pass to jni CommsTransport instance when game isn't standalone
2010-01-30 14:36:55 +00:00
eehouse
5b1a0f167e
class that will implement network for comms
2010-01-30 14:35:33 +00:00
eehouse
ee2fe9d193
get/set enums from C; preserve device role setting from ui to saved
...
game.
2010-01-30 13:44:12 +00:00
eehouse
e86d656b4a
substitute smaller built-in dict to save time moving bits during
...
development; don't hard-code name of built-in.
2010-01-30 03:31:20 +00:00
ehouse
ec085d8944
lots of little changes toward making prefs (per-game and global) work,
...
which they more-or-less do. Some still not captured.
2010-01-26 14:48:37 +00:00
ehouse
c682a7caac
snapshot work toward getting networking done.
2010-01-26 14:46:48 +00:00
ehouse
90f93aefa8
Add lots of widgets. List of players can no longer be a list since it
...
wants to scroll, so it's textview subclasses that don't show focus
correctly yet.
2010-01-26 14:43:39 +00:00
ehouse
0649597d90
Add prefs activity.
2010-01-26 14:38:31 +00:00
ehouse
4425eaa99e
move showColors into CommonPrefs, removing separate storage in linux
...
and wince and removing setter from board and jni APIs. Palm change
pending.
2010-01-26 04:14:18 +00:00
ehouse
8a4c31b203
rename file
2010-01-25 03:05:15 +00:00
ehouse
68079d3590
Add ability to open utf8-formatted dicts and to display bitmap tiles
...
(though poorly.) Both required processing in the jni that isn't
possible (e.g. because no libiconv included) so I created callbacks
into java from the dict building code. Add ability to download dicts,
to select them, to add and remove players and make them robots or
human. Robot-vs-robot game doesn't work well (robots trade a lot and
server_do seems not to be getting called enough) but will soon.
Coalesce penMove events. Implement game list menuitems like delete,
copy, etc.
2010-01-25 02:49:14 +00:00
ehouse
676fd73fc0
Activity for downloading dicts with nothing but a WebView in it.
...
Works, but not cleanly. Still need to get the path to
/sdcard/downloads programatically, and to exit cleanly back to parent
Activity.
2010-01-25 02:23:04 +00:00
ehouse
960fbd0b33
Fire GameConfig activity to edit a game; use file save/open methods in
...
Utils.
2010-01-20 06:54:09 +00:00
ehouse
f4535f3408
2010-01-20 06:52:37 +00:00
ehouse
dd05c5b58e
add constructor that names player by position in game. (Template
...
needs to come from strings.xml)
2010-01-20 06:50:59 +00:00
ehouse
171318156d
Remove board layout to JNIThread; format scores to show remaining
...
tiles and whose turn it is.
2010-01-20 06:49:38 +00:00
ehouse
7f0768a4f9
do board layout here rather than in BoardView so main thread isn't
...
talking to jni (fixes assert in jni catching overlapping calls from
both threads); call server_writeFinalScores for BoardActivity.
2010-01-20 06:48:43 +00:00
ehouse
ad013b8cc7
add server_writeFinalScores.
2010-01-20 06:44:02 +00:00
ehouse
706fe3f927
implement remSelected and notifyGameOver
2010-01-20 06:41:14 +00:00
ehouse
7eccde84e3
Add utils like juggle() to be called from GameConfig; always keep max
...
number of LocalPlayer instances around so they can be filled from jni
code (which is easier than making the jni construct new instances.)
2010-01-20 06:38:29 +00:00
ehouse
531ae8ea1a
add file open/save functions.
2010-01-20 06:35:56 +00:00
ehouse
f7907c866d
Move jni calls for Game menu items into jni thread
2010-01-19 13:28:32 +00:00
ehouse
b3cf0b41e1
Get rid of separate tile picker in favor of having existing
...
BlockingActivity do it. This may not work when picking from the pool
is enabled but is cleaner for now.
2010-01-17 17:51:27 +00:00
ehouse
69c8577dcb
Back out change adding Looper. Using own queue is better because its
...
length can be tested and there's no race condition (between the looper
being available and the parent thread wanting to post messages) when
the constructor inits the queue.
2010-01-16 18:56:32 +00:00