Andy2
eab067fe32
use autocaps for default player names pref
2011-09-03 21:54:25 -07:00
Andy2
1af358b269
move code to unpack players list into same file as the code packing
...
it; add boolean, now always passed as false, to code printing names
for game config list of players to include the dictionary. It's
useful for debugging, and I think it'd make a good optional setting,
but nobody else thinks so. Once it's checked in the change can go if
I'm not using it.
2011-09-03 21:05:08 -07:00
Andy2
a3566bc063
Fix bug: the CurGameInfo instance being used to generate the list of
...
dicts passed when opening a game was based on defaults, not read in
from the game data. Oops. So now it's a two-step process: open the
data, read in the game info, generate list of dicts from that, and
open full game with list of dicts. (TODO: optimize by caching game
data across multiple reads.)
2011-09-03 20:31:03 -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
471199ba2f
cleanup -- no code change beyond ordering and renaming.
2011-09-03 19:41:36 -07:00
Andy2
9956bc417d
fix bugs: chosen dict was being pulled by index from non-sorted
...
version of the list user saw when choosing the index. Fix is to use
same list. Cancel after selecting dict didn't work as the selection
listener had already copied the selected dict name over. Now the
listener leaves that for the Ok button's onclick listener.
2011-09-03 19:38:52 -07:00
Andy2
3fd0bb056a
when there's no move made yet to display after score entry held say
...
so.
2011-09-02 19:24:42 -07:00
Andy2
2f91b8ed3d
remove unused strings
2011-09-02 18:37:58 -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
9cf7e6ca18
get rid of util_setInTrade()
2011-09-01 19:53:03 -07:00
Andy2
5d08b6b3cd
don't make scoreboard entries translucent during trade if option to
...
change which player is shown is enabled.
2011-09-01 19:52:36 -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
Andy2
437e4e21ac
There are buttons not menu items for exiting exchange mode so
...
reference them in newbie text. And get rid of string for toast
exiting the mode since we don't show it.
2011-09-01 18:54:27 -07:00
Andy2
934daab6c8
don't need util_setInTrade. There's already code passing the result
...
of game_getState() in after every draw() call and it has an inTrade
ivar. Use that.
2011-09-01 18:53:38 -07:00
Andy2
9a60bcf265
draw the X at 7x7 transluscent if in trade mode.
2011-09-01 18:52:21 -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
8c811c3d5a
Merge branch 'android_branch' of ssh://xwords.git.sourceforge.net/gitroot/xwords/xwords into android_branch
2011-08-29 20:36:53 -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
Andy2
45421e8f86
add a bit of space between players column and column to right so
...
numbers don't run together.
2011-08-28 15:44:23 -07:00
Andy2
5bc63edeb6
replace Runnable passed to showNotAgainDlgThen() with callbackID, same
...
scheme as the rest of DlgDelegate. I'm still using a single ivar for
all dialogs, meaning they can't stack, but except for duplicate
showNotAgainDlgThen calls (where the message can be ignored) it
doesn't seem to be happening. Asserts are still in place to tell me
if I'm wrong.
2011-08-28 15:38:52 -07:00
Andy2
656110841f
cleanup after review of recent changes: remove logging etc. didn't
...
mean to check in.
2011-08-25 18:48:41 -07:00
Andy2
0a2255a8fe
add two recent changes
2011-08-25 18:26:49 -07:00
Andy2
632acfd171
Oops: add new pref color to list restored.
2011-08-25 18:26:34 -07:00
Andy2
5acc2205be
add pref to edit color used to draw bonus hints on cells
2011-08-25 18:13:42 -07:00
Andy2
79acccc6bf
record, commented out, attempt to send NBS message. sendDataMessage()
...
crashes internally, and googling finds lots of reports/questions and
no answers. It appears NBS is broken on Android, at least for CDMA.
Might want to revisit on a newer OS version that the 2.1 I'm running
now.
2011-08-25 06:52:12 -07:00
Andy2
711f12fa9e
It's ok to cache listeners but only with the instance whose ivars they
...
reference: revert prev change but make cache vars non-static.
2011-08-25 05:49:09 -07:00
Andy2
3416ae59a7
use a constant for the DISMISS button. And don't use static
...
listeners. They wind up getting called with mixed DlgDelegate.this
values, including one belonging to an Activity that's long-since
stopped and so the wrong ids are getting passed back.
2011-08-24 22:43:54 -07:00
Andy2
5aeac29787
Pass 0 to dlgButtonClicked() for dismiss, as -1 is the value of a
...
button! Also assert the heck out of callbackIds to see if Android is
guaranteeing that no two dialogs can be up at once. I'm counting on
that, and need to know if it's not true.
2011-08-24 21:44:10 -07:00
Andy2
1cd1a849e6
don't put dismiss listeners on every damn dialog! They replace rather
...
than chaining.
2011-08-24 21:41:35 -07:00
Andy2
5769ae6a31
cleanup: there are two listeners created over and over; better to
...
store in a class static and reuse.
2011-08-24 18:51:47 -07:00
Andy2
4ac84dde23
change sig of DlgDelegate's dlgButtonClicked() method to include id of
...
button rather than just boolean. Add onDismissListener so can tell if
whole thing was backed-out of (since that's a different choice from
the two buttons "text" and "html" used in one case.) Fix compile
error that slipped by earlier: frequent clean builds required with
java.
2011-08-24 18:22:21 -07:00
Andy2
50c692024b
fix crashes when reloading (rare unless android:configChanges removed
...
from AndroidManifest.xml). Problem was that managed dialogs are
recreated between onStart() and onResume() yet onResume() was where
ivars (specifically m_gi) were set. Can't just set them in onStart()
because then I'd want to save state them in onStop() which isn't
guaranteed to be called. So create a function loadGame() and call it
from both, using a flag to prevent its running twice (which flag is
cleared in onPause())
2011-08-24 18:18:17 -07:00
Andy2
3a2af96c24
use new callback-replaced-by-id mechanism to query for html/text
...
choice.
2011-08-24 06:51:00 -07:00
Andy2
f88697fd3f
complete conversion of showConfirmThen, removing old methods and
...
adding second param to buttonClicked() callback indicating which
button was cancelled.
2011-08-24 06:14:42 -07:00
Andy2
7d0cbcf07f
use new showConfirmThen scheme
2011-08-24 06:12:57 -07:00
Andy2
85c38e831f
cleanup: null's same as empty onClick handler
2011-08-24 05:40:13 -07:00
Andy2
fbb467af80
convert some more callbacks to ints passed back: GamesList done.
2011-08-23 20:25:59 -07:00
Andy2
05607a15b9
toward a bundleable DlgDelegate: add new interface to replace
...
OnClickListerners passed on, have clients of DlgDelegate implement it,
and convert one dialog to use it. Will eventually remove old code.
2011-08-23 19:50:01 -07:00
Andy2
0d85a67700
verify that bundle saving works in DlgDelegate and fix one
...
disappearing message. Still need solution for callbacks passed in.
2011-08-23 19:18:45 -07:00
Andy2
7a235ed6b6
put onPrepareDialog() back -- it's required to use DlgDelegate dialogs.
2011-08-23 18:51:48 -07:00
Andy2
7da5b24e0f
rewrite DictsActivity to not crash when un- and re-loaded: make
...
dialogs depend only on bundleable ivars -- ints and strings, not Views
-- and bundle them. Don't use onPrepareDialog, only onCreateDialog,
and so call removeDialog() every time one's dismissed. Do some
refactoring to support this.
2011-08-23 18:41:19 -07:00
Andy2
84e61f3b3f
remove no-op line
2011-08-22 18:43:42 -07:00
Andy2
953909d0f0
remove logging
2011-08-22 18:40:44 -07:00
Andy2
3537161d3b
add change
2011-08-22 18:40:30 -07:00
Andy2
3296cad731
pass bundle into DlgDelegate so state can be saved and restored. Not
...
doing anything with it yet because any scheme to survive
OS-restoration has to deal with the Runnables I'm saving that can't be
bundled. Work in progress....
2011-08-22 18:10:22 -07:00
Andy2
7e6daa5797
move role out of players column to where it can be a full line long,
...
preventing it from increasing the size of the item by line-wrapping.
For now it's outside the View that gets hidden, but that may need to
change.
2011-08-22 07:05:33 -07:00
Andy2
d7a515ca97
display three states of relay connectedness in games list items:
...
configured, connected but waiting for players, and game-in-play.
2011-08-22 07:03:46 -07:00
Andy2
1ee0dfdd6d
set wordlist spinner prompt and include language
2011-08-21 22:13:18 -07:00
Eric House
cf6d868bd3
use separate strings for window title and spinner prompt
2011-08-21 18:17:21 -07:00
Andy2
aeafb9cefa
Tweak language for moving wordlists to more clearly refer to storage
...
locations.
2011-08-21 15:03:41 -07:00
Andy2
bbb73bb2e9
somehow dict deletion got broken (because wasn't adding file
...
extention); fix.
2011-08-21 15:02:42 -07:00
Andy2
d1b6bc16cf
add the standalone/network icons from GamesList display to the new
...
games dialog so users get some association going.
2011-08-21 14:30:00 -07:00
Andy2
04834c910b
more dictionary->wordlist terminology change: debug-only preference
...
and download URL.
2011-08-21 14:27:50 -07:00
Andy2
a17ff20db7
clean up background check pref wording to Chris's suggestions
2011-08-21 13:52:51 -07:00
Andy2
c0dae019d5
use same context menu header, including wordlist name, as for game
...
list items.
2011-08-21 12:19:58 -07:00
Andy2
5c8afa06ce
version string and changelog for beta 33
2011-08-21 12:07:45 -07:00
Andy2
56fd01a05b
oops -- missing semicolon.
2011-08-21 12:07:21 -07:00
Andy2
c38e3593fb
replace hard-coded placeholder names for optional top-line of games
...
list item display with real "aa vs. bb vs..." consed up in
GameSummary, and set field to singleline so doesn't wrap when names
get too long.
2011-08-21 11:39:38 -07:00
Andy2
c41af221b7
fix non-debug compile warning
2011-08-21 11:33:23 -07:00
Andy2
47bdec4eda
pass context into GameSummary constructor rather than into methods
...
that need it. No behavior change.
2011-08-20 21:51:57 -07:00
Andy2
28c78a0a6a
dictionary->wordlist
2011-08-20 14:16:38 -07:00
Andy2
659c054696
add new class that listens for SDCard mounted event (could be
...
generalized for multiple events and map them to multiple notification
callbacks), and use it from DictsActivity to redraw the list when the
SD card comes back online. While the default android behavior works
for the unmount case (relaunches DictsActivity which correctly draws
only those dicts still available) it needs this change to redraw after
the available set grows.
2011-08-20 11:59:32 -07:00
Andy2
6ca60438a1
no need for onClick listener when onDismiss listener does the same thing
2011-08-19 18:54:21 -07:00
Andy2
8f60ca5af3
Need to show dict-gone-missing dialog when umount from GameConfig too,
...
so: change loadMakeGame() to return gamePtr rather than take one in,
and to return 0 when any dict no available. Move dict-gone-missing
dialog into DlgDelegate. Remove DlgDelegate always adding onDismiss
listener that removes the dialog, and instead add one to the
dict-gone-missing dialog that, like the onClick handler, calls
finish() on the activity.
2011-08-19 18:52:55 -07:00
Andy2
fd4e627628
when sd card is umounted, android sends a message to apps. I can't
...
figure out how to get that so I ignore it and am killed then
relaunched if I have a dict file open on the SD. On relauch, don't
crash. Instead, check if any dicts used by the game is unreachable
and put up an alert with only one choice: Close game. Thought about
using the missing-dicts stuff from GamesList, but this is a special
case that should be seen only when user umounts while a BoardActivity
instance is frontmost.
2011-08-18 07:54:00 -07:00
Andy2
455cb9a4c4
Include possibility of umounted sd card in missing dict
...
explanation. Name of game too. Use single-selectable list and
Substitute button instead of expecting user to tap once to select
(which confused me.)
2011-08-18 06:26:43 -07:00
Andy2
0c29a4c1ca
fix NPE when sd card unmounted
2011-08-17 20:11:30 -07:00
Andy2
e2ef25ae90
add pref for choosing what goes in parens along with the game name
...
(where <language> was before.) opponent name still needs to not be
hard-coded; the rest works.
2011-08-09 19:26:59 -07:00
Andy2
ceb2d1ac63
fix indenting -- white space only.
2011-08-09 06:48:10 -07:00
Andy2
c67e92ea2c
log sends for a while. I want to fix the occasional stall.
2011-08-09 06:44:09 -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
Andy2
ab64d57f5c
adapt a couple of icons as placeholders for standalone and networked
...
games. Every games-list item now has an icon. The networked game
icon is replaced by the sync icon when there's new information.
2011-08-08 18:56:19 -07:00
Andy2
d08eacc4c0
comment: reminder of possible icon for archiving
2011-08-08 18:53:58 -07:00
Andy2
556b78baad
remove logging
2011-08-07 20:22:33 -07:00
Andy2
4345fc1543
fix failure of renamegame feature when orientation changes while
...
dialog is up. I'm making two fixes, either of which is enough: saving
the rowid across teardown of the activity; and changing the manifest
to not tear down the activity. The reason for the latter is that the
teardown is unnecessary and wasteful. The former's just safer coding.
2011-08-07 20:22:11 -07:00
Andy2
f8715feea6
update version and changelog for b32
2011-08-06 23:08:42 -07:00
Andy2
6f7279a6b0
fix crash that happens whenever orientation changes while there's a
...
dialog up in DictsActivity. (There are still problems updating the
UI, e.g. indicating the current loc of a moved dict.)
2011-08-06 23:03:11 -07:00
Andy2
fd61c0af02
'final' not needed
2011-08-06 22:30:48 -07:00
Andy2
c47189e81f
fix crasher introduced with eeac03d40f
:
...
update delegate's dialog id constants.
2011-08-06 21:30:38 -07:00
Andy2
b20584b74e
fix bug moving dicts: location wasn't getting updated when the move
...
was successful and so subsequent moves reported wrong location.
2011-08-06 20:06:21 -07:00
Andy2
fc650ef317
fix assertion failure reported by google when unable to create
...
directory on SD card. Just return null and carry on as if SD card not
writable.
2011-08-06 20:05:30 -07:00
Andy2
ed832f9545
update database from any version, not just two adjoining.
2011-08-06 19:26:36 -07:00
Andy2
011b283566
tweak copy dialog to suggest using new-from.
2011-08-06 16:18:32 -07:00
Andy2
719fd314a5
move net msg icon outside of hideable part of game list item layout so
...
it remains visible when not expanded. Otherwise people won't see that
something happened to a closed game.
2011-08-06 16:03:38 -07:00
Andy2
eeac03d40f
query user for html vs text before creating new networked game so it
...
isn't left sitting if [s]he cancels.
2011-08-06 15:49:55 -07:00
Andy2
66a673c478
make the game name green when it's somebody's turn and player names
...
are hidden.
2011-08-06 15:46:49 -07:00
Andy2
6cde6be6a5
up version and changelog for beta 31
2011-08-06 14:29:58 -07:00
Andy2
1c28433bd0
store expandedness in DB rather than a class static, which will
...
eventually die. Generalize DBUtils methods int get/setInt(). Adds
new column to DB, the second for this version number.
2011-08-06 14:19:07 -07:00
Andy2
13cbca3368
cleanup
2011-08-06 14:03:50 -07:00
Andy2
35a5aad477
make name text larger -- button is anyway.
2011-08-06 13:19:48 -07:00
Andy2
d7dfb89f65
query user before sending invite whether to use html or text and
...
format differently depending on the answer. With html only I couldn't
invite using SMS, which bites.
2011-08-06 13:01:40 -07:00
Andy2
560208f516
roll my own expandable list items. (The stupid built-in ones don't
...
allow any control over whether the initial state is expanded.)
Getting click to work is a bit of a hack, requiring a callback from
the adapter back to the activity, but it works well on emulator. Need
to test on device then try to shrink the ImageButton.
2011-08-06 11:29:41 -07:00
Andy2
017f4da29d
fix formatting
2011-08-06 03:22:26 -07:00
Andy2
58f1618586
put oft-used menuitems up higher
2011-08-06 03:19:59 -07:00
Andy2
9c298a16e7
The email apps won't display non-http schemes as clickable links, so
...
go with html and encode both the invite and install links as php refs
that get redirected. Works, but eliminates SMS as sending mechanism.
2011-08-06 02:57:14 -07:00
Andy2
cd6aa8fe98
fix crasher using Copy menuitem: when summary is copied out of a db it
...
doesn't have a gi, but it does have the summaries values copied in so
use those.
2011-08-05 22:38:01 -07:00
Andy2
e8b66e230c
add title to context menu that includes game name
2011-08-04 18:16:32 -07:00
Andy2
97d5e3cc6d
remove old FILE_NAME DB column for new DBs; ignore it elsewhere. Move
...
default name creation from DBUtils to GameUtils.
2011-08-04 06:15:00 -07:00
Andy2
9aeb8858fe
add menuitem and dialog it triggers to rename games. Add new DB field
...
to hold game name, and getter and setter. Replace existing gameName()
method with call to new getter.
2011-08-03 18:59:32 -07:00
Andy2
173e2e8423
track games by row id (an sqlite built-in) rather than name (so that
...
names can be changed without constraints)
2011-08-03 06:53:42 -07:00
Andy2
294df7055e
log rowid -- step one to using it instead of name as unique
...
identifier.
2011-08-01 18:13:10 -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
f642a0972f
replace all ancient logf calls that were doing concatenation (with +)
...
with calls using formatting -- for consistency and effeciency in the
case where logging is disabled. There should be no discernable
change, though if I got and percent-format specifiers wrong I'll get
runtime exceptions.
2011-07-29 07:45:32 -07:00
Andy2
c8c1fe6f70
fix failure to save when exiting, e.g. by pressing Home when when a
...
blocking dialog is up, by always saving on exiting the jni loop
instead of exiting after pushing a SAVE event which was getting
dropped.
2011-07-29 07:31:46 -07:00
Andy2
8d9aa5ae0e
failing to post a blocking dialog means the jni thread hangs forever.
...
Bad. So test if we can post (if the handler's still available) and
drop the request, freeing the thread, if not. (Access to m_handler
should probably be synchronized now that it's getting cleared, but
that's another bug.)
2011-07-29 07:19:33 -07:00
Andy2
704b08f733
use bundle to save/restore dialog-related ivars. This should fix very
...
rare crash where class is reloaded (e.g. after long period of non-use)
after being taken down with a dialog in mid-load. The OS tries to put
the dialog back up but the dialog title string ID, passed to
setTitle() in onCreateDialog(), is 0.
2011-07-28 06:42:57 -07:00
Andy2
acafc0a2df
remove assert that was there just to prove a fix; use %b in logging.
2011-07-22 10:55:03 -07:00
Andy2
3563ca5855
finish changes list
2011-07-22 10:54:06 -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
Andy2
5fc7836eca
when not using FLAG_ACTIVITY_NEW_TASK need to look for invite-launched
...
intents in onCreate too.
2011-07-21 04:52:12 -07:00
Andy2
9bf22c12f4
erase the static bitmap so we don't show the previous board prior to
...
drawing the new one.
2011-07-20 18:48:50 -07:00
Andy2
00e4dfd09e
FOR DEBUGGING ONLY: test theory about dropped dialogs.
2011-07-20 18:25:14 -07:00
Andy2
4f29048f49
fix format specifier to not crash (use %h); remove redundant logging.
2011-07-20 18:23:30 -07:00
Andy2
84502a89bf
FOR DEBUGGING ONLY: %p segfaults!
2011-07-20 18:23:05 -07:00
Andy2
348af5a935
FOR DEBUGGING ONLY: add remaining Activity lifecycle methods so
...
they'll get logged, and log this ptr as well.
2011-07-20 18:22:14 -07:00
Andy2
04a80fca07
Remove FLAG_ACTIVITY_NEW_TASK to fix duplication of root
...
activity. Explanation in code.
2011-07-20 18:20:22 -07:00
Andy2
ba40d96fea
remove unused variable
2011-07-20 05:39:52 -07:00
Andy2
1f89eb0238
start on changes list
2011-07-19 18:37:23 -07:00
Andy2
30b9df399c
Address crash that happened when runnable ran too late by nulling out
...
m_handler in onPause() and adding new methods that check if it's null
before calling post(), postDelayed() or removeCallbacks() on it.
2011-07-19 18:31:20 -07:00
Andy2
ea853e2e51
replace hard-coded list of preferences whose summaries are their
...
values and code to enforce that with custom subclasses that do the
right thing automatically.
2011-07-19 18:21:52 -07:00
Andy2
e4ba5fb5fd
log svn rev
2011-07-19 18:14:32 -07:00
Andy2
39e752cbc9
add comment explaining change
2011-07-19 06:24:15 -07:00
Andy2
1d2c63d50f
Duh. Make it f*cking compile
2011-07-19 06:21:04 -07:00
Andy2
5dd181398d
test theory about dropped moves
2011-07-19 06:20:51 -07:00
Eric House
0548f6be66
get rid of some logging
2011-07-18 18:08:56 -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
Eric House
aec3400677
trivial cleanup
2011-07-15 18:09:40 -07:00
Eric House
8ba7861a7c
fix to actually do something
2011-07-15 18:09:13 -07:00
Andy2
9bed15179d
version update -- getting ready for next beta!
2011-07-14 18:53:45 -07:00
Andy2
b1f14972e0
remove commented-out foo
2011-07-14 18:53:22 -07:00
Andy2
f1a23a13a8
use a market URL to go directly to the download page
2011-07-14 18:52:59 -07:00
Andy2
4a03867369
add icon; center everything
2011-07-14 18:47:45 -07:00
Andy2
86d17dc615
for now, point at downloadable local rather than market.
2011-07-14 06:42:37 -07:00
Andy2
a4420e130a
fix NPEs: not all intents contain all possible elements
2011-07-14 06:18:26 -07:00
Andy2
1dbef02ef6
trim some logging
2011-07-13 21:48:06 -07:00
Andy2
806745683c
removed unused param.
2011-07-13 18:42:16 -07:00
Andy2
cd15a9e6e3
fix, I think, problems with launch mode and non-main activities.
...
singleTop is necessary, as with singleTask we get the whole actvity
stack nuked on every launch. Open a game into BoardActivity then
background Crosswords; when you re-launch from the launcher or hold
the home key you're back to GamesList. But with singleTop incoming
invite schemes would launch a second instance because though there was
one running it wasn't in the same task as the browser firing the url
to redir.php. The solution there is to move the scheme intent from
GamesList to DispatchNotify, which is already handling notifications.
There the addition of a second launch flag means that an existing
instance will always see the launch through its onNewIntent -- under
tests I've come up with so far, anyway.
2011-07-13 18:42:03 -07:00
Andy2
ea205ebf97
when blocking dialogs want to stack, rather than assert, just drop the
...
second one. I'm not sure this is the right thing to do, but it won't
matter except when the assert was firing.
2011-07-13 06:13:38 -07:00
Andy2
b28a818a1d
start games via invite in onNewIntent -- required now that singleTask
...
is the mode and working.
2011-07-11 20:06:28 -07:00
Andy2
29c2e0bfd6
fold intent filters together
2011-07-11 20:05:45 -07:00
Andy2
f7a0255dc4
needs to be singleTask, not singleTop, to avoid having a new GamesList
...
activity launched when launch-by-scheme happens when responding to an
invite.
2011-07-11 19:54:41 -07:00
Andy2
7022dbf8d5
set default user name before summoning dialog to change it. For some
...
reason the GamesList activity is being stopped then recreated
occasionally. This prevents the dialog from coming up a second time
when that happens.
2011-07-11 18:37:37 -07:00
Andy2
bd7d608c64
combine the two GamesList Activity elements. For some reason it
...
didn't work before to have the custom URL launch stuff in the existing
one but it does now.
2011-07-10 10:36:14 -07:00
Andy2
6bb6107b1a
remove logging
2011-07-08 21:50:03 -07:00
Andy2
55376567f6
make main board bitmap static in an attempt to remove, or at least
...
postpone running up against, a memory leak that appears to be in the
java side of things. Googling suggests lots of folks are having
problems with createBitmap (though I can put the createBitmap() call
in a 50-iteration loop and not crash -- may not be the problem after
all.) Without this change I crash the 14th time opening a game. With
it I go 30 and run out of patience. Now that the board is locked in
vertical mode there's little point in recreating the bitmap anyway.
2011-07-08 21:49:51 -07:00
Andy2
8c36727578
tweak new-game dialog strings.
2011-07-08 18:45:41 -07:00
Andy2
7d1a475e61
make players remote by default when adding them to networked games.
2011-07-08 06:25:10 -07:00
Andy2
0c4191805f
Merge branch 'android_branch' into android_invite
...
Conflicts:
xwords4/android/XWords4/res/values/common_rsrc.xml
xwords4/android/XWords4/res/values/strings.xml
xwords4/android/XWords4/src/org/eehouse/android/xw4/jni/CurGameInfo.java
xwords4/linux/scripts/discon_ok2.sh
2011-07-07 18:50:22 -07:00
Andy2
19ba4d8dea
check for null (fixing occasional NPE)
2011-07-07 18:08:09 -07:00
Andy2
2692a8333f
restart screen-on timer when activity resumed -- just in case.
2011-07-07 06:44:58 -07:00
Andy2
7376161dd5
change screen-on preference to a 10-minute interval rather than
...
forever. Should be long enough to allow a move without risking
battery death.
2011-07-07 06:41:44 -07:00
Andy2
23831a1910
forgot a change
2011-07-07 06:27:28 -07:00
Andy2
3ccc323465
update version and change info for next beta
2011-07-06 19:00:06 -07:00
Andy2
7fa86f8007
tweak summary
2011-07-06 18:59:47 -07:00
Andy2
ebdf4cce87
add new preference to keep the screen on when the board's visible (per
...
request). Off by default, of course.
2011-07-06 18:50:11 -07:00
Andy2
248b341aac
move socket creation inside Thread's run() in attempt to fix too-long
...
UI freeze when deleting individual games.
2011-07-06 18:32:33 -07:00
Andy2
ae0860a047
add a newbie-info for new-from menuitem. Still need one for reset.
2011-07-06 18:24:46 -07:00
Andy2
3fdf15955e
Bug: don't refuse to update preference summary just because it's empty.
2011-07-06 18:21:24 -07:00
Andy2
82552e681a
add timestamps to jni logs
2011-07-06 18:15:34 -07:00
Andy2
d76ca5938b
fix sync-with-relay menu items to work even if timed syncing is
...
disabled.
2011-07-06 18:15:00 -07:00
Andy2
6b773460ec
call server_do before passing message to server to give it a chance to
...
get any pending work done.
2011-07-06 18:14:31 -07:00
Andy2
a975a405aa
handle new "no-connect-dead-game" error code the same as an in-play
...
"deleted" message: put up existing dialog offering to delete the game.
2011-07-06 06:50:56 -07:00
Andy2
9ec72d6015
handle new "no-connect-dead-game" error code the same as an in-play
...
"deleted" message: put up existing dialog offering to delete the game.
2011-07-06 06:49:19 -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
66d42faead
fix sync-with-relay menu items to work even if timed syncing is
...
disabled.
2011-07-04 12:28:17 -07:00
Andy2
7024718c87
add timestamps to jni logs
2011-07-04 09:38:22 -07:00
Andy2
ada84cccb3
make invites work with games having more than two players. But: the
...
games themselves don't work! Fix this or disable 3- and 4-device
networked games.
2011-06-30 18:56:51 -07:00
Andy2
36287870d4
add np (num players) param
2011-06-30 18:22:42 -07:00
Andy2
546791d215
custom message when more than one player missing reminding to invite
...
more than one person.
2011-06-30 06:30:05 -07:00
Andy2
0c42da905a
plug memory leak flushed out by auto-juggle code: null dict doesn't
...
mean the end of the list.
2011-06-29 21:43:50 -07:00
Eric House
48ea9e2b28
add preference to juggle players when creating a new game
...
Conflicts:
xwords4/android/XWords4/src/org/eehouse/android/xw4/jni/CurGameInfo.java
2011-06-29 21:43:44 -07:00
Andy2
4cb45d3b82
juggle before setting language (makes sense though not demonstrable
...
difference)
2011-06-29 18:30:08 -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
Andy2
632980dc98
add preference to juggle players when creating a new game
2011-06-29 06:16:58 -07:00
Andy2
413b2f5b2e
include default language in text in new game dialog.
2011-06-28 19:01:03 -07:00
Andy2
5dd524ef2f
param name for clarity
2011-06-28 19:00:21 -07:00
Andy2
a9d1dc7bdc
add default room name in configure-first case too.
2011-06-28 18:32:32 -07:00
Andy2
cb5fa56a90
Tweak a couple of messages. Bye Luke!
2011-06-14 06:40:10 -07:00
Andy2
ecc5211791
Bug: don't refuse to update preference summary just because it's empty.
2011-06-14 06:16:11 -07:00
Andy2
7a5549cc43
set selectAllOnFocus on player name edit. Can't figure out how to
...
force focus to that field though....
2011-06-14 05:38:37 -07:00
Andy2
d470a1c1e0
add a newbie-info for new-from menuitem. Still need one for reset.
2011-06-13 18:47:42 -07:00
Andy2
a318021308
title that won't surprise on upgrade
2011-06-13 18:26:12 -07:00
Andy2
d18ac741b7
add new debug pref for redirecting host so it and relay can live on
...
different machines.
2011-06-13 18:17:37 -07:00
Andy2
c9c470b724
remove logging
2011-06-13 06:27:55 -07:00
Andy2
5232186b1d
path starts with //, not /
2011-06-13 05:28:06 -07:00
Andy2
dfc8519c9c
wrap password query field in layout too so it can have some margins.
2011-06-11 06:06:42 -07:00
Andy2
e9e8211050
capitalize names in player config too
2011-06-11 06:06:03 -07:00
Andy2
6620b42abd
clean up new game dialog (thanks K.T.!): remove title bar, add some
...
spacing and make it scrollable for when in landscape mode.
2011-06-10 22:51:54 -07:00
Andy2
8c65ed5548
have default name text selected for easier replacement
2011-06-10 22:28:49 -07:00
Andy2
bb82831fb4
put EditText into a layout so can have some margins.
2011-06-10 20:55:18 -07:00
Andy2
1a89ed1f14
use new Utils.inflate where appropriate
2011-06-10 20:09:38 -07:00
Andy2
d058e3fd4b
use a layout instead of a raw text widgit.
2011-06-10 20:02:14 -07:00
Andy2
1cc2717d50
tweak text for consistency
2011-06-10 20:01:22 -07:00
Andy2
a7851f3c55
on initial startup check if the default name's been set for Player 1.
...
If not, give a chance to set it and a welcome message. Whatever
happens, wind up with some sort of default name so the query isn't
repeated unless user clears all defaults.
2011-06-10 18:58:49 -07:00
Andy2
1d5cfd49fa
remove second URL that was meant to allow user to install Crosswords
...
if it's not installed (because SMS apps confuses with the way it
presents multiple URLs.) Will try to do the same thing with the
redirect .php script whose output will stick around if the redirect
fails. Also, use URI.Builder instead of a format string to build the
redirect URL. It's cleaner. Still need to have a space in the format
string to keep sentence-finishing period from becoming part of the
room name. Not sure how to fix that without moving to html messages
which I assume don't work in SMS.
2011-06-10 06:49:32 -07:00
Andy2
d089c29ada
factor uri parsing and creating code into its own class -- in case
...
there are matching operations required. I thought one would be for
URLEncoder.encode() but seems not to be: spaces are un-escaped just
fine.
2011-06-09 20:56:29 -07:00
Eric House
dd97a81191
make constant string a static final rather than a resource.
2011-06-09 20:48:06 -07:00
Eric House
265ebc5e3e
add download url in csse redir fails
2011-06-09 18:30:59 -07:00
Andy2
6c4f35b425
wrap parsing of new-game URI in a try so don't crash when they're
...
badly formatted.
2011-06-09 06:49:55 -07:00
Andy2
e097b15071
room names are user-created and need to be URLEncoded to e.g. escape
...
spaces.
2011-06-09 06:38:43 -07:00
Andy2
d43d789820
move socket creation inside Thread's run() in attempt to fix too-long
...
UI freeze when deleting individual games.
2011-06-07 20:51:26 -07:00
Andy2
cb8e162080
Progress toward getting invites going. Seems to work but is very
...
clunky: email and sms both send messages with URLs that work on the
receiving end.
2011-06-07 18:38:10 -07:00
eehouse@eehouse.org
484bb295d0
Merge branch 'android_branch' into android_invite
2011-06-06 22:08:49 -07:00
Andy2
07be547151
fix array OOB exception by avoiding the dereference. Better would be
...
to remember the dict name from before "download" was chosen and always
fall back to it.
2011-06-06 22:07:57 -07:00
Andy2
54777c8dbd
catch exception (and put up a explanatory Toast) that occurs, says
...
google's crash report site, when I try to launch something to handle
http and nothing can. Maybe people are installing Crosswords on
devices that don't have browsers.
2011-06-06 20:40:12 -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
f58eded796
fix (assuming diagnosis is correct) NPE crash reported on google site.
2011-06-06 20:06:59 -07:00
Andy2
53b2a3a6b5
Merge branch 'android_branch' into android_invite
...
Conflicts:
xwords4/android/XWords4/res/values/common_rsrc.xml
2011-06-06 18:55:21 -07:00
Andy2
845b277c01
rename m_path->m_name for consistency
2011-06-06 18:44:29 -07:00
Andy2
c21a494e0b
remove unnecessary setAction call. (Haven't tested if others can go.)
2011-06-06 18:32:17 -07:00
Andy2
2ce4c1417c
do a better job of figuring out whether to use black or white to
...
outline blank tiles.
2011-06-06 18:28:20 -07:00
Andy2
1f664fa9e8
fix crash launching chat activity -- due to incorrect removal of URI
...
code recently.
2011-06-06 18:15:02 -07:00
eehouse@eehouse.org
b2d62f0f3d
Revert "extend code for choosing whether to make arrow white or black based on"
...
This reverts commit 1ef67e74eb
.
2011-06-06 18:10:05 -07:00
Andy2
37a2fa0aa1
update release notes
2011-06-06 07:02:16 -07:00
Andy2
1ef67e74eb
extend code for choosing whether to make arrow white or black based on
...
background to apply to blank-mark ring. Fixes disappearing mark when
tile background gets dark.
2011-06-06 06:52:10 -07:00
Andy2
056261fe9e
up version number/strings
2011-06-06 06:49:47 -07:00
Andy2
a6a668881f
Merge branch 'android_branch' into android_invite
...
Conflicts:
xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardActivity.java
2011-06-05 10:49:17 -07:00
Andy2
84572c1ed6
get rid of the other places where Uri's being used but a simple name
...
is needed.
2011-06-05 10:44:26 -07:00
Andy2
c46015c514
fix crash on K's G2X due to URI.fromFile() returning a really strange
...
path. I don't need a URI anyway as the path is now just a key for DB
lookup. So just pass the name as an extra -- and rename variable to
reflect.
2011-06-05 10:29:33 -07:00
Andy2
d0f0fa04ce
set background color of board root view from prefs on creation and
...
whenever pref color might have changed.
2011-06-05 10:20:23 -07:00
Andy2
65efbe38c9
set background color of board root view from prefs on creation and
...
whenever pref color might have changed.
2011-06-03 23:35:06 -07:00
Andy2
f29dff4ff5
add icon for new add-game menuitem
2011-05-26 18:46:29 -07:00
Andy2
3b78bab89d
sort by creation time rather than name
2011-05-20 22:55:07 -07:00
Andy2
c9be5b464c
actually set the creation timestamp
2011-05-20 22:51:30 -07:00
Andy2
13e8667634
use Player %d when no default player name set
2011-05-20 06:51:13 -07:00
Andy2
3df47f8fe2
separate string for missing player
2011-05-20 06:50:38 -07:00
Andy2
815490fb87
update gi before creating summary. In case of networked game,
...
incoming messages may have changed the version inside the jni
(reordered or renamed players) and we want those changes in the
summary.
2011-05-20 06:44:06 -07:00
Andy2
d554f71e8a
cleanup: move invariant out of loop
2011-05-20 06:39:39 -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
0b2ca44fa9
we need *name and *namef forms
2011-05-19 22:50:39 -07:00
Andy2
0f45c26aea
remove, for now, test that prevents multiple games from a single email
...
so on-device testing possible. Later need to improve the test.
2011-05-19 06:54:46 -07:00
Andy2
362eb10d9d
remove, for now, test that prevents multiple games from a single email
...
so on-device testing possible. Later need to improve the test.
2011-05-19 06:54:27 -07:00
Andy2
7349a61f5a
add market url to install and break ugly/non-localized url out of
...
localized strings.xml.
2011-05-19 06:52:42 -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
0c3a6d362c
when a networked game connects and is missing player, offer to invite
...
someone. Factor out code from create-and-invite path to support this.
Move invite-related strings into resources. Still untested with
networked device (to send email.)
2011-05-18 19:00:32 -07:00
Andy2
71afbf617c
add empty view so screen is never completely blank
2011-05-18 06:28:44 -07:00
Andy2
55278ab2a2
what I meant to check in.
2011-05-17 18:44:57 -07:00
Andy2
bf4b3c3058
fix hint text to mention only one button, hide that button along with
...
the text -- and make the add-game menu item actually work.
2011-05-17 18:44:34 -07:00
Andy2
7389b3b4c8
disable the three unused name prefs
2011-05-17 18:26:53 -07:00
Andy2
0763e7d5b3
put the two dictionary settings into their own subscreen -- like
...
player names.
2011-05-17 18:20:21 -07:00
Andy2
bc3e5b5ca4
add defaults for first through fourth player names. Apply them only
...
to local, non-robot players, which at the moment means only the first
will get used. Not sure what the right strategy is now so maybe all
but the first goes away.
2011-05-17 18:12:23 -07:00
eehouse@eehouse.org
574194cb4f
Merge branch 'android_branch' into android_invite
2011-05-16 19:38:25 -07:00
Andy2
9cc2dfca34
include language in set-default-dict message to reinforce connection
...
between dict and language. I really want to lock the two defaults --
force to change both if one is a different language -- but am not sure
it that's easy enough to do quickly (for next beta.)
2011-05-16 17:58:31 -07:00
Andy2
903b412046
add note that storage location decision isn't permanent
2011-05-16 17:37:52 -07:00
eehouse@eehouse.org
2fae0842c4
Merge branch 'android_branch' into android_invite
2011-05-16 06:44:04 -07:00
Andy2
740c5dd46c
up constants and change message for new release
2011-05-16 06:43:42 -07:00
Andy2
6b4320e727
start to fill in text for new-game dialog.
2011-05-16 06:35:49 -07:00