Commit Graph
100 Commits
Author SHA1 Message Date
Daniele Gobbetti bf4ba91cbc Update contributors list.
Also update the self-contained script to use preferred contact name/address.
Fixes #1002
2018-02-26 13:12:46 +01:00
Daniele Gobbetti bf729f41b2 Attempt to make travis work again.
This is only a workaround.

We need to follow https://github.com/travis-ci/travis-ci/issues/8874#issuecomment-350350607
to know when the workaround will not be needed anymore
2018-02-24 15:09:08 +01:00
Daniele Gobbetti daabff1364 Blind attempt to fix crashing configuration page if bgJS is disabled
This might help #643 but I could not reproduce the reported issue
2018-02-23 18:56:05 +01:00
Daniele Gobbetti bd6cfe6000 Adaptive launcher icon background color (forgotten file) 2018-02-20 07:43:09 +01:00
Daniele Gobbetti 461353292b Add adaptive launcher icon
Old launcher icon is still present and used in navigation drawer and
possibly other places. Tested on API 26 and 22.

Closes #1001
2018-02-19 21:39:48 +01:00
Daniele Gobbetti e7a1e1b8c3 Move the connected device to top in control center
What happens in reality is that devices are sorted according to their
connection status first, and then by name. So even if/when we support
multiple device connection, the order should remain sane.

This closes #842.
2018-02-19 18:27:48 +01:00
Daniele Gobbetti 4f246b3ed9 Add Antox to the chat applications.
Notifications coming from the chat.tox.antox package are treated as chat
messages. This closes #910
2018-02-17 17:39:15 +01:00
Daniele Gobbetti 48b89f1bd2 Add Kontalk to the chat applications.
Notifications coming from the org.kontalk package are treated as chat
messages. This closes #994
2018-02-17 17:33:34 +01:00
Daniele Gobbetti e28333fe6e Fixes to make the application run on Oreo
- tested on Oreo 8.1

this commit includes changes cherry picked from 3b6da66643
2018-02-14 21:35:22 +01:00
Daniele Gobbetti 8bd9cd6dff Fix alarm details activity on small screen
Tested using the split screen functionality, this change allows to
scroll if the controls do not fit in the screen. Fixes #935
2018-02-10 23:56:37 +01:00
Daniele Gobbetti 55d9ff0954 Amazfit Cor: Whitelist firmware 1.0.6.76
Reported as working on the issue tracker. Closes #984
2018-02-10 23:36:05 +01:00
Daniele Gobbetti 831303aea8 Fix regression introduced by 737578debc
With many thanks to https://github.com/80tf3262p8 who spotted the error

closes #975
2018-02-10 16:54:20 +01:00
Daniele Gobbetti 8ba56db786 Pebble Webview: refine response mimicking
- check the called domain to return (potentially) different messages
- mimic the online check of TrekVolle watchface
2018-02-10 16:53:35 +01:00
Daniele Gobbetti 81d4ca84a8 Add Polish 'Ł' and 'ł' to transliteration map
closes #987
2018-02-10 16:53:35 +01:00
Daniele Gobbetti a29394b96e Omnijaws Weather: correctly pick todays' min and max temperature 2018-02-10 16:53:35 +01:00
Daniele Gobbetti a74ffca249 Bump version and add changelog 2018-01-20 14:21:08 +01:00
Daniele Gobbetti 888e7fa229 Add support for Omnirom Omnijaws weather service.
This uses a contentobserver and doesn't do anything if it's not available.
Should be feature equivalent to the LineageOS weather receiver.
2017-12-17 22:35:17 +01:00
Daniele Gobbetti 797ad096dc Don't add the fetch activity action button on KK
Fixes #886

Add accent color also on first notification creation #759
2017-11-19 16:39:44 +01:00
Daniele Gobbetti 72f76b60d3 Pebble: send temperatures according to the configured measurement system
Fixes #858
<Without further comments but feel free to insert a long rant about the beauty of the metric system>
2017-11-01 17:58:58 +01:00
Daniele Gobbetti e7839f1c39 Replace the Combined Charts with simple Line Charts
Fixes #808
The datasets had to be separed in order to fill the area below each line with the right color.
2017-11-01 17:35:05 +01:00
Daniele GobbettiandGitHub 8f8b6bdf46 Fix spacing in LICENSE file
Github "automatic license recognizer" wasn't happy with the spacing of the original file.

There is NO CONTENT CHANGE in the file!
2017-11-01 14:58:43 +01:00
Daniele Gobbetti 98b04dd2fc Allow disabling left/right swipe on the graphs
Fixes #860
 Added preference to control this option
 Swiping down will still toggle a sync of the data from the device (if connected) in any case
2017-11-01 09:07:01 +01:00
Daniele Gobbetti 5417c5b5f6 Change notification, and fix the connection logic:
- fix bug that caused the wrong device to be connected sometimes
- add accent color
- add battery status
- remove duplicated title
- allow to connect also before first connection (the last connected device will be used)
2017-10-30 21:37:31 +01:00
Daniele Gobbetti e028b4d223 Pebble: add method to stop the background JS engine without disposing the webview 2017-10-23 20:47:30 +02:00
Daniele Gobbetti 5262c6e3d7 Add quick actions buttons to Gadgetbridge notification #759
- Disconnect button if connected
- Fetch activity if connected and supported by device
- (re)connect the last connected device if disconnected

Known bug: In the last case, if multiple devices were connected, the wrong device gets re-connected
2017-10-20 22:49:53 +02:00
Daniele Gobbetti 2a0388f1c6 Pebble: background webview add allowed domains array 2017-10-13 22:16:01 +02:00
Daniele Gobbetti c4f36d1202 Pebble: background webview, address (most of) review comments 2017-10-13 21:57:22 +02:00
Daniele Gobbetti b0c723b68a Pebble: enable legacy handlers if background JS is disabled 2017-10-10 22:10:26 +02:00
Daniele Gobbetti e99b802a35 Pebble: enable toggle background JS only if experimental features are enabled 2017-10-10 22:00:01 +02:00
Daniele Gobbetti e8ae47de79 Pebble: Make background JS support toggle-able
- Add preference to enable background JS (default disabled)
- Remove the dummy activity used to create the webview, use ExternalPebbleJSActivity instead
- Add layout for legacy configuration, used if background JS is not enabled
- Create the view upon connecting, not when launching the application
- Remove the generic helpers used to find out if any device would need the background webview
- Drastic refactoring of WebviewSingleton moving internal classes in a new package "webview" in service/devices/pebble
2017-09-25 17:12:35 +02:00
Daniele Gobbetti af6271a428 Merge branch 'master' into background-javascript 2017-09-25 11:21:11 +02:00
Daniele Gobbetti c74ea64b70 Pebble: Address the missing remarks of #807
- Separate the getAudioPlayer method
- Replace the println calls with proper LOG statements
2017-09-25 11:09:45 +02:00
Daniele Gobbetti 4d2cc8cfcb Reconcile with changes in italian strings file
Closes #796
2017-09-25 10:59:00 +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
Daniele Gobbetti df2a313168 Webview: make the webview more robust to disconnections 2017-09-03 17:55:00 +02:00
Daniele Gobbetti b8a137226f Webview: Fix sending configuration from watchfaces when background message exchange is going on 2017-09-03 17:10:04 +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
Daniele Gobbetti 612592516b Colored buttons everywhere! 2017-08-27 19:26:27 +02:00
Daniele Gobbetti f7e814431e Use material "history" icon for changelog
fixes #775
2017-08-27 18:48:13 +02:00
Daniele Gobbetti 44d2384aec Use gridlayout from support library
Add gridlayout dependency and use it instead of heavily nested linearlayouts (fragment_live_activity) or to simplify existing grid layouts.
2017-08-27 18:26:49 +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
Daniele Gobbetti 8aebf2d9d5 Null extras bundle should not be processed.
Blind attempt to address #778
2017-08-25 22:01:21 +02:00
Daniele Gobbetti 1017561fb6 Add amazfit to the shorlist of supported vendors/devices (DE). 2017-08-19 21:32:44 +02:00
Daniele Gobbetti 8c23d6ec29 Add amazfit to the shorlist of supported vendors/devices. 2017-08-19 21:31:49 +02:00
Daniele Gobbetti c05e5f15ab Add link to liberapay.com in the main drawer.
/cc #14
2017-08-18 21:51:12 +02:00
Daniele Gobbetti d00b5a5d5d Merge branch 'master' into background-javascript 2017-08-18 12:15:01 +02:00
Daniele Gobbetti c1834ec4ea Fastlane/fdroid test - fallback images
Removed images for Italian, to check if fdroid falls back to the english images
2017-08-18 12:12:59 +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
Daniele Gobbetti 6c38c6bb79 Reword changelog and add versioncode to xml 2017-08-17 18:18:16 +02:00
Daniele Gobbetti 91b1464824 Pebble: use iframe for clay configuration webpages
Replacing the top frame with a data-uri is forbidden since chromium-based-webview version 60.
With this commit we swap the body with an iframe when needed. Old webviews work as usual also with this approach.
No special treatment is needed for local storage as its usage is forbidden in data-uri iframes.

Fixes #758
2017-08-16 21:31:39 +02:00
Daniele Gobbetti 868c0543d5 Pebble: JS proper removal of callbacks (transaction handling) 2017-08-07 18:35:09 +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
Daniele Gobbetti 9cca16cb00 Pebble: JS fix sending configuration data (regression introduced with last commit) 2017-08-02 22:18:11 +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
Daniele Gobbetti 8353026c08 Pebble: call the callbacks, do not return them 2017-07-28 18:38:03 +02:00
Daniele Gobbetti c81a768000 Pebble: call the callbacks, do not return them 2017-07-28 18:34:36 +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
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
Daniele Gobbetti fe3448f6e4 Add icon.png to the fastlane metadata and update License
- added a 512x512px version of the launcher icon to each language directory
- added the fastlane graphic resources to the LICENSE.artwork file
2017-07-23 08:53:10 +02:00
Daniele Gobbetti caf79bb5e6 First test of fastlane metadata files for English, Italian and German:
- added title and feature graphic for all three languages
- added short and full description for English and Italian
- added changelog only for last version and only for English
2017-07-20 13:20:48 +02:00
Daniele GobbettiandGitHub 7e6a41a773 Add a checkbox about content polices
Let the user confirm content polices have been read and understood
2017-07-13 22:26:16 +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
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
Daniele Gobbetti 41ecd4e7d6 Update contributors list.
Also update the self-contained script to ignore the service bots.
2017-04-26 18:15:27 +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
Daniele Gobbetti d570d188a2 Remove the low battery notification if a normal battery level is reported. 2017-04-24 09:53:48 +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
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
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
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
Daniele GobbettiandGitHub 0cf3625304 Remove the Pebble Time 2
Pebble Time 2 is unreleased / untested, better leave it out from the supported devices list
2017-04-17 15:12:25 +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
Daniele Gobbetti a77ff03ca5 Add filter functionality to the app blacklist activity 2017-04-09 00:21:43 +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 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
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
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