Gordon Williams and José Rebelo
5805559e4d
Added HTML-compatible xpath implementation for Bangle.js http requests as per https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/4845#issuecomment-4588211
2025-05-23 21:49:45 +02:00
Gordon Williams
839cbcd3e5
Bangle.js: Fix call notification in Turkish locale
...
Turns out toUpper/Lowercase use the current locale, so for Turkish, "INCOMING" turns into "ıncomıng" (the 'i' is different!)
2024-12-13 11:07:21 +00:00
Gordon Williams
9a962bd495
Bangle.js: Support sending activity type from Bangle ( #4323 )
2024-12-05 09:31:07 +00:00
Gordon Williams
53144ff220
Bangle.js: ensure we escape char code 16 as it's not 100% foolproof to use
2024-09-11 14:17:39 +01:00
Gordon Williams
0c19010ca2
Bangle.js: when converting text to bitmaps, try and split up emoji so we can render just those in color.
...
Rendering text as well uses more memory but means text is rendered white, which doesn't work on some backgrounds
2024-06-03 15:58:05 +01:00
Gordon Williams
7ea2261ba3
Bangle.js: honour the enable_calendar_sync setting
...
Allow handleCalendarSync to send a single `calendar-` command with all IDs before it starts adding new items (faster)
2024-05-24 09:26:37 +01:00
Gordon Williams
4da5a73cd6
Bangle.js - remove large lines of _____ from calendar (generated by google teams)
2024-05-23 09:48:37 +01:00
Gordon Williams
1165a5d03c
Revert "Bangle.js: add support for SMS replies" - not needed as per #3654
...
This reverts commit 323f8028e0 .
2024-03-28 08:45:14 +00:00
Gordon Williams
323f8028e0
Bangle.js: add support for SMS replies
2024-03-28 08:31:07 +00:00
Gordon Williams
665656ddc0
Bangle.js: Fix message reply (and add .reply in notify if message supports reply)
...
NotificationListener now stores the handle ID in wearableAction.handle rather than hard-coding the calculation
Should fix ZeppOS too which was copy&paste from Bangle.js
2024-03-27 10:50:50 +00:00
Gordon Williams
8d43624a9a
Bangle.js: filter calendar events to try and remove :~:~:~:~:~ lines for google meet, double newlines, and HTML
2024-03-22 11:43:30 +00:00
Gordon Williams
d3c16a1d40
Bangle.js ensure we don't try and use base64 to encode something that is actually UTF8
2024-03-19 13:36:55 +00:00
Gordon Williams
f91156cd3e
Bangle.js - fix issue where a newline right at the beginning of a received string could cause "String index out of range: -1" errors for all subsequent received data
2024-03-13 09:52:03 +00:00
Gordon Williams
dd0dfb23ac
Bangle.js: Ensure we request a higher MTU if it's been enabled in settings (otherwise Android just uses the default). Really improves communication speed.
2024-02-22 12:00:33 +00:00
Gordon Williams
684d976bfc
Bangle.js: Ensure SMS messages have src field set to "SMS Message" (it was previously left out)
2023-11-30 09:33:07 +00:00
Gordon Williams
8ef80a2565
Bangle.js: ensure GPS speed is reported correctly when the phone is providing it
2023-11-29 10:04:33 +00:00
Gordon Williams
66b36564ab
Bangle.js: Attempt to fix some of the warnings generated by Android Studio - some addec null checks, and appending using StringBuilder
2023-11-20 11:42:41 +00:00
Gordon Williams
140c62ac55
Bangle.js: Fix #2996 - force a reconnect when rx/tx characteristics can't be found
2023-11-20 11:02:16 +00:00
Gordon Williams
cb0962e0f6
Bangle.js: Ensure we split Chinese words every 2 chars when converting them to bitmaps to give us the opportunity to wrap text better
...
Also make sure we never create a bitmap >255 width/height as this wouldn't work on Espruino
2023-11-09 15:12:59 +00:00
Gordon Williams
f4707c15f4
Bangle.js - mention 'Android Integration' app for Bangle, not 'Gadgetbridge', add extra character conversions
2023-11-08 10:51:00 +00:00
Gordon Williams
1aadc04fd7
Bangle.js: add more non-ascii characters which can be converted to ASCII equivalents.
...
This helps for Chinese where words would normally break on these chars anyway - based on https://forum.espruino.com/conversations/391391
2023-11-06 14:42:24 +00:00
Gordon Williams
a3f3bb212a
Bangle.js: lower threshold for low battery warning
2023-10-10 11:15:05 +01:00
Gordon Williams
7f962912bb
minor tweak - ensure we round wind speed so it's not to 12 decimal places
2023-10-10 11:11:23 +01:00
Gordon Williams
c647c2647f
Bangle.js: Improve file downloads - we can now at least get files downloaded
2023-09-14 12:49:37 +01:00
Gordon Williams
e18a991b13
Bangle.js: ensure char code 255 is translated properly into a String - this can then be sent to the App Loader. Fixes https://github.com/espruino/EspruinoAppLoaderCore/issues/55
2023-09-14 11:07:05 +01:00
Gordon Williams
1b281c7c62
Fixing SecurityErrors on Android 12+ discovered via Play Store (after API31 update)...
...
* Check for bluetooth permissions in DiscoveryActivity
* At startup we now pop up a dialog explaining why we want *any* permissions
* Fixing ControlCenterv2 permissions requests for Android S and later (requesting background location stopped *any* dialog appearing)
* Fixing all errors in DiscoveryActivity from Android Studio by catching errors
* Move permission requests around to ensure that we only call RequestMultiplePermissions from onCreate
* Only show dialog if we have permissions to request
* Fix "LifecycleOwners must call register before they are STARTED" on some Android devices: https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3192/files#issuecomment-967267
2023-07-25 11:50:53 +01:00
Gordon Williams
88e0b9543d
Bangle.js: HTTP request XPath can now return Arrays.
...
More robost toJSON that deals with unicode and null
Log messages when converting words to images so we can debug when words are being converted that shouldn't be
2023-06-30 11:34:53 +01:00
Gordon Williams
0e0f72410a
Bangle.js: fix mixup of navigation left slight&sharp icons
2023-06-29 14:49:22 +01:00
Gordon Williams
c6ebfc4900
Update changelog
2023-06-26 12:09:47 +01:00
Gordon Williams
d82ba7a04c
Bangle.js: Send the timestamp of our last activity sample to the Bangle on connect, so that it can update us on missing activity samples
2023-06-26 11:39:29 +01:00
Gordon Williams
2aac797dec
Remove some build warnings in BangleJSDeviceSupport
2023-06-26 11:20:50 +01:00
Gordon Williams
8e010bc6dd
Stop BangleJSDeviceSupport repeatedly calling GBLocationManager.stop and spamming the log with "Stop location updates"
2023-06-26 11:15:54 +01:00
Gordon Williams
94cd7523db
Ensure we now escape chars in the unicode start range. With Bangle.js ~2v18.20+ we added Unicode support, but if we're sending non-unicode chars in the unicode range it will confuse Espruino
2023-06-26 11:07:38 +01:00
Gordon Williams and José Rebelo
b2aa61e182
Changed NavigationSpec's distance into a String.
...
Previously we used an integer (in meters) but when using
Google Maps navigation, Google Maps picks units based on locale *and*
the distance - it might report "100m" or "20km". Then we carefully undo
all that work, and for PineTime we just as "m" so you may well have "20000m"
or more displayed, which is not ideal.
I imagine at some point that will change, but we probably want to
be able to handle that in the OSMAnd side of Gadgetbridge so all watches
that implement navigation will benefit (and won't duplicate code).
2023-06-13 07:32:12 +00:00
Gordon Williams
1fa8936544
Google Maps: Added more recognised icons - needed another enum for going all the way around a roundabout
2023-06-09 13:59:05 +01:00
Gordon Williams
735f27d5bf
Add Navigation handling to Bangle.js
...
Add extra 'ETA' field to NavigationInfoSpec
Allow Local Notifications from Google Maps to be parsed into NavigationInfoSpec by GoogleMapsNotificationHandler
Moved notification handling after blacklist check as per https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/3136#issuecomment-920095
Ensure we don't create a nav message for 'Location Shared with you' messages.
Recognise 'ft' as a distance unit and convert accordingly
Google Maps navigation: Adding new recognised icons, and removing warnings/errors from file
2023-06-09 08:50:40 +01:00
Gordon Williams
b334773856
Bangle.js: fix the rare case where we're converting an emoji/unicode to a bitmap but it doesn't have a width/height - we just create a bitmap of min. 1px
2023-06-08 12:36:12 +01:00
Gordon Williams
e59375242e
Bangle.js: Allow an activity sample to have a time specified - first steps in allowing Bangle.js to send 'missed' health data
2023-06-06 20:25:58 +01:00
Gordon Williams
788cb15500
Based on Play Store crash reports and stack traces, add a null check to try and avoid crashes
2023-05-22 13:38:04 +01:00
Gordon Williams
82778c46a5
Bangle.js: ensure we can return to appsmanagementactivity after having opened another window
...
Attempting to handle file open and close dialogs from the WebView
2023-05-22 13:13:50 +01:00
Gordon Williams
757e36ebd6
Bangle.js: Add message size limitation to Calendar and Messages - stops huge data streams being sent out esp for calendar events
2023-05-19 10:46:37 +01:00
Gordon Williams
0debd26a37
Add null pointer check based on Google Play store reports:
...
java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String android.net.Uri.getPath()' on a null object reference
2023-05-19 09:44:10 +01:00
Gordon Williams
2a5cd559d5
Fix issue updating timezone in setting.json if the timezone is zero ( https://github.com/espruino/BangleApps/issues/2575 )
2023-03-21 15:08:59 +00:00
Gordon Williams
521edc4332
Bangle.js: Increase default realtime HRM/step interval to 10 seconds
...
Disable manual heart rate measurement - the current implementation in Gadgetbridge seems not really compatible with Bangle.js. There's no way to turn the HRM off when the window is closed, and HRM samples from *any* device would appear to be shown - not just the one that HRM info was requested on
2023-01-26 10:31:13 +00:00
Gordon Williams
b16464b3b6
Bangle.js stop 'toast' warning message appearing when starting the app loader. Fix https://github.com/espruino/BangleApps/issues/2496
2023-01-13 14:28:38 +00:00
Gordon Williams
f3fa01dfba
Bangle.js: Quick tweak to stop us sending bitmaps for common characters that already had good enough equivalents
2023-01-11 13:45:46 +00:00
Gordon Williams
6d35ca3ec0
fix gbDevice==null errors again, and avoid spamming log with ACTION_DEVICE_CHANGED messages
2022-12-12 16:10:14 +00:00
Gordon Williams and Gitea
0dd0b2bead
Bangle.js flow control. If the Bangle is busy and unable to accept more data, Gadgetbridge will now pause sending until the Bangle is ready for more.
...
This works by adding the ability to pause the sending of data from the Bluetooth LE queue. While BtLEQueue is modified, unless setPaused(true) is called it behaves exactly as before so shouldn't cause any issues.
2022-12-12 07:43:20 +00:00
Gordon Williams and Gitea
bb1323dd61
Ensure we automatically convert unrenderable chars the title/description of calendar events
2022-12-12 07:42:22 +00:00
Gordon Williams and Gitea
e003e0b672
Fix the code that forces a calendar sync on Bangle.js - previously sending "android.intent.action.PROVIDER_CHANGED" didn't work
2022-12-12 07:42:22 +00:00
Gordon Williams
55cbac5f8f
Squashing some build warnings. Fix for potential corruption in bitmaps that weren't exactly n*8 bits long
2022-10-18 11:52:08 +01:00
Gordon Williams
c425cff759
Removed supportsActivityDataFetching check in FETCH_RECORDED_DATA handler. This
...
fixes a regression for Bangle.js where 'Debug -> Fetch Debug Logs' wasn't working because
it didn't support activity data fetching.
see https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2526#issuecomment-648446
2022-10-18 08:25:14 +01:00
Gordon Williams
6eeb70ac6b
Remove un-needed import in last commit (sorry!)
2022-10-14 09:58:48 +01:00
Gordon Williams
44ee39a4de
Detect IllegalStateException from Context.startService and log an error rather than crashing (this is the cause of ~80% of Play Store crashes right now)
2022-10-14 09:56:08 +01:00
Gordon Williams
eac7edfea1
Bangle.js - small tweak to fix occasional NullPointerException reported via Play Store
2022-10-14 09:48:55 +01:00
Gordon Williams and Gitea
abec54fb1a
Bangle.js: Added PATCH HTTP request type, and fix for VolleyError UnsupportedOperationException when supplying custom headers
2022-09-27 11:11:52 +02:00
Gordon Williams and Gitea
87c61948a6
Bangle.js: smooth out battery level readings
2022-09-06 21:13:37 +02:00
Gordon Williams
0f052f5467
Bangle.js: Fix null pointer issue if headers not supplied for HTTP request
2022-08-24 20:26:25 +01:00
Gordon Williams and Gitea
f996973a4d
Minor fixes for crashes that Play Store build has encountered
2022-08-12 08:41:16 +02:00
Gordon Williams and Gitea
c762bafb2e
support for specifying HTTP method, headers and body
2022-08-12 08:41:16 +02:00
Gordon Williams
2e4fa6d699
Tweak for potential null pointer exception seen after play store release
2022-07-25 14:52:30 +01:00
Gordon Williams
14db0d7df6
Merge branch 'master' of codeberg.org:gfwilliams/Gadgetbridge
2022-07-25 14:35:25 +01:00
Gordon Williams
1e4fb7ee87
Bangle.js - make 'text as bitmaps' have transparent background, and allow font size to be specified - fixes https://github.com/espruino/BangleApps/issues/2057
2022-07-25 14:34:34 +01:00
Gordon Williams
fd31acd517
revert last changes - we can just use banglejs/AndroidManifest.xml
2022-06-15 13:41:48 +01:00
Gordon Williams
c7351156ca
Merge remote-tracking branch 'freeyourgadget/master'
2022-06-15 13:40:41 +01:00
Gordon Williams
6bea0af9e0
Bangle.js flavor - move to SDK 30 as we need it for Play Store
2022-06-15 13:39:11 +01:00
Gordon Williams
abf6785fb5
Merge remote-tracking branch 'freeyourgadget/master'
2022-06-15 11:49:08 +01:00
Gordon Williams
c2d98b5a24
Bangle.js - fix corruption in images with a certain sequence of chars
2022-06-15 11:48:41 +01:00
Gordon Williams
4c27f43fea
Bangle.js - fix corruption in images with a certain sequence of chars
2022-06-15 11:36:35 +01:00
Gordon Williams
ae3fc3ed48
Extra QUERY_ALL_PACKAGES permission required for SDK 30 (which Play Store needs)
2022-06-15 11:36:24 +01:00
Gordon Williams
f606e85e1b
Bangle.js: fix null pointer issue for debug messages, and ensure '...' special char is just replaced with '...'
2022-06-14 14:31:18 +01:00
Gordon Williams
c11af9e95c
Keep data sent to Bangle.js in the log as well
2022-06-14 14:31:12 +01:00
Gordon Williams
1eab878c8e
Bangle.js: fix null pointer issue for debug messages, and ensure '...' special char is just replaced with '...'
2022-06-14 14:30:33 +01:00
Gordon Williams
b9096b3b74
Keep data sent to Bangle.js in the log as well
2022-06-14 11:23:38 +01:00
Gordon Williams
657a117c9e
bringing back into sync with freeyourgadget
2022-06-13 08:46:15 +01:00
Gordon Williams
3ef39433a6
Bangle.js build: remove the 'Donate' link for the Bangle.js build only, and instead add a message in the app's About dialog (unfortunately this is needed because Google Play store policy doesn't allow you to 'buy' stuff outside of the store)
2022-06-13 08:38:05 +01:00
Gordon Williams
e40bd79fbf
Bangle.js: Adding built-in app-loader view (available via app management icon). Only available on internet-enabled builds (it's a webview)
2022-06-13 08:35:32 +01:00
Gordon Williams
4a3b530d8f
Merge remote-tracking branch 'freeyourgadget/master'
2022-06-13 08:27:10 +01:00
Gordon Williams
bdcaeae177
Merge remote-tracking branch 'freeyourgadget/master' into freeyourgadget_master
2022-06-13 08:26:53 +01:00
Gordon Williams
bb274cd6be
remove un-needed imports
2022-06-10 13:11:50 +01:00
Gordon Williams
ca61ad9662
fix merge error
2022-06-10 13:08:25 +01:00
Gordon Williams
71b1a140f6
Merge branch 'freeyourgadget_master'
2022-06-10 12:14:34 +01:00
Gordon Williams
2bb8eefe23
Merge branch 'freeyourgadget_master' of codeberg.org:Freeyourgadget/Gadgetbridge into freeyourgadget_master
2022-06-10 12:13:23 +01:00
Gordon Williams
607441b6b0
Support for color dithered bitmaps, and converting emoji->bitmaps
...
# Conflicts:
# app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/banglejs/BangleJSDeviceSupport.java
2022-06-10 12:01:12 +01:00
Gordon Williams
12f2049ac6
Bangle.js: Keep a log of data sent from the watch, and allow it to be saved with 'Fetch Device Debug Logs' from the debug menu
2022-06-10 11:48:09 +01:00
Gordon Williams
774fb4efc3
Bangle.js fix message REPLY option
2022-06-10 11:45:52 +01:00
Gordon Williams
cf40dae93b
Bangle.js fix message REPLY option
2022-06-10 11:40:53 +01:00
Gordon Williams
6fb22b9441
Merge branch 'master' of codeberg.org:Freeyourgadget/Gadgetbridge
2022-06-10 10:15:20 +01:00
Gordon Williams
a796860188
Support for color dithered bitmaps, and converting emoji->bitmaps
2022-06-10 10:14:37 +01:00
Gordon Williams
233053f2ab
Bangle.js: Keep a log of data sent from the watch, and allow it to be saved with 'Fetch Device Debug Logs' from the debug menu
2022-06-07 13:01:34 +01:00
Gordon Williams
f96d413d96
Merge branch 'master' of codeberg.org:Freeyourgadget/Gadgetbridge
2022-05-25 13:28:35 +01:00
Gordon Williams
5107887bec
For Bangle.js app remove the Donation link (Google Play Store policy) and add text in the About dialog urging users to donate via the homepage.
2022-05-25 13:26:50 +01:00
Gordon Williams
961cdd437f
Make app loader page more reliable, and allow a custom app loader URL to be specified
2022-05-23 17:08:10 +01:00
Gordon Williams
57b53f28be
Now split words for image conversion on punctuation, not just space.
...
Also fix accidental typos
2022-05-23 16:01:06 +01:00
Gordon Williams
5211540e03
Improve JSON stringification for Bangle.js - much more compact, and now handles non-ASCII chars correctly
2022-05-23 15:38:06 +01:00
Gordon Williams
7d89279662
Add extra string needed for last commit 3f053927e0
2022-05-20 08:43:16 +01:00
Gordon Williams
9dbdb3da93
Merge branch 'freeyourgadget_master'
2022-05-20 08:41:41 +01:00
Gordon Williams
3f053927e0
Pop up a dialog asking about Location permissions (although others get requested too).
...
Conversation at https://codeberg.org/Freeyourgadget/Gadgetbridge/pulls/2675#issuecomment-455468
2022-05-20 08:39:47 +01:00
Gordon Williams and Gitea
8d2a127879
When we need permissions, we now pop up a dialog asking nicely and explaining why. Also instructions, since it may be unclear for new users.
2022-05-19 22:17:24 +02:00
Gordon Williams
c101ac74df
Add even more prompts (specifically for location) - thanks Google Play :/
2022-05-19 14:52:27 +01:00