Commit graph

11994 commits

Author SHA1 Message Date
Eric House
85969fb913 seed random at start of jni, not of first game opened
Noticed the same emulator would always generate the same MQTT id, even
after a factory reset. That's because I was seeding rand() in that
jni *game* init code, not the (called-earlier) init of the whole jni
world. MQTT id generation happens on app launch before any game can be
opened so was using an unseeded rand().
2020-09-06 16:15:28 -07:00
Eric House
786bb39941 tweak script help 2020-09-06 16:15:28 -07:00
Eric House
93a98820e1 cleanup 2020-09-06 14:06:51 -07:00
Eric House
9752c96add remove reporting of deleted games (mqtt only)
It's wrong now while mqtt deviIDs are changing mid-game.
2020-09-06 13:11:31 -07:00
Eric House
b67870118e tweak unable-to-create-alert alert
And force a DEBUG-only crash so I can perhaps investigate
2020-09-06 11:24:38 -07:00
Eric House
22ad5aa4e2 add devid to About alert 2020-09-05 17:52:00 -07:00
Eric House
8c3c1b59f6 cleanup 2020-09-05 17:52:00 -07:00
Eric House
3510268752 use order-by so don't have to iterate over results
This assumes, as seems to be the case, that rowid is assigned increasing
order.
2020-09-05 17:52:00 -07:00
Eric House
fbc8a62a13 show the game's mqtt devid, not the device's 2020-09-05 14:18:49 -07:00
Eric House
1c6d28633f don't let keys change with every upgrade (use newest)
Supid bug generating keys from __FILE__ meant each release
build (usually done in /tmp/$$, or on a travis server) had a new key and
generated a new MQTT devID (and other stuff less frequently used.)
Replace the keys with something that won't change, and as a temporary
fix so the upgrade including this fix doesn't generate new keys use the
most recent stored key matching the suffix the old keys will have had in
common.
2020-09-04 20:51:44 -07:00
Eric House
d5fb0cc8be remove title from connections info dialog 2020-09-04 20:49:31 -07:00
Eric House
5a05ab2e56 include mqtt devid in email-author info 2020-09-04 20:36:47 -07:00
Eric House
1e941acd2c register with relay every time git rev changes 2020-09-04 19:11:35 -07:00
Eric House
8a28be2b9c cleanup removed unused locals 2020-09-04 11:04:33 -07:00
Eric House
0ba4c5a092 up version codes for release 2020-09-02 08:55:49 -07:00
Eric House
f0b162c239 changelog changes for next release 2020-09-02 08:48:20 -07:00
Eric House
623fc1b4dc cleanup chat changes
Don't add the message to the DB or UI if unable to send it. And show the
chat icon in preference to the debug-only-game-corrupted icon.
2020-09-02 08:41:08 -07:00
Eric House
f11c8ba569 fix chat-sending breakage from c5f1d2bf3b
ChatDelegate expects to post to a running JNIThread, so we can't shut it
down before calling the thing! Will need another way to stop that leak.
2020-09-01 21:15:10 -07:00
Eric House
f6414998c8 show in toast how many .apk files need deleting
I'll delete them later
2020-09-01 17:08:24 -07:00
Eric House
10cf96aa46 remove redundant intent opening
This might be the reason there are sometimes two windows getting opened.
2020-09-01 16:06:21 -07:00
Eric House
07704969af get rid of wordlist numbering even for DEBUG 2020-09-01 14:50:38 -07:00
Eric House
e0d291ae0e open wordlists browser even without Storage permission
and add a na-key to rationale for storage permissions so don't
ask forever when user wants to decline.
2020-09-01 14:48:08 -07:00
Eric House
b5bc784431 make filter config scrollable
If you're using a monster font and have the keyboard up you might not be
able to touch the "apply filter" button without dismissing the
keyboard. (Hi Deb :.) So make it possible to scroll it into view. Won't
ever become scrollable for most people, and seems to play well with the
scrolling wordlist regardless.
2020-09-01 12:13:40 -07:00
Eric House
783b4efdeb fix to compile on non-cutting-edge glib 2020-08-31 18:33:20 -07:00
Eric House
d9f54181a3 tweak a couple of na-tutorial strings 2020-08-31 18:27:20 -07:00
Eric House
58dfc32a6e use new glib datetime api (replaces deprecated) 2020-08-31 17:17:52 -07:00
Eric House
53563236e4 offer to open game when rejecting invite as dup 2020-08-29 17:17:49 -07:00
Eric House
46752af0cd have release build check daily for upgrades
(Applies to github and sourceforge releases only)
2020-08-29 16:56:08 -07:00
Eric House
a0beecafc3 Don't accept invitation again for same channel
Do away with debug setting to accept duplicate invitations. Change
definition of duplicate to mean specifying a channel and gameID that
already exist. So now send-to-self works without a debug
preference. Accidentally clicking on the same emailed invite twice will
still be blocked. There will be problems if a game's been deleted but
those have probably always been here.
2020-08-29 16:11:24 -07:00
Eric House
42575f1380 cleanup: never return null 2020-08-29 13:38:32 -07:00
Eric House
34d5ef291c save downloaded .apks in private dir
Don't need File permission now. Files will pile up unseen now,
so need to add delete logic eventually.
2020-08-28 12:21:46 -07:00
Eric House
99f0c09d06 make params private so can't assign without check
All array elems must be Serializable and I want to check in Debug
builds when new uses are added.
2020-08-28 12:21:29 -07:00
Eric House
a580335fea remove obsolete method 2020-08-28 09:58:28 -07:00
Eric House
20766631d5 remove crashlytics
Hadn't worked in a while anyway. There's a replacement I can add
separately when it makes sense.
2020-08-28 09:17:23 -07:00
Eric House
5e2122d81b add to change log 2020-08-28 08:35:26 -07:00
Eric House
73b6d0519f fix NPE
There was a way to get to the sender before its handler had been
initialized. That can only happen on UI thread, so just drop the send
rather than figure out a better way (for now).
2020-08-28 08:32:23 -07:00
Eric House
193383bfa6 don't use newer API for gratuitous animation
Fixing NoSuchMethod exception from play store
2020-08-28 08:26:41 -07:00
Eric House
22582f247d work around fast-scrolling eating taps for nearby objects
As happened with expander arrows on the right when I turned on fast
scrolling, the on-left-side scrollbar was preventing selecting rows when
there were enough list elements for fast scrolling to be enabled. So use
a listener to turn it on only after the user starts to scroll. And move the
bar back to the right side since that's where people expect it.
2020-08-27 22:55:25 -07:00
Eric House
5998132d4b fix standalone hang introduced by 15f95b52a 2020-08-27 19:47:10 -07:00
Eric House
942604e2bd up version strings and changelog 2020-08-27 12:36:54 -07:00
Eric House
adacee5503 tweak player edit layout (add margins) 2020-08-27 12:36:54 -07:00
Eric House
02287b8909 tweak to display more info
Script still needs a ton of work to be useful
2020-08-27 11:39:43 -07:00
Eric House
f9ceacdfa7 remove warning about setting room name 2020-08-26 21:28:00 -07:00
Eric House
15f95b52a9 hack to recover from stalled by-room-name games 2020-08-26 13:04:02 -07:00
Eric House
5c150d2f58 don't save isServer in comms
Pass it in so don't have to keep two state locations in sync
2020-08-25 22:27:43 -07:00
Eric House
19f4ebc727 add advisement not to use connect-by-room-name 2020-08-25 19:18:26 -07:00
Eric House
b641be30e7 tweak string 2020-08-25 17:00:55 -07:00
Eric House
14cad646e3 don't crash when setTitle called with id of 0 2020-08-25 15:54:33 -07:00
Eric House
b0f7176b6c fix relay game failure to change roles
If a configured-as-host game joined an existing game the relay would
make it a guest. The android util_ callback for that change was only
implemented in BoardDelegate and so the change was dropped unless the
game was open/visible. Because comms recorded the change, though, the
callback would never be called again and so the game never learned to
behave as a guest and never registered: permanent failure to join game!
Implemented with a new server state so initClientConnection can be
called from server_do() instead of inside comms while processing an
incoming packet.
2020-08-25 14:53:33 -07:00
Eric House
15fde8044f make server_initClientConnection() make its own stream 2020-08-25 14:53:28 -07:00
Eric House
da639af7c3 change what must be a mistaken assert 2020-08-25 08:25:44 -07:00
Eric House
1534298422 up client version
There's no change that matters, but on relay I want to see the upgrade
rate.
2020-08-25 08:24:30 -07:00
Eric House
b1f6ac7088 changelog 2020-08-24 17:02:49 -07:00
Eric House
d10d2597d4 add logging; cleanup
I'm chasing a relay problem that's hard to repro and need more info when
it's happened. (These won't show up in shipping builds.)
2020-08-24 17:02:49 -07:00
Eric House
a7acc37395 adding logging 2020-08-24 12:10:25 -07:00
Eric House
7cb2560b2d restore some default after download cancelled
Don't leave the text "download more" as the spinner's value when
onActivityResult() is called with a cancel.
2020-08-24 08:52:10 -07:00
Eric House
99d47fd067 log number of channels 2020-08-23 20:09:21 -07:00
Eric House
2d00a3e30f systemd file to run the fcm loop 2020-08-23 20:08:15 -07:00
Eric House
55c50ca8b6 don't try to send via mqtt when to dest address 2020-08-23 19:08:29 -07:00
Eric House
3f92b879de change player name when [un]made a robot 2020-08-23 14:18:41 -07:00
Eric House
12e8328e83 remove password edit in usual cases
Keep it around only where there's more than one local player
2020-08-23 14:06:29 -07:00
Eric House
587735f607 make gameID's random
using current clock might lead to conflicts
2020-08-23 09:08:40 -07:00
Eric House
0f61a6d9f4 pass and use mqttid in game-connection code
To avoid inviteless relay games not having an mqtt channel (and so
yielding a crappy experience) pass the mqtt devid when device registers
and when server replies with all-here.
2020-08-23 08:34:12 -07:00
Eric House
bd53824d95 replace assert fail with message rejection
Some relay bug (I think) misroutes or duplicates packets. Don't assert
as that means test scripts fail to finish. Instead drop the
message. Scripts seem to recover ok with this change and I've never seen
the assert on a device so suspect it's test-world only
2020-08-23 08:22:21 -07:00
Eric House
97e7a4de69 use https for changelog
won't load on newer Android versions otherwise
2020-08-22 20:33:03 -07:00
Eric House
dc7064a168 fix bug resulting in invitation droppage
Recent changes in how nli address sets were stored led to rejecting
incoming invitations when BT had been removed (e.g. on emulator) because
I didn't notice the removal when validating.
2020-08-22 12:36:31 -07:00
Eric House
f8f3082c0f fix NPE introduced by 458872c88 2020-08-21 17:58:45 -07:00
Eric House
118d9e49fe include locale info in mqtt server reg 2020-08-21 13:04:14 -07:00
Eric House
2e4203da1c remove string; fix long-click on thumbnail 2020-08-20 16:57:26 -07:00
Eric House
793904d46a move some menuitems around 2020-08-20 15:53:00 -07:00
Eric House
8385d7f5b2 add a selected-check to group header
And make it so tapping there selects
2020-08-20 15:40:55 -07:00
Eric House
9aca3bded7 tapping thumbnail opens game
Only the leftmost column toggles selection now.
2020-08-20 14:13:56 -07:00
Eric House
a76556ca20 move sel count to front to avoid clipping 2020-08-20 13:04:04 -07:00
Eric House
6d74a56f09 checkmark replaces game-type when item selected 2020-08-20 10:38:57 -07:00
Eric House
ca2dc0b78f start GamePtr with refcount of 1 (for consistency) 2020-08-19 13:48:30 -07:00
Eric House
8cac030e04 include OS version and make/model in email 2020-08-19 13:25:04 -07:00
Eric House
4d69366a82 display names of groups to be deleted 2020-08-19 10:40:46 -07:00
Eric House
f55796f845 fix move-group AOOB and menu enablement for context case 2020-08-19 09:40:46 -07:00
Eric House
0e58e24c3d fix group-order storage 2020-08-19 09:08:31 -07:00
Eric House
e5eb1aab6e override layout defaults to shrink table rows 2020-08-18 16:29:09 -07:00
Eric House
374fd4a0b6 up target sdk from 28 to 29 2020-08-17 12:45:55 -07:00
Eric House
458872c886 use new makeObject to improve API 2020-08-17 10:49:12 -07:00
Eric House
2338b6e017 add and use makeObject utility method 2020-08-17 10:49:12 -07:00
Eric House
ca4e6e29d5 remove misguided assert (debug only) 2020-08-17 10:49:12 -07:00
Eric House
55cb36d091 cleanup 2020-08-16 19:29:42 -07:00
Eric House
d01a71736d add missing ref release
It's only for SMS sends, so that it's missing hasn't likely been causing
a problem.
2020-08-16 16:13:23 -07:00
Eric House
1ce9267381 fix case where several patterns call for choice
Null-out patterns so if we have a pattern later we know it came from the
user choosing.
2020-08-16 16:13:23 -07:00
Eric House
6567f6ffcf debug features on by default on DEBUG builds 2020-08-15 12:03:41 -07:00
Eric House
67be4d2249 remove unused imports (one file only) 2020-08-14 16:56:02 -07:00
Eric House
d44fca3671 up version strings 2020-08-14 10:51:57 -07:00
Eric House
ddf0f185d4 do log db stuff on background thread 2020-08-14 10:51:57 -07:00
Eric House
5b23b40c4f revert unused changes 2020-08-14 10:51:57 -07:00
Eric House
274ebcef2d make +Blank button disabled until focus gained 2020-08-13 13:26:26 -07:00
Eric House
fe742b7e81 move note display into menuitem to save space 2020-08-13 13:01:49 -07:00
Eric House
360f454c3e tweak string 2020-08-13 09:52:45 -07:00
Eric House
0216451bd5 make lib name a constant 2020-08-13 09:52:05 -07:00
Eric House
5d305f7df7 for debug builds, check for upgrades hourly 2020-08-13 09:16:04 -07:00
Eric House
adc8c8d961 add missing deb 2020-08-12 21:50:48 -07:00
Eric House
eab9b7feda re-change string accidentally reverted in merge 2020-08-12 18:28:51 -07:00
Eric House
e1a485d23e Merge branch 'android_branch' into android_translate 2020-08-12 17:02:07 -07:00
Eric House
8511c633ee Merge android_translate branch 2020-08-12 16:50:34 -07:00
Eric House
590b0d0b04 use curly quotes 2020-08-12 16:34:59 -07:00
Eric House
2d0a53978f Merge remote-tracking branch 'weblate/android_translate' into android_translate 2020-08-12 16:19:55 -07:00
Eric House
88abf58d3a one-word tweak 2020-08-12 13:21:50 -07:00
Eric House
b521943505 tweak stringsy 2020-08-12 12:46:46 -07:00
naofum
3ff4af3256
Translated using Weblate (Japanese)
Currently translated at 100.0% (844 of 844 strings)
2020-08-12 15:32:48 +02:00
John Vandenhaute
d0cfbccf3e
Translated using Weblate (French)
Currently translated at 88.0% (743 of 844 strings)
2020-08-12 15:32:47 +02:00
Eric House
ba0d551750 filter tweak to deal with large font/small screen 2020-08-11 17:00:59 -07:00
Eric House
7a43e95aa8 fix crashes when filter strings are too long 2020-08-11 14:13:11 -07:00
Eric House
b6a74b7d15 update change log 2020-08-09 12:18:34 -07:00
Eric House
0e3651131e get rid of two unnecessary classes 2020-08-09 12:17:34 -07:00
Allan Nordhøy
5f4362c266
Translated using Weblate (Norwegian Bokmål)
Currently translated at 77.8% (657 of 844 strings)
2020-08-09 15:32:47 +02:00
Allan Nordhøy
db09379118
Translated using Weblate (Japanese)
Currently translated at 99.4% (839 of 844 strings)
2020-08-09 15:32:46 +02:00
Allan Nordhøy
7933a70399
Translated using Weblate (English)
Currently translated at 100.0% (844 of 844 strings)
2020-08-09 15:32:46 +02:00
Eric House
0b9f628115 fix string 2020-08-07 18:42:39 -07:00
Eric House
d0145779ce fix string 2020-08-07 18:41:46 -07:00
Eric House
e8175d69aa fix problems iterating backwards with start-with pattern 2020-08-07 11:05:58 -07:00
Eric House
e5dd43ee1b Merge branch 'android_translate' into android_branch 2020-08-06 11:44:16 -07:00
Eric House
798f8421da show delimiter when language requires it 2020-08-06 11:41:50 -07:00
Eric House
0f9bcd9898 let user choose between tile-spellings 2020-08-06 11:37:05 -07:00
Eric House
87337ba789 add a show-faq menu 2020-08-05 14:01:34 -07:00
Eric House
92c1180411 add button taking you to the (new) FAQ 2020-08-05 13:46:44 -07:00
Eric House
b8f359c3e5 add filtering to wordlist browser
Add a basic regular expression engine to the dictiter, and to the UI add
the ability to filter for "starts with", "contains" and "ends with",
which translate into ANDed RE_*, _*RE_* and _*RE, respectively (with
_ standing for blank/wildcard). The engine's tightly integrated with the
next/prevWord() functions for greatest possible speed, but unless
there's no pattern does slow things down a bit (especially when "ENDS
WITH" is used.) The full engine is not exposed (users can't provide raw
REs), and while the parser will accept nesting (e.g. ([AB]_*[CD]){2,5}
to mean words from 2-5 tiles long starting with A or B and ending with C
or D) the engine can't handle it. Which is why filtering for word length
is handled separately from REs (but also tightly integrated.)

Users can enter strings that don't map to tiles. They now get an
error. It made sense for the error alert to have a "Show tiles"
button, so there's now a dialog listing all the tiles in a wordlist,
something the browser has needed all along.
2020-08-05 09:47:44 -07:00
Eric House
d71cf6cac6 remove assert
It's firing on a device whose screen happens to be the wrong size. Seems
nothing bad happens in spite of proceeding, so let's....
2020-08-01 20:16:41 -07:00
Eric House
1d587caf85 remove dead symlink
(part of reverting f-droid mqtt removal I missed)
2020-07-27 20:50:54 -07:00
Eric House
915b47d612 use mavenCentral instead of eclipse's repo 2020-07-27 20:36:42 -07:00
Eric House
965ecc51e2 user newer ndk version (required by f-droid) 2020-07-27 20:36:42 -07:00
Eric House
f59b51268d Revert "Remove mqtt from f-droid build"
This reverts commit 7583c26e41.
2020-07-27 09:32:27 -07:00
Allan Nordhøy
1445e29d4b
Translated using Weblate (Norwegian Bokmål)
Currently translated at 75.4% (637 of 844 strings)
2020-07-26 23:41:52 +02:00
Eric House
f4104a318a modify version strings for new release 2020-07-25 14:03:49 -07:00
Eric House
f32b894843 Remove mqtt from f-droid build
The Maven repo that includes the (FOSS) client library for MQTT isn't
approved by the f-droid build system, so for now rip MQTT out of that
variant. Long-term I'll have to fix this, either by persuading the
f-droid folk to permit the library or by building the C client from
source in my jni library -- or when the relay goes away the f-droid
build will cease to offer internet play.
2020-07-25 13:59:29 -07:00
Eric House
197897c95e remove obsolete credit 2020-07-25 13:58:29 -07:00
Eric House
6905b0cfcf cleanup and update version strings
commented out more of variable line-thickness since the ability to set
has been removed.
2020-07-25 13:58:29 -07:00
Eric House
3cbc707b1d add change notes
Version upgrade to follow
2020-07-25 13:58:29 -07:00
Eric House
df8a9f5108 quarantine: tolerate one crash but not two
I was really after the situation where a game could never be
opened. There are lots of reasons a single failure can occur, not least
of which is installing via adb while game's open. :-)
2020-07-25 13:58:29 -07:00
Eric House
5d1bba2faf remove the under-construction icon
It looks bad, especially to a new user we suspect. Also add retries,
hoping that whatever caused the thumbnail to fail to load once will not
happen again.
2020-07-25 13:58:29 -07:00
Eric House
fcc2beb857 add preference to set cell line thickness 2020-07-25 13:58:29 -07:00
Eric House
725bec1a7a add pref to set color of board lines 2020-07-25 13:58:29 -07:00
Eric House
7daf3313e0 fix to include optional info.txt info 2020-07-25 13:58:29 -07:00
Eric House
d98430aa0d improving prep of byod files 2020-07-25 13:58:29 -07:00
Eric House
6f6e5516c9 add LANGFILTER so byod can build Hungarian 2020-07-25 13:58:29 -07:00
Eric House
d2a997d0ee don't exit badly when piped 2020-07-25 13:58:29 -07:00
Eric House
67d91111df more tweaks for byod 2020-07-25 13:58:29 -07:00
Eric House
a75264c8eb tweaks for byod 2020-07-25 13:58:29 -07:00
Eric House
666d2db62a add Makefile as symlink 2020-07-25 13:58:29 -07:00
Eric House
83b775a52c convert two more perl scripts to python 2020-07-25 13:58:29 -07:00
Eric House
042e5e6eab remove files I'll never need again 2020-07-25 13:58:29 -07:00
Eric House
f30bc77a5f rewrite some dawg perl scripts in python 2020-07-25 13:58:29 -07:00
Eric House
68343858d0 remove unneeded code 2020-07-25 13:58:29 -07:00
Eric House
6b2fceb468 more dialog cleanup
get rid of subclasses that are no longer separate, since features like
providing a not-again checkbox are available everywhere now.
2020-07-25 13:58:29 -07:00