Commit Graph

2239 Commits

Author SHA1 Message Date
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
Andreas Shimokawa e6928202c5 update changelog 2017-03-11 10:52:42 +01:00
Translation Bot aa60acbf07 update translations from transifex (THANKS) 2017-03-11 10:48:54 +01:00
Daniele Gobbetti c23b938a9a Update changelog 2017-03-11 10:32:04 +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 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 f070ce5ce7 fix copy and paste error in xml changelog 2017-03-08 13:49:28 +01:00
Andreas Shimokawa 410fc0e8dc update changelogs 2017-03-08 12:51:14 +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 0b45fe63f0 Fix up the testcases
Please check if transliteration of Hebrew in LnaguageUtilsTest is
correct. It works just fine if you follow the mapping in LanguageUtils.

Test all transliteration in LanguageUtils only, the test in
DeviceCommunicationServiceTest does not need to be done for every
language.

Also use assertEquals(expected, value) instead of assertTrue(expected.equals(value));
2017-03-05 19:44:31 +01:00
cpfeiffer 09d4f81ce8 Update dependencies 2017-03-05 19:44:16 +01:00
cpfeiffer 94744677c9 Improve discovery hint re Privacy Guard crash 2017-03-05 16:30:31 +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
Andreas Shimokawa 4a3eb6e8de fix obvious copy&paste error in tests 2017-03-04 22:46:41 +01:00
Yaron Shahrabani 858eaa6690 Added Hebrew transliteration and tests (#571) 2017-03-04 22:08:24 +01:00
cpfeiffer 58e2538c4e Discovery: handle the case where a device is already bonded 2017-03-04 16:03:36 +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 72801af0e7 Added Hebrew translation, thanks! 2017-03-03 20:48:13 +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 a0bb0c973c bump compilesdk and support libraries to v25 2017-03-03 14:35:44 +01:00
Andreas Shimokawa 216d35aeee bump version to 0.18.0
(not yet release time)
2017-03-03 14:23:51 +01:00
Andreas Shimokawa 9b2f47d10a Improvements to week sleep chart
Time to close #557
2017-03-03 14:21:59 +01:00
Andreas Shimokawa f97a53a89f bump buildtools version to 25.0.2
25.0.0 was suggested fist - :/
2017-03-03 09:33:57 +01:00
Andreas Shimokawa 03181202d1 update buildtoolsversion to 25.0.0 2017-03-03 09:32:43 +01:00
Andreas Shimokawa 55019579ef update translations from Transifex (thanks!) 2017-03-03 09:31:19 +01:00
Andreas Shimokawa 7a3b2899e7 trial and error 2017-03-03 08:58:11 +01:00
Andreas Shimokawa cbebd845cf rename pt_BR to pt_rBR, fixes #569 2017-03-01 17:29:32 +01:00
cpfeiffer c619f17637 Updated translation from transifex (thanks) 2017-02-28 20:38:48 +01:00
cpfeiffer 21f2fed7e8 Add Portuguese translations from Transifex (thanks!) 2017-02-28 20:32:37 +01:00
Daniele Gobbetti ca73d0c2d4 Add mapping to weather icons 2017-02-27 21:45:10 +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 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
Andreas Shimokawa aac9827e63 remove OnboardingActivity from manifest (its gone) 2017-02-25 17:58:19 +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
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 db58b32b6f Update two german strings 2017-02-20 22:23:44 +01:00
Andreas Shimokawa 24794c46b1 update translations from transifex (THANKS) 2017-02-20 22:20:22 +01:00
Andreas Shimokawa c23e496db6 bump version, update changelog 2017-02-20 22:19:16 +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
Andreas Shimokawa b31dd9b2fa translate some strings to German 2017-02-11 22:52:58 +01:00
Andreas Shimokawa c851f73265 update CHANGELOG 2017-02-11 22:42:39 +01:00
Andreas Shimokawa 3936a7d8a0 update all languages from transifex (THANKS)
French changes merged by a PR are overwritten though this. We didn't have a solution from that - so I will just rely on transifex - sorry.
2017-02-11 22:34:04 +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 083b8db1ec update Japanese and Spanish from Transifex (THANKS!) 2017-02-09 17:20:29 +01:00
Andreas Shimokawa 2b7162055d bump version, add changelog 2017-02-09 17:18:33 +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 3fcf4938b9 Changelog for Music receiver refactoring 2017-02-01 23:10:23 +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
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 f9779d9695 Improve some messages 2017-01-26 23:22:57 +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
Andreas Shimokawa 896eb19b3e Merge pull request #523 from jpbarraca/Makibes-F68
HPlus: Support for Makibes F68
2017-01-26 16:07:26 +01:00
Andreas Shimokawa cfa08d4fc4 fix changelog 2017-01-26 14:38:38 +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 5d3028c123 Mi1+2: Updated changelog 2017-01-26 00:17:50 +01: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 083cbdbfbe update Spanish and Japanese from transifex (THANKS) 2017-01-25 22:17:35 +01:00
Andreas Shimokawa 2b632d8b39 bump version, update changelog 2017-01-25 22:15:21 +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 09539fd9bf Add transliteration test 2017-01-25 00:04:05 +03: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 019da98dfa escape ' in strings.xml 2017-01-22 22:40:24 +01: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 cf45c665a5 bump version update CHANGELOG 2017-01-18 22:17:59 +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 ed020c2a97 Pebble: raise limit of appinfo.json. Some pbws have huge ones :/
Fixes #505
2017-01-18 21:47:15 +01:00
ivanovlev 0094805359 ChangeLog 2017-01-17 23:24:03 +03: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
Andreas Shimokawa f19541c654 update translations from transifex (minus French patient) 2017-01-15 21:43:06 +01: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