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