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
Daniele Gobbetti
f66f765fb6
Merge remote-tracking branch 'origin/master' into background-javascript
...
# Conflicts:
# app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/pebble/PebbleIoThread.java
2017-01-28 17:43:34 +01:00
ivanovlev
2d3907b0f0
Fix issue #522 : Transliterate Caller Name
2017-01-27 23:16:19 +03:00
cpfeiffer
13af1c1e11
Ignore Gadgetbridge's own notifications
...
Fixes #411
2017-01-27 00:23:45 +01:00
cpfeiffer
ba7d13fa5d
Disable smart alarms for Mi2
...
Closes #471
2017-01-26 21:09:49 +01:00
Andreas Shimokawa
298e2a9955
Merge pull request #524 from jpbarraca/Makibes-F68-refactor
...
HPlus: Change Makibes F68 device type
2017-01-26 17:24:12 +01:00
Andreas Shimokawa
f81ff8591b
Pebble: add a FAB in App Manager which launches a file manager to chose a file
...
This is similar to #247 but simpler and using a FAB, also it explicitly targets our Activity instead of allowing to open a video in a video player which using this feature
Also suggested in #520
2017-01-26 17:23:28 +01:00
João Paulo Barraca
d7db6559d8
HPlus: Change Makibes F68 device type
2017-01-26 16:04:33 +00:00
Andreas Shimokawa
e19ea26478
Merge pull request #513 from ivanovlev/master
...
Simplification of transliteration integration
2017-01-26 16:13:54 +01:00
João Paulo Barraca
b3e1cbf55e
HPlus: Support of Makibes F68 and small fixes to HPlus devices
2017-01-26 13:02:58 +00:00
cpfeiffer
ac68bfe351
Mi Band 1+2: backend implementation of making BT pairing optional
...
- cleaned up the DeviceService.connect() variants
- discovery: pass the device candidate around instead of the mac address
Attempts to fix #512 , #514 , #518
2017-01-26 00:16:38 +01:00
cpfeiffer
b8b2d8830f
Fix parceling GBDeviceCandidate
2017-01-26 00:16:38 +01:00
cpfeiffer
4c26c2933b
Mi Band 1+2: make BT pairing optional
...
(Attemts to fix #512 , #514 , #518 )
2017-01-26 00:16:38 +01:00
cpfeiffer
d103d09fcf
Mi Band: just a method rename
2017-01-26 00:16:38 +01:00
Andreas Shimokawa
25433ef6bc
Pebble: do not display a toast when watchapp configuration could not be found during initialization of appmessage handler
...
Unfortunately all users without TimeStyle installed got an error in Gadgetbridge 0.17.2
2017-01-24 23:12:36 +01:00
Andreas Shimokawa
4f45ad660d
Pebble: refactor PebbleKit stuff into its own class
2017-01-24 22:56:09 +01:00
ivanovlev
06295abcb6
Simplification of transliteration integration
2017-01-24 21:04:06 +03:00
Andreas Shimokawa
a451b5367b
Pebble: dynamic key support for Square handler
2017-01-24 19:02:45 +01:00
Andreas Shimokawa
712ce1aa8b
Pebble: dynamic keys support for healthify
2017-01-24 18:50:43 +01:00
Andreas Shimokawa
3233432ee1
Pebble: simplify AppMessageHandler
2017-01-24 18:38:26 +01:00
Andreas Shimokawa
3dd058cf81
Merge pull request #517 from jpbarraca/hplus-fix-3
...
HPlus: Improve display of new messages and phone calls
2017-01-24 12:05:02 +01:00
Andreas Shimokawa
fb7db523c7
Pebble: dynamic appKey suppoort for Morpheuz
2017-01-24 11:58:13 +01:00
João Paulo Barraca
b4a4b3916a
HPlus: Remove LanguageUtils transliterate from HPlusSupport
2017-01-24 10:39:24 +00:00
Andreas Shimokawa
746eeda777
Pebble: use dynamic appkeys for TrekVolle handler
2017-01-24 11:07:49 +01:00
Andreas Shimokawa
8027b8ac96
Pebble: fix potential crash when encoding appmessages with null values
2017-01-24 11:07:00 +01:00
Andreas Shimokawa
378d285b1a
Merge pull request #515 from jpbarraca/hplus-fix-2
...
HPlus: Fix bug related to steps and heart rate
2017-01-24 08:21:07 +01:00
João Paulo Barraca
1f083041b9
HPlus: Improve display of new messages and phone calls
2017-01-24 01:44:30 +00:00
João Paulo Barraca
c4a0c60b8c
HPlus: Fix bug related to steps and heart rate
2017-01-22 23:33:30 +00:00
Andreas Shimokawa
c39318af05
CHANGELOG, bump version, improve strings about transliteration
2017-01-22 22:30:40 +01:00
Daniele Gobbetti
a7a37fd9c8
Pebble: add a method to use the JSON keys instead of hardcoding the key ID.
...
This needs parsing the json but it is only done once. So far only Timestyle apphandler uses the new approach and this fi_xes the issue reported here https://github.com/Freeyourgadget/Gadgetbridge/issues/482#issuecomment-273757492
Fixes also a potential crash when the message for pebble contained a null key in one of the Pairs
2017-01-20 19:17:00 +01:00
Carsten Pfeiffer
31ccaf361b
Merge pull request #500 from ivanovlev/master
...
Transliterate unsupported Russian characters into English
2017-01-19 23:42:56 +01:00
ivanovlev
c13725911f
Transliteration off by default, if setting not exist
2017-01-19 08:09:36 +03:00
Andreas Shimokawa
26a751977e
Pebble: try to improve PebbleKit compatibility
...
(Might help with glance #506 )
2017-01-18 22:10:10 +01:00
Andreas Shimokawa
ed020c2a97
Pebble: raise limit of appinfo.json. Some pbws have huge ones :/
...
Fixes #505
2017-01-18 21:47:15 +01:00
ivanovlev
cbc91e7fef
Moving transliteration call from module "HPlus" to common support
2017-01-17 23:07:12 +03:00
Carsten Pfeiffer
e226a97c73
Merge pull request #503 from jpbarraca/hplus-fix-1
...
HPlus: fixed bug setting current date
2017-01-17 00:04:39 +01:00
João Paulo Barraca
5222cf99a2
HPlus: fixed bug setting current date
2017-01-16 22:04:52 +00:00
ivanovlev
bfe24dd9f0
Refactoring
2017-01-15 22:46:30 +03:00
ivanovlev
2de9580dea
Added diacritic convertation into Transliteration
2017-01-15 22:10:12 +03:00
Daniele Gobbetti
26a349210e
Pebble: make the text in the dummy weather configuration activity visible.
2017-01-15 18:19:30 +01:00
Andreas Shimokawa
d9d153c463
move WeatherNotificationConfig.java to its previous location to fix a crash
2017-01-15 12:43:26 +01:00
ivanovlev
01d9a63e8b
Merge branch 'master' into master
2017-01-15 12:27:25 +03:00
ivanovlev
074394cba4
Transliteration is moved to a separate class, added settings option
2017-01-15 12:24:36 +03:00
Andreas Shimokawa
ce67bf2c52
Pebble: make the feature to automatically delete notifications from the pebble optional
...
(This is not pebble specific at all but as long as other devices do not use that it will stay in the Pebble specific preference screen)
2017-01-15 00:10:40 +01:00
ivanovlev
b9249065eb
Fix for send message from debug screen
2017-01-14 23:01:44 +03:00
Daniele Gobbetti
4dfef382a9
Pebble: change the overflow menu of the weather system app.
...
If the weather notification app is not installed, link to fdroid (app if installed, web page of the app if not).
If the weather notification app is installed, show the options to activate and deactivate it.
2017-01-14 18:19:41 +01:00
ivanovlev
c873312831
Transliterate unsupported Russian characters into English
2017-01-14 02:39:36 +03:00
cpfeiffer
1e24fa7ad8
Dummy weather notifucation config activity
2017-01-14 00:26:47 +01:00
Andreas Shimokawa
38e234552d
Pebble: only ACK appmessages from pebble to pebblekit android apps after the app actually sent one
2017-01-13 08:16:33 +01:00
Andreas Shimokawa
0218cee0e1
Pebble: fix long standing bug in uuid encoding for ACK messages (did not seem to do any harm)
2017-01-11 23:42:40 +01:00
Andreas Shimokawa
50cb3c9db3
Pebble: remove null termination from cstrings when converting to json for PebbleKit
2017-01-11 22:39:08 +01:00
Andreas Shimokawa
9132736428
Pebble: report current firmware string to PebbleKit (eg. "v3.12.2") not "Gadgetbridge"
2017-01-10 22:43:10 +01:00
Andreas Shimokawa
185605211d
Pebble: fix bug in PebbleKit implementation regarding binary data transferred from a watchapp to a 3rd party Android app
...
(Fixes a bug with TCW)
2017-01-10 22:30:55 +01:00
Carsten Pfeiffer
d646b6773e
Merge pull request #491 from jpbarraca/hplus-handle-data
...
HPlus: Improves device support
2017-01-10 20:40:07 +01:00
Andreas Shimokawa
f2e6ce6380
Pebble: fix incoming calls (recently broken)
2017-01-10 18:23:35 +01:00
João Paulo Barraca
b92b1c08bf
HPlus: Fix deprecation warning
2017-01-10 13:44:32 +00:00
João Paulo Barraca
13ec497127
Merge branch 'master' of https://github.com/Freeyourgadget/Gadgetbridge into hplus-handle-data
2017-01-10 13:23:23 +00:00
João Paulo Barraca
4cf872664c
HPlus: Improved support for storing and displaying data.
2017-01-10 13:08:45 +00:00
Andreas Shimokawa
fda317671a
Ignore summary information for k9 mail
...
(#373 )
2017-01-09 18:34:22 +01:00
Andreas Shimokawa
8c0f5599a1
Do not try to remove notifications from the device in some obvious cases
2017-01-09 16:49:11 +01:00
Andreas Shimokawa
3644d5e7a6
Pebble: remove notifications when dismissed on the phone ( #326 )
...
Most of the code is generic, so it could be implemented by other devices.
I dont know what happens if multiple messages arrive in the same notification.
So, this is experimental.
2017-01-09 16:33:00 +01:00
Andreas Shimokawa
c6999713d2
Pebble: use Notifications system app as parent UUID for notifications
2017-01-09 15:11:50 +01:00
Andreas Shimokawa
f05b51fd83
Pebble: Add option to disable call display
...
Closes #494
2017-01-09 14:41:02 +01:00
cpfeiffer
6c269aa089
Generic characteristic names from field names
2017-01-08 21:37:43 +01:00
Andreas Shimokawa
855a141ec4
Pebble: in AppMessageHandler provide a default implementation of handleMessage which just ACKs
2017-01-08 17:17:29 +01:00
Daniele Gobbetti
1fda1ba1b2
Pebble: try to get rid of the sleep and rely on countdownlatch instead.
...
Could help with #494
2017-01-08 16:48:50 +01:00
Daniele Gobbetti
c1abaaa4e0
Add support for hiding the icon in the status bar and the notification on the lockscreen.
...
This adds proper settings to toggle GB behavior and closes #460 .
2017-01-08 15:51:56 +01:00
Yar
5c8f02d054
Set notification to minimal priority
...
Pebble app is not showing in status bar and on lockscreen. This change is for GadgetBridge to have the same behavior.
2017-01-08 15:31:55 +01:00
Daniele Gobbetti
09cc0134db
Pebble: add support for weather in some watchfaces by gh/zalewszczak
...
See https://github.com/zalewszczak/pebble for a list of watchfaces
#482
2017-01-08 15:27:01 +01:00
Daniele Gobbetti
7f50e0d2b7
Pebble: add support for weather in square watchface
...
So far celsius are forced for temperature #482
2017-01-07 22:41:10 +01:00
Andreas Shimokawa
380e3b3640
Merge pull request #489 from hackoder/master
...
Show K9 message body in notifications
2017-01-05 17:14:09 +01:00
João Paulo Barraca
970c6960ea
HPlus: delay day slot fetch
2017-01-05 14:24:39 +00:00
João Paulo Barraca
ade7161c4d
HPlus: Buffer Day Slot data before commit to DB
2017-01-05 14:03:49 +00:00
João Paulo Barraca
d491921b1c
HPlus: Rename HPlusHandlerThread method
2017-01-05 10:36:22 +00:00
João Paulo Barraca
93ae57bd60
Refactoring class HPlusDataRecordDaySummary
2017-01-05 10:33:37 +00:00
João Paulo Barraca
051d1e7390
HPlus: fix typo
2017-01-05 00:17:28 +00:00
João Paulo Barraca
ae0718c398
HPlus: Refactoring and added comments to the message decoders members
2017-01-05 00:03:54 +00:00
João Paulo Barraca
510427e30b
HPlus: Refactoring. Calendar -> GregorianCalendar
2017-01-04 23:41:35 +00:00
João Paulo Barraca
91b346b23d
HPlus: Enabled decoding of additional fields in day summary message
2017-01-04 23:24:17 +00:00
João Paulo Barraca
9d67394720
HPlus: Code cleanup
2017-01-04 01:46:24 +00:00
Andreas Shimokawa
df72a30904
Merge branch 'master' into background-javascript
2017-01-03 20:37:58 +01:00
Andreas Shimokawa
fd51f32765
Add Riot as a recognized chat application (including pebble color and icon)
2017-01-03 20:36:39 +01:00
Daniele Gobbetti
c9cfaa9bd8
Pebble: webview. Implement two way communication with JS.
...
The support within JS is a bit hacky and sometimes conflicts with the configuration page.
2017-01-03 15:04:51 +01:00
Hasan Ammar
0ba377bb42
Show K9 message body in notifications
2017-01-02 19:03:02 -05:00
Daniele Gobbetti
0efacfbad5
Pebble: webview ensure the webview works no matter which the order of loading the components is.
2017-01-02 12:32:52 +01:00
Daniele Gobbetti
7ab74fb11b
Pebble: webview. Use the main thread explicitly again and log XHR requests at least on Lollipop and up
2017-01-02 12:07:57 +01:00
João Paulo Barraca
547736f8f7
HPlus: removed test values
2017-01-02 10:13:34 +00:00
João Paulo Barraca
1fb4ee8a8f
HPlus: Basic support for data synchronization
2017-01-02 00:58:37 +00:00
Daniele Gobbetti
4ef0415da2
Pebble: webview. Ensure we are on the main thread for disposing the webview and implement sending messages to the webview.
2017-01-01 21:01:58 +01:00
Daniele Gobbetti
f175701825
Merge branch 'master' into background-javascript
2017-01-01 19:45:27 +01:00
Daniele Gobbetti
d22c78e8f7
Pebble: webview, simplify the code since finals are not required anymore
2017-01-01 18:37:42 +01:00
Daniele Gobbetti
eaaa940637
Pebble: refactor the background webview
...
Now native controls seem to work (including datepicker), still the webview is not started upon watchapp start, but when long-pressing each app in the app manager. After the webview is started it will live in the background until device disconnect.
2017-01-01 18:33:39 +01:00
Andreas Shimokawa
507e58922f
Pebble: fix decoding of byte and short appmessage data (when a native handler is present)
2017-01-01 17:58:34 +01:00
Andreas Shimokawa
6d02a76328
Merge branch 'master' into background-javascript
2017-01-01 17:25:12 +01:00
Andreas Shimokawa
f25605f5a1
Pebble: First shot at TrekVolle support
...
Also some cleanups
2017-01-01 16:24:46 +01:00
Andreas Shimokawa
8b55110679
Pebble: allow weather to be send to watchfaces on fw < 4.x
2017-01-01 14:19:35 +01:00
Andreas Shimokawa
1722a6dc47
Pebble: minor code cleanup
2017-01-01 13:55:07 +01:00
Andreas Shimokawa
7930b7da75
Pebble: Support Healthify Weather
2016-12-31 20:08:53 +01:00
Andreas Shimokawa
5a83cb1c48
Pebble: fix npe in mario time handler
...
I shout stop for 2016! :D
2016-12-31 19:29:41 +01:00
Andreas Shimokawa
b811247704
Pebble: Adapt MarioTime logic
2016-12-31 19:27:21 +01:00
Andreas Shimokawa
984e639e97
Pebble: push current weather to TimeStylePebble again when watchface gets started
2016-12-31 19:17:08 +01:00
Andreas Shimokawa
4e543d4b34
Pebble: rename pushMessage() to onAppStart()
2016-12-31 19:04:05 +01:00
Andreas Shimokawa
82c0f35c58
Pebble: add encodeUpadteWeather() to AppMessageHandler for easier watchface support
...
Now in Timestyle weather is in sync with what we get from weather notification
2016-12-31 18:56:24 +01:00
Andreas Shimokawa
266c6b8817
Pebble: send weather to Pebble when we get notified by weather notification
2016-12-31 15:56:05 +01:00
Andreas Shimokawa
f12e786837
Pebble: fix mario time appmessage handler (weather condition icon hardcoded to sunny for now)
2016-12-31 13:33:50 +01:00
Andreas Shimokawa
95e6d2c740
Pebble: delete WeatherNeat handler, it was only used for testing and the watchface seems outdated
2016-12-31 12:35:40 +01:00
Andreas Shimokawa
4631e5bbaf
Pebble: restore find lost device feature abused for testing
2016-12-31 12:15:44 +01:00
Daniele Gobbetti
3280607cc9
Pebble: hide the weather app menu entries on apps that aren't the weather app.
2016-12-31 10:15:08 +01:00
Daniele Gobbetti
e477d22c88
Pebble: support the system weather app.
...
- enable/disable weather app from the watchapp list
- convert weather data to a format that can be displayed by the system app
TODO: send the weather data periodically
2016-12-30 20:14:13 +01:00
Daniele Gobbetti
0e9ce5d186
Pebble: get min/max temperature also for the forecast
2016-12-30 19:58:56 +01:00
Andreas Shimokawa
240c81ecb4
Pebble: implement weather related protocol encoding
...
this is not yet connected to anything...
2016-12-30 15:26:44 +01:00
Andreas Shimokawa
b045d5ac26
Merge branch 'master' into feature-weather
2016-12-30 00:10:54 +01:00
cpfeiffer
5d3c45d2c0
Mi2: Remember and use last synced timestamp in preferences
...
(instead of using the last sample's timestamp in the database.
The database also contains manual hr measurements and live activity
samples, so we would miss activity data before the last manual
measurement.
Closes #478
2016-12-29 23:23:20 +01:00
Daniele Gobbetti
dbf88bab5f
Outdated TODO removed
2016-12-29 20:44:04 +01:00
cpfeiffer
df1fe7c5b8
Port to UriHelper
2016-12-29 01:46:00 +01:00
cpfeiffer
aadde7d1ca
Port to UriHelper, fix potential resource leak
2016-12-29 01:41:47 +01:00
cpfeiffer
a96a747119
Pebble: fix resource leak on app installation
2016-12-29 01:29:28 +01:00
cpfeiffer
0646eda646
Fix file potential handle leaks
2016-12-29 01:07:26 +01:00
Daniele Gobbetti
53d8f88670
Pebble: first steps towards background JS execution.
...
Progress so far:
- webview is created upon watchapp launch
- webview is destroyed after disconnect
- ready event is fired in the background
- showConfiguration is fired upon webview display
2016-12-28 20:53:17 +01:00
João Paulo Barraca
a135f51d31
HPlus: Improve initial configuration process and refactor constants
2016-12-28 13:53:17 +00:00
João Paulo Barraca
fed5638782
HPlus: Refactor Sex into Gender and convert value appropriatelly
2016-12-28 13:50:56 +00:00
Andreas Shimokawa
bcb522d2d0
Merge branch 'master' into feature-weather
2016-12-27 13:51:39 +01:00
Daniele Gobbetti
4ce890b5ce
Pebble: support opening files from the system share intent
2016-12-27 13:02:02 +01:00
Daniele Gobbetti
353bd4651b
Show Gadgetbridge in the "share" system dialog for installing firmwares, apps etc.
2016-12-27 12:20:59 +01:00
Andreas Shimokawa
440a5e071f
Try to support "Subsonic" android app ( #474 )
2016-12-26 23:53:24 +01:00
Andreas Shimokawa
16d9279728
Merge branch 'master' into feature-weather
2016-12-26 23:03:11 +01:00
cpfeiffer
bb8aff8c99
Fix axis label color live activity (dark theme)
2016-12-26 12:51:20 +01:00
cpfeiffer
da494cde7b
Handle live activity for Mi2 and Mi1 in the same way #448
...
Realtime samples now use ActivitySample.NOT_MEASURED for unknown or
invalid values.
2016-12-26 12:51:12 +01:00
cpfeiffer
8719cadc43
Mi Band: fix live activity messing up stepcount #448
...
live samples now report relative steps, not absolute to the current
day's stepcount.
Also live samples' steps should NOT be added to the database since
they are already counted in the regular stepcount.
2016-12-26 01:38:20 +01:00
cpfeiffer
305bd7600c
Fix current realtime steps calculations #450
...
timestamp is already in seconds instead of milliseconds
Also: port to REALTIME_SAMPLES
2016-12-26 00:23:02 +01:00
cpfeiffer
999d3e3252
Mi1: Attempt at throttling notifications during sync #438
2016-12-25 23:27:56 +01:00
Andreas Shimokawa
e8d4575261
Merge branch 'master' into feature-weather
2016-12-25 23:20:09 +01:00
Andreas Shimokawa
3441192d19
Pebble 2: Fix Pebble Classic FW 3.x app variant being priorized over native Pebble 2 app variant
...
Fixes #475
2016-12-25 23:11:49 +01:00
Andreas Shimokawa
6c5b51cd6d
Merge branch 'master' into feature-weather
2016-12-25 22:53:44 +01:00
Carsten Pfeiffer
a84bc16503
Merge pull request #470 from jpbarraca/hplus
...
Add preliminary support for HPlus devices: Zeblaze Zeband and others
2016-12-25 21:33:52 +01:00
Andreas Shimokawa
6af95d99be
Merge branch 'master' into feature-weather
2016-12-24 23:06:21 +01:00
Andreas Shimokawa
b5225145d4
Fix crash with unknown notification sources on Mi Band (maybe other non-Pebble devices also affected)
...
Pebble low level code had an own check for notification type being null, no we set it to UNKNOWN early
This regression was introduced in 0.15.0 though "Revamp Notification types Pebble (#453 )"
Fixes #468
2016-12-24 22:00:24 +01:00
João Paulo Barraca
649e20ad04
HPlus: Ignore duplicated messages from band
2016-12-24 00:05:51 +00:00
João Paulo Barraca
88f2d2ee4f
HPlus: Fixed notification title size
2016-12-23 12:20:06 +00:00
João Paulo Barraca
cd915598b0
HPlus: Improved handling of incomming calls
2016-12-23 11:46:20 +00:00
João Paulo Barraca
9dd5967f4e
HPlus: Set date and time on connect
2016-12-23 10:14:03 +00:00
João Paulo Barraca
9a338c9bae
HPlus: Fix text notification length
2016-12-23 01:35:18 +00:00
João Paulo Barraca
2b78f2708f
Cleanup according to PR Review
2016-12-23 01:21:05 +00:00
João Paulo Barraca
b7cd908fbe
Improved device filter by considering the existence of a service UUID
2016-12-23 00:10:38 +00:00
João Paulo Barraca
6c186329df
Cleanup HPlusSampleProvider
2016-12-23 00:08:14 +00:00
João Paulo Barraca
ae9ebc1be8
Refactoring some parts. Added support for param synchronisation with band
2016-12-21 23:57:57 +00:00
João Paulo Barraca
5b3ef8999f
Add preliminary support for HPlus devices, such as the Zeblaze Zeband (and many others)
...
Working: Text and call notifications, setting most user data, date and time, heart rate monitoring, sleep monitoring (alfa)
2016-12-21 12:51:25 +00:00
Andreas Shimokawa
2148b431ea
Merge branch 'master' into feature-weather
2016-12-19 23:32:53 +01:00
Andreas Shimokawa
bd5dc6bfbc
Pebble 2/LE: Add setting to limit the MTU (for debugging broken BLE stacks)
2016-12-19 23:28:06 +01:00
Daniele Gobbetti
846c74aa86
Forward also group summary notifications, if they contain wearable actions. Hopefully helps with #456
...
Tested with conversations and there is no regression. Also a specific workaround for telegram was removed, hopefully this does not break #395
2016-12-18 18:00:16 +01:00
Daniele Gobbetti
f1965c7b00
Log the flags also when passing the notification to device #456
2016-12-18 11:03:54 +01:00
Daniele Gobbetti
861c655b5d
Log the incoming notification flags.
...
Should help further diagnosing #456
2016-12-18 10:40:30 +01:00
Andreas Shimokawa
8990e7e3da
Merge branch 'master' into feature-weather
2016-12-17 00:20:16 +01:00
Andreas Shimokawa
97aed43518
Pebble: fix for previous commit
...
(potential crashes when installing and receiving notifications)
2016-12-17 00:17:05 +01:00
Andreas Shimokawa
9588535004
Merge branch 'master' into feature-weather
2016-12-17 00:01:37 +01:00
Andreas Shimokawa
2b3592f354
Pebble: allow sending data to the pebble during installation on FW >= 3.0
...
It seems to be no problem to recieve notifications etc during app installation with non legacy firmwares :)
2016-12-16 23:47:59 +01:00
cpfeiffer
321c288e27
Fix compilation
2016-12-15 20:59:55 +01:00
cpfeiffer
d12103e95d
Merge branch 'master' into new_GUI
2016-12-15 20:31:04 +01:00
cpfeiffer
caaa38ed04
Mi2: support for current battery status #449
...
so far we understand
- last charge date
- current level
- state normal
- state charging
and we are notified on changes.
2016-12-14 00:50:43 +01:00
cpfeiffer
dd48869fa5
Mi2: move Miband2Support into the package it belongs
2016-12-14 00:28:35 +01:00
Andreas Shimokawa
f74bb4e3f3
Merge branch 'master' into feature-weather
2016-12-12 09:05:19 +01:00
cpfeiffer
c69889d177
Simplified + fixed ArrayUtils.equals() + added lots of testcases
2016-12-11 23:30:20 +01:00
cpfeiffer
bcfc8bc110
Mi1/Mi2: fix firmware file probing for the different devices
2016-12-11 23:30:20 +01:00
Daniele Gobbetti
bb5791485c
Add log statements when notifications are not sent to gadget
...
This should help debuggin #456
2016-12-11 22:48:12 +01:00
cpfeiffer
40354f8f5a
Some @Override
2016-12-11 21:31:27 +01:00
cpfeiffer
94c0d6af9d
Mi2: Fix off-by-one in activity fetching
2016-12-11 21:31:27 +01:00
Andreas Shimokawa
825f2bf2e8
Merge branch 'master' into feature-weather
2016-12-11 20:27:28 +01:00
Andreas Shimokawa
31122f0b09
Pebble: Propagate watch apps launches outside of PebbleProtocol
...
This does not do anything yet.
2016-12-11 20:25:46 +01:00
cpfeiffer
6dfc895303
Mi2: Initial work on firmware update #427
2016-12-11 02:11:58 +01:00
cpfeiffer
4a19046301
Mi2: Some characteristics and opcodes for fw update
2016-12-11 02:11:58 +01:00
cpfeiffer
fd2c182714
Mi 2: another characteristic rename (0000005)
2016-12-11 02:11:58 +01:00
cpfeiffer
83ad2a9bd9
Mi 2: rename characteristic 00000003 to "CONFIGURATION"
2016-12-11 02:11:58 +01:00
Andreas Shimokawa
f63a7db5f9
Pebble: map owm conditions to TimeStyle icons
...
This is probably not the way we should do it, just experimenting for personal use :P
2016-12-11 00:08:57 +01:00
Daniele Gobbetti
a6a2c6d6d6
Pebble: timestyle doesn't use Yahoo anymore.
...
The values do not work anyway, because it's mapping them internally. See https://github.com/freakified/TimeStylePebble/tree/master/src/pkjs for the mappings.
2016-12-10 15:09:22 +01:00
Andreas Shimokawa
779699cd95
Pebble: remove configuration stuff from TimeStylePebble handler, update weather keys
...
This is not usable now, just playing around
2016-12-09 23:31:32 +01:00
Andreas Shimokawa
a0e21d7c6d
Merge branch 'master' into feature-weather
2016-12-09 23:29:54 +01:00
Andreas Shimokawa
0e1287e382
Pebble: also execute AppMessageHandler.pushMessage() if present when connection gets established
...
This does not have any effect now since pushMessage() is not used in this branch
2016-12-09 23:21:51 +01:00
Andreas Shimokawa
efb1cd389b
Merge branch 'master' into feature-weather
2016-12-09 21:52:55 +01:00
Andreas Shimokawa
17b581022b
optimize imports
2016-12-09 20:14:17 +01:00
Kevin Richter
34296c021f
Revamp Notification types Pebble ( #453 )
...
* Remove notification switches for enum & hashmap
* Fix code style
* Fix null reference exception
* Add whatsapp support
* Remove duplicate entry
2016-12-09 17:54:19 +01:00
Andreas Shimokawa
313499abd4
Pebble: also display debug level in app logs output
2016-12-08 23:20:00 +01:00
Daniele Gobbetti
2d0489960e
Pebble: boilerplate code to open dictation session #189
...
This is just boilerplate code, doesn't do anything but will do no harm as it's not called from anywhere
2016-12-08 16:38:31 +01:00
Andreas Shimokawa
ed38e524bf
Make some static stuff non-static (potentially fixes instant run problem and leaks)
2016-12-07 23:13:51 +01:00
Daniele Gobbetti
6a09023c24
Liveview: add some sanity checks to the incoming data lenghts
2016-12-07 13:09:15 +01:00
Daniele Gobbetti
4eb56eb9ca
Liveview: refactor the BT stream reading functionality
...
Read the expected number of bytes at each step instead of a single byte.
2016-12-05 17:45:03 +01:00
Daniele Gobbetti
e53b8b6b32
Liveview: ignore the SocketTimeoutException, disconnect in any other case
2016-12-04 21:04:30 +01:00
Daniele Gobbetti
219cc7bff1
Merge branch 'master' into liveview
2016-12-04 20:42:29 +01:00
cpfeiffer
928bdd5d36
Adjust comments to current values
...
They look plausible compared to 1S activity
2016-12-04 20:25:20 +01:00
Daniele Gobbetti
8c01123a48
Liveview: addressed the first feedback.
...
- centralized string encoding and byte order
- replaced printStrackTrace with LOG.error
2016-12-04 19:10:58 +01:00
Andreas Shimokawa
013029443b
Pebble: Minor cleanups
2016-12-04 17:21:29 +01:00
Andreas Shimokawa
a691cd0ff7
Pebble: add option to enable applogs (debug messags from pebble apps)
2016-12-04 16:55:27 +01:00
Daniele Gobbetti
e0a844b60a
Liveview: Initial support for Liveview devices
...
Working so far: stable connection, setting time and sending notifications.
2016-12-03 16:20:02 +01:00
Andreas Shimokawa
3db009e77d
Pebble: do not dump all LE traffic, minor code cleanups
2016-12-02 23:38:54 +01:00
Andreas Shimokawa
ae2c107ed1
Pebble 2/LE: only notify once when first PP packets are incoming
2016-12-02 08:50:02 +01:00
Andreas Shimokawa
bc9041a4c9
Pebble 2/LE: on connect wait 30s max and stop waiting immediately if a real PP connection got establish (ie write request on the gatt server)
2016-12-02 08:07:44 +01:00
Andreas Shimokawa
3eda2d4b81
Pebble 2/LE: honor reconnect tries
2016-12-02 00:38:53 +01:00
cpfeiffer
44f74270df
Mi2: Experimental support for activity recognition
2016-12-02 00:22:06 +01:00
cpfeiffer
da297ecd8b
Fix + cleanup time setting and calendar sending #441
2016-12-01 22:51:08 +01:00
Uwe Hermann
0746aaa579
app: Random typo and consistency fixes.
2016-12-01 20:22:12 +01:00
Uwe Hermann
6dd74d04ac
code/docs: Consistently use the "Gadgetbridge" spelling.
...
"Gadgetbridge" appears to be the common spelling as per most docs,
code comments, wiki, and so on. Thus avoid using "GadgetBridge".
2016-12-01 17:28:51 +01:00
Andreas Shimokawa
f0789cc147
Pebble 2/LE: fix another bug when reconnecting
2016-12-01 00:28:23 +01:00
Andreas Shimokawa
2993bb6b5c
Pebble 2/LE: fix potential NPE
2016-12-01 00:20:21 +01:00
Andreas Shimokawa
74c20f3a82
Pebble 2/LE: More fun with reconnect
2016-11-30 23:56:58 +01:00
Andreas Shimokawa
b878fa5eda
Pebble LE/Pebble 2: Fix reconnect not working when first attempt fails
2016-11-30 22:28:34 +01:00
Andreas Shimokawa
95ec1fb44c
Pebble LE/Pebble 2: Improve reconnect
2016-11-30 19:54:21 +01:00
cpfeiffer
09ff95eb34
Support for continuous hr readings (live activity) #323
2016-11-29 23:25:11 +01:00
cpfeiffer
49acde118d
Do not log heartrate separately during miband 1s sync
2016-11-29 23:25:11 +01:00
cpfeiffer
011646b097
Fix activity data on Mi Band 1 #440
2016-11-29 22:22:54 +01:00
Andreas Shimokawa
2677dad873
Fix a recent regression that caused the database migration dialog to never pop up
2016-11-27 22:50:21 +01:00
Andreas Shimokawa
109a032f1e
Pebble: fix Pebble LE address not being propery added to device attributes
2016-11-27 22:45:57 +01:00
Daniele Gobbetti
84327a5b86
Pebble: use also the device address as seed to store app configuration
...
This is not needed as long as one GB instance is used to manage a single pebble device, if multiple devices are managed the stored watchapp configuration could be messed up.
2016-11-27 11:31:03 +01:00
Andreas Shimokawa
fa8df9f552
add missing migration script
2016-11-27 10:52:43 +01:00
Andreas Shimokawa
16b4bfd0e7
Pebble LE: also return to control center if successfully initialized
2016-11-27 10:38:16 +01:00
Andreas Shimokawa
723ad53588
Call getDevice always when connected
...
This fixes a longstanding bug where device attributes where ONLY updated when fetching activity data or when pairing a new device
2016-11-27 10:32:56 +01:00
Andreas Shimokawa
24752d3455
Pebble: try harder to get LE address into the database, does not work
2016-11-27 10:10:50 +01:00
Andreas Shimokawa
34ad088b88
Pebble: Experimental support for BLE on all models via dev option in Pebble Settings
...
HOWTO:
1) Pair you normal Pebble (not necessary if already done), make sure it was connected once
2) Unpair your LE pebble if already paired
3) Switch on "Always prefer BLE" in Pebble Settings
4) Tap on the + in Control Center to add a new device
5) Pair your Pebble-LE XXXX or Pebble Time LE XXXX inside Gadgetbridge's Device Discovery actibity
Now Gadgetbridge will connect to your LE Pebble when tapping on Pebble XXXX if "Always Prefer BLE" option is enabled.
You can easily switch back to classic LE by turning that option off again
2016-11-27 09:49:28 +01:00
cpfeiffer
2f7eb9ef23
Some more improvements to discovery
...
- pass service uuids to GBDeviceCandaidate so that DeviceCoordinators
can detect devices by their services.
Note: they should not rely on service uuids being available
2016-11-27 02:46:07 +01:00
cpfeiffer
b9ff2cd468
A few improvements to discovery
...
- display the right icon for found device candidates
- scan for specific LE services
2016-11-27 01:09:20 +01:00
Andreas Shimokawa
352fc1a030
fix wrong return value
2016-11-25 14:53:12 +01:00
Andreas Shimokawa
a5263141d7
Pebble 2: Ignore all GATT communication with all other that the current device
...
Fixes a bad bug where disconnecting from another BLE device caused the Pebble2 to disconnect
2016-11-25 14:28:04 +01:00
cpfeiffer
2d4645f6cc
Fix only the first day label being displayed in Week Steps charts
2016-11-24 23:35:10 +01:00
Andreas Shimokawa
84caf22479
fix weekly charts to start y axis at 0
2016-11-24 22:27:44 +01:00
cpfeiffer
7da328d5db
Fix an invalid leftover check for array length
...
Also removed a method invocation that did not belong there.
2016-11-24 22:16:04 +01:00
Andreas Shimokawa
9d083e2330
Pebble: add Kickstart Watchface to app manager on FW 4.X
...
I know it only exist on 4.3+, but I am lazy
2016-11-24 22:10:32 +01:00
cpfeiffer
3fdfb7d172
Mi2: Support for setting the fitness goal (steps)
2016-11-24 21:58:32 +01:00
cpfeiffer
9bebf1d32f
When memory is really low, free up some memory #436
...
(although we probably can't save much)
2016-11-24 21:15:27 +01:00
cpfeiffer
60cb67c3c8
Some cleanup
2016-11-24 21:15:27 +01:00
cpfeiffer
cc0fbff297
Set the sample provider in getLatestActivitySample()
2016-11-24 21:15:27 +01:00
Andreas Shimokawa
381323011e
Pebble 2: work around FW installation problems
...
Wait a 0.5s after each complete Pebble packet and do not longer wait at all after a completed GATT package chunk (was 0.1s)
Big outgoing messages will be now much faster such as firmware installations but smaller take more time than before.
(This is not the proper fix but I could update the firmware this way, failed 10 times before after a few percent)
2016-11-24 18:52:58 +01:00
cpfeiffer
67d89ce1b9
Create the correct start-sync timestamp #323
2016-11-22 22:52:26 +01:00
cpfeiffer
dfbaba4cb6
Make sure that the charts display the requested time range
...
(instead of only the range with available samples)
2016-11-22 15:53:58 +01:00
cpfeiffer
a8a7d8db31
Mi2: WIP synchronize only new data since last sync
...
(#323 )
2016-11-22 00:05:41 +01:00
cpfeiffer
0c51f86afc
Mi2: more work on activity data #323
2016-11-22 00:05:41 +01:00
cpfeiffer
82cd06f4c1
Mi2: WIP: initial support for activity data
...
(#323 )
2016-11-22 00:05:41 +01:00
Andreas Shimokawa
eb052cead3
Pebble 2: Also honor the mtu when client gets a change reported
...
Should help older LE Pebbles
2016-11-21 17:29:16 +01:00
Andreas Shimokawa
647b67cfca
Pebble 2: call both requestMTU and use the characteristic write
2016-11-21 15:17:03 +01:00
Andreas Shimokawa
fce86482b9
Pebble 2: try an alternative way of setting the MTU (might revert)
2016-11-21 14:54:01 +01:00
Andreas Shimokawa
e8da301da3
Pebble 2: fix a few crashes with disconnect/ reconnect
2016-11-20 22:04:49 +01:00
Andreas Shimokawa
4f3c46f704
Pebble 2: only add second service if first one was added sucessfully
2016-11-20 00:12:41 +01:00
Andreas Shimokawa
3b250a4568
Pebble 2: initial hacky reconnect support
...
Works sometimes, at least less crashes
(#432 )
2016-11-19 23:53:07 +01:00
Andreas Shimokawa
029cc02a29
Pebble: Add Pebble specific pairing activity mainly useful for Pebble 2 since it properly pairs the Pebble after connecting with BLE
...
Fixes #433
2016-11-19 22:13:00 +01:00
Andreas Shimokawa
ddfab1cdae
Pebble 2: use requestMTU() on Android 5+ instead of characteristics write.
...
This actually fixes MTU problems with older Pebbles (Time, OG)
2016-11-18 23:47:48 +01:00
Andreas Shimokawa
4dc085de57
Pebble 2: React to MTU notifications, fixes LE for older pebbles also
...
It seems that setting the MTU on older pebbles does not work, so just use what we can use.
Maybe old pebbles need setMTU() which only works on Android 5+, we could use that conditionally...
2016-11-18 23:47:48 +01:00
cpfeiffer
51fa31aa66
Fix BLE type conversions problems
2016-11-18 23:36:22 +01:00
Andreas Shimokawa
66e3de9168
Pebble 2: improve connection problems (at least for me)
2016-11-18 22:38:39 +01:00
cpfeiffer
96a16245df
Update to MPAndroidChart 3.0.1
2016-11-18 21:31:55 +01:00
Andreas Shimokawa
d41848014b
fix database schema migration from 13 to 14
2016-11-16 11:37:36 +01:00
Andreas Shimokawa
485cda52a8
Pebble 2: actually report HRM feature to Charts Activity
2016-11-15 23:41:35 +01:00
Andreas Shimokawa
d7256d172e
I hate java
2016-11-15 23:23:21 +01:00
Andreas Shimokawa
163a7bdf15
Pebble 2: save heart rate values to database (hopefully)
2016-11-15 23:21:13 +01:00
Andreas Shimokawa
82a47022fa
Pebble 2: allow to disable/enable HRM in context menu of Workout app
...
Okay this might be stupid since Workout seems to work also works without HRM!
I assumed (wrongly) that I will disable Workout by disabling HRM
anyway, better than not being able to toggle it at all!
2016-11-15 12:17:51 +01:00
Andreas Shimokawa
4b7f47ba6c
Pebble 2: add Workout system app to app manager on P2 and hexdump incoming HRM datalog
2016-11-15 11:56:14 +01:00
Daniele Gobbetti
1a22752b98
Pebble: enable localStorage
...
LocalStorage native functions are overridden to keep each watchface's settings separated. It's possible the bind method do not work on older versions of android.
2016-11-14 17:51:33 +01:00
cpfeiffer
d8145a52f9
Activate the display when lifting the wrist #323
...
Configurable, defaults to true
2016-11-13 21:47:54 +01:00
Andreas Shimokawa
00a71f53b3
Pebble 2: add not yet working code (at least not without weird workarounds)
...
This is is a pain because of tons of weird pairing issues
2016-11-13 21:29:58 +01:00
cpfeiffer
d89899557c
Mi2: Add config option to configure date/time display
...
(added a new EventHandler method to set a specific configuration option)
2016-11-13 20:47:24 +01:00
cpfeiffer
ddaf51768d
Improved logging
2016-11-13 20:24:25 +01:00
cpfeiffer
3cc8d887ca
Mi2: Initial support for wear location, hr during sleep and date format #323
...
- wear location from prefs is sent to the band
- hr measurement during sleep is sent to the band
- date format is sent to the band (date+time or just time)
(TODO: needs preference option)
2016-11-13 01:44:52 +01:00
Andreas Shimokawa
f68bbe453b
Pebble: bump flags and version we report
...
Plus some small preparations for P2 support which do not hurt in master
2016-11-10 11:05:32 +01:00
Andreas Shimokawa
eb7646d26a
Pebble: Fix vanished Health system apps (for affected users)
...
This code also allows us to add new system apps which will then appended to the current list of previous Gadgetbridge users.
2016-11-09 19:20:37 +01:00
Andreas Shimokawa
837dfd5917
Pebble: fix Pebble Health vanishing when deactivating
2016-11-09 12:06:13 +01:00
cpfeiffer
3b474bb5a9
Move another notify registration to after initialization #408
2016-11-08 22:55:31 +01:00
Daniele Gobbetti
16c4f1a5ca
Pebble: add toggle to use last known location for sunrise and sunset
...
This adds the feature discussed in #415 , the used location is the last recorded by the network location provider, if it's not available then the stored location is used.
2016-11-06 15:42:52 +01:00
cpfeiffer
55f036c104
Move heart rate notification enamblement to after authentication
...
Might fix #408 and #425
2016-11-04 22:11:07 +01:00
Andreas Shimokawa
14ef5202e1
some internal testing which does not hurt in master
2016-11-03 11:07:44 +01:00
cpfeiffer
0076bbf572
Remove all Mi2 DeviceInfo stuff -- they're not used together #365
...
This might fix firmware downgrading on certain Mi1A devices
with hw revision 8
2016-10-30 23:04:21 +01:00
Daniele Gobbetti
879e47760b
Stop discovery also if the user swipes the snackbar away.
2016-10-30 15:21:06 +01:00
Daniele Gobbetti
8c769b15c3
Use snackbar instead of progress dialog to find device.
2016-10-30 15:15:34 +01:00
Daniele Gobbetti
a45f76d3bf
Prevent disconnection if device is not connected.
2016-10-30 14:42:08 +01:00
Daniele Gobbetti
d087e2142d
Merge branch 'master' into new_GUI
2016-10-29 20:54:21 +02:00
Daniele Gobbetti
b9bfb8c93a
Use attr resources to enable theme dependent colors for the charts.
2016-10-29 20:29:35 +02:00
Daniele Gobbetti
8fdb233ef0
Bind connect and disconnect to the whole cards.
...
Use snackbars to give early feedback to the user (colors are wrong now, waiting for a change in master).
Removed hintTextView for good
2016-10-29 18:20:53 +02:00
Daniele Gobbetti
a4b7b87b24
Merge branch 'master' into new_GUI
2016-10-29 16:40:33 +02:00
Andreas Shimokawa
f755d99023
Pebble: Add context menu option in app manager to search a watchapp in the pebble appstore
2016-10-29 11:41:08 +02:00
cpfeiffer
cea5f5fa36
Remove duplicate case here as well
2016-10-29 00:01:56 +02:00
cpfeiffer
1cadb692fe
Wild guess at trying to fix spontaneous reboots during discovery #412
2016-10-28 23:48:13 +02:00
cpfeiffer
a941a6cd5f
Make some strings translatable
2016-10-28 23:47:39 +02:00
cpfeiffer
3db9748136
Mi2: Attempt to support non-repetitive alarms #323
2016-10-28 23:18:10 +02:00
cpfeiffer
e5ade5c0ef
Add Alamr.isRepetitive() convenience method
2016-10-28 22:40:34 +02:00
cpfeiffer
1352403089
Mi2: Allow for disabling alarms #323
2016-10-28 22:26:07 +02:00
Andreas Shimokawa
300d0466af
Merge pull request #422 from roidelapluie/fcb
...
Mark 3rd party facebook apps notifications as Facebook
2016-10-28 10:45:40 +02:00
Andreas Shimokawa
55daaf247c
Merge pull request #420 from atkyritsis/master
...
Removed duplicate if statement.
2016-10-28 10:45:09 +02:00
Julien Pivotto
67937dd6ee
Mark 3rd party facebook apps notifications as Facebook
...
- Toffeed: https://f-droid.org/repository/browse/?fdid=me.jakelane.wrapperforfacebook
- Slimsocial: https://f-droid.org/repository/browse/?fdid=it.rignanese.leo.slimfacebook
- MaterialFBook: https://f-droid.org/repository/browse/?fdid=me.zeeroooo.materialfb
Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2016-10-28 07:23:54 +02:00
Andreas Shimokawa
8603c3ffa0
Merge branch 'master' into new_GUI
2016-10-28 00:53:03 +02:00
Andreas Shimokawa
d6b9e6d64b
Pebble: Support sending byte arrays from app configuration data
...
Also add debug output if trying to encode unknown classes in PebbleProtocol
(Fixes #421 )
2016-10-28 00:32:45 +02:00
Andreas Shimokawa
bdf403210e
Pebble: Fix configuration of certain pebble apps
...
for appkeys with index 0 it was assumed they were not found becaus JSONObject.getOpt() returns 0 if not found.
Use the getOpt() method variant with a fallback parameter instead and set that to -1 fixes the problem.
(Also fixes a missing debug output)
Fixes #419
2016-10-28 00:03:50 +02:00
atkyritsis
45cf4e5396
Removed duplicate if statement.
2016-10-27 18:44:27 +02:00
Andreas Shimokawa
4edfc44d64
Merge branch 'master' into new_GUI
2016-10-26 00:08:05 +02:00
Andreas Shimokawa
d3571d53b2
Mi Band: allow to remove mac address from preferences
...
(this allows to clear an extra mi band from the control center)
Evil hack...
2016-10-26 00:03:54 +02:00
Daniele Gobbetti
ee1cf74a7b
ControlCenterv2: hotfix for referenced textview hidden by previous commit
2016-10-25 18:03:45 +02:00
Daniele Gobbetti
d467b37493
ControlCenterv2: further steps:
...
Close drawer before launching activities (feels sloow).
Implement device deletion (untested).
Add app-management icon, remove tap-connected-device-for-primary-activity, hidden (not removed) text hint.
Use level-list for device icon.
Use the new control center when tapping GB notifications.
Added icons to the legacy control center context menu, perhaps it can be embedded in the card?
2016-10-25 17:49:21 +02:00
Daniele Gobbetti
d93a5be57a
Merge branch 'master' into new_GUI
2016-10-25 17:43:00 +02:00
Daniele Gobbetti
1f77e3e84f
Coordinator: add explicit methods to determine if the device supports app management and which class is responsible for it.
2016-10-25 17:39:11 +02:00
cpfeiffer
d302a0a5c3
Merge branch 'master' into new_GUI
2016-10-24 20:03:24 +02:00
cpfeiffer
a39e3a035c
Move device deletion logic to DeviceCoordinator and subclasses
2016-10-24 20:02:44 +02:00
Daniele Gobbetti
cde09d71bc
Fixed KitKat crashes and changed to RelativeLayout. Using CCv2 as default launcher activity.
...
Added lost-device icon and action, added background to buttons.
Overflow reveal is now animated inside the card.
Bind connect and disconnect actions to device-icon (short press to connect/launch default activity; long press to disconnect).
2016-10-24 17:41:56 +02:00
cpfeiffer
84f36b528a
Merge remote-tracking branch 'origin/master' into new_GUI
2016-10-24 11:32:39 +02:00
cpfeiffer
de46555e37
Mi2: display heart rate result from Debug screen as a toast #323
2016-10-24 00:23:59 +02:00
cpfeiffer
b20a9c9ccc
Some initial hacky support for hr readings (Debug activity only)
...
My Mi2 stopped reporting hr values a while ago though, even on-device.
2016-10-23 23:53:48 +02:00
cpfeiffer
17b70a1b82
Support for more than one alarm #323
...
Smart alarms not supported yet.
2016-10-23 23:05:54 +02:00
cpfeiffer
3a12ffd42d
Mi2: Fix for alarm enablement. Was too late, apparently.
2016-10-23 22:38:57 +02:00
Daniele Gobbetti
c20747226f
Add dark theme
2016-10-21 23:01:10 +02:00
Daniele Gobbetti
00938baf7d
Further refinements:
...
- disconnect by long-pressing device icon (temporary)
- use level-list to show battery level + charging
- remove padding around cards list
- use style colors for action icons (supports dark theme)
- add secondary text to the themes, even though the color is the same
- replace the info icon with three vertical dots
2016-10-21 17:44:36 +02:00
Andreas Shimokawa
68f83d3f33
Merge branch 'master' into new_GUI
2016-10-21 13:21:32 +02:00
Daniele Gobbetti
503bcee7b4
Support record version 13 (firmware 4.2)
2016-10-21 13:07:07 +02:00
Daniele Gobbetti
371f0ecdd0
Use a new GUI for the controlcenter.
...
The existing logic was mostly ported to the new activity, with the exception of device deletion (and all TODOs).
2016-10-21 13:01:30 +02:00
cpfeiffer
ee24443b6a
Make it really clear, that only the first alarm works #323
2016-10-21 01:01:30 +02:00
cpfeiffer
15954d4561
Initial support for alarms (one, atm) #323
...
(repetitinos not tested yet)
2016-10-21 00:50:41 +02:00
cpfeiffer
839da4f06a
Shuffle some logging things around
2016-10-21 00:50:41 +02:00
cpfeiffer
c87d08bf4b
Small refactoring for initial support for Mi2 Alarms #323
2016-10-21 00:50:41 +02:00
Andreas Shimokawa
cc2b22cfc7
prefer BIG_TEXT extra from notification only for email
...
(Some messengers accumulate messages in BIG_TEXT)
2016-10-19 18:38:26 +02:00
Andreas Shimokawa
336ffd5bf7
Extract EXTRA_BIG_TEXT instead of EXTRA_TEXT if available.
...
This makes K9 Mail usable with only using generic notifcations on Android >=5
(It shows the message preview now)
2016-10-18 23:44:00 +02:00
cpfeiffer
4122e0c20c
Add button "Test New Functionality"
2016-10-11 23:35:58 +02:00
Daniele Gobbetti
21fc5c7498
Integrate Daniele's live-sensor-data support
2016-10-11 23:13:40 +02:00
cpfeiffer
713989ef38
Add event "test new function" for the debug screen
2016-10-11 23:06:59 +02:00
cpfeiffer
344f6bcaa0
Use separate AppCompatPreferenceActivity from Android samples
...
(instead of mixing it with our code)
2016-10-11 22:07:56 +02:00
cpfeiffer
363b7cbf28
@Override
2016-10-11 21:47:45 +02:00
cpfeiffer
7c3dc741d2
Send vibration off-commands to Mi2 ( #323 )
...
Far from perfect, but a little better.
2016-10-11 21:38:17 +02:00
cpfeiffer
a559140f67
Fix the previous fix ;-)
2016-10-11 21:35:45 +02:00
cpfeiffer
1fc44034f0
Also use getGenericType() for the "summary" types
2016-10-11 21:28:28 +02:00
cpfeiffer
e7c0afa603
Cleanup onNotification()
2016-10-11 21:18:43 +02:00
cpfeiffer
f1243f52c1
Deactivate some unsupported things for Mi2
2016-10-11 20:23:25 +02:00
Andreas Shimokawa
c65a0a16de
fix mi band try vibration buttons
2016-10-11 17:57:50 +02:00
Andreas Shimokawa
a094f0cc76
Mi Band: for vibration settings, group navication types (email, sms, chat, social network, navigation)
2016-10-11 15:20:55 +02:00
Andreas Shimokawa
cd195a5969
map more apps to notification types (icons and colors on the pebble)
2016-10-11 11:54:52 +02:00
cpfeiffer
92c629c351
Ranem NotificationType.UNDEFINED to UNKNOWN
2016-10-10 23:06:44 +02:00
cpfeiffer
62828e5158
Remove ORIGIN_ notification constants, clean up
...
- MI preferences now use NotificationType.getFixedName() for preference
keys
2016-10-10 22:45:26 +02:00
cpfeiffer
5c8525c5d0
Don't rely on File.canWrite() for directories, closes #406
2016-10-10 21:01:41 +02:00
cpfeiffer
f57fec25f8
Remove the coordinator instance #323
...
For now, always iterate over the available coordinators instead.
Should fix MiBandSupport occasionally being used in place of MiBand2Support.
2016-10-10 20:52:40 +02:00
cpfeiffer
db034a246c
Add 'Try' button to vibration profile preferences, closes #405
2016-10-09 00:10:53 +02:00
cpfeiffer
9e32e7d0d3
Remove some Mi2 testing code, only use Mild Alerts for Mi1 (fow now)
2016-10-08 22:43:41 +02:00
cpfeiffer
c2ff05e849
Make timestamp to mpandroidchart float x-value explicit
2016-10-08 21:27:32 +02:00
cpfeiffer
125c0092cb
Storage and improved way of realtime data (hr, steps so far)
2016-10-08 01:35:58 +02:00
cpfeiffer
5a2ddaaec0
Use x-values instead of x indices for the charts
2016-10-08 01:35:03 +02:00
cpfeiffer
558c9e4664
Fiix visal glitch in weeksteps chart (first and last bar only partly visible)
2016-10-07 21:46:00 +02:00
cpfeiffer
7479c3d420
Whitelist 4.16.4.22 #369
2016-10-05 23:17:02 +02:00
cpfeiffer
713e9426b9
Re-enable UUID_PAIR again, when keeping data on device is configured) #250
...
This should fix data sharing with Mi Fit
2016-10-05 23:01:35 +02:00
cpfeiffer
e5d178b315
Fix crash with mpandroidchart 3.0pre (master)
2016-10-04 23:39:14 +02:00
cpfeiffer
75bca1b924
Update to latest master in mpac and fix labels for sleep chart as well
2016-10-04 00:09:56 +02:00
cpfeiffer
f35f76a42b
Fix extraneous space at the bottom of the week steps chart
2016-10-04 00:04:04 +02:00
cpfeiffer
eccf9164f6
No need to have a separate xLabelsFormatter
2016-10-03 23:48:32 +02:00
cpfeiffer
dee492bc4f
Fixes regarding xlabels -- must set them at the correct point in time
...
(otherwise we get ArrayIndexOutOfBoundsException when the chart
refreshes and the wrong xLabels, potentially with fewer entries are used)
2016-10-03 23:36:04 +02:00
cpfeiffer
827c99f620
Fix weekday charts, closes #403
2016-10-03 22:42:25 +02:00
Daniele Gobbetti
bbecfbeace
Check if the bluetoothReceiver is still valid before unregistering it.
...
Do not set the scan tipe as BT classic if the discovery action has been set by BLE scans.
2016-10-03 22:31:33 +02:00
cpfeiffer
dd590528dc
Add back the x-labels
2016-10-03 21:53:06 +02:00
cpfeiffer
f23ed5ce69
Mi2: declare to always support hr #323
2016-10-03 21:17:58 +02:00
Andreas Shimokawa
ed343778ee
cleanup Debug activity a bit, add Spinner and remove a lot of buttons
2016-10-03 20:51:28 +02:00
cpfeiffer
5bdc7933b3
Somewhat hacky support for Mi2 notification icons #323
2016-10-02 23:04:59 +02:00
cpfeiffer
2a0d97b39a
Improved error handling, display errors when deleting device
2016-09-30 23:07:30 +02:00
cpfeiffer
09502f96c9
AlertDialog.show() is non-modal, so put code into callback. Also added unpairing.
2016-09-30 22:58:28 +02:00
cpfeiffer
2e7fb57172
Display device name to delete, and use different API to delete device
2016-09-30 22:58:28 +02:00
cpfeiffer
b890242c4f
Only refresh when deletion of device was confirmed
2016-09-30 22:58:28 +02:00
Andreas Shimokawa
5e63b7ce04
Vibratissimo: do not show database migration activity
2016-09-30 21:43:44 +02:00
cpfeiffer
f44974c215
Use findDevice() instead of getDevice() when you want to delete it
2016-09-30 21:27:33 +02:00
cpfeiffer
1fd6b59bf8
Fix logic error
2016-09-30 20:19:06 +02:00
cpfeiffer
27c83604d3
Update DeviceManager after deleting a device
2016-09-30 20:17:20 +02:00
Andreas Shimokawa
56d8a49d5b
only disconnect device when confirming delete dialog
2016-09-30 19:20:04 +02:00
Andreas Shimokawa
5c0618d43d
show confirm dialog before actually delete device
...
Also delete device last (after associated data), so that we do not leak if something fails
(#401 )
2016-09-30 19:04:44 +02:00
Daniele Gobbetti
42f622af85
Support record version 12 (firmware 4.1)
2016-09-30 17:28:46 +02:00
Andreas Shimokawa
30d686fa50
support deleting devices and associated data
...
(#401 )
TODO:
- remove device from list after deleting (needs changes to DeviceManager)
- confirmation dialog!!!
2016-09-30 13:41:06 +02:00
cpfeiffer
e3f15f7bd8
Sort devices lexicographically
2016-09-29 22:56:16 +02:00
cpfeiffer
fbfc9ed97f
Workaround for https://github.com/PhilJay/MPAndroidChart/issues/2317
2016-09-29 22:45:17 +02:00
cpfeiffer
f58b1f33c6
Fix parameter order for mpandroidchart 3.0
2016-09-29 22:45:17 +02:00
cpfeiffer
1b5bc23981
Initial port to mpandroidchart 3.0
...
does not quite work yet
2016-09-29 22:45:17 +02:00
cpfeiffer
0a4eefcf11
Use device information from the database for GBDevices
...
fixes offline charts not displaying heartrate for Mi1S
2016-09-29 22:40:16 +02:00
cpfeiffer
8f36712342
WIP: A little more Alert Notification Profile
...
I think we should rather focus on a code generator, though.
2016-09-29 20:32:15 +02:00
Daniele Gobbetti
fabc52fdad
Don't forward group summary notifications to the wearable, they are meant for the android device only
...
Possibly also related to #395
2016-09-27 17:33:10 +02:00
cpfeiffer
dbdd7366ed
Reenable the lollipop LE scanner, but after the plain BT scanner
2016-09-26 22:30:15 +02:00
cpfeiffer
c2f8037f07
WIP: Alert Notification Profile
2016-09-26 22:21:59 +02:00
Andreas Shimokawa
cb232638d4
disable new btle scanning, it does not work for me :(
2016-09-26 22:07:46 +02:00
Andreas Shimokawa
9cccb085c4
Pebble: allow sending acks to pebblekit android apps which always use transaction id -1 (this seems to be okay for pebblekit apps which do not want to use real transaction ids)
2016-09-26 21:51:11 +02:00
Andreas Shimokawa
55a1248e8f
compile fix
2016-09-26 21:43:10 +02:00
cpfeiffer
d4b134a490
WIP regarding heart rate profile
2016-09-26 11:44:57 +02:00
cpfeiffer
0341c7f61f
fix e.printStackTrace() by logging instead
2016-09-26 11:44:08 +02:00
JohnnySun
3259efbd10
When discovery gadget use Lollipop+ device, use new BTLE API instead of old general BT discovery.
...
(cherry picked from commit 53e3fde7c0
)
2016-09-26 11:43:28 +02:00
Andreas Shimokawa
fd03dac5cd
Pebble: try to work around duplicate Telegram messages
...
(#395 )
2016-09-22 09:31:14 +02:00
Andreas Shimokawa
8080734470
Pebble: use telegram icon for telegram messages
...
also use the facebook icon for the official facebook app
(untested because we would never use facebook)
2016-09-21 21:31:23 +02:00
Andreas Shimokawa
c8fb7c5d10
Add icon for Vibratissimo
2016-09-21 19:16:07 +02:00
cpfeiffer
1bd919ccaa
For a start, we can reuse the alert notification from Mi 1 #323
...
So vibration works :-)
2016-09-20 23:41:50 +02:00
cpfeiffer
ccdb843b6e
Improved Mi Band 2 support #323
...
- connecting works and is stable
- firmware and hardware version is displayed
- time is set
2016-09-20 23:12:17 +02:00
Andreas Shimokawa
696611d392
Do not show "your activity" if activity tracking is not supported
2016-09-20 22:02:40 +02:00
Andreas Shimokawa
1f8cfa5a68
Vibratissimo: clear queue when setting vibration
2016-09-20 21:49:27 +02:00
Andreas Shimokawa
6a18d90fee
Vibratissimo: add simple and buggy activity with a slider for vibration control
...
Also includes some fixes and "find your device" support ;)
2016-09-20 20:28:52 +02:00
Andreas Shimokawa
da01a76594
fix BatteryInfoProfile NPE, show battery level for Vibratissimo
2016-09-19 16:37:45 +02:00
Andreas Shimokawa
b2669d6fd7
Match manufacturer string with what we get from BLE device info
2016-09-19 15:00:24 +02:00
Andreas Shimokawa
8ba7bc7353
Add (useless) support for Vibratissimo "massage devices"
...
Don't take this serious. It will make the "massage device" vibrate when a phone call arrives.
It is inspired by the famous lawsuit[1] which has nothing to do with the Vibratissimo device maker.
After reading this I picked up the cheapest ble massage device just to see if we could support it.
And yes, we can.
[1] http://arstechnica.com/wp-content/uploads/2016/09/vibratorsuit.pdf
2016-09-19 12:37:41 +02:00
JohnnySun
53d4681763
Optimize Imports
2016-09-13 23:53:35 +08:00
JohnnySun
19fbe5719c
When miband2 auth success, let application show miband status is connected
2016-09-13 23:50:35 +08:00
JohnnySun
08f2b0eb7c
fix somebug and rewirte the auth process
2016-09-13 18:15:03 +08:00
JohnnySun
90d730bdc8
Added miband2 connection support
2016-09-13 01:28:50 +08:00
cpfeiffer
e555066ffc
Fix firmware2 not being set
2016-09-11 21:15:36 +02:00
Andreas Shimokawa
56c7b6b1cb
fix sleep goal and step goal not being set in database (should fix user attribute table spamming)
2016-09-11 12:35:26 +02:00
Andreas Shimokawa
0cc95bd297
more debug
2016-09-11 12:23:36 +02:00
Andreas Shimokawa
d0f8e308a4
also invalidate fw2 when invalidating fw
2016-09-11 12:23:14 +02:00
Andreas Shimokawa
ec1f539267
revert accidentially commited stuff
2016-09-11 00:38:26 +02:00
Andreas Shimokawa
053b9553bc
correct changelog (pebble health is also affected by userid and deviceid swapping)
2016-09-11 00:36:04 +02:00
Andreas Shimokawa
9c2e40ecc0
Pebble: fix mixup of userId and deviceId in contructor for Misfit and Morpheuz samples
2016-09-11 00:12:37 +02:00
Andreas Shimokawa
e1927733ba
remove special handling for conversations (latest release removed pebble messages)
2016-09-10 23:53:24 +02:00
cpfeiffer
c31049839a
Make DeviceCommunicationServiceTestCase runnable with robolectric
...
- enables the test for travis
- tests operation when not connected
- tests connecting
- tests operation when connected
2016-09-10 11:12:51 +02:00
cpfeiffer
ec0a0db4f6
Make strings translatable in the database management activity
2016-09-06 22:59:08 +02:00
cpfeiffer
d011c437a2
This hopefully fixes the recreation of the old activity db
...
(I cannot reproduce or test it)
2016-09-06 21:54:03 +02:00
cpfeiffer
f2b344349f
Make some primary and foreign keys not-nullable
2016-09-06 00:00:48 +02:00
cpfeiffer
afef50dfab
Hide the "merge old activity database" elements when there is no old db
2016-09-05 23:55:00 +02:00
cpfeiffer
411a90326e
Fix method name
2016-09-04 22:39:35 +02:00
Daniele Gobbetti
5cbedc782d
Pebble health: accept records of firmware 4.0 (nothing changed among the data we parse)
2016-09-04 15:59:19 +02:00
cpfeiffer
8e154ca67d
slightly more testing of Device/Attributes
2016-09-03 21:16:45 +02:00
Andreas Shimokawa
5a49f1215e
Display known devices from db even if Bluetooth is off or unsupported
...
This allows to view activity data without turning bt on or connecting to the pebble emulator via tcp/ip (needs modified manifest for internet access)
2016-09-02 10:54:32 +02:00
cpfeiffer
6f02f9e350
Unit-Test and fix *Attributes sort order
...
When adding e.g. new DeviceAttributes, we cannot simply add them to the
attributes list, because that list is supposed to be ordered. We could
insert it at the beginning, but that would be brittle to changes in the
GBDaoGenerator, so we simply re-fetch them from the db after adding
new attributes.
2016-09-02 00:34:30 +02:00
Daniele Gobbetti
1e6cb67edd
UI refactoring of the DB management activity.
...
Added a method to delete the legacy DB only.
2016-08-31 17:35:28 +02:00
Daniele Gobbetti
6a2043eeb7
Create DB management activity by taking the existing functionalities from the debug activity.
2016-08-31 15:12:26 +02:00
Daniele Gobbetti
84e644fa1a
Add preference for save raw pebble health data.
2016-08-31 14:05:02 +02:00
cpfeiffer
cd535a0a45
Include known devices from the database in CC
...
(as long as device-support is still available)
Fixes non-paired devices not being displayed
2016-08-31 00:33:54 +02:00
cpfeiffer
6340bcff15
Small cleanup
2016-08-31 00:03:20 +02:00
Andreas Shimokawa
93b165ee96
onboarding: use the text area not the button itself for displaying the info text ;)
2016-08-29 00:32:36 +02:00
cpfeiffer
bcb07ccacd
Enable LoggingTest with robolectric
2016-08-29 00:26:29 +02:00
Andreas Shimokawa
07ee860b1c
add information to onboarding activity, make strings translatable
2016-08-29 00:17:40 +02:00
Andreas Shimokawa
c55369747d
launch onboarding (database migration) activity from service when:
...
- device got initialized
- is not yet in the new device db
- an old database exists
2016-08-28 23:49:05 +02:00
cpfeiffer
eb7771c1a9
Support for overlapping ActivityDescriptions + testcases
2016-08-28 00:22:34 +02:00
cpfeiffer
39c7762416
Update the device in case it has changed
2016-08-27 23:25:37 +02:00
cpfeiffer
1a22259b4e
Good practice: use the DAO to insert/update instead of the session
...
(saves a few cycles to look up the correct DAO from the session)
2016-08-27 23:12:48 +02:00
cpfeiffer
840a125c81
Fix compilation
2016-08-27 22:55:00 +02:00
cpfeiffer
8d6e6c8675
Upon request, delete not only the old, but also the new database
2016-08-27 22:51:00 +02:00
cpfeiffer
ae2df2580c
Remove/document deprecated stuff
2016-08-27 22:45:27 +02:00
cpfeiffer
e139840fee
More appropriate user handling: update the user instead of creating new
2016-08-27 22:34:30 +02:00
cpfeiffer
bfaaed7e5c
Detcach samples from the session after querying, to save memory
2016-08-27 21:40:46 +02:00
cpfeiffer
083d752011
Even more documentation/specification
2016-08-27 20:14:42 +02:00
cpfeiffer
ec9e999be1
Lots of documentation
2016-08-27 16:44:47 +02:00
cpfeiffer
ec0db033b1
Avoid potential NPE when subclasses return null for rawKindSampleProperty
2016-08-27 15:36:42 +02:00
cpfeiffer
350e72d534
Initial support for user-configured activity descriptions
...
- for a given user and time span, there may be an ActivityDescription
- with a textual description
- and a list of tags
- every tag has
- a name
- and an optional description
2016-08-27 00:25:45 +02:00
Andreas Shimokawa
5ab40918c0
rename database from test-db5 to Gadgetbridge
2016-08-26 23:48:54 +02:00
Andreas Shimokawa
34aead6c63
remove obsolte stuff
2016-08-26 23:37:17 +02:00
cpfeiffer
69f73467ea
Store not only device type, but also the model in the db
2016-08-26 21:16:01 +02:00
cpfeiffer
c59553c9c9
Rename GBDevice#hardwareVersion to model
...
(e.g. while DeviceType is "PEBBLE" in general, the model
might specify a Pebble Time or Time Steel.
2016-08-26 20:57:59 +02:00
Andreas Shimokawa
4363f110fb
finish onboarding activity after import
2016-08-25 01:27:09 +02:00
Andreas Shimokawa
063d00cc51
only launch onboarding after device is initialized and write device to database if not in yet.
2016-08-25 01:08:43 +02:00
cpfeiffer
49b8b9ebca
More robolectric stuff
...
- guard against multiple GBApplication.onCreate() invocations
- test DBHelper.getDevice() for a start
2016-08-25 00:00:53 +02:00
cpfeiffer
38c4be4379
Remove isEqual() in favor of Objects.equals()
2016-08-24 23:14:25 +02:00
cpfeiffer
bfc0b4faaf
Add robolectric dependency and addd a first EntitiesTest
...
Use KitKat (19) as target sdk since robolectric 3.1.2/sqlite4java
does not understand "WITHOUT ROWID" tables.
Also, add constants for user's gender and document some things.
2016-08-24 22:56:42 +02:00
cpfeiffer
02ac70e2a7
Only dismiss the dialog is the activity is still alive
2016-08-24 22:56:42 +02:00
Andreas Shimokawa
ec4469a87b
Testing with dummy onboarding activity
...
crashes
2016-08-24 20:15:26 +02:00
Daniele Gobbetti
2a2ad20aa3
Store raw data in the DB for later interpretation.
2016-08-21 20:24:02 +02:00
Daniele Gobbetti
b617ba7264
Fix the logic regarding the last sample of a run. Remove the unneded try-catch block and reuse the current DB session instead.
2016-08-21 17:38:07 +02:00
Andreas Shimokawa
0ae9955a6f
Display Toast when trying to import old Misfit data (unsupported)
...
... and update TODO
2016-08-20 21:38:39 +02:00
Daniele Gobbetti
6119f3501a
Import the old samples and map the ranges to overlays for pebble.
2016-08-19 21:09:32 +02:00
Andreas Shimokawa
3fb558c536
db refactoring: add raw data column in health overlay table and make rawType part of the composite key
2016-08-18 22:06:26 +02:00
Daniele Gobbetti
0126b90f20
Store the timestamps as sent by the pebble. Use a strict inequality operator at the end of the period to exclude the last sample.
2016-08-18 21:44:06 +02:00
cpfeiffer
7a16834482
*return* the created device!
2016-08-18 21:29:26 +02:00
cpfeiffer
deeaa87df7
Batch the import of old activity samples to save memory during import
2016-08-18 20:51:15 +02:00
Andreas Shimokawa
ce8af615d1
Merge branch 'composite-key-dao'
2016-08-18 20:35:56 +02:00
cpfeiffer
6e98defe94
Only import old activity data once per device, not for every provider
2016-08-18 20:29:20 +02:00
cpfeiffer
fbf06c1fe3
Separate coordinator and support instances for Mi1 and Mi2 #323
...
+ Some more testing stuff for Mi2
2016-08-17 00:53:16 +02:00
cpfeiffer
26d490ffd6
Store the DeviceType in the Device entity
...
(so that we can later recreate a GBDevice from a Device)
2016-08-17 00:34:19 +02:00
cpfeiffer
9b7e8e06d6
Improved time conversion (0x2A0F)
...
- support for org.bluetooth.characteristic.local_time_information
- support for day of week in 0x2A2B
Unfortunately Mi Band 2 does not support 0x2A0F ;(
2016-08-15 00:40:35 +02:00
cpfeiffer
6843b5aa8f
Add icon for Mi Band 2
2016-08-15 00:39:31 +02:00
cpfeiffer
8766fc5269
Handle MiBand2 device type
2016-08-14 23:25:35 +02:00
cpfeiffer
a38bea892a
Some logging of found devices/uuids
2016-08-14 23:21:09 +02:00
Andreas Shimokawa
4ddbbfdfb0
change db name to test-db5
2016-08-14 22:36:50 +02:00
Andreas Shimokawa
69933c5e92
db refactoring: depend on latest -fyg patched greendao, change column order again (primary keys first), remove index from pebble health overlay also
2016-08-14 22:33:41 +02:00
Andreas Shimokawa
eb962c65f0
work towards composite keys
...
(builds but does not run because greendao generates wrong table creation code - we need to fix that)
2016-08-13 01:24:43 +02:00
cpfeiffer
7c060506cf
Invalidate UserAttributes and DeviceAttributes when new ones are created
2016-08-13 00:52:35 +02:00
cpfeiffer
b3984a409c
Fix checking for up-to-date User and Device attributes
2016-08-13 00:27:38 +02:00
Andreas Shimokawa
68b303246d
db refactoring: change column order for health overlay table also
2016-08-10 23:26:25 +02:00
Andreas Shimokawa
359ed46b06
db refactoring: remove raw activity kind field from pebble health minute data, add a blob column for raw undecoded health minute data.
...
also:
- change column order for all pebble related minute data tables (mandatory stuff first, then custom columns, for easier addition of new columns)
- remove unused code
TODO:
- fix column order in Mi Band table also
2016-08-10 23:06:07 +02:00
Daniele Gobbetti
23c289ce1a
Use the real raw values as received by the device.
...
Some types were also added, even though they are educated guesses.
2016-08-09 20:22:05 +02:00
Daniele Gobbetti
22d0387f76
Fix the comparison order again ,as it was correct originally.
...
Partial revert of 5cfddbb7e9
2016-08-09 20:05:42 +02:00
Daniele Gobbetti
4a7a34f461
Use only the overlay table for storing overlay data.
...
This removes the need to wait to have minute samples to store the overlay data, hence store has been made void instead of boolean.
2016-08-09 18:05:24 +02:00
Daniele Gobbetti
5cfddbb7e9
Use the right properties to build the query and fix the comparison operators.
...
Performance: iterate first on the smaller dataset.
2016-08-09 17:52:07 +02:00
Andreas Shimokawa
fe5ec74ca1
Pebble Health: read overlay data in sample provider and patch in raw kind
...
completely untested
2016-08-09 11:56:05 +02:00
Andreas Shimokawa
5072d6b959
Pebble: try to write to health activity overlay table
2016-08-08 19:16:53 +02:00
Andreas Shimokawa
af58b4600d
whoops
2016-08-07 12:15:40 +02:00
Andreas Shimokawa
c4f83d68cd
refactoring: add generic support for manually filtering samples by acticty kind in AbstractSampleProvider
...
This allows a lot of simplifications for Morpheuz and Misfit
2016-08-07 11:45:09 +02:00
Andreas Shimokawa
6b2565e4c9
DB refactoring: remove activity type from Morpheuz database, determinate it in PebbleMorpheuzSampleProvider instead
2016-08-07 01:47:15 +02:00
Andreas Shimokawa
e05d40dc7e
Pebble: Support for latest version of Morpheuz (4.6)
...
Also a few simplifications and minor fixes.
Morpheuz 3.7 should still work (last version for FW 2.x)
2016-08-06 01:19:38 +02:00
cpfeiffer
a7b9ae5596
whitelist fw 4.15.12.10 #369
2016-08-04 00:05:58 +02:00
Andreas Shimokawa
9520e23439
fix negative steps in Charts with Morpheuz
2016-08-02 00:31:29 +02:00
cpfeiffer
43d7566c0b
some more microsteps #206
2016-08-01 22:18:57 +02:00
Andreas Shimokawa
4fe498efc2
Pebble: delay 100ms after writing a pebble packet to the output steam
...
This fixes a problem on newer firmwares, probably from 3.0 on, where sending an
appmessage packet right after acknowledging a previous incoming appmessage
packet results in our outgoing appmessage packet to be NACKed by the pebble
firmware and not even reaching the app running on the pebble.
2016-07-31 23:49:19 +02:00
Andreas Shimokawa
8ba1ae3f3e
create extra table for Morpheuz, remove more unused stuff
...
Pebble activity tracker now do not share a common base anymore.
TODO: consider creating a custom way of querying activity types like in Misfit. The activity kind stored in the database now is solely based on the intensity, so it is redundant.
(#206 )
2016-07-31 00:06:26 +02:00
Andreas Shimokawa
eabe625c47
rename some classes, remove obsolete ones
2016-07-30 23:22:27 +02:00
cpfeiffer
b43b7948b0
Let GallCallback return boolean values in order to mark an event as "consumed"
...
(to avoid dispatching the event to further listeners (ble profiles)
2016-07-28 23:04:37 +02:00
cpfeiffer
c9a9566dad
Minor fixlet
2016-07-28 22:42:16 +02:00
cpfeiffer
493444a2a0
Remove unused stuff
2016-07-28 22:28:29 +02:00
cpfeiffer
b22111df9d
Fix field ordering of ActivitySample (c'tor!) and improve importer #206
2016-07-28 22:12:20 +02:00
Andreas Shimokawa
8ea29e6e1d
Refactor database / sample access ( #206 )
...
We now have separate tables for each provider's samples but a common interface.
2016-07-27 23:34:13 +02:00
Andreas Shimokawa
dd5c80c2e7
forgot to add file
2016-07-25 22:28:40 +02:00
Andreas Shimokawa
726f767576
work towards a Pebble Misfit raw sample table
2016-07-25 22:19:39 +02:00
cpfeiffer
f5ba09ebe0
Some babysteps towards miband2 support #323
...
Start to implement standard BLE profiles/services.
2016-07-25 00:00:22 +02:00
cpfeiffer
df59ce7b96
Switch light sleep and deep sleep #250
...
Apparently REM is considered deep sleep and NREM is considered light
sleep even though NREM (non-rapid-eye-movement) phase 3 is actually
defined as deep sleep.
2016-07-19 20:43:28 +02:00
cpfeiffer
1997a9b7fa
some more service discovery logging
2016-07-18 23:55:44 +02:00
cpfeiffer
7b26986ab0
Fix for #349
...
We must not use UUID_CHAR_PAIR anymore. This prevents connecting
without being bonded. Connecting when bonded still works.
As without bonding, ControlCenter would not display the device anymore,
we have to re-install the "remember last connected device" in the
preferences thing.
2016-07-15 00:13:49 +02:00
cpfeiffer
ebda3e1535
uncomment some constants
2016-07-14 20:37:20 +02:00
cpfeiffer
367091587f
No more 0x8 in the logs
...
It's the confirmation that setting the latency succeeded.
2016-07-14 20:15:54 +02:00
cpfeiffer
aa00d2f93a
Avoid NPEs when device-name is null
2016-07-12 00:24:23 +02:00
cpfeiffer
76895aa2b1
Register to device name and alias changes and update accordingly
2016-07-11 00:28:15 +02:00
cpfeiffer
80930ce42a
More logging for pairing, destroy pairing activity when bonding failed #349
2016-07-10 00:11:28 +02:00
Andreas Shimokawa
340a0f4a66
Fix coordinators not recognitzing devices by name
...
Do not ask a device candidate for its name , ask the underlying BluetoothDevice
The candidate uses the device alias - not good for matching
2016-07-09 23:10:21 +02:00
cpfeiffer
f54163faeb
centralize quit() functionality in GBApplication
2016-07-08 22:35:52 +02:00
cpfeiffer
9215233344
Whitelist 4.16.3.7 Mi1S firmware
2016-07-08 22:17:19 +02:00
cpfeiffer
8154a887cb
When there are cached services, skip service discovery
2016-07-08 22:15:36 +02:00
Andreas Shimokawa
4de45787c3
Properly acquire network location if last location is not known
...
A toast will be shown if the network location provider is disabled.
Location will be automatically acquired after enabling it.
Fixes #346
2016-07-05 23:56:14 +02:00
cpfeiffer
20d8732d10
In GBDevice.toString(), return the correct state instead of the simplified one
2016-07-05 23:36:21 +02:00
cpfeiffer
154b7d28bb
Let discovery activity also display device aliases
2016-07-05 23:36:21 +02:00
Andreas Shimokawa
903890067d
Settings: properly check the input type flag
...
Fixes a bug where latitude/longitude could be made empty
2016-07-05 23:14:48 +02:00
cpfeiffer
94cc1a883a
Use GBActivity in Pairing Activity for theming
2016-07-05 22:13:11 +02:00
cpfeiffer
3bb1a228ec
Fix crash during device discovery
2016-07-05 21:48:33 +02:00
Andreas Shimokawa
43f95aee9c
fix NPE
2016-07-05 21:47:51 +02:00
cpfeiffer
9ae69eac55
Avoid NPEs when BluetoothDevice.getName() returns null
2016-07-05 21:03:30 +02:00
cpfeiffer
9881b6c281
Do not display paired devices in the discovery activity
2016-07-05 20:46:47 +02:00
cpfeiffer
abeb642972
Don't remember paired Mi device in preferences
...
(this was just a very old workaround for an even older Mi firmware
that couldn't pair)
2016-07-05 20:27:23 +02:00
cpfeiffer
8549031c6f
Only attempt to reconnect when we were previously initialized
2016-07-04 23:38:25 +02:00
cpfeiffer
91d1cea51f
Avoid potential NPEs
2016-07-04 22:40:24 +02:00
Andreas Shimokawa
73b2fc357e
Pebble: Add some Pebble Time 2 support - NOT WORKING
...
Not working because these are expected to use BLE.
The Emulator should work though.
2016-07-04 22:09:56 +02:00
Andreas Shimokawa
a2c2e48719
fix NPE in settings when last known position is null
...
This is not a proper fix, we would have to request a location first.
I just had a last known position when testing before. :/
Issue #346
2016-07-03 21:29:02 +02:00
cpfeiffer
8b24e098ea
Set sampleProvider to avoid NPEs
2016-07-01 00:22:54 +02:00
cpfeiffer
f65afa64d9
log raw activity data from mi band, closes #341
...
Hopefully aids in deciphering activity kinds.
2016-06-28 23:23:29 +02:00
cpfeiffer
f0da25c49b
Fix activity fetching getting stuck when double tapping #333
2016-06-28 23:07:24 +02:00
cpfeiffer
7613b62dab
Improved discovery mechanism #323
...
Does not rely solely on mac addresses anymore. Should help when
mac address randomization is used.
2016-06-28 00:35:50 +02:00
cpfeiffer
76a44ad3a4
more logging to detect problems with external dirs: #343
2016-06-27 22:01:52 +02:00
cpfeiffer
56615de1f0
log FileNotFoundException when checking if directory is writable or not: #343
2016-06-27 21:29:39 +02:00
cpfeiffer
e70a2290c3
sampleproviders now return device specific data #206
2016-06-27 20:43:48 +02:00
Daniele Gobbetti
1430619c30
Implement watchapp configuration presets.
...
This is a quick & dirty solution that may be improved by storing multiple presets in the DB in the future.
2016-06-26 11:55:08 +02:00
cpfeiffer
2fa166e381
Fix potential NPE, setup environment earlier
2016-06-25 18:58:54 +02:00
Andreas Shimokawa
b5cf2b20be
Pebble: In App Manager, enable adding of "Send Text" system app on non-aplite platforms
...
The App is not functional with Gadgetbridge, but since it is visible on the watch when canned messages for call dismissal is enabled, we support sorting it.
2016-06-25 18:08:53 +02:00
Daniele Gobbetti
20e2846d00
Enable localization of appmanager tab strip
2016-06-25 11:27:56 +02:00
Daniele Gobbetti
0f0a7ea925
Add send sms system app (commented because it only appears on Time series Pebbles after setting up SMS call decline)
2016-06-25 11:19:01 +02:00
Andreas Shimokawa
181df7311a
add missing file
2016-06-24 14:57:01 +02:00
Andreas Shimokawa
659165fa4c
Pebble: fix new app manager on 2.x
...
- properly intert apps reported from pebble into the corresponding tab
- disable tracking of installed apps
- disable drag and drop for apps and watchfaces
- ...
2016-06-24 13:39:29 +02:00
Andreas Shimokawa
1de6ee019f
Pebble: fix regression. FW 2.x was completely broken
...
No one noticed, so it seems we can kill 2.x support soon :D
2016-06-24 12:07:44 +02:00
Andreas Shimokawa
b77f3ad3bf
Pebble: Implement call dismissal with canned messages
...
This also moved the canned replies setting to pebble settings
(we will change that if we have another device supporting this)
2016-06-24 10:25:08 +02:00
Andreas Shimokawa
67e5bc0434
Pebble: implement decline call with SMS
...
Based on a proposal by @danielegobbetti, thanks!
This still does not enable the feature since the necessary blobdb is not filled yet
2016-06-21 00:31:53 +02:00
Andreas Shimokawa
72dff2abd2
provide haptic feedback on long press in AppManager
2016-06-20 17:50:19 +02:00
Andreas Shimokawa
1a9c40e790
fix crash when rotating screen in AppManager
2016-06-20 17:42:32 +02:00
cpfeiffer
45fa930ac3
Properly check support for heartrate measurements
2016-06-19 23:22:28 +02:00
cpfeiffer
8772631087
Merge branch 'db-refactoring'
2016-06-19 22:53:09 +02:00
Andreas Shimokawa
4347f134d6
Pebble: add Music, Alarms, Notifications and Watchapps to System Apps
...
They can be ordered too!
2016-06-19 21:48:07 +02:00
cpfeiffer
9772d8af06
Merge remote-tracking branch 'origin/master' into db-refactoring
2016-06-19 21:14:03 +02:00
Andreas Shimokawa
7597ce337d
Pebble: do not move to last position if reinstalling an app, the order seems to be preserved on the pebble
2016-06-19 21:13:47 +02:00
Andreas Shimokawa
24e840e03b
Pebble: remove "move to top" feature completely
2016-06-19 21:06:38 +02:00
Andreas Shimokawa
4b5969ef96
Merge branch 'master' into appmanager-fragments
2016-06-19 12:33:05 +02:00
Andreas Shimokawa
f42899d910
Pebble: on FW 2.x do not send extended music info and do not send playstate
...
I don't think they are supported and I cannot test.
2016-06-19 12:17:19 +02:00
Andreas Shimokawa
64182941d0
Pebble: always hide move to top feature in AppManager, it was not working as expected
...
A proper solution is in appmanager-fragments branch
2016-06-19 11:48:29 +02:00
cpfeiffer
7aa900ce82
Workaround crash in debug activity
...
(when progress dialog is visible and changing orientation)
2016-06-19 00:53:53 +02:00
cpfeiffer
0596c80381
Some migration fixes
...
especially: add unique index on samples using timestamp and device id
(since composite primary keys are not fully supported yet)
2016-06-19 00:40:51 +02:00
cpfeiffer
04c8a17d6e
Merge remote-tracking branch 'origin/master' into db-refactoring
2016-06-19 00:12:02 +02:00
cpfeiffer
5607b1c892
Working merging of activity data, with (indeterminate) progress dialog
2016-06-19 00:10:47 +02:00
cpfeiffer
dc932355b5
Some javadoc re DeviceManager
2016-06-18 23:40:37 +02:00
cpfeiffer
233a6155cc
Add class DeviceManager that provides access to the list of managed devices
...
Basically moved code out of ControlCenter to a separate class. Also provides
change events when the device list has changed, or changes to the device
state have occurred.
2016-06-18 23:35:34 +02:00
Daniele Gobbetti
ad3f7e53b3
Try hard to hide the browser activity from the stack.
2016-06-18 21:08:51 +02:00
Daniele Gobbetti
7263307409
Merge remote-tracking branch 'origin/master' into appmanager-fragments
2016-06-18 19:00:23 +02:00
Daniele Gobbetti
966c3d4811
Various improvements to the configuration page:
...
- localstorage is now cleared at every launch: this prevents some clay configuration pages to send back to the watch a number of keys that were set by other configuration pages
- only execute JS on document ready: this prevents some race conditions
- added dummy getTimelineToken function to Pebble JS object
- corrected (hopefully!) a few logic errors in the JS code (this referenced where it wasn't)
- refactored the steps visualization in JS
- lifecycle changes to the java activity: now the configuration page gets closed as soon as the settings have been sent, and there is only one instance of it
2016-06-18 18:40:57 +02:00
Daniele Gobbetti
fffeb87607
Use constant instead of hardcoded string
2016-06-18 18:33:35 +02:00
cpfeiffer
2890fd6737
Merge remote-tracking branch 'origin/master' into db-refactoring
2016-06-18 01:27:19 +02:00
cpfeiffer
41e6833b2d
Getting closer... db migration almost works.
2016-06-18 01:26:36 +02:00
Andreas Shimokawa
e8f2a0bc9f
Merge branch 'master' into appmanager-fragments
2016-06-17 22:47:17 +02:00
Andreas Shimokawa
79b439da28
Implement App Sorting
...
- grab icon to move apps
- cache can be sorted but nothing will be send to watch
- if sorting apps or watchfaces, order will be sent to watch
- we try to keep track of what is installed and what not
Firmware 2.x is currently not working properly
2016-06-17 22:43:06 +02:00
Daniele Gobbetti
d5586478f3
Support legacy configuration pages #251
...
There are pages that do not honor return_to get parameter. This commit allows the user to enter the returned url manually.
2016-06-17 17:47:13 +02:00
cpfeiffer
13959677af
More WIP for intrgrating old activity db into new one
...
(one demand to keep user in control)
2016-06-17 00:07:50 +02:00
cpfeiffer
d544509b60
Merge remote-tracking branch 'origin/master' into db-refactoring
2016-06-16 21:55:16 +02:00
cpfeiffer
687beee501
Migration work
2016-06-16 21:54:53 +02:00
Andreas Shimokawa
65ac4b364f
Merge branch 'master' into appmanager-fragments
2016-06-16 01:09:35 +02:00
Andreas Shimokawa
9f61458790
Pebble: Allow installation of aplite apps on diorite
2016-06-16 00:59:15 +02:00
Andreas Shimokawa
b79b94809a
initial support for FW 4.0-dp1
2016-06-16 00:24:27 +02:00
Andreas Shimokawa
1c6c78507c
Merge branch 'master' into appmanager-fragments
2016-06-15 22:53:41 +02:00
Andreas Shimokawa
d225743d64
Pebble: some preparations for Pebble 2
2016-06-15 22:53:05 +02:00
Andreas Shimokawa
7937fd6ea7
Merge branch 'master' into appmanager-fragments
2016-06-15 22:36:06 +02:00
Andreas Shimokawa
7690ad3af6
make appmanager usable again
2016-06-15 22:29:30 +02:00
Daniele Gobbetti
4120d686b8
Some key events were not working with the default audio player. Reported in #322
2016-06-15 22:15:21 +02:00
Andreas Shimokawa
b5693bcb45
play around with drag and drop list
2016-06-15 19:56:34 +02:00
cpfeiffer
71d99384c1
Cleanup, remove duplicated code, fix some TODOs
2016-06-14 23:10:35 +02:00
Andreas Shimokawa
4895704f99
add missing file
2016-06-14 22:55:38 +02:00
cpfeiffer
a01507a924
Merge remote-tracking branch 'origin/master' into db-refactoring
2016-06-14 20:14:04 +02:00
cpfeiffer
61957d6cb0
WIP: more db work
2016-06-14 20:13:08 +02:00
Andreas Shimokawa
3418543c31
play around with fragments
2016-06-14 20:04:54 +02:00
Andreas Shimokawa
1d6a697000
playing around with fragments
2016-06-14 15:56:38 +02:00
Andreas Shimokawa
98999993e5
Pebble: In AppManager allow moving apps on the device to the top (context menu)
2016-06-12 01:20:12 +02:00
Andreas Shimokawa
f812fb1b1f
Improvements to MusicPlayback receiver
...
- Also send duration if "duration" extra is present
- If "playing" and "postion" extras are present send a music state update
treat previous state and current state as equal if position delta is <=2 seconds
(Neccessary for some players which update every second - the pebble however counts by itself)
2016-06-11 23:37:03 +02:00
Andreas Shimokawa
2d080cabb2
fix NPE by using Objects.equals()
2016-06-11 22:32:38 +02:00
Andreas Shimokawa
d1a62968f6
Do not send new audio metadata to device if nothing has changed
...
This prevents some players which send a metadata changed intent every second to drain the battery
2016-06-10 23:13:33 +02:00
Andreas Shimokawa
6de002c88b
also try to get track number and number of tracks from notifications
2016-06-10 22:20:55 +02:00
Andreas Shimokawa
66b5a21cf2
also gather music info from notifications when screen is off
2016-06-10 00:03:48 +02:00
Andreas Shimokawa
b0fe4b1519
also gather music info from notifications when screen is off
2016-06-09 23:39:00 +02:00
Andreas Shimokawa
9623449b6e
Merge branch 'master' into feature-weather
2016-06-09 23:15:23 +02:00
Andreas Shimokawa
b76619bb5b
Pebble: implement app reordering in PebbleProtocol
...
Not yet used.
2016-06-09 23:14:40 +02:00
Andreas Shimokawa
fd31bfe56b
Merge pull request #325 from stepardo/steffen/pocketcasts_notifications
...
Set extended music info by dissecting notifications on Android 5.0+
2016-06-09 23:12:17 +02:00
Steffen Liebergeld
c5262869d9
Use names for playstates
...
These names need to be mapped to device specific constants in the
device code.
2016-06-09 20:02:55 +02:00
Steffen Liebergeld
91f374edec
Revert ""duration" parameter in onSetMusicInfo uses microseconds"
...
The decision on granularity of APIs is up to the maintainers.
This reverts commit 204748c518
.
2016-06-09 20:02:55 +02:00
Andreas Shimokawa
088dfda5f4
Pebble: implement app reordering in PebbleProtocol
...
Not yet used.
2016-06-09 19:55:36 +02:00
Steffen Liebergeld
204748c518
"duration" parameter in onSetMusicInfo uses microseconds
...
This is in line with Android, and saves some calculations (and thereby a
tiny little bit of battery life).
2016-06-08 20:43:46 +02:00
Steffen Liebergeld
fb71cdf55b
Add handling for media session notifications
...
Since Android 5.0, media players can have interactive notifications that
reside in the notification area, and offer up to 5 control buttons
(play/pause, next, previous, etc), and information about the currentlu
playing media file.
We use these notifications to get information about the currently
playing media file such as:
- artist
- track (title)
- album
- duration (length of the media file)
- play state (playing, paused, stopped)
- position
- play rate (how fast is the media file being played)
We then send this information up to the device.
On Pebble, the music app will display the title and the artist, as
well as a progress bar showing the current position. The progress bar is
animated when the media file is being played, and if it is being paused,
it displays a pause symbol.
This code will be skipped when GadgetBridge is run on a device with
Android version older than 5.0 (lollipop).
2016-06-08 20:41:43 +02:00
Steffen Liebergeld
73fbaf0a54
Restore previous working of the debug activity
...
The previous commits broke the debug activity's setting of the music
info. This commit restores this functionality.
2016-06-08 20:32:34 +02:00
Steffen Liebergeld
e386d6da43
Add onSetMusicState(MusicStateSpec stateSpec)
...
This commit contains the infrastructure needed for the
NotificationHandler to send music state information to the device. That
is, it introduces a call onSetMusicState(MusicStateSpec stateSpec), that
in turn sets up an intent to the service, which will then call the
encodeSetMusicState() function of the device. encodeSetMusicState is
available for pebble only. There are empty stubs for other devices.
2016-06-08 20:31:48 +02:00
Steffen Liebergeld
1d5c8bae9d
MusicStateSpec: introduce new class describing the music state
...
Contains:
- state
- position
- playRate
- shuffle
- repeat
This is close to what PebbleProtocol currently supports.
2016-06-08 20:22:56 +02:00
Steffen Liebergeld
0470731e4b
PebbleProtocol: Do not call encodeSetMusicState in encodeSetMusicInfo
...
encodeSetMusicState will be accessible on its own. If it was used to set
the music state, a call to encodeSetMusicInfo must not reset this info
arbitrarily.
2016-06-08 20:16:33 +02:00
Andreas Shimokawa
98a0774fc2
Merge branch 'master' into feature-weather
2016-06-07 22:53:40 +02:00
Andreas Shimokawa
32429df7bc
Pebble: allow to enable or disable sync for each activity tracker in settings
...
This is useful if you have multiple phones and do not want to have your data synced to one of them
2016-06-07 22:51:14 +02:00
Steffen Liebergeld
389a143bdb
Set music info for PocketCasts
...
PocketCasts tells about its current media state via notifications. This
patch tries to parse incoming notifications from PocketCasts and if
successful tells the device about it. Currently supported are track and
artist.
2016-06-07 19:34:37 +02:00
cpfeiffer
ae548d0806
WIP: more work, compile again
2016-06-06 23:18:46 +02:00
cpfeiffer
3b87966fe9
Merge branch 'master' into db-refactoring
2016-06-06 22:16:40 +02:00
cpfeiffer
2b6ee41970
Add logging of heartrate values #318
2016-06-05 22:37:42 +02:00
cpfeiffer
ca26e27c60
Basic support for Mi Band 2 #323 , untested
2016-06-05 22:31:07 +02:00
Carsten Pfeiffer
1ed0dc59b2
Merge pull request #321 from pragmaware/mi-band-device-time-offset
...
Add support for shifting the device time by N hours
2016-06-05 22:29:44 +02:00
Andreas Shimokawa
0fb664c141
allow to switch languages at runtime
2016-06-05 14:33:09 +02:00
Andreas Shimokawa
9d3f3c57cd
Pebble: make disabling of appmessage handlers more generic
...
Also disable morpheuz handler if morpheuz is not the chosen activity tracker
.... and bump reported version to 3.12 to match the latest pebble release
2016-06-04 21:50:26 +02:00
Andreas Shimokawa
321707af8f
Pebble: ignore incoming misfit data if misfit is not set as the preferred activty tracker
2016-06-04 21:33:38 +02:00
Daniele Gobbetti
968d15c8d8
Keep the pebble health data on the pebble watch if the activity provider is not pebble Health.
...
This will nack all pebble health datalog messages. As mentioned in #322 , this would allow to use multiple android device without secondary devices "sipping" the health data from the watch.
2016-06-04 18:21:49 +02:00
Szymon Tomasz Stefanek
60fc29cc4d
Add support for shifting the device time by N hours to allow for sleep data gathering of shift workers
2016-06-03 04:43:12 +02:00
cpfeiffer
2e6536555b
Fix previous commit (compile!)
2016-05-31 22:56:22 +02:00
cpfeiffer
9a106667d2
Setting the wear location appears to fail for amazfit #274
...
So as a test, disable that for amazfit. Let's see what happens
next.
2016-05-31 22:33:38 +02:00
Andreas Shimokawa
19d7c03545
Pebble: get rid of log spamming when changing applications (unhandled message)
2016-05-31 14:18:45 +02:00
Andreas Shimokawa
a15d07858e
Sunset/Sunrise: always use UTC timezone for calendar operations
2016-05-31 13:03:15 +02:00
Daniele Gobbetti
42acb8915a
Pass the integer keys to pebble, even if they are not within the known app keys. Requested in #251
2016-05-31 12:24:28 +02:00
Andreas Shimokawa
0231e83ea3
try to fix duplicate/missing surise/sunset pins
2016-05-31 00:07:24 +02:00
Andreas Shimokawa
b71597800a
Pebble: set device to reconnecting state when actively reconnecting
...
It makes it easier to watch connection attempts and the delay between them in control center.
2016-05-29 23:24:16 +02:00
Andreas Shimokawa
33da6c2925
Pebble: make sure that "waiting for reconnect" state is set when initial connect fails
2016-05-29 22:58:25 +02:00
Andreas Shimokawa
4533c80c95
make sure to only reconnect when device is in "waiting for reconnect state"
2016-05-29 21:44:43 +02:00
Andreas Shimokawa
2e8d96e995
add option to enable sunrise/sunset on the timeline
...
Also fix a small type Aquire -> Acquire
2016-05-29 21:29:27 +02:00
Andreas Shimokawa
8970bbe044
display device address in info menu (IP:PORT / MAC)
2016-05-28 11:32:36 +02:00
cpfeiffer
2d49ce505a
Set state to "Waiting for reconnect" for BTLE devices
2016-05-26 23:48:05 +02:00
cpfeiffer
50b7a02ef2
One more attempt at fixing dynamic logging reconfiguration
...
- moved out of GBApplication to class Logging
- the main thing is: when start()ing the FileAppender again, it *must*
- be configured to be non-lazy, otherwise it won't open the stream ever again.
2016-05-26 23:46:21 +02:00
cpfeiffer
6e33c7364a
Remove some commented code
2016-05-26 22:21:58 +02:00
cpfeiffer
c360eb3392
This should fix some connection problems #274
...
Some APIs have become synchronous, it seems, e.g.
connectGatt() -> onConnectionStateChanged() -> discoverServices() -> onServicesDiscovered()
appears to happen synchronously. So connectGatt() will not return before services are discovered!
So now we deal with this situation.
2016-05-26 19:03:38 +02:00
Andreas Shimokawa
b0e0aec465
fix typo
2016-05-26 15:20:27 +02:00
Andreas Shimokawa
88f338b0b9
Reenable our discovery activity for Android 6
...
Now that we request location we are allowed to do a btle scan again
2016-05-26 14:58:36 +02:00
Andreas Shimokawa
7ef005f6a3
Allow getting the network location within pebble settings for sunrise/sunset calculation
...
It is also possible to set the location manually
On Android >=6 the required permission will be requested when pressing the button in settings.
2016-05-26 14:39:54 +02:00
Andreas Shimokawa
fa6100fcec
Merge branch 'master' into feature-sunrise
2016-05-26 13:11:03 +02:00
andre
bf66c25c7f
MusicPlayBackReceiver set track, artist and album to the artist member of MusicSpec.
...
Now the assignment of artist, track and album is correct
2016-05-24 19:33:12 +02:00
Andreas Shimokawa
55a40f7b06
Sunset/sunrise: rotate ids and reuse the id from two days ago for tomorrow, this way we will have sunrise/sunset for 3 days while sending only sunrise/sunset per day
2016-05-24 14:46:22 +02:00
Andreas Shimokawa
e3bee37b81
Change UUID prefix to 0x4767744272646700
2016-05-24 13:20:16 +02:00
Andreas Shimokawa
cb1ec5dccb
Make calendar event type byte instead of int
...
Now the UUID will be constructed like this:
High 64bit 0x4742474200 | type
Low 64bit id
2016-05-24 13:11:57 +02:00
Andreas Shimokawa
c9c9b420dc
Pebble: Send sunrise and sunset events to the pebble every day using AlarmManager
2016-05-24 11:19:57 +02:00
Andreas Shimokawa
ec154c9041
Merge branch 'master' into feature-weather
2016-05-24 11:09:21 +02:00
Andreas Shimokawa
af3cfefec0
Merge branch 'master' into feature-sunrise
2016-05-23 23:52:39 +02:00
Andreas Shimokawa
30c37d3172
Pebble: only remove apps from app list when they got deleted from cache also
2016-05-23 23:46:54 +02:00
Andreas Shimokawa
884c4262cf
update changelog, bump version
...
(also change one German string and remove two newlines :P)
2016-05-23 23:37:57 +02:00
cpfeiffer
4504c5b5a4
Add Activity Description table and order samples
2016-05-23 23:31:22 +02:00
Andreas Shimokawa
24c51deaf9
Pebble: also delete other files from cache when deleting .pbw
2016-05-23 23:15:07 +02:00
Daniele Gobbetti
bef59ae9c0
Parse new version of Pebble health datalog message with tag "84".
...
This message was previously treated as a further "Sleep" message type, with firmware version 3.12 further types were added that are clearly unrelated to sleep (possibly to high-intensity activities like running etc.), hence the related code is now moved to a separate class.
The only decoded records are still sleep-related.
Fixes #312
2016-05-23 21:13:12 +02:00
Andreas Shimokawa
efe5e546fd
Merge branch 'master' into feature-sunrise
2016-05-22 23:36:09 +02:00
Andreas Shimokawa
80cf9fa8fe
Pebble: allow to delete apps from pbw cache
...
Also remove delete entries from all system apps' context menus (not only health)
2016-05-22 23:32:25 +02:00
Andreas Shimokawa
30883ab244
Pebble: In AppManager mark cached apps with (C), installed apps on FW 2.x with (D) and (CD) if both is the case
...
Also always add pebble health as a system app to the list on devices that have it (no need to enable untested features for that anymore)
2016-05-22 22:48:45 +02:00
Andreas Shimokawa
5a20d7ec81
Pebble: no longer clear list of cached apps as soon as the installed watchfaces is received from Firmware 2.x
...
This will result in duplicate entries (first the whole cache, then actually installed watchfaces)
It might already make watchface configuation working on 2.x even though it is dirty
I wish everybody would just update to 3.x *sigh*
2016-05-22 12:30:47 +02:00
Andreas Shimokawa
ca714417ac
Pebble: also copy pbw to cache on Firmware 2.x
...
Neccessary step towards watchface configuration on 2.x
2016-05-22 11:33:14 +02:00
Andreas Shimokawa
6370fdbebe
Merge branch 'master' into feature-sunrise
2016-05-22 01:25:52 +02:00
Andreas Shimokawa
0d7986a5ab
Pebble: rework incoming reconnection support
...
This is now completely generic and should work for other devices also
Fixes #296
2016-05-22 01:19:28 +02:00
cpfeiffer
d5cca84780
Small fixlets
2016-05-20 22:04:30 +02:00
cpfeiffer
0267ddb356
Merge branch 'master' into db-refactoring
2016-05-20 21:49:59 +02:00
cpfeiffer
400ae2bc3b
Fix lint warnings using @TargetApi
2016-05-20 21:49:25 +02:00
cpfeiffer
fa34cf9a17
Merge branch 'master' into db-refactoring
2016-05-20 21:42:30 +02:00
Normano64
31eabe9605
Fixed things based on feedback
2016-05-19 23:58:13 +02:00
Normano64
8a91628322
Detects if Do Not Disturb is in use.
...
Can handle sms and phone calls from priority senders when in Priority
only, but doesn't handle events and reminders.
2016-05-19 16:34:59 +02:00
cpfeiffer
4370be28b6
Remove some imports
2016-05-17 00:51:58 +02:00
cpfeiffer
75703b0dea
Import and Export db are back
2016-05-17 00:51:00 +02:00
cpfeiffer
2d2df64003
Port schema migration to greendao
2016-05-16 23:54:51 +02:00
Andreas Shimokawa
907ad8f27a
correction regarding deletion of old pins
2016-05-16 23:48:18 +02:00
cpfeiffer
4b374e3f7e
Implement changeStoredSamplesType()
2016-05-16 23:45:21 +02:00
Andreas Shimokawa
4bd578ebea
Pebble: send sunrise/sunset to watch for today and tomorrow, also delete previous timeline pins
2016-05-16 23:37:40 +02:00
cpfeiffer
876bdac918
More WIP: remove now unused code, better use of generics
2016-05-16 23:36:54 +02:00
cpfeiffer
40a376bbd0
Merge branch 'master' into db-refactoring
2016-05-16 23:01:16 +02:00
cpfeiffer
3e0bc16741
More WIP, but we're getting closer
...
current state:
- storing samples works (tested only mi band)
- charts work
2016-05-16 23:00:04 +02:00
Andreas Shimokawa
017f650b3f
Pebble: send sunrine and sunset pins to timeline when setting time in debug menu
...
This is just a test and it will leak your timeline data, since we never delete it.
Also this adds some rough infrastructure for calendar events.
2016-05-16 17:30:11 +02:00
Andreas Shimokawa
dafdb1008d
Merge branch 'master' into feature-weather
2016-05-16 14:15:39 +02:00
Andreas Shimokawa
d66f842e9b
Mi Band: Make sure live activity gets stopped when using the back button
2016-05-15 22:24:37 +02:00
cpfeiffer
3a1f91b5a8
Default to low latency mode #287
...
Tested with Mi1A and Mi1S -- works fine and faster than without
low-latency mode.
2016-05-15 00:22:53 +02:00
cpfeiffer
5963843216
Experimental support for #274 (untested yet)
2016-05-15 00:15:31 +02:00
cpfeiffer
6e44ddaee6
WIP: db refactoring
2016-05-15 00:09:34 +02:00
cpfeiffer
8ca821ab8a
More WIP on db refactoring
2016-05-13 23:47:47 +02:00
cpfeiffer
d0c8483d92
More WIP
2016-05-08 23:49:15 +02:00
cpfeiffer
9532fc879f
"Ported" to AbstractSampleProvider
2016-05-08 23:17:05 +02:00
cpfeiffer
21cafa83d8
WIP: some more query work
2016-05-08 22:58:50 +02:00
cpfeiffer
40837996f8
Fix logback initialization, closes #300
2016-05-08 21:39:23 +02:00
cpfeiffer
1a353239c4
Fix log content
2016-05-08 21:38:55 +02:00
Andreas Shimokawa
9b7f2c1e91
try to fix weiredness with pebble reconnects
2016-05-08 17:19:01 +02:00
Andreas Shimokawa
5b21895283
try to get BT alias name by reflection. Useful if you have a lot of Mi Bands
2016-05-07 21:46:20 +02:00
cpfeiffer
cc5941f7eb
Merge branch 'master' into db-refactoring
2016-05-05 10:19:19 +02:00
cpfeiffer
808e12d680
A little more WIP
2016-05-05 10:19:01 +02:00
Andreas Shimokawa
65a95366f4
Mi Band: Allow setting low-latency FW update mode in Mi Band development settings
2016-05-04 13:24:32 +02:00
Andreas Shimokawa
045d5119ff
Do not update summary for checkbox preference
...
Was causing summary to get overwritten by "true" or "false" when changing preferences
2016-05-04 13:07:11 +02:00
Andreas Shimokawa
619a17425f
Mi Band: Display hint about starting Activity Activity instead of App Manager
...
TODO: Fix the string, I have no idea how to properly name the Activity Activity
2016-05-04 12:31:29 +02:00
cpfeiffer
70eaca8883
Further WIP towards greendao:
...
- for now, use a custom version of greendao with the fix 39ac07be550c5f5b6fd265c8870f58015c95e908
- use a superclass for activity sample classes that provides value normalization using SampleProvider
2016-05-01 23:56:14 +02:00
cpfeiffer
4744d8b59e
Some more WIP towards greendao. Note: does not compile atm.
2016-05-01 00:19:15 +02:00
cpfeiffer
b363d08efb
WIP: a little work towards greendao
...
need to think of how to integrate MiBandActivitySample and PebbleActivitySample
into the app. There's GBActivitySample, MiBandSampleProvider, PebbleSampleProvider,
etc.
2016-04-29 23:12:30 +02:00
cpfeiffer
64a6b9a936
Merge branch 'master' into db-refactoring
2016-04-29 22:28:53 +02:00
cpfeiffer
10d7274aa1
Fix testcases (all this should be scrapped and redone with e.g. robolectric)
2016-04-29 21:58:08 +02:00
cpfeiffer
5e02724c4c
Make automatic reconnect after connection loss configurable #293
...
Mi Band: automatically reconnect when the device is back in range
Also: #89
2016-04-28 23:17:13 +02:00
cpfeiffer
eca5d40efe
More javadoc
2016-04-26 00:02:35 +02:00
Andreas Shimokawa
e1551226f6
Reject empty strings in Preferences for numeric inputs
2016-04-25 23:51:58 +02:00
cpfeiffer
47984dba0a
javadoc
2016-04-25 23:45:27 +02:00
cpfeiffer
e35ce978bd
Remove now unused imports + fix one more SharedPreferences usage
2016-04-25 23:43:19 +02:00
cpfeiffer
0704915a88
Move parsing of preference strings to int values to Prefs
2016-04-25 23:39:03 +02:00
cpfeiffer
0c715a2669
Wrap access to SharedPreferences with "Prefs"
...
(to centralize quirk handling)
2016-04-25 23:18:55 +02:00
cpfeiffer
65bd1581bc
Fix receivers, display measured heart rate as a toast again, fixes #292
2016-04-24 18:17:04 +02:00
Andreas Shimokawa
3fefb57fdd
Fix colors in alarm activity for dark theme
2016-04-23 23:24:56 +02:00
cpfeiffer
0427294227
Dynamically enable/disable logging #288
2016-04-18 00:20:40 +02:00
cpfeiffer
a45eacf9b8
WIP: schema update, ... #206
2016-04-17 19:52:51 +02:00
cpfeiffer
97cac282c8
Merge branch 'master' into db-refactoring
2016-04-15 23:05:16 +02:00
cpfeiffer
98d7237ec3
Display a different notification icon, when disconnected
...
Better icons welcome :-)
2016-04-15 22:57:13 +02:00
cpfeiffer
e451e8155c
Remember the map so that we can look up the name later, as well, closes #275
2016-04-14 23:55:40 +02:00
cpfeiffer
a8279faa5b
Merge branch 'master' into db-refactoring
2016-04-14 23:28:00 +02:00
cpfeiffer
a460049a1b
Sort by label and blacklist status, hopefully fast enough #275
2016-04-14 23:23:06 +02:00
Andreas Shimokawa
a9e7cdcaa7
use some colors from the theme for charts activity
2016-04-14 17:41:04 +02:00
Andreas Shimokawa
a9b75a63b3
simply derive AbstractGBFragmentActivity from GBActivity instead of FragmentActivity
...
This fixes the Actionbar being invisible
2016-04-14 17:16:43 +02:00
Andreas Shimokawa
46086f0408
allow dark theme in charts activity.
...
The charts however are still the same
2016-04-14 17:04:49 +02:00
Andreas Shimokawa
faa6a9d906
use android:summary="%s" for ListPreferences
2016-04-14 16:44:44 +02:00
Andreas Shimokawa
f76a1ba16f
allow to switch to dark theme im settings
2016-04-14 16:15:58 +02:00
Andreas Shimokawa
367aced03d
also use theme in settings
2016-04-14 15:34:53 +02:00
Andreas Shimokawa
4bcebca744
Work towards dark theme, remove -v21 specific theme definition
2016-04-14 15:21:25 +02:00
cpfeiffer
b25a47c398
Immediately disable hr reading and activity tracking when leaving the tab #273
2016-04-13 23:36:14 +02:00
cpfeiffer
e87a357bed
Show separate curves when the time between two measurements is too long #273
2016-04-13 21:38:35 +02:00
cpfeiffer
ae5d9089d8
Slight improvement to hr charts #178
2016-04-13 21:21:10 +02:00
cpfeiffer
78bf516897
Disabling sleep measurement for continuous measurement is not necessary
...
Looks like they don't interfere, after all. #178
2016-04-12 23:25:12 +02:00
cpfeiffer
f15a97d994
Initial live heartrate measurement in the live activity tab #178
2016-04-12 23:12:50 +02:00
cpfeiffer
7ab31514dc
Rework charts to completely fix crash in charts activity #277
2016-04-11 23:18:12 +02:00
cpfeiffer
82b4394b40
Ignore generated entities
2016-04-10 21:51:47 +02:00
Lem Dulfo
39cba84ab1
Apply gray images on non-connected devices in the list.
2016-04-10 21:11:52 +02:00
Lem Dulfo
70ed14243f
Remove all getActionBar occurences, temporary fix for overlap
2016-04-10 21:11:52 +02:00
Lem Dulfo
83e6e6b85f
Add background image for empty ControlCenter
2016-04-10 21:11:41 +02:00
Lem Dulfo
80a21f2ec2
Move Discovery functionality to FAB
2016-04-10 21:11:41 +02:00
Lem Dulfo
5a3004cbce
AppCompat and FAB, more Material Design
2016-04-10 21:11:41 +02:00
Lem Dulfo
3ef942b5d3
Do not crash on null BT adapter, allows UI work on emulator.
2016-04-10 21:11:41 +02:00
cpfeiffer
802e9a8235
OK, revert to connectGatt(false), connect often does not work with true #249
2016-04-09 09:53:03 +02:00
cpfeiffer
42dda911e4
Fix crash in charts activity, closes #277
2016-04-08 23:02:50 +02:00
cpfeiffer
1e5dbb6a23
OK, just connect(true) is not sufficient #249
...
(we again get connection problems. Let's try this.)
2016-04-07 20:53:25 +02:00
Daniele Gobbetti
a49335fa67
Allow to change stored samples converting only certain old types
2016-04-07 17:52:15 +02:00
Andreas Shimokawa
b1a93c430d
interrupt thread instead of joining to fix ANR
2016-04-07 00:21:21 +02:00
Andreas Shimokawa
e91b5a07bd
Pebble: change delay between reconects to 1,2,4,8,16,32,64 (max) seconds
2016-04-06 22:55:04 +02:00
Andreas Shimokawa
94cec55a20
Merge pull request #276 from roidelapluie/reconnect
...
Pebble: Smarter reconnection attempts
2016-04-06 22:41:07 +02:00
danielegobbetti
d2af3468f0
Add support for new datalog message added in pebble firmware 3.11
...
This adds support for storing deep sleep data.
2016-04-06 21:48:16 +02:00
Julien Pivotto
e42a041448
Pebble: Smarter reconnection attempts
...
Sleep several seconds between reconnection attempts:
One second after first attempt, two after the second, and so on.
refs #89
2016-04-06 12:37:23 +02:00
Daniele Gobbetti
51def0d497
Add light intensity to the known steps datalog message.
...
Add support for record version 6 introduced with firmware 3.11.
There are more data in each record now, but we still do not know what they mean.
Close #270
2016-04-04 23:33:17 +02:00
Daniele Gobbetti
34600e085e
Fix wrong assignment, needed to properly deal with datalog messages longer than 255
2016-04-04 23:13:57 +02:00
cpfeiffer
403f74e59b
Enable heart rate charts #232
...
(And fix some charting issues)
2016-04-04 23:05:20 +02:00
Andreas Shimokawa
a15b327ff1
Refactoring: get rid of ServiceCommand, use new CallSpec and MusicSpec to pass Call and Music info
2016-04-04 20:08:34 +02:00
cpfeiffer
3e3cf462a6
Attempt to re-enable automatic reconnect (autosensing) #249
...
(now that initializing device works again)
2016-04-03 23:32:15 +02:00
cpfeiffer
59c3970008
Reuse characteristic objects #234
2016-04-03 23:01:58 +02:00
cpfeiffer
b129844169
Small fixes to PR 273 #232
...
- dynamically toggle hr sleep support when preference changes
- check hr support dynaically after device info is available to avoid false error message
2016-04-03 22:38:06 +02:00
cpfeiffer
7cda9f1923
Merge branch 'computerlyrik-heartrate-sleep-support'
2016-04-03 21:46:29 +02:00
cpfeiffer
804a85d31f
Small refactoring of BtLE actions
2016-04-03 21:46:24 +02:00
cpfeiffer
b54fe53cd5
Merge branch 'heartrate-sleep-support' of https://github.com/computerlyrik/Gadgetbridge into computerlyrik-heartrate-sleep-support
2016-04-03 21:02:45 +02:00
Andreas Shimokawa
4389c1cca3
Pebble: wait 4 seconds instead of 2 when notifications/calls trigger reconnection
2016-04-03 18:36:30 +02:00
Andreas Shimokawa
7ddfd35c35
Pebble: auto connect on incoming notification or phone call if connection was lost unxpectedly before
2016-04-03 18:30:20 +02:00
cpfeiffer
a4919789ca
Add some progress to firmware updating #271 #234
...
Also: remove the low latency mode for firmware update,
because my Mi1S simply disconnects then.
Still missing in the view: device disconnects
2016-04-03 00:50:45 +02:00
cpfeiffer
7a224243a3
Try to quit Gadgetbridge by stopping the service
2016-04-03 00:49:54 +02:00
cpfeiffer
2d10c11005
Log the length of the bytes written
2016-04-02 22:35:37 +02:00
cpfeiffer
0e49535966
Fix progress during fw update #234
2016-04-02 22:24:33 +02:00
Christian Fischer
f2de21a664
test if heartrate is supported before writing preferences
2016-04-02 16:11:51 +02:00
Christian Fischer
20aa7d9ad9
add preference to set hartrate sleep detection
2016-04-02 16:09:30 +02:00
Christian Fischer
72258c178c
fix in string represantation conversion
2016-04-02 16:08:36 +02:00
cpfeiffer
ea5c6a0848
Log ignored notifications when updateCoordinator is null
2016-03-31 21:57:36 +02:00
cpfeiffer
6f97b8c1e5
Log the date that we receive from the Mi Band
2016-03-31 21:54:09 +02:00
cpfeiffer
66c1b3f178
Relax check for Mi1S device detection #234
2016-03-31 21:39:51 +02:00
cpfeiffer
4631df67ac
Some more logging + add svg launcher again (somehow it was not added again)
2016-03-30 22:53:08 +02:00
cpfeiffer
ffc006c21c
Fix ordering problem with firmwareInfoSent state variable #234
2016-03-30 21:56:00 +02:00
cpfeiffer
cc7f5406ef
Use low latency transfer mode for fw update #234
2016-03-30 21:48:42 +02:00
cpfeiffer
e931cf47d7
Need to pass '0' as parameter to mi band fw metadata info #234
2016-03-29 22:15:14 +02:00
Andreas Shimokawa
b3590fed35
For simplicity hide some internal states from the user
...
Display connecting->connected instead of connecting->connected->initializing->initialized
2016-03-28 23:56:20 +02:00
Andreas Shimokawa
cbc57b4407
Pebble: Fix stupid bug that made Pebble Health unavailable in App Manager ( Fixes #269 )
2016-03-28 23:46:05 +02:00
cpfeiffer
8815f0d134
Small cleanups and fixlets.
2016-03-28 23:02:22 +02:00
Andreas Shimokawa
6ce63276a3
play around with play states, simplify weired nested switch
2016-03-27 19:50:32 +02:00
Andreas Shimokawa
adfef3db42
Prepare code for more music metadata (duration, track count, current track number)
...
Oh and format code
2016-03-27 17:45:44 +02:00
cpfeiffer
bfcfe82f17
Improve pairing activity: #254
...
- add hint about rebooting phone
- request enabling bluetooth
2016-03-26 20:46:48 +01:00
cpfeiffer
bff5837930
Sort device infos
2016-03-25 23:54:42 +01:00
cpfeiffer
8165751e57
Refactoring to test the double firmware update procedure #234
...
(while performing the same, known to be working firmware update for Mi1A)
Result: double firmware update procedure works on Mi1A.
Also updated FirmwareTest. Perform all tests not only in the test itself,
but also at runtime before doing the actual update.
Further:
- fix setting of firmwareInfoSent state variable, which prevented installation
of the section firmware
- make one string translatable
2016-03-25 23:45:27 +01:00
cpfeiffer
3714ec82da
Extracted String "HR: ", (= Heart Rate Firmware Version)
2016-03-24 22:23:16 +01:00
cpfeiffer
89eddb13b0
Fixed connection issues by reading the date from the band #249
2016-03-24 22:10:23 +01:00
cpfeiffer
e5b0afb916
Enable low latency during activity sync
2016-03-24 21:26:51 +01:00
cpfeiffer
0e435d6d94
Fix for device item not clickable when info items are visible
2016-03-23 23:34:42 +01:00
cpfeiffer
11ac01f0e8
Set low latency mode during initialization #249
...
This appears to fix the initialization getting stuck sometimes, e.g.
after turning on bluetooth and then connecting.
The band incidentally sends 0x8 when it's stuck (won't accept the UUID_PAIR
request).
2016-03-23 22:50:42 +01:00
cpfeiffer
1348bad4d3
Improved log output
2016-03-23 22:17:01 +01:00
cpfeiffer
9d9ef8a6f8
Some cleanup
2016-03-23 22:06:48 +01:00
cpfeiffer
71461642f7
Fix enabling "Write Log File" option ( closes #261 )
2016-03-22 23:07:11 +01:00
Andreas Shimokawa
df3a06ac9b
Reformat code, make getter of @NonNull members also @NonNull
2016-03-22 21:55:15 +01:00
cpfeiffer
b0ec74696d
Give better feedback when a firmware cannot be installed #234
2016-03-22 16:12:27 +01:00
Andreas Shimokawa
767f359319
Launch Android's Bluetooth settings instead of our activiy on Android >= 6.0
...
BLE scanning does not work on Android 6.0 and for the Pebble it does not add any value anyway.
2016-03-22 13:43:01 +01:00
cpfeiffer
424d9cd142
More work on firmware detection, recognition and validation #234
...
Should be as robust as possible now.
2016-03-21 23:42:34 +01:00
danielegobbetti
1933e2bf10
Localize the title of the configuration activity.
...
Auto open local settings (e.g. clay)
2016-03-21 21:19:32 +01:00
cpfeiffer
275839a7f4
last arg of copyOfRange() is index, not length!
2016-03-21 04:18:45 +01:00
cpfeiffer
f7b71c1f96
Add logging to firmware detection #234
2016-03-21 04:17:12 +01:00