1
0
mirror of https://codeberg.org/Freeyourgadget/Gadgetbridge synced 2024-12-05 00:12:56 +01:00
Commit Graph

2576 Commits

Author SHA1 Message Date
Andreas Shimokawa
34c3737f3c Amazfit Bip: Whilelist recently tested versions 2017-12-16 23:25:56 +01:00
Andreas Shimokawa
22eb69d1c2 read humidity from CM Weather provider 2017-12-14 15:10:14 +01:00
Andreas Shimokawa
948002dc7c Weather: recreate OWM fake reply from weatherSpec, no not directly create in in Weather Notification receiver
This should bring CM weather on par with Weather Notficication when using background js
2017-12-14 14:54:09 +01:00
Andreas Shimokawa
1752b1b51e fix cm/lineage weather not updating after changing location 2017-12-12 22:36:15 +01:00
cpfeiffer
fccd2ebb77 Display the actual firmware kind instead of "Firmware"
i.e. "GPS Firmware", "Watchface", "Resources", ...
2017-12-11 23:36:39 +01:00
Andreas Shimokawa
bfceaf9cc9 Merge branch 'master' into bip-wip 2017-12-11 19:30:54 +01:00
Andreas Shimokawa
f0ac296492 Initial support for cyanogenmod/lineage weather provider
TODO:
- also reconstruct json for Pebble background js fake replies
- find a better location for settings
- interatively display candidates when looking up location
- grey out setting on non-cm/los devices
2017-12-11 19:09:37 +01:00
Andreas Shimokawa
b7b96b5ab5 Amazfit Bip/Cor: for untested installable files, at least display the type (res/font/gps/watchface)
For res the version is also displayed (the same as noted in the wiki)
2017-12-10 20:30:27 +01:00
Andreas Shimokawa
ff93122ddc Amazfit Bip/Cor: parse and display firmware version for unknown versions
Unfortunately that does not work for the Mi Band 2 yet
2017-12-10 11:31:42 +01:00
Andreas Shimokawa
8fbf97f713 Amazfit Bip/Cor: Send fake AQI 0 to make current weather appear
I have no idea why this is necessary.
But at least it makes the current weather visible :/
2017-12-08 08:26:10 +01:00
Andreas Shimokawa
eec0a4dc4c Amazfit Bip/Cor: Send also current temperature/condition
Closes #905
2017-12-04 22:33:53 +01:00
michaelneu
76de046434 add Facebook Messenger Lite notification support (see #883) 2017-12-03 00:18:55 +01:00
Andreas Shimokawa
eb9d321b95 Use Teclast H30 code for Teclast H10
Thanks @newfla for pointing that hout
Closes #867
2017-12-02 20:35:56 +01:00
Andreas Shimokawa
7beb793165 Amazfit Bip: Fix installation of new 0.1.0.11 firmware
Also whitelist 0.0.9.49 and .59
2017-12-02 01:28:59 +01:00
Andreas Shimokawa
9dfde46bb0 Amazfit Bip: send condition string also for forecast days
String for forecasts are looked up from OWM condition ids, while the current condition string is already translated by WeatherNotification
2017-11-30 18:26:10 +01:00
Andreas Shimokawa
0befc1a95e Weather refactoring
No longer save an instance of ParcelableWeather2, rely on our WeatherSpec instead which now has all forecast data and save reconstructed owm weather json in Weather
2017-11-30 10:24:31 +01:00
Andreas Shimokawa
879272deb7 Weather: refactoring and support forecast for more than one day 2017-11-29 23:57:36 +01:00
Zhong Jianxin
b4bbd0323c Combine multipart SMS message into messages by sender
When receive SMS message, instead of generating multiple notifications
by PDU size, after this change, there will be only one notification for
each sender.
2017-11-23 22:26:46 +01:00
Andreas Shimokawa
36e50bddb0 remove obsolete comment 2017-11-19 23:47:06 +01:00
Andreas Shimokawa
c325ba1a22 Amazfit Bip: show find phone events (not yet supported) 2017-11-19 23:46:58 +01:00
Daniele Gobbetti
797ad096dc Don't add the fetch activity action button on KK
Fixes #886

Add accent color also on first notification creation #759
2017-11-19 16:39:44 +01:00
Andreas Shimokawa
20208ca7a3 Work around non-working outlook notifications
See #851
2017-11-14 23:27:01 +01:00
Andreas Shimokawa
7ffcc44378 Pebble: fix nasty crash when appmessage id is > 127
This is a regression since Gadgetbridge 0.22.0

Potentially fixes the following:

- #868
- #876
- #884

NOTE:

Java has no unisgned, java has no unsigned, java has no unsigned.
Java has no unisgned, java has no unsigned, java has no unsigned.
Java has no unisgned, java has no unsigned, java has no unsigned.
2017-11-14 22:28:54 +01:00
Andreas Shimokawa
97fda2434d Pebble: prevent potential NPE, and add more loggins in PebbleKit code 2017-11-14 22:10:40 +01:00
Andreas Shimokawa
d25da96804 Pebble: log some errors during JSON encoding/decoding 2017-11-14 22:02:00 +01:00
Davis Mosenkovs
5a77f224f4 Mi Band 2: whitelist firmware 1.0.1.54
Firmware version 1.0.1.54 is marked as recommended on wiki (Mi Band
Firmware Information).
2017-11-12 23:17:00 +01:00
Andreas Shimokawa
82ad7abf62 Mi Band 2/Bip/Cor: Only enable notification on realtime hr characteristic when live activity is used 2017-11-11 23:37:59 +01:00
Zhong Jianxin
2f443ad419 Allow WeChat notifications
It seems WeChat always mark its notifications as LocalOnly. The reason
may be to avoid double notifications when using Android Wear watches,
since WeChat has a standalone Android Wear app.

Do not ignore WeChat notifications even if they're marked as LocalOnly.
2017-11-11 16:14:35 +01:00
Andreas Shimokawa
2ccebe07f5 Merge branch 'master' into bip-wip 2017-11-11 00:08:19 +01:00
Andreas Shimokawa
1e324acd65 Mi Band 2/Bip/Cor: Whole day HR Measurement 2017-11-11 00:04:51 +01:00
Andreas Shimokawa
e3ca3872e1 Amazfit Bip: Allow watchface flashing and whitelist Firmware 0.0.9.40 2017-11-09 22:05:01 +01:00
cpfeiffer
da7de378d3 Back out the DST handling, since it causes problems with activity fetching
Details: when we ask to fetch activity samples from date:time:tz+dst, the band,
under certain conditions, will send us back date:time:tz (without the dst offset)

We're fine with that, so we start fetching. When it's done, we take the last sample's
timestamp (still without dst offset), convert it to a unix timestamp, create a Calendar
using current tz and apply the unix timestamp. Then we send that timestamp again to the
band in order to fetch activity samples from then, but we again add the dst offset to the tz,
so send as date:time:tz+dst without changing the timestamp. That way, we may end up at the
timestamp we began with, fetching the same activity data again and not progressing.

We first need to thorougly understand how the devices behave, before we can reenable and fix
this.
2017-11-07 21:24:48 +01:00
Andreas Shimokawa
9764e8e54e try to parse timezone that comes back from huami devices
(there are other places where something like this has to be done, probably also in the other direction)

related to #869

(cherry picked from commit a58e3f66ce)
2017-11-06 23:23:11 +01:00
Andreas Shimokawa
6b56e8e568 Amazfit Cor: Fix flashing of new .res files 2017-11-06 07:17:01 +01:00
Andreas Shimokawa
a58e3f66ce try to parse timezone that comes back from huami devices
(there are other places where something like this has to be done, probably also in the other direction)

related to #869
2017-11-05 22:35:28 +01:00
Andreas Shimokawa
24f98504b0 Amazfit Bip: when deleting activites, delete the correct one 2017-11-05 00:20:26 +01:00
Andreas Shimokawa
ac98111502 Amazfit Bip: Fix Running/Cycling activity mapping (was swapped) 2017-11-05 00:08:39 +01:00
Andreas Shimokawa
640e7f0abf Merge branch 'master' into bip-wip 2017-11-03 23:27:58 +01:00
cpfeiffer
9e79eee707 Bip wip: fix position -> item mapping 2017-11-03 22:04:01 +01:00
cpfeiffer
23b18abfe8 Avoid potential NPE 2017-11-03 22:01:11 +01:00
cpfeiffer
d9de8e0cab Bip: new activity type mapping 2017-11-03 21:54:48 +01:00
Andreas Shimokawa
83c06f4429 Amazfit Cor: fix firmware update 2017-11-03 01:09:09 +01:00
cpfeiffer
8b66d0f0f7 Bip: oups, that was just for testing 2017-11-02 00:19:31 +01:00
cpfeiffer
c8b71677cd Bip: remember last time synced 2017-11-02 00:18:48 +01:00
Andreas Shimokawa
dd440f51df Amazfit Bip: add manual language selection 2017-11-01 23:32:54 +01:00
cpfeiffer
fd159b7603 Bip: improved logging, read expected number of bytes for progress monitoring during sync 2017-11-01 23:05:29 +01:00
Daniele Gobbetti
331ca6a47e Merge branch 'master' into bip-wip 2017-11-01 22:12:13 +01:00
Andreas Shimokawa
e2546f772a Mi Band 2: prevent detecting as Mi Band HRX in all cases, fixes HR not visible in charts
Fixes #862
2017-11-01 22:10:06 +01:00
cpfeiffer
923d7ae09d Bip: fix activity track kind constants 2017-11-01 20:02:30 +01:00
Daniele Gobbetti
72f76b60d3 Pebble: send temperatures according to the configured measurement system
Fixes #858
<Without further comments but feel free to insert a long rant about the beauty of the metric system>
2017-11-01 17:58:58 +01:00
Daniele Gobbetti
e7839f1c39 Replace the Combined Charts with simple Line Charts
Fixes #808
The datasets had to be separed in order to fill the area below each line with the right color.
2017-11-01 17:35:05 +01:00
Daniele Gobbetti
98b04dd2fc Allow disabling left/right swipe on the graphs
Fixes #860
 Added preference to control this option
 Swiping down will still toggle a sync of the data from the device (if connected) in any case
2017-11-01 09:07:01 +01:00
cpfeiffer
7b3556756a Bip: activity types are different from samples' activity kind 2017-10-31 23:39:49 +01:00
cpfeiffer
f5318287c4 WIP: Bip GPS fetching, parsing, exporting
Also adjust Mi2 date/time sending wrt DST offsets
2017-10-31 23:16:39 +01:00
cpfeiffer
eac8f5f8c7 Extract isValidHeartRate() method to HeartRateUtils 2017-10-31 23:16:39 +01:00
Daniele Gobbetti
5417c5b5f6 Change notification, and fix the connection logic:
- fix bug that caused the wrong device to be connected sometimes
- add accent color
- add battery status
- remove duplicated title
- allow to connect also before first connection (the last connected device will be used)
2017-10-30 21:37:31 +01:00
Andreas Shimokawa
3282e329f3 Mi Band 2: Fix bad copy and paste error that lead to Mi Band 2 being detected as Amazfit Bip
Fixes #859
2017-10-30 09:03:40 +01:00
Andreas Shimokawa
9032e6d92c Change debug output in ACL connect receiver, to avoid further confusion 2017-10-25 22:27:41 +02:00
Andreas Shimokawa
94cfaadc41 Amazfit Cor: whitelist latest .res and .fw
Add a note about this being totally untested, especially scary since the new res format is different.
2017-10-25 22:26:38 +02:00
License Bot
3ea2ac6dd2 Update license headers 2017-10-25 09:29:36 +02:00
Andreas Shimokawa
02ad21cdb8 Amazfit Bip: Allow flashing of latest gps firmware and whitelist 0.0.9.26 2017-10-25 08:29:33 +02:00
Andreas Shimokawa
55cdc6d1c5 Amazfit Cor: Untested firmware update support
(refactor stuff along the way)
2017-10-24 22:01:25 +02:00
Daniele Gobbetti
e028b4d223 Pebble: add method to stop the background JS engine without disposing the webview 2017-10-23 20:47:30 +02:00
Andreas Shimokawa
83038a47ca use abstract HuamiCoordinator as base for MiBand2/HRX/Bip/Cor and separate from Mi1 Coordinator 2017-10-23 14:46:08 +02:00
Andreas Shimokawa
495ba81edc remove unused getPrimaryActivity() from coodinators, mark Mi Band HRX as non-heartrate 2017-10-23 13:44:38 +02:00
Andreas Shimokawa
0f46ea2a59 Try to blindly add support for Amazfit Cor 2017-10-23 11:28:51 +02:00
Andreas Shimokawa
7e5301e963 add missing file 2017-10-23 11:13:21 +02:00
Andreas Shimokawa
69619c21f6 Mi Band 2: try to add support for Mi Band HRX
Also refactors some stuff, basically moving stuff around
2017-10-23 10:28:54 +02:00
Andreas Shimokawa
ea06df4d0c Pebble: dispose webview when app with app handler has been started (misfit, morpheuz) 2017-10-23 09:23:28 +02:00
McSym28
48c338adb8 Adding support for ukrainian characters
- 'ґ' (Cyrillic Small Letter Ghe with Upturn U+0491) / 'Ґ' (Cyrillic Capital Letter Ghe with Upturn U+0490);
- 'є' (Cyrillic Small Letter Ukrainian Ie U+0454) / 'Є' (Cyrillic Capital Letter Ukrainian Ie U+0404);
- 'і' (Cyrillic Small Letter Byelorussian-Ukrainian I U+0456) / 'І' (Cyrillic Capital Letter Byelorussian-Ukrainian I U+0406);
- 'ї' (Cyrillic Small Letter Yi U+0457) / 'Ї' (Cyrillic Capital Letter Yi U+0407)
2017-10-22 19:25:45 +02:00
Andreas Shimokawa
f07b77f903 Mi Band 2: support app icons and textual notifications for more apps 2017-10-22 00:02:36 +02:00
Andreas Shimokawa
a809ad214d Refactor some common Huami stuff (Mi Band 2 / Bip)
This also fixes a bug where every event from the device (like not worn detection) counted as a button press
2017-10-21 22:50:28 +02:00
Daniele Gobbetti
5262c6e3d7 Add quick actions buttons to Gadgetbridge notification #759
- Disconnect button if connected
- Fetch activity if connected and supported by device
- (re)connect the last connected device if disconnected

Known bug: In the last case, if multiple devices were connected, the wrong device gets re-connected
2017-10-20 22:49:53 +02:00
Andreas Shimokawa
f03d53993a Mi Band: Put Viber and Line into "generic_chat" category instead of "generic_phone"
Fixes #830
2017-10-18 00:04:45 +02:00
Andreas Shimokawa
6603b3fa05 Merge branch 'background-javascript' 2017-10-16 23:06:36 +02:00
License Bot
8f06e36c00 Update license headers 2017-10-16 09:38:02 +02:00
Andreas Shimokawa
8243fe712e Amazfit Bip: Fix non-working notifications from Outlook, Yahoo Mail and GMail
Fixes #844
2017-10-15 22:16:54 +02:00
João Paulo Barraca
7947d94418 Merge branch 'hplus-unicode-only-first-bytes' 2017-10-15 14:28:56 +01:00
João Paulo Barraca
9b6cfd686a Implement proper HPlus Unicode encoding support and Fixes #781 2017-10-15 14:23:21 +01:00
Daniele Gobbetti
2a0388f1c6 Pebble: background webview add allowed domains array 2017-10-13 22:16:01 +02:00
Daniele Gobbetti
c4f36d1202 Pebble: background webview, address (most of) review comments 2017-10-13 21:57:22 +02:00
cpfeiffer
e2868f0e24 Just a FIXME for someone 2017-10-12 23:25:26 +02:00
Daniele Gobbetti
b0c723b68a Pebble: enable legacy handlers if background JS is disabled 2017-10-10 22:10:26 +02:00
protomors
4b4e95bfe0 NO.1 F1: Alarms support. 2017-10-10 00:41:27 +02:00
protomors
895c19cc1c NO.1 F1: Moved code for setting time into appropriate method. 2017-10-10 00:41:27 +02:00
protomors
440d1e6a81 NO.1 F1: Removed some code duplication. 2017-10-05 08:05:19 +02:00
protomors
23b66459f5 NO.1 F1: Show data fetching progress. 2017-10-05 08:05:19 +02:00
protomors
bf34586a22 NO.1 F1: Check CRC before saving data. 2017-10-05 08:05:19 +02:00
Andreas Shimokawa
0eb8a0b5e2 Pebble: Fix background javascript for Pebble2/LE/Emulator 2017-10-04 23:12:49 +02:00
Andreas Shimokawa
fbef490419 Merge branch 'master' into background-javascript 2017-10-04 21:49:39 +02:00
José Rebelo
5701707e87 Mi Band 2: Change distance unit 2017-10-03 09:12:33 +02:00
Andreas Shimokawa
49bebc3440 Merge branch 'master' into background-javascript 2017-10-01 23:36:22 +02:00
protomors
b819be7db6 Now setting for measurement system is sent to the device immediately after changing. 2017-10-01 20:44:35 +02:00
protomors
7b78003ba1 NO.1 F1: Display settings.
Set time format and distance units.
2017-10-01 20:44:35 +02:00
Andreas Shimokawa
6f358ff722 fix measurement system summary value not being updated 2017-09-30 23:36:20 +02:00
Andreas Shimokawa
486596b1a8 Pebble: support setting the other non-metric system crap for the pebble
(pebble health has to be activated again in app manager after changing the option)

This also moves the fake:// uri handling code from PebbleIoThread to PebbleSupport
2017-09-30 23:27:19 +02:00
Andreas Shimokawa
6d8ffad55c Call onSetConfiguration() in listener if measurement system gets changed in preferences
(And implement onSetConfiguration() for HPlus)
2017-09-30 22:45:45 +02:00
Andreas Shimokawa
9f05aff11b Mi2/Bip: Various sleep fixes
- Long standing bug fixed in determinePreviousValidActivityType()
  it always got the very fist valid sample, not the nearest in the past
  (for me that was light sleep, so every timespan queried began with light sleep)
- Support type 2 (running) and 12 (wakeup(?))
- Support new firmwares (Mi2 and Bip) by masking only the last 4 bits (0xf),
  takes some ugly query hack in determinePreviousValidActivityType() since
  greenDAO does not support the & operator (even though sqlite does)
2017-09-29 17:21:16 +02:00
Andreas Shimokawa
0ffa2ce45a move up measuerement system from hplus to global preferences 2017-09-29 12:33:08 +02:00
Andreas Shimokawa
e6d939e5cb Merge branch 'master' into background-javascript 2017-09-28 17:31:45 +02:00
cpfeiffer
0687564bbb Remove unused, commented out code 2017-09-28 17:31:40 +02:00
Andreas Shimokawa
7d05682d8e Amazfit Bip: whitelist firmware 0.0.9.14 2017-09-28 16:20:22 +02:00
Andreas Shimokawa
3d09b9dc97 Amazfit Bip: Switch language on the watch automatically according to the phone locale
Supported:
- Simplified Chinese
- Traditional Chinese
- English
2017-09-28 16:04:06 +02:00
cpfeiffer
770c8a482d Bip: pass the right logger instance 2017-09-27 21:46:23 +02:00
Andreas Shimokawa
0a9664d5ec Merge branch 'master' into background-javascript 2017-09-25 23:50:08 +02:00
cpfeiffer
32d5ceb78f Make update notification dismissable on error conditions
good idea, @joserebelo #821
2017-09-25 23:25:04 +02:00
cpfeiffer
976942757f Make sure we get a stacktrace in the log
(so we don't have to guess where it happened) #807
2017-09-25 23:25:04 +02:00
cpfeiffer
0fd6064ab6 Just a single method rename, to make it more clear 2017-09-25 23:00:39 +02:00
Andreas Shimokawa
47bdeea257 Amazfit Bip: map a few more icons 2017-09-25 22:34:05 +02:00
Daniele Gobbetti
e8ae47de79 Pebble: Make background JS support toggle-able
- Add preference to enable background JS (default disabled)
- Remove the dummy activity used to create the webview, use ExternalPebbleJSActivity instead
- Add layout for legacy configuration, used if background JS is not enabled
- Create the view upon connecting, not when launching the application
- Remove the generic helpers used to find out if any device would need the background webview
- Drastic refactoring of WebviewSingleton moving internal classes in a new package "webview" in service/devices/pebble
2017-09-25 17:12:35 +02:00
Daniele Gobbetti
af6271a428 Merge branch 'master' into background-javascript 2017-09-25 11:21:11 +02:00
Daniele Gobbetti
c74ea64b70 Pebble: Address the missing remarks of #807
- Separate the getAudioPlayer method
- Replace the println calls with proper LOG statements
2017-09-25 11:09:45 +02:00
cpfeiffer
3c9fab0471 Fix fw update notification being stuck at the end
Fixes #821
2017-09-25 00:03:40 +02:00
Andreas Shimokawa
e28085e6af Mi Band 2/ Bip: Do not send user info if not set up 2017-09-24 23:03:11 +02:00
Andreas Shimokawa
717eb6ba58 Amazfit Bip: Whitelist fw 0.0.8.97/.98, fix detection for newer alm and cep files 2017-09-24 22:44:18 +02:00
Andreas Shimokawa
46b50515f3 Mi Band 2/Bip: set user info from user attributes 2017-09-23 00:51:57 +02:00
Andreas Shimokawa
2be84435ce Mi Band 2/Bip: implement setting user info (experimental, disabled) 2017-09-23 00:09:52 +02:00
Frank Slezak
6ec1555178 Add support for dynamic Pebble background colors (#819)
Pebble: Add support for dynamic Pebble background colors
- Add a couple additional icon types
  - Add Lighthouse (currently unused)
  - Add Transit (public transportation app)
- Tweak the colors on existing icon types
- Implement logic to grab primary (vibrant) color from app logo
  - The color will be used when displaying a notification for an app
    that does not have any configs bound to it.
- Alter NotificationType to support a color (named pebbleColor)
- Alter the Pebble notification poster to listen to the color from
  the notification
- Alter the DeviceCommunicationService to allow for color passthrough.
- Add logic to convert HEX or Integer representations of RGB888 colors
  to Pebble RGB222 format.
- make the package name retrieved lowercase.

Fixes: #815
2017-09-19 13:24:31 +02:00
Andreas Shimokawa
f5b8bdb1c2 add missing file 2017-09-18 23:26:34 +02:00
Andreas Shimokawa
412153364e Amazfit Bip: initial support for fetching debug logs from the watch
TODO:
- fix wrong toast about start time
- properly create an API for this kind of stuff (currently uses testNewFunction())
2017-09-18 23:24:11 +02:00
cpfeiffer
35e59d0add Bip: WIP for ashimokawa 2017-09-17 22:36:49 +02:00
Andreas Shimokawa
37da178365 Amazfit Bip: log "step goal reached" event 2017-09-16 19:53:06 +02:00
Andreas Shimokawa
9471131490 Amazfit Bip: log more events coming from the watch 2017-09-16 12:33:33 +02:00
Andreas Shimokawa
e5a8ca5374 Amazfit Bip: more debug output for events coming from the watch 2017-09-16 00:20:33 +02:00
Andreas Shimokawa
d49db12a0d Amazfit Bip: Allow flashing of GPS CEP and Almanac, whitelist .96 fw 2017-09-15 11:44:24 +02:00
Andreas Shimokawa
3301194e75 Consolidate duplicate Mi2 / Bip icon definition
Also handle some more recently added icons
2017-09-14 10:15:14 +02:00
Kaz Wolfe
2bc0c27b90 Update Pebble Notification Icons
- Add a large number of notification icons missing from current version
- Update colors for existing icons to match Pebble colors exactly
- Add hooks for new icons

Linked issue: N/A
2017-09-14 08:04:54 +02:00
Andreas Shimokawa
99d873a178 Merge branch 'master' into background-javascript 2017-09-13 21:51:55 +02:00
License Bot
a10fc8ad4e Update license headers 2017-09-12 12:39:15 +02:00
Andreas Shimokawa
acf779a8e4 Amazfit Bip: fix long messages not being displayed at all 2017-09-11 23:20:57 +02:00
Andreas Shimokawa
b87d9d649d Amazfit Bip: Whitelist FW 0.0.8.88 2017-09-11 23:05:49 +02:00
Michal Novotny
05d0625b68 Mi Band 2: Implement multiple button actions
This enables option for multiple button actions according to the "Delay after button action". This broadcast is being sent to the intent
along with button_id extra identifying how many times have the pass been done.

By pass defined number of button presses is meant.
2017-09-10 23:02:13 +02:00
Quallenauge
851e47f550 Add support for EXRIZU K8 smartband.
The device is compatible to HPLUS protocol.
2017-09-10 22:57:32 +02:00
Daniele Gobbetti
6def9dc07e Pebble: allow to translate quick actions sent to the watch
Fixes #789
2017-09-10 17:57:18 +02:00
Gabe Schrecker
6f702778f4 Support control of multiple media playback applications (#807)
* Added Lollipop only detection of the playing media package, using MediaSessionManager. Replicates funtionality of the Official Pebble client.
2017-09-10 15:17:21 +02:00
protomors
b66b33239d Added database migration. 2017-09-10 14:45:09 +02:00
protomors
273c2ddbfd NO.1 F1: Support for heart rate measurement. 2017-09-10 14:45:09 +02:00
protomors
918cc75f6c NO.1 F1: fetch sleep data. 2017-09-09 18:12:39 +02:00
cpfeiffer
e9a68e70b5 Make Mi2 FetchOperation reusable 2017-09-09 00:02:30 +02:00
Andreas Shimokawa
5cd00ccbb5 Fix language switching for good
Maybe
:D

Fixes #802
2017-09-07 23:26:53 +02:00
Andreas Shimokawa
3e05f8ff4a Merge branch 'master' into background-javascript 2017-09-05 22:49:07 +02:00
Michal Novotny
fcf9be877a Support for button actions on Mi Band 2 device (#793)
Implement button actions for MiBand 2
2017-09-05 22:37:41 +02:00
Andreas Shimokawa
f0a9c57937 Merge branch 'master' into background-javascript 2017-09-05 10:21:45 +02:00
Andreas Shimokawa
365fcace06 Fix merge 2017-09-05 10:20:37 +02:00
cpfeiffer
a93ace255b Don't crash, don't queue a transaction twice!
Fixes #794
2017-09-04 23:39:40 +02:00
cpfeiffer
e44eb03698 Amazfit Bip: avoid sending weather info when not initialized 2017-09-04 23:23:51 +02:00
cpfeiffer
1ddea9268d Amazfit Bip: request GPS fw version earlier
(to avoid recreation of DeviceAttributes because fw2 is sometimes available and sometimes not.)
2017-09-04 23:19:53 +02:00
Andreas Shimokawa
a911ba5423 Merge branch 'master' into background-javascript 2017-09-04 21:08:36 +02:00
Sami Alaoui
f6ce0c1a0e Add initial support for Teclast H30
Scan and connection, battery level, firmware version, date and time sync
(along with some other currently hardcoded settings), notification
support, alarm support, and some more.
2017-09-04 20:59:09 +02:00
protomors
b8c5a44709 Removed interpolation of data samples. Added intensity column for activity chart. 2017-09-04 20:38:20 +02:00
protomors
22a15c631c Notify user about failed operations. 2017-09-04 20:38:20 +02:00
protomors
b7c1c28e76 Split hour samples into minutes. 2017-09-04 20:38:20 +02:00
protomors
ecd9964c5b NO.1 F1: Fetch steps data. 2017-09-04 20:38:20 +02:00
cpfeiffer
f5934dfb3b Don't crash when no firmware version available yet 2017-09-03 23:56:30 +02:00
cpfeiffer
55bf9ef784 Some logging 2017-09-03 23:51:20 +02:00
Daniele Gobbetti
df2a313168 Webview: make the webview more robust to disconnections 2017-09-03 17:55:00 +02:00
Daniele Gobbetti
d669d3b325 Make NoF1 compatible with background js branch 2017-09-03 17:09:19 +02:00
Daniele Gobbetti
bb962001a5 Merge branch 'master' into background-javascript
# Conflicts:
#	app/src/main/java/nodomain/freeyourgadget/gadgetbridge/GBApplication.java
2017-09-03 16:49:27 +02:00
Andreas Shimokawa
cfc310692f Amazfit Bip: Fix call notification with unknown caller 2017-09-03 14:37:32 +02:00
Andreas Shimokawa
a63dc4a018 Pebble: fix taking screenshots on Android 8.0
Closes #790
2017-09-03 14:12:41 +02:00
cpfeiffer
24797c7dd7 Make AbstractGBActivity abstract :-) 2017-09-03 10:48:14 +02:00
cpfeiffer
962720145e Fix custom language being lost for newly created activities
So we do need to set the language both on change and onCreate()

For some reason, the title bar of the SettingsActivity is not updated on recreate().

Closes #787
2017-09-03 01:04:34 +02:00
Andreas Shimokawa
f39d8cd2e2 Amazfit Bip: Use AlertCategory.Email for email
Somehow the custom icon for email no longer works with never firmwares
2017-09-02 23:25:53 +02:00
cpfeiffer
c468e7f521 Mi Bands+Bip: when an operation finishes, unset the gatt callback on the BtLEQeue
Otherwise it will continue to receive events until another transaction is being executed.
2017-09-02 22:49:58 +02:00
cpfeiffer
c91e14f644 Bip: some code deduplication 2017-09-02 21:45:56 +02:00
Andreas Shimokawa
eaf7b76715 Pebble: Try to support spotify
untested
 #704
2017-09-01 23:47:03 +02:00
protomors
e7fff32fb8 Send more settings to device (with hardcoded values, for now).
Now bracelet should work correctly without ever connecting to native app.
2017-09-01 22:19:33 +02:00
protomors
c97136e4fe Fixed wrong parameter. Time is set in 24-hour format. 2017-09-01 22:19:33 +02:00
protomors
f8473ac42d Initial notifications support and some refactoring. 2017-09-01 22:19:33 +02:00
protomors
f5b8fada75 Initial NO.1 F1 support.
Works: connecting, writing user data, reading firmware version and battery charge, finding device.
2017-09-01 22:19:33 +02:00
Andreas Shimokawa
e839a2c6a3 Trim strings coming from DeviceInfoProfile (BLE).
On the Bip strings have trailing zeroes. Putting this in the Database results in a "BLOB"
2017-08-31 11:52:21 +02:00
Andreas Shimokawa
32c03013ce Display fw2 as GPS for Amazfit Bip 2017-08-29 23:12:28 +02:00
Andreas Shimokawa
c627d690c7 Merge branch 'master' into background-javascript 2017-08-29 22:53:38 +02:00
Andreas Shimokawa
23fa37d99d Amazfit Bip: get and display gps version
Currenty this is displayed as HR (heart rate firmware)
2017-08-29 22:16:59 +02:00
AnthonyDiGirolamo
f855dc5d45 Add Google Messenger as well 2017-08-28 21:34:19 +02:00
AnthonyDiGirolamo
24c9ef339b Add Pebble icon notifications for Gmail, Inbox, and Google Calendar. 2017-08-28 21:34:19 +02:00
Andreas Shimokawa
74652397dd Merge branch 'master' into background-javascript 2017-08-28 00:35:28 +02:00
Andreas Shimokawa
a3108a4958 fix string 2017-08-27 23:37:42 +02:00
Andreas Shimokawa
455dfde63d Amazfit Bip: add instructions and warning to the firmware installation screen 2017-08-27 23:08:10 +02:00
Andreas Shimokawa
1ff8fbac55 switch speed zones and live activity tabs
(makes it easier, since live activity is not for all devices9
2017-08-27 22:00:28 +02:00
Daniele Gobbetti
41feb008a7 Various style fixes
The top axis had the default color and was not visible with dark theme.
Enabled granularity of 1 to avoid fractions of steps being shown on the axis.
2017-08-27 17:26:24 +02:00
Andreas Shimokawa
2eb25e7c4e Amazfit Bip: Firmware installation screen improvements
- Try to improve firmware detection (older 0.0.8.xx firmwares were not detected)
- Whitelist GPS firmware that comes with firmware 0.0.8.xx
- show actual device icon istead of hardcoded Mi Band icon
2017-08-27 00:32:15 +02:00
Andreas Shimokawa
b4639b9062 Speed Zones Chart: remove unused legend code 2017-08-27 00:04:08 +02:00
Andreas Shimokawa
6fb0a977fc rename StatsChartFragment to SpeedZonesFragment 2017-08-26 23:55:11 +02:00
Vebryn
ea6457c359 fix building error 2017-08-26 23:36:59 +02:00
Vebryn
a61cbddb5d simplifying speed zones and re-enabling 2017-08-26 23:35:16 +02:00
Andreas Shimokawa
165dcf897b Amazfit Bip: fix sending weather at specific times 2017-08-26 00:42:04 +02:00
Andreas Shimokawa
a5886cbb49 Revert "store UTC in weather timestamp"
It was already in UTC but I sucked

This reverts commit b9eedce13b.
2017-08-26 00:41:36 +02:00
Andreas Shimokawa
6d28b8232b Amazift Bip: fix weather on FW 0.0.8.74, support condition text 2017-08-25 23:36:14 +02:00
Daniele Gobbetti
8aebf2d9d5 Null extras bundle should not be processed.
Blind attempt to address #778
2017-08-25 22:01:21 +02:00
License Bot
15f4ce2869 Update license headers 2017-08-25 11:25:01 +02:00
Andreas Shimokawa
013e270a9c Add missing file :/ 2017-08-25 01:17:34 +02:00
Andreas Shimokawa
4bb18b9795 Amazfit Bip: enable caller name display upon initialization
This is neccessary for newer firmwares (0.0.8.74 at least)
(I assume this command also exists on Mi2, hope it is true :D)
2017-08-25 01:04:36 +02:00
Andreas Shimokawa
12d9b7812f Amazfit Bip: Initial experimental firmware update support
USE AT YOUR OWN RISK:

NOTE: During update your device is named a Mi Band

1) Flash .gps (installation will take a while after transfer)
2) Flash .res
3) Flash .fw (device will reboot)
4) Gadgetbridge wont notice that update was successfull, known bug.
2017-08-25 00:21:47 +02:00
Andreas Shimokawa
ebc1cedf55 damn typo 2017-08-23 23:12:44 +02:00
Andreas Shimokawa
a398f33cb8 Mi Band2: do not misuse ALERT_LEVEL_ constants, use AlertCategory enum 2017-08-23 23:04:40 +02:00
Andreas Shimokawa
f1d252c7ee Disable appmessage handler for healthify and trekvolle 2017-08-22 20:14:41 +02:00
Andreas Shimokawa
f4e11c8cb3 Merge branch 'master' into background-javascript 2017-08-22 20:13:20 +02:00
Andreas Shimokawa
460c5c9a24 Fix setting smart alarms on Mi Band
Closes #750
2017-08-22 01:01:35 +02:00
Andreas Shimokawa
b9eedce13b store UTC in weather timestamp 2017-08-22 00:26:49 +02:00
Andreas Shimokawa
4c8728c78f Amazfit Bip: Support app icons in notifications 2017-08-21 23:47:47 +02:00
Andreas Shimokawa
fdcc51cb98 Amazfit Bip: Support sending notification body, not only title 2017-08-20 23:58:41 +02:00
Andreas Shimokawa
1eff950bde Amazfit Bip: Support some weather icons 2017-08-19 23:49:19 +02:00
Andreas Shimokawa
1f6634374d Amazfit Bip: send weather for today and tomorrow (high and lows)
TODO: convert condition codes
2017-08-19 20:58:13 +02:00
Daniele Gobbetti
c05e5f15ab Add link to liberapay.com in the main drawer.
/cc #14
2017-08-18 21:51:12 +02:00
Andreas Shimokawa
b19cf85a12 Amazfit Bip: support E-Mail icon and do also send notifications from unknown sources 2017-08-18 16:21:54 +02:00
Daniele Gobbetti
d00b5a5d5d Merge branch 'master' into background-javascript 2017-08-18 12:15:01 +02:00
Daniele Gobbetti
8cce2d1362 Pebble: allow to blacklist certain calendars
As requested in #736, this adds an entry in the settings menu that allows to blacklist certain calendars.
To avoid confusion, all the former blacklist methods and fields have been renamed to apps_blacklist. The new entries are called calendars_blacklist.
Importing the settings has not been tested with the current changes.
Closes #736

Future improvements TODO: The new setting lives in the Pebble section, i believe in the future the blackslist functionality should be centralized and put in the sidebar.
2017-08-18 10:34:42 +02:00
Andreas Shimokawa
a6059a5ce2 Add transliteration for German
Closes #766
2017-08-16 21:41:51 +02:00
Andreas Shimokawa
cd5af1e66a Amazfit Bip: implement find lost device by simulating a phone call from "Gadgetbridge" 2017-08-16 20:55:20 +02:00
Translation Bot
7108dd7b88 Amazfit Bip: Implement support for rejecting calls
Taking calls does not work with recent Android versions, I guess we need to push the button in the notification :(
2017-08-15 17:24:16 +02:00
cpfeiffer
6b1ba4d161 Don't duplicate colors, use the theme #757 2017-08-14 21:59:49 +02:00
Andreas Shimokawa
80dce95372 Inital Amazfit Bip support
Support is almost on Mi Band 2 level.

What does not work yet:
- flashing firmware files
- taking or rejecting phone calls
- syncing GPS tracks
- sending weather
- notification only include title, not a body
- unknown notification's text is not forwarded to the watch at all (same on Mi Band 2 #754)
2017-08-13 16:31:11 +02:00
Andreas Shimokawa
4dc53a4390 Also theme full changelog with default css (copy and paste sucks, I know) 2017-08-12 00:45:07 +02:00
Andreas Shimokawa
7302832d84 Also include DEFAULT_CSS for ChangeLog theming 2017-08-12 00:32:25 +02:00
Andreas Shimokawa
b25febf0e5 Pebble: LOG stacktrace when connection fails 2017-08-12 00:18:15 +02:00
Andreas Shimokawa
9ea4b8ae43 Show dark themed changelog when dark theme is selected
Closes #757
2017-08-11 23:57:00 +02:00
Andreas Shimokawa
65835db5cc Pebble: more debug output for webview singleton, whitelist tagesschau.de for tests 2017-08-10 00:33:54 +02:00
Daniele Gobbetti
7475d170a7 Pebble: add support for the (unreleased) internet helper addon
This will use the internet helper application if it's available on the android device or fall back to existing methods if it doesn't.
2017-08-05 16:04:48 +02:00
Andreas Shimokawa
6916beabed Pebble: fix wrong uuid being passed from protocol to js 2017-08-02 23:09:43 +02:00
Daniele Gobbetti
aa28625d9f Pebble: JS basic implementation of transaction acknowledgment
JAVA side:
- first trivial handling of ACK/NACK message,
- fake the location age until an update mechanism is implemented,
- make the appmessage parsing more robust,
- comment the forecast mimicked reply as it was wrong and confusing for some watchfaces

JS side: first trivial handling of ACK/NACK message
2017-08-02 22:08:29 +02:00
Andreas Shimokawa
5939c244fb Merge branch 'master' into background-javascript 2017-08-01 11:19:17 +02:00
cpfeiffer
95ce3d333e Ugly workaround for blacklist not properly persisting
Fixes #696
2017-08-01 00:10:10 +02:00
Andreas Shimokawa
ceec76b4f6 Pebble: preparations for js appmessage ack/nack callbacks 2017-08-01 00:03:28 +02:00
cpfeiffer
12f9386fac Also handle resetting language to default properly #733 2017-07-31 23:00:02 +02:00
cpfeiffer
c1925a4e64 Properly handle and distribute language change #733
Also centralize QUIT handling in GBActivity
2017-07-31 22:49:05 +02:00
Andreas Shimokawa
3b35bde42c Pebble: Pass booleans from Javascript Appmessage as such
(missing parts from c2af2dd15c in master)
2017-07-30 23:27:49 +02:00
Andreas Shimokawa
30d6b96432 Merge branch 'master' into background-javascript 2017-07-30 23:26:05 +02:00
Andreas Shimokawa
c2af2dd15c Pebble: Pass booleans from Javascript Appmessage as such and convert to int16 later when sending to pebble
https://developer.pebble.com/guides/communication/using-pebblekit-js/#type-conversion
2017-07-28 23:54:29 +02:00
Daniele Gobbetti
25e6af81a4 Pebble: some more fixes to the webview
- add back support for clay that was mistakenly removed
- timestamps are in milliseconds in JS as well
- intercept the whole URL path instead of the last part
2017-07-28 18:30:27 +02:00
lazarosfs
7f5aeb6ab1 greek transliteration map 2017-07-27 23:59:06 +02:00
Daniele Gobbetti
868593cfd3 Pebble: further improvements to the background webview
- the webview is not static anymore (but its holder is)
- the openweathermap calls of type weather and forecast are now supported (as properly as possible)
- assemble the main JSON messages in the weather receiver, as info are lost afterwards
- switch to Uri parsing instead of String (also unify handling of legacy and new requests)
- attempt to address most of the lints/warnings of AS
- remove printStackTrace in favor of LOG.warn
2017-07-26 18:12:12 +02:00
Daniele Gobbetti
79f3cad36d Pebble: some refinements to webview
- rename the createWebView method to getInstance
- remove the stateChangeListener after it has been fired once and remove obsolete code within
- instantiate the jsInterface object only when needed
- use the application context when possible to limit the usage of the mutableContextWrapper
2017-07-24 23:57:07 +02:00
Daniele Gobbetti
f6946c4402 Merge branch 'master' into background-javascript 2017-07-24 23:47:15 +02:00
Andreas Shimokawa
23d12f7289 Charts: various visual improvements
Thanks @girlwithnoname
2017-07-23 17:56:32 +02:00
Andreas Shimokawa
30eee7ccd5 update changelog bump version 2017-07-21 19:56:49 +02:00
José Rebelo
f7abe2d4a3 Mi Band 2: Inactivity Warnings 2017-07-17 20:25:52 +02:00
Andreas Shimokawa
eb7e635cdc Merge branch 'master' into background-javascript 2017-07-15 23:07:46 +02:00
José Rebelo
34bd2ed9cc Mi Band 2: Do Not Disturb 2017-07-15 21:17:29 +02:00
cpfeiffer
01d3a3a7be Mi Band 2: set goal notification also in phase2Initialize() 2017-07-15 21:15:42 +02:00
José Rebelo
ceb82f3474 Mi Band 2: Goal notification 2017-07-15 21:14:25 +02:00
Carsten Pfeiffer
377e999067 Merge branch 'master' into mi2-display-items 2017-07-13 23:26:25 +02:00
José Rebelo
6c95a9fcb9 Mi Band 2: Rotate wrist to switch info 2017-07-13 23:20:11 +02:00
José Rebelo
2c0b105aa6
Mi Band 2: Display item settings 2017-07-12 14:59:14 +01:00
Andreas Shimokawa
a4e35b49b2 Only show realtime chart on device supporting it 2017-06-02 21:59:46 +02:00
Translation Bot
fb8f866031 disable "Speed Zones" graph
It is not ready yet and full of bugs
2017-06-02 21:42:41 +02:00
João Paulo Barraca
e97f4d3909 HPlus: set not worn when charging 2017-05-31 15:20:20 +01:00
freezed-or-frozen
9b5c1b91c0 modify MiBandSUpport.handleSensorData() to convert raw values in acceleration values 2017-05-30 23:11:59 +02:00
Andreas Shimokawa
05a4486277 Pebble 2/LE: try to improve pairing results by setting another unknown flag
This might help with "bad pairing" where a pebble wont connect anymore after toggling bluetooth on the watch
A workaround was to scan bluetooth before connecting after toggling bluetooth on the watch
2017-05-28 23:43:37 +02:00
Daniele Gobbetti
737578debc The good parts of "refactor notification management"
- centralize the logic for skipping unwanted notifications
- use *Compat methods wherever possible

Leaving out the problematic parts (persistent IDs and updating)
2017-05-28 18:50:41 +02:00
cpfeiffer
4e9b85999e Unregister some listeners to avoid leaking #655 2017-05-28 00:19:24 +02:00
Pavel Motyrev
3a55c67b9e Missed delimiter 2017-05-23 18:25:07 +02:00
João Paulo Barraca
4c7d6d4a10 HPlus: remove debug messages 2017-05-22 23:29:19 +01:00
João Paulo Barraca
bd754b4130 HPlus: Start detecting band not worn 2017-05-22 23:19:43 +01:00
João Paulo Barraca
013cbf139a Merge branch 'master' of https://github.com/Freeyourgadget/Gadgetbridge 2017-05-22 23:14:08 +01:00
João Paulo Barraca
759b9c81a3 HPlus: Fix Unicode handling 2017-05-22 23:14:05 +01:00
cpfeiffer
e279cd736f Some logging for the weird blacklist issue #696 2017-05-21 21:02:23 +02:00
cpfeiffer
c79eda5507 Remove "tapString" from DeviceCoordinator 2017-05-19 22:35:37 +02:00
cpfeiffer
5e079bb480 Pull out useful code from LiveviewIOThread into BtClassicIoThread 2017-05-19 22:27:50 +02:00
João Paulo Barraca
845869e25e HPlus: Fix intensity calculation without continuous connectivity 2017-05-19 10:39:21 +01:00
cpfeiffer
1d79c9d93d Dark theme: set some text colors for the speed zone tab 2017-05-18 23:26:04 +02:00
cpfeiffer
07f4d3148a Also reset the last package counter when doing a second round
See #691
2017-05-15 23:11:52 +02:00
Andreas Shimokawa
b1d1e701f9 Pebble: map walk and run to TYPE_ACTIVITY instead of UNKNOWN
fixes speed zones chart being empty for pebble health
2017-05-15 22:30:07 +02:00
Andreas Shimokawa
7cce2aeb8b Cleanup Speed zones chart code
- Remove unused stuff
- rename "pie" and "sleed" (there is no sleep and no pie here :)
2017-05-15 22:19:50 +02:00
cpfeiffer
e4faabeca3 Fix NPE
Closes #691
2017-05-15 19:34:33 +02:00
cpfeiffer
0e4b9a4eb8 Mi2: Keep fetch activity data until data is from today
When the fetch operation finishes successfully, double check if
the last received data is from today. If it is older, fetch again.
Closes #611
2017-05-15 00:38:26 +02:00
Vebryn
7dc9c28c74 initial version of speed zones tab (#674)
* #673 initial version of speed zones tab

* #673 fix copyrights and initial step speed length
2017-05-14 23:09:27 +02:00
Andreas Shimokawa
b31a6a5db9 Pebble: Fix wrong timestamps with Morpheuz running on Firmware >=3
Fixes #689
2017-05-13 22:18:56 +02:00
Andreas Shimokawa
6d54cfab88 Merge branch 'master' into background-javascript 2017-05-12 22:16:11 +02:00
Andreas Shimokawa
a1690700f4 Revert "Refactor notification management"
This reverts commit cede8a0826.
2017-05-10 22:26:02 +02:00
Andreas Shimokawa
4591f07bcd Revert "Parse the EXTRA_MESSAGE bundle in the notification, if present."
This reverts commit bc28990a96.
2017-05-10 22:25:46 +02:00
Andreas Shimokawa
f9c70714b8 revert all unrelated changes done in background-javascript branch 2017-05-09 14:42:19 +02:00
Andreas Shimokawa
3751273cd0 Merge branch 'master' into background-javascript 2017-05-09 14:04:33 +02:00
Andreas Shimokawa
bbbb9dd448 Pebble: do not start calendar event listener at all when calendar access is denied
Fixes #678
2017-05-09 12:32:00 +02:00
Andreas Shimokawa
805a38ae3c Merge branch 'notification-refactor' 2017-05-08 22:22:34 +02:00
João Paulo Barraca
d73d4b3a13 HPlus: Handles missing phone number. Fixes #675 2017-05-05 22:17:52 +01:00
Andreas Shimokawa
9f309df84d Calendar sync: Use instance id instead of event it to fix recurring events
Also parse duration string if no end time was set

If this breaks anything, revert
2017-05-04 21:52:54 +02:00
João Paulo Barraca
8a39d8b2eb HPlus: Detect Zeband Plus Unicode Support 2017-05-04 14:16:21 +01:00
João Paulo Barraca
497f9a6658 HPlus: Handle SW Version message from Zeband Plus 2017-05-04 13:47:32 +01:00
Andreas Shimokawa
b475fd2dc7 Just disconnect if bluetooth gets turned off, do not quit all activities. 2017-05-01 17:33:34 +02:00
Daniele Gobbetti
bc28990a96 Parse the EXTRA_MESSAGE bundle in the notification, if present.
This way notifications are updating for the Conversations app.
2017-04-29 23:22:03 +02:00
Daniele Gobbetti
ccfe8d5777 Merge branch 'master' into notification-refactor 2017-04-29 21:34:19 +02:00
Daniele Gobbetti
cede8a0826 Refactor notification management
- centralize the logic for skipping over unwanted notifications
- use *Compat methods wherever possible
- use unique and persistent ID (update notifications)
- switch to using BigText style by default (since we can now update existing notifications)
- for Pebble: delete and reinsert notification as updating is not possible
2017-04-28 18:03:19 +02:00
cpfeiffer
07c61e6bcb Revert "Revert "Enable notifications during testcases to avoid NPE starting the service""
This reverts commit 6627371f92.
2017-04-27 08:03:48 +02:00
cpfeiffer
c3c5e0415d The Real Fix #666 2017-04-27 07:57:57 +02:00
cpfeiffer
f1fbab7dd9 Revert "Revert "Adjust test case setup and fix failing tests""
This reverts commit b0384e90d5.
2017-04-27 07:57:57 +02:00
Andreas Shimokawa
b0384e90d5 Revert "Adjust test case setup and fix failing tests"
This reverts commit d9b0d639b8.
2017-04-27 07:39:36 +02:00
Andreas Shimokawa
6627371f92 Revert "Enable notifications during testcases to avoid NPE starting the service"
This reverts commit 739b5e9c50.

Might fix #666
2017-04-27 07:37:32 +02:00
João Paulo Barraca
69d215cb99 HPlus: Improve intensity calculation based on Tanaka et al, 2001 2017-04-27 00:58:36 +01:00
João Paulo Barraca
166695f00a HPlus: Handle more frame types 2017-04-27 00:24:03 +01:00
João Paulo Barraca
c9da7548ed HPlus: Improve reconnection to device 2017-04-27 00:24:03 +01:00
João Paulo Barraca
58cb73a756 HPlus: Improve transliteration 2017-04-27 00:24:03 +01:00
License Bot
8af9054f2d Update license headers 2017-04-26 00:14:25 +02:00
cpfeiffer
739b5e9c50 Enable notifications during testcases to avoid NPE starting the service 2017-04-25 22:51:56 +02:00
cpfeiffer
d9b0d639b8 Adjust test case setup and fix failing tests
- add missing call super.setUp() in LoggingTest
- make use ofGBApplication's logger and db support instead
  of adding specific test things. Avoids differences between
  the local test things and the global GBApplication instances.
2017-04-25 21:55:06 +02:00
Daniele Gobbetti
534eb385f7 Pebble: manage the dictation session initialization.
Currently we inform the watch that GadgetBridge doesn't support voice input.
2017-04-24 21:32:51 +02:00
Daniele Gobbetti
fae116d1bd Add Calendar related tests (WIP) 2017-04-24 13:50:53 +02:00
Andreas Shimokawa
bc4503c8bf Pebble: Add option for Calender Timeline sync (default on) 2017-04-24 12:39:40 +02:00
cpfeiffer
523055189f Some basics for testing the calendar functionality 2017-04-24 11:58:07 +02:00
Daniele Gobbetti
d570d188a2 Remove the low battery notification if a normal battery level is reported. 2017-04-24 09:53:48 +02:00
cpfeiffer
ed02a9781a Fix a cursor not being closed
Still won't be the cause for #655
2017-04-23 12:45:02 +02:00
Daniele Gobbetti
f06298a3c8 Fix some lint errors and warnings:
- check the calling Intent action when autostarting
- replace the FAB + image with a vector drawable
2017-04-23 12:43:13 +02:00
cpfeiffer
9ed8004a69 Fix rare NPE 2017-04-22 23:56:04 +02:00
cpfeiffer
3f8620e026 Use toString() instead of risking a ClassCastException 2017-04-22 21:16:40 +02:00
cpfeiffer
2003d56190 Cleanup package blacklist handling
Didn't find a cause for #664, though.
2017-04-22 16:59:55 +02:00
cpfeiffer
36c1b5a6f2 Fix static context leak
I don't think this is the cause for #655, but it supposedly also breaks
instant run, so now it's fixed.
2017-04-21 22:34:47 +02:00
cpfeiffer
1e4351b03a Silence lint warning 2017-04-21 22:23:50 +02:00
João Paulo Barraca
70663af35a HPlus: Support reconnection when messages are to be sent. 2017-04-21 19:09:48 +01:00
Andreas Shimokawa
6dc1d76592 Pebble: recognize AOSP calendar and use calendar icon on pebble for reminders 2017-04-21 12:39:18 +02:00
Andreas Shimokawa
965ba190a6 Calendar Sync: Fix location not being passed to device code
Now location is displayed on the pebble ;)
2017-04-21 10:51:06 +02:00
cpfeiffer
696dc1f08d Attempt to fix reconnection not happening in some cases
Fixes #530
2017-04-20 23:01:32 +02:00
Andreas Shimokawa
bc368a788b Pebble: fix protocol encoding bugs of timeline pin, add location 2017-04-20 21:40:06 +02:00
Andreas Shimokawa
8385d8079a Pebble: allow encodeTimeLinePin() to encode other attributes than just title and subtitle
Unfortunately I did'nt find a way yet to add a description to the calendar pin (layout 2)
2017-04-20 20:09:29 +02:00
Andreas Shimokawa
15fb71337b Calendar Sync: Fix inverted logic when comparing hashes from db
Also improve debug output
2017-04-20 20:08:16 +02:00
Andreas Shimokawa
86392dbf06 Merge branch 'master' into background-javascript 2017-04-20 14:34:32 +02:00
Andreas Shimokawa
5717379aec Pebble: change timeline layout to "calendar" for calendaar events and display end time 2017-04-20 10:40:28 +02:00
Andreas Shimokawa
7ee20348db Only sync Calendar and Sunrise/Sunset on devices that support it 2017-04-19 21:51:23 +02:00
Andreas Shimokawa
a28d27839f Merge branch 'master' into feature-calendarsync 2017-04-19 20:19:15 +02:00
Daniele Gobbetti
3ef5f5b811 Add support for all day events and add location in the CalendarEventSpec
Further: fix the hashCode method to properly deal nulls fields.
2017-04-19 17:44:02 +02:00
Andreas Shimokawa
546b68ad2d Calendar Sync: detect changed events by hash code 2017-04-19 14:52:07 +02:00
Daniele Gobbetti
18157daf46 Ensure that the Notification listener service gets restarted if crashed.
This change adds an additional service that checks the status of the NotificationListenerService, and restarts it if it's stale/crashed.
Crashes happen mostly during development, but were reported also by users.
2017-04-19 13:23:13 +02:00
João Paulo Barraca
9decb7788b HPlus: use HR translated string 2017-04-18 10:51:49 +01:00
João Paulo Barraca
9f0d260e7a HPlus: Improve connection process (#651)
* Clean HPlus services and characteristics
* Improve connectivity
2017-04-18 10:47:28 +01:00
cpfeiffer
b142add631 Pass a GBDevice instead of GBDeviceCandidate to getBondingStyle() #651 2017-04-17 23:00:16 +02:00
Andreas Shimokawa
087f5879b0 Merge branch 'feature-calendarsync' of https://github.com/Freeyourgadget/Gadgetbridge into feature-calendarsync 2017-04-17 21:11:17 +02:00
Andreas Shimokawa
35efa30c4b Calendar Sync: Only enable calendar broadcast receiver when device is initialized
This excludes it from any auto connect logic.
We are now save to sync the calendar once in contructor.
2017-04-17 21:09:29 +02:00
Daniele Gobbetti
7b50ba9572 Implement hashCode() as equals has been implemented. 2017-04-17 21:07:50 +02:00
Daniele Gobbetti
1e231e6129 Move the Calendar receiver code in the proper place. 2017-04-17 20:33:39 +02:00
Daniele Gobbetti
61690eb2cc Get notified when calendar events change instead of polling. 2017-04-17 20:26:33 +02:00
Andreas Shimokawa
df0e77f368 Calendar Sync: Make greendao .update() work by adding a PK id :/ 2017-04-16 21:08:49 +02:00
Andreas Shimokawa
f7ca1fc76c Merge branch 'master' into feature-calendarsync 2017-04-16 19:59:23 +02:00
Andreas Shimokawa
67f035accf DBHelper: no not update device attributes in db if we call getDevice() on a disconnected device
Fixes NPE
2017-04-16 19:43:53 +02:00
Andreas Shimokawa
9970f8017f Calendar sync: save sync status to db to avoid leakage of deleted events
We now have a per device database that tracks sync states for calendar entries
We still cannot track changed calendar entries that where changed while we were disconnected
2017-04-16 19:37:43 +02:00
Daniel Hauck
ccb58f0f3c Basic calendar sync using additional receiver (#654) 2017-04-16 12:34:37 +02:00
cpfeiffer
16af0724dd Replace method pair() with connectFirstTime()
Should help with #642 for hplus which did not implement pair()
2017-04-12 21:35:40 +02:00
cpfeiffer
589945f234 Use try-with-resources to ensure stream is closed on exception 2017-04-12 21:34:48 +02:00
João Paulo Barraca
6ed40a21c6 HPlus: convert text to either GB2312 or UTF-8 2017-04-12 14:29:24 +01:00
Andreas Shimokawa
810ba5419b Pebble: reenable battery level reporting, with percentage drom datalog 2017-04-09 17:05:09 +02:00
Daniele Gobbetti
5bf6251dc5 Rename some layout files as they are used for specific purposes 2017-04-09 16:03:07 +02:00
Daniele Gobbetti
fe626eb11e Remove the checkboxes in the alarms cardview and simplify layout of details activity
- rename the layout file of the alarm item to better organize the files
- add a color selector for the item view, this replicates the old behavior of using the color to highlight enabled days
- remove the nested linearlayouts in the alarm details activity layout and use CheckedTextView instead
2017-04-09 16:01:48 +02:00
cpfeiffer
1a88858c6f Fix some findbugs findings 2017-04-09 01:09:43 +02:00
Daniele Gobbetti
a77ff03ca5 Add filter functionality to the app blacklist activity 2017-04-09 00:21:43 +02:00
Andreas Shimokawa
f658059d20 Pebble: really disable battery reporting 2017-04-08 23:19:07 +02:00
cpfeiffer
4a4a1e25df Properly format the sleep goal as a duration, not as a time
Also suppress trailing zeros, e.g. display
8h instead of 8h 0m
2017-04-08 23:16:33 +02:00
Alberto
155ce5be02 Font size bar chart (#645)
Increas font size bar chart

small fix that improves the readability of the values on bar charts
2017-04-08 22:58:58 +02:00
cpfeiffer
2feb3bed47 Reduce animation time from 350ms to 250ms
(seemed a bit laggy to me)
2017-04-08 22:52:22 +02:00
Daniele Gobbetti
48728cbb50 Implement recyclerView in the AppBlackListActivity.
This allows to implement a search functionality (in the future)
2017-04-08 22:26:12 +02:00
Daniele Gobbetti
5c0c5581bb Merge branch 'master' into background-javascript
# Conflicts:
#	app/src/main/assets/app_config/js/gadgetbridge_boilerplate.js
#	app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/AbstractDeviceCoordinator.java
#	app/src/main/java/nodomain/freeyourgadget/gadgetbridge/devices/DeviceCoordinator.java
2017-04-08 21:16:01 +02:00
Daniele Gobbetti
16cff936d3 Pebble: do not show the battery state in the control center
- the mapping voltage<->percentage is probably family dependent (or perhaps even device dependent!)
- the values are often outdated by more than one hour, this could yield to issue reports which are false positive
2017-04-08 18:46:39 +02:00
Daniele Gobbetti
018c2a971e Show the list of alarms as (material design) cards 2017-04-08 18:44:15 +02:00
Daniele Gobbetti
dd5ee03932 Set the right color for the Pie charts entry labels.
Closes #647 by showing the text also on the light theme, instead of hiding it everywhere.
2017-04-08 15:50:13 +02:00
Daniele Gobbetti
2e98b1396f Do not override the android:* text colors, define our own. This fixes a crash on API 19.
Also define them in the attrs xml file and do some grouping in the colors xml.
It might be we don't need them at all, but for the time being let's keep them around.
2017-04-08 15:49:00 +02:00
Daniele Gobbetti
5a019c238a Hide the dateBar but don't set it as gone, this prevents charts from changing size when swiping. 2017-04-08 15:16:35 +02:00
cpfeiffer
60ed9ca373 Remove default intent actions out of if-condition 2017-04-07 21:55:47 +02:00
cpfeiffer
202ae53d71 Ensure that a newly discovered and initialized device will be displayed
Fixed a race condition between ACTION_DEVICE_CHANGED event handlers:
- DeviceCommunicationService added the device to the database
- DeviceManager notified the views to be refreshed

When the latter happened before the former, thew new device would not
be displayed.

=> Let DeviceManager do both.
2017-04-07 21:17:37 +02:00
cpfeiffer
e1797fc9f7 When connecting for the first time, set "pair" to true 2017-04-07 00:40:33 +02:00
cpfeiffer
26ff7d67e3 Remove some now useless code 2017-04-07 00:11:25 +02:00
cpfeiffer
d2053b32bf Small cleanup 2017-04-06 23:58:50 +02:00
Alberto
f3edf7559d HPlus: added low battery information (#638)
HPlus: Notification of low battery

I added the notification of low battery HPlus ... specifically, I used
the HPlusConstants.DATA_STATS event on hplusSupport

I also included the status of the device in the list of
gbdevice -> getDeviceInfos
2017-04-06 23:55:29 +02:00
cpfeiffer
5b8624de71 Make pairing optional after discovery
See #642 which might be fixed by not pairing.
2017-04-06 23:47:35 +02:00
Andreas Shimokawa
3675386c13 Fix spider arms haging out of pie slices
Also make the Pie in week sleep chart look as the other pie chart in "Your Sleep"
2017-04-05 22:42:54 +02:00
Alberto
45eb14684b import export SharedPreferences (#600)
Import and export SharedPreferences

i add function for import and export SharedPreferences setting

when export or import db execute export or import SharedPreferences

for blacklist i preload HashSet
2017-04-05 00:16:17 +02:00
cpfeiffer
f48729cc64 Pie Charts: some improvements wrt the labels
Still room for optimization.

Thanks to Alberto!
2017-04-05 00:08:17 +02:00
walkjivefly
f0d81818b3 Swap deep and light sleep colours in charts
This partially "fixes" issue #442. The effect of the change is
purely cosmetic: deep sleep is (once again) dark blue, light sleep
is (once again) light blue.
2017-04-02 19:49:55 +02:00
Andreas Shimokawa
e4c7a921ea Pebble: try to improve 70% to 60% battery level accuracy 2017-04-02 00:12:19 +02:00
Andreas Shimokawa
742615c6f4 prevent rare NPE in onNotificationRemoved() 2017-04-02 00:04:55 +02:00
walkjivefly
f321a4bac5 Correct camel-case for mVisibleInActivity 2017-04-01 23:16:00 +02:00
Daniele Gobbetti
e89ba529c3 Apply some Material design guidelines to the charts
- replace the PagerTabStrip with a TabLayout (moved to top and scrollable)
- move the date selection to the bottom
- do not update the activity title as the tab name is much more visible now
2017-04-01 17:47:54 +02:00
Daniele Gobbetti
9a0439c6e0 Apply some Material design guidelines to the app management
- replace the PagerTabStrip with a TabLayout (moved to top)
- change the row element to adhere to the guidelines wrt spacing
- move the FAB a bit and hide it when scrolling down, scroll up to reveal it again
2017-04-01 17:06:38 +02:00
Andreas Shimokawa
173b4fbbe6 Add legend ans labels to weekly sleep charts
Also remove the "missing sleep" gray entry to avoid confusion
2017-03-31 23:42:25 +02:00
Daniele Gobbetti
8fccbe3b69 Pebble: implement battery display in control center
- extract the millivolts reading from the analytics datalog message and map to percentage
- mapping is manually made and is possibly wrong, but the values are commented
- the values are sent once per hour and are delayed, this might make the reading really inaccurate on pebble time round watches
2017-03-31 18:23:02 +02:00
Daniele Gobbetti
f80215b37a Use standard recyclerview for app reordering
- allow dragging by using a drag handler (as per best practice)
- remove the custom draglistview dependency
- update to the latest android support libraries
2017-03-31 18:17:53 +02:00
Andreas Shimokawa
562049296c Pebble: fix datalogging
Was broken after 0.18.4
2017-03-30 23:01:40 +02:00
Andreas Shimokawa
b25bc66485 Allow Datalog handlers to return GBDeviceEvent[] 2017-03-28 09:51:06 +02:00
Daniele Gobbetti
d550defcb3 Do not save an alarm as "smart" if the device does not support it (#612)
Opening the activity when a device that does not support smart alarms is connected hides the "smart alarm" toggle. This is now reflected also on the saved data.
This solution is not ideal in case of multiple devices but as long as #577 is not solved its the best we can do.
2017-03-26 17:57:03 +02:00
João Paulo Barraca
11b48e7a1a Set HPlus Sleep Intensity to 10% 2017-03-24 20:52:14 +00:00
cpfeiffer
da9742fd67 Mi1: Attempt to recognize Mi1 model with hwVersion = 8
Closes #364
2017-03-20 23:25:42 +01:00
cpfeiffer
14552a1a80 Disable live activity tracking when activity is paused
Fixes #496
2017-03-20 23:01:28 +01:00
cpfeiffer
b97674ba85 Mi2: Display realtime steps in Live Activity #428
Thanks for the hint!
2017-03-20 23:01:28 +01:00
Andreas Shimokawa
7c63f92aaa Remove obsolte and unused code related to old and unsupported activity database 2017-03-20 22:27:17 +01:00
Andreas Shimokawa
5d042cf3c8 Fix weekly charts to display the same value for every day Android < 7
Closes #604
2017-03-18 17:13:35 +01:00
cpfeiffer
f1d07c83f6 Fix NPE #603 2017-03-18 11:41:47 +01:00
Andreas Shimokawa
fe07e09d41 Fix firmware installation on Pebble Time Round
Closes #602
2017-03-17 22:34:50 +01:00
Andreas Shimokawa
06c89b508e Merge branch 'master' into background-javascript 2017-03-16 18:01:51 +01:00
Andreas Shimokawa
9eade33d72 Start VibrationActivity when using "find device" button with Vibratissimo
(The activity was inaccessible)
2017-03-16 17:38:13 +01:00
License Bot
6a842c52fa Update license header in all java files. 2017-03-16 17:36:15 +01:00
Andreas Shimokawa
7a6b0ed2b0 support material fork of K9 2017-03-16 17:24:15 +01:00
Andreas Shimokawa
408dd9c26f Do not try to request k9 permissions in CCv2, we dont need it 2017-03-16 17:20:18 +01:00
cpfeiffer
d408be5ec8 Mi2: make text/icon notifications confiurable and version dependent 2017-03-15 00:26:39 +01:00
cpfeiffer
cf35e84feb Mi2: add hint about font installation for text notifications 2017-03-14 23:54:56 +01:00
cpfeiffer
5d96df3508 Mi2: add hint about intermediate firmware 1.0.0.53 2017-03-14 23:45:30 +01:00
cpfeiffer
2d60beea1f Mi2: added some more tested firmware/font versions 2017-03-14 22:59:48 +01:00
cpfeiffer
e62a860ee6 Avoid potential NPE when neither name nor number are available 2017-03-14 22:03:30 +01:00
Alberto
6989ca9db3 Add privacy mode that hides the phone number (#588) 2017-03-14 21:45:36 +01:00
cpfeiffer
17ecee0cab Mi2: initial support for text notifications and icons
See #560
2017-03-14 00:45:54 +01:00
cpfeiffer
8fc6dfeca7 Improved AlertNotificationProfile
AlertLevel, AlertCategory, Control Point
2017-03-14 00:45:54 +01:00
cpfeiffer
4b230412b6 Some utility methods + tests 2017-03-14 00:45:54 +01:00
Andreas Shimokawa
a6bba1b094 In CCv2 allow to disconnect with long press in any state expect "not connected" 2017-03-13 22:27:59 +01:00
Andreas Shimokawa
09f3dad9ff Merge branch 'master' into background-javascript 2017-03-11 22:03:29 +01:00
Daniele Gobbetti
0ac77fc0a4 Remove the legacy ControlCenter and its usages. Add New GUI to the changelog. 2017-03-11 19:49:57 +01:00
Daniele Gobbetti
183d89dc47 Show the full changelog when selecting the Changelog entry in the navigation drawer.
Show a line separator between groups of icons in the navigation drawer.
2017-03-11 17:10:51 +01:00
Daniele Gobbetti
ecd2c166c2 Use constraintlayout for the cardview and few improvements.
Icons are now bigger.
"find device" is in the icon row
2017-03-11 16:50:12 +01:00
Daniele Gobbetti
2c152e8447 Override textColorPrimary and not textColor as it conflicts with support libraries (e.g. snackbar text).
Further, use textColorPrimary in the graphs instead of textColor.
2017-03-11 16:48:55 +01:00
Daniele Gobbetti
8117caf73c Merge branch 'master' into new_GUI 2017-03-11 16:44:16 +01:00
Andreas Shimokawa
33bf2994a9 Merge branch 'master' into background-javascript 2017-03-11 11:36:00 +01:00
Andreas Shimokawa
fe870ebc77 Move step goal generic, show proper sleep goal in weekly sleep goal
It is now also accessible via "About You" but still remains in the Mi Band Settings
(because it has to be setup initially by a "wizard")
2017-03-11 11:34:03 +01:00
Daniele Gobbetti
a1af4a4599 Add classification for Squeaky Mail as mail app. Fixes #589 2017-03-11 10:23:57 +01:00
Translation Bot
a14e14eeb9 Merge branch 'master' into background-javascript 2017-03-10 23:14:40 +01:00
Translation Bot
05a28cc580 Pebble: Fix screenshots for Android N
This was a regression only in master since we switched to SDK 25

This commit also fixes all other warnings with AbstractDeviceSupport.java
2017-03-10 23:10:40 +01:00
License Bot
e392fbfd80 Add license header to all java files. 2017-03-10 14:53:19 +01:00
Daniele Gobbetti
a566a6656c Fix line endings (no content changes) 2017-03-10 13:43:47 +01:00
cpfeiffer
6282597790 Handle BT issues with discovered characteristics
It occurred to me that onServicesDiscovered() was called multiple times
whenever I connected to my Mi Band 2. Either the band actually sent the
characteristics in multiple chunks or Android itself notified multiple
times.

So we gracefully handle this by
- updating the list of characteristics
- *not* initializing the device again when it *is* already initialized
or at least initializing.
2017-03-09 22:49:13 +01:00
Translation Bot
3abbe12b53 Merge branch 'master' into new_GUI 2017-03-08 21:42:52 +01:00
Andreas Shimokawa
b3c0f4e9fd Pebble: fix own fake response if units=metric was in original request 2017-03-08 11:00:46 +01:00
Andreas Shimokawa
453f94f8f6 Pebble: add cod=200 to fake owm json response (fixes TimeStyle cheking the response code) 2017-03-08 10:46:33 +01:00
Andreas Shimokawa
942984dec2 Merge branch 'master' into background-javascript 2017-03-08 10:24:31 +01:00
cpfeiffer
9411f80440 Mi2: support for updating firmware fonts (*.ft, *.ft.en)
This is related to #560, but alas is not sufficient for enabling text
notifications.
2017-03-07 23:26:41 +01:00
cpfeiffer
2b17d7fb14 More cleanup 2017-03-07 00:06:35 +01:00
cpfeiffer
31e0e9a5f7 Mi2: More internal cleanup from initial Mi1 copy&paste 2017-03-05 21:45:39 +01:00
cpfeiffer
f6bee00582 Mi2: some internal cleanups/renamings 2017-03-05 21:27:47 +01:00
cpfeiffer
c56b655b48 Mi2: send text notification for mi2 only, not mi1a 2017-03-05 10:43:19 +01:00
cpfeiffer
88b35c6eec Mi2: rename some constants + add two 2017-03-05 10:43:19 +01:00
Yaron Shahrabani
858eaa6690 Added Hebrew transliteration and tests (#571) 2017-03-04 22:08:24 +01:00
Daniele Gobbetti
75d4abc9dc Pebble background webview: bring back the mutableContextWrapper, otherwise inputs aren't working.
Reliably go back to first step of the configuration page when closing (this causes a Toast when closing the activity while in the clay settings page)
2017-03-04 20:43:32 +01:00
Daniele Gobbetti
f84c651c38 Pebble background webview: config page should be shown reliably now. 2017-03-04 19:46:18 +01:00
cpfeiffer
58e2538c4e Discovery: handle the case where a device is already bonded 2017-03-04 16:03:36 +01:00
Andreas Shimokawa
21b90d1e6e Merge branch 'master' into background-javascript 2017-03-04 13:27:34 +01:00
Andreas Shimokawa
90c61cb71c Merge branch 'master' into background-javascript 2017-03-04 13:24:44 +01:00
cpfeiffer
09967b2006 Mi2: follow 12h/24h system configuration
=> Remove custom preference option, #573
2017-03-03 22:32:54 +01:00
cpfeiffer
82ea5702c5 Mi2: configurable time format (12h/24h)
Fixes #573
2017-03-03 22:14:28 +01:00
cpfeiffer
4419200624 Mi2: Initial support for textual notifications #560 2017-03-03 20:12:43 +01:00
Andreas Shimokawa
a90e0074fc Change weekly sleep charts to display sleep from 12:00-12:00 instead of 0:00-0:00 2017-03-03 17:33:00 +01:00
Andreas Shimokawa
50f3ee73fc Merge branch 'master' into background-javascript 2017-03-03 14:28:38 +01:00
Andreas Shimokawa
9b2f47d10a Improvements to week sleep chart
Time to close #557
2017-03-03 14:21:59 +01:00
Daniele Gobbetti
76be0ae676 Pebble background webview improvements:
remove the pre-KITKAT checks as the minsupportedversion is KITKAT
fix the currentPosition override
move the returned configuration parsing to onResume method (where it was previously) as it seems more reliable
pass the whole GBDeviceEventAppMessage object, this way the jsInterface in the webview doesn't need to be static anymore
change the way the webview is initialized, this way the context doesn't need to be static anymore
use runOnUiThread instead of the Handler .. MainLooper to post the commands to the webview instance
comment a couple of custom message handler for weather as the watchapp seem to work well with JS alone
add a couple of log messages for debugging

known issue: legacy app configuration pasting does not work.
2017-02-28 21:11:26 +01:00
Andreas Shimokawa
593b169f00 Pebble: Put icon into fake weather response, disable mario time native handler (since it works a bit now) :) 2017-02-27 22:28:42 +01:00
Andreas Shimokawa
181b33d6be Merge branch 'master' into background-javascript 2017-02-27 22:11:41 +01:00
Daniele Gobbetti
ca73d0c2d4 Add mapping to weather icons 2017-02-27 21:45:10 +01:00
Daniele Gobbetti
21498bd2e9 Pebble: mimic openweatherapi response from our cached data.
This should allow watchfaces using openweathermap to run without modification (but we lack the icon ATM). Tested with multifit watchface.

Also centralize the location data in own local class and remove leftover comment.
2017-02-27 19:02:34 +01:00
cpfeiffer
19b0e5e801 Centralize icons for devices 2017-02-26 22:46:49 +01:00
Andreas Shimokawa
ac1875eea0 Charts: In "Sleep a week" chart display light and deep sleep as stacked bars 2017-02-26 21:41:27 +01:00
Daniele Gobbetti
ca8e0db078 Merge branch 'master' into background-javascript 2017-02-26 17:57:37 +01:00
Daniele Gobbetti
a545c56680 Pebble: ack the messages that go to the webview and do not destroy it on disconnect. 2017-02-26 17:57:26 +01:00
Daniele Gobbetti
176cf79cc1 Merge branch 'master' into new_GUI
# Conflicts:
#	app/build.gradle
2017-02-26 16:55:54 +01:00
Andreas Shimokawa
8b39ef3a52 Speedup for charts by caching aggregated sleep amounts and steps for maximum 32 days 2017-02-26 00:40:50 +01:00
cpfeiffer
53dbc54041 Only start the webview when needed 2017-02-25 22:02:40 +01:00
cpfeiffer
234beace29 Some fixes for the background webview 2017-02-25 21:50:05 +01:00
cpfeiffer
711800f3d0 Collaborative attempt to initialize the background webview on startup 2017-02-25 18:01:08 +01:00
Daniele Gobbetti
a4ac108287 Pebble: merge master moving the location override to WebViewSingleton 2017-02-25 15:44:37 +01:00
Daniele Gobbetti
6c993d40aa Merge branch 'master' into background-javascript
# Conflicts:
#	app/src/main/java/nodomain/freeyourgadget/gadgetbridge/activities/ExternalPebbleJSActivity.java
2017-02-25 15:26:55 +01:00
Daniele Gobbetti
e7846f4754 Pebble: override the native navigator.geolocation GetCurrentPosition
The native method requires FINE location permission, and we don't have it. Further we should handle the runtime permission request.
2017-02-25 13:31:48 +01:00
Andreas Shimokawa
772a22f78b Merge branch 'master' into background-javascript 2017-02-25 13:02:07 +01:00
Daniele Gobbetti
2eb43fa740 Pebble: Fix for week sleep chart amounts (the colors are still wrong) 2017-02-25 12:52:24 +01:00
Andreas Shimokawa
08080b02bb Drop support for legacy (pre 0.12.0) database 2017-02-23 22:44:44 +01:00
cpfeiffer
49e1b55ad8 Format center-text for week-sleep-pie 2017-02-23 21:15:57 +01:00
Andreas Shimokawa
437ec6c9b7 Minor improvements to the WIP week sleep chart 2017-02-23 08:50:31 +01:00
cpfeiffer
337bfa1938 Handle button presses and log them
See #556
2017-02-21 21:41:21 +01:00
Andreas Shimokawa
e9cb5fd374 WIP sleep in a week chart
Displays minutes which is confusing
Only displays deeps sleep (no idea why)
Is green (which is also confusing)
2017-02-21 16:20:42 +01:00
Andreas Shimokawa
2dbda6138b Pebble: some cleanups and simplifications for datalogging via PebbleKit 2017-02-20 22:09:00 +01:00
Andreas Shimokawa
ad9cfae6f9 Pebble: Pass datalog creation timestamp to PebbleKit, properly announce PebbleKit datalogging support 2017-02-20 08:47:42 +01:00
Andreas Shimokawa
946ed5f000 Pebble: First shot at implementing dataloggin for PebbleKit apps
Closes #497
Could help #316
2017-02-19 23:02:55 +01:00
cpfeiffer
e5d09b9fa2 Automatically start the service on boot (can be turned off)
Fixes #9
2017-02-17 23:24:44 +01:00
Avamander
23f2dd35d4 Extract music shuffle and repeat states and set the song progress to auto-update. (#554) 2017-02-17 09:01:37 +01:00
Andreas Shimokawa
a26563d6c7 Pebble: also acknowledge PebbleKit intents with transaction_id -1
I don't understand why this should be necessary but for some 3rd party apps it helps (#509)
2017-02-13 22:27:37 +01:00
Andreas Shimokawa
1d1edd41d7 Pebble 2/LE: remove a sleep which might be no longer necessary
Will speedup data transfer
2017-02-12 23:13:24 +01:00
Avamander
fea31924ba Music data handling improvements (#550)
* Fixed extracting the track length.

* Added current track and total track count.

* Few small changes to make sure everything gets updated properly.

* Remove unnecessary includes.
2017-02-11 09:49:01 +01:00
Andreas Shimokawa
5dfd40062f fix previous commit 2017-02-10 23:16:36 +01:00
Andreas Shimokawa
f956d94181 Pebble: make sure to not display "open on phone" and "dismiss" when the source of a notification was our AlarmClockReceiver 2017-02-10 23:11:21 +01:00
Andreas Shimokawa
ee28ccd4fe Pebble: add a dev option to always and immediately ACK PebbleKit messages to the watch
Might help #509
2017-02-10 23:07:36 +01:00
cpfeiffer
0042ffc514 Set the notification ID on alarm start 2017-02-10 22:52:55 +01:00
cpfeiffer
89bf63d540 Implement hashCode() when you implement equals()! 2017-02-10 00:32:03 +01:00
Andreas Shimokawa
f35e3e460d remove K9 receiver as is works better with generic notifications 2017-02-09 17:35:46 +01:00
Andreas Shimokawa
c0076b20d3 fix copy and pasta error 2017-02-09 17:24:07 +01:00
Andreas Shimokawa
5bb1995eb9 Pebble: fix privacy mode title being "null" in some cases 2017-02-09 17:10:39 +01:00
Andreas Shimokawa
436a7ddb24 Pebble: fix alarm notifications only working one
id -1 means undefined, everything else is liked to a real android notification
2017-02-09 15:07:00 +01:00
cpfeiffer
4f0674d038 Support for alarm clock notifications for Mi1 + Mi2 #538
No support for Pebble and HPlus for now.

Atm relies on the CM deskclock alarm, which nicely broadcasts
events about the current alarm. See
https://github.com/CyanogenMod/android_packages_apps_DeskClock.git
2017-02-07 23:49:10 +01:00
Andreas Shimokawa
e2b3394900 made caller privacy pebble setting generic 2017-02-07 10:15:23 +01:00
Andreas Shimokawa
b6852308b7 Merge pull request #546 from jpbarraca/hplus-preferences
HPlus: add device specific preferences and icon
2017-02-06 18:50:40 +01:00
Andreas Shimokawa
32a326c24b Merge pull request #543 from jpbarraca/hplus-alarm-clear
HPlus: Clear Alarms
2017-02-06 18:49:28 +01:00
João Paulo Barraca
475426c0ed Merge branch 'master' into hplus-preferences 2017-02-06 01:39:45 +00:00
João Paulo Barraca
a3cc84c01d HPlus: add device specific preferences and icon 2017-02-06 01:33:15 +00:00
João Paulo Barraca
bf8ae5d5af HPlus: Add constant ARG_ALARM_DISABLE 2017-02-05 23:55:48 +00:00
João Paulo Barraca
644c06df68 HPlus: Clear alarms if no alarm is enabled 2017-02-05 23:52:36 +00:00
Andreas Shimokawa
030edef033 Merge pull request #541 from ivanovlev/master
Transliteration: capitalized just the first letter in the replacement
2017-02-05 22:59:03 +01:00
Andreas Shimokawa
b3cddebdbb Pebble: ensure a better error message if someone tries to install a FW 1.x pbw 2017-02-05 22:50:42 +01:00
Daniele Gobbetti
b7bad268c2 Pebble: support weather for Obsidian
Ref: #482
2017-02-05 17:21:04 +01:00
Daniele Gobbetti
dccd6c1b06 Pebble: implement privacy modes
The user can choose whether to completely hide the notification text or push it off-screen. This also effects the incoming call notification.
Fixes #370
2017-02-05 16:37:59 +01:00
Daniele Gobbetti
b894c01822 Make the media notification receiver more robust.
Sometimes the media notification does not contain the expected components, hence the code covered by the try/catch has been adjusted. This was reported in #533 for VLC.
In the future the whole media handling will probably be refactored.
2017-02-05 15:13:26 +01:00
ivanovlev
fd61dc602f Transliteration: capitalized just the first letter in the replacement text 2017-02-04 09:53:07 +03:00
João Paulo Barraca
006a23dfe8 HPlus: Fix time sync and Time format (12/24) 2017-02-03 19:30:59 +00:00
Andreas Shimokawa
22cf74bbd1 Merge pull request #532 from jpbarraca/alarm
HPlus: Working alarms and small cleanup
2017-02-03 14:02:29 +01:00
Daniele Gobbetti
e08a900978 Refactor the MusicPlaybackReceiver and related files
Add actions to the filter (this should help with #536)
Add "copy" constructors to MusicSpec and MusicStateSpec, and use those when receiving an updated intent, this way partial updates do not disrupt the local information.
Iterate over incoming extra keys, explicitly check the incoming type and use only known type. This could help with #533

Possible problem: this code iterates over every key of the incoming bundle.
2017-02-01 22:55:40 +01:00
João Paulo Barraca
f79e8f8833 HPlus: Working alarms and small cleanup 2017-01-30 23:37:47 +00:00
cpfeiffer
d030ad9400 Ups, remove accidental import from C&P 2017-01-29 23:06:40 +01:00
cpfeiffer
b157f84b83 Log connection attempt when BT is turned on 2017-01-29 22:56:56 +01:00
cpfeiffer
2ae4497261 Mi2: the only reason I can see for detecting MiBandSupport for Mi2
Fixes #529, hopefully
2017-01-28 23:25:15 +01:00
cpfeiffer
ec6a8b6743 MI: some more logging 2017-01-28 23:25:15 +01:00
cpfeiffer
6c16b4fb15 Updated initial array list size to reflect reality 2017-01-28 23:25:15 +01:00
cpfeiffer
4c48b473ac Show device type in GBDeviceCandidate.toString() 2017-01-28 23:25:15 +01:00
Daniele Gobbetti
d6dd03a065 Pebble: webview add safety check 2017-01-28 17:45:23 +01:00