Commit graph

14139 commits

Author SHA1 Message Date
Eric House
f406757fb2 add generic timers (with dutil component for scheduling) 2024-08-12 21:11:14 -07:00
Eric House
ad651c6cba more work on stats 2024-08-11 20:45:11 -07:00
Eric House
0a992c5a4b move mutex into a struct (for future dev advantage) 2024-08-11 19:59:38 -07:00
Eric House
464e124038 add debug-only stats submenu, and ability to print stats
They won't persist on Android if I count on dutil shutting down, since
there's no such thing. So I save on every change, which is way too
often but good enough for now.
2024-08-10 20:54:56 -07:00
Eric House
35e3487f9d don't use invitation a second time 2024-08-10 20:08:14 -07:00
Eric House
2f8164d8c7 add test for email-style invitation 2024-08-09 10:48:27 -07:00
Eric House
6092ad2d4b fix NPE 2024-08-08 22:28:59 -07:00
Eric House
ce2da59bb2 random cleanup 2024-08-08 07:15:10 -07:00
Eric House
c09ac28759 fix warnings about zeroing static structs (no behavior change) 2024-08-07 22:29:46 -07:00
Eric House
7286156c87 add a few more stats 2024-08-07 22:13:02 -07:00
Eric House
4ab6b1930f new stats module gathering data for debugging and upload (soon) 2024-08-07 08:16:12 -07:00
Eric House
72082cde0d add mutex utility
since I'm using them more now
2024-08-06 10:23:20 -07:00
Eric House
041684a355 (linux) include gameID on game board screen 2024-07-31 18:22:23 -07:00
Eric House
b25726a4af cleanup (make more Kotlin-like); no behavior change 2024-07-31 16:10:50 -07:00
Eric House
696c47ace4 fix harvesting of known player names to not mismatch name/address
The buggy code assumed two arrays were in sync that weren't guaranteed
to be so. So now I'm leveraging rematch code that already put
addresses in player order.
2024-07-30 16:15:44 -07:00
Eric House
daacc66ffe send ack info as array for later optimization 2024-07-30 16:15:44 -07:00
Eric House
2f91ff1f78 display known player names for pending invites
When an invitation is pending for a player in GameSummary or
scoreboard, show "<Name> invited" instead of "remote missing."
2024-07-28 08:48:33 -07:00
Eric House
f3fb43e93b handle invitations for excessive new addresses
Deal with somebody creating a new invitation, e.g. because it's been
realized that an existing one won't be accepted. Unused channels are
used first (though there will be none in a 4-device game), then
channels with old invites (only) are recycled.
2024-07-28 08:48:33 -07:00
Eric House
6d0686f737 add test for resigning (off by default) 2024-07-28 08:48:33 -07:00
Eric House
d61b4ce485 make comms choose channel for invitations
Since server will ultimately assign them as registrations come in
there's no point in trying to force an order earlier.
2024-07-28 08:48:33 -07:00
Eric House
7d4cfa5e26 don't assert in low-level logging code
Only possible explanation for deadlock is the assert, though I don't
see how it'd happen...
2024-07-28 08:48:33 -07:00
Eric House
b8e2877880 remove some logging 2024-07-28 08:48:33 -07:00
Eric House
ae03f4ed5b trivial API change 2024-07-28 08:48:33 -07:00
Eric House
93770f29d2 fix so GameWrapper can work with already opened games 2024-07-28 08:48:33 -07:00
Eric House
a3f8d22f89 import class: no code change 2024-07-28 08:48:33 -07:00
Eric House
ff7c20c52e no-op: DO NOT PUSH 2024-07-28 08:48:33 -07:00
Eric House
be97ef5a7b don't log exception when web api conn fails 2024-07-28 08:48:33 -07:00
Eric House
a3078fb549 cleanup: fix flashing quarantine count and reduce logging 2024-07-19 22:48:34 -07:00
Eric House
7642613612 clean up logging file 2024-07-18 22:06:19 -07:00
Eric House
3ee909df7d use mutex in comms
I've long had logging to detect (and assert(0))when two methods access
comms at the same time on different threads. I'm getting that
assertion more often now due, I guess, to subtle changes introduced by
the kotlin port. I wanted to avoid a mutex in cross-platform code, but
I've been using them without problems in a couple of less critical
modules so let's just do the simple thing.
2024-07-18 08:38:24 -07:00
blomusti
c5851207fa
Translated using Weblate (Turkish)
Currently translated at 13.3% (123 of 923 strings)
2024-07-18 15:09:37 +00:00
ssantos
ea5c765030
Translated using Weblate (Portuguese)
Currently translated at 100.0% (923 of 923 strings)
2024-07-18 15:09:29 +00:00
大王叫我来巡山
b6036f8d7d
Translated using Weblate (Chinese (Simplified))
Currently translated at 100.0% (923 of 923 strings)
2024-07-15 06:09:21 +02:00
Federico Di Lorenzo
d073d63c59
Translated using Weblate (Italian)
Currently translated at 100.0% (923 of 923 strings)
2024-07-10 21:09:10 +02:00
Eric House
88177f718a use http for N(24) and below 2024-07-09 21:43:43 -07:00
Eric House
220431e581 fix NPE I was getting on closing dict download fragment 2024-07-09 21:43:43 -07:00
Eric House
15ea7ff553 fix so can try download again after failure 2024-07-09 21:43:43 -07:00
Eric House
67c2cab98c test undo the new way, via script command 2024-07-09 21:43:43 -07:00
Eric House
270583effd cleanup 2024-07-09 21:43:43 -07:00
Eric House
99951b8ee2 add equals override so assert doesn't fail 2024-07-09 21:43:43 -07:00
Eric House
6bc9b06d11 fix http prefs assertion caused by locale switch
Saved prefs are often localized strings, so when I switched locales I
was firing an assert that the saved pref was known. Add new logic to
ensure that the saved pref is one of the expected values, and to use
the default if it's not.
2024-07-09 21:43:43 -07:00
Eric House
9c96397ece plug memory leak 2024-07-09 21:43:43 -07:00
Eric House
5b4e35be10 add undo to test script 2024-07-09 21:43:43 -07:00
Federico Di Lorenzo
4f0d3f103f
Translated using Weblate (Italian)
Currently translated at 81.7% (755 of 923 strings)
2024-07-09 20:09:22 +02:00
Eric House
a3daf58497 remove menuitem for non-mqtt games 2024-07-07 20:17:10 -07:00
Eric House
41e1a2e3c3 cleanup, esp. to remove some nullable params
squash me
2024-07-07 20:17:10 -07:00
ssantos
c405bb0f32
Translated using Weblate (Portuguese)
Currently translated at 99.8% (922 of 923 strings)
2024-07-04 15:09:35 +00:00
ssantos
0eadf88e37
Translated using Weblate (German)
Currently translated at 100.0% (923 of 923 strings)
2024-07-04 15:09:33 +00:00
Eric House
3cbf8bafae fix NPE by removing unused param
In the java world it was ok to pass null because the param was never
used. But in Kotlin it became non-nullable, and then null was
passed...
2024-07-03 15:36:12 -07:00
Eric House
6e1b36f38f remove assertion firing when relay games present 2024-07-02 22:25:55 -07:00