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.
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
- 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
- centralize the logic for skipping unwanted notifications
- use *Compat methods wherever possible
Leaving out the problematic parts (persistent IDs and updating)
- 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
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.
- 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
- 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
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.
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.
- 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
- 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
- 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
- allow dragging by using a drag handler (as per best practice)
- remove the custom draglistview dependency
- update to the latest android support libraries
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.
This partially reverts commit ecd2c166c2 because the ConstraintLayout dependency it creates problems in travis and in f-droid build system. #thanksgoogle #wecanthavenicethings :(
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
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.
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.
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
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.
- 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