Commit Graph

375 Commits (4b4e95bfe0a0b18bd98bc5d31f1c0f23f68757be)

Author SHA1 Message Date
Andreas Shimokawa 486596b1a8 Pebble: support setting the other non-metric system crap for the pebble
(pebble health has to be activated again in app manager after changing the option)

This also moves the fake:// uri handling code from PebbleIoThread to PebbleSupport
2017-09-30 23:27:19 +02:00
Frank Slezak 6ec1555178 Add support for dynamic Pebble background colors (#819)
Pebble: Add support for dynamic Pebble background colors
- Add a couple additional icon types
  - Add Lighthouse (currently unused)
  - Add Transit (public transportation app)
- Tweak the colors on existing icon types
- Implement logic to grab primary (vibrant) color from app logo
  - The color will be used when displaying a notification for an app
    that does not have any configs bound to it.
- Alter NotificationType to support a color (named pebbleColor)
- Alter the Pebble notification poster to listen to the color from
  the notification
- Alter the DeviceCommunicationService to allow for color passthrough.
- Add logic to convert HEX or Integer representations of RGB888 colors
  to Pebble RGB222 format.
- make the package name retrieved lowercase.

Fixes: #815
2017-09-19 13:24:31 +02:00
Daniele Gobbetti 6def9dc07e Pebble: allow to translate quick actions sent to the watch
Fixes #789
2017-09-10 17:57:18 +02:00
Andreas Shimokawa b25febf0e5 Pebble: LOG stacktrace when connection fails 2017-08-12 00:18:15 +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
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
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 a1690700f4 Revert "Refactor notification management"
This reverts commit cede8a0826.
2017-05-10 22:26:02 +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
License Bot 8af9054f2d Update license headers 2017-04-26 00:14:25 +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
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 5717379aec Pebble: change timeline layout to "calendar" for calendaar events and display end time 2017-04-20 10:40:28 +02:00
Andreas Shimokawa 810ba5419b Pebble: reenable battery level reporting, with percentage drom datalog 2017-04-09 17:05:09 +02:00
cpfeiffer 1a88858c6f Fix some findbugs findings 2017-04-09 01:09:43 +02:00
Andreas Shimokawa f658059d20 Pebble: really disable battery reporting 2017-04-08 23:19:07 +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
Andreas Shimokawa e4c7a921ea Pebble: try to improve 70% to 60% battery level accuracy 2017-04-02 00:12:19 +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
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
License Bot e392fbfd80 Add license header to all java files. 2017-03-10 14:53:19 +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
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
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
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 e2b3394900 made caller privacy pebble setting generic 2017-02-07 10:15:23 +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
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
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 fb7db523c7 Pebble: dynamic appKey suppoort for Morpheuz 2017-01-24 11:58:13 +01: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
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
Andreas Shimokawa 26a751977e Pebble: try to improve PebbleKit compatibility
(Might help with glance #506)
2017-01-18 22:10:10 +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