Commit graph

3300 commits

Author SHA1 Message Date
Eric House
129f404026 do setup correctly from both constructors 2014-07-30 07:03:44 -07:00
Eric House
d51dd6ae7a pass new interfaces into Delegates rather than Activities to get ready for Fragments 2014-07-25 11:17:22 -07:00
Eric House
683302f40e remove views before adding new one. This shouldn't be possible, but
google's received reports of it happening.
2014-07-24 21:46:23 -07:00
Eric House
c3f4e5323c Fix (by inspection) NPE reported through google 2014-07-24 21:20:15 -07:00
Eric House
454ef51cf1 use a single toolbar layout inflated from its own xml rather than
hard-coded as part of board
2014-07-22 19:38:32 -07:00
Eric House
9c1b4454eb add back vertical version of toolbar so board can be bigger in
landscape mode
2014-07-22 08:11:15 -07:00
Eric House
e4c3e9fe13 remove dead code 2014-07-21 22:24:50 -07:00
Eric House
a84194c180 ignore new files 2014-07-21 21:57:28 -07:00
Eric House
83636b6736 clean up trade UI setup 2014-07-21 21:34:52 -07:00
Eric House
71b2afefbc use cell width for status width 2014-07-20 14:22:35 -07:00
Eric House
8b26a5316d toward putting the status icon in the right place 2014-07-19 21:04:33 -07:00
Eric House
5825b9e056 don't set rect that won't be used 2014-07-18 21:31:21 -07:00
Eric House
0f617d359b fix so space opening up in landscape board layout is colored in
user-settable background color rather than white
2014-07-18 21:29:29 -07:00
Eric House
550e637440 cleanup 2014-07-18 21:28:31 -07:00
Eric House
a902bdcbad limit width of scoreboard too 2014-07-17 21:31:17 -07:00
Eric House
aa811f11eb test screen size in deciding to allow rotation 2014-07-17 21:30:53 -07:00
Eric House
d51a5e67f0 fix for super-wide screen: tiles are never wider than tall. Next:
scoreboard.
2014-07-17 08:01:00 -07:00
Eric House
35248cbef4 reduce min font size 2014-07-16 21:36:42 -07:00
Eric House
694d88bbdb Add preference that, if set, allows board to display in landscape
orientation.  Later a test for screen size will do the same (with
debug pref overriding it to ease testing.)  Board looks like crap in
that mode; will fix next.
2014-07-16 20:11:55 -07:00
Eric House
d37ed8ca2a move onWindowFocusChanged() into superclass 2014-07-16 19:54:13 -07:00
Eric House
ddd1ef70b6 prevent games reset at the same time from all having the same seed by
passing rand()'s seed from java world rather than using current
seconds.
2014-07-15 07:32:57 -07:00
Eric House
5da0a78710 remove logging 2014-07-14 07:34:16 -07:00
Eric House
079859f510 fix new game creation putting list into state where games couldn't be
launched: don't use m_launchedGame except to track that the UI's
launched a game.
2014-07-13 09:09:48 -07:00
Eric House
37c6db8ffc include language in toast confirming addition to wordlist 2014-07-12 16:06:18 -07:00
Eric House
03843e77d1 on return from selecting a new language while creating a game, change
players' wordlists to match
2014-07-12 15:50:01 -07:00
Eric House
7e9c156747 expand/contract wordlist groups via tap on group as well as its arrow
button
2014-07-12 15:34:30 -07:00
Eric House
75e54fa727 don't reuse game list group if it's had its background changed since
that can't be undone (yet)
2014-07-12 11:04:41 -07:00
Eric House
3530e51102 remove unused variable 2014-07-12 10:51:57 -07:00
Eric House
25d4b0a375 add groups info cache inval so when empty group gets a new game it
grows an expand button
2014-07-11 07:31:50 -07:00
Eric House
8dd1771a37 fix crash deleting two games in a row: don't set a game as selected
after it's been deleted, and delete games in-place from the list
rather than remaking the adapter.
2014-07-11 06:59:23 -07:00
Eric House
6fd0bcec49 Optimization: keep ivars pointing at subviews rather than calling
findViewById each time a GameListItem is recycled.
2014-07-10 06:31:43 -07:00
Eric House
e674ae4a3c recycle views for games list elements too 2014-07-10 06:24:35 -07:00
Eric House
f3f5bf10a5 Recycle convertView for dicts list elements. Next: games list. 2014-07-10 06:15:09 -07:00
Eric House
1864675196 toward being able to reuse views 2014-07-09 21:45:22 -07:00
Eric House
272fabacfc fix studylist option being ignored when launching lookup where
language has only one lookup url
2014-07-09 06:44:48 -07:00
Eric House
5d31671514 save dict to tmp file, renaming only after download is successful.
Fixes crashes when half-saved files are loaded.
2014-07-08 20:53:09 -07:00
Eric House
9cc4c146aa add newbie hint about wordlist browser 2014-07-08 06:50:39 -07:00
Eric House
71fce9bf15 make dict (or app) download cancellable 2014-07-07 07:58:41 -07:00
Eric House
6a94741c61 fix so game most recently opened is selected after return to list 2014-07-03 17:42:03 -07:00
Eric House
41dbc5dfa3 remove logging when file-not-found 2014-07-03 17:25:29 -07:00
Eric House
8af99e39d1 implement move-groups inside superclass (though only one subclass uses it now) 2014-07-02 21:56:42 -07:00
Eric House
653a1082d9 give list adapters a common superclass and move expand/contract logic
there.  To do: moving of group-moving logic.
2014-07-02 06:28:15 -07:00
Eric House
812d533d10 move list adapter for games list into GamesListDelegate, simplifying
it and speeding it up.  It still gets tossed out too often; next task
is to call mkListAdapter() less frequently.
2014-06-28 15:39:06 -07:00
Eric House
cdf5d6ec9a new commented-out formatting utility 2014-06-28 15:38:14 -07:00
Eric House
177fbb0bad uncheck box as soon as download cancelled (and dismiss rather than
cancel the progress dialog so cancel listener doesn't get called on
normal completion)
2014-06-28 10:57:18 -07:00
Eric House
aa7c3a18e3 when user has to download a dict in order to reset a game (bad, but
too hard a requirement to remove), once the dict's downloaded continue
to reset, not open, the game.
2014-06-28 10:42:33 -07:00
Eric House
5c5ddd5ecd fix delete dicts warning to catch case of nuking all the lists for a
language at once.  To simplify (coding and user experience), don't
bother with case where user will have to switch to another list before
opening a game.  May want to reconsider this.
2014-06-27 08:29:42 -07:00
Eric House
38b37643f4 call mkListAdapter in a couple of places exposed now that it's not called in onResume 2014-06-24 22:04:59 -07:00
Eric House
f2eea61a76 name lang 0 "unknown", and display dicts with langs outside the known range there. 2014-06-24 21:33:44 -07:00
Eric House
d062508929 no need to rebuild list onResume 2014-06-24 21:32:49 -07:00
Eric House
c82ec8b646 use lang name, not code, to build download URL. Fixes download of Experimental lists. 2014-06-24 08:18:42 -07:00
Eric House
eac5e1dd65 cancel wordlist download/digesting when progress dialog dismissed 2014-06-24 08:18:42 -07:00
Eric House
39809e49aa fix another NPE (though these don't occur on older devices) 2014-06-24 08:18:42 -07:00
Eric House
7e515b19c9 fix NPE in studylist; cleanup duplicated method 2014-06-24 08:18:42 -07:00
Eric House
23aa211a75 don't insist on presence of game's dict when deleting game 2014-06-23 08:14:19 -07:00
Eric House
91db8d9cdb track which list items are expanded so when rebuilt (e.g. after
scrolling out of sight) the retain their state.  (Not preserved across
invocations of the activity.)
2014-06-23 08:03:48 -07:00
Eric House
46fba6204a switch to providing details about remote wordlist via expanding view
rather than a separate alert.
2014-06-22 13:36:25 -07:00
Eric House
8783822bdc fix crash after lookup of word when language has only one URL
(e.g. Dutch) by not skipping the LookupAlert dialog in that case.
2014-06-22 11:12:31 -07:00
Eric House
e9608a867e use existing wrapper method rather than calling on activity 2014-06-22 10:40:20 -07:00
Eric House
e1f7c13fc7 print wordlist count as part of group title 2014-06-22 09:42:08 -07:00
Eric House
cf0c864553 rename method 2014-06-20 18:44:47 -07:00
Eric House
509dfb4b4f launch DictsActivity for result, and have it return the last language
and wordlist downloaded. Use that information to update the spinner
that launched it so that choosing "download more" then downloading a
German wordlist causes German to be selected.
2014-06-19 20:42:34 -07:00
Eric House
c31697ea47 tweak DictsDelegate so it works when invoked via "Download more..."
from GameConfig spinners to add langs and dicts within a lang.
2014-06-19 07:57:46 -07:00
Eric House
5568f00dd8 put back missing string for game config dialog 2014-06-18 20:51:00 -07:00
Eric House
975c37ddae add note to info alert, blank if not present 2014-06-18 20:25:45 -07:00
Eric House
927ba028fb cleanup 2014-06-18 20:24:13 -07:00
Eric House
44e2c988ad treat nBytes as a long 2014-06-18 06:51:33 -07:00
Eric House
b6d316134d more tweaks to wordlists: display names of those that can be updated;
click on available list shows info and offers to download; etc.
2014-06-18 06:48:04 -07:00
Eric House
03b0b041fc Fix NPE 2014-06-18 06:48:04 -07:00
Eric House
0fe9949449 log when we don't have lang name 2014-06-18 06:48:04 -07:00
Eric House
99db1cef51 snapshot on the way to removing RemoteDicts in favor of DictsActivity
with a "show remote" checkbox at the top.  Works, but incomplete.
2014-06-17 06:42:07 -07:00
Eric House
2fa9b9151c remove firefox warning and unused method 2014-06-13 07:34:15 -07:00
Eric House
26a8bf418f move into superclass 2014-06-12 23:52:20 -07:00
Eric House
9cfacf6667 don't download already-installed dicts 2014-06-12 07:30:13 -07:00
Eric House
3cfd29fb2e update dict to show 'installed' after successful download 2014-06-12 07:18:32 -07:00
Eric House
f375defc0b preserve scroll position across recreation of list adapters 2014-06-12 06:51:17 -07:00
Eric House
ac2c960ef5 fix stupid listadapters, and preserve selection for remotedicts list too 2014-06-11 19:07:05 -07:00
Eric House
6de515e75e use a hashmap to track selected wordlists so selection survives
orientation change (which typically creates new views).  TODO: apply
same trick to remotedicts display.
2014-06-11 08:15:33 -07:00
Eric House
b3823bacb1 label dicts that are installed and that need updating 2014-06-11 07:07:14 -07:00
Eric House
281bee2e18 snapshot: mark already-installed wordlists as such. TODO: don't enable
download menuitem when they're selected, and also compare md5 sums to
deal with anything that's installed but out-of-date.
2014-06-10 07:25:21 -07:00
Eric House
4e4175f486 add ability to look up by language name. Note: this code is hitting
the DB way too often and needs to be optimized!
2014-06-10 07:08:56 -07:00
Eric House
874aa72009 get rid of handler 2014-06-07 17:52:06 -07:00
Eric House
d0f901481b change prepareDialog signature to make harder to confuse with onPrepareDialog 2014-06-06 07:02:20 -07:00
Eric House
ab15037076 fix method name that prevented its getting called 2014-06-06 06:52:22 -07:00
Eric House
60dc482e76 move method into superclasses 2014-06-06 06:33:28 -07:00
Eric House
164199335a oops: this activity doesn't have a menu 2014-06-06 06:10:46 -07:00
Eric House
4ff473ed41 need to call super to avoid a crash 2014-06-06 05:56:37 -07:00
Eric House
bfe3e1303f conform with static member naming convention (no code change) 2014-06-06 05:46:05 -07:00
Eric House
93446a1760 tweak: don't redo adapter once the last download finishes 2014-06-06 05:31:08 -07:00
Eric House
c184d68976 fix NPE -- but something's still wrong with player config dict spinner 2014-06-06 05:24:41 -07:00
Eric House
202c942ab0 remove progress trackers as downloads come in 2014-06-05 07:17:55 -07:00
Eric House
fe7bb09d46 rename class: it's not just for wordlist any more 2014-06-05 06:10:15 -07:00
Eric House
f8612e727d Support download of multiple dicts at once. (Download of apps not tested and may be broken. Next...) 2014-06-05 06:05:23 -07:00
Eric House
f3daed2e12 add menu to remote dicts display, track selected dicts, and implement
download. Which works. Still need to clean up UI for multiple
downloads, track selection across rebuilds of list adapter, etc.
2014-06-03 07:45:08 -07:00
Eric House
11178845fc remove extension from dict name in download progress bar 2014-06-03 07:45:08 -07:00
Eric House
7c95c36025 cleanup imports 2014-06-03 07:45:08 -07:00
Eric House
064ef0c137 display languages in sorted order 2014-06-03 07:45:08 -07:00
Eric House
ae4260a259 snapshot: handle json data (hardcoded for now) from server and display
collapsible list of selectable dict names.
2014-06-03 07:45:08 -07:00
Eric House
b1705e6073 make lang group header expand button actually expand/contract. 2014-06-03 07:45:08 -07:00
Eric House
03f16a1e0b avoid NPE 2014-06-03 07:45:08 -07:00
Eric House
4596ed5d7b snapshot on the way to removing last expandablelist use: dictsdelegate
lists languages and wordlists under them, but nothing's colapsable yet.
2014-06-03 07:45:08 -07:00
Eric House
393d419056 cleanup: remove unused imports 2014-06-03 07:45:08 -07:00
Eric House
a6205f3dca move onBackPressed() into activity superclasses 2014-05-29 07:15:34 -07:00
Eric House
ef970efc7a don't crash: call setContentView() from delegate rather than activity 2014-05-28 20:45:14 -07:00
Eric House
9d23aef31d when a string has format specifiers, highlight them, and offer a
newbie tip explaining the translation must match.
2014-05-22 23:50:44 -07:00
Eric House
a6d8a74102 move a few methods, and add utilities, to superclass. 2014-05-22 23:35:51 -07:00
Eric House
4b26e04691 fix update when text cleared: passing null to setText() is ok 2014-05-22 06:46:59 -07:00
Eric House
91d7213be6 fix strings.xml files, syncing names and removing obsolete elements 2014-05-22 06:35:08 -07:00
Eric House
d1aa5d73f2 don't allow to save translation where format specifiers don't match; cleanup 2014-05-22 05:59:43 -07:00
Eric House
6f6781ceed move dialog creation stuff into activity base class 2014-05-21 22:03:56 -07:00
Eric House
174ee22a4b use inherited invalidateOptionsMenuIf() 2014-05-21 20:08:57 -07:00
Eric House
0b379a941b snapshot: add menu to xlation item editor. 2014-05-21 06:59:38 -07:00
Eric House
2293e6a730 remove unused imports 2014-05-21 06:56:51 -07:00
Eric House
dbaa28de5e don't refuse to delete local translation 2014-05-20 07:00:03 -07:00
Eric House
af5cbe5325 need to call super when don't handle an id locally 2014-05-19 07:53:41 -07:00
Eric House
4452adf33d no blank Translate menu titles 2014-05-19 07:26:10 -07:00
Eric House
8f15f76fed label xlations with the language name 2014-05-17 16:57:24 -07:00
Eric House
018424e6e8 modify item text after the db backing it is modified by covering edit
activity.
2014-05-16 22:11:18 -07:00
Eric House
dfbb1bae71 derive context from menu that's triggered from it rather than trying
to set it from onResume() calls.
2014-05-16 22:05:48 -07:00
Eric House
3c4ed7de46 associate strings with the contexts in which they're looked up and
implement that filter.  I'm tracking by the name of the class rather
than a WeakReference, which means that the hashsets of keys will never
be freed.  Will need to see how much memory that means I'm using.
2014-05-16 06:40:01 -07:00
Eric House
c44a676808 derive from XWListActivity 2014-05-15 21:47:46 -07:00
Eric House
750393a5e6 oops: get the translation activity translated! 2014-05-15 06:53:03 -07:00
Eric House
891af6a84d use iter.remove to avoid ConcurrentModificationException 2014-05-15 06:43:59 -07:00
Eric House
6ce47f8208 use WeakReference rather than hashCode to associate menu with its strings 2014-05-15 06:37:03 -07:00
Eric House
5364f31da0 add filter and state-tracking for most recent menu. Used hashCode to
identify menu (since keeping a reference to it would cause it to
leak.) Will try WeakReference instead, or just dumping when another
comes along.
2014-05-15 05:41:15 -07:00
Eric House
cbb10f6994 remove logging 2014-05-15 05:31:40 -07:00
Eric House
5e70d28ea1 first cut at filtering: all and modified work, but the other two
require that I track strings by the contexts in which they appear.
2014-05-14 21:24:29 -07:00
Eric House
6426e41d30 show locally-translated strings in red 2014-05-14 19:04:58 -07:00
Eric House
d00e49f843 save edited translations 2014-05-14 06:46:08 -07:00
Eric House
4d42768f83 add separate activity/delegate for editing translations, launched by
tapping on a line in the list-o-strings.
2014-05-13 21:07:56 -07:00
Eric House
47eaca3d71 add filter spinner to translate dialog (though there's not yet data to filter on) 2014-05-13 06:30:38 -07:00
Eric House
049c55e2d2 toward adding default menu to all activities and eventually tracking
translations by where they're used so most relevant can be shown: put
back common superclasses XWActivity and XWListActivity with default
implemenations of activity lifecycle methods that call through to
delegates (and that later can help LocUtils track what's been seen
when.) Not thoroughly tested, but seems to work for the main screens
anyway.
2014-05-12 21:26:31 -07:00
Eric House
19204d5720 remove unused/commented-out file 2014-05-12 21:23:27 -07:00
Eric House
b085aeeb46 translate DialogPreference title, message and buttons 2014-05-06 21:13:10 -07:00
Eric House
a4cd137cef get rid of #1 used to make strings unique: remove duplicates where
possible, and where not replace it with a non-printing zero-width
unicode char.
2014-05-06 06:27:33 -07:00
Eric House
d566bd63ae break the last Activities out into Delegates, and move a bunch of
stuff info the delegate base class so fewer calls required on
m_activity and LocUtils.
2014-05-06 05:56:43 -07:00
Eric House
5d9e846316 make constructor protected 2014-05-06 05:55:33 -07:00
Eric House
ce77f09588 the new spinner adapter override works much better for game config's
spinners
2014-05-05 07:38:37 -07:00
Eric House
96ca4f9946 fix NPE: not all spinners have adapters 2014-05-05 07:27:06 -07:00
Eric House
1170a31385 translate spinners by replacing their adapters with new class that
delegates to old then translates any views returned
2014-05-05 07:19:35 -07:00
Eric House
6165fc2201 translate list summary 2014-05-05 06:45:37 -07:00
Eric House
22a9fbdb3e translate color setting pref dialog 2014-05-05 06:37:05 -07:00
Eric House
3a7111c098 translate ListPreference lists 2014-05-05 06:03:33 -07:00
Eric House
edcd29c88d in order that non-English versions not go long after installation
without translations, try immediately after any install or upgrade to
get translations from server.  (Triggered from the Application rather
than an Activity, so initializing the preferences DB had to be moved
there too.) Should probably post a notification after installing
localizations, ideally with a message in the language, offering to
restart with all new strings.
2014-05-04 15:41:02 -07:00
Eric House
56a057f06c when translations get out of sync with R.java values, there's often a
format exception.  Catch that, and strip out the locale's translations
so the app at least doesn't crash.  This should not happen once I have
the server side right, but it'll help now and provide a safety net
later.
2014-05-01 22:05:57 -07:00
Eric House
5a22e08664 no need for package name in app info as it's in the top-level obj 2014-04-30 07:28:42 -07:00
Eric House
d91c307792 include hash of current R.java in xlation update json, not of the entire app 2014-04-30 03:29:47 -07:00
Eric House
d463ea3f30 commented-out line to copy xwdb into /sdcard from which it can be retrieved 2014-04-29 06:43:11 -07:00
Eric House
6c46ce2297 send and receive array of locales for translation info, one of which
is the device's current default.  Plan's to include a fake as well if
set, but currently that replaces the default.
2014-04-28 07:58:23 -07:00
Eric House
b42c372c79 send git version code, app package name, and git hash with all messages 2014-04-27 20:03:40 -07:00
Eric House
33a83b0e2f toward use of data text messages for games: don't let CDMA phone users
turn data messages on, and when checking if SMS is supported say yes
for KitKat users if they've successfully turned data on.
2014-04-27 13:34:09 -07:00
Eric House
f386cd5c1b for consistency, createDialog -> onCreateDialog 2014-04-27 13:17:48 -07:00
Eric House
716109e979 Merge branch 'android_branch' into android_localize
Conflicts:
	xwords4/android/XWords4/src/org/eehouse/android/xw4/PrefsActivity.java
	xwords4/android/XWords4/src/org/eehouse/android/xw4/SMSService.java
2014-04-26 22:04:57 -07:00
Eric House
c82c59d985 experimental: enable SMS on KitKat if debug setting to use Data SMS is on 2014-04-26 20:04:55 -07:00
Eric House
fbb042ffee merge android_branch -> android_sms_kitkat 2014-04-26 18:31:05 -07:00
Eric House
ae4c6e98f2 replace escaped carraige returns and unicode from resources to get
closer to what getString returns.  If I can't find an Android API to
do this it should be done on the server, but this is an improvement
until I do.
2014-04-25 20:58:14 -07:00
Eric House
7818cd002b merge android_branch->android_localize 2014-04-24 20:00:38 -07:00
Eric House
6e011ab36f allow board screen to be "upside down" on OS version new enough to
support it (and make SMS Invite Activity go any way, just like
everything else)
2014-04-24 19:59:20 -07:00
Eric House
808e342cd4 clean up 2014-04-24 19:58:18 -07:00
Eric House
28e81e3a74 translate preferences -- finally. 2014-04-24 07:56:27 -07:00
Eric House
3b4c672492 toward substituting what getString (or the resource compiler) normally does. 2014-04-24 07:08:57 -07:00
Eric House
28c0862604 translations come in with ids rather than English strings as keys 2014-04-24 06:31:27 -07:00
Eric House
7434c6a3a7 cleanup 2014-04-23 19:41:44 -07:00
Eric House
e643e9d5c0 add debug preference via which Translate menuitems must be enabled 2014-04-22 21:06:05 -07:00
Eric House
0a3371a82f break most of PrefsActivity into PrefsDelegate 2014-04-22 20:59:58 -07:00
Eric House
f410f8bb1a separate local and blessed (server) translations, fix to update or insert correctly and handle keys with embedded quotes, etc. Works to download translations, but a lot of longer keys don't seem to be matching. 2014-04-22 07:43:55 -07:00
Eric House
ec0443b2ce add constraint to loc table 2014-04-22 07:29:35 -07:00
Eric House
155dd6f19a snapshot: now receives updates from the server and they show up in
menus etc. (after a restart.)
2014-04-20 06:49:26 -07:00
Eric House
f0bd300f1b add setter for new table 2014-04-20 06:45:00 -07:00
Eric House
ed7da84da6 fix compile: add missing param 2014-04-18 19:38:12 -07:00
Eric House
dbc42c3ad2 include xlation info in update request to server. It's not handled yet
and so the handling of the result is untested.
2014-04-18 08:03:01 -07:00
Eric House
901e07c0aa getter for new pairs DB 2014-04-18 08:02:25 -07:00
Eric House
b636fe263b new table for generic key/value pairs, and fix crash on new install by
not requiring localization db to exist during db creation.
2014-04-18 08:01:26 -07:00
Eric House
96c7f301d0 replace the last of the context.getString(...) calls with LocUtils.getString(context,...) 2014-04-18 07:14:27 -07:00
Eric House
ce59793458 use table to recover from too-new db. (tables are ugly in java) 2014-04-18 07:06:51 -07:00
Eric House
62ecd00971 remove redundant code 2014-04-18 06:26:25 -07:00
Eric House
4d08c7cef9 merge android_branch->android_localize 2014-04-18 06:21:45 -07:00
Eric House
8ba19184a0 merge from_android_beta_82->android_branch 2014-04-17 08:32:39 -07:00
Eric House
56ce5761d7 fix malformed utf-8: writeBytes just strips all but the last byte of multi-byte utf8 chars! 2014-04-17 07:42:34 -07:00
Eric House
be581e762e fix more getString calls -- just keeps going 2014-04-16 07:12:45 -07:00
Eric House
85ffd0cad9 fix getStrings() calls for studylists 2014-04-16 07:02:09 -07:00
Eric House
1eea5bfed5 route more getString() calls through LocUtils 2014-04-16 06:52:20 -07:00
Eric House
1c35bd2a1b call init from outside after constructor completes rather than from inside constructor 2014-04-16 06:46:24 -07:00
Eric House
57f9182a4d inval group cache after deleting a game 2014-04-16 06:44:24 -07:00
Eric House
6198992fcd rename file 2014-04-16 06:07:59 -07:00
Eric House
e5151c32be make constructor private 2014-04-15 21:22:56 -07:00
Eric House
9e78d23014 break up more activities into delegates, using all the new methods in
the base. Crashes a lot, but this is a snapshot to work from.
2014-04-15 21:02:40 -07:00
Eric House
2e89b95e70 add methods subclasses will be able to use 2014-04-15 20:31:29 -07:00
Eric House
d9a407c9f3 move to superclass 2014-04-15 08:07:04 -07:00
Eric House
3465605481 more moving stuff into superclass 2014-04-15 08:02:57 -07:00
Eric House
548ba63dda more use of overridden AlertBuilder and getString 2014-04-15 07:49:21 -07:00
Eric House
8432500541 override setPositiveButton and friends so ids can be translated 2014-04-15 07:40:27 -07:00
Eric House
e12fbcce8e more use of LocUtils.getString() 2014-04-15 07:34:14 -07:00
Eric House
01c94d91cd I apparently don't understand how varargs works in java 2014-04-15 07:31:57 -07:00
Eric House
3c76de6851 call method on superclass rather than activity 2014-04-15 06:38:51 -07:00
Eric House
dc8b5b073e use superclass's getString() where possible instead of LocUtils's static version 2014-04-15 06:36:18 -07:00
Eric House
9720684ce7 break activity up into delegate 2014-04-15 06:27:17 -07:00
Eric House
1cf7e70091 use superclass's setContentView() 2014-04-15 06:26:55 -07:00
Eric House
0ae63c37ac add convenience methods for subclasses 2014-04-15 06:26:37 -07:00
Eric House
f0b5584e38 translate activity window titles 2014-04-14 08:10:49 -07:00
Eric House
7f48783fb2 get translations working in dicts browser (save title) 2014-04-14 08:05:11 -07:00
Eric House
1249fa5849 call getString on LocUtils instead of context 2014-04-14 06:28:29 -07:00
Eric House
13e900695e call new AlertBuilder only once 2014-04-14 06:28:05 -07:00
Eric House
a22763298a extend AlertDialog.Builder and override setTitle so string ids can be
translated when passed.
2014-04-10 21:34:08 -07:00
Eric House
ff03284c5c for debugging (testing what strings aren't yet reachable), uppercase
all strings without a tranlation.
2014-04-10 07:31:56 -07:00
Eric House
5c5a353d12 add string array to spinner manually so it can be translated -- sucks
to have to change code for this, but...  The dropdown views look
crappy though I'm using identical code to what's in DictLangCache
building similar arrays that look fine.  Needs work.
2014-04-10 06:44:33 -07:00
Eric House
f3b5cbb794 fix NPE 2014-04-09 21:14:30 -07:00
Eric House
67bca0dd4e Because loc: strings can't be supplied for all Views, don't do
that. Instead use the English strings themselves as keys.  Generate a
java array of all R.string.whatever contants at build time, and use
that at runtime to build a hashmap of localizable strings that may be
found in UI widgets.  When one is found and there's a translation,
substitute.
2014-04-09 21:09:46 -07:00
Eric House
7e72cb506d add some more logging/tracking. 2014-04-09 07:28:53 -07:00
Eric House
291d4f0217 create table in new DB as well as when upgrading 2014-04-09 06:25:07 -07:00
Eric House
c96e848a05 remove unused method 2014-04-09 05:58:53 -07:00
Eric House
b61f1fbac9 fix crash adding first game to newly installed app by counting games and groups the same way getView determines if they exist. 2014-04-09 05:58:44 -07:00
Eric House
051cc5eb1d call init from outside constructor since constructor can call back into callee 2014-04-09 05:57:33 -07:00
Eric House
0aa2a03760 remove unused method 2014-04-09 05:54:36 -07:00
Eric House
5e03e0cc75 fix crash adding first game to newly installed app by counting games and groups the same way getView determines if they exist. 2014-04-09 05:52:36 -07:00
Eric House
1035c94c3f call init from outside constructor since constructor can call back into callee 2014-04-09 05:38:46 -07:00
Eric House
ccf84135a0 fix NPE on fresh install 2014-04-09 05:08:49 -07:00
Eric House
5d83d2f318 translate GameConfig view -- though it really needs to be broken to have a Delegate.... 2014-04-08 19:12:00 -07:00
Eric House
0ac951c096 remove format() in favor of LocUtils call 2014-04-08 19:00:49 -07:00
Eric House
9e228ab368 use version of getString that translates 2014-04-08 06:54:16 -07:00
Eric House
d27f2d580a (more of prev commit) generate xml layout files from res_src, and run all inflation through LocUtils that tries to substitute strings 2014-04-08 06:48:42 -07:00
Eric House
848f6ff221 no longer need these custom classes 2014-04-08 06:44:41 -07:00
Eric House
36672395ff store new column, always false for now 2014-04-07 07:47:08 -07:00
Eric House
227a25e259 add column for tracking xlation source 2014-04-07 07:09:43 -07:00
Eric House
437e2024cc generate hashmap from strings.xml -- all of them -- making it
unmodifiable, and test for stuff not being in it.
2014-04-06 18:58:33 -07:00
Eric House
86cc8f6dbf move onCreateOptionsMenu into superclass 2014-04-06 16:48:17 -07:00
Eric House
2ae6ecb125 get rid of allcaps translation, instead using translations where
available. Works -- but app needs to be restarted for menus to change.
2014-04-06 16:08:45 -07:00
Eric House
a351b2a5b9 implement search through loc dialog 2014-04-06 06:43:48 -07:00
Eric House
7e16d7abc5 add getContentView -- since I can never remember how to do it 2014-04-06 06:37:51 -07:00
Eric House
6b59093d84 use new loc db to save translation data (per locale) across boots. 2014-04-05 14:04:02 -07:00
Eric House
47ea2b8b62 add loc table to store translation data, mapping key and locale to text 2014-04-05 14:00:41 -07:00
Eric House
527685da79 preserve translation changes in memory. Next: write to DB. 2014-04-05 13:33:12 -07:00
Eric House
663f4293a9 display English text on left side of table 2014-04-05 11:45:20 -07:00
Eric House
2494f7b8d4 add activity for localizing strings and add menuitem to localizable activities to trigger it. Does nothing yet, including populating itself. 2014-04-05 10:27:05 -07:00
Eric House
16346beeb1 enforce new convention: strings containing formatting must be names whatever_fmt (and strings containing formatting must be so named.) I'm going to have to parse such strings, which will be expensive, so being able to determine from the name whether there's a need should help. 2014-04-04 23:42:57 -07:00
Eric House
073c461693 new type of problem: make a string array in ListPreference localizable 2014-04-04 08:00:30 -07:00
Eric House
2c9dc526c2 convert most of GamesList to be localizable 2014-04-04 06:50:08 -07:00
Eric House
9531c6939e add getString() variants to LocUtils and use from BoardActivity 2014-04-04 06:34:46 -07:00
Eric House
f6b2e5a3c2 transform submenus too 2014-04-04 06:20:46 -07:00
Eric House
0e7676b301 make board menu localizable -- but submenus don't work yet 2014-04-03 22:37:13 -07:00
Eric House
a6954a71dc menu title can be null 2014-04-03 22:36:47 -07:00
Eric House
11dabca721 generate mapping from actual strings to R.string.id that can be used at runtime to convert/lookup menu titles. Works to uppercase a menu! Changes break dbg and bt builds -- to be fixed. 2014-04-03 22:27:50 -07:00
Eric House
f2bfd36780 menus are broken: you don't get access to an AttributeSet when inflating them. So replace string references with strings equal to the name of the id (xxx in R.string.xxx); next I'll need to harvest the strings from R.java and map them to their numbers in a way that's runtime-accessible. 2014-04-03 06:21:02 -07:00
Eric House
bd02a10fc3 beginnings of framework to allow localized strings to be read from downloaded modules: in xml replace string references with a custom attribute that's the same thing, then in overridden view subclasses pull the reference from the AttributeSet and look it up myself. Works to uppercase all strings in the NewGames dialog. 2014-04-02 08:06:51 -07:00
Eric House
eff00c1743 use setBackground rather than setBackgroundColor to fix not reverting on 4.4 (and maybe earlier) 2014-04-01 06:27:19 -07:00
Eric House
9351eb257b call setPct on new group item if appropriate 2014-03-31 07:57:31 -07:00
Eric House
3ff60861f7 derive GameListGroup from ExpiringLinearLayout 2014-03-31 07:14:40 -07:00
Eric House
d896670c21 remove unneeded paramter 2014-03-31 06:34:35 -07:00
Eric House
256dda85c0 don't show resend messages menu when anything's selected 2014-03-30 17:15:26 -07:00
Eric House
6f373c6c11 drop click event when don't have any games (easier than uninstalling the handler when there are no child games) 2014-03-28 22:41:57 -07:00
Eric House
fe14c88685 fix so gameless groups are still shown (but don't have an expand button) 2014-03-28 22:32:35 -07:00
Eric House
52d2436903 snapshot on the way to fixing query that failed to show empty groups 2014-03-28 07:46:46 -07:00
Eric House
fe64f89788 fix assertion on newer devices by letting the compiler do its job 2014-03-28 06:20:28 -07:00
Eric House
fb3b6ff96d expand/contract in response to click anywhere 2014-03-27 08:45:12 -07:00
Eric House
3f3e9f5389 implement expand/contract of groups. Still skanky, but works. 2014-03-27 08:28:34 -07:00
Eric House
64d0e0c867 toggle image when clicked 2014-03-26 21:12:43 -07:00
Eric House
84698273a5 fix selection of group item by adding a delegate all selectable items can call. 2014-03-26 21:03:51 -07:00
Eric House
31b65e659d make GamesList list- not expandable-list-based for future compatibility with Fragments. Groups still don't contract since they need arrows. Next... 2014-03-26 20:01:55 -07:00
Eric House
0a1449859a add countGames and to group info the count of games in each 2014-03-26 19:55:05 -07:00
Eric House
e70bb33537 break ChatActivity up 2014-03-25 22:29:20 -07:00
Eric House
558d34bc98 break part of BoardActivity out into BoardDelegate (and make a bunch of little changes that required) 2014-03-25 21:53:38 -07:00
Eric House
609962df58 cleanup 2014-03-25 07:21:12 -07:00
Eric House
0430cfbd24 break parts of StudyListActivity into StudyListDelegate 2014-03-25 07:14:22 -07:00
Eric House
dae0c7208f rename StudyList -> StudyListActivity 2014-03-25 06:31:59 -07:00
Eric House
8084e63d09 add and use a showDialog() that takes a DlgID 2014-03-25 06:26:28 -07:00
Eric House
e0c0ff219f rename onCreateDialog createDialog where it's not an overridden method 2014-03-25 06:16:46 -07:00
Eric House
cae30c61e8 need onCreateDialog() to get into DlgDelegate; onContentChanged needs to call super() 2014-03-25 06:03:25 -07:00
Eric House
1da9d36f3a emacs added missing file-terminating NL 2014-03-25 06:02:07 -07:00
Eric House
c988859063 get rid of XWExpandableListActivity 2014-03-24 22:18:58 -07:00
Eric House
b78514ca6c break parts of DictsActivity into DictsDelegate 2014-03-24 21:48:03 -07:00
Eric House
6c8cedf5bb rename GamesList -> GamesListActivity, then move most of it into GamesListDelegate. This is part of exploring what it'll take to separate Activity-ness from the rest that can then also be used, say, from a Fragment. 2014-03-24 21:10:02 -07:00
Eric House
5ff5074180 yet another version of showConfirmThen() 2014-03-24 21:08:06 -07:00
Eric House
6256e2a843 don't show check-for-updates menuitem unless we can update something: we're not installed from the Play store OR we've installed at least one wordlist. 2014-03-24 07:37:44 -07:00
Eric House
b4df0125cc make formatting uniform (no code change) 2014-03-24 06:56:21 -07:00
Eric House
57e2dd5492 make remote/robot score report dialog non-blocking to fix ugly first-game experience 2014-03-24 06:55:13 -07:00
Eric House
a842363be1 rename file: Lookup dialog is no longer an Activity 2014-03-23 18:53:38 -07:00
Eric House
73a1083dff only show lookup menuitem when there's a single word selected, and include that word in the menu title 2014-03-22 10:37:48 -07:00
Eric House
e2cd275459 cleanup 2014-03-22 10:14:27 -07:00
Eric House
c426741fa1 use same counter title for wordlist and studylist browsers 2014-03-21 19:54:30 -07:00
Eric House
9dab6bc772 add studylist menu to lookup selected words -- same as tapping, but maybe easier to discover. 2014-03-21 19:42:23 -07:00
Eric House
2f49f64c4f clear selection in onResume since we're rebuilding list; fixes it being forever out of sync after a wordslist is opened 2014-03-20 18:56:56 -07:00
Eric House
5d32fce43e don't allocate new Runnable on every draw 2014-03-20 05:18:40 -07:00
Eric House
673ab53a61 go back to extending XWListAdapter 2014-03-20 05:11:52 -07:00
Eric House
3717035150 include number to be deleted in comfirm message 2014-03-19 22:56:17 -07:00
Eric House
c7818bd364 build query a bit more effeciently 2014-03-19 22:52:33 -07:00
Eric House
38fe8ec3fd invalidate menubar when might change 2014-03-19 22:39:21 -07:00
Eric House
426e939b61 hook up onClick to launch lookup 2014-03-19 22:25:14 -07:00
Eric House
64a5aab456 hook up long click to [de]select 2014-03-19 21:36:49 -07:00
Eric House
fd817a98da implement menus, including adding crappy placeholder icons 2014-03-19 21:29:20 -07:00
Eric House
aa6fbf8605 snapshot on the way to making studylists editable: add checkbox to xwlistitem. It's to be an alterative to long tap to select. Implement selectAll and deselectAll. 2014-03-19 20:42:29 -07:00
Eric House
e7708ef439 fix NPE when serializing 2014-03-19 20:17:53 -07:00
Eric House
c333e561af use a global enum for DlgDelegate actions -- should be no real code change 2014-03-18 06:06:21 -07:00
Eric House
12e77e8c47 get rid of three Utils.format calls 2014-03-17 08:20:43 -07:00
Eric House
a5f0c797bb use one message for deletion of groups, whether one or many 2014-03-17 07:45:09 -07:00
Eric House
37b2458140 add number being reset to message 2014-03-17 06:56:10 -07:00
Eric House
94a838d88e give lookup alert a title 2014-03-14 18:55:06 -07:00
Eric House
be440c8abf try, again, making lookup dialog an alert rather than an activity. It's a much better experience on a nexus 5 but I've lost my records of why I made it an activity in the first place -- what phones it sucked on as an alert. Still probably doesn't bundle itself correctly and is missing a title. 2014-03-14 18:41:54 -07:00
Eric House
d4930e157b make method private 2014-03-14 07:12:53 -07:00
Eric House
ea189c5717 turn study lists on by default 2014-03-14 06:45:17 -07:00
Eric House
94d9a03d51 add enum to hold all dialogIDs so they're forced to be unique across the app. (The diff's big but there's no behavior change.) 2014-03-14 06:37:32 -07:00
Eric House
1ee16ca09d remove unnecessary import 2014-03-11 22:01:30 -07:00
Eric House
f601f2bf57 use dictmgr in java. This requires jni globals that live across boards being opened and that include a mempool dicts will be allocated out of. Seems to work, and to get ref counts as high as 6 or so before they drop down to one when all boards are closed. (The final is held by the dictmgr which won't give it up until the app itself is GC'd) 2014-03-10 19:14:59 -07:00
Eric House
a2671f5ef0 add global mempool that can survive individual games, and include it every game's globals. Use it instead of game's mempool to create dictionaries so they can outlive a game and not trip asserts on pool delete. Wrap dicts in a java class that refcounts them when BoardCanvas wants to keep one so that, I hope, the bug using a deleted dict will go away. 2014-03-09 14:46:33 -07:00
Eric House
9f5d470c07 no need for final 2014-03-09 14:39:18 -07:00
Eric House
e0c17c50b3 catch off-thrown exception. This should prevent a crash, but the fix is probably to figure out why it's happening -- later. 2014-03-08 12:55:46 -08:00
Eric House
c31c9cb365 don't show resend menuitem unless there are moves to resend 2014-03-06 07:43:20 -08:00
Eric House
3daa877bee Send from resend asyncTask using factored-out code in CommsTransport. Works for SMS at least. 2014-03-05 07:15:34 -08:00
Eric House
923ac6db98 show loadDB menuitem only when nothing's selected 2014-03-05 06:37:02 -08:00
Eric House
bcfd27ee7f don't crash when there's a SMS game with pending messages 2014-03-04 21:38:22 -08:00
Eric House
5ebbf87c24 don't kick off async task if there's nothing to send 2014-03-04 21:13:23 -08:00
Eric House
811be34a20 remove logging 2014-03-04 21:12:40 -08:00
Eric House
cfee7ef8ac resend all messages from the network change broadcast receiver itself instead of GamesList, which will not be listening if another activity is in front or if the app's in the background. 2014-03-04 19:03:39 -08:00
Eric House
3c0b4a899f resend all unacked messages each time we regain network, but only up to four times/hour. 2014-03-04 18:36:46 -08:00
Eric House
431b24409f Fix kitkat-only problem where expiring rects are clipped at top and left 2014-03-04 07:40:25 -08:00
Eric House
df771f50c4 add function that resends all pending (un-ackd, at the comms level) messages for unlocked games and, for testing mostly, a menuitem on the main activity to trigger it. Probably crashes if there's a message for a game connected by other than relay. 2014-03-04 07:05:55 -08:00
Eric House
9d174740c8 don't show "send pending messages" menuitem when there are none 2014-03-01 16:15:35 -08:00
Eric House
386c28e596 don't notify network change listeners unless a change is in fact a change and until there's been two seconds without changes. There's a lot of connection up-and-down spam when connecting and maybe with iffy connectivity, and no point in passing that through to code that will do stuff like stopping a send thread in response. 2014-03-01 15:17:14 -08:00
Eric House
23638310bc register for net state changes, and toast/log on debug builds. This is toward resending from all games with packets pending on reconnect. 2014-03-01 14:59:17 -08:00
Eric House
c1e22dd3cf add summary DB column and jni code to fetch it to store and display number of unacked messages a game has. And add debug-only option to display it in the main list. In the future I want to be able to iterate over all these games and resend their packets (without opening them visually) when an internet connection comes back up. 2014-02-28 18:59:12 -08:00
Eric House
1d85a74a6c readd old assertions -- and fix compile error 2014-02-28 06:47:27 -08:00
Eric House
9a94663fb8 log when we drop a message because two possible receiving games are open 2014-02-28 06:13:52 -08:00
Eric House
61080e1b62 revert changes pausing instead of exiting JNI thread (and so not saving game data) from BoardActivity's onPause() when onFinishing() returned false. This is necessary because there are cases where moves were generated and sent without local state ever being saved because onPause() was called only once on what turned out to be activity termination. 2014-02-28 05:57:32 -08:00
Eric House
2f7839f7e0 cleanup 2014-02-28 04:35:39 -08:00
Eric House
29d08b95ce expose comms_getStats() via a debug-build-only menu and dialog 2014-02-26 21:41:49 -08:00
Eric House
1f9a4180e8 remove misleading comments 2014-02-25 07:56:22 -08:00
Eric House
fc799449e9 save game and summary in a synchronized block so lock doesn't get released halfway through 2014-02-24 21:50:17 -08:00
Eric House
a72932486b toward having networking and activity swaps work without fully
shutting down the game in onPause(): use pause() and resume() to
suspend the jnithread when the game's been unlocked.
2014-02-13 19:29:35 -08:00
Eric House
7c45e3c5b3 add pause() and resume() 2014-02-13 19:26:09 -08:00
Eric House
1e30582c3b more logging 2014-02-13 07:50:21 -08:00
Eric House
802e798180 refactor 2014-02-13 06:44:57 -08:00
Eric House
89435fc688 fix to compile 2014-02-13 06:40:39 -08:00
Eric House
b3cce8c535 reduce verbosity and add info to GameLock logging 2014-02-13 06:33:30 -08:00
Eric House
44e52278a4 remove unused method 2014-02-12 07:52:39 -08:00
Eric House
218d232798 add dictNames() variant that takes a GameLock 2014-02-12 07:35:49 -08:00
Eric House
c0e7c0bf88 only log stack for first and last attempts to get lock 2014-02-11 22:11:16 -08:00
Eric House
80c3374728 add build timestamp to about dialog (needs better formatting) 2014-02-10 19:20:35 -08:00
Eric House
daa59ee03d pass Context to CrashTrack 2014-02-10 07:14:00 -08:00
Eric House
f27394ca03 framework for calling Crashlytics from debug variant 2014-02-10 06:53:39 -08:00
Eric House
0d80511a1a remove logging 2014-02-09 19:35:35 -08:00
Eric House
b56d990a04 go back to overriding onPause and onResume, but don't tear down the game unless isFinishing() returns true 2014-02-08 16:50:27 -08:00
Eric House
5e3c26d453 track current BoardActivity instance using HashSet rather than single instance since during transitions there can be two. Fixes asserts from recent commit. 2014-02-07 21:22:13 -08:00
Eric House
a4e65f667d add ok button to about dialog 2014-02-07 07:59:34 -08:00
Eric House
a388351219 save/load games in onStop/onStart rather than onPause/onResume so we don't do it as often, and specifically not every time the LookupActivity is pushed. This is an experiment. 2014-02-07 07:40:34 -08:00
Eric House
d97784ba13 track which dialog is blocking rather than just that there is one 2014-02-07 07:38:07 -08:00
Eric House
048ae63802 make bad-words reporting dialog blocking so robot doesn't go ahead and move and put its moved dialog up on top of the bad words one before it's dismissed; also change name of string to reflect that it's a format. 2014-02-06 07:22:57 -08:00
Eric House
f6a1e06d41 create myGames group only on upgrade and only if there are existing games to put into it. 2014-02-05 19:46:42 -08:00
Eric House
ca57da44c6 fix duplicate column crash when upgrading 2014-02-05 19:34:42 -08:00
Eric House
6dfaf8127f fix reported crash: assertion copying non-network game 2014-02-03 07:28:38 -08:00
Eric House
f805d7309f modify emacs compile command to use find-and-ant.sh 2014-02-02 11:40:40 -08:00
Eric House
f65b5fda71 don't disable button after it's used: feels as if the device is hanging 2014-01-31 18:22:21 -08:00
Eric House
dd38543398 add toast to confirm that word's been added 2014-01-31 07:25:28 -08:00
Eric House
c40cef2101 add newbie tip for studylist copy feature 2014-01-30 21:31:14 -08:00
Eric House
426b5b59b2 for better discoverability, always show the studylist menus when the feature's on and supply explantions when there's nothing to show 2014-01-30 19:16:00 -08:00
Eric House
9dc94c97b2 put some of DlgDelegate's methods into an interface that can be passed around to be called by non-activities. 2014-01-30 19:14:23 -08:00
Eric House
647282968a hide the label and spinner when there's only one language 2014-01-30 08:15:43 -08:00
Eric House
a8d01f6de2 remove mistaken break 2014-01-30 07:00:30 -08:00
Eric House
f78af55cd1 disable add-to-list button after adding so there's feedback 2014-01-30 06:26:40 -08:00
Eric House
32ecd1d026 more studylist: add lookup-on-tap, show language in title bar, and add
menuitem to board menu too
2014-01-29 19:37:04 -08:00
Eric House
11767a41e4 show toast on successful paste 2014-01-29 07:49:57 -08:00
Eric House
21f2936e87 confirm before deleting all words 2014-01-29 07:43:45 -08:00
Eric House
b5d4b6b778 implement clear (without warning) 2014-01-29 07:36:05 -08:00
Eric House
2520fb4c05 add menu and implement copy-to-clipboard 2014-01-29 07:15:25 -08:00
Eric House
42f35cb3d9 populate study list, doing the sorting in the DB query for now 2014-01-28 07:48:08 -08:00
Eric House
3f8e456db2 populate language chooser 2014-01-28 07:15:59 -08:00
Eric House
4421472391 add (empty so far) studylist browser and menu to invoke it 2014-01-28 06:50:27 -08:00
Eric House
9d19bed3b7 add studyListLangCount() 2014-01-28 06:32:25 -08:00
Eric House
aab876bf6d remove toast 2014-01-27 21:25:22 -08:00
Eric House
49d26dab07 rough out UI for adding selected or played words to study list DB. Next: add a UI for displaying it etc. 2014-01-27 21:24:57 -08:00
Eric House
b3ebadfde5 test for null that should never happen but google play says does. 2014-01-25 19:03:22 -08:00
Eric House
e9ffcdbbc5 fix, by inspection, NPE reported via Play dev console 2014-01-25 18:04:32 -08:00
Eric House
843c6389cf use the same key to set and get bundle item, probably fixing a couple of recent Dev Console-reported crashes. 2014-01-25 17:56:15 -08:00
Eric House
acb090154d add rate-me menu 2014-01-23 19:32:06 -08:00
Eric House
cb9f095d93 remove unused variable 2014-01-23 07:48:02 -08:00
Eric House
e72beaa265 add and use isGooglePlayApp() 2014-01-23 07:47:32 -08:00
Eric House
710f9c68ff don't launch intent if null 2014-01-23 07:46:58 -08:00
Eric House
29d5cc5d13 fix crash when incoming sms invite includes an apostrope in the room
name -- by using rawQuery()
2013-12-28 11:30:49 -08:00
Eric House
d25e20221b update send success status 2013-12-06 08:00:16 -08:00
Eric House
fa5649501e update send success status 2013-12-06 07:39:16 -08:00
Eric House
1f3bd63769 Merge branch 'android_branch' into android_sms_kitkat 2013-12-05 20:03:47 -08:00
Eric House
be28630109 pass dict with bt invite and otherwise catch up with how invites work.
Can now invite and play a game.
2013-12-05 07:31:17 -08:00
Eric House
ca428d6a63 fix NPEs occurring when loading in a games DB (debug feature) whose
groups were different: recreate GameListAdapter and make it correctly
deal with having no group selection data (as that's stored in prefs)
2013-12-03 08:30:47 -08:00
Eric House
7c2b3b3d15 add clearGroupPositions 2013-12-03 08:27:29 -08:00
Eric House
e9efc27d7a toss cache after reading in new DB 2013-12-03 07:54:38 -08:00
Eric House
3ccc9ac0f1 use auto-generated BuildConstants class instead of my own act-alike 2013-12-03 07:15:03 -08:00
Eric House
b5d6c513a6 add canUndo to GameStateInfo and use to hide the undo menu 2013-12-03 07:06:48 -08:00
Eric House
24eb63f109 Revert "replace ARGB_8888 with RGB_565 where possible to halve memory"
This reverts commit b7e44195c6.
2013-12-03 06:28:56 -08:00
Eric House
6402ae56d2 remove now-redundant response to prefs change 2013-12-02 07:08:43 -08:00
Eric House
431ab75336 register for sms prefs changes so they can take effect immediately 2013-12-02 07:01:04 -08:00
Eric House
94216a5fb9 add canTrade to GameStateInfo, pass through to java world, and use to
determine whether to show trade menuitem
2013-12-01 21:53:41 -08:00
Eric House
40a4bf348e Merge branch 'android_branch' into android_sms_kitkat 2013-12-01 21:37:43 -08:00
Eric House
17dcb5c4f0 remove comment not meant to be checked in 2013-12-01 20:49:38 -08:00
Eric House
a4fe0adb62 allow missing items -- since menus are different on different devices 2013-12-01 20:40:04 -08:00
Eric House
3e6791c66f remove method and use existing Util static instead 2013-12-01 20:32:17 -08:00
Eric House
b7e44195c6 replace ARGB_8888 with RGB_565 where possible to halve memory
footprint of bitmaps
2013-11-29 16:14:18 -08:00
Eric House
dd5aaa41fa erase full divider rect to fix leftover tile bottom after it's been moved. 2013-11-29 10:21:06 -08:00
Eric House
79b60ae895 cleanup 2013-11-29 08:48:13 -08:00
Eric House
60026b6ef2 move BoardDims into jni/ 2013-11-29 08:43:34 -08:00
Eric House
26eff37c6b move BoardDims into jni/ 2013-11-29 08:43:21 -08:00
Eric House
d3ce4aa4c7 fix NPE: jniThread gets turned to null sometimes, so test 2013-11-29 07:26:30 -08:00
Eric House
991c042e78 add newbie warning against using Firefox for wordlist downloads. 2013-11-28 19:01:07 -08:00
Eric House
07a0e0ed93 fix crash: make thumbnail BEFORE closing game 2013-11-27 07:10:00 -08:00
Eric House
72341a085a start out sending as data, but on first NPE, the symptom of CDMAness,
set the pref to send as text and do that from then on (unless the pref
is reset manually)
2013-11-27 07:08:58 -08:00
Eric House
b1d8d62c6c fix crash: make thumbnail BEFORE closing game 2013-11-27 07:06:14 -08:00
Eric House
85ae5973eb Merge branch 'android_branch' into android_sms_kitkat 2013-11-27 06:10:24 -08:00
Eric House
83bd5f773c take snapshot after feeding background messages to game, which
required making snapshotting code work with a Context rather than a
full Activity.  Untested with network play as the net's down now.
2013-11-27 06:09:49 -08:00
Eric House
66eb96dce2 notify BoardCanvas when we're closing a game so that it won't try to
use, in callback on UI thread, a dict that may no longer be valid.
Theory is this is why I'm seeing odd crashes in the jni.
2013-11-26 08:06:38 -08:00
Eric House
8976d26f00 clear thumbnail after resetting game 2013-11-26 08:04:30 -08:00
Eric House
29a4634a40 add assertOnUIThread() 2013-11-26 07:59:20 -08:00
Eric House
eab12200af add debug preference to determine whether to use sendDataMessage() 2013-11-26 07:11:22 -08:00
Eric House
f7a09551d5 Merge branch 'android_branch' into android_sms_kitkat 2013-11-26 06:56:49 -08:00
Eric House
15cbad340a clear thumbnail after processing background move so it'll get redrawn.
Better would be to just draw it since the game is already open, but
that takes more changes.
2013-11-25 08:08:04 -08:00
Eric House
42800851d3 combine thumbnail prefs to reduce nesting 2013-11-25 07:58:11 -08:00
Eric House
0b00f303bb cleanup after code review 2013-11-25 07:46:25 -08:00
Eric House
538fa20ffd fix broken deleteGroup() 2013-11-25 07:45:43 -08:00
Eric House
3ff241f739 Merge branch 'android_branch' into android_sms_kitkat 2013-11-24 18:18:03 -08:00
Eric House
8260fb1437 fix NPE on older phones 2013-11-24 18:13:54 -08:00
Eric House
7743fc52d5 fix assertion: rowid of -1 means all 2013-11-24 18:13:36 -08:00
Eric House
75b976449f turn SMS back on, and modify to send/receive "data" SMS rather than
text.  This works between two t-mobile devices without filling the
kitkat one's message box. TBD: does it work on CDMA?
2013-11-23 19:02:57 -08:00
Eric House
478ed9a12a change method name 2013-11-23 15:32:58 -08:00
Eric House
ba181221dd select newly created game too on return of focus 2013-11-23 12:17:42 -08:00
Eric House
7876e2cded use constant 2013-11-23 12:17:21 -08:00
Eric House
f85bb082fc optimization: return null quickly if param is invalid 2013-11-23 12:16:38 -08:00
Eric House
6f4cb4b0ca fix (I hope) OOM errors when there are a ton of games by doing
snapshot creation and loading sequentially on a single thread so that
peak memory consumed by bitmap operations is lower.  Remove snapshots
from GameSummary: the db is the only source now.
2013-11-22 22:58:39 -08:00
Eric House
d2c87647cd reverse test so games db can be loaded 2013-11-22 18:51:42 -08:00
Eric House
f2ff596ff3 fix NPE by checking 2013-11-21 18:57:58 -08:00
Eric House
9820f6bf6b set selection on children being reused 2013-11-21 18:57:32 -08:00
Eric House
4748d9f459 create groups opened 2013-11-21 08:08:44 -08:00
Eric House
ec2fb210be on return from opening a game, select that game after clearing the selection 2013-11-21 08:00:59 -08:00
Eric House
8be57116ab revert previous change: the right way to save selections is to add
screenSize to the list of changes handled so that Activities aren't
recreated each time, so do that instead.
2013-11-21 07:34:38 -08:00
Eric House
03b7a6d45f preserve selection across orientation changes 2013-11-21 07:10:36 -08:00
Eric House
75d9752024 use "pct." to indicate what thumb scale choices mean. '%' triggers a
known crasher in Android.
2013-11-21 06:44:19 -08:00
Eric House
7be3a3bef8 express thumb size as percent of screen with options, generated, in 5%
increments.
2013-11-21 06:27:09 -08:00
Eric House
b874406b7b add newbie message about how NFC works 2013-11-21 05:53:38 -08:00
Eric House
c42271ee31 fix NPE 2013-11-21 05:26:45 -08:00
Eric House
08205637de disable SMS play/invite on KitKat (until workarounds found) 2013-11-21 05:26:12 -08:00
Eric House
24e015f259 don't make snapshots for non-expanded game list items; make when first
expanded instead.
2013-11-20 08:15:18 -08:00
Eric House
2e5e10ef6d move dialog asking to enable NFC into NFCUtils, and use it when
creating a new game to be invited via (disabled) NFC
2013-11-20 07:56:05 -08:00
Eric House
b1ae563ae6 fix NPE when installed with existing SMS invites in inbox 2013-11-20 06:54:51 -08:00
Eric House
51a561077c when action-bar-equipped device tries to hide title bar warn and then
disable pref.
2013-11-19 07:22:14 -08:00
Eric House
63ba7d45d3 use gameID as inviteID for non-NFC invites too 2013-11-19 06:37:39 -08:00
Eric House
0cef5fce50 display gameid as hex 2013-11-19 06:26:07 -08:00
Eric House
45fcd19e6e use gameID as inviteID, so that all devices in a game will be using
the same gameID -- and use that to reject as duplicates attempts to
use the same invitation more than once.
2013-11-18 21:38:59 -08:00
Eric House
d7239323bc add gameid as option for what's shown in summary (debug only) 2013-11-18 07:25:40 -08:00
Eric House
6d06197c45 hide trade menuitem when board's in invite mode 2013-11-18 06:48:12 -08:00
Eric House
7ff9496d23 remove some logging 2013-11-18 06:33:59 -08:00
Eric House
03f532374b put up NFC button even if turned off, and when it's used offer to turn
it on.
2013-11-18 06:27:24 -08:00
Eric House
3278b55819 return whether NFC *can* be enabled as well as whether it is 2013-11-17 21:21:06 -08:00
Eric House
0cc45ad865 add new field canHideRack to GameStateInfo and use it to disable menu. 2013-11-17 13:54:21 -08:00
Eric House
0bf28c133d always have board ready to send invite via NFC 2013-11-16 09:03:17 -08:00
Eric House
deff81cfd1 move query setup outside of synchronized blocks where possible 2013-11-16 06:30:34 -08:00
Eric House
f303fa2653 debug features and logging are always on/available for debug builds 2013-11-15 20:52:05 -08:00
Eric House
088dd1bd75 center board when it must be narrower than screen 2013-11-15 20:46:22 -08:00
Eric House
c0f6f6a959 don't enable delete menu when default group is among those selected 2013-11-15 19:14:51 -08:00
Eric House
e4e0f57676 put up different help text depending on whether user has buttons or
menus (since the text mentions them)
2013-11-15 19:02:13 -08:00
Eric House
d8ea672f6c now that getDefaultNewGameGroup works, allow/pass undefined group
further down where appropriate
2013-11-15 07:53:57 -08:00
Eric House
cd922ba8e2 fix getDefaultNewGameGroup to use a (new) DBUtils method that actually
works.
2013-11-15 07:47:14 -08:00
Eric House
3ba470573d when there's no default new-game group, get *some* group from the DB
and make that the default, with caution to avoid any -1==groupID games
saved by previous buggy versions
2013-11-15 06:50:34 -08:00
Eric House
edadc962f8 rename generated file; set logging on by default for debug builds 2013-11-14 21:56:37 -08:00
Eric House
53748e352a fix games created after reset of prefs from disappearing: they were
being saved with groupid of -1, so now when the default's not been sit
choose and pass in the first group.
2013-11-14 21:47:01 -08:00
Eric House
5826f080be don't hide titlebar for board if there's no menu key, since on such
devices there's no other way to get to the menu.
2013-11-14 08:07:00 -08:00
Eric House
85a533c74f use interface trick to avoid NFC code crashing on 2.1 2013-11-14 08:03:28 -08:00
Eric House
bdf5a43686 always update nMissing so invite menuitem can go away 2013-11-14 06:19:04 -08:00
Eric House
e20a72e527 remove and turn off active rect stuff 2013-11-14 05:59:51 -08:00
Eric House
4d6a37b048 don't force NFC messages to ascii -- it breaks special chars and isn't
required, even with special chars.
2013-11-14 05:46:47 -08:00
Eric House
e9bdf3c4f8 don't show trade buttons when have actionbar since they're redundant
and the AB icons are visible; hide resign menuitem when in trade mode.
2013-11-13 19:00:34 -08:00
Eric House
3b5bc3a786 fix OOB per http://stackoverflow.com/questions/12133404/indexoutofboundsexception-in-a-baseexpandablelistadapter-implementing-sectionind 2013-11-13 18:39:03 -08:00
Eric House
263a4d7170 move action bar stuff into its own class; in wordlist browser, show
only one of download button and download menu
2013-11-13 07:42:51 -08:00
Eric House
41f61e3748 use setNdefPushMessageCallback instead of setNdefPushMessage; seems to
make invitations work more reliably.
2013-11-13 07:11:56 -08:00
Eric House
3b3746d2e5 fix invites dialog to show the right buttons for all cases. 2013-11-13 06:52:45 -08:00
Eric House
d119033333 use resource strings and apis rather than quoted strings for nfc constants 2013-11-13 06:51:36 -08:00
Eric House
735e42cd90 launch on tap even if selected 2013-11-13 06:50:30 -08:00
Eric House
b7d756957c test also whether NFC turned on 2013-11-12 19:12:47 -08:00
Eric House
b3bc738cae move nfc stuff into separate utility class, and check API version for
whether to support it. Oddly the app runs on 2.1 emulator without
classnotfound error -- I was expecting to have to use the interface trick.
2013-11-12 19:06:26 -08:00
Eric House
f291ef7377 remove dup import 2013-11-12 18:58:13 -08:00
Eric House
e63e5b6102 Merge branch 'android_branch' into android_nfc 2013-11-12 18:39:31 -08:00
Eric House
8704efd38e add send-invites menuitem that's at top of board menu but only visible
when game's unconnected
2013-11-12 18:39:13 -08:00
Eric House
e040aa388b don't try to save to read-only lock; check for non-existant games when
summarizing: together these fix crash when deleting after opening game
whose remote partner has been deleted.
2013-11-12 08:08:30 -08:00
Eric House
6719704117 remove excessive logging 2013-11-12 08:02:14 -08:00
Eric House
10608b137f Mark the current player's wordlist in wordlists popup 2013-11-12 07:05:37 -08:00
Eric House
e2aea4a39e call through to canvas for current score to correctly update menu 2013-11-12 06:40:40 -08:00
Eric House
f14be36bbc eliminate flicker on opening board: don't start drawing tile if can't
finish
2013-11-12 06:34:56 -08:00
Eric House
282b32396f don't log the one command that's supposed to get posted post-stop 2013-11-12 06:29:57 -08:00
Eric House
d0313d3c4b package game-start data into a json and send it via nfc, then open it
on the other end. Works to start a game!
2013-11-11 22:06:28 -08:00
Eric House
a88835a4a1 Successfully send text via NFC and log it on receiver 2013-11-11 21:36:19 -08:00
Eric House
98989abb14 don't log the one command that's supposed to get posted post-stop 2013-11-11 21:35:42 -08:00
Eric House
8099b77e52 refuse to a create second game from an invitation unless a debug pref
is set.
2013-11-11 20:44:08 -08:00
Eric House
7cf297ad0e fix so board still works after reloading, e.g. after turning screen
off and back on.
2013-11-11 08:09:15 -08:00
Eric House
a7b1e00cc2 remove trade menuitem when game over 2013-11-11 05:31:18 -08:00
Eric House
35721975db add menuitems for back/commit for trade mode parallel to the buttons
at bottom (which should go when you have an action bar)
2013-11-11 05:23:25 -08:00
Eric House
37aa4a9adf set tile border (highlighted and not) proportional to tile size for
greater visibility on high-res devices
2013-11-10 09:05:31 -08:00
Eric House
f27e798966 need to requestLayout(), not just invalidate(), after common code
layout is finished.
2013-11-10 08:37:28 -08:00
Eric House
7457ce9b80 fix so board draws correctly when loaded in trade mode 2013-11-10 06:55:01 -08:00
Eric House
82a82b5ae1 set trade mode in canvas where it'll do some good 2013-11-10 06:41:43 -08:00
Eric House
d598dde86e inval view even if board_draw says there's more drawing to do -- as
there's probably still a lot that got drawn.
2013-11-10 06:41:12 -08:00
Eric House
f6e0febd6d fix NPE 2013-11-09 08:20:32 -08:00
Eric House
397b03b074 save thumbnail along with summary to fix reset game keeping its old
(and populated) thumbnail until opened
2013-11-09 07:27:05 -08:00
Eric House
3142069adb save bitmap after generating it 2013-11-09 07:19:54 -08:00
Eric House
26a464aae4 set a minimum width for rem tiles display based on screen width rather
than pixels
2013-11-09 07:15:28 -08:00
Eric House
3e6a7418b1 move snapshoting code into GameUtils, and use it whenever loading a
GameListItem that should have a snapshot but doesn't.  This lets games
have snapshots immediately rather than only after they've been opened
once.
2013-11-09 06:59:33 -08:00
Eric House
e0dd481393 restore missing ivar init so remaining tiles square comes back 2013-11-09 06:48:09 -08:00
Eric House
049b8247ff clear all thumbnails whenever a thumb-related pref changes 2013-11-09 06:40:31 -08:00
Eric House
82f61b43f2 add utility to erase all thumbnails 2013-11-09 06:36:47 -08:00
Eric House
dfdbd9a8a2 pass scoreWidth separately into formatting code so space can be left
for network status icon.
2013-11-09 05:34:23 -08:00
Eric House
9f6baf39c4 don't insert rowid in any prefs list except the right one 2013-11-08 06:31:20 -08:00
Eric House
0a3a1623df DRAW message not needed (using invalidate instead) 2013-11-08 06:08:09 -08:00
Eric House
ea6ad877ca draw after changing/adding dict chars -- this may be the final step
required to be able to render a board.
2013-11-08 06:06:18 -08:00
Eric House
5a555b11b0 tweak appearance of snapshots preferences 2013-11-08 05:54:30 -08:00
Eric House
ecb225a6a8 try larger font size on high-res screens 2013-11-07 20:06:51 -08:00
Eric House
9e87a5ee92 implement getting active rect when that pref is set 2013-11-07 19:55:01 -08:00
Eric House
e780b536f9 obey thumb size preference. Currently "1/3" means 1/3 the size of the
smaller screen dimension.  There may be a better scale.
2013-11-07 19:28:00 -08:00
Eric House
41df94af31 new separate set of three prefs for thumbnails, and make the first,
enable/disable, work.
2013-11-07 19:07:19 -08:00
Eric House
fba7aee83a take thumb setting into account (though not in the rigth way yet, and
changes are still reflected only after the list item's been forced to
reload)
2013-11-07 07:51:57 -08:00
Eric House
a26dced506 drawing tray tiles can fail, e.g. when font info not yet available, so
only clear bits when successful. Fixes problem where tray didn't get
drawn until tiles were somehow invalidated.
2013-11-07 07:29:54 -08:00
Eric House
56f9f5f88e remove unused method 2013-11-07 05:48:39 -08:00
Eric House
16923eb27e save thumbnail in separate step, creating new square board-only
drawctxt to render it without scaling.  Draw whole board rather than
just the active rect.
2013-11-07 05:44:16 -08:00
Eric House
baba78535f fixes to the merge 2013-11-07 05:30:02 -08:00
Eric House
bb80cdfb08 Merge branch 'android_branch' into android_thumbnail
Conflicts:
	xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardCanvas.java
	xwords4/android/XWords4/src/org/eehouse/android/xw4/jni/XwJNI.java
2013-11-07 05:25:51 -08:00
Eric House
272fc6e812 Move board_layout call onto jni thread, and change order in which it's
done to make that work. This is a snapshot: not all boards draw completely,
and there's other debugging to be done.
2013-11-06 06:49:27 -08:00
Eric House
499e07d84b follow convention: width usually comes before height 2013-11-05 06:38:48 -08:00
Eric House
d4cf98553c Merge branch 'android_branch' into android_thumbnail 2013-11-04 06:37:13 -08:00
Eric House
2d7392a16d pass new score- and tray-size params through 2013-11-04 06:36:52 -08:00
Eric House
9c9a04025a Merge branch 'android_branch' into android_thumbnail
Conflicts:
	xwords4/android/XWords4/src/org/eehouse/android/xw4/jni/XwJNI.java
2013-11-04 06:20:53 -08:00
Eric House
e01af60dab build with COMMON_LAYOUT defined, and when off-by-default debug pref
is on use it instead of java-side layout.
2013-11-03 12:17:20 -08:00
Eric House
5dd209ef27 init summaries earlier 2013-10-31 20:33:23 -07:00
Eric House
9cd7dd6c98 fix to compile post-merge 2013-10-31 08:14:14 -07:00
Eric House
d7a1f53157 Merge branch 'android_branch' into android_thumbnail
Conflicts:
	xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardView.java
2013-10-31 08:13:39 -07:00
Eric House
45ad3499c5 (rough) move BoardView's Canvas into a new class so that, ideally, it
can be used separately e.g. to draw thumbnails without opening a game
into a board.  Works well enough to render a full board, but not
otherwise tested.
2013-10-31 08:08:41 -07:00
Eric House
bfa6132ade add board_setDraw() to jni 2013-10-31 08:07:07 -07:00
Eric House
8ddc9a7770 Merge branch 'android_branch' into android_thumbnail
Conflicts:
	xwords4/android/XWords4/res/values/strings.xml
2013-10-30 21:46:45 -07:00
Eric House
3bfcc0cedd implement menu items, including being able to move or delete multiple
dicts at once.
2013-10-30 21:45:16 -07:00
Eric House
886f9100e1 implement delete and make default menuitems 2013-10-30 19:02:28 -07:00
Eric House
eefcd18fa8 part one of modernizing wordlists browser: long-tap selects and
de-selects, but menus aren't updated and don't work.
2013-10-30 07:03:15 -07:00
Eric House
dbf76287a8 move interfaces out of GameListAdapter and into own file; should be no
change beyond renaming.
2013-10-30 06:29:31 -07:00
Eric House
0960e5510c add board_getActiveRect to jni, and use it to capture a thumbnail
that's smaller.  Scaling is still a problem, though: some but not all
grid lines show up.
2013-10-29 07:51:35 -07:00
Eric House
d72526ff84 enable turning thumbnail featuren on/off via a line in build.xml 2013-10-29 06:49:06 -07:00
Eric House
8bdde9765d Merge branch 'android_branch' into android_thumbnail 2013-10-29 06:30:03 -07:00
Eric House
1d7a443c8d cleanup 2013-10-28 21:25:44 -07:00
Eric House
969d0d0a71 cleanup 2013-10-28 07:50:43 -07:00
Eric House
8ab202dd27 cleanup menu config code 2013-10-28 06:21:24 -07:00
Eric House
e197e7499f add new thumbnail/blob column to DB 2013-10-27 21:56:00 -07:00
Eric House
2c9cd311a5 add thumbnail: save scaled-down image when closing board, store it in
summaries db, and display as part of game list item.  Preference
governs whether saved/displayed and the scale.
2013-10-25 21:08:37 -07:00
Eric House
e3c99595b1 add new thumbnail/blob column to DB 2013-10-25 21:02:34 -07:00
Eric House
b0a4d529a5 do copy in a Runnable so selection clearing works as with everything
else; make not clearing selection the default since it's more common.
2013-10-25 07:38:09 -07:00
Eric House
3067b5f9c1 make menu id names more consistent 2013-10-25 07:15:43 -07:00
Eric House
94e7bebc26 call super with unknown menuitem rather than assert.fail()ing -- which
I've seen.
2013-10-25 06:17:22 -07:00
Eric House
521f0e3cf3 more tweaks, e.g. name the group that's preventing deletion, and
select newly created game copy
2013-10-24 19:58:21 -07:00
Eric House
73e1ac0a93 make newFrom highlight the new game; make reset preserve the selection 2013-10-24 19:20:20 -07:00
Eric House
33252c929c fix showNotAgainDlgThen(): when the pref is set to skip the hint, we
still can't call the callback directly because then
showNotAgainDlgThen() is synchronous only in that case.  For
consistency, post the callback call to a handler.
2013-10-24 19:18:42 -07:00
Eric House
266cd6fe85 add newbie hint for new back-button-clear-selection behavior 2013-10-24 18:51:55 -07:00
Eric House
788542c874 When games moved, the destination group is opened and the games that
were moved stay selected.
2013-10-23 20:45:14 -07:00
Eric House
8f8911c7d1 add feature controlled by "debug features" preference, to add rowids
to the list of game properties that can be part of the game's summary
display.
2013-10-23 20:26:19 -07:00
Eric House
0a5e891d5e for deletes, don't clear selection until after it's confirmed and
finished.
2013-10-23 19:29:32 -07:00
Eric House
e6860a734c don't clear selection after moving a group up or down (first of
several cases where we want to preserve)
2013-10-23 19:20:12 -07:00
Eric House
77d38fe230 set selected when creating group header nodes, fixing problem where
they stop showing as selected when other nodes are expanded or
contracted (which winds up reallocating all group nodes).
2013-10-23 19:16:55 -07:00
Eric House
ddb64d3dc9 fix NPE (possible race condition) 2013-10-23 08:01:11 -07:00
Eric House
ea4a2ea609 support reset of multiple games 2013-10-23 07:56:36 -07:00
Eric House
76bbdafadd add varargs option to another showConfirmThen variant 2013-10-23 07:55:59 -07:00
Eric House
6759a5af95 support moving multiple groups 2013-10-23 07:45:57 -07:00
Eric House
ab3209ca70 When there's a selection change title bar text to show count 2013-10-23 07:15:09 -07:00
Eric House
2c63be81e8 don't delete selected groups if one is the default 2013-10-23 06:46:33 -07:00
Eric House
bf15f12fe4 shorten a couple of variable names 2013-10-23 06:38:37 -07:00
Eric House
5658d9c3ae make New From create dup in same group as source game 2013-10-23 06:31:03 -07:00
Eric House
001445435b fix formatting 2013-10-23 06:18:43 -07:00
Eric House
3af3e4052f rename method 2013-10-22 08:02:38 -07:00
Eric House
9ed1c21cf8 honor selected group when creating net and sms games too 2013-10-22 07:40:46 -07:00
Eric House
9997c43298 start new groups out expanded 2013-10-22 07:06:54 -07:00
Eric House
8c5cd9ebe3 store selected groups by id rather than position, fixing problems like
clearing the selection after moving a group
2013-10-22 07:02:49 -07:00
Eric House
1bb0c49c71 assert that we don't use an unprepared menu. 2013-10-21 20:44:47 -07:00
Eric House
1b3c8ed661 ExpiringDelegate rather than ExpiringTextView needs to draw selected
state so can coordinate with expiring state representation.
2013-10-21 07:46:58 -07:00
Eric House
7a4d3093a1 on ICS+, onPrepareOptionsMenu can get called several times while
adjusting selections, so just bail when they're in an incomplete state.
2013-10-21 07:43:31 -07:00
Eric House
a38370c2f5 fix so groups correctly redraw unselected on ICS+. TODO: integrate
with the expiring stuff.
2013-10-21 06:29:02 -07:00
Eric House
b9afc47a25 placeholder icons for up and down, and fix to show only when there's room to move 2013-10-19 22:09:07 -07:00
Eric House
93425fe1e7 snapshot: fix crash on ICS; create game in selected group rather than
default (probably works local games only); etc.
2013-10-19 21:58:44 -07:00
Eric House
7712ee15e3 Clear selections after every menuitem call. Since that means the
selection's not available after a confirm dialog, modify
showConfirmThen() to take optional params like showNotAgainDlgThen(),
and make deleting games use it.
2013-10-19 10:12:57 -07:00
Eric House
df48c5d142 rename ivar 2013-10-19 10:07:03 -07:00
Eric House
07bfc3de37 snapshot: handle more menus. (Add game seems broken, though) 2013-10-18 21:37:13 -07:00
Eric House
4fe402e636 pass parent, not self 2013-10-18 21:33:33 -07:00
Eric House
43e69c7627 make group head view selectable, and separate group and game selection
so that only one type can be selected at once.  Combine all three
menus into one, but only enable subsets equivalent to the old menus
depending on what's selected.  Snapshot: menus pretty much don't work.
2013-10-18 20:40:20 -07:00
Eric House
9fe34e4183 Merge branch 'from_android_beta_69' into android_branch 2013-10-17 06:31:17 -07:00
Eric House
055b4ce04e don't try to hide whole submenu -- crashes on 2.3 devices 2013-10-17 06:12:37 -07:00
Eric House
5979566772 hide title bar by default for pre-ICS devices but not for those where
I'm using the action bar.
2013-10-17 06:12:04 -07:00
Eric House
1455c448c1 fix formatting 2013-10-16 21:04:30 -07:00
Eric House
2a01d25a29 fix NPE: update menu after deleting games 2013-10-16 21:03:19 -07:00
Eric House
85382c982c remove words from main games list. People don't read them, and now
there's a '+' in the menubar.
2013-10-16 08:13:18 -07:00
Eric House
f4160c178d hide Add button/menuitem when there's a selection 2013-10-16 07:36:36 -07:00
Eric House
9d6facce84 name the number of selected games in delete confirm dialog 2013-10-16 07:21:34 -07:00
Eric House
b6aa0e19a6 tweak text 2013-10-16 06:20:10 -07:00
Eric House
dab8ba88e5 use darker selection color from alarm clock app, which has a similar dark theme. 2013-10-16 06:20:01 -07:00
Eric House
7fd535b141 tap on selected item deselects rather than opening game 2013-10-16 06:13:10 -07:00
Eric House
9217eb71dd move config into actionbar from context menu, deprecating it there. 2013-10-15 22:06:29 -07:00
Eric House
bfea8dad49 fix NPE. I think it's a bug that null appears there, but better not to
crash.
2013-10-15 22:03:14 -07:00
Eric House
44bae9246b use enum instead of a bunch of constants 2013-10-15 21:17:34 -07:00
Eric House
f30203bb22 fix NPE when choosing not to see new hint dialog again 2013-10-15 21:15:44 -07:00
Eric House
27fa9bf203 deprecate delete context menu item 2013-10-15 19:14:49 -07:00
Eric House
4bc554bc40 use new params-passing DlgDelegate to add hint about new selecting
feature.
2013-10-15 19:04:58 -07:00
Eric House
2ec0a7ba8d new param to interface to allow passing closure to delayed dialog
handling.  Unused, so no behavior change yet.
2013-10-15 18:48:02 -07:00
Eric House
8816e590f2 copy gmail app's selection color 2013-10-14 19:01:51 -07:00
Eric House
44b9afe709 reuse code at cost of some extra allocs 2013-10-14 07:54:19 -07:00
Eric House
2f0f4996ac don't persist selection: goal is that it remains only while the
GamesList activity is frontmost within the app (including if app
itself is backgrounded); clear selection on back button (copying
gmail); be more effecient getting multiple child views.
2013-10-14 07:50:42 -07:00
Eric House
cc39953358 2013-10-14 06:54:43 -07:00
Eric House
45c632b735 deselect items inside collapsing group 2013-10-14 06:54:02 -07:00
Eric House
ddb87516ab don't turn on selection if already on (fixes Assertion) 2013-10-13 21:39:13 -07:00
Eric House
f305cbb9fe On resume of GamesList, remove from selected set any game that no
longer exists.
2013-10-13 21:26:59 -07:00
Eric House
a6d8806a7c change button text to match description 2013-10-13 21:24:55 -07:00
Eric House
938140a2c4 use custom color for game selection 2013-10-13 20:59:22 -07:00
Eric House
ac229e4ae7 implement delete of selected games with confirmation 2013-10-13 20:33:55 -07:00
Eric House
e7a23afc4a add delete item to menu/actionbar, visible only if number of selected
games > 0
2013-10-13 20:15:51 -07:00
Eric House
1d0ccf97af copy in change to select games in games list and to remember which are
selected.
2013-10-13 20:03:52 -07:00
Eric House
5f177ac62f remove logging 2013-10-11 22:30:13 -07:00
Eric House
7dfc800fcb reregister using GCM id if it's changed (or been received) since last registered 2013-10-11 21:42:34 -07:00
Eric House
512c080634 don't try to register more than once per 10 seconds. I hope this
fixes the two-packet-in-a-row I'm seeing on the relay.
2013-10-11 20:53:04 -07:00
Eric House
9a8ed72ea1 when new GCM ID is received, force re-register. 2013-10-11 07:51:10 -07:00
Eric House
253073efc5 cleanup and rename variable 2013-10-09 07:35:21 -07:00
Eric House
ec77be8a2a put the pass/turn done menuitem in the action bar as a first cut 2013-10-01 07:50:01 -07:00
Eric House
c294ad45cf don't recomment tapping the pts area of tray when it's not visible 2013-10-01 07:50:01 -07:00
Eric House
4abc9623f9 add invalidateOptionsMenuIf(), for working with action bar in a
safe-before-sdk-11 way
2013-10-01 07:50:01 -07:00
Eric House
552fa28b39 export model_getNumTilesInTray() via jni 2013-09-30 21:59:12 -07:00
Eric House
fddd159e57 by default, don't hide the title bar 2013-09-30 21:58:17 -07:00
Eric House
6dcb08594e remove unused strings 2013-09-30 07:09:25 -07:00
Eric House
f3e41486ca handle mailto: url, and add one. Note that everything about the url
is ignored, just routes to existing Utils.email() method.
2013-09-30 07:09:25 -07:00
Eric House
c9daf91b06 remove excess logging 2013-09-23 07:19:53 -07:00
Eric House
74546d183f better log message 2013-09-23 07:00:20 -07:00
Eric House
8ab832a136 wrap a bunch of tcp-connection code in !XWApp.UDP_ENABLED so compiler
can make it go away.
2013-09-23 07:00:05 -07:00
Eric House
9d722e0b13 follow relay reg protocol change to always send relayID even if empty;
track whether current registration is good, but DON'T throw current
relayID away when gcm id changes, rather, reregister with same
relayID.
2013-09-20 05:35:08 -07:00
Eric House
3499af3ac4 fix reported NPE (by inspection, as I can't repro) 2013-09-14 21:22:06 -07:00
Eric House
91a0dc5ecd turn chat back on -- and make it configurable via a single property in
build.xml that's turned into both a -D option to the jni compiler and
a constant in the java world.
2013-09-11 22:18:00 -07:00
Eric House
91e78eccf9 make download progress determinate 2013-09-11 08:37:12 -07:00
Eric House
ae79da9842 Merge branch 'from_android_beta_65' into android_branch 2013-09-10 08:00:57 -07:00
Eric House
1669687f19 wrap a bit more chat code in test so java can leave it out 2013-09-09 19:31:17 -07:00
Eric House
a25d664eb5 Merge branch 'from_android_beta_65' into android_branch
Conflicts:
	xwords4/android/XWords4/res/raw/changes
	xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardActivity.java
2013-09-09 08:01:28 -07:00
Eric House
cf71479931 cleanup formatting 2013-09-09 07:42:27 -07:00
Eric House
4c36207822 comment out toast that's showing on every connection -- too annoying 2013-09-08 22:33:37 -07:00
Eric House
5d7cc9e9e8 disable chat, and include reason in change log 2013-09-08 19:09:49 -07:00
Eric House
1cf676e86b stop menu button (or "action bar overflow") from being invisible on
tablet devices.
2013-09-07 16:09:53 -07:00
Eric House
4ed9078f3f add new exception thrown when can't open game for rowid, and catch the
one place it seems to happen.
2013-09-07 16:09:53 -07:00
Eric House
de2c938f41 stop menu button (or "action bar overflow") from being invisible on
tablet devices.
2013-09-07 08:10:00 -07:00
Eric House
fdbdfa5911 add OS release number to reg data 2013-09-04 21:05:39 -07:00
Eric House
810dfac8b8 postpone packet creation and id assignment until send time so id can
be logged along with send.
2013-09-04 08:11:42 -07:00
Eric House
42a517b246 support UPGRADE message; don't queue KEEPALIVE packets when network is
down (as it is on Kindle when screen off)
2013-09-03 06:57:21 -07:00
Eric House
70fc4c448c print the exception's stack trace 2013-09-03 06:54:13 -07:00
Eric House
40215337c9 cleanup 2013-09-03 06:53:25 -07:00
Eric House
23bdec0ea1 Remove debug prefs checkboxes for ignoring gcm and using the udp relay
mechanism.  Replace with static finals with shipping settings.
2013-09-01 09:40:08 -07:00
Eric House
0003065571 handle dev (not game) messages arriving via gcm 2013-08-31 08:58:12 -07:00
Eric House
f6a91464ac don't update db unless value's changed 2013-08-31 07:59:58 -07:00
Eric House
593bb91ee6 saving last packet timestamp in onDestroy then reading in in onCreate
wasn't working because they're not always called in that order.  So
for now save every time we get a message.  Should be every time it
changes...
2013-08-31 07:59:58 -07:00
Eric House
7b9f6adf6d preserve most recent maxInterval rather than counting on getting it
from relay.
2013-08-31 07:59:58 -07:00
Eric House
3592c2a1ab add logging 2013-08-29 21:54:36 -07:00
Eric House
99ec44809a use random number rather than incrementing static int (which can be
reset) to keep Intents from being reused
2013-08-29 21:54:17 -07:00
Eric House
b6fd850d04 improve logging 2013-08-29 21:53:22 -07:00
Eric House
ad9615709e test whether gcm being ignored not when receiving messages but when
deciding whether to stay connected to relay.
2013-08-28 08:02:48 -07:00
Eric House
668cc27f35 lots of logging; handle GCM messages for device as well as for a
single game; tweak for more reliable connection or messages to help
diagnose.
2013-08-27 07:57:36 -07:00
Eric House
a7d5d261d3 replace static final ints with enum 2013-08-27 07:03:25 -07:00
Eric House
063b01d3d8 change most len-as-short+bytes strings to vli+bytes; add device model
to what's passed for device registration, and store it in a new column
in devices table.
2013-08-25 21:20:26 -07:00
Eric House
d10e9f6235 use vlis for acks in both directions 2013-08-25 16:59:07 -07:00
Eric House
47414beeb2 catch up with changes in udp proto: use vli for packet num in header. 2013-08-25 16:15:37 -07:00
Eric House
4be1653ab7 remove logging 2013-08-23 07:41:10 -07:00
Eric House
f728f7459b pass INITIAL_CLIENT_VERS and git version to relay 2013-08-20 08:42:41 -07:00
Eric House
a8d67830d8 add missing enum 2013-08-19 20:51:03 -07:00
Eric House
7bce97f78a post notification, not alert, on receipt of relay alert message 2013-08-19 07:02:03 -07:00
Eric House
31a3a593a4 handle alert command by posting message (if app's in foreground;
should otherwise post an intent...); remove some of excessive logging
2013-08-18 20:13:08 -07:00
Eric House
5412119a6f add hexDump (commented out) 2013-08-18 15:49:13 -07:00
Eric House
e776f7b230 comment out toast that's showing on every connection -- too annoying 2013-08-15 22:32:00 -07:00
Eric House
8c56f55445 track time since last game-related packet, not any packet from relay. 2013-08-15 22:32:00 -07:00
Eric House
10ef75113f factor common code 2013-08-15 22:32:00 -07:00
Eric House
652a8ec905 toward staying reachable as-if GCM were there: note whether GCM
working, and if so skip keeping the connection up.  But otherwise stay
reachable by relay for a week after last udp packet was received.
2013-08-12 08:24:52 -07:00
Eric House
09494dcf09 remove unused param 2013-08-12 08:15:55 -07:00
Eric House
0ba0530bf3 set global before informing of change so if there's a query result
will match what was sent
2013-08-12 08:13:58 -07:00
Eric House
a96c0c548f switch from static final ints to an enum; no other change. 2013-08-11 10:47:01 -07:00
Eric House
1d52a9afea add reset button to ConnStatusHandler on-click dialog that calls to
stubbed-out function in RelayService
2013-08-10 23:24:46 -07:00
Eric House
de1803c9dd cleanup: reduce number of params required 2013-08-10 17:36:37 -07:00
Eric House
758c6a6c5c add interface to ConnStatusHandler as part of moving UI-based response
into Activity.
2013-08-10 14:25:28 -07:00
Eric House
dbc1bb1cd5 use getHandler() 2013-08-10 08:54:51 -07:00
Eric House
6bb2a9bb9a fix crash upgrading from beta 30 (which is two years old!) 2013-08-07 23:52:37 -07:00
Eric House
d8e6979bcc cleanup: store db schema as arrays of arrays rather than arrays whose
odd- and even-indexed members have different roles.  Uses slightly
more memory but is better code.
2013-08-07 23:48:33 -07:00
Eric House
d00e9edf55 fix crash upgrading from beta 30 (which is two years old!) 2013-08-07 23:36:17 -07:00
Eric House
ed0c0fe3a5 add methods that don't require handler but use any set 2013-08-02 08:03:35 -07:00
Eric House
1e94e217b8 collapse catch statements since all do the same thing 2013-08-02 08:02:46 -07:00
Eric House
64b89536b0 Test whether game is on device before starting process of opening it.
Fixes problem caused by relay sending messages for games that have
been deleted.
2013-07-30 07:43:52 -07:00
Eric House
4ce2368e90 remove unused variable and functions that set it 2013-07-30 07:35:13 -07:00
Eric House
b40533230a fix OS warning by unregistering SMS receivers in onDestroy 2013-07-29 07:50:01 -07:00
Eric House
d8a4b5ce29 include udp maxInterval, the number of seconds the relay's configured
to assume an address is still good when it hasn't heard from it, in
reg response reply, send that reply always, and read and log the new
field on clients.  It will eventually be used to implement a
keepalive.
2013-07-29 07:27:30 -07:00
Eric House
27d9f3de45 Don't enable chat when more than 128 messages are in queue to prevent
an extremely unlikely cause of stalls -- and make tests trip over full
queues less often.
2013-07-18 07:37:45 -07:00
Eric House
bf39f9194c kill service after 3 minutes of no socket activity 2013-07-17 06:42:54 -07:00
Eric House
3d9539b42b don't stop comms before every save, but only when stopping 2013-07-16 08:06:23 -07:00
Eric House
403401745e network connection stuff must not be run on main/UI thread, so to
preserve socket connection completing before startup of read and write
threads, move it and start of write thread to beginning of read
thread.
2013-07-16 08:01:59 -07:00
Eric House
b7e00bfc0c log when unable open game based on rowid -- which may happen if
e.g. relay is sending packets to wrong device.
2013-07-16 07:56:56 -07:00
Eric House
cd728853b9 check for case where rowid doesn't exist (rather than NPE) 2013-07-15 07:51:15 -07:00
Eric House
a522266ce4 add message checksumming for android too by making it part of util
(compiled out by default)
2013-07-10 08:05:47 -07:00
Eric House
d50c808f96 Merge branch 'android_branch' into gtk_multigame
Conflicts:
	xwords4/android/XWords4/src/org/eehouse/android/xw4/DlgDelegate.java
	xwords4/common/comms.c
	xwords4/linux/cursesmain.c
	xwords4/linux/cursesmain.h
	xwords4/linux/gtkmain.c
	xwords4/linux/gtkmain.h
	xwords4/linux/linuxmain.c
	xwords4/linux/main.h
	xwords4/linux/scripts/discon_ok2.sh
	xwords4/relay/xwrelay.cpp

(Note: The curses app crashes on exit with mempool assertions, but that's a problem before the merge.)
2013-07-09 07:18:00 -07:00
Eric House
008cce8f37 Revert "pass additional param into java world so don't show toast every time connect to relay"
This reverts commit e9615cb154.
2013-07-08 06:30:26 -07:00
Eric House
e9615cb154 pass additional param into java world so don't show toast every time connect to relay 2013-07-07 13:31:49 -07:00
Eric House
2c5ac1c293 remove excess logging 2013-07-07 13:07:02 -07:00
Eric House
ed1e2a0812 fix formatting -- no code change 2013-06-05 21:14:51 -07:00
Eric House
00be532c96 fix formatting -- no code change 2013-06-05 21:11:37 -07:00
Eric House
6a9c0bf5d4 up version strings for next beta 2013-06-05 20:56:59 -07:00
Eric House
6b2ec193c2 cleanup 2013-06-05 08:04:00 -07:00
Eric House
280154a12c fix bad message when dict deleted by using the right rowid variable -- duh. 2013-06-05 08:03:13 -07:00
Eric House
c6d06e5fa4 bring up new popup on tap rather than long-tap of browser button to
make it easier to discover.  Long-tap now opens the wordlist directly.
2013-06-05 06:59:08 -07:00
Eric House
bb130a9b9f new feature: long-click on wordlist button in BoardActivity brings up
a popup of all wordlists so you can browse one that's not in use,
e.g. to see if a word's legal in a larger wordlist.  Uses PopupMenu
class that was introduced in API 11, so 11's the target now and the
interface trick is used to prevent crashing on older devices (which
get a "needs newer Android" alert.)
2013-06-04 07:29:40 -07:00
Eric House
c32df1a487 use alpha to dim pending score rather than mucking with the rgb values 2013-06-01 08:10:03 -07:00
Eric House
9d40930fff pass new param into java, and when it's not the player's turn draw
pending points with his color at half-intensity.
2013-05-31 07:40:42 -07:00
Eric House
a1b6641067 catch and ignore exception from malformed user-provided url 2013-05-24 21:17:22 -07:00
Eric House
f4c18a78ac clear game-launched flag in onNewIntent so that one game can replace
another via a Notification- or other-sourced Intent
2013-05-23 07:51:03 -07:00
Eric House
6c7cf1fa97 fix bug where two quick taps on a game will launch two copies (or
crash a slower device) by tracking whether an open's in progress
2013-05-23 06:48:40 -07:00
Eric House
cc2ecdc5b2 two post-conflicted-merge changes git didn't pick up for some reason (emacs?) 2013-05-22 07:03:08 -07:00
Eric House
31c443e4b1 Merge branch 'android_branch' into gtk_multigame
Conflicts:
	xwords4/android/XWords4/src/org/eehouse/android/xw4/GCMIntentService.java
	xwords4/android/XWords4/src/org/eehouse/android/xw4/RelayService.java
2013-05-22 07:01:08 -07:00
Eric House
2e30ccd4c6 expect array of message bodies rather than just one 2013-05-22 06:45:34 -07:00
Eric House
120748416b handle GCM messages containing data, changing clientVers so server
knows we can.  And send to relay in AsyncTask rather than UI thread.
2013-05-22 06:44:01 -07:00
Eric House
076b1b7543 remove logging 2013-05-22 06:44:01 -07:00
Eric House
7d8cddb31f Merge branch 'android_branch' into gtk_multigame
Conflicts:
	xwords4/linux/gtkmain.c
	xwords4/linux/linuxmain.c
	xwords4/relay/xwrelay.cpp
2013-05-08 07:37:55 -07:00
Eric House
5a026ffda3 merge android_wordlists (local branch) 2013-05-01 06:39:31 -07:00
Eric House
4e2f5b3b14 add (commented-out) debug function to print list of extras in an intent 2013-05-01 06:26:02 -07:00
Eric House
a62f9d4097 Fix but with missing-dict SMS invites: add missing intent extra. 2013-04-30 21:20:59 -07:00
Eric House
c8f447171a Stop SMS service if play via SMS is disabled by user 2013-04-29 07:40:42 -07:00
Eric House
0d260155ee Revert "On some devices a downloaded wordlist shows up twice, once in Internal"
This reverts commit 685971532a.

No way to test this right now....
2013-04-18 19:12:49 -07:00
Eric House
685971532a On some devices a downloaded wordlist shows up twice, once in Internal
and again in Downloads.  I assume that's because the two directories
are the same, so fix by tracking directories that have been checked
and not checking the same twice.
2013-04-16 06:56:53 -07:00
Eric House
cae631eeb0 handle synonyms in non-special tiles for Android: wordlists load and
display, and searching using lower case works.  Specials (e.g. Catalan
changes) not yet supported.
2013-04-14 11:58:11 -07:00
Eric House
51d72447c6 fix crash when wordlist winds up in downloads dir (for reasons I don't
understand: I can't reproduce the crash but for at least one
correspondent it happens every time.)
2013-04-06 08:05:39 -07:00
Eric House
a18fb62b0f fix dialog not having custom OK button by not ignoring the param passed in. 2013-01-31 06:59:42 -08:00
Eric House
bf479c4334 Merge branch 'android_branch' into gtk_multigame 2013-01-30 08:03:48 -08:00
Eric House
66a00bd76e make DlgState Parcelable rather than Serializable to work around what
seems to be a bug in the Blaze's OS.  (Requires that it be a
standalone class.)
2013-01-30 07:58:37 -08:00
Eric House
5e7fd39d66 always remove dialog state so we don't get confused 2013-01-29 21:59:42 -08:00
Eric House
0dc3856250 set initial rowID based on clock to avoid duplicates after an
uninstall/reinstall.
2013-01-29 19:02:53 -08:00
Eric House
d154efa441 rowid needs to be autoincrement to be useful as a token with new relay
protocol.  And you can't make it autoincrement except when creating a
table.  So add new column set equal to current rowid, then create a
new table and copy the old data into it.
2013-01-29 19:01:00 -08:00
Eric House
d88f66a890 record experiment with serialization -- no code change. 2013-01-29 18:57:03 -08:00
Eric House
d5842e79c2 use the new ANON devid type 2013-01-29 18:36:19 -08:00
Eric House
f3a063698c set initial rowID based on clock to avoid duplicates after an
uninstall/reinstall.
2013-01-29 08:01:14 -08:00
Eric House
1546b15997 rowid needs to be autoincrement to be useful as a token with new relay
protocol.  And you can't make it autoincrement except when creating a
table.  So add new column set equal to current rowid, then create a
new table and copy the old data into it.
2013-01-28 06:51:39 -08:00
Eric House
d1621c8d4b track and log all packetIDs and acks, including number (but not type)
of unacked packets.
2013-01-27 21:29:36 -08:00
Eric House
4417591b06 debug pref to disable GCM so new stuff can be tested on-device 2013-01-25 07:17:00 -08:00
Eric House
83441c65ef debug pref to disable GCM so new stuff can be tested on-device 2013-01-25 07:16:38 -08:00
Eric House
f91af77438 always try starting UDP threads in case Service has been stopped;
implement transportSend in RelayMsgSink since relay-connection packets
need it.
2013-01-25 06:22:37 -08:00
Eric House
c8b3050c8d fix duplicate key that was getting lots of extra games created 2013-01-25 06:20:32 -08:00
Eric House
da4d841220 use per-device UDP rather than per-board TCP to communicate with
relay, including latest UDP protocol and acking changes.  Basically
works (in emulator at least) but there are problems especially with
initial game creation.
2013-01-23 07:46:13 -08:00
Eric House
a3e4e31205 remove logging 2013-01-23 07:28:25 -08:00
Eric House
a6b3cb8cbe add new param JNIThread requires 2013-01-20 21:34:28 -08:00
Eric House
de7c29dcc7 add comms_stop() to jni and use it 2013-01-20 21:33:35 -08:00
Eric House
132a495c4f add explanatory comment 2013-01-20 21:32:19 -08:00
Eric House
3df0484e6a get maintenance mode message into an alert -- and create a new common
superclass for Service subclasses to reuse some code.
2013-01-20 16:07:38 -08:00
Eric House
fd2f4309f4 beginning of android changes to talk udp to the relay: sufficient to
get back (and log, not display) a message when the relay is in
maintenance mode.
2013-01-20 15:29:51 -08:00
Eric House
360602b3a0 fix compile failure: never meant to check this change in. 2013-01-19 16:02:58 -08:00
Eric House
4af30c534c snapshot. New game button works and game gets saved in DB. Next: display and open from DB. 2013-01-05 16:08:19 -08:00
Eric House
05cee5ce09 further work supporting simultaneous dialogs: use
bundle.get/putSerializable() to save/restore dialog state
2013-01-01 22:27:14 -08:00
Eric House
af406d92dc Handle multiple dialogs at once: save dialog state by dialog ID (ok
since the OS won't track more than one at a time with the same ID) and
look it up that way when needed.  Get rid of onPrepareDialog() (and in
all my Activity subclasses) since it's now a requirement that all
DlgDelegate-managed dialogs remove themselves from the Activity on
dismissal so that onCreateDialog will always get called and
onPrepareDialog not be needed.
2013-01-01 21:45:37 -08:00
Eric House
8b2712bd9e always remove dialog on dismissal since each must have its on-dismiss
handler called with its own state.  Fixes assertion failure that was
happening the second time a dialog was used.  Next: find a
reproducible case where two dialogs want to be created at the same
time.
2012-12-31 07:08:41 -08:00
Eric House
d1941090c5 Merge branch 'android_branch' into fix_dlgdelegate 2012-12-31 06:25:49 -08:00
Eric House
049b3389a6 turn DEBUG back on 2012-12-29 18:49:13 -08:00
Eric House
bbf9e8e0df tweaks suggested by code review 2012-12-29 13:22:00 -08:00
Eric House
1faf60f667 move updateRow back where it was (prior to some merge); no code change 2012-12-29 12:50:02 -08:00
Eric House
e58e520f70 fix name/rename group dialog title 2012-12-29 11:53:18 -08:00
Eric House
498ca99020 deal with added groups too, and better with removed groups. 2012-12-29 11:36:51 -08:00
Eric House
8c4b878e21 preserve order of groups when removing one by removing it from list
rather than allowing list to be regenerated.
2012-12-29 09:35:44 -08:00
Eric House
674b6d3e8e don't let new group dialog present the last name chosen as default name 2012-12-29 09:18:17 -08:00
Eric House
4d07046a99 make static GamesListItem method responsible for providing new instances. 2012-12-28 20:00:46 -08:00
Eric House
21e572acfc Revert "use WeakReference to cache GameListItems and to inval them"
(Reusing Views this way seems to cause the occasional failure to recognize a tap-on-item bug.)

This reverts commit edd712ac16.
2012-12-28 10:06:16 -08:00
Eric House
edd712ac16 use WeakReference to cache GameListItems and to inval them 2012-12-28 09:50:33 -08:00
Eric House
fb575949ac order games within group the same way all games used to be ordered,
and get rid of the old all-games-listing code since it's no longer
used.
2012-12-27 20:50:37 -08:00
Eric House
a6586b6131 docs say not to call cursor.close -- so don't. 2012-12-27 20:38:31 -08:00
Eric House
8bba5d6106 Revert "add POSITION column to groups table, unused as yet"
This reverts commit 7be6a182f0.
2012-12-26 19:35:21 -08:00
Eric House
68026fef3e disable (but don't hide) group context menus that can't do anything. 2012-12-26 19:31:24 -08:00
Eric House
0d9f1a3ba7 add move-up and move-down menuitems so group order can be controlled
by user.  Store position as array of rowids in preferences, and make
game info hashed by rowid rather than name.
2012-12-26 18:55:15 -08:00
Eric House
0a7fcb2de4 remove deleteAll menuitem 2012-12-22 23:21:01 -08:00
Eric House
7be6a182f0 add POSITION column to groups table, unused as yet 2012-12-22 22:59:08 -08:00
Eric House
110df3c1ba Merge branch 'android_branch' into fix_dlgdelegate 2012-12-21 23:03:22 -08:00
Eric House
a594a77673 Merge branch 'android_branch' into android_groups 2012-12-21 18:06:48 -08:00
Eric House
2461b526a5 move check for updates into async task 2012-12-21 18:06:27 -08:00
Eric House
e8c3c304ab Fix so when child is invalidated its group/parent also is. Now when
an invisible child gets a network game message that changes its expiry
rendering and it's the one the group is showing, the group will follow.
2012-12-21 17:31:37 -08:00
Eric House
d33f44ea24 Merge branch 'android_branch' into android_groups 2012-12-21 17:15:30 -08:00
Eric House
1998da45de don't save game when it hasn't changed -- when saved bytes are
identical with those we started with.
2012-12-21 17:14:55 -08:00
Eric House
2375f86f61 improve move-to-group dialog: add title and disabled Move button when
radio is current group.
2012-12-21 17:06:04 -08:00
Eric House
a3b24be661 clear background drawable when no longer a local turn 2012-12-21 06:20:58 -08:00
Eric House
1743382e1f cleanup: combine files that belong together 2012-12-20 21:55:57 -08:00
Eric House
7f9898f317 don't include expiry in group header when expanded 2012-12-19 20:49:02 -08:00
Eric House
ed0bb5b31e minimum to get game list group headers reflecting the most urgent move
expiry info of a contained game: local if there is one, otherwise
remote.  Still need to hide it when expanded, update, etc.
2012-12-19 20:45:58 -08:00
Eric House
7e302aae69 always show game count 2012-12-18 07:57:14 -08:00
Eric House
6690fdf122 derive from XWExpandableListActivity since it exists now 2012-12-18 07:56:48 -08:00
Eric House
9cbd76aae7 more cleanup; log info toward reuse of list items (looks unlikely) 2012-12-18 07:40:48 -08:00
Eric House
d583ec139d move all existing games into the curGames group 2012-12-18 07:08:57 -08:00
Eric House
24bddd1ff7 cleanup 2012-12-18 06:52:13 -08:00
Eric House
983a560294 expand groups in onCreate() 2012-12-18 06:51:43 -08:00
Eric House
3a1b39f827 more of the (conflicted) merge from android_branch. These may be
changes I need to make to get what git produced to compile and so not
what it included in the previous commit.
2012-12-18 06:36:30 -08:00
Eric House
8a58492389 Merge branch 'android_branch' into android_groups
Conflicts:
	xwords4/android/XWords4/res/values/strings.xml
	xwords4/android/XWords4/src/org/eehouse/android/xw4/DBUtils.java
	xwords4/android/XWords4/src/org/eehouse/android/xw4/GameListAdapter.java
	xwords4/android/XWords4/src/org/eehouse/android/xw4/GamesList.java
	xwords4/android/XWords4/src/org/eehouse/android/xw4/XWApp.java
2012-12-18 06:35:07 -08:00
Eric House
8cb9d3d66b turn debug back on 2012-12-18 05:56:14 -08:00
Eric House
6988b14247 no need for redraw in onWindowFocusChanged 2012-12-18 05:40:25 -08:00
Eric House
9d7d0aca2b cleanup: logging and unused imports 2012-12-16 20:14:15 -08:00
Eric House
e38b99c0c8 set DEBUG to false for release 2012-12-16 15:14:04 -08:00
Eric House
3c4f266b8f work around problems locating GameListItems when it's time to
invalidate them by adding static list of those needing invalidating
and checking it in a new onDraw override.
2012-12-14 18:46:54 -08:00
Eric House
646ec65d66 wrap elapsed time logging in its own debug flag and turn off. 2012-12-14 18:23:33 -08:00
Eric House
8125c451cd in GamesList, save rowid of launched game and inval it afterwards so
scores etc. get updated.
2012-12-14 07:26:13 -08:00
Eric House
028899a9c4 no need to set action on local intent 2012-12-14 07:24:26 -08:00
Eric House
322a65ee41 in several places where lock() was being called without a timeout, add
one, and fail gracefully when a timeout occurs.
2012-12-13 20:22:11 -08:00
Eric House
85953c64dd move GameLock into its own file 2012-12-13 18:47:55 -08:00
Eric House
6060d5e8bd Fix hangs when receiving relay messages in background for open game by
adding a static feedMessages method like the one used by SMS and BT
games.  For that to work, rowid and relayid need to be fetched and
tracked together -- so do that in RelayService.
2012-12-13 06:57:12 -08:00
Eric House
91ac04b896 remove logging 2012-12-13 06:32:57 -08:00
Eric House
b71046e5aa lock, rather than tryLock, game when feeding it messages. Otherwise
messages are dropped e.g. when UI's loading a summary in GameListItem.
2012-12-12 07:13:25 -08:00
Eric House
db8364c285 return empty array rather than null when query succeeds but produces
no result.
2012-12-12 06:43:18 -08:00
Eric House
69f868722f cancel any notification for game when resetting it 2012-12-12 06:41:56 -08:00
Eric House
575d5e9745 reduce time we'll wait for a summary to unlock when loading it for games list. 2012-12-11 19:11:23 -08:00
Eric House
01d17fe0c5 redraw full list after resetting a game in case position changes 2012-12-11 19:10:05 -08:00
Eric House
7246ae28c6 clear the cache after loading a new DB so will redraw correctly in list 2012-12-11 19:09:33 -08:00
Eric House
b2bd6ce662 add and use preference for square rack tiles, removing code that alternated for testing purposes. 2012-12-11 07:25:43 -08:00
Eric House
877225f59d rename interface; no code change 2012-12-10 18:20:44 -08:00
Eric House
f599ca8be4 make tiles square based on rowid so people can see both 2012-12-10 07:54:42 -08:00
Eric House
d820554ffb change game list item strategy since it turns out adapter's findView()
doesn't pass in the previous representation of a given item for
recycling: move async loading of summary into GameListItem class, and
use getChildAt() to invalidate a single list (rather than reloading
the whole list) whereever possible.  Still need to dump the list
whenever the number of items changes since we're depending on DBUtils
to determine the order and have no way to reshuffle existing items.
2012-12-10 07:48:15 -08:00
Eric House
1bc8070bb1 disable Rematch button (for now) 2012-12-10 07:11:13 -08:00
Eric House
3a45db66cf cache array of rowids, and clear cache appropriately, rather than
query DB for all games every time.
2012-12-08 20:28:11 -08:00
Eric House
ce803a928c pass summary rather than have callee refetch it 2012-12-08 08:55:45 -08:00
Eric House
7efbd2697d rewrite list item logic. Use a single custom LinearLayout subclass
for both the loading and loaded phases, toggling its state once the
data's available.  Reuse it: pay attention to what's passed into
getView and only allocate when there's no existing View to reuse.
Stop caching Views, as that defeats Android list logic that might
limit in-memory representation to the subset that's visible on-screen,
instead tracking a set of rowids whose data is known to be good as a
way of quickly drawing when there's a refresh.
2012-12-08 08:47:53 -08:00
Eric House
93bf2a1b3e hard-code tiles drawn nearly-square, just to see what it looks like.
Making them exactly square would probably take a new jni call.  And if
I ship this it needs to be optional, controlled by a preference.
2012-12-05 19:15:20 -08:00
Eric House
e719c6e61d don't crash if for some reason json file can't be written 2012-12-05 08:15:48 -08:00
Eric House
6789a64b68 reduce redundant code (hopefully without adding too much confusion) 2012-12-05 08:14:55 -08:00
Eric House
af853098f2 use preferred SDK-8 API to look for downloads directory, and wrap it
in an interface loaded only when SDK>=8 to avoid load-time crash on
older devices.
2012-12-05 07:32:11 -08:00
Eric House
a035ef5623 attachment can come in as file or content scheme 2012-12-05 06:52:10 -08:00
Eric House
ac8c229e75 Fix attachments, at least for the one phone I've tested on. Requires
K-9 mail (Gmail doesn't allow opening attachments).  Trick was to drop
the file extension, since if present that seems to come ahead of mime
type for filtering.
2012-12-03 23:10:31 -08:00
Eric House
922f4a22f4 remove unneeded variable 2012-12-03 23:07:14 -08:00
Eric House
2c71c8425f pass the rematch request off to GamesList where it can create new
games without interference from locked current game.  Handle
standalone case by cloning and launching: easy.  Networked games will
be harder.
2012-12-03 08:30:29 -08:00
Eric House
c041792f83 move methods toward better encapsualtion (no behavior change) 2012-12-03 08:03:00 -08:00
Eric House
ad606cdec0 trying to figure out why games list is occasionally redrawing itself
all the time: add logging that activated only when XWApp's DEBUG flag
is set, and turn that flag on.  The latter change should be reversed
before the next release.
2012-12-03 06:53:15 -08:00
Eric House
da9c7a1afd comment out unused column 2012-12-02 21:39:33 -08:00
Eric House
bda0d51c7f add Rematch button to game over dialog -- which only puts up notImpl
toast so far.
2012-12-02 18:45:35 -08:00
Eric House
7621b909c3 hide a couple of message-related menuitems for standalone games 2012-12-02 18:19:52 -08:00
Eric House
9eea15185c set m_gameOver when it's first known. 2012-12-02 18:09:15 -08:00
Eric House
e5bb360537 When a game is over, show "Game over" dialog containing score summary
every time it's opened.  This is a quick way to get around it being a
bit hard to tell a board's in that state.
2012-12-02 18:02:27 -08:00
Eric House
0d0146cb17 additional changes required post-merge to compile 2012-12-01 10:53:55 -08:00
Eric House
c4e638bd84 Merge branch 'android_branch' into android_groups
Conflicts:
	xwords4/android/XWords4/res/values/strings.xml
	xwords4/android/XWords4/src/org/eehouse/android/xw4/DBHelper.java
	xwords4/android/XWords4/src/org/eehouse/android/xw4/GamesList.java
	xwords4/android/XWords4/src/org/eehouse/android/xw4/XWApp.java
2012-12-01 10:52:42 -08:00
Eric House
0394579b7c cleanup (and use factored-out updateRow a couple of additional places) 2012-11-30 19:58:23 -08:00
Eric House
13b7877a80 put name of file being downloaded in progress dialog 2012-11-30 08:08:45 -08:00
Eric House
74fec9d3d3 disable attachments as part of invitations -- for now. 2012-11-30 07:50:10 -08:00
Eric House
8b5ec28120 SMS play logs too much: remove non-error logging. 2012-11-30 07:22:16 -08:00
Eric House
32d7daf2b5 warn about duplicate games not just when there's exactly one, and
include the most recent create time in the warning.
2012-11-30 07:13:00 -08:00
Eric House
95062fb967 log missing dicts 2012-11-30 07:12:07 -08:00
Eric House
ab0fb918ee open json attachment and from it create a new game. Works, but there
are enough problems with attachements I may turn them off.
2012-11-30 06:21:18 -08:00
Eric House
f4dc8a6b41 snapshot of code and intent filter that gets an attachment into an
email and launches Crosswords when the attachment is opened.
Shouldn't, or at least shouldn't launch ONLY Crosswords, as the mime
type's not in the filter, but it does.
2012-11-29 08:19:07 -08:00
Eric House
9f5a64ee50 don't try to use null gamePtr. Happens when relay moves arrive for a
game whose dict has been deleted.
2012-11-29 06:20:45 -08:00
Eric House
bffb231d13 improve download-or-cancel messages 2012-11-28 21:07:03 -08:00
Eric House
8250447eca launch game after successfully downloading dict it's missing 2012-11-28 20:41:08 -08:00
Eric House
4bae56e631 use rowid as notification id for all types of games, and cancel when
games deleted.
2012-11-28 19:32:50 -08:00
Eric House
19333e33ac fix confirmation of duplicate game from invite. Along the way
dramatically simplify how new game intents are passed around.
2012-11-28 19:17:29 -08:00
Eric House
6f620ebc44 move prefix into resources two since it's repeated. 2012-11-28 06:30:35 -08:00
Eric House
baa790a8c3 remove debugging code; make Intent content details private to class. 2012-11-28 06:06:42 -08:00
Eric House
cd197e4530 use Class instance for synchronization of static methods rather than
creating an object only for that purpose.
2012-11-27 18:55:08 -08:00
Eric House
3cc92e99ca fix uri format error that was causing install to fail 2012-11-27 18:48:05 -08:00
Eric House
bf970b6dd9 remove some logging 2012-11-27 07:53:48 -08:00
Eric House
c39d434ffa add logging giving size and md5sum of downloaded .apk. 2012-11-27 07:22:03 -08:00
Eric House
441cc53740 Remove debug preference for setting host in invite emails, replacing
it with a string resource.  The value passed in invites must match the
string hard-coded in the AndroidManifest so there's no point in making
it runtime-configurable.
2012-11-27 07:04:47 -08:00
Eric House
30377908df Use the downloader with an infinite progress indicator instead of the
status-bar notifier (which is removed) for dict downloads.
2012-11-26 20:19:25 -08:00
Eric House
b433438022 add message via GCM to check for wordlist/app upgrades 2012-11-26 18:47:35 -08:00
Eric House
e590db5f3f merge in the db part of 82c39489f0
(android_groups branch, local only right now), but not the UI part
since it won't make the next release.
2012-11-26 08:05:05 -08:00
Eric House
a39cc44d56 Merge branch 'android_branch' into android_groups 2012-11-26 07:41:20 -08:00
Eric House
9130c8da50 download and install upgrade .apk files where possible. Download is
via the existing DictImportActivity, which should also be used for
dict upgrade downloads to keep the UI consistent.
2012-11-26 07:40:45 -08:00