Commit graph

10928 commits

Author SHA1 Message Date
Eric House
01533e6897 double scan progress time
Since the BT stuff tends to timeout late when failing, this looks better.
2019-02-13 07:29:18 -08:00
Eric House
273e66fd07 add env to map immediately, in initGame()
I'm seeing an assertion failure in cleanup that could be explained by
the cleanup happening when initGame() has been called but no subsequent
jni method that would have added the env to the map. So let's add it
immediately so that can't happen.
2019-02-13 07:13:54 -08:00
naofum
bd631db7d2 Translated using Weblate (Japanese)
Currently translated at 74.3% (568 of 764 strings)
2019-02-12 18:40:16 -08:00
Eric House
0a5d74ab2f unselect any game moved into a closed group
Fixes GameOver game moved via "archive" checkbox remaining selected
2019-02-12 18:14:57 -08:00
Eric House
b5ff337381 don't move selected games via context menu
Both ways of invoking move-to-group were working on the set of selected
games. Instead pass what's meant to be operated on as a parameter.
2019-02-12 07:51:21 -08:00
Eric House
0f8e55a260 put GameOver view layout into a ScrollView
When device in landscape the archive box is otherwise unreachable on a
four-player game
2019-02-12 07:47:57 -08:00
Eric House
eafe6cd06f make GamePtr AutoCloseable and use where possible 2019-02-12 06:13:36 -08:00
Eric House
b1a4b1a030 Make JNIThread autoclosable and use everywhere
JNIThread is somehow sticking around sometimes and holding the lock for
a game so that that game can never be opened again. On the theory that
there's some place retain() was called but not release(), use the thing
in try-with-resources wherever possible. Which is pretty much
everywhere.

Also added age to the lock-holder report being uploaded.
2019-02-11 20:39:17 -08:00
Eric House
9fe01047b1 include stack of lock owner when logging failure to lock 2019-02-11 07:52:22 -08:00
Eric House
88838d6c0c Fix NPE when url for delete game has changed
I think it's only an issue for debug builds where I've manually pointed
at a different server, but just in case.
2019-02-11 07:32:17 -08:00
Eric House
ec4711f3ba make text in new GameOver alert bigger
To match how it was when using the system-provided view.
2019-02-11 07:29:34 -08:00
Eric House
7f2e3207be report stack of lock owner to crashlytics when can't get it
I'm seeing something permanently lock a game so it can't be opened. So
add code to report the stack of the owner to Crashlytics when opening
fails 3 times in a row. It's stubbed out for non-debug builds.
2019-02-10 20:02:43 -08:00
Eric House
813cf4f961 Add custom GameOver alert for GameOver with Archive checkbox
I didn't like having to re-open a game to archive it after
rematching, so now there's a checkbox that lets you archive it after
either rematching OR just using OK to dismiss the alert. Also fixed
rematch of a solo game causing new game to be created in Archive
group if that's where the source game was.

squash me
2019-02-10 14:22:22 -08:00
Eric House
ab69cd8b1f Merge remote-tracking branch 'weblate/android_translate' into android_translate 2019-02-10 09:01:14 -08:00
Eric House
d53ea5c433 up copyright year 2019-02-09 16:16:54 -08:00
Eric House
2eaf86ed14 add git rev to crashlytics reports 2019-02-09 11:13:32 -08:00
Eric House
01d74e91de plug leak 2019-02-08 22:29:18 -08:00
Eric House
8f6745a308 avoid crashes when BT turned off
Test at enqueueWork() and onHandleWorkImpl(). Seems to do it. Maybe
turning it off mid-send will still crash...
2019-02-08 22:22:03 -08:00
João Vitor Ferreira Cavalcante
cfc9466efd
Translated using Weblate (Portuguese)
Currently translated at 51.6% (394 of 764 strings)
2019-02-09 02:09:26 +01:00
Eric House
30f70db59b don't create threads we won't use 2019-02-08 14:37:58 -08:00
Eric House
6b449bb079 null listener thread ref so will be restarted
Once it died it stayed dead: bad.
2019-02-08 14:11:35 -08:00
Eric House
3023ae1af6 cleanup 2019-02-08 13:48:40 -08:00
Eric House
fe721edb97 Recast BTService as a JobIntentService
Got tired of the space the forground-service notification icons were
taking. So now BT sends and receives are done via static threads and
onHandleWork(). The send thread times itself out quickly. The receive
thread doesn't yet. We'll see how long the OS lets it run and what
needs to be done to deal with that.
2019-02-08 13:23:07 -08:00
Eric House
e6b59ea11d add debug-only option for invitee players to be robots
It's useful when testing to have the remote device play without human
interaction. So add an option, and UI to trigger it, for the players
created remotely in response to an invitation to be robots. There are
guards in place to catch the feature slipping into a release build.
2019-02-07 08:17:54 -08:00
Eric House
c97e167e1e remove some logging 2019-02-06 22:55:31 -08:00
Eric House
ff45340eb8 remove methods overridden just for logging
looks like I've fixed the crash I wanted to diagnose.
2019-02-06 22:37:52 -08:00
Eric House
9a4fb44e72 fix relay interactions again
Eliminate the writer thread, since onHandleWork() is already getting
called on a thread and can process the outbound queue itself. And get
rid of reader thread needing to wait for an instance of the RelayService
to be available to process a packet (which was taking 5-10 seconds all
the time): just post received packets via an enqueueWork() call using
the app context that's always available.
2019-02-06 22:32:46 -08:00
Eric House
e62e51f9cd pass context and use to post lock-failure toast 2019-02-06 19:43:54 -08:00
Eric House
f5c9962b66 tweak/reduce logging 2019-02-06 19:36:17 -08:00
Eric House
895b19a097 move constant from XWApp to build.gradle 2019-02-06 10:44:21 -08:00
Eric House
f92b0d7ac0 avoid NPE (and log to root-cause it later) 2019-02-06 09:06:25 -08:00
Eric House
ab0469fe39 ensure writer gets run every time OS schedules via onHandleWork() 2019-02-05 09:58:39 -08:00
Eric House
bf2ab49c20 remove some logging 2019-02-05 09:37:39 -08:00
Eric House
bd35503daa fix NPE and let GameSummary stay until replaced
GameListItem was clearing its summary when kicking off a replacement
load. Instead keep the old around in case somebody wants it (e.g. to
figure out what menus to enable) until the reload finishes.

Also add logging of how long loading takes. I think a cache might be
called for.
2019-02-05 07:44:16 -08:00
Markus Enzenberger
7d8c013492
Translated using Weblate (German)
Currently translated at 100.0% (764 of 764 strings)
2019-02-05 10:09:17 +01:00
Eric House
38f0fc6fd1 move invite button above button bar.
(It's more frequently used)
2019-02-04 17:56:23 -08:00
Eric House
64c6d03392 add context comment for new string 2019-02-04 17:33:03 -08:00
Eric House
908f5a64e7 Merge branch 'android_branch' into android_translate 2019-02-04 17:28:06 -08:00
Eric House
ce03ab7532 cleanup via new macro 2019-02-04 14:38:40 -08:00
Eric House
3810d11e26 remove logging 2019-02-04 14:27:43 -08:00
Eric House
e1f03662c3 fix malformed xml string
Weblate bug?
2019-02-04 13:35:34 -08:00
Eric House
bdf1bd3b84 fix problems with RelayService
Darned thing was dropping packets, failing to connect games built in
response to invitations, and otherwise misbehaving. First was due to not
resheduling when exited with outbound packets in queue; second to not
overriding relayNoConnProc() (due to signature change.) Though it still
happens occasionally.... Also added timestamps to track how long it
takes a packet to be sent and ACK'd.
2019-02-04 13:28:05 -08:00
Eric House
328440abc3 add rowid to NoSuchGameException 2019-02-04 08:58:50 -08:00
Eric House
5886a97a53 fix NPE (and tweak logging) 2019-02-03 10:36:54 -08:00
Eric House
74cf4b0974 add flavor to toasted got-fcm message
So I can tell the apps apart
2019-02-02 22:39:57 -08:00
Eric House
e98519ea38 stop storing fcm keys and similar data in postgres arrays
Not sure why I was doing this, but it's not worth the
trouble (e.g. stopping updates of other data to fix an android bug
sending too many reregistration messages.) So now just use the first
element of arrays, replacing what's there instead of prepending. Ideally
those columns would not be arrays, but that's a harder change.
2019-02-02 21:49:50 -08:00
Eric House
23fe3a1dd6 make script executable 2019-02-02 15:50:17 -08:00
Eric House
49ef455e50 display latest FCM receipt as part of netstats for relay 2019-02-02 15:18:45 -08:00
Eric House
be6b74ab12 use a constant jobID for enqueueWork()
That each VM instance had a different id might be why I was
crashing. We'll see.
2019-02-02 13:35:38 -08:00
Eric House
4a335522d2 fix so success detected from new API 2019-02-01 20:51:07 -08:00