Commit graph

2526 commits

Author SHA1 Message Date
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
ff3af7f095 add xml-non-strippable space between sentences 2012-12-29 07:47:12 -08:00
Eric House
c994b27c04 try grey background and italic text for list group views 2012-12-28 20:01:13 -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
3ce379588b indent game list items to make them easier to tell from group items 2012-12-22 22:54:10 -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
3436a71d65 new string for dialog title (forgot this last checkin) 2012-12-21 17:29:44 -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
db829337f5 up version strings etc. 2012-12-20 21:51:38 -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
51a5e80a26 mention attachment in invite email text 2012-12-16 15:13:36 -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
7a1de73fb7 remove unused file 2012-12-13 20:18:36 -08:00
Eric House
85953c64dd move GameLock into its own file 2012-12-13 18:47:55 -08:00
Eric House
f989dad63c tweak changed descriptions 2012-12-13 07:11:51 -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
eee954e705 list changes for next release 2012-12-11 19:15:15 -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
a640f9d97b up version number and string 2012-12-03 06:51:50 -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
795e05f544 update with changes and next steps 2012-11-30 19:57:46 -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
7c5a59beb3 remind self of Blaze's download directory 2012-11-27 18:31:14 -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
f3ecfa569a get rid of the second URL in invites that's meant for those without
the app installed.  It's confusing, especially in SMS case, and the
page they see when they don't have the app installed can explain how
to install it.
2012-11-27 07:02:44 -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
b1f54a67ed end path prefix with a /; otherwise Crosswords gets launched to browse
the wordlist directory.
2012-11-26 20:14:32 -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
Eric House
302ad04ef9 use recommended intent filtering to allow Crosswords to launch in
response to http URLs, removing need for custom scheme and one step
from the invitation process.
2012-11-26 05:41:42 -08:00
Eric House
6f3881d53d don't crash on malformed invite URL 2012-11-26 03:08:54 -08:00
Eric House
ac435b7857 Merge branch 'android_branch' into android_groups
Conflicts:
	xwords4/android/XWords4/src/org/eehouse/android/xw4/GamesList.java
2012-11-25 14:11:04 -08:00
Eric House
63b29a2cb2 Revert "add read-only debug prefs giving GCM and relay device IDs."
This reverts commit 5019d3960b.
2012-11-25 13:55:02 -08:00
Eric House
5019d3960b add read-only debug prefs giving GCM and relay device IDs. 2012-11-25 09:58:46 -08:00
Eric House
7d6e393007 use a different missing-dict explanation string when the name of the
inviter isn't known (relay case)
2012-11-25 09:58:14 -08:00
Eric House
2a1c028268 deal with case where relay invite arrives for a language that device
doesn't have support for.  Dictionary name is now included in the
invite, and if that's present offer to download it then launch game.
For previous versions that don't include the dict name, offer to
download from the language (though that isn't tested yet.)
2012-11-25 08:54:46 -08:00
Eric House
a3e0d0ca1e recover from situation where game is created in response to an
invitation for a lang for which it has no dicts installed.  Shouldn't
happen, but on relay still can.
2012-11-22 13:03:32 -08:00
Eric House
0bea58b128 make it possible to build without knowing the GCM sender ID. 2012-11-22 08:13:06 -08:00
Eric House
daf5a89a0e remove unused imports (no code change) 2012-11-21 21:49:42 -08:00
Eric House
dcf239ca48 add newGroup menu for when button's hidden; add deleteAll menuitem to
set of debug-features (but this should probably not ship until
deleting is changed.)
2012-11-21 06:17:09 -08:00
Eric House
cf88b60c4b make the two buttons fill the screen, and use newly created style
for new_games layout too.
2012-11-20 19:11:39 -08:00
Eric House
a199dd2b92 when deleting a group's games do as when they're deleted individually:
get the lock, tell the relay, and THEN remove from DB.
2012-11-20 19:03:39 -08:00
Eric House
3bff555bfd For move, make current group the default and warn whether there's only
one.
2012-11-20 18:34:26 -08:00
Eric House
19e7e27f1e fix so remembered expanded/contracted state is displayed 2012-11-20 07:40:33 -08:00
Eric House
fbfeae379d cache DB info on groups for better performance 2012-11-20 07:15:56 -08:00
Eric House
48dd3bb72e Merge branch 'android_branch' into android_groups 2012-11-20 07:02:27 -08:00
Eric House
04d839868d on launch to handle an invite for a game that seems to already exist,
instead launch that game -- for better feedback.
2012-11-20 06:24:23 -08:00
Eric House
b244adae1b fix transposed words 2012-11-20 06:22:29 -08:00
Eric House
f149391838 cleanup 2012-11-20 06:13:29 -08:00
Eric House
face24e915 make invite email text a bit easier to read 2012-11-20 06:10:57 -08:00
Eric House
cb70858583 up strings for next release (still a while out!) 2012-11-20 04:14:25 -08:00
Eric House
b827c82291 force refresh after delete 2012-11-19 21:23:19 -08:00
Eric House
be3cad96d7 tweak strings 2012-11-19 21:23:07 -08:00
Eric House
1994ea788e don't allow deleting default group. Wording needs fixing, or better
yet, replace the menuitem with greyed-out "is default group".  But
this works for now.
2012-11-19 19:28:26 -08:00
Eric House
82c39489f0 lots of changes toward grouping games in user-definable groups.
Creation and movement between work.  Deletion crashes.  Expansion
doesn't stick.  All's rough.
2012-11-19 07:41:15 -08:00
Eric House
2779139e75 add columns using data as well. Like pref commit, this does not change behavior. 2012-11-17 10:20:14 -08:00
Eric House
9ad41d5a3a use String[] data to build table-creation queries rather than huge
inline string concatenations.
2012-11-17 10:14:55 -08:00
Eric House
416db91312 experimental: always post notification on new moves received rather
than giving GamesList a chance to launch game directly.
2012-11-16 07:31:52 -08:00
Eric House
cefc13a2cd Docs say should allow GCM to reregister on app upgrade. And that the
registrar takes care of storing devid.  So app version when
registration arrives, and get from registrar except after an upgrade.
2012-11-15 21:44:56 -08:00
Eric House
9a4a8c7b26 use static to avoid querying OS for version over and over. 2012-11-15 21:41:51 -08:00
Eric House
f70a5bc6ee add getAppVersion() 2012-11-15 21:24:54 -08:00
Eric House
e1bc9876dd add to-do 2012-11-15 21:23:31 -08:00
Eric House
bda193029e add constructor in order to pass SENDER_ID to parent constructor,
as docs say to do
2012-11-15 21:14:45 -08:00
Eric House
f64de16ce3 catch and discard all exceptions that come when initing GCM. Fringe
devices may do anthing at that point.
2012-11-15 07:03:32 -08:00