1
0
mirror of https://codeberg.org/Freeyourgadget/Gadgetbridge synced 2025-02-17 21:06:48 +01:00

Merge branch 'master' into master

This commit is contained in:
jfgreffier 2019-03-01 11:33:18 +01:00 committed by GitHub
commit 072dcd28ec
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
472 changed files with 4144 additions and 3451 deletions

View File

@ -1,5 +1,17 @@
### Changelog ### Changelog
#### Version 0.32.3
* Fix a crash in charts due to a broken German translation
* Fix a crash when transliterating emoji
* Amazfit Bip/Cor: Support disconnect notification (must be configured in Bip settings for Cor also for now)
#### Version 0.32.2
* Fix setting alarms under some circumstances
* Support calls notifications for some VoIP apps
* Mi Band 3: Enable fetching sports activities (currently only useful for flushing activities)
* Casio: Improve stability
* Casio: Add explicit support for GB-6900B, GB-X6900B and GB-5600B
#### Version 0.32.1 #### Version 0.32.1
* Fix db deadlock on alarm migration * Fix db deadlock on alarm migration

View File

@ -27,68 +27,90 @@
* Daniele Gobbetti <daniele+github@gobbetti.name> * Daniele Gobbetti <daniele+github@gobbetti.name>
* João Paulo Barraca <jpbarraca@gmail.com> * João Paulo Barraca <jpbarraca@gmail.com>
* Yaron Shahrabani <sh.yaron@gmail.com> * Yaron Shahrabani <sh.yaron@gmail.com>
* Jonas <jonasdcdm@posteo.net> * Allan Nordhøy <epost@anotheragency.no>
* postsorino <postsorino@krutt.org> * postsorino <postsorino@krutt.org>
* Jonas <jonasdcdm@posteo.net>
* Roi Greenberg <roigreenberg@gmail.com>
* Sebastian Kranz <tklightforce@googlemail.com> * Sebastian Kranz <tklightforce@googlemail.com>
* Vadim Kaushan <admin@disasm.info> * Vadim Kaushan <admin@disasm.info>
* Allan Nordhøy <epost@anotheragency.no>
* protomors <protomors@gmail.com> * protomors <protomors@gmail.com>
* José Rebelo <joserebelo@outlook.com> * José Rebelo <joserebelo@outlook.com>
* mesnevi <shams@airpost.net>
* naofum <naofum@gmail.com>
* youzhiran <2668760098@qq.com>
* TaaviE <taavi.eomae+weblate@gmail.com> * TaaviE <taavi.eomae+weblate@gmail.com>
* mueller-ma <mueller-ma@users.noreply.github.com> * mueller-ma <mueller-ma@users.noreply.github.com>
* ivanovlev <ivanovlev@mail.ru> * ivanovlev <ivanovlev@mail.ru>
* naofum <naofum@gmail.com>
* youzhiran <2668760098@qq.com>
* Tijl Schepens <tijl.schepens@hotmail.com> * Tijl Schepens <tijl.schepens@hotmail.com>
* mesnevi <shams@airpost.net> * Hadrián Candela <hadrian.candela@gmail.com>
* Julien Pivotto <roidelapluie@inuits.eu> * Julien Pivotto <roidelapluie@inuits.eu>
* Andreas Böhler <dev@aboehler.at>
* 陈少举 <oshirisu.red@gmail.com>
* Taavi Eomäe <taavi.eomae+github@gmail.com> * Taavi Eomäe <taavi.eomae+github@gmail.com>
* Steffen Liebergeld <perl@gmx.org> * Steffen Liebergeld <perl@gmx.org>
* Lem Dulfo <lemuel.dulfo@gmail.com>
* Hadrián Candela <hadrian.candela@gmail.com>
* Felix Konstantin Maurer <maufl@maufl.de>
* Sergey Trofimov <sarg@sarg.org.ru>
* Robert Barat <rbarat07@gmail.com>
* Pavel Elagin <pelagin@techcd.ru> * Pavel Elagin <pelagin@techcd.ru>
* Lem Dulfo <lemuel.dulfo@gmail.com>
* Matthieu Baerts <matttbe@gmail.com>
* Felix Konstantin Maurer <maufl@maufl.de>
* Utsob Roy <uroybd@gmail.com>
* Sergey Trofimov <sarg@sarg.org.ru>
* Full Name <petr+weblate@linuks.cz>
* Robert Barat <rbarat07@gmail.com>
* JohnnySun <bmy001@gmail.com> * JohnnySun <bmy001@gmail.com>
* Uwe Hermann <uwe@hermann-uwe.de> * Uwe Hermann <uwe@hermann-uwe.de>
* Kranz <Kranz> * Kranz <Kranz>
* Gilles Émilien MOREL <contact@gilles-morel.fr>
* Edoardo Rosa <edoardo.rosa90@gmail.com> * Edoardo Rosa <edoardo.rosa90@gmail.com>
* Bożydar <trening302@o2.pl>
* Alberto <albertsal83@gmail.com> * Alberto <albertsal83@gmail.com>
* Vladislav Serkov <vladserkoff@protonmail.com> * Vladislav Serkov <vladserkoff@protonmail.com>
* Vebryn <vebryn@gmail.com> * Vebryn <vebryn@gmail.com>
* Gilles Émilien MOREL <contact@gilles-morel.fr> * M. Hadi <hhhadddi@yahoo.com>
* Giuseppe Caliendo <giuseppe.caliendo@gmail.com>
* Gergely Peidl <gergely@peidl.net> * Gergely Peidl <gergely@peidl.net>
* Emre <wenigerpluesch@mailbox.org> * Emre <wenigerpluesch@mailbox.org>
* Bożydar <trening302@o2.pl> * Elwood <elwood21@gmail.com>
* AndrewBedscastle <1462953+AndrewBedscastle@users.noreply.github.com>
* abettenburg <a.bettenburg@gmail.com>
* 0nse <0nse@users.noreply.github.com> * 0nse <0nse@users.noreply.github.com>
* Максим Якимчук <xpinovo@gmail.com> * Максим Якимчук <xpinovo@gmail.com>
* Rimas Raguliūnas <rarimas@gmail.com> * Rimas Raguliūnas <rarimas@gmail.com>
* nautilusx <mail.ka@mailbox.org> * nautilusx <mail.ka@mailbox.org>
* Minori Hiraoka (미노리) <minori@mnetwork.co.kr>
* masakoodaa <masakoodaa@protonmail.com> * masakoodaa <masakoodaa@protonmail.com>
* Marius Cornescu <marius_cornescu@yahoo.com> * Marius Cornescu <marius_cornescu@yahoo.com>
* Lukas Veneziano <fs@venezilu.de> * Lukas Veneziano <fs@venezilu.de>
* LL <lu.lecocq@free.fr>
* Kompact <joaorafael123@hotmail.com> * Kompact <joaorafael123@hotmail.com>
* K0L0B0G <github@gorobav.ru> * K0L0B0G <github@gorobav.ru>
* Johann C. Rode <jcrode@ece.ucsb.edu>
* Jasper <jespiex456@hotmail.com> * Jasper <jespiex456@hotmail.com>
* Dikay900 <dark900@xyz.de>
* Christian Fischer <sw-dev@computerlyrik.de> * Christian Fischer <sw-dev@computerlyrik.de>
* c4ndel4 <hadrian.candela@gmail.com>
* 6arms1leg <m.brnsfld@googlemail.com> * 6arms1leg <m.brnsfld@googlemail.com>
* Zhong Jianxin <azuwis@gmail.com> * Zhong Jianxin <azuwis@gmail.com>
* walkjivefly <mark@walkjivefly.com> * walkjivefly <mark@walkjivefly.com>
* WaldiS <admin@sto.ugu.pl>
* Thomas <tutonis@gmail.com> * Thomas <tutonis@gmail.com>
* Ted Stein <me@tedstein.net> * Ted Stein <me@tedstein.net>
* ssantos <ssantos@web.de>
* Sebastian Obrusiewicz <sobrus2@o2.pl>
* Ranved Sticon <the7bulk@gmail.com>
* petronovak <petro.novak@gmail.com> * petronovak <petro.novak@gmail.com>
* Petr Kadlec <mormegil@centrum.cz>
* Pascal <pascal.tannich@gmail.com> * Pascal <pascal.tannich@gmail.com>
* NotAFIle <nota@notafile.com> * NotAFIle <nota@notafile.com>
* Normano64 <per.bergqwist@gmail.com> * Normano64 <per.bergqwist@gmail.com>
* NicoBuntu <nicolas__du95@hotmail.fr> * NicoBuntu <nicolas__du95@hotmail.fr>
* Minori Hiraoka (미노리) <minori@mnetwork.co.kr> * Moarc <aldwulf@gmail.com>
* Michal Novotny <mignov@gmail.com> * Michal Novotny <mignov@gmail.com>
* Martin <ritualz@users.noreply.github.com> * Martin <ritualz@users.noreply.github.com>
* LL <lu.lecocq@free.fr> * Louis-Marie Croisez <louis.croisez@gmail.com>
* Jesús <zaagur@gmail.com> * Jesús <zaagur@gmail.com>
* Irul <wedesignthing@gmail.com>
* HenRy <helge1o1o1@gmail.com>
* exit-failure <hakrala@web.de> * exit-failure <hakrala@web.de>
* Dreamwalker <aristojeff@gmail.com>
* Denis <korden@sky-play.ru> * Denis <korden@sky-play.ru>
* Avamander <Avamander@users.noreply.github.com> * Avamander <Avamander@users.noreply.github.com>
* AnthonyDiGirolamo <anthony.digirolamo@gmail.com> * AnthonyDiGirolamo <anthony.digirolamo@gmail.com>
@ -98,26 +120,32 @@
* Yar <yaroslav.isakov@gmail.com> * Yar <yaroslav.isakov@gmail.com>
* xzovy <caleb@caleb-cooper.net> * xzovy <caleb@caleb-cooper.net>
* xphnx <xphnx@users.noreply.github.com> * xphnx <xphnx@users.noreply.github.com>
* Xavier RENE-CORAIL <xavier.renecorail@gmail.com>
* Vitaliy Shuruta <vshuruta@gmail.com> * Vitaliy Shuruta <vshuruta@gmail.com>
* Vincèn PUJOL <vincen@vincen.org> * Vincèn PUJOL <vincen@vincen.org>
* veecue <veecue@ventos.tk>
* Tomer Rosenfeld <tomerosenfeld007@gmail.com> * Tomer Rosenfeld <tomerosenfeld007@gmail.com>
* Tomas Radej <tradej@redhat.com> * Tomas Radej <tradej@redhat.com>
* tiparega <11555126+tiparega@users.noreply.github.com> * tiparega <11555126+tiparega@users.noreply.github.com>
* Tarik Sekmen <tarik@ilixi.org> * Tarik Sekmen <tarik@ilixi.org>
* Szymon Tomasz Stefanek <s.stefanek@gmail.com> * Szymon Tomasz Stefanek <s.stefanek@gmail.com>
* szilardx <15869670+szilardx@users.noreply.github.com> * szilardx <15869670+szilardx@users.noreply.github.com>
* Stan Gomin <stan@gomin.me>
* SinMan <emilio.galvan@gmail.com>
* Sergio Lopez <slp@sinrega.org> * Sergio Lopez <slp@sinrega.org>
* S Dantas <dantasosteney@gmail.com>
* Sami Alaoui <4ndroidgeek@gmail.com> * Sami Alaoui <4ndroidgeek@gmail.com>
* Roman Plevka <rplevka@redhat.com> * Roman Plevka <rplevka@redhat.com>
* rober <rober@prtl.nodomain.net> * rober <rober@prtl.nodomain.net>
* redking <redking974@gmail.com> * redking <redking974@gmail.com>
* Quallenauge <Hamsi2k@freenet.de> * Quallenauge <Hamsi2k@freenet.de>
* Pavel Motyrev <legioner.r@gmail.com> * Pavel Motyrev <legioner.r@gmail.com>
* Pavel <elagin.pasha@gmail.com>
* Olexandr Nesterenko <olexn@ukr.net> * Olexandr Nesterenko <olexn@ukr.net>
* Nicolò Balzarotti <anothersms@gmail.com> * Nicolò Balzarotti <anothersms@gmail.com>
* Natanael Arndt <arndtn@gmail.com> * Natanael Arndt <arndtn@gmail.com>
* Nabil BENDAFI <nabil@bendafi.fr>
* Molnár Barnabás <nsd4rkn3ss@gmail.com> * Molnár Barnabás <nsd4rkn3ss@gmail.com>
* Moarc <aldwulf@gmail.com>
* Mike van Rossum <mike@vanrossum.net> * Mike van Rossum <mike@vanrossum.net>
* Michal Novak <michal.novak@post.cz> * Michal Novak <michal.novak@post.cz>
* michaelneu <git@michaeln.eu> * michaelneu <git@michaeln.eu>
@ -142,9 +170,14 @@
* kalaee <alex.kalaee@gmail.com> * kalaee <alex.kalaee@gmail.com>
* Joseph Kim <official.jkim@gmail.com> * Joseph Kim <official.jkim@gmail.com>
* jonnsoft <> * jonnsoft <>
* Johannes Tysiak <vinyl@users.sf.net>
* jcrode <46062294+jcrode@users.noreply.github.com>
* Jan Lolek <janlolek@seznam.cz> * Jan Lolek <janlolek@seznam.cz>
* Jakub Jelínek <jakub.jelinek@gmail.com> * Jakub Jelínek <jakub.jelinek@gmail.com>
* Ivan <ivan_tizhanin@mail.ru> * Ivan <ivan_tizhanin@mail.ru>
* Hüseyin Aslan <ha098784@gmail.com>
* hr-sales <hericsonregis@hotmail.com>
* Hirnchirurg <anonymous11@posteo.net>
* Hasan Ammar <ammarh@gmail.com> * Hasan Ammar <ammarh@gmail.com>
* Grzegorz Dznsk <grantmlody96@gmail.com> * Grzegorz Dznsk <grantmlody96@gmail.com>
* Gilles MOREL <contact@gilles-morel.fr> * Gilles MOREL <contact@gilles-morel.fr>
@ -152,7 +185,8 @@
* Gabe Schrecker <gabe@pbrb.co.uk> * Gabe Schrecker <gabe@pbrb.co.uk>
* freezed-or-frozen <freezed.or.frozen@gmail.com> * freezed-or-frozen <freezed.or.frozen@gmail.com>
* Frank Slezak <KazWolfe@users.noreply.github.com> * Frank Slezak <KazWolfe@users.noreply.github.com>
* Dreamwalker <aristojeff@gmail.com> * Francesco Franchina <cescus92@gmail.com>
* Edoardo Tronconi <edoardo.tronconi@gmail.com>
* Dougal19 <4662351+Dougal19@users.noreply.github.com> * Dougal19 <4662351+Dougal19@users.noreply.github.com>
* Davis Mosenkovs <davikovs@gmail.com> * Davis Mosenkovs <davikovs@gmail.com>
* Daniel Hauck <maill@dhauck.eu> * Daniel Hauck <maill@dhauck.eu>
@ -164,14 +198,18 @@
* Carlos Ferreira <calbertoferreira@gmail.com> * Carlos Ferreira <calbertoferreira@gmail.com>
* bucala <marcel.bucala@gmail.com> * bucala <marcel.bucala@gmail.com>
* boun <boun@gmx.de> * boun <boun@gmx.de>
* Benjamin Kahlau <nyhkkbjyek@roanapur.de>
* batataspt@gmail.com <batataspt@gmail.com> * batataspt@gmail.com <batataspt@gmail.com>
* atkyritsis <at.kyritsis@gmail.com> * atkyritsis <at.kyritsis@gmail.com>
* apre <adrienpre+github@gmail.com>
* Aniruddha Adhikary <aniruddha@adhikary.net> * Aniruddha Adhikary <aniruddha@adhikary.net>
* andrewlytvyn <indusfreelancer@gmail.com> * andrewlytvyn <indusfreelancer@gmail.com>
* AndrewH <36428679+andrewheadricke@users.noreply.github.com> * AndrewH <36428679+andrewheadricke@users.noreply.github.com>
* andre <andre.buesgen@yahoo.de> * andre <andre.buesgen@yahoo.de>
* Allen B <28495335+Allen-B1@users.noreply.github.com> * Allen B <28495335+Allen-B1@users.noreply.github.com>
* Alfeu Lucas Guedes dos Santos <alfeugds@gmail.com>
* Alexey Afanasev <avafanasiev@gmail.com> * Alexey Afanasev <avafanasiev@gmail.com>
* Alexandra Sevostyanova <asevostyanova@gmail.com>
And all the Transifex translators, which I cannot automatically list, at the moment. And all the Transifex translators, which I cannot automatically list, at the moment.

View File

@ -1,5 +1,5 @@
apply plugin: 'java' apply plugin: 'java'
//apply plugin: 'maven' apply plugin: 'maven'
apply plugin:'application' apply plugin:'application'
archivesBaseName = 'gadgetbridge-daogenerator' archivesBaseName = 'gadgetbridge-daogenerator'
@ -8,7 +8,7 @@ archivesBaseName = 'gadgetbridge-daogenerator'
dependencies { dependencies {
// compile 'org.greenrobot:greendao-generator:2.2.0' // compile 'org.greenrobot:greendao-generator:2.2.0'
// compile project(":DaoGenerator") // compile project(":DaoGenerator")
compile 'com.github.freeyourgadget:greendao:1998d7cd2d21f662c6044f6ccf3b3a251bbad341' compile 'com.github.Freeyourgadget:greendao:1998d7cd2d21f662c6044f6ccf3b3a251bbad341'
} }
sourceSets { sourceSets {

View File

@ -25,8 +25,8 @@ android {
targetSdkVersion 27 targetSdkVersion 27
// Note: always bump BOTH versionCode and versionName! // Note: always bump BOTH versionCode and versionName!
versionName "0.32.1" versionName "0.32.3"
versionCode 144 versionCode 146
vectorDrawables.useSupportLibrary = true vectorDrawables.useSupportLibrary = true
} }
buildTypes { buildTypes {

View File

@ -20,6 +20,7 @@
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.MEDIA_CONTENT_CONTROL" /> <uses-permission android:name="android.permission.MEDIA_CONTENT_CONTROL" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<uses-permission android:name="cyanogenmod.permission.ACCESS_WEATHER_MANAGER" /> <uses-permission android:name="cyanogenmod.permission.ACCESS_WEATHER_MANAGER" />
<uses-permission android:name="cyanogenmod.permission.READ_WEATHER" /> <uses-permission android:name="cyanogenmod.permission.READ_WEATHER" />

View File

@ -1,5 +1,5 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer, Daniele /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti, Martin, Normano64, Pavel Elagin, Taavi Eomäe Gobbetti, Martin, Matthieu Baerts, Normano64, Pavel Elagin, Taavi Eomäe
This file is part of Gadgetbridge. This file is part of Gadgetbridge.
@ -399,7 +399,7 @@ public class GBApplication extends Application {
private static void loadAppsNotifBlackList() { private static void loadAppsNotifBlackList() {
GB.log("Loading apps_notification_blacklist", GB.INFO, null); GB.log("Loading apps_notification_blacklist", GB.INFO, null);
apps_notification_blacklist = (HashSet<String>) sharedPrefs.getStringSet(GBPrefs.PACKAGE_BLACKLIST, null); apps_notification_blacklist = (HashSet<String>) sharedPrefs.getStringSet(GBPrefs.PACKAGE_BLACKLIST, null); // lgtm [java/abstract-to-concrete-cast]
if (apps_notification_blacklist == null) { if (apps_notification_blacklist == null) {
apps_notification_blacklist = new HashSet<>(); apps_notification_blacklist = new HashSet<>();
} }
@ -451,7 +451,7 @@ public class GBApplication extends Application {
private static void loadAppsPebbleBlackList() { private static void loadAppsPebbleBlackList() {
GB.log("Loading apps_pebblemsg_blacklist", GB.INFO, null); GB.log("Loading apps_pebblemsg_blacklist", GB.INFO, null);
apps_pebblemsg_blacklist = (HashSet<String>) sharedPrefs.getStringSet(GBPrefs.PACKAGE_PEBBLEMSG_BLACKLIST, null); apps_pebblemsg_blacklist = (HashSet<String>) sharedPrefs.getStringSet(GBPrefs.PACKAGE_PEBBLEMSG_BLACKLIST, null); // lgtm [java/abstract-to-concrete-cast]
if (apps_pebblemsg_blacklist == null) { if (apps_pebblemsg_blacklist == null) {
apps_pebblemsg_blacklist = new HashSet<>(); apps_pebblemsg_blacklist = new HashSet<>();
} }
@ -523,7 +523,7 @@ public static String packageNameToPebbleMsgSender(String packageName) {
private static void loadCalendarsBlackList() { private static void loadCalendarsBlackList() {
GB.log("Loading calendars_blacklist", GB.INFO, null); GB.log("Loading calendars_blacklist", GB.INFO, null);
calendars_blacklist = (HashSet<String>) sharedPrefs.getStringSet(GBPrefs.CALENDAR_BLACKLIST, null); calendars_blacklist = (HashSet<String>) sharedPrefs.getStringSet(GBPrefs.CALENDAR_BLACKLIST, null); // lgtm [java/abstract-to-concrete-cast]
if (calendars_blacklist == null) { if (calendars_blacklist == null) {
calendars_blacklist = new HashSet<>(); calendars_blacklist = new HashSet<>();
} }

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2016-2018 Andreas Shimokawa, Carsten Pfeiffer, Taavi Eomäe /* Copyright (C) 2016-2019 Andreas Shimokawa, Carsten Pfeiffer, Taavi Eomäe
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2016-2018 Carsten Pfeiffer, Daniele Gobbetti, Pavel Elagin /* Copyright (C) 2016-2019 Carsten Pfeiffer, Daniele Gobbetti, Pavel Elagin
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Carsten Pfeiffer /* Copyright (C) 2015-2019 Carsten Pfeiffer
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2016-2018 0nse, Carsten Pfeiffer /* Copyright (C) 2016-2019 0nse, Andreas Shimokawa, Carsten Pfeiffer
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Carsten Pfeiffer /* Copyright (C) 2015-2019 Carsten Pfeiffer, Daniele Gobbetti
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,5 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer, Lem Dulfo /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti, Lem Dulfo
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer, Daniele /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti, walkjivefly Gobbetti, walkjivefly
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,5 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2017-2018 Andreas Shimokawa, Carsten Pfeiffer /* Copyright (C) 2017-2019 Andreas Shimokawa, Carsten Pfeiffer
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer, Christian /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer, Christian
Fischer, Daniele Gobbetti, Lem Dulfo Fischer, Daniele Gobbetti, Lem Dulfo
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2017-2018 Andreas Shimokawa, Carsten Pfeiffer, Daniele /* Copyright (C) 2017-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti Gobbetti
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer, Daniele /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti, Lem Dulfo Gobbetti, Lem Dulfo
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer, Lem Dulfo /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer, Lem Dulfo
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,5 +1,5 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer, Daniele /* Copyright (C) 2015-2019 abettenburg, Andreas Shimokawa, Carsten Pfeiffer,
Gobbetti, Lem Dulfo Daniele Gobbetti, Lem Dulfo
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2017-2018 Carsten Pfeiffer, Daniele Gobbetti /* Copyright (C) 2017-2019 Carsten Pfeiffer, Daniele Gobbetti
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer, Daniele /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti, Lem Dulfo Gobbetti, Lem Dulfo
This file is part of Gadgetbridge. This file is part of Gadgetbridge.
@ -115,8 +115,18 @@ public class ConfigureAlarms extends AbstractGBActivity {
DaoSession daoSession = db.getDaoSession(); DaoSession daoSession = db.getDaoSession();
Device device = DBHelper.getDevice(getGbDevice(), daoSession); Device device = DBHelper.getDevice(getGbDevice(), daoSession);
User user = DBHelper.getUser(daoSession); User user = DBHelper.getUser(daoSession);
while (supportedNumAlarms > alarms.size()) { for (int position = 0; position < supportedNumAlarms; position++) {
alarms.add(createDefaultAlarm(device, user, alarms.size())); boolean found = false;
for (Alarm alarm : alarms) {
if (alarm.getPosition() == position) {
found = true;
break;
}
}
if (!found) {
LOG.info("adding missing alarm at position " + position);
alarms.add(position, createDefaultAlarm(device, user, position));
}
} }
} catch (Exception e) { } catch (Exception e) {
LOG.error("Error accessing database", e); LOG.error("Error accessing database", e);

View File

@ -1,5 +1,5 @@
/* Copyright (C) 2016-2018 Andreas Shimokawa, Carsten Pfeiffer, Daniele /* Copyright (C) 2016-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti, Taavi Eomäe Gobbetti, Johannes Tysiak, Taavi Eomäe
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2016-2018 Alberto, Andreas Shimokawa, Carsten Pfeiffer, /* Copyright (C) 2016-2019 Alberto, Andreas Shimokawa, Carsten Pfeiffer,
Daniele Gobbetti Daniele Gobbetti
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer, Daniele /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti, Frank Slezak, ivanovlev, Kasha, Lem Dulfo, Pavel Elagin, Steffen Gobbetti, Frank Slezak, ivanovlev, Kasha, Lem Dulfo, Pavel Elagin, Steffen
Liebergeld Liebergeld
@ -321,10 +321,16 @@ public class DebugActivity extends AbstractGBActivity {
private void shareLog() { private void shareLog() {
String fileName = GBApplication.getLogPath(); String fileName = GBApplication.getLogPath();
if(fileName != null && fileName.length() > 0) { if(fileName != null && fileName.length() > 0) {
File logFile = new File(fileName);
if (!logFile.exists()) {
GB.toast("File does not exist", Toast.LENGTH_LONG, GB.INFO);
return;
}
Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND); Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);
emailIntent.setType("*/*"); emailIntent.setType("*/*");
emailIntent.putExtra(EXTRA_SUBJECT, "Gadgetbridge log file"); emailIntent.putExtra(EXTRA_SUBJECT, "Gadgetbridge log file");
emailIntent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(new File(fileName))); emailIntent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(logFile));
startActivity(Intent.createChooser(emailIntent, "Share File")); startActivity(Intent.createChooser(emailIntent, "Share File"));
} }
} }

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, boun, Carsten Pfeiffer, /* Copyright (C) 2015-2019 Andreas Shimokawa, boun, Carsten Pfeiffer,
Daniele Gobbetti, JohnnySun, jonnsoft, Lem Dulfo, Taavi Eomäe, Uwe Hermann Daniele Gobbetti, JohnnySun, jonnsoft, Lem Dulfo, Taavi Eomäe, Uwe Hermann
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2016-2018 Andreas Shimokawa, Carsten Pfeiffer, Daniele /* Copyright (C) 2016-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti, Lem Dulfo, Uwe Hermann Gobbetti, Lem Dulfo, Uwe Hermann
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,5 @@
/* Copyright (C) 2018 Andreas Shimokawa /* Copyright (C) 2018-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer, Daniele /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti, Lem Dulfo Gobbetti, Lem Dulfo
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer, Lem Dulfo /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer, Lem Dulfo
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2016-2018 Carsten Pfeiffer /* Copyright (C) 2016-2019 Carsten Pfeiffer, Dikay900
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,3 +1,19 @@
/* Copyright (C) 2018-2019 abettenburg, AndrewBedscastle, Daniele Gobbetti
This file is part of Gadgetbridge.
Gadgetbridge is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published
by the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
Gadgetbridge is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */
package nodomain.freeyourgadget.gadgetbridge.activities; package nodomain.freeyourgadget.gadgetbridge.activities;
import android.os.Bundle; import android.os.Bundle;
@ -169,7 +185,7 @@ public class NotificationFilterActivity extends AbstractGBActivity {
notificationFilterEntryDao.deleteByKeyInTx(mFilterEntryIds); notificationFilterEntryDao.deleteByKeyInTx(mFilterEntryIds);
Long filterId = notificationFilterDao.insertOrReplace(mNotificationFilter); long filterId = notificationFilterDao.insertOrReplace(mNotificationFilter);
// only save words if filter mode != none // only save words if filter mode != none
if (mNotificationFilter.getNotificationFilterMode() != NOTIFICATION_FILTER_MODE_NONE) { if (mNotificationFilter.getNotificationFilterMode() != NOTIFICATION_FILTER_MODE_NONE) {

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 0nse, Andreas Shimokawa, Carsten Pfeiffer, /* Copyright (C) 2015-2019 0nse, Andreas Shimokawa, Carsten Pfeiffer,
Daniele Gobbetti, Felix Konstantin Maurer, José Rebelo, Martin, Normano64, Daniele Gobbetti, Felix Konstantin Maurer, José Rebelo, Martin, Normano64,
Pavel Elagin Pavel Elagin
@ -62,8 +62,16 @@ import nodomain.freeyourgadget.gadgetbridge.util.GB;
import nodomain.freeyourgadget.gadgetbridge.util.GBPrefs; import nodomain.freeyourgadget.gadgetbridge.util.GBPrefs;
import nodomain.freeyourgadget.gadgetbridge.util.Prefs; import nodomain.freeyourgadget.gadgetbridge.util.Prefs;
import static nodomain.freeyourgadget.gadgetbridge.devices.huami.HuamiConst.PREF_ACTIVATE_DISPLAY_ON_LIFT;
import static nodomain.freeyourgadget.gadgetbridge.devices.huami.HuamiConst.PREF_DISCONNECT_NOTIFICATION;
import static nodomain.freeyourgadget.gadgetbridge.devices.huami.HuamiConst.PREF_DISCONNECT_NOTIFICATION_END;
import static nodomain.freeyourgadget.gadgetbridge.devices.huami.HuamiConst.PREF_DISCONNECT_NOTIFICATION_START;
import static nodomain.freeyourgadget.gadgetbridge.devices.huami.HuamiConst.PREF_DISPLAY_ON_LIFT_END;
import static nodomain.freeyourgadget.gadgetbridge.devices.huami.HuamiConst.PREF_DISPLAY_ON_LIFT_START;
import static nodomain.freeyourgadget.gadgetbridge.devices.miband.MiBandConst.PREF_MI2_DATEFORMAT; import static nodomain.freeyourgadget.gadgetbridge.devices.miband.MiBandConst.PREF_MI2_DATEFORMAT;
import static nodomain.freeyourgadget.gadgetbridge.devices.miband.MiBandConst.PREF_MI2_DISPLAY_ITEMS; import static nodomain.freeyourgadget.gadgetbridge.devices.miband.MiBandConst.PREF_MI2_DISPLAY_ITEMS;
import static nodomain.freeyourgadget.gadgetbridge.devices.miband.MiBandConst.PREF_MI2_DO_NOT_DISTURB_OFF;
import static nodomain.freeyourgadget.gadgetbridge.devices.miband.MiBandConst.PREF_MI2_DO_NOT_DISTURB_SCHEDULED;
import static nodomain.freeyourgadget.gadgetbridge.devices.miband.MiBandConst.PREF_MI2_ENABLE_TEXT_NOTIFICATIONS; import static nodomain.freeyourgadget.gadgetbridge.devices.miband.MiBandConst.PREF_MI2_ENABLE_TEXT_NOTIFICATIONS;
import static nodomain.freeyourgadget.gadgetbridge.devices.miband.MiBandConst.PREF_MI3_BAND_SCREEN_UNLOCK; import static nodomain.freeyourgadget.gadgetbridge.devices.miband.MiBandConst.PREF_MI3_BAND_SCREEN_UNLOCK;
import static nodomain.freeyourgadget.gadgetbridge.devices.miband.MiBandConst.PREF_MI3_NIGHT_MODE; import static nodomain.freeyourgadget.gadgetbridge.devices.miband.MiBandConst.PREF_MI3_NIGHT_MODE;
@ -496,6 +504,59 @@ public class SettingsActivity extends AbstractSettingsActivity {
} }
}); });
String disconnectNotificationState = prefs.getString(PREF_DISCONNECT_NOTIFICATION, PREF_MI2_DO_NOT_DISTURB_OFF);
boolean disconnectNotificationScheduled = disconnectNotificationState.equals(PREF_MI2_DO_NOT_DISTURB_SCHEDULED);
final Preference disconnectNotificationStart = findPreference(PREF_DISCONNECT_NOTIFICATION_START);
disconnectNotificationStart.setEnabled(disconnectNotificationScheduled);
disconnectNotificationStart.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference, Object newVal) {
invokeLater(new Runnable() {
@Override
public void run() {
GBApplication.deviceService().onSendConfiguration(PREF_DISCONNECT_NOTIFICATION_START);
}
});
return true;
}
});
final Preference disconnectNotificationEnd = findPreference(PREF_DISCONNECT_NOTIFICATION_END);
disconnectNotificationStart.setEnabled(disconnectNotificationScheduled);
disconnectNotificationStart.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference, Object newVal) {
invokeLater(new Runnable() {
@Override
public void run() {
GBApplication.deviceService().onSendConfiguration(PREF_DISCONNECT_NOTIFICATION_END);
}
});
return true;
}
});
final Preference disconnectNotification = findPreference(PREF_DISCONNECT_NOTIFICATION);
disconnectNotification.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
@Override
public boolean onPreferenceChange(Preference preference, Object newVal) {
final boolean scheduled = PREF_MI2_DO_NOT_DISTURB_SCHEDULED.equals(newVal.toString());
disconnectNotificationStart.setEnabled(scheduled);
disconnectNotificationEnd.setEnabled(scheduled);
invokeLater(new Runnable() {
@Override
public void run() {
GBApplication.deviceService().onSendConfiguration(PREF_DISCONNECT_NOTIFICATION);
}
});
return true;
}
});
// Get all receivers of Media Buttons // Get all receivers of Media Buttons
Intent mediaButtonIntent = new Intent(Intent.ACTION_MEDIA_BUTTON); Intent mediaButtonIntent = new Intent(Intent.ACTION_MEDIA_BUTTON);

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2016-2018 Andreas Shimokawa, Carsten Pfeiffer /* Copyright (C) 2016-2019 Andreas Shimokawa, Carsten Pfeiffer
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer, Daniele /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti, Konrad Iturbe, Lem Dulfo Gobbetti, Konrad Iturbe, Lem Dulfo
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2016-2018 Andreas Shimokawa, Carsten Pfeiffer, Daniele /* Copyright (C) 2016-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti Gobbetti
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2016-2018 Andreas Shimokawa /* Copyright (C) 2016-2019 Andreas Shimokawa
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2016-2018 Andreas Shimokawa, Daniele Gobbetti /* Copyright (C) 2016-2019 Andreas Shimokawa, Daniele Gobbetti
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2016-2018 Andreas Shimokawa /* Copyright (C) 2016-2019 Andreas Shimokawa
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,5 +1,5 @@
/* Copyright (C) 2015-2018 0nse, Andreas Shimokawa, Carsten Pfeiffer, /* Copyright (C) 2015-2019 0nse, Andreas Shimokawa, Carsten Pfeiffer,
Daniele Gobbetti, walkjivefly Daniele Gobbetti, Dikay900, Pavel Elagin, walkjivefly
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,5 +1,5 @@
/* Copyright (C) 2015-2018 0nse, Alberto, Andreas Shimokawa, Carsten Pfeiffer, /* Copyright (C) 2015-2019 0nse, Alberto, Andreas Shimokawa, Carsten Pfeiffer,
Daniele Gobbetti Daniele Gobbetti, Pavel Elagin
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer, Daniele /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti, Pavel Elagin, Vebryn Gobbetti, Pavel Elagin, Vebryn
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,5 +1,5 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer, Daniele /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti, Pavel Elagin Gobbetti, Dikay900, Pavel Elagin
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer, Daniele /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti, Vebryn Gobbetti, Vebryn
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2016-2018 Carsten Pfeiffer /* Copyright (C) 2016-2019 Carsten Pfeiffer
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,5 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti, Dikay900, Pavel, Pavel Elagin
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Carsten Pfeiffer /* Copyright (C) 2015-2019 Carsten Pfeiffer
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,5 +1,5 @@
/* Copyright (C) 2015-2018 0nse, Andreas Shimokawa, Carsten Pfeiffer, /* Copyright (C) 2015-2019 0nse, Andreas Shimokawa, Carsten Pfeiffer,
Daniele Gobbetti, Pavel Elagin Daniele Gobbetti, Dikay900, Pavel Elagin
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 0nse, Andreas Shimokawa, Carsten Pfeiffer, /* Copyright (C) 2015-2019 0nse, Andreas Shimokawa, Carsten Pfeiffer,
Daniele Gobbetti, Vebryn Daniele Gobbetti, Vebryn
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2016-2018 Carsten Pfeiffer /* Copyright (C) 2016-2019 Carsten Pfeiffer
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2016-2018 Carsten Pfeiffer /* Copyright (C) 2016-2019 Carsten Pfeiffer
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2017-2018 Andreas Shimokawa, Carsten Pfeiffer, Pavel Elagin /* Copyright (C) 2017-2019 Andreas Shimokawa, Carsten Pfeiffer, Pavel Elagin
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,5 +1,5 @@
/* Copyright (C) 2015-2018 0nse, Andreas Shimokawa, Carsten Pfeiffer, /* Copyright (C) 2015-2019 0nse, Andreas Shimokawa, Carsten Pfeiffer,
Daniele Gobbetti Daniele Gobbetti, Pavel Elagin
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,5 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2017-2018 Carsten Pfeiffer, Daniele Gobbetti /* Copyright (C) 2017-2019 Carsten Pfeiffer, Daniele Gobbetti
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,5 @@
/* Copyright (C) 2017-2018 Carsten Pfeiffer, Daniele Gobbetti /* Copyright (C) 2017-2019 abettenburg, AndrewBedscastle, Carsten Pfeiffer,
Daniele Gobbetti
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer, Daniele /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti Gobbetti
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer, Daniele /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti, José Rebelo, Lem Dulfo, maxirnilian Gobbetti, José Rebelo, Lem Dulfo, maxirnilian
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer, Daniele /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti Gobbetti
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,5 @@
/* Copyright (C) 2016-2018 Andreas Shimokawa, Carsten Pfeiffer /* Copyright (C) 2016-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer, Daniele /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti, JohnnySun Gobbetti, JohnnySun
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer, Daniele /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti, Felix Konstantin Maurer, JohnnySun Gobbetti, Felix Konstantin Maurer, JohnnySun
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2016-2018 Andreas Shimokawa, Carsten Pfeiffer /* Copyright (C) 2016-2019 Andreas Shimokawa, Carsten Pfeiffer
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2018 Carsten Pfeiffer, Felix Konstantin Maurer /* Copyright (C) 2018-2019 Carsten Pfeiffer, Felix Konstantin Maurer
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2016-2018 Andreas Shimokawa /* Copyright (C) 2016-2019 Andreas Shimokawa
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2016-2018 Andreas Shimokawa /* Copyright (C) 2016-2019 Andreas Shimokawa
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2017-2018 protomors /* Copyright (C) 2017-2019 protomors
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2016-2018 Andreas Shimokawa, Carsten Pfeiffer /* Copyright (C) 2016-2019 Andreas Shimokawa, Carsten Pfeiffer
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer, Daniele /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti Gobbetti
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa /* Copyright (C) 2015-2019 Andreas Shimokawa
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Daniele Gobbetti /* Copyright (C) 2015-2019 Andreas Shimokawa, Daniele Gobbetti, José Rebelo
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa /* Copyright (C) 2015-2019 Andreas Shimokawa
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2016-2018 Andreas Shimokawa, Carsten Pfeiffer /* Copyright (C) 2016-2019 Andreas Shimokawa, Carsten Pfeiffer
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa /* Copyright (C) 2015-2019 Andreas Shimokawa
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2018 José Rebelo /* Copyright (C) 2015-2019 Andreas Shimokawa, José Rebelo
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2018 José Rebelo /* Copyright (C) 2015-2019 Andreas Shimokawa, José Rebelo
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa /* Copyright (C) 2015-2019 Andreas Shimokawa
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa /* Copyright (C) 2015-2019 Andreas Shimokawa, Daniele Gobbetti
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa /* Copyright (C) 2015-2019 Andreas Shimokawa
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa /* Copyright (C) 2015-2019 Andreas Shimokawa
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa /* Copyright (C) 2015-2019 Andreas Shimokawa
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2017-2018 Andreas Shimokawa /* Copyright (C) 2017-2019 Andreas Shimokawa
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,5 +1,5 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer, Daniele /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti Gobbetti, José Rebelo, Matthieu Baerts
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,5 @@
/* Copyright (C) 2016-2018 Andreas Shimokawa, Carsten Pfeiffer /* Copyright (C) 2016-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,5 +1,5 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer, Daniele /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti, JohnnySun, José Rebelo, Uwe Hermann Gobbetti, JohnnySun, José Rebelo, Matthieu Baerts, Uwe Hermann
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,4 +1,4 @@
/* Copyright (C) 2016-2018 Andreas Shimokawa, Carsten Pfeiffer, Daniele /* Copyright (C) 2016-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti Gobbetti
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

View File

@ -1,5 +1,5 @@
/* Copyright (C) 2015-2018 Andreas Shimokawa, Carsten Pfeiffer, Daniele /* Copyright (C) 2015-2019 Andreas Shimokawa, Carsten Pfeiffer, Daniele
Gobbetti, Julien Pivotto, Kasha, Steffen Liebergeld, Uwe Hermann Gobbetti, José Rebelo, Julien Pivotto, Kasha, Steffen Liebergeld, Uwe Hermann
This file is part of Gadgetbridge. This file is part of Gadgetbridge.

Some files were not shown because too many files have changed in this diff Show More