Commit graph

12298 commits

Author SHA1 Message Date
Eric House
db430d63db changelog and version strings 2020-12-01 07:55:10 -08:00
Eric House
249bfbe66e update emacs compile commands: ant is dead 2020-12-01 07:55:01 -08:00
Allan Nordhøy
04440d759a
Translated using Weblate (Norwegian Bokmål)
Currently translated at 68.9% (609 of 883 strings)
2020-11-30 20:29:01 +01:00
Allan Nordhøy
fe1a34b177
Translated using Weblate (English)
Currently translated at 100.0% (883 of 883 strings)
2020-11-30 20:29:00 +01:00
Eric House
ebbb6dd7da fix NPE rotating phone when new invite-now alert up 2020-11-30 10:26:58 -08:00
Eric House
99a7930dfb add loop to print a bunch of devids (disabled) 2020-11-29 11:43:19 -08:00
Eric House
f954ae5943 turn on mqtt game-gone warnings for all 2020-11-29 11:40:17 -08:00
Hosted Weblate
f9b4c809e7
Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: Crosswords/Android
Translate-URL: https://hosted.weblate.org/projects/xwords/android/
2020-11-29 04:46:37 +01:00
Hosted Weblate
bc47849667
Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: Crosswords/Android
Translate-URL: https://hosted.weblate.org/projects/xwords/android/
2020-11-29 04:46:34 +01:00
Eric House
7fb070da49 Squashed merge from android_translate 2020-11-28 19:16:41 -08:00
Eric House
623f3ad145 inform when client's game complete too
Board needs to know when to dismiss the waiting-for-host alert. A
similiar need host-side was handled from common/; do same for client
side.
2020-11-28 17:57:33 -08:00
Eric House
00588f50f3 show an cannot-play-yet alert on guest side too 2020-11-28 13:55:36 -08:00
Eric House
4314a3f012 remove unused param/ivar 2020-11-28 13:55:36 -08:00
Eric House
386cfbda71 close game when invite dialog dismissed via back button
Catch the onCancelled event, and treat as "close" button tap. Also
disable cancel via taps outside the alert, which I think is less
confusing than leaving the unplayable game up without the alert or
closing it without explanation.
2020-11-28 10:33:52 -08:00
Eric House
437aef5ed5 use wrapper to replace static reference
BoardDelegate can have a one-to-one relationship to this thing, and
occasional leakage was preventing opening a new alert, so some fix was
needed. This one's simple.
2020-11-27 11:47:38 -08:00
Eric House
9929de1fa7 only show game-gone msg src on non-release builds 2020-11-25 10:40:08 -08:00
Eric House
f4e7ff1397 fix NPE for case where there are no Known Players 2020-11-25 10:39:41 -08:00
Eric House
82a11e5ebf explain where deleted game message comes from
Not sure it'll make release builds, but it's useful for figuring out if
the deletes should actually be there.
2020-11-23 21:37:18 -08:00
Eric House
48cf291c5a listen for invite alert dismiss
Because I'm doing a singleton thing, if I miss the alert going away I
won't up another up. This tries to always catch dismissal. Might still
be screwed if it's not actually put up for some reason. Needs testing.
2020-11-22 20:40:28 -08:00
Eric House
6fb3d19f03 revert having missing player count in window title
The invite-now alert is enough.
2020-11-22 20:40:28 -08:00
Eric House
776cc5703d use insecure; get own mac addr
Try using both secure and insecure sockets. The latter appears to cause
fewer problems on OS/device combos with crappy BT. It's only possible if
I know the addr of the device I want to, so hack around that being
secret by passing it on request.
2020-11-21 16:25:49 -08:00
Eric House
dbfe8083ca tweak string 2020-11-21 16:06:13 -08:00
Eric House
5031afa3ff don't include colons in nli's BT addr (to save space) 2020-11-21 16:05:21 -08:00
Eric House
f067144ec5 oops: wrong return type 2020-11-21 16:05:21 -08:00
Eric House
d5be06413f add invite history and ability to invite all at once
If inviting known players to a more-than-two-player game, can select all
at once. Required using checkboxes instead of radiobuttons for the case
where nMissing > 1.
2020-11-21 15:11:59 -08:00
Eric House
210b0bcbcb send mqtt game-gone when game deleted
Receiver only does anything if the game's open. This could change....
2020-11-21 08:43:24 -08:00
Eric House
f3bb0c99a9 invite alert changes
Create new class that owns the alert. Let it decide whether to post,
remove, etc. Seems to work, but I've removed some of the "reinvite"
options I'm not sure were helpful anyway. To be considered...
2020-11-20 18:07:19 -08:00
Eric House
105f93f3ab increase length of default room name to 5 chars
There are conflicts on relay. So while it's still relevant, reduce 'em.
2020-11-20 16:06:42 -08:00
Eric House
5d86743857 enable mqtt game-gone message for DEBUG builds
It should be enabled for all once the dup-devid problem should be behind
everybody.
2020-11-20 16:03:03 -08:00
Eric House
a58048e9eb get rid of boolean meant to prevent duplicate invite alerts
It was preventing even one and seems no longer to be necessary.
2020-11-17 17:58:22 -08:00
Eric House
cc8f1e4a57 remove bad assert 2020-11-15 10:47:13 -08:00
Eric House
e288090e70 quarantine: print the stacks holding refs when fails
Store null instead of stack for release builds to minimize performance
impact.
2020-11-14 12:08:47 -08:00
Eric House
9c913fb1c4 keep OK button disabled when no invite means selected
Little UX tweak: enable OK button based on whether there's something
available to return if it's clicked.
2020-11-14 09:20:18 -08:00
Eric House
c06b9a4835 fix tiny list item due to missing thumbnail
When thumbnail was required but couldn't be produced list item showed up
tiny as height followed thumbnail's. Instead, when there's no thumbnail
behave as if it's disabled, a layout that looks ok.
2020-11-13 17:43:30 -08:00
Eric House
3e98e91751 tweak string 2020-11-13 17:43:25 -08:00
Eric House
7e326b3b02 allow specifying PID 2020-11-13 17:43:18 -08:00
Eric House
5485f92116 use a radio button for QRCode option
To make it clear it's an option like the others use the same widget
type. Show the code only when it's selected.
2020-11-11 17:34:17 -08:00
Eric House
98f8056b40 make qrcode available in two sizes 2020-11-10 14:22:50 -08:00
Eric House
9981a559df prevent auto-pop of keyboard
Some screens can't fit it and so it obscures the buttons.
2020-11-02 18:41:39 -08:00
Eric House
db13370cb8 tweak status string (and name for clarity) 2020-11-02 18:01:23 -08:00
Eric House
a44c08e4cc merge android_translate in 2020-11-02 17:10:51 -08:00
Eric House
4dab5bc3bb make game-event notifications noisy by default
Set importance to HIGH, which is apparently required for sound.
2020-11-02 16:45:56 -08:00
Eric House
c9ce2dda21 show known player's bt mac addr for non-release 2020-11-02 16:15:42 -08:00
Eric House
a0e31d8db8 make qr code bigger 2020-11-02 16:01:10 -08:00
Eric House
26f6bb8b43 cleanup/refactor 2020-11-01 19:33:41 -08:00
Eric House
157332d2cc add pref to disable use of bluetooth
It's buggy enough on some devices that a user might need to disable it.
2020-11-01 19:33:41 -08:00
Eric House
04000ddf7e improve corrupt-game experience
add padding to alert, remove cancel button, clean up warning text, and
confirm delete.
2020-10-29 11:30:12 -07:00
Eric House
b165072bed always drop quarantine count to 0 on close
There are ways I can't record a close, e.g. user swiping app to kill
it. To avoid that leading to a corrupt-game warning, or to failure to
open in background, drop the count to 0 rather then merely decrementing
it when it closes correctly. Assumption is that if it closes ok once
it's ok.
2020-10-29 11:30:12 -07:00
Eric House
0250996009 cleanup 2020-10-29 11:30:12 -07:00
Eric House
a5b98c483c fix removal of unpaired device
Two uses of remove() were passing different info. So pass the other one
from the other use.
2020-10-29 08:40:46 -07:00
Eric House
1019271c94 handle mqtt invites same as others
Invitations over MQTT were handled by different code that always opened
the new game on top of any other open one. Use instead existing code
that puts up a notification instead where appropriate.
2020-10-28 17:11:05 -07:00
Eric House
3fbb2bbd7c fix merge of Brazilian files 2020-10-28 13:56:42 -07:00
Eric House
3e411873c0 Merge branch 'android_translate' into android_branch 2020-10-28 13:40:57 -07:00
Eric House
0cee3c8d60 add systemd service file for relay 2020-10-28 13:32:49 -07:00
Eric House
db366bb515 cleanup 2020-10-28 13:32:49 -07:00
Eric House
a8a8f801f7 tweak string 2020-10-28 13:32:49 -07:00
Eric House
81799d3903 add addrType to comms' main addr when added to channel
I'm fixing android client not showing stats for or allowing to disable
mqtt after it's added automatically to a game that connects
otherwise. Problem was that only the channel got the mqtt address
flag. So now add the flag for any type that's added.
2020-10-28 13:32:49 -07:00
Eric House
88dbc40180 test script: strip extension when making logs dir 2020-10-28 13:32:49 -07:00
Eric House
fa3a33f133 offer to hide new-game buttons immediately
Don't wait for user to tap one of the buttons. Instead notice when
scrolling becomes possible, and offer once per launch until user says
"hide" or clicks the don't-ask-again box.
2020-10-28 13:32:49 -07:00
Eric House
b6955696eb again 2020-10-28 13:32:49 -07:00
Eric House
d65fb80dff don't commit me 2020-10-28 13:32:49 -07:00
Eric House
a5f8b87478 remove dead code 2020-10-28 13:32:49 -07:00
Eric House
d95d1a9f70 changes, part 1 2020-10-28 12:57:12 -07:00
Eric House
0888167db5 remove unused format spec (SMS number no longer known) 2020-10-28 12:03:07 -07:00
Vanessa Regina Andrade dos Santos
1d41eea48d
Translated using Weblate (Portuguese (Brazil))
Currently translated at 26.8% (230 of 858 strings)
2020-10-27 20:26:43 +01:00
Eric House
3d1cefe00b cleanup (no code change) 2020-10-26 14:13:50 -07:00
Eric House
ba99eb0838 avoid crash (maybe on corrupt data?) 2020-10-26 13:04:28 -07:00
Eric House
f1eea13c5e remember last invitee and make default next time 2020-10-26 11:03:22 -07:00
Eric House
712661a6e9 show quarantine count (non-release only)
Looks like I'm occasionally leaking so that the count grows. This will
let me see when something is 1 when it should be 0.
2020-10-26 11:03:22 -07:00
Eric House
9deac8afbb show Known Player name in button
Got tired of it not being clear what the button was going to do
2020-10-25 15:29:49 -07:00
Eric House
f997c88ba4 cleanup bt code 2020-10-25 15:29:46 -07:00
Eric House
5a8ea0b998 change name of string 2020-10-25 11:58:23 -07:00
Eric House
6c9be4a67d remove dead script
replaced by changed to relay2 flask app
2020-10-24 22:27:47 -07:00
Eric House
04eeb8f18f don't crash when number of INVITEMEANS changes
This won't impact shipping code, but if during development I add then
remove a new INVITEMEANS I can crash with AIOOB trying to load by
ordinal. So check first.
2020-10-24 13:13:47 -07:00
Eric House
a61db95266 shrink the QR code
It doesn't need its own alert if it's smaller, and at least a Nexus5's
phone can pick it up this size.
2020-10-24 10:08:11 -07:00
Vanessa Regina Andrade dos Santos
8971cdeebc
Translated using Weblate (Portuguese (Brazil))
Currently translated at 26.8% (230 of 858 strings)
2020-10-24 17:26:42 +02:00
Eric House
5d4fd0e58b don't dispose gi before game
gathering players was failing because disposed gi was pointing at
garbage. I'm lucky it didn't segfault.
2020-10-23 19:03:26 -07:00
Eric House
e7a63c7c0b change mqtt register URL 2020-10-22 22:33:25 -07:00
Eric House
af37fb45f7 Rewrite BT comms to not use a Service
It's simpler this way, and I'm tired of stuff not happening because the
OS chooses not to schedule e.g. an invitation send for minutes. Goal's
to be running BluetoothServerSocket.accept() as much as possible when
there are active BT games in play OR when the game's in the foreground.
If that's happening, sent invitations and moves will be received when
users expect. When there's no traffic and app isn't being brought to
foreground, backoff will ensure I don't try to run accept() too often.

FWIW, BTLE seems to offer a better way to do this (to have an app be
responsive to incoming invitations when it hasn't run in the foreground
in a while), but it requires users to accept FINE_LOCATION
permission. I'm hoping I can make this work to avoid asking for that
permission.
2020-10-21 21:10:09 -07:00
Vanessa Regina Andrade dos Santos
30b42fcedf
Translated using Weblate (Portuguese (Brazil))
Currently translated at 23.7% (204 of 858 strings)
2020-10-22 04:26:41 +02:00
Vanessa Regina Andrade dos Santos
21f22bbb3d
Translated using Weblate (Portuguese (Brazil))
Currently translated at 22.4% (193 of 858 strings)
2020-10-16 05:26:40 +02:00
Vanessa Regina Andrade dos Santos
c01bd4e8d0
Translated using Weblate (Portuguese (Brazil))
Currently translated at 18.9% (163 of 858 strings)
2020-10-14 22:26:39 +02:00
Vanessa Regina Andrade dos Santos
2f6019f4c2
Translated using Weblate (Portuguese (Brazil))
Currently translated at 18.4% (158 of 858 strings)
2020-10-13 01:26:38 +02:00
Vanessa Regina Andrade dos Santos
c7282603f5
Translated using Weblate (Portuguese (Brazil))
Currently translated at 17.8% (153 of 858 strings)
2020-10-10 04:26:41 +02:00
Eric House
8240f753ca bluetooth tweaks
Add a single method to provide candidate devices; don't bother passing
bogus BT MAC addrs; let instance belonging to background-user start
communicating again when user becomes foreground.
2020-10-07 19:39:51 -07:00
Eric House
284e7eb85a fix broken device deletion; refresh time-last-seen
I was comparing the wrong strings and so broke deleting known BT
devices. And wanted to see how often since I'd seen them updated, though
every 10 seconds is still 10 seconds.
2020-10-07 19:06:33 -07:00
Vanessa Regina Andrade dos Santos
07ad779306
Added translation using Weblate (Portuguese (Brazil)) 2020-10-08 03:26:35 +02:00
Eric House
af7f776118 don't post RemoteDeleted Alert more than once 2020-10-07 17:06:18 -07:00
Eric House
a95e761024 fix NPE
I hope. Happens when there's a duplicate delete-deleted-game alert, and
trying to close the view a second time may also be a problem.
2020-10-07 11:29:04 -07:00
Eric House
fef7d2d544 Prune unpaired devs; accept uncatagorized devs
Some devices unpair themselves and needed to stop being listed so user'd
know to fix. And my Nexus 5x is neither a PHONE nor a COMPUTER per BT,
so accept a larger range of BT classes when scanning.
2020-10-06 11:43:21 -07:00
Eric House
a9409f8cca beginnings of script to filter logcat 2020-10-06 10:06:13 -07:00
Eric House
94a709423a improve UI around invites and offering QR code 2020-10-05 18:22:28 -07:00
Eric House
8957b3ff53 remove unused constant 2020-10-05 08:34:28 -07:00
ssantos
c316be6adb
Translated using Weblate (Portuguese)
Currently translated at 40.6% (349 of 858 strings)
2020-10-05 14:12:21 +02:00
Eric House
4f17c64301 close InviteChoicesAlert when game connects
That'll happen if QR code is used in its current location.
2020-10-04 21:47:12 -07:00
Eric House
359e1d12d1 add qrcode for invite to invite-how alert
Need to find the right place for it, explain it, and get rid of the
alert it's part of when the invite is accepted.
2020-10-04 21:47:09 -07:00
ssantos
bb6afba214
Translated using Weblate (Portuguese)
Currently translated at 40.6% (349 of 858 strings)
2020-10-02 23:40:58 +02:00
Eric House
6ae1ec9f81 use a grid for kp dialog layout 2020-10-01 14:44:18 -07:00
Eric House
9f1f1aeee7 only harvest when closing game 2020-10-01 13:39:02 -07:00
Eric House
377bb36c73 cleanup 2020-10-01 13:38:07 -07:00
Eric House
bae7f8a641 add delete button 2020-10-01 11:51:50 -07:00
Eric House
6c5d1b082f start on a gtk dialog displaying/editing knowns 2020-09-30 20:38:44 -07:00
Eric House
21483cf861 add missing file 2020-09-30 20:38:44 -07:00
Eric House
f90d76329b use semaphore to protect known players data
Requires adding a common method called by platform code on creating a
new dutil ctxt.
2020-09-30 17:21:18 -07:00
Eric House
479ec4ef44 tweak 2020-09-30 16:38:34 -07:00
Eric House
27b14ac201 tweaks to server-side script 2020-09-30 15:49:07 -07:00
Eric House
797ba0ba8c make the checked icon solid, and white in middle
Looks like crap when translucent and you see through it
2020-09-30 15:30:09 -07:00
Eric House
fb2a2aa6bb add missing string to fix build 2020-09-30 10:51:26 -07:00
Eric House
31fed09e12 make checkmark translucent rather than replace type
Got tired of losing information about what type of game it was once
selected. Now the sel checkmark is translucent and on top.
2020-09-30 10:33:15 -07:00
Eric House
dbde9c87ae list known player in invite info where known
(for mqtt only)
2020-09-30 10:10:43 -07:00
Eric House
2bfeedceb3 change strings for release 2020-09-30 07:24:22 -07:00
Eric House
3af6d0671c make long-tap on wordlist entry copy it to clipboard 2020-09-29 17:03:44 -07:00
Eric House
2b56b1f8b2 cleanup 2020-09-29 16:06:59 -07:00
Eric House
2a973b6968 make radio buttons in invite alert bigger
Trying to get closer to the size they were in AlertDialog
2020-09-29 15:42:32 -07:00
Eric House
f98759881c use separate new-game scheme for debug app 2020-09-29 14:47:53 -07:00
Eric House
24df7bb694 update bad-url script to offer to launch CrossWords
Working around a bug in Android 11 that broke invitation http urls
getting passed to CrossWords. They always launch the backstop script on
eehouse.org. So modify that script to include a link that will pass the
invitation params to CrossWords via a proprietary scheme it already
registers for. No change to app required!
2020-09-29 13:28:54 -07:00
Eric House
65102c2114 fix test that allowed deleting new-games group 2020-09-29 08:16:46 -07:00
Eric House
148286313f don't try to sort a null array! 2020-09-29 07:54:39 -07:00
ssantos
8d518bba1c
Translated using Weblate (Portuguese)
Currently translated at 40.6% (349 of 858 strings)
2020-09-29 16:40:57 +02:00
Eric House
eb728e4368 fix crash: don't go beyond last edge
An obscure pattern from a user caught this one, but the test should have
been there all along.
2020-09-28 19:18:09 -07:00
Eric House
e9ec30206d add debug-only field tracking place in iterator 2020-09-28 19:18:04 -07:00
Eric House
0f7d924a8e accept dicts with full paths (linux) 2020-09-28 16:12:24 -07:00
Eric House
2f849efe2a make tap on whole line toggle expander 2020-09-28 13:05:24 -07:00
Eric House
574e50f235 keep players in sorted order
Sorting in common/ is hard because there's not locale-aware sort
available. Java should do the right thing so do it there.
2020-09-28 12:23:48 -07:00
Eric House
0c7e9836e2 cleanup 2020-09-28 11:48:26 -07:00
Eric House
7b097ea67d Don't allow duplicates when renaming 2020-09-28 11:17:51 -07:00
Eric House
ba9164641a Toward more generic naming/use of Renamer
Not quite done
2020-09-28 09:32:46 -07:00
Eric House
8406d9e551 implement Known Player renaming
Used existing GameNamer which now needs to be made more general.
2020-09-28 08:59:39 -07:00
Eric House
3d078d0894 don't show KP menuitem when there are none 2020-09-28 08:16:48 -07:00
Eric House
aff75053ac implement deleting known players 2020-09-27 20:52:56 -07:00
Eric House
9e78e47954 fix so non-drag movement stops timer to show words
The last change meant the test whether to show the words under the
pen-down cell would pass when it shouldn't because a drag to an occupied
location didn't register as movement. Change so movement counts to stop
the timer even if it wouldn't change the drag-target's location.
2020-09-27 17:32:23 -07:00
Eric House
80160d740f null-terminate words buffer 2020-09-27 14:23:39 -07:00
Eric House
7fe249ad8d Don't allow drag of tile to place it can't be
Rather than have a tile revert to its original location if it's dropped
where it can't be (on an occupied tile or outside the board), put it in
the last place it could have been. Do that by only updating cur when
it's to a legal location, and then relocating to cur when drag ends.
2020-09-27 13:44:21 -07:00
Eric House
fda432468a UI tweak 2020-09-26 21:26:01 -07:00
Eric House
dd177b96c5 tweaks and cleanup 2020-09-26 21:17:55 -07:00
Eric House
810030125b when inviting show means, not knowns, by default
If you've bypassed the quick-start game it's probably because you want
to play somebody not yet in the Known Players list. So don't start out
with that list as how you'll invite.
2020-09-26 20:40:19 -07:00
Eric House
af3eee42df start with expanders minimized 2020-09-26 20:35:02 -07:00
Eric House
9bc73b8bfc add known players browser
There's lots to do, but it shows what's know about each one and has
unimplemented UI for changing names and deleting.
2020-09-26 19:22:03 -07:00
Eric House
9b12f60dbf Don't use EditWClear; fix spinner size 2020-09-26 11:00:11 -07:00
Eric House
b0c1c5ac1b don't deref ptr after free(); cleanup 2020-09-26 11:00:11 -07:00
Eric House
fad252d8c0 use created stamp to decide between conflicting addresses
Not at all tested, but now the game's timestamp is kept and passed in to
where it can be used to determine, e.g., which of two Bluetooth device
names to keep for a given opponent.
2020-09-26 09:48:35 -07:00
Eric House
c4b55385a3 add creation timestamp to game struct
Address resolution will want to know which address is older. Game
creation is a good enough proxy for that, so add it in a cross-platform
way.
2020-09-26 09:48:35 -07:00
Eric House
d17ac7ea0b rename gamesdb public functions (linux only) 2020-09-26 09:48:35 -07:00
Eric House
f0f2a598e0 make up new name rather than drop new player 2020-09-26 09:48:35 -07:00
Eric House
a054762323 use EditWClear for new quick-game-with-know alert 2020-09-26 09:48:35 -07:00
Eric House
c17dc91672 add not-again explanation of quick-connect alert 2020-09-26 09:48:35 -07:00
Eric House
982f238b9d disable the robot button in invites for now 2020-09-26 09:48:35 -07:00
Eric House
49909c84d6 make known-player stuff conditional
and ifdefs to C and BuildConfig flag to java so the feature can be
hidden in release builds until it's ready.
2020-09-26 09:48:35 -07:00
Eric House
b3fa1edda5 missing file 2020-09-26 09:48:35 -07:00
Eric House
8fa92ad00e provide choice to invite known players
Add second type of option to the current list of "InviteMeans", so you
can configure a game then skip sending email if the player's address is
known.
2020-09-26 09:48:35 -07:00
Eric House
fc05612b74 rough implementation of creating and inviting a known player
Followed the way rematch works. Which is gross. Eventually the two
paths (invitee and rematch) should be unified with rematch getting a lot
simpler.)
2020-09-26 09:48:35 -07:00
Eric House
b8c588e02c add new jni methods (untested) 2020-09-26 09:48:35 -07:00
Eric House
11266ece5b gtk known-player invitation works 2020-09-26 09:48:35 -07:00
Eric House
736c9f3503 harvest players on open; save and make available
Got as far as having gtk client display list of previously harvested
known players to be invited. Their addresses, or at least mqtt ids are
saved. Next is to actually invite one.
2020-09-26 09:48:35 -07:00
Eric House
187323192f Test for game type before calling resend_all
I have a case where app crashed on launch due to the assert that resend_all()
wasn't being called on a standalone game. That happened because somehow
the game's android-side db entry showed pending packets to send, though the
game type was correct. Fix is to check for game type also, but also to add
a test so comms won't get invoked with a null ptr on release builds.
2020-09-26 09:43:48 -07:00
Eric House
d8d894da46 put groupless games into "recovered" group
At least one device was mysteriously losing games. They were winding up
with a group ID for a non-existant group. Now on startup I look for such
games and assign them to a new "recovered games" group. We'll see how
common this is before deciding whether it's a good enough
solution. Another perhaps better solution would be to display all games,
ordered by groups, rather than displaying all known groups and their
games.
2020-09-25 18:02:17 -07:00
Eric House
f4e4dfacb6 up strings for new release 2020-09-23 12:41:40 -07:00
Eric House
471a85e7ef use html entities instead of curly quotes
Fixes problem on older phones
2020-09-23 12:22:24 -07:00
Eric House
24125aad0c disable ill-timed not-again hint
On new installs it happens at the wrong time. So get rid of it for now.
2020-09-23 12:12:27 -07:00
Eric House
43c1e13563 remove dead code 2020-09-23 12:01:17 -07:00
Eric House
00c2052af8 add creation time to set displayable in gamelistitem
I'm storing the create time in the DB on Android so don't need to add it
to CurGameInfo right away.
2020-09-23 11:58:43 -07:00
Eric House
8072a0c629 write 0 where flags will be
unused for now.
2020-09-22 10:56:06 -07:00
Eric House
4183d4362c shrink game-type icons so they look ok as alert title icons
On a small-screen (?) emulator (Nexus 5 1080x1920) the icons in the
new-game alerts are huge. Setting their size to 32x32 instead of 120x120
seems to fix this. Haven't tested on more than two devices, on one of
which they were ok before and still are.
2020-09-22 10:52:19 -07:00
Eric House
774a05f8dc in log script, print sender as well as addressee 2020-09-19 22:52:21 -07:00
Eric House
608b4010a0 move user-vis strings (resIDs) into enum 2020-09-16 22:41:53 -07:00
Eric House
9e2ef3a698 rewrite not-installed php script in py 2020-09-15 12:27:41 -07:00
Eric House
ca64d69cef accept invites with https scheme
Will switch to sending them in a few months
2020-09-15 08:01:05 -07:00
Eric House
584c9e2332 use same ID for all upgrade notifications
Don't want them stacking up
2020-09-14 21:37:15 -07:00
Eric House
38ae14296c Pass message to SMS app same as to email
Doing away with letting user build a local phone list (left over from
the NBS case where it made sense.) Just launch the default SMS app with
the message and let 'em choose a recipient. Hard to test, but works on
two of two phones so far.
2020-09-14 21:21:17 -07:00
Eric House
9be9caae54 don't show the dup-invite alert
It's coming up too often, sometimes several times in a row so that all
must be dismissed. Until I can detect which result from explicit user
action (tapping a URL) rather than duplicated delivery over MQTT and
bluetooth, this is better.
2020-09-14 21:12:35 -07:00
Eric House
755b9e4c1f re-register when variant changes
useful only for testing releases
2020-09-14 12:03:58 -07:00
Eric House
d4ae2e1f06 up version strings and changelog 2020-09-14 09:58:35 -07:00
Eric House
534612be85 catch exception using BT as second user 2020-09-14 09:58:35 -07:00
Eric House
1e9cc5d325 remove redundant key/value pair 2020-09-14 09:10:25 -07:00
Eric House
4b6f4047fb add tmp key to backstop model names
I'm using model names to detect duplicates, but there are enough that
may not suffice. So add a new random per-device ID to be used only until
the dupes are resolved.
2020-09-14 08:36:59 -07:00
Eric House
e4594f36e0 generate new mqtt devid when server reports dupe
Thanks to my use of unseeded() rand() early on to generate mqtt device
IDs, a handful of devices are using the same devIDs. The server notices
this and passes a new response which triggers generating a new id that
should be unique (rand() being seeded earlier now.) Testing says the
games that are left behind with the old devid will limp along thanks to
their relay connection while newer games will be better.
2020-09-13 15:06:08 -07:00
Eric House
4e7055d629 test for null
Was seeing null client in logs. Though NPE was caught and harmless
there's no point in having it thrown.
2020-09-13 15:06:03 -07:00
Eric House
3f6e1a8721 no-code-change cleanup: star next to type not name 2020-09-13 14:34:47 -07:00
Eric House
36cc6cc9d6 fix two bits never being set 2020-09-12 21:23:02 -07:00
Eric House
c6d3759373 test to avoid NPE 2020-09-12 15:53:45 -07:00
Eric House
a5387be742 Change download dir prefs name and add hint
Not sure this even belongs here, but that decision will wait until BYOD
is online and I have to figure out how people will distribute custom
wordlists.
2020-09-11 14:03:17 -07:00
Eric House
aa8364cd3f add full git rev for non-release builds 2020-09-11 14:00:46 -07:00
Dimitry Barré
c949033ad6
Translated using Weblate (English)
Currently translated at 100.0% (858 of 858 strings)
2020-09-11 17:36:08 +02:00
Eric House
74bb463f1f add systemd service file for relay 2020-09-10 15:33:50 -07:00
Eric House
cf3c8fc862 cleanup 2020-09-10 15:33:50 -07:00
Hosted Weblate
1a775043d6 Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: Crosswords/Android
Translate-URL: https://hosted.weblate.org/projects/xwords/android/
2020-09-10 15:33:50 -07:00
Eric House
1d2cdd74fc tweak string 2020-09-10 15:33:06 -07:00
Eric House
e26fd23df1 add addrType to comms' main addr when added to channel
I'm fixing android client not showing stats for or allowing to disable
mqtt after it's added automatically to a game that connects
otherwise. Problem was that only the channel got the mqtt address
flag. So now add the flag for any type that's added.
2020-09-10 15:11:22 -07:00
Eric House
80b7097eee test script: strip extension when making logs dir 2020-09-10 11:13:30 -07:00
Eric House
47bced5f18 offer to hide new-game buttons immediately
Don't wait for user to tap one of the buttons. Instead notice when
scrolling becomes possible, and offer once per launch until user says
"hide" or clicks the don't-ask-again box.
2020-09-09 15:15:31 -07:00
Hosted Weblate
4edf9f6a4f
Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: Crosswords/Android
Translate-URL: https://hosted.weblate.org/projects/xwords/android/
2020-09-08 07:22:15 +02:00
Eric House
ed630fa067 again 2020-09-07 18:35:45 -07:00
Eric House
9ddbea6572 don't commit me 2020-09-07 18:30:21 -07:00
Eric House
79324032b9 remove dead code 2020-09-07 17:59:53 -07:00
Hosted Weblate
cc73b2fbb4 Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: Crosswords/Android
Translate-URL: https://hosted.weblate.org/projects/xwords/android/
2020-09-07 17:48:06 -07:00
Oğuz Ersen
19b584ac94 Translated using Weblate (Turkish)
Currently translated at 2.0% (18 of 861 strings)
2020-09-07 17:48:06 -07:00
Hosted Weblate
937b8e4ff8 Update translation files
Updated by "Cleanup translation files" hook in Weblate.

Translation: Crosswords/Android
Translate-URL: https://hosted.weblate.org/projects/xwords/android/
2020-09-07 17:48:06 -07:00
Eric House
616aeb9da6 reorganize About dialog
Changed enough that I needed to replace an already-localized string with
one that'll need localization. Sorry.
2020-09-07 17:45:46 -07:00
Eric House
066c4a90bf use different url prefix for CrossDbg
Invitations will now only allow opening the game (Dbg or not) that
created them. Should prevent bogus warnings that games have been
deleted. Impacts only developers and friends running CrossDbg and
CrossWords on the same device. Can still get games going between the two
using room names or invite-by-devid.
2020-09-07 12:27:32 -07:00
Eric House
d199789593 up version strings and log for release 2020-09-06 21:47:18 -07:00
Eric House
592554bdcb work around NPE reported on store
Must be a race condition that can cause this. So just fail to open the
game as if something more common had gone wrong.
2020-09-06 21:47:11 -07:00
Eric House
29328e6412 fix NPE in logging 2020-09-06 19:31:25 -07:00
Eric House
7e19a4ef85 fix exception launching in background 2020-09-06 19:30:15 -07:00
Eric House
6d74c4c16f don't allow release builds to invite using mqtt
Duh...
2020-09-06 17:20:51 -07:00
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