Commit graph

10720 commits

Author SHA1 Message Date
Eric House
50f448bb1f fix to contact relay in foreground on Oreo+
Background still needs a lot of work.
2018-12-09 18:26:59 -08:00
Eric House
ff2192f659 fix path name string causing JNI crash on emulator
And catch NPE that also seems to be emulator-only
2018-12-09 18:26:59 -08:00
ssantos
73ac713b89
Translated using Weblate (Portuguese)
Currently translated at 52.7% (395 of 750 strings)
2018-12-01 21:08:47 +01:00
Eric House
9eec5c37ef fix path name string causing JNI crash on emulator 2018-11-29 09:30:14 -08:00
Eric House
91828cb851 add more google()
still trying to fix travis builds
2018-11-28 21:21:48 -08:00
Eric House
b2bf3a6e80 move google() above maven (to fix travis?) 2018-11-28 20:38:43 -08:00
Eric House
ce3cb62f02 add reversed version of btservice notification icon
For the Dbg variant to match its normal notification icon.
2018-11-28 19:35:24 -08:00
Eric House
fc699caaa8 ensure channel id always setup before use 2018-11-28 19:27:32 -08:00
Eric House
7eb278033a revert change setting notifiction priority low 2018-11-28 19:20:43 -08:00
ssantos
f8c79efc60
Translated using Weblate (German)
Currently translated at 99.7% (748 of 750 strings)
2018-11-27 23:07:31 +01:00
Eric House
843c95e7ae new icon for omnipresent BTService notification 2018-11-27 11:27:18 -08:00
Eric House
988ac55eaa tweak apk-cmp script 2018-11-27 10:06:38 -08:00
Eric House
0dbc976561 Merge branch 'android_branch' into making-it-work-with-api26 2018-11-24 13:19:34 -08:00
Eric House
88fe2739c1 fix crashes (NPE and RelayService trying to run in background)
Still need to figure out what RelayService does. It needn't run for long
except where GCM isn't present.
2018-11-24 13:04:14 -08:00
Eric House
eb6831ea12 add bt-in-background preference
And clear it from a button in the alert that's posted when the
foreground service notification is selected.
2018-11-23 09:47:18 -08:00
Eric House
f8e15bd3a0 add explanation for foreground service notification 2018-11-23 08:21:52 -08:00
Eric House
2ba5982ddf use foregroundService on devices that can handle it
And show the notification regardless. Tested only on pre-Oreo device so far.
2018-11-22 15:18:57 -08:00
Eric House
6177914213 add lifecycle lib (events only logged only so far) 2018-11-22 08:13:49 -08:00
ssantos
9a80bacf66
Translated using Weblate (Portuguese)
Currently translated at 52.1% (391 of 750 strings)
2018-11-19 08:07:10 +01:00
Israa Zamzami
3eba8312d4
Translated using Weblate (Arabic)
Currently translated at 12.0% (90 of 750 strings)
2018-11-14 20:07:08 +01:00
Israa Zamzami
1b6139721d
Added translation using Weblate (Arabic) 2018-11-13 19:05:27 +01:00
WaldiS
b49e1289db
Translated using Weblate (Polish)
Currently translated at 1.2% (9 of 750 strings)
2018-10-27 20:38:05 +02:00
WaldiS
cb97fc5796
Translated using Weblate (Polish)
Currently translated at 0.9% (7 of 750 strings)
2018-10-21 21:35:02 +02:00
Allan Nordhøy
68a705a0a3
Translated using Weblate (Norwegian Bokmål)
Currently translated at 86.0% (645 of 750 strings)
2018-10-03 11:32:31 +02:00
Allan Nordhøy
1a89b2eee1
Translated using Weblate (German)
Currently translated at 99.0% (743 of 750 strings)
2018-10-03 10:28:13 +02:00
Allan Nordhøy
9ed3239fe2
Translated using Weblate (Norwegian Bokmål)
Currently translated at 81.6% (612 of 750 strings)
2018-10-02 09:31:31 +02:00
Allan Nordhøy
d6468499a3
Translated using Weblate (Norwegian Bokmål)
Currently translated at 77.3% (580 of 750 strings)
2018-09-30 10:31:48 +02:00
Allan Nordhøy
5bf337dcde
Translated using Weblate (Norwegian Bokmål)
Currently translated at 57.4% (431 of 750 strings)
2018-09-25 06:33:14 +02:00
Eric House
dfcac132c8 up strings for new translations-only release 2018-09-22 14:21:04 -07:00
Eric House
6bafbecd75 toward service working on Oreo
Did a bunch of stuff to inherit from JobIntentService and use enqueue(),
but doesn't work yet. OS is unable to bind, with this error:
09-21 17:20:51.678  3050  3050 W JobServiceContext: Time-out while trying to bind 2edee28 #u0a277/1111 org.eehouse.android.xw4dbg/org.eehouse.android.xw4.BTService, dropping.
2018-09-22 09:22:37 -07:00
Eric House
24440230ba refactor so startService can change (no behavior change yet) 2018-09-21 15:21:04 -07:00
Eric House
dbbeeb7519 Merge branch 'android_translate' into android_branch 2018-09-13 21:31:09 -07:00
Eric House
62dc885922 Merge remote-tracking branch 'weblate/android_translate' into android_translate 2018-09-13 21:29:44 -07:00
Eric House
45600a295a use NotificationChannel to work on O and beyond with SDK 26
Notifications don't work on Oreo without this change, which includes a
new Support Library in order to get NotificationChannel and creates and
uses that as docs describe. Requires that MinSDK be raised from 8 to 14,
which may lock some users out. It *should* be possible not to do this in
the fdroid variant since their app store doesn't requires SDK 26, but
I'll look at that later.
2018-09-13 19:49:49 -07:00
Eric House
6f6c3238d4 Merge branch 'android_branch' into making-it-work-with-api26 2018-09-13 14:11:30 -07:00
Eric House
54f3e57f7f Merge branch 'android_branch' into making-it-work-with-api26 2018-09-13 10:36:26 -07:00
naofum
13f617b0b5
Translated using Weblate (Japanese)
Currently translated at 74.1% (556 of 750 strings)
2018-08-27 02:42:19 +02:00
Bernard Massot
28b784fdb4
Translated using Weblate (French)
Currently translated at 98.4% (738 of 750 strings)
2018-08-26 21:37:54 +02:00
Eric House
dfa308c1f5 pull timestamp out of DB as a long
for better formatting, eventually.
2018-08-07 09:01:17 -07:00
Eric House
02781c5113 use different (older) crashlytics (untested)
For some reason my laptop wouldn't build without this change. No idea
what happened to the newer version I was using or if the change
works (beyond compiling). Should be easy to find the change later if
it's a problem.
2018-08-07 08:57:14 -07:00
Eric House
9fb8671ef0 Merge branch 'android_branch' into android_translate 2018-08-04 11:14:54 -07:00
Markus Enzenberger
5d729094c3
Translated using Weblate (German)
Currently translated at 99.0% (743 of 750 strings)
2018-08-03 09:38:07 +02:00
Eric House
d23307f0ef up strings for new release 2018-08-02 06:28:09 -07:00
Eric House
3d7d1b8ffd don't call tile picker more than once
Some devices, including my Moto, are apparently calling server_do() more
than most. When the game's supposed to be asking the user to pick tiles
that resulted in stacked TilePickAlerts. The stack of these
sending (taken together) too many picked tiles to the game made it
crash. So modify server to have only one pending tile-pick request going
at a time. Because the server can't know when the user dismisses the
alert in Android and so won't post again, respond to the dismissal by
closing the game. Reopening will put it in a state where the tile picker
can get called again.
2018-08-01 20:30:51 -07:00
Eric House
0cc7d21ecb fix race-condition NPE by inspection 2018-08-01 08:08:36 -07:00
Eric House
6a58a08bca remove redundant specifier 2018-08-01 07:50:34 -07:00
Eric House
8286c9c116 new script for when release builds required 2018-08-01 07:48:02 -07:00
Eric House
f1c2eb79d4 remove x86 from jni; that chip's dead on Android 2018-08-01 07:37:33 -07:00
Eric House
e0c6621bfe remove assert: messages not for me are common 2018-07-31 00:26:11 -07:00
Hosted Weblate
a44db6c942
Merge branch 'origin/android_translate' into Weblate 2018-07-31 08:56:08 +02:00
Eric House
803b4ff0f3 cleanup: load/initialize only when first needed 2018-07-30 08:00:00 -07:00
Eric House
bf06d4b4c2 fix not sending ACK_INVITE
Logic error meant it was never sent. Now always send on receipt of a
well-formed invitation, even if e.g. the recipient's missing a wordlist
and the game can't be started immediately.
2018-07-30 07:37:20 -07:00
Eric House
a23777bade move byte[]<->NetLaunchInfo convert into the class 2018-07-27 07:44:02 -07:00
Eric House
2f10712379 revert to old invite data format
Had inadventently changed how NetLaunchInfo was transmitted, and crashed
on receiving from older builds. Fix to not crash, and then fix to send
and recieve in the old format.
2018-07-27 07:24:27 -07:00
Joan Montané
2c9d619f71
Translated using Weblate (Catalan)
Currently translated at 96.6% (723 of 748 strings)
2018-07-27 10:35:25 +02:00
Eric House
e637f49b95 include port and proto
Pretty sure couldn't have played against an older build without this.
2018-07-26 21:13:09 -07:00
Eric House
dfd4a3f6f6 put the api-26 changes back
lost in a rebase apparently
2018-07-26 19:16:50 -07:00
Eric House
9ddc6e4b89 Move transision of cmd and gameid and port (pending) into smsproto
common code, simplifying and unifying what the platform-specific code
has to do. Seems to work.
2018-07-26 07:50:16 -07:00
Eric House
a65498c132 add missing Overrides -- in one file 2018-07-26 07:24:23 -07:00
Eric House
70b22f7d11 revert to sdk-23
Too much breaks with the upgrade and I don't have time to deal.
2018-07-21 21:36:51 -07:00
Eric House
affb13207e up sdk version in the second place 2018-07-20 08:24:48 -07:00
Eric House
e1ba676a8e Merge branch 'quick-bt-fix' into android_branch 2018-07-19 07:17:15 -07:00
Eric House
723e7d7953 update changes to include translations included 2018-07-19 06:57:21 -07:00
Allan Nordhøy
6abff25946 Translated using Weblate (Norwegian Bokmål)
Currently translated at 55.2% (413 of 748 strings)
2018-07-19 06:54:32 -07:00
Joan Montané
5ced000c8c Translated using Weblate (Catalan)
Currently translated at 94.3% (706 of 748 strings)
2018-07-19 06:54:14 -07:00
Eric House
a9701525b7 up version string for new release 2018-07-19 06:47:18 -07:00
Eric House
fcefa9ca97 dismiss the BT invite progress thing on success
Not sure how this broke in the reorg of XWService stuff, but let's be
agressive about dismissing that thing.
2018-07-19 06:33:05 -07:00
Eric House
4450a8d56c fix NPE by inspection
I'm not sure how it happened -- race condition -- but it's harmless to
drop the action when it does.
2018-07-19 06:33:00 -07:00
Eric House
7cb00b6266 fix assertion: return a f*ing sink
Messed this up in February apparently.
2018-07-19 06:32:48 -07:00
Eric House
b0cf3a795c fix NPE by inspection
fix crash reported by user. Looks like a race on the way out so check
for null first.
2018-07-19 06:32:36 -07:00
Eric House
d40b8b7cad dismiss the BT invite progress thing on success
Not sure how this broke in the reorg of XWService stuff, but let's be
agressive about dismissing that thing.
2018-07-19 06:29:59 -07:00
Eric House
e1fec99860 fix NPE by inspection
I'm not sure how it happened -- race condition -- but it's harmless to
drop the action when it does.
2018-07-19 06:29:03 -07:00
Eric House
67d09a79b5 fix assertion: return a f*ing sink
Messed this up in February apparently.
2018-07-19 06:07:26 -07:00
Eric House
a3fb82ebc4 Merge branch 'android_branch' into android_translate 2018-07-18 22:30:58 -07:00
Eric House
a3ac3c4c8a fix NPE by inspection
fix crash reported by user. Looks like a race on the way out so check
for null first.
2018-07-18 22:26:26 -07:00
Eric House
807fe8633f add forgotten file 2018-07-17 08:46:39 -07:00
Eric House
84f636cbd5 always resend via SMS when opening game
It's done for other comm types too, and is necessary to get linux test
script to pass once I make SMS delivery unreliable. But it may duplicate
the tickle that Android's doing and result in duplicate messages: test.
2018-07-17 07:05:33 -07:00
Eric House
8f9c9e0623 fix crash around uri permissions for new OS version
Use a FileProvider with all the necessary xml changes to pass apk to
installer without crashing it or myself.
2018-07-17 07:02:36 -07:00
Eric House
276ef38108 use sdk26 -- will be required soon anyway 2018-07-15 10:33:09 -07:00
Eric House
2d8ac995b7 add test case where (fake) sms messages never arrive 2018-07-14 15:43:42 -07:00
Joan Montané
cc714a96cb Translated using Weblate (Catalan)
Currently translated at 94.3% (706 of 748 strings)
2018-07-14 12:35:09 +02:00
Eric House
352d87a327 use stream to take apart untrusted message safely
add new stream getters that return false if reach EOS and use them to
exit early and safely if incoming SMS msg is misformatted. I'm getting
random garbage meant for other apps perhaps.
2018-07-13 22:41:52 -07:00
Eric House
019cc628e4 fix crash figuring md5sum of null bytes
Just return null String
2018-07-13 22:35:44 -07:00
Eric House
89ec7987e6 move test to after db's inited to avoid crash 2018-07-13 18:20:56 -07:00
Eric House
5d6c743087 fix (I hope) null jni array dereference 2018-07-13 18:20:05 -07:00
WaldiS
cf24b1e4a0 Translated using Weblate (Polish)
Currently translated at 0.2% (2 of 748 strings)
2018-07-13 21:41:10 +02:00
Eric House
669acdcd19 log checksum of messages into smsproto 2018-07-13 07:39:11 -07:00
Eric House
c45c9cd809 read format spec outside assert
since the read inside goes away in release builds!
2018-07-13 06:59:57 -07:00
Eric House
b8c2cd1dd5 don't assert when a stray message wanders in 2018-07-12 20:20:04 -07:00
WaldiS
2d53673ae5 Added translation using Weblate (Polish) 2018-07-12 20:57:43 +02:00
Eric House
df8558e071 delete partial messages when count mismatches
Had an assert fire when a message ID was reused with a different count.
It was likely because of messages crossing between two variants, but
still, fix: delete what's been saved so far when a new count shows up.
2018-07-12 08:13:32 -07:00
Eric House
bd1cc4276b cleanup and variable rename (no code changes) 2018-07-11 07:33:36 -07:00
Eric House
3477bcf7b6 fix release-build scripts for new gradle output paths 2018-07-11 06:48:42 -07:00
Eric House
af0ddaa0f7 up version code and strings 2018-07-11 06:41:36 -07:00
Eric House
6bab91803d fix release builds
(broken since 091299c 2 months ago)
2018-07-11 06:38:54 -07:00
Allan Nordhøy
3959c73a86 Translated using Weblate (Norwegian Bokmål)
Currently translated at 55.2% (413 of 748 strings)
2018-07-11 00:39:41 +02:00
Eric House
95ac66370c fix off-by-one preventing delayed messages from sending 2018-07-10 07:08:57 -07:00
Eric House
9c2a722cc5 change two method names 2018-07-10 07:07:30 -07:00
Eric House
8c14ccc0d2 add new dutil to store by ptr; use for smsproto msgID 2018-07-10 06:36:34 -07:00
Eric House
08c41ddd3e add debug preference controlling new smsproto format
Don't use the message-combining feature for sends unless this is
set. After a release the default value will switch to true.
2018-07-10 06:19:16 -07:00
Eric House
a9769efe1c implement load/store on android 2018-07-09 07:11:54 -07:00
Eric House
e898dc509c plug leaks 2018-07-07 23:03:26 -07:00
Eric House
13cc6c79f1 add save/restore of partial messages
Handles case where the app receives only a subset of the SMS messages
into which a larger game-level message has been broken. Now when it
restarts and the remaining parts come in the whole can be reassembled.
2018-07-07 22:56:32 -07:00
Eric House
1c58ab3d99 clean up linux db usage
For load/store I'll need more flexibility to store large values.
2018-07-06 08:04:53 -07:00
Eric House
1941642607 add load and store to dutils, and implement with stubs 2018-07-06 06:56:54 -07:00
Eric House
3437ae2ebc use smsproto in Android 2018-07-06 06:48:56 -07:00
Eric House
2e9fbb8204 add common implementation of the SMS proto stuff
And use in linux client. Goal here is to reproduce then improve the
Android SMS pre- and post-processing stuff with a common/ implementation
that can be tested on linux and used wherever.
2018-07-05 21:40:56 -07:00
Eric House
87418d63d1 fix linux "sms" and modify script to test it
My linux sms hack used inotify and didn't check for messages that were
there when the app launched. Replace inotify with a simple glib periodic
timer. A bit of latency mimics SMS better anyway. Update test script to
support SMS, and add params to and otherwise fix linux client so
everything works.
2018-07-05 21:22:20 -07:00
Eric House
ed90c9c16d implement util->dutil split for Android
So now all jni code uses a single dutil context, but also a single
mempool and jniutil instance instead of new instances of the latter two
per game and dict-iteration.
2018-07-05 08:32:19 -07:00
Eric House
d4436b7706 Break part of util into dutil
Trying to separate what's game-specific from what can be app/device
specific (i.e. with a long lifespan, and available when a game isn't
open.)

Android will be broken after this commit and fixed after the next
2018-07-05 07:58:50 -07:00
Eric House
d46a4d13ba use mem_stream_make_raw() where possible in common code 2018-06-27 23:42:50 -07:00
Eric House
d70b089835 use mem_stream_make_raw() where possible in linux code 2018-06-27 23:37:28 -07:00
Eric House
976db7b181 add mem_stream_make_raw 2018-06-27 23:24:45 -07:00
Eric House
9cdd5a7b72 share mpool and vtable in jni calls
A number of jni calls were "stateless", which meant they allocated their
own vtmgr and mpool instances each time invoked. Instead invoke them
with the global jni closure and add to it vtmgr (already has mpool) and
use these instead of allocating/freeing each time. To make sure no race
conditions are introduced (mpool, though debug-only, is probably not
thread-safe), guard these new uses with an in-use flag. If that fires
I'll need a mutex or something.
2018-06-27 21:17:44 -07:00
Eric House
d2ab796fac test script tweaks 2018-06-18 07:11:38 -07:00
Eric House
382718bcb0 init variable
This might have made valgrind happier, though it's been a while. Can't
hurt.
2018-06-13 14:34:31 +03:00
Eric House
80167fb2d9 one more assert 2018-06-01 05:58:04 -07:00
Eric House
b7981cc8da print based on time rather than number of iterations 2018-05-31 23:06:51 -07:00
Eric House
ffaa47f893 fix creation of bogus game
Snapshot can be the first write. Save the rowid if it's new.
2018-05-31 22:19:03 -07:00
Eric House
b24d60e7bf add assert to verify no need for mutex 2018-05-31 21:23:25 -07:00
Eric House
dff130d6c6 ignore log dir 2018-05-31 21:23:10 -07:00
Eric House
d240e30bf4 test script: log and show tiles left in tray
Once the pool count drops to 0, start showing the number of tiles left
in the user's tray. This prevents there being a long time when nothing
seems to be changing *and* the script from exiting early because it
thinks all games are hung.
2018-05-25 21:36:25 -07:00
Eric House
89f4246e83 track and log types of (un-acked) messages 2018-05-24 21:03:25 -07:00
Eric House
39a5ce92ee refactor a bit (no behavior change) 2018-05-23 22:03:16 -07:00
Eric House
1821d197b9 fix to compile on 32-bit system 2018-05-23 19:48:30 -07:00
Eric House
32c93786b3 fix assert when buffer too small
read directly into vector rather than first loading into a fixed-size
buffer that's apparently occasionally not big enough.
2018-05-21 21:19:32 -07:00
Eric House
40ce484a92 fix mistaken and very broken commit
(Fortunately I never ran a relay with this in it!)
2018-05-21 21:19:25 -07:00
Eric House
7fa0cb1b93 rewrite as Thread instead of AsyncTask
I want to be able to use it in contexts where AsyncTask doesn't make
sense, e.g. from timer in background.
2018-05-11 10:23:49 -07:00
Eric House
091299c030 upgrade AS and gradle and with luck travis will work 2018-05-06 14:33:10 -07:00
Eric House
32df1777d3 Merge branch 'android_branch' into android_translate 2018-05-03 06:46:44 -07:00
Eric House
82e6c5495b fix to delete dict even when loc is wrong
Somehow I got a wordlist into a location different from what was
recorded in the DB table and since the delete command matched on
location as well as name it was never deleted (which meant the checksum
was never updated and so upgrading never seemed to succeed.) Removing
the match on location fixed that problem, and since I don't see any harm
in cacheing only one version of a wordlist will simply leave it that
way.

Did a bunch of cleanup as well.
2018-05-01 07:22:59 -07:00
Eric House
a27e8c4c04 move static method into enum 2018-05-01 07:00:14 -07:00
Eric House
1e766ee52d show usage when no args provided 2018-04-29 20:12:22 -07:00
Eric House
535dc29646 silence warning 2018-04-18 21:54:51 -07:00
Eric House
681e2cd8a0 up version code and strings 2018-04-18 21:49:04 -07:00
Eric House
cee7d696fc fix stuff to make valgrind happy 2018-04-17 21:13:53 -07:00
Eric House
1b71198d4e add valgrind option to test script 2018-04-14 10:48:20 -07:00
Eric House
ca54371515 tweaks to test script
Make fewer games with > 2 players, as that's rare. Fix calculation of
total number of launches to include games that have ended.
2018-04-14 10:42:53 -07:00
Eric House
ff82aa4251 fix asserts that fire when test script includes undos
When I used the --undo-pct flag in discon_ok2.py asserts occasionally
fired. This fixes that, and seems not to break anything.
2018-04-14 10:42:53 -07:00
Eric House
317df71588 more valgrind fixes 2018-04-14 10:17:12 -07:00
Eric House
05892c630e lazy: use glib to avoid gcc warnings 2018-04-14 09:39:27 -07:00
Eric House
3bb6f842b2 fix valgrind-flagged errors 2018-04-14 09:13:43 -07:00
Eric House
fecbfdddb6 tweaks to logging for stack hash debugging 2018-04-08 20:46:35 -07:00
Joan Montané
08e74b5dc7 Translated using Weblate (Catalan)
Currently translated at 93.3% (698 of 748 strings)
2018-04-07 09:34:52 +02:00
Eric House
afbf5a2218 fix python script to catch relay.py errors 2018-04-06 21:50:13 -07:00
Eric House
89809e051d compile with latest gcc (untested on old) 2018-04-06 21:49:51 -07:00
Eric House
a221ae43f4 flip arrow when board flipped
Fixing https://sourceforge.net/p/xwords/bugs/8/, flip the arrow before
placing it on top of the tile just returned to the tray.
2018-03-22 07:20:17 -07:00
Eric House
8f86cf9a77 don't assert on debug builds either
I'm seeing several IllegalStateException crashes due to e.g. having an
alert posted when app's in the background. Need to fix them, but the
debug build crashing isn't helpful. Log.e() instead.
2018-03-22 06:55:49 -07:00
Eric House
ab0764fa5a hack around IllegalStateException with Wait alert
The pesky thing is back. When app's in the background with an
unconnected game open displaying the "resend/wait" alert and the game
connects get IllegalStateException because the fragment stack's being
modified after onSaveInstanceState() (or, because the dialog fragment,
saved as an instance variable in BoardDelegate, dates from an earlier
state. Anyway, catching and dropping the exception and elsewhere failing
silently to rebuild the alert seems to fix the problem, but the right
fix is likely different. I suspect hanging onto that iVar is wrong, and
that the dialog should go away when onStop() is called and then be
rebuilt later from saved state. But for now, not crashing is good.
2018-03-21 08:11:07 -07:00
Eric House
fef4db0ee4 make easier to comment out 2018-03-21 07:28:49 -07:00
Eric House
a8db820b68 change strings for new release 2018-03-14 20:07:05 -07:00
Eric House
36c9e8c93b Merge branch 'android_branch' into android_translate 2018-03-14 19:32:25 -07:00
Eric House
77e40619ce Merge branch 'android_translate' of git://git.weblate.org/xwords into android_translate 2018-03-14 19:29:13 -07:00
Markus Enzenberger
dc0436e80d Translated using Weblate (German)
Currently translated at 99.0% (743 of 750 strings)
2018-03-11 09:37:11 +01:00
Eric House
74406c9bba on failure, don't log what looks like success 2018-03-09 06:45:21 -08:00
Eric House
e207b1e9fa log intent contents
trying to track down why/when they wind up empty
2018-03-08 08:30:01 -08:00
Eric House
2a2558a011 add/fix utility for printing Intent contents 2018-03-08 08:17:56 -08:00
Markus Enzenberger
a47381ed53 Translated using Weblate (German)
Currently translated at 98.4% (738 of 750 strings)
2018-03-04 08:39:34 +01:00
Eric House
de01c1aadb cleanup/modernize (should be no behavior change) 2018-03-01 08:13:38 -08:00
Eric House
2c153d1b9e log pending score drawing
I'll occasionally see the pending score in tray drawn dim after hint
fails to find a move, but can't reproduce. So add logging.
2018-03-01 06:58:37 -08:00
Eric House
c7bcccf979 cleanup. Should be no behavior change. 2018-02-28 19:23:36 -08:00
Markus Enzenberger
a24977dddc Translated using Weblate (German)
Currently translated at 86.2% (647 of 750 strings)
2018-02-28 19:13:52 +01:00
Eric House
75c48ddcc5 remove excessive comments 2018-02-28 06:49:35 -08:00
Eric House
760aa3d304 juggle tiles in generated moves (debug only)
Got a report of crashes due to corrupt move records. Given I rarely see
them I wondered if it's because the hint- and robot-generated moves I
work with have tiles in order. So now on debug builds tiles in moves
from those sources are randomly rearranged (as if the user had formed
the word in random order.) The bug isn't showing up, but I figure the
test's worth keeping.
2018-02-28 06:44:44 -08:00
Joan Montané
98dd664a35 Translated using Weblate (Catalan)
Currently translated at 93.0% (698 of 750 strings)
2018-02-28 11:35:02 +01:00
Eric House
b3559915e9 replace AsyncTask with Thread
It didn't even use the runOnUiThread feature!
2018-02-26 07:57:28 -08:00
Eric House
61993fc079 add tests to the rest of the forever loops 2018-02-26 07:03:47 -08:00
Eric House
aaafe1af00 assert we aren't looping infinitely
Stuff I'm doing with invitation resends is making the relay loop
inifintely. Let's assert a small loop count instead: better to crash and
restart than loop forever unable to process requests.
2018-02-25 20:44:06 -08:00
Eric House
73c7494e30 move invitation handling into superclass
Remove a bunch of duplicated code, replacing with implementation in
XWService. Fixes duplicate invitation and game opening policies being
slightly different.
2018-02-24 07:56:57 -08:00
Eric House
aacb0486f5 fix release-only bug showing duplicate moves
The fix I made earlier for this relied on a callback that was skipped in
release builds. Now always take the path that involves making the
callback when one is provided. Also remove an optimization that was
trying to eliminate possible moves based on scores prior to doing the
more expensive full check. In 2018 I prefer simplicity, and can make the
remaining code faster if that's required.
2018-02-18 12:29:30 -08:00
Eric House
4504302b3b make "release" builds compile again
Release isn't really a thing on linux, but I'm fixing something that
only reproduces when DEBUG is undefined.
2018-02-18 11:30:54 -08:00
Eric House
0bccf565c6 cleanup: ivar becomes local variable 2018-02-07 07:35:25 -08:00
Eric House
c762b43047 up version strings and changelog 2018-02-06 07:25:07 -08:00
Eric House
102671398b truncate player name, not score
Try some funky layout shite to get, within a horizontal linear layout,
the first text field trucated if necessary so that the second (holding
the score) can be fully displayed. Tested on exactly one emulator so
far.
2018-02-03 20:11:03 -08:00
Eric House
9c9a19d445 truncate player name, not score
Try some funky layout shite to get, within a horizontal linear layout,
the first text field trucated if necessary so that the second (holding
the score) can be fully displayed. Tested on exactly one emulator so
far.
2018-02-03 20:08:55 -08:00
Joan Montané
a152b169e8 Translated using Weblate (Catalan)
Currently translated at 75.4% (566 of 750 strings)
2018-02-03 10:34:50 +01:00
Eric House
cf1f4a9114 replace one with other in Catalan <plurals> elem
I think there's a bug in Weblate because I've seen this before: where
the English provides only an <other> the translation comes back with
only a <one>. That's wrong. Try adding a <one> in the English case to
see if that makes a difference.
2018-02-02 21:32:30 -08:00
Eric House
9855ef55ae replace one with other in Catalan <plurals> elem
I think there's a bug in Weblate because I've seen this before: where
the English provides only an <other> the translation comes back with
only a <one>. That's wrong. Try adding a <one> in the English case to
see if that makes a difference.
2018-02-02 21:30:15 -08:00
Eric House
1b36e734a4 Merge branch 'android_branch' into android_translate 2018-02-02 21:20:43 -08:00
Eric House
59b82d242c return from only one place. 2018-02-02 21:17:23 -08:00
Joan Montané
71b959aef3 Translated using Weblate (Catalan)
Currently translated at 75.4% (566 of 750 strings)
2018-02-01 09:34:48 +01:00
Eric House
757c5b4ece cleanup: move db access into doInBackground() 2018-01-29 19:29:18 -08:00
Eric House
5326d42438 enable smart scrolling
Otherwise it takes too long to scroll if you have hundreds of
games. To make this work had to move scroller to left side of games
list display as otherwise the scroller steals events from the expander
thingies.
2018-01-29 05:33:48 -08:00
Eric House
875d956836 don't need the local threadinfo at all
I think the crash was just due to removing env from the global state
rather than just leaving it be.
2018-01-23 21:26:11 -08:00
Eric House
ffaa232dba fix dictname being an empty string early on
Likely because of something in the jni world unset per-player dict name
is empty string rather than null, so test for that too. Fixes dicts
popup in newly-created game have an empty first line " (in use)".
2018-01-23 21:14:27 -08:00
Eric House
fd0c5767e6 toast status for resend should include the "re" 2018-01-23 06:56:18 -08:00
Eric House
d809ff4f7c give dict iter its own threadmap
I like this better than the previous fix: rather than share a
thread->env map with the game world allocate a new one for each
iterator. This could cause problem if the iterator is used on threads
that don't currently call map_thread(), or if there are callbacks that
need to look up the env that I'm not aware of. Needs testing...
2018-01-22 22:02:57 -08:00
Eric House
7242a709cb fix crash (race condition?) downloading dict info
Stumbled on a NPE opening up the wordlist browser configuring the first
game on a new install. So now test for null there and init early if
necessary. Seems to work, and won't do anything in places were not
needed.
2018-01-22 21:46:04 -08:00
Eric House
ff92c4a627 update changelog 2018-01-22 21:37:43 -08:00
Eric House
9654241fcf remove ability to set a min > max or max < min
Remake the min and max spinners every time either value changes so they
can't be used to set nonsensical values. (Which leads to immediate
crashes.) I'm sure this wasn't always a problem, but...
2018-01-22 21:31:41 -08:00
Eric House
efad90dd64 update strings for new release 2018-01-22 08:31:17 -08:00
Eric House
cbb683fc74 fix env-mapping crash in jni due to race condition
As reported to google, dict iterator destruction was crashing due to a
race condition if it happened after a game using the same dict had been
closed since it needed a mapped env that the game closure would
remove. Fixed in two ways, one by adding the mapping prior to the code
that uses it (a common pattern: add happens many times, whenver it might
be needed, but remove only once), and second by passing env into the
code that was crashing.

The mapping stuff remains inherently racy and I'm not sure now how to
fix that. It depends on there being a place to unmap after which it's
guaranteed the mapped value won't be needed again. When two
objects (game and dict_iter in this case) map the same env/thread combo
there's a race.
2018-01-22 07:45:43 -08:00
Eric House
134bcbdfa4 cleanup
Add new method with default values, etc: no change in behavior
2018-01-21 21:53:04 -08:00
Eric House
5f0c3bf4bd fix DEBUG assertion: unexpected Actions are expected
Looks like the assertion was left in when adding support for dual-pane
mode, as all other onPosButton() implementations called super rather
than assert. Which this one does now too.
2018-01-21 21:39:14 -08:00
Eric House
ecd6531ce3 add comment; tweak string
best I can do to respond to a suggestion on weblate.
2018-01-19 22:54:20 -08:00
Eric House
19a6672785 don't show current players tiles in list of remaining 2018-01-18 22:02:06 -08:00
Eric House
5afd8763b4 include Catalan translation in changes 2018-01-17 21:19:57 -08:00
Eric House
cdb22defcf cleanup; don't list unack'd acks 2018-01-17 21:17:09 -08:00
Eric House
339779e88e add ip of localhost as comment
Stops having to remember it every six months....
2018-01-17 21:07:28 -08:00
Eric House
efec6aba66 Merge branch 'android_branch' into android_translate 2018-01-17 20:54:49 -08:00