mirror of
https://github.com/M66B/FairEmail.git
synced 2026-04-06 09:03:56 +02:00
Refactoring
This commit is contained in:
@@ -433,50 +433,6 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences
|
||||
}
|
||||
});
|
||||
|
||||
db.message().liveUnseenWidget(null).observe(cowner, new Observer<List<TupleMessageStats>>() {
|
||||
private List<TupleMessageStats> last = null;
|
||||
|
||||
@Override
|
||||
public void onChanged(List<TupleMessageStats> stats) {
|
||||
if (stats == null)
|
||||
stats = new ArrayList<>();
|
||||
|
||||
boolean changed = false;
|
||||
if (last == null || last.size() != stats.size())
|
||||
changed = true;
|
||||
else
|
||||
for (int i = 0; i < stats.size(); i++)
|
||||
if (!last.get(i).equals(stats.get(i))) {
|
||||
changed = true;
|
||||
break;
|
||||
}
|
||||
|
||||
if (!changed)
|
||||
return;
|
||||
|
||||
Widget.update(ServiceSynchronize.this);
|
||||
|
||||
boolean badge = prefs.getBoolean("badge", true);
|
||||
boolean unseen_ignored = prefs.getBoolean("unseen_ignored", false);
|
||||
|
||||
int count = 0;
|
||||
for (TupleMessageStats stat : stats) {
|
||||
Integer unseen = (unseen_ignored ? stat.notifying : stat.unseen);
|
||||
if (unseen != null)
|
||||
count += unseen;
|
||||
}
|
||||
|
||||
try {
|
||||
if (count == 0 || !badge)
|
||||
ShortcutBadger.removeCount(ServiceSynchronize.this);
|
||||
else
|
||||
ShortcutBadger.applyCount(ServiceSynchronize.this, count);
|
||||
} catch (Throwable ex) {
|
||||
Log.e(ex);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
Map<Long, List<Long>> groupNotifying = new HashMap<>();
|
||||
|
||||
// Get existing notifications
|
||||
@@ -535,6 +491,50 @@ public class ServiceSynchronize extends ServiceBase implements SharedPreferences
|
||||
}
|
||||
});
|
||||
|
||||
db.message().liveWidgetUnseen(null).observe(cowner, new Observer<List<TupleMessageStats>>() {
|
||||
private List<TupleMessageStats> last = null;
|
||||
|
||||
@Override
|
||||
public void onChanged(List<TupleMessageStats> stats) {
|
||||
if (stats == null)
|
||||
stats = new ArrayList<>();
|
||||
|
||||
boolean changed = false;
|
||||
if (last == null || last.size() != stats.size())
|
||||
changed = true;
|
||||
else
|
||||
for (int i = 0; i < stats.size(); i++)
|
||||
if (!last.get(i).equals(stats.get(i))) {
|
||||
changed = true;
|
||||
break;
|
||||
}
|
||||
|
||||
if (!changed)
|
||||
return;
|
||||
|
||||
Widget.update(ServiceSynchronize.this);
|
||||
|
||||
boolean badge = prefs.getBoolean("badge", true);
|
||||
boolean unseen_ignored = prefs.getBoolean("unseen_ignored", false);
|
||||
|
||||
int count = 0;
|
||||
for (TupleMessageStats stat : stats) {
|
||||
Integer unseen = (unseen_ignored ? stat.notifying : stat.unseen);
|
||||
if (unseen != null)
|
||||
count += unseen;
|
||||
}
|
||||
|
||||
try {
|
||||
if (count == 0 || !badge)
|
||||
ShortcutBadger.removeCount(ServiceSynchronize.this);
|
||||
else
|
||||
ShortcutBadger.applyCount(ServiceSynchronize.this, count);
|
||||
} catch (Throwable ex) {
|
||||
Log.e(ex);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
db.message().liveWidgetUnified().observe(cowner, new Observer<List<TupleMessageWidgetCount>>() {
|
||||
private List<TupleMessageWidgetCount> last = null;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user