1
0
mirror of https://codeberg.org/Freeyourgadget/Gadgetbridge synced 2024-11-19 08:29:25 +01:00
Commit Graph

2329 Commits

Author SHA1 Message Date
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
63c640f471 Port off of deprecated API 2017-04-21 22:30:29 +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
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
Daniele Gobbetti
d9769be78d Merge branch 'master' into feature-calendarsync 2017-04-17 20:06:44 +02:00
Andreas Shimokawa
60b7a73558 Test: fix other test 2017-04-17 19:36:50 +02:00
Andreas Shimokawa
a936ff0616 Tests: set device state to inizialized before assuming fw version gets written to attributes 2017-04-17 19:19:23 +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
cpfeiffer
c93e97f10f Shave ~600KB off the apk size with the help of a FrankenDAO
We use a patched version of greenDAO's DaoGenerator with a bugfix
and additional support for
- composite primary keys
- WITHOUT_ROWID

We used to use jitpack for including our own greendao dependency into
Gadgetbridge. Since jitpack does not know how to build a real greenDAO
release, it will simply include all artifacts, including ftl templates
etc. which we do not need at runtime at all.

We could fix this by patching greenDAO build, but we actually don't need
to do that, since we can simply use the pristine greenDAO runtime
dependency. It will happily use our custom DAOGenerator-generated
entities.
2017-04-10 21:44:00 +02:00
Andreas Shimokawa
3860c2f9c4 update changelog, bump versions 2017-04-09 22:39:50 +02:00
Translation Bot
a5fdc90b6e update translations from transifex, thanks! 2017-04-09 22:35:46 +02: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
cpfeiffer
bb98910e1c Update gradle to 3.4.1, pmd to 5.5.5 2017-04-08 23:59:00 +02:00
cpfeiffer
39c7c1aae3 Update robolectric to 3.3.2 2017-04-08 23:42:29 +02:00
cpfeiffer
4519f35ff1 Bump up versions of some dependencies 2017-04-08 23:38:12 +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
cpfeiffer
c2f83fa857 Add changelog entries 2017-04-08 22:36:51 +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
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
bd833a37d4 Get rid of the v21 special style
We don't need it anymore since we are extending AppCompat.
2017-04-08 15:45:32 +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
Alberto
de6ce1a3d7 Show all the detailed information in the CardView's overflow
Do not limit the height of the overflow list to 50dp.

It is possible that we will need to limit the maximum allowed height in the future.
2017-04-08 09:03:45 +02:00
Daniele Gobbetti
3004177f44 Update Changelog 2017-04-08 09:00:01 +02:00
Daniele Gobbetti
cad777e4ce Pebble: always return the position after 10 tries. Fixes #643
This is a workaround for bugs in the javascript code of the configured watchfaces, that could fail to handle a returned failure properly and crash the webview / fill its stack.
2017-04-08 08:57:23 +02:00
Daniele Gobbetti
df71d695c3 Pebble: pass an object to the ready event handlers
apparently also the ready event needs an object for some watchfaces. Reported in #643 (not the main report)
2017-04-08 08:50:18 +02:00
Daniele Gobbetti
4dbc255ad5 Pebble: return the current position to the caller of the getCurrentPosition function.
This fixes a bug introduced in d8894d315a that affects also #643.
2017-04-08 08:34:33 +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
Daniele Gobbetti
8e780fa122 Add some space between the tabs and the chart legend. 2017-04-03 21:24:21 +02:00
Daniele Gobbetti
4ab39e2c00 Just applied automatic code formatting to all layout files. NO content change. 2017-04-03 21:09:35 +02:00
Daniele Gobbetti
e556a65ff5 Change layout it to avoid duplicates.
It didn't cause any issue as this layout is not referenced anywhere.
2017-04-03 21:05:27 +02:00
Daniele Gobbetti
0573939c9e Lint: change marginRight to marginEnd 2017-04-03 21:03:31 +02:00
Daniele Gobbetti
96a49f0b7a Fix alignment of action icons and enable proper (vector) scaling. 2017-04-03 18:30:29 +02:00
Daniele Gobbetti
d8894d315a Pebble: In the geolocation override, fail if the position is too old.
The previous logic was wrong as it was calling success every time. Further checks must be added for some watchfaces.
2017-04-02 22:34:22 +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
cpfeiffer
f2dca649a3 Update to mpandroidchart 3.0.2 2017-04-01 23:57:12 +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
Daniele Gobbetti
db4e37d08b Make the drag handle less prominent (grey) 2017-04-01 15:45:30 +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
João Paulo Barraca
ab3f6c0bbf Fixes #629 2017-03-30 14:45:02 +01:00
Andreas Shimokawa
b25bc66485 Allow Datalog handlers to return GBDeviceEvent[] 2017-03-28 09:51:06 +02:00
Andreas Shimokawa
07272e5a68 update changelog, bump version to 0.18.4 2017-03-27 22:15:03 +02:00
Daniele Gobbetti
46501be249 Enlarge the "hit box" of each icon (replace some margin pixels with padding).
Fixes #615
2017-03-27 13:56:03 +02:00
Daniele Gobbetti
1813ec9378 Forbid landscape orientation on AlarmDetails activity.
Landscape mode triggers a bug in android DatePicker on devices with small screens.
Fixes #612
2017-03-26 20:29:57 +02:00