Eric House
9e5b074f7e
remove dead strings; stage new ones
2022-12-30 15:49:06 -08:00
Eric House
837991feb4
remove timestamps from mqtt header and procs that feed it
...
It belongs in comms msg header. Also remove PROTO_2, which shipping
code can read but never could send.
2022-12-30 15:35:01 -08:00
Eric House
310e1cea4f
remove bad assert
2022-12-30 15:35:01 -08:00
Eric House
550248bce0
fix assertions from missing timestamps
2022-12-29 22:39:26 -08:00
Eric House
bba8e99098
require that timestamp be set
...
MQTT must create the same header for each message, so having it set
the current timestamp is bad. I actually think it belongs in the comms
header, not in each transport.
2022-12-29 21:24:59 -08:00
Eric House
2942c140ee
consider channel when deciding if a game's present (and fix assign)
...
Rematch against self didn't work, and is useful for testing. So in
dutil method hasGame(), check if games with the same gameID are also
for the same channel. And when creating a new game for rematch, make
sure it's channel is 0.
2022-12-29 21:21:39 -08:00
Eric House
2b8c0194a2
fix string formatting mismatch
2022-12-29 07:22:54 -08:00
Eric House
ae9d576bad
fix crash when 0-length mqtt buffers arrive
...
Which is what happens when you "clear" retained messages
2022-12-28 23:21:32 -08:00
Eric House
5175775b1d
don't truncate gameID
...
In some cases games were created with 32-bit ids, and sometimes only
20 bits were used.
2022-12-27 17:38:26 -08:00
Eric House
fdbd404f37
cleanup
2022-12-27 17:38:20 -08:00
Eric House
9e675d49ba
log info about an assert I've seen
2022-12-26 20:30:46 -08:00
Eric House
30136e22a1
remove relay options from test script
2022-12-26 19:40:57 -08:00
Eric House
1ae4f2d774
make relay-related commandline options compile conditionally
2022-12-26 19:31:23 -08:00
Eric House
6648a25dd0
tweak logging
2022-12-26 19:24:39 -08:00
Eric House
3faf4687db
don't call a game over until message count drops to 0
...
I'm looking for a test case to reproduce the Andorid situation where
invitations are never deleted from comms' queue and so prevent the
game from being considered over. Doesn't seem to happen in Linux, but
more tests are good.
2022-12-26 17:15:44 -08:00
Eric House
5fe02a0888
set initial flags to reflect new version for invites
...
Creating an address record without having heard from the remote is
new, and setting it to an old version was preventing using new msg
format. So set to new by default. Not sure how it'll get downgraded
facing an old client, but a 100-game upgrade test passes.....
2022-12-21 16:11:55 -08:00
Eric House
5887140d9b
use hex for gameID in games list; fix compile error
2022-12-21 10:38:31 -08:00
Eric House
9b1fe83b61
fix to compile without DEBUG set
2022-12-21 10:29:48 -08:00
Eric House
7764c17705
resend all even if some unsendable
...
Looks like invitations become unsendable before they're deleted
sometimes and so block sending real messages. This fixes device
accepting invitation but never hearing back from host.
2022-12-21 10:21:41 -08:00
Eric House
8ce145f1fd
don't try to send invite via BT without an address
2022-12-21 08:30:09 -08:00
Eric House
933da2de07
API cleanup and all done
...
This should complete sending to multiple topics (for backwards
compatibility) and supporting combined messages in the future (sending
them is hard; receiving not so much.)
2022-12-20 11:55:30 -08:00
Eric House
6b029d5a85
invitations work on linux
2022-12-20 09:20:02 -08:00
Eric House
233a9c465d
snapshot: message sending works on android
2022-12-20 09:02:17 -08:00
Eric House
af4e39d921
snapshot: new mqtt msg format allowing multiple messages
2022-12-19 19:53:57 -08:00
Eric House
b179a0bade
remove dead code
2022-12-18 18:50:05 -08:00
Eric House
3b6132d8a1
remove stuff that wasn't meant to get pushed
2022-12-18 16:21:51 -08:00
Eric House
096c13614a
use ifdefs to go back to using only old-style per-device topics
2022-12-18 16:17:05 -08:00
Eric House
cf2d49e249
more
2022-12-18 10:23:36 -08:00
Eric House
ef39a2fa62
add debugging stuff -- don't push
2022-12-18 09:42:31 -08:00
Eric House
d799b94169
use persist flag and new per-game mqtt topics (too)
...
I didn't understand MQTT at all. Per the docs anyway it only keeps a
message around if its "persist" flag is set, and then it only keeps
the most recent per topic. I expected that when a device connected,
messages would be waiting for it, but that's apparently not true (some
evidence to the contrary.) But having all games on a device share the
same topic means only one message can be waiting. So switch to
including gameID in the topic, subscribing to a wildcard topic and
sending to a different one per game. For now, for legacy purposes,
we'll keep sending to the old per-device topic.
2022-12-16 14:35:22 -08:00
ssantos
6c64d29956
Translated using Weblate (Portuguese)
...
Currently translated at 100.0% (882 of 882 strings)
2022-12-16 19:47:42 +01:00
ssantos
41e4da2b04
Translated using Weblate (Portuguese)
...
Currently translated at 99.8% (881 of 882 strings)
2022-12-14 22:50:35 +01:00
Eric House
31593aaeda
call setRetained on all outbound messages
2022-12-13 17:41:48 -08:00
Eric House
e051fa04f9
fix robot having human name in config dialog
2022-12-13 06:13:03 -08:00
Eric House
988cf7f175
remove mistaken assert
2022-12-11 21:08:24 -08:00
Eric House
53e1a68d6d
track, and offer to display, comms-sent invites like others
...
I'm only keeping the most recent since they're sent every time a game
opens, app launches, etc.
2022-12-10 22:17:14 -08:00
Hosted Weblate
b8a9e1715a
Update translation files
...
Updated by "Cleanup translation files" hook in Weblate.
Translation: Crosswords/Android
Translate-URL: https://hosted.weblate.org/projects/xwords/android/
2022-12-10 17:09:33 +01:00
Hosted Weblate
693ded041b
Merge branch 'origin/android_branch' into Weblate.
2022-12-10 17:09:32 +01:00
Viktória Nagy
df70b0dbb5
Translated using Weblate (Hungarian)
...
Currently translated at 10.5% (93 of 883 strings)
2022-12-10 17:09:31 +01:00
Eric House
ed21fe01f4
remove dead string
2022-12-10 08:09:19 -08:00
ssantos
497bac22dd
Translated using Weblate (German)
...
Currently translated at 99.8% (882 of 883 strings)
2022-12-09 15:48:20 +01:00
Wellington Terumi Uemura
89d0572fd7
Translated using Weblate (Portuguese (Brazil))
...
Currently translated at 100.0% (883 of 883 strings)
2022-12-07 14:48:29 +01:00
Eric House
aea7c3fd92
always save known player game start time
...
Was only saving it in case of conflict, which is rare
2022-12-06 07:45:10 -08:00
Hosted Weblate
a14e08240f
Update translation files
...
Updated by "Cleanup translation files" hook in Weblate.
Translation: Crosswords/Android
Translate-URL: https://hosted.weblate.org/projects/xwords/android/
2022-12-06 06:21:59 +01:00
Eric House
a2806f1c3f
show known player name of missing host
...
This is for debugging use only for now, but it's useful when a host
seems non-responsive to know which it is.
2022-12-05 21:21:46 -08:00
Hosted Weblate
ce8372f46a
Update translation files
...
Updated by "Cleanup translation files" hook in Weblate.
Translation: Crosswords/Android
Translate-URL: https://hosted.weblate.org/projects/xwords/android/
2022-12-05 22:57:20 +01:00
Hosted Weblate
9c0ec79424
Merge branch 'origin/android_branch' into Weblate.
2022-12-05 22:57:19 +01:00
Wellington Terumi Uemura
cbaee81ec9
Translated using Weblate (Portuguese (Brazil))
...
Currently translated at 100.0% (886 of 886 strings)
2022-12-05 22:57:19 +01:00
Eric House
48748110ed
get rid of banned-nbs info -- been long enough
2022-12-05 13:56:12 -08:00
Eric House
47a5e66d72
perms now needed for NBS
2022-12-05 13:56:12 -08:00
Eric House
3826ddfbff
don't ask for phone permissions if can't send NBS
2022-12-05 13:56:12 -08:00
Eric House
af8c7b9900
remove notion of banned permissions
2022-12-05 13:56:12 -08:00
Eric House
e5d91be4c4
add another bt perms test
2022-12-05 13:56:12 -08:00
Eric House
871a45d3d3
add permissions
2022-12-05 13:56:12 -08:00
Eric House
f72a6c1b88
default nbs_port to 0
...
Shouldn't be referenced at all on GPlay builds, but that's more work
2022-12-05 13:54:49 -08:00
Eric House
93db9f5add
remove REQUEST_INSTALL_PACKAGES from all variants
...
And start adding it to those not on the Play Store
2022-12-05 13:54:02 -08:00
Eric
c5e24d1294
Translated using Weblate (Chinese (Simplified))
...
Currently translated at 8.6% (77 of 886 strings)
2022-12-03 14:48:51 +01:00
Lucie Vávrová
8d9e478487
Translated using Weblate (Czech)
...
Currently translated at 18.8% (167 of 886 strings)
2022-12-03 14:48:51 +01:00
ssantos
c2d1eef69c
Translated using Weblate (Portuguese)
...
Currently translated at 99.8% (885 of 886 strings)
2022-11-25 22:47:47 +01:00
ssantos
cfdec4f22e
Translated using Weblate (German)
...
Currently translated at 99.8% (885 of 886 strings)
2022-11-25 22:47:47 +01:00
Eric House
3e32fdb840
sort words using blanks behind those not
...
Engine shouldn't be so stupid as to play a blank for 0 points. So when
comparing two moves, sort first on score, then use number of blanks
used to break any ties.
2022-11-24 08:25:40 -08:00
Eric House
9f37faff7c
make NBS invitations work through new comms mech
2022-11-24 08:25:40 -08:00
Eric House
ad6bf4a976
add fdroid sha256 so invitations work there too
2022-11-24 08:25:40 -08:00
Wellington Terumi Uemura
43c712d7fe
Translated using Weblate (Portuguese (Brazil))
...
Currently translated at 100.0% (886 of 886 strings)
2022-11-19 23:48:31 +01:00
Eric House
929de903f4
don't hide delete box for archived games
2022-11-19 09:07:11 -08:00
Eric House
34f68a435b
include game name in nli when rematching
2022-11-18 21:52:10 -08:00
Hosted Weblate
e7cebe1d46
Update translation files
...
Updated by "Cleanup translation files" hook in Weblate.
Translation: Crosswords/Android
Translate-URL: https://hosted.weblate.org/projects/xwords/android/
2022-11-18 21:21:31 +01:00
Eric House
9881305c97
remove REQUEST_INSTALL_PACKAGES from google play variants
2022-11-18 12:21:19 -08:00
Hosted Weblate
7a129c5a5b
Update translation files
...
Updated by "Cleanup translation files" hook in Weblate.
Translation: Crosswords/Android
Translate-URL: https://hosted.weblate.org/projects/xwords/android/
2022-11-18 20:17:31 +01:00
Eric House
0141f110be
fix to compile without DEBUG set
2022-11-18 11:09:22 -08:00
Eric House
067ceffc53
fix theme sharing
...
Had broken it when adding 21x21 board support, and it looks as if I
never hooked up receiving the incoming theme URLs.
2022-11-18 11:09:22 -08:00
Eric House
e59161ae2d
fix crash starting three-device games
2022-11-18 11:09:22 -08:00
Eric House
b999da1a92
remove BT perms crashes and fix so BT invitations work
2022-11-18 11:09:22 -08:00
Eric House
8ca83ae871
add BT permissions requests
2022-11-18 11:09:22 -08:00
Eric House
43a96fb6fc
get rid of stuff trying to support two sdk versions
2022-11-18 11:09:22 -08:00
Eric House
2d30854949
better way to create enum
2022-11-18 11:09:22 -08:00
Eric House
3c3e148ae8
more permission checks
2022-11-18 11:09:22 -08:00
Eric House
551c5332c4
more permissions checking
2022-11-18 11:09:22 -08:00
Eric House
347e54d2e7
start checking for BT permissions
2022-11-18 11:09:22 -08:00
Eric House
c888e2621b
builds for both 30 and 31 (with manual changes)
2022-11-18 11:09:22 -08:00
Eric House
7620e64516
switch DBG build to sdk 31
...
Now if I grant the permission manually in Settings the app doesn't
crash trying to use Bluetooth. Can't test for or ask for it yet.
2022-11-18 11:09:22 -08:00
Eric House
92b02fccb7
cleanup
2022-11-18 11:09:22 -08:00
Eric House
4419e0347c
remove unused property
2022-11-18 11:09:22 -08:00
Eric House
93e6e315db
fix to not crash, and exit cleanly, when opening unopenable games
...
When e.g. I open a game saved with a newer stream version flag it as
bad rather than asserting each time.
2022-11-18 11:09:22 -08:00
Eric House
e7861dca48
fix crashes when emulator decides it supports Bluetooth
2022-11-18 11:09:22 -08:00
Eric House
86303475af
fix assertion firing when relay address still present
2022-11-18 11:09:22 -08:00
Eric House
a2667eab0b
tweak search order and remove relay
...
Can't rematch using the relay any more!
2022-11-18 11:09:22 -08:00
Eric House
ec71ea349e
remove dead code
2022-11-18 11:09:22 -08:00
Eric House
f2b034d710
recognize in-comms invites when opening incomplete game
...
Android offers to invite when it thinks no invitations have been
sent. Now it knows about those buried in comms.
2022-11-18 11:09:22 -08:00
Eric House
6f57665da2
pass number of pending comms invites into informMissing()
2022-11-18 11:09:22 -08:00
Eric House
e8d2c4d600
add channel to nli logging
2022-11-18 11:09:22 -08:00
Eric House
403bbafb0d
go back to quarantine requiring two failures to close
2022-11-18 11:09:22 -08:00
Eric House
924695d3fb
add new stream version that skips relay and allows longer string
...
And remove some dead code
2022-11-18 11:09:22 -08:00
Eric House
41d9d4a254
complete getUsername() impl to call into prefs for user choice
2022-11-18 11:09:22 -08:00
Eric House
848ae6f0f6
remove dead code; assert other dead
...
Adding asserts to confirm that code that shouldn't be called in fact
isn't.
2022-11-18 11:09:22 -08:00
Eric House
ee6c88b944
fix inviting known players by adding invitee to new game creation
2022-11-18 11:09:22 -08:00
Eric House
12d8a092d7
move getUsername() to dutils to avoid crash
...
Being in util meant the default implementation got called, and that
returned a null string: boom.
2022-11-18 11:09:22 -08:00
Eric House
34a72705c0
set quarantine count to 1 for debug builds
2022-11-18 11:09:22 -08:00
Eric House
be9d80533e
cleanup and add helper functions
...
Looking toward a time when channelNo's high-order bits ensuring the
right device is receiving messages go away.
2022-11-18 11:09:22 -08:00
Eric House
e960877256
more
2022-11-18 11:09:22 -08:00