1
0
mirror of https://codeberg.org/Freeyourgadget/Gadgetbridge synced 2024-12-15 21:27:51 +01:00
Commit Graph

2300 Commits

Author SHA1 Message Date
Andreas Shimokawa
9e2558beac Pebble 2: make gatt client only mode available to users 2018-05-11 14:23:41 +02:00
Andreas Shimokawa
cdf6039d4c Pebble 2: fixes for experimental client only gatt code
This basically makes sure that
- only one gatt write operation is in progress
- data is not sent from within callbacks to prevent a deadlock when waiting for a nre callback that cant happen yet beause the current has not been retuned
2018-05-11 13:21:40 +02:00
Andreas Shimokawa
f6131772d6 Pebble2: WIP broken and disabled GATT client only support
This will eliminate the need for the Phone being a GATT Server and might lead
to better connection stability once it is ready.

NOTE: Enabling this in the code (change clientOnly=true in PebbleLESupport)
will only work for a few packets before in totally breaks, so only enable
if you want to fix it :P
2018-05-10 22:03:03 +02:00
Andreas Shimokawa
bd012cab2a fix typo 2018-05-07 22:20:18 +02:00
Andreas Shimokawa
5df799419e Mi Band 2: 2hitelist Firmware 1.0.1.81
Closes #1070
2018-05-07 21:54:44 +02:00
Andreas Shimokawa
b585fde78a Amazfit Bip: Raise .res limit to 700000 bytes for modded files 2018-05-06 16:34:14 +02:00
Andreas Shimokawa
8fe0c213cb Amazfit Bip: Whitelist a bunch of new FW versions 2018-05-06 09:54:31 +02:00
Andreas Shimokawa
1996184d69 Amazfit Bip: fix fetching logs from device via debug menu 2018-05-03 23:31:18 +02:00
Andreas Shimokawa
c663ba190d Amazfit Bip: try to fix byte sequence when setting menu items 2018-04-27 21:20:42 +02:00
Andreas Shimokawa
cf438618aa Amazfit Bip: actually include FW 0.1.1.14 in the allowed firmwares that can change menu items 2018-04-27 21:05:52 +02:00
Daniele Gobbetti
fd664b9c67 Add proper mime type to shared gpx files
This prevents apps to show up in the intent chooser that do not know how
to deal with gpx files (e.g. Conversations)
2018-04-27 21:00:38 +02:00
Andreas Shimokawa
e1ef2455dc Amazfit Bip: allow to set displayed menu item in firmware >=0.1.1.14
NOTE:
- You will have to be connected while doing the changes in preferences (FIXME)
- It might not work at all since I did not test after the latest changes :P
2018-04-27 09:28:33 +02:00
Daniele Gobbetti
d512585fae More timezone fixes for android < 24
This change should turn travis green again.
Older version of android should get a proper 24h formatted timestamp.
Perhaps our export will be more compatible with external services as well
( #1076 )
2018-04-24 21:00:22 +02:00
Daniele Gobbetti
c71eba9483 Hotfix for connection issues on API < 24
Fix #1055 properly, as the previous change was not solving the issues
on API < 24. This affected the connection to some devices and caused a
crash on graph access.
2018-04-16 18:26:23 +02:00
Andreas Shimokawa
965964a6b7 Weather: get wind direction and speed also from CM weather reciver 2018-04-14 21:56:10 +02:00
Daniele Gobbetti
cc83021ae3 Weather (and Pebble Webview): fix name and add wind information to weather data
Wind information are stored and put in the reconstructed OWM response.
A long standing bug (having the "name" field inside "main" instead of at
the root level of the json) has been fixed
Lineage OS receiver and if possible weather notification app receiver will
be added in further commits.

See #482
2018-04-14 19:42:05 +02:00
cpfeiffer
19c6c4c88a Fix refreshing of summaries 2018-04-13 20:27:31 +02:00
cpfeiffer
66063256a7 More improvements of GPX export, optimize nearest closest trackpoint finding a bit 2018-04-13 01:16:38 +02:00
AndrewH
1b9b5f821e GPX export fixes (#1060) 2018-04-13 00:50:47 +02:00
Daniele Gobbetti
8f6d287592 Amazfit Bip: add option to reset the last fetched activity (timestamp)
Show a datepicker to reset the date after which the next activity will be fetched.
Also add .gpx extension to fetched activity track (if present) and make
the menu entries translatable.

Close #1057
2018-04-12 22:11:58 +02:00
Daniele Gobbetti
134905ed6a Missing method needed by the previous commit. 2018-04-12 22:07:15 +02:00
Daniele Gobbetti
e7c10f3f01 Use a different DateTimeFormat on legacy android versions (<24)
Fixes #1055
2018-04-12 21:48:02 +02:00
Daniele Gobbetti
5af353d6dc Amazfit Bip: limit the activities to the currently selected device in Control Center
Also don't reverse the results, but sort in the query
2018-04-07 10:16:36 +02:00
Taavi
b1e337d9b7 Update AndroidManifest.xml (#1050)
Request the MEDIA_CONTENT_CONTROL permission

Should fix a crash on Samsung Galaxy S8+ (dream2qltesq), Android 8.0 due to a missing required permission
2018-04-07 00:24:38 +02:00
cpfeiffer
b12286c892 Handle possible null return
Fixes #1052
2018-04-06 23:45:58 +02:00
Daniele Gobbetti
74dcec730c Amazfit Bip: implement deletion and select all actions
Also add white-on-black icons for all the actions
2018-04-05 22:41:03 +02:00
Daniele Gobbetti
80addd3454 Amazfit Bip: Add Contextual Action Bar and long press to select
Change metaphor from long-press-to-contextual-menu to long-press-to-select
The multiple deletion is not functional, the share menu works
2018-04-04 21:38:27 +02:00
Daniele Gobbetti
4f3a0be897 Amazfit Bip: add FloatingActionButton to initiate activities fetching
The swipe to refresh still works for the time being
2018-04-02 21:22:28 +02:00
Daniele Gobbetti
27caa08a1b Amazfit Bip: do not export GPX tracks if there is no point in the track
The approach ignores the activity types and only uses the presence of
valid lon/lan points in the track to create the GPX file or not.
2018-04-02 18:42:08 +02:00
Daniele Gobbetti
cd029e4853 Amazfit Bip: fixes to the activities activity
- Prevent the swipe-to-refresh unless we are on top of the list
- Show the most recent activities on top of the list
2018-04-02 15:53:19 +02:00
Andreas Shimokawa
12ca479439 Amazfit Bip: Various improvements to GPS track fetching
- stop refreshing state of swipe layout and refresh list after fetching
- allow fetching when device gets connected while being inside the activity

(#952)
2018-04-02 10:15:26 +02:00
Andreas Shimokawa
e19c3f7ea0 Amazfit Bip: work around problems when syncing tracks in CEST
(#952)
2018-04-02 00:22:55 +02:00
TaaviE
08feaf30e1 Fixed a bunch of misspells. 2018-03-31 17:31:48 +02:00
Andreas Shimokawa
29a05f1d8f refactor onFetchActivityData() into onFetchRecordedData(dataTypes) to make it more generic
This removes misuse of testNewFunctionality() and support fetching GPS data and debug logs
Fetching debug logs (Amazfit Bip/Cor) is now accessible in the debug activity
Fetching GPS data can be done by swiping in the list activity.
TODO: actually refresh list when fetching data is done :P

Also fix some android studio warnings on the go...
2018-03-31 16:21:25 +02:00
Andreas Shimokawa
c493df2423 Merge branch 'bip-wip' 2018-03-31 11:31:03 +02:00
Andreas Shimokawa
4e496cf2af Fix warnings in DiscoveryActivity and fix a potential NPE (fixes #1048) 2018-03-30 15:04:53 +02:00
Andreas Shimokawa
cf97677cdc Amazfit Bip: Whitelist Firmware 0.1.1.14 2018-03-30 14:40:40 +02:00
Andreas Shimokawa
66bb0bd81b Merge branch 'master' into bip-wip 2018-03-27 11:09:59 +02:00
Andreas Shimokawa
41632b8eb3 Only send dummy AQI to Bip, not to Cor
See #1033
2018-03-24 19:28:06 +01:00
Andreas Shimokawa
74f9798071 Amazfit Cor: try to send location
This could help #1033
2018-03-24 19:22:49 +01:00
Andreas Shimokawa
73cfeb8a7e Mi Band 2: scheduling diplay on lift wrist does not work (only on Bip), make the on and off settings at least work again... 2018-03-24 00:00:25 +01:00
Andreas Shimokawa
e26dbc6812 Mi Band 2/Bip/Cor: allow to set a period when the display/background light gets enabled when lifting the wrist
Closes #1013
2018-03-23 23:30:28 +01:00
TaaviE
6be7ee4a96 Fixed a few misspells and extended my name. 2018-03-23 07:26:25 +01:00
cpfeiffer
d2c952ffa5 Improvements to the singleton pattern, better encapsulate fields 2018-03-18 12:59:32 +01:00
Daniele Gobbetti
ec1f4505bd Pebble: prevent crashing when the ExternalPebbleJS Activity was not running
when receiving configuration data from the external browser.

Parse the passed data to load the correct watchface javascript, and ensure
the currently connected device is a Pebble (and try to reconnect if there
is no device connected, as a bonus)
2018-03-17 18:50:53 +01:00
Daniele Gobbetti
8e67f31309 Pebble Webview: check the availability of Internet Helper packages before
binding the service to it.

Could help with #643, but it's a blind attempt.
2018-03-17 16:57:02 +01:00
Daniele Gobbetti
d286f497f0 Pebble: Iterate over knownKeys only if they are present.
Fixes #1027
2018-03-17 16:12:40 +01:00
Daniele Gobbetti
3e903362e6 Explicitly ask for RECEIVE_SMS permission at startup.
Should fix #1025
2018-03-17 15:58:44 +01:00
Andreas Shimokawa
a8fdcb50f3 fix bad merge from master 2018-03-13 21:17:14 +01:00
Andreas Shimokawa
3d3cc1f40c Merge branch 'master' into bip-wip 2018-03-13 17:27:18 +01:00
Sergio Lopez
092e62bfad Pebble: add support for weather in Simply Light watchface
Celsius forced as with other watchfaces #482
2018-02-28 22:42:47 +01:00
Daniele Gobbetti
d88badaf4d Pebble JS: add transactionId metadata to the appmessage.
Removes the errors in Pebble-Casio-WV58DE as reported in #482
2018-02-28 21:56:46 +01:00
Ted Stein
1e0d7550d9 Add ta marbutah to Arabic transliteration.
Add ة, a normally-silent form of the letter ت that was missed when this
functionality was originally added.
2018-02-27 17:37:12 +01:00
Andreas Shimokawa
0ea5c3dee1 Charts: Ignore heart rate data if sample indicates that the device was not worn
Closes #1005
2018-02-26 22:06:56 +01:00
License Bot
238bacde9f Update license headers 2018-02-26 14:27:33 +01:00
ladbsoft
d5978d9b30 Xwatch Basic Support (#972)
Initial XWatch support

* Activity syncing
* Multimedia control using the watch's button
2018-02-25 12:05:36 +01:00
cpfeiffer
6370c6cac1 Make sure to close the outputstream of the export 2018-02-24 21:02:53 +01:00
Andreas Shimokawa
6ebc763a4c Amazfit Bip: whitelist firmware 0.1.0.86 2018-02-24 00:03:19 +01:00
Daniele Gobbetti
daabff1364 Blind attempt to fix crashing configuration page if bgJS is disabled
This might help #643 but I could not reproduce the reported issue
2018-02-23 18:56:05 +01:00
Daniele Gobbetti
e7a1e1b8c3 Move the connected device to top in control center
What happens in reality is that devices are sorted according to their
connection status first, and then by name. So even if/when we support
multiple device connection, the order should remain sane.

This closes #842.
2018-02-19 18:27:48 +01:00
Andreas Shimokawa
669f4bcdd0 Mi Band 2: use native notification patterns instead of manually timed ones
What we do now is:
- Send a notification with the app icon
- Send the vibration pattern right away (this causes the first unwanted
  vibration to be cancelled immediately and only the pattern is noticable,
  while the icon stays on screen during the vibration pattern)
- (optional) send the text together with a generic sms icon

This also fixes problems of text not appearing in newer firmwares when
a notification pattern with repeat has been set in Mi Band settings.
2018-02-18 01:43:05 +01:00
Daniele Gobbetti
4f246b3ed9 Add Antox to the chat applications.
Notifications coming from the chat.tox.antox package are treated as chat
messages. This closes #910
2018-02-17 17:39:15 +01:00
Daniele Gobbetti
48b89f1bd2 Add Kontalk to the chat applications.
Notifications coming from the org.kontalk package are treated as chat
messages. This closes #994
2018-02-17 17:33:34 +01:00
Andreas Shimokawa
e48885df7d Merge branch 'master' into bip-wip 2018-02-15 23:38:06 +01:00
Andreas Shimokawa
4d7c697497 Pebble: Fix for background javascript that tries to send floats or doubles
Also log further exceptions

Thanks @danielegobbetti for the original patch ;)
2018-02-14 23:20:22 +01:00
Daniele Gobbetti
e28333fe6e Fixes to make the application run on Oreo
- tested on Oreo 8.1

this commit includes changes cherry picked from 3b6da66643
2018-02-14 21:35:22 +01:00
TaaviE
18cec2087f Changed API version and everything else required.
(cherry picked from commit db1a282)
2018-02-14 21:35:06 +01:00
cpfeiffer
78b50e82fa Fix crash in settings activity with export location
The way this works will never be a fully working solution, because uris are
*not supposed* to be resolved to a filesystem path. So while this may work
right now, it will most probably fail in the future, with other content providers.

See e.g. https://github.com/iPaulPro/aFileChooser/issues where this code originally came from
(via Stackoverflow).

We won't crash anymore, but we won't support certain content providers. In the long run, we
should search for the proper solution.

Closes #982
2018-02-11 14:32:21 +01:00
Daniele Gobbetti
55d9ff0954 Amazfit Cor: Whitelist firmware 1.0.6.76
Reported as working on the issue tracker. Closes #984
2018-02-10 23:36:05 +01:00
Daniele Gobbetti
831303aea8 Fix regression introduced by 737578debc
With many thanks to https://github.com/80tf3262p8 who spotted the error

closes #975
2018-02-10 16:54:20 +01:00
Daniele Gobbetti
8ba56db786 Pebble Webview: refine response mimicking
- check the called domain to return (potentially) different messages
- mimic the online check of TrekVolle watchface
2018-02-10 16:53:35 +01:00
Daniele Gobbetti
81d4ca84a8 Add Polish 'Ł' and 'ł' to transliteration map
closes #987
2018-02-10 16:53:35 +01:00
Daniele Gobbetti
a29394b96e Omnijaws Weather: correctly pick todays' min and max temperature 2018-02-10 16:53:35 +01:00
Andreas Shimokawa
b9c6b3bb8f Amazfit Bip: Whitelist fw 0.1.0.70/80 and fonts
Also change the recommended flashing order of .fw .res and .gps
2018-02-08 22:41:16 +01:00
Andreas Shimokawa
ea4a4edc5b Amazfit Bip: Fix language setting on new firmwares 2018-02-08 22:21:15 +01:00
Andreas Shimokawa
e657b327c9 Pebble: only call Pebble object in javascript if it is actually available 2018-02-04 00:02:14 +01:00
Andreas Shimokawa
06929d04f9 Pebble: when faking the OWN response also set the "description" field with the current condition
Helps TrekVolle to display weather
2018-02-03 23:08:12 +01:00
Andreas Shimokawa
3871b6f0be Amazfit Cor: Allow watchfaces to be flashed
Untested as Cor has no maintainer
2018-02-01 14:22:18 +01:00
Andreas Shimokawa
5973f189eb Amazfit Bip: try to detect the font type not by the size
This could help modders
2018-01-30 23:28:49 +01:00
Andreas Shimokawa
95cc538575 Amazfit Bip: Allow language to be set to Spanish (needs firmware 0.1.0.66 beta, not recommended)
This also requires the latin font to be flashed before.
2018-01-30 23:06:08 +01:00
criogenic
0313500652 fix privacy caller ID selection (#962) 2018-01-30 22:44:27 +01:00
Andreas Shimokawa
0c907f0ba1 Amazfit Bip: whitelist 0.1.0.44 firmware 2018-01-27 23:03:47 +01:00
Andreas Shimokawa
f6f4d7ec40 Amazfit Cor: support flashing new res format also on Cor 2018-01-27 21:51:34 +01:00
Andreas Shimokawa
14a6c9a626 Amazfit Bip: support flashing new res, font, and latin font files
Required for firmware 0.1.0.66
2018-01-27 21:41:35 +01:00
Andreas Shimokawa
d9c012025d Pebble: prepend application start event to premature appmessage from a newly started app
This should fix some InvalidStateExceptions when using background javascript
2018-01-25 16:42:43 +01:00
Felix Konstantin Maurer
296dfe2f17 Fix conversion from String to Integer 2018-01-24 22:01:12 +01:00
Andreas Shimokawa
1349a1c7da Merge branch 'master' into bip-wip 2018-01-22 08:57:01 +01:00
TaaviE
32dcdc24ba Fixed two strings incorrectly being merged together. 2018-01-21 22:43:10 +01:00
Andreas Shimokawa
76cf667202 Amazfit Bip, do not set menu items during initializaton
(This could prevent menus from vanishing when updating to FW 0.1.0.51)
2018-01-20 01:34:40 +01:00
Andreas Shimokawa
06d6aeacb9 Prepare find phone feature to be generic and implement apphandler for upcoming pebble helper app 2018-01-19 23:12:50 +01:00
NotAFIle
d4a8b6cd80 Recognize some more alternative apps
* protonmail email
 * challegram and plus messenger Telegram clients
2018-01-19 22:39:57 +01:00
NotAFile
32522c4f55 recognize telegram beta notifications 2018-01-18 20:43:32 +01:00
Andreas Shimokawa
04018955c1 Mi Band HRX: support older firmwares where the Band was named "Mi Band 2i" 2018-01-14 16:34:40 +01:00
cpfeiffer
fa0fd250cf Attempt to fix crash with ExternalPebbleJSActivity #863 2018-01-14 01:40:04 +01:00
cpfeiffer
da5d1e3685 Trying to simplify ExternalPebbleJSActivity#onCreate() a bit
(by splitting into separate methods)
2018-01-14 00:20:13 +01:00
cpfeiffer
9ee1aa87e8 Move some methods to clarify responsibilities and simplify some things 2018-01-13 21:58:40 +01:00
cpfeiffer
e159a5dde3 Cleanup, deduplication, null-handling fixes 2018-01-13 21:08:51 +01:00
Andreas Shimokawa
c420f2ce93 Amazfit Bip: implement find phone feature
This probably also works with Amazfit Cor

Closes #887
2018-01-13 18:46:21 +01:00
Andreas Shimokawa
fda4816fc1 Mi Band 2: Whitellist firmwares I tested
Fixes #939
2018-01-13 16:56:30 +01:00
Andreas Shimokawa
aca31c320a Amazfit Cor: allow to flash latest firmware 2018-01-13 16:29:48 +01:00