1
0
mirror of https://codeberg.org/Freeyourgadget/Gadgetbridge synced 2024-07-08 14:41:36 +02:00
Commit Graph

383 Commits

Author SHA1 Message Date
Andreas Shimokawa
a15d07858e Sunset/Sunrise: always use UTC timezone for calendar operations 2016-05-31 13:03:15 +02:00
Andreas Shimokawa
0231e83ea3 try to fix duplicate/missing surise/sunset pins 2016-05-31 00:07:24 +02:00
Andreas Shimokawa
4533c80c95 make sure to only reconnect when device is in "waiting for reconnect state" 2016-05-29 21:44:43 +02:00
Andreas Shimokawa
2e8d96e995 add option to enable sunrise/sunset on the timeline
Also fix a small type Aquire -> Acquire
2016-05-29 21:29:27 +02:00
Andreas Shimokawa
b0e0aec465 fix typo 2016-05-26 15:20:27 +02:00
Andreas Shimokawa
7ef005f6a3 Allow getting the network location within pebble settings for sunrise/sunset calculation
It is also possible to set the location manually
On Android >=6 the required permission will be requested when pressing the button in settings.
2016-05-26 14:39:54 +02:00
Andreas Shimokawa
fa6100fcec Merge branch 'master' into feature-sunrise 2016-05-26 13:11:03 +02:00
andre
bf66c25c7f MusicPlayBackReceiver set track, artist and album to the artist member of MusicSpec.
Now the assignment of artist, track and album is correct
2016-05-24 19:33:12 +02:00
Andreas Shimokawa
55a40f7b06 Sunset/sunrise: rotate ids and reuse the id from two days ago for tomorrow, this way we will have sunrise/sunset for 3 days while sending only sunrise/sunset per day 2016-05-24 14:46:22 +02:00
Andreas Shimokawa
c9c9b420dc Pebble: Send sunrise and sunset events to the pebble every day using AlarmManager 2016-05-24 11:19:57 +02:00
Andreas Shimokawa
ec154c9041 Merge branch 'master' into feature-weather 2016-05-24 11:09:21 +02:00
Andreas Shimokawa
0d7986a5ab Pebble: rework incoming reconnection support
This is now completely generic and should work for other devices also

Fixes #296
2016-05-22 01:19:28 +02:00
Normano64
31eabe9605 Fixed things based on feedback 2016-05-19 23:58:13 +02:00
Normano64
8a91628322 Detects if Do Not Disturb is in use.
Can handle sms and phone calls from priority senders when in Priority
only, but doesn't handle events and reminders.
2016-05-19 16:34:59 +02:00
Andreas Shimokawa
dafdb1008d Merge branch 'master' into feature-weather 2016-05-16 14:15:39 +02:00
cpfeiffer
e35ce978bd Remove now unused imports + fix one more SharedPreferences usage 2016-04-25 23:43:19 +02:00
cpfeiffer
0c715a2669 Wrap access to SharedPreferences with "Prefs"
(to centralize quirk handling)
2016-04-25 23:18:55 +02:00
Andreas Shimokawa
a15b327ff1 Refactoring: get rid of ServiceCommand, use new CallSpec and MusicSpec to pass Call and Music info 2016-04-04 20:08:34 +02:00
cpfeiffer
7a224243a3 Try to quit Gadgetbridge by stopping the service 2016-04-03 00:49:54 +02:00
Andreas Shimokawa
adfef3db42 Prepare code for more music metadata (duration, track count, current track number)
Oh and format code
2016-03-27 17:45:44 +02:00
cpfeiffer
3f39928df5 Some more cursor-related improvements (closing) 2016-03-08 23:48:31 +01:00
cpfeiffer
9643fa6062 s/moveToFirst/moveToNext 2016-03-08 23:29:42 +01:00
cpfeiffer
87023ebdb3 Don't retrieve the column index again and again in a long loop
Also: fix weird iteration logic
2016-03-08 21:33:12 +01:00
Andreas Shimokawa
ed85fd5011 convert byte and short values related to activity tracking to int
This avoids a lot of problems because java
- does not know unsigned values
- jvm and dalvic do not internally support byte and short
- sqlite does not know them either
2016-02-29 20:54:39 +01:00
Andreas Shimokawa
c436c4c055 Pebble: Fix wrong(previous) contact being displayed on the pebble. Fixes #228 2016-02-20 22:20:02 +01:00
Chris Perelstein
60c7e9f6f6 Fix misspelling in exception notification. 2016-02-01 22:05:49 -05:00
Daniele Gobbetti
c08d49d28e Merge remote-tracking branch 'origin/master' into feature-weather 2016-01-25 13:12:30 +01:00
Andreas Shimokawa
e6f68f445a Ignore generic notification when from SMSSecure when SMS Notifications are on.
This should improve (not fix) #214
Still, we cannot decrypt SMS, so if you use SMSSecure as the default SMS App
you should disable SMS Notifications which enables generic notifications for
SMSSecure which are already decrypted.
2016-01-22 21:30:50 +01:00
danielegobbetti
4bb78722b5 Merge branch 'master' of https://github.com/Freeyourgadget/Gadgetbridge into feature-weather 2016-01-09 18:48:39 +01:00
Andreas Shimokawa
0b53f60b0d Pebble: EXPERIMENTAL support for replying to wearable notifications
Tested with Signal, more could work.
2016-01-09 17:54:17 +01:00
danielegobbetti
c7c723134e Add weather singleton (to store the whole data passed by weather notification).
Add weather info for TimeStylePebble.
Add further fields to the ParcelableWeather class.
Add reverse mapping to ParcelableWeather to get back the original OpenWeatherMap API condition codes.
2016-01-03 18:28:32 +01:00
Andreas Shimokawa
e533fdbaa6 Pebble: actually display current whether in WeatherNeat 2015-12-29 22:10:38 +01:00
Andreas Shimokawa
af9ee90383 actually get weather, seems to be the only way 2015-12-28 20:55:59 +01:00
danielegobbetti
aa1014f51c Added dummy configuration file. This way we get data from the weather notification app.
Problem is we probably ned to add it as library, in order to unmarshal the intent. (That's why I commented the offending code in the receiver)
2015-12-28 17:46:16 +01:00
Andreas Shimokawa
7a1a6dbb2b WeatherNotification: Try to dissect the parcelable extra
This is useless, since we do not get the extra at all (only weather skins)

So... this is a dead end...
2015-12-28 11:33:22 +01:00
Andreas Shimokawa
483c435aa5 Commit old weather experiment - might be worth continuing 2015-12-27 19:44:33 +01:00
Andreas Shimokawa
55989c426c fix double SMS on Android 6.0 2015-12-27 19:22:10 +01:00
danielegobbetti
9acdefd5c1 Treat sony SMS app as such for notifications. 2015-12-19 14:30:35 +01:00
Andreas Shimokawa
53fb63781e WIP: Work towards SMS replies / canned replies
- Implement the PebbleProtocol side (2.x and 3.x)
- Add Preferences for canned replies

This can be tested by enabling untested features in Pebble Settings
It lets you see and select the replies set up in "Canned Repies" on the Pebble
You will get a "NOT IMPLENTED" message on your Pebble.

THIS DOES NOT ACTUALLY DO ANYTHING USEFUL YET.
2015-12-13 12:03:57 +01:00
cpfeiffer
159c187e5e On Quit, remove all pending notifications
At least the notifications from #141 don't stay there forever, then.
2015-12-08 21:48:56 +01:00
Andreas Shimokawa
05a8436f7c Treat notifications from Signal as chat messages 2015-12-06 16:10:46 +01:00
Andreas Shimokawa
17ba49374c Fix copy&paste error in K9Receiver.java, update CHANGELOG.md 2015-11-27 23:45:27 +01:00
Andreas Shimokawa
c768107db8 Catch permission errors in K-9 Mail receiver. Closes #175. 2015-11-27 22:42:47 +01:00
cpfeiffer
bd0716ba58 Some more lint warnings fixed 2015-11-23 23:04:46 +01:00
cpfeiffer
95dc67c98d Back to sdk level 19 (#173) 2015-11-23 22:49:11 +01:00
cpfeiffer
81c2f657bd Some lint fixes 2015-11-23 22:46:12 +01:00
cpfeiffer
4616dcc965 Handle case where notification.extras is not available #174 2015-11-23 22:09:47 +01:00
cpfeiffer
394a0905dc Avoid potential, but very unlikely NPE 2015-11-23 21:59:13 +01:00
Andreas Shimokawa
e3533a2b18 Pebble: Allow muting (blacklisting) Apps from within generic notifications on the watch
Closes #113
2015-09-25 00:53:40 +02:00
Andreas Shimokawa
94ad7f2eb9 set type to SMS when receiving an SMS via generic notification listener 2015-09-24 17:26:40 +02:00
Andreas Shimokawa
1d41f2f8e4 Refactoring
The notfification APIs now use NotificationSpec as their only parameter, which
contains all information (required and optional ones).
We no longer have separate methods and actions for SMS/EMAIL/GENERIC anymore.
The type of notification is important now, not how we received them technically.
2015-09-24 14:45:21 +02:00
Andreas Shimokawa
98b1abedac Allow phone call notifications (also in call display) to be disabled in preferences
This will allow Pebble Dialer to handle these #106
2015-09-20 22:04:53 +02:00
Andreas Shimokawa
041bd1a7f4 Treat Conversations messagess as chat messages, even if arrived via Pebble Intents (which is the default) 2015-09-17 23:08:05 +02:00
Andreas Shimokawa
d8c096d931 Handle SMS/MMS as generic notification if disabled
(could serve as a workaround for #127)
2015-09-16 01:09:03 +02:00
Andreas Shimokawa
6e3c839608 Allow to select preferred music player in preferences, closes #112 2015-09-16 00:53:54 +02:00
Andreas Shimokawa
de74a033f6 Try to support controlling multiple music players
This tries to control the last player that played a (new) song.
It is very limited since we cannot get the source of an intent.
Instead we try to guess from the Action.
The problem is that we cannot support players that use only the action "com.android.music.XXXX" and not something own.
Also try to blindly support getting spotify metadata (for testing #112)
2015-09-15 01:36:33 +02:00
Julien Pivotto
21d59b23c1 Allow QKSMS notifications to be handled as a generic notification if SMS notification mode is set to "never"
This makes it possible to use the "Open on Phone" and individial dismiss feature with QKSMS.
2015-09-13 22:51:05 +02:00
Andreas Shimokawa
a73beceb44 Map a few more apps to NotificationKind 2015-09-13 13:48:21 +02:00
Andreas Shimokawa
4f80844016 noficicaion_kind -> notificationKind 2015-09-13 13:38:11 +02:00
Julien Pivotto
d50a82d495 Pebble: Set application icons for generic notifications
Closes #116.
2015-09-13 00:39:53 +02:00
Andreas Shimokawa
914d1b9625 Make notification blacklist actually working 2015-09-12 00:19:36 +02:00
Andreas Shimokawa
02cc8ba455 Allow K9 Mail notifications to be handled as a generic notification if K9 Mail notification mode is set to "never"
This makes it possible to use the "Open on Phone" and individial dismiss feature with K9 Mail.
2015-09-05 21:32:46 +02:00
cpfeiffer
69b64ed4b6 More logging for time/timezone changes
(trying to find an explanation for #91)
2015-09-05 00:14:09 +02:00
Andreas Shimokawa
e4a72a83ee Ignore QKSMS generic noticfication to prevent duplicate SMS notifications
Closes #108
2015-09-02 22:54:20 +02:00
Andreas Shimokawa
fd789c445e Allow dismissal of individual (generic) notification
Implemented for Pebble and Pebble Time #103
2015-09-01 22:00:11 +02:00
Andreas Shimokawa
46171e4ab8 Some preparations for interactive notifications 2015-08-31 22:27:25 +02:00
Andreas Shimokawa
face7cceea probable close #104 2015-08-31 17:31:32 +02:00
cpfeiffer
a1cb246e27 Add and use a "client interface" for the actions of the service
Previously, the DeviceCommunicationService was invoked directly,
via
Intent intent = new Intent(foo, bar);
intent.setExtra(EXTRA_BAZ, baz);
startService(...);

and this was scattered throughout GadgetBridge.
Now there is a "frontend" available, so that you can call
the service more easily, like
GBApplication.deviceService().connect();

For a start, this client interface (DeviceService) actually
implements the same interface (EventHandler) as the receiving side
(DeviceSupport). This may change in the future.

This will also make testing much easier, because we can use
this client interface to invoke the test service as well.
2015-08-21 01:03:57 +02:00
cpfeiffer
9004a8b0c1 Experimental: ACTION_START is now optional -- ACTION_CONNECT is sufficient 2015-08-06 23:17:41 +02:00
cpfeiffer
f4cb798977 Extract a method for easier reuse if necessary 2015-08-06 22:24:44 +02:00
cpfeiffer
c407ed1a76 Last refactoring for now: BluetoothCommunicationService
- rename to DeviceCommunicationService
- move all bluetooth related bits into separate DeviceSupportFactory
  class
2015-08-04 01:01:14 +02:00
cpfeiffer
7c597b325a Big refactoring: move classes and packages around to get a better structure
- model package contains mostly shared interfaces (UI+service), not named GB*
- impl package contains implementations of those interfaces, named GB*
  the impl classes should not be used by the service (not completely done)
- the service classes should mostly use classes inside the service and deviceevents
  packages (tbd)

Every device now has two packages:
- devices/[device name] for UI related functionality
- service[device name] for lowlevel communication
2015-08-03 23:09:49 +02:00
Andreas Shimokawa
74e1598bf7 Pebble: add experimental and incomplete support for dismissing 2.x notifications
Currently this dismisses all notifications on the Phone-
2015-07-21 01:27:05 +02:00
Andreas Shimokawa
7d86396e30 Support CM 12.1 Music App 2015-06-02 21:48:21 +02:00
Andreas Shimokawa
41207516b1 Move BluetoothChangeReceiver to externalevents 2015-05-30 21:40:42 +02:00
Andreas Shimokawa
c37cacf43d Remove id and index from GBDeviceApp in favor of UUIDs 2015-05-18 20:56:19 +02:00
cpfeiffer
9a26769c3e Search & replace: use slf4j for logging instead of Logcat directly
For a start, use android-logger as backend. Needs a better configuration
but no time right now.

For file-logging we will use logback as slf4j-implementation.
2015-05-12 06:33:37 +02:00
Andreas Shimokawa
1443c8088c Change default for Pebble Notification Intents back to "when screen off"
Conversations accepted our PR, so we will continue to get these intents.
The option cann still turned off, in that case Conversations' notifications are
picked up by our generic notification support.
2015-05-10 15:07:28 +02:00
Andreas Shimokawa
e78c912be3 Only sync time on time/timezone changes if appropriate option is set. 2015-05-10 11:21:16 +02:00
Andreas Shimokawa
6f162c593b Pebble message intent notifications default to "never" now
If these get turned on, Conversations notifications will be handled through Pebble message intents and get filtered out from generic notifcation handling.
2015-05-08 12:50:42 +02:00
Andreas Shimokawa
157deff237 Send current time to device if time/timezone changes. Closes #51. 2015-05-07 23:46:18 +02:00
Andreas Shimokawa
e859ece7c6 Add Support for notifications send to Pebble from 3rd party applications
This enables support for Conversations without using generic notificaion support.
Other applications could also work partly but are untested.

This commit also changes the SettingsActivity to use Comboboxes instead of two
Checkboxes for each notification source.
2015-05-04 01:03:56 +02:00
Andreas Shimokawa
33d86de923 move external receivers to externalevents/ directory 2015-04-20 22:39:35 +02:00