mirror of
https://github.com/M66B/FairEmail.git
synced 2026-01-15 09:10:19 +01:00
Compare commits
5 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
934e898022 | ||
|
|
0c1ea6c623 | ||
|
|
facfd4399e | ||
|
|
3a55ea5269 | ||
|
|
d263720b56 |
BIN
.idea/caches/build_file_checksums.ser
generated
BIN
.idea/caches/build_file_checksums.ser
generated
Binary file not shown.
@@ -6,8 +6,8 @@ android {
|
||||
applicationId "eu.faircode.email"
|
||||
minSdkVersion 23
|
||||
targetSdkVersion 28
|
||||
versionCode 7
|
||||
versionName "0.7"
|
||||
versionCode 8
|
||||
versionName "0.8"
|
||||
archivesBaseName = "SafeEmail-v$versionName"
|
||||
|
||||
javaCompileOptions {
|
||||
|
||||
@@ -172,7 +172,7 @@ public class ActivityView extends ActivityBase implements FragmentManager.OnBack
|
||||
|
||||
private void syncState() {
|
||||
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
|
||||
boolean eula = prefs.getBoolean("eula" , false);
|
||||
boolean eula = prefs.getBoolean("eula", false);
|
||||
int count = getSupportFragmentManager().getBackStackEntryCount();
|
||||
drawerToggle.setDrawerIndicatorEnabled(count == 1 && eula);
|
||||
}
|
||||
@@ -191,7 +191,7 @@ public class ActivityView extends ActivityBase implements FragmentManager.OnBack
|
||||
|
||||
if (newIntent) {
|
||||
newIntent = false;
|
||||
getSupportFragmentManager().popBackStack("unified" , 0);
|
||||
getSupportFragmentManager().popBackStack("unified", 0);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -269,9 +269,9 @@ public class ActivityView extends ActivityBase implements FragmentManager.OnBack
|
||||
intent.setAction(null);
|
||||
setIntent(intent);
|
||||
|
||||
final long now = new Date().getTime();
|
||||
if ("unseen".equals(action)) {
|
||||
final long now = new Date().getTime();
|
||||
|
||||
if ("unseen".equals(action))
|
||||
executor.submit(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
@@ -283,17 +283,18 @@ public class ActivityView extends ActivityBase implements FragmentManager.OnBack
|
||||
Log.i(Helper.TAG, "Updated seen until");
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
private void init() {
|
||||
invalidateOptionsMenu();
|
||||
|
||||
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
|
||||
if (prefs.getBoolean("eula" , false)) {
|
||||
if (prefs.getBoolean("eula", false)) {
|
||||
getSupportFragmentManager().popBackStack(); // eula
|
||||
|
||||
Bundle args = new Bundle();
|
||||
args.putLong("folder" , -1);
|
||||
args.putLong("folder", -1);
|
||||
|
||||
FragmentMessages fragment = new FragmentMessages();
|
||||
fragment.setArguments(args);
|
||||
@@ -325,10 +326,10 @@ public class ActivityView extends ActivityBase implements FragmentManager.OnBack
|
||||
}
|
||||
|
||||
private void onMenuFolders(long account) {
|
||||
getSupportFragmentManager().popBackStack("unified" , 0);
|
||||
getSupportFragmentManager().popBackStack("unified", 0);
|
||||
|
||||
Bundle args = new Bundle();
|
||||
args.putLong("account" , account);
|
||||
args.putLong("account", account);
|
||||
|
||||
FragmentFolders fragment = new FragmentFolders();
|
||||
fragment.setArguments(args);
|
||||
@@ -412,7 +413,7 @@ public class ActivityView extends ActivityBase implements FragmentManager.OnBack
|
||||
@Override
|
||||
public void onReceive(Context context, Intent intent) {
|
||||
if (ACTION_VIEW_MESSAGES.equals(intent.getAction())) {
|
||||
getSupportFragmentManager().popBackStack("unified" , 0);
|
||||
getSupportFragmentManager().popBackStack("unified", 0);
|
||||
|
||||
FragmentMessages fragment = new FragmentMessages();
|
||||
fragment.setArguments(intent.getExtras());
|
||||
|
||||
@@ -90,7 +90,7 @@ public class AdapterFolder extends RecyclerView.Adapter<AdapterFolder.ViewHolder
|
||||
|
||||
int resid = context.getResources().getIdentifier(
|
||||
"title_folder_" + folder.type.toLowerCase(),
|
||||
"string" ,
|
||||
"string",
|
||||
context.getPackageName());
|
||||
tvType.setText(resid > 0 ? context.getString(resid) : folder.type);
|
||||
|
||||
@@ -110,7 +110,7 @@ public class AdapterFolder extends RecyclerView.Adapter<AdapterFolder.ViewHolder
|
||||
LocalBroadcastManager lbm = LocalBroadcastManager.getInstance(context);
|
||||
lbm.sendBroadcast(
|
||||
new Intent(ActivityView.ACTION_VIEW_MESSAGES)
|
||||
.putExtra("folder" , folder.id));
|
||||
.putExtra("folder", folder.id));
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -124,7 +124,7 @@ public class AdapterFolder extends RecyclerView.Adapter<AdapterFolder.ViewHolder
|
||||
LocalBroadcastManager lbm = LocalBroadcastManager.getInstance(context);
|
||||
lbm.sendBroadcast(
|
||||
new Intent(ActivityView.ACTION_EDIT_FOLDER)
|
||||
.putExtra("id" , folder.id));
|
||||
.putExtra("id", folder.id));
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -148,16 +148,14 @@ public class AdapterFolder extends RecyclerView.Adapter<AdapterFolder.ViewHolder
|
||||
public int compare(TupleFolderEx f1, TupleFolderEx f2) {
|
||||
int s = ((Integer) EntityFolder.FOLDER_SORT_ORDER.indexOf(f1.type))
|
||||
.compareTo(EntityFolder.FOLDER_SORT_ORDER.indexOf(f2.type));
|
||||
if (s == 0) {
|
||||
int a = collator.compare(
|
||||
f1.accountName == null ? "" : f1.accountName,
|
||||
f2.accountName == null ? "" : f2.accountName);
|
||||
if (a == 0)
|
||||
return collator.compare(f1.name, f2.name);
|
||||
else
|
||||
return a;
|
||||
} else
|
||||
if (s != 0)
|
||||
return s;
|
||||
int c = -f1.synchronize.compareTo(f2.synchronize);
|
||||
if (c != 0)
|
||||
return c;
|
||||
return collator.compare(
|
||||
f1.name == null ? "" : f1.name,
|
||||
f2.name == null ? "" : f2.name);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
@@ -120,8 +120,10 @@ public class AdapterMessage extends PagedListAdapter<TupleMessageEx, AdapterMess
|
||||
tvSubject.setTypeface(null, typeface);
|
||||
tvCount.setTypeface(null, typeface);
|
||||
|
||||
tvFrom.setTextColor(Helper.resolveColor(context, unseen ? R.attr.colorUnread : android.R.attr.textColorSecondary));
|
||||
tvTime.setTextColor(Helper.resolveColor(context, unseen ? R.attr.colorUnread : android.R.attr.textColorSecondary));
|
||||
int colorUnseen = Helper.resolveColor(context, unseen
|
||||
? R.attr.colorUnread : android.R.attr.textColorSecondary);
|
||||
tvFrom.setTextColor(colorUnseen);
|
||||
tvTime.setTextColor(colorUnseen);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -138,7 +140,7 @@ public class AdapterMessage extends PagedListAdapter<TupleMessageEx, AdapterMess
|
||||
if (EntityFolder.TYPE_DRAFTS.equals(message.folderType))
|
||||
context.startActivity(
|
||||
new Intent(context, ActivityCompose.class)
|
||||
.putExtra("id" , message.id));
|
||||
.putExtra("id", message.id));
|
||||
else {
|
||||
boolean outbox = EntityFolder.TYPE_OUTBOX.equals(message.folderType);
|
||||
if (!outbox && !message.seen && !message.ui_seen) {
|
||||
@@ -151,7 +153,7 @@ public class AdapterMessage extends PagedListAdapter<TupleMessageEx, AdapterMess
|
||||
LocalBroadcastManager lbm = LocalBroadcastManager.getInstance(context);
|
||||
lbm.sendBroadcast(
|
||||
new Intent(ActivityView.ACTION_VIEW_MESSAGE)
|
||||
.putExtra("id" , message.id));
|
||||
.putExtra("id", message.id));
|
||||
}
|
||||
} catch (Throwable ex) {
|
||||
Log.e(Helper.TAG, ex + "\n" + Log.getStackTraceString(ex));
|
||||
@@ -165,7 +167,7 @@ public class AdapterMessage extends PagedListAdapter<TupleMessageEx, AdapterMess
|
||||
super(DIFF_CALLBACK);
|
||||
this.context = context;
|
||||
this.viewType = viewType;
|
||||
this.debug = PreferenceManager.getDefaultSharedPreferences(context).getBoolean("debug" , false);
|
||||
this.debug = PreferenceManager.getDefaultSharedPreferences(context).getBoolean("debug", false);
|
||||
}
|
||||
|
||||
public static final DiffUtil.ItemCallback<TupleMessageEx> DIFF_CALLBACK =
|
||||
|
||||
@@ -45,11 +45,9 @@ public interface DaoFolder {
|
||||
" FROM folder" +
|
||||
" LEFT JOIN account ON account.id = folder.account" +
|
||||
" LEFT JOIN message ON message.folder = folder.id AND NOT message.ui_hide" +
|
||||
" WHERE folder.account = :account" +
|
||||
" GROUP BY folder.id")
|
||||
LiveData<List<TupleFolderEx>> liveFolders();
|
||||
|
||||
@Query("SELECT * FROM folder WHERE account = :account")
|
||||
LiveData<List<EntityFolder>> liveFolders(long account);
|
||||
LiveData<List<TupleFolderEx>> liveFolders(long account);
|
||||
|
||||
@Query("SELECT folder.* FROM folder WHERE folder.id = :id")
|
||||
LiveData<EntityFolder> liveFolder(long id);
|
||||
|
||||
@@ -46,10 +46,12 @@ public class FragmentFolders extends FragmentEx {
|
||||
@Override
|
||||
@Nullable
|
||||
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
|
||||
setSubtitle(R.string.title_list_folders);
|
||||
|
||||
View view = inflater.inflate(R.layout.fragment_folders, container, false);
|
||||
|
||||
// Get arguments
|
||||
Bundle args = getArguments();
|
||||
long account = (args == null ? -1 : args.getLong("account"));
|
||||
|
||||
// Get controls
|
||||
rvFolder = view.findViewById(R.id.rvFolder);
|
||||
pbWait = view.findViewById(R.id.pbWait);
|
||||
@@ -76,8 +78,18 @@ public class FragmentFolders extends FragmentEx {
|
||||
grpReady.setVisibility(View.GONE);
|
||||
pbWait.setVisibility(View.VISIBLE);
|
||||
|
||||
DB db = DB.getInstance(getContext());
|
||||
|
||||
// Observe account
|
||||
db.account().liveAccount(account).observe(this, new Observer<EntityAccount>() {
|
||||
@Override
|
||||
public void onChanged(@Nullable EntityAccount account) {
|
||||
setSubtitle(account.name);
|
||||
}
|
||||
});
|
||||
|
||||
// Observe folders
|
||||
DB.getInstance(getContext()).folder().liveFolders().observe(this, new Observer<List<TupleFolderEx>>() {
|
||||
db.folder().liveFolders(account).observe(this, new Observer<List<TupleFolderEx>>() {
|
||||
@Override
|
||||
public void onChanged(@Nullable List<TupleFolderEx> folders) {
|
||||
adapter.set(folders);
|
||||
|
||||
@@ -135,7 +135,7 @@ public class FragmentMessage extends FragmentEx {
|
||||
URLSpan[] link = buffer.getSpans(off, off, URLSpan.class);
|
||||
if (link.length != 0) {
|
||||
Bundle args = new Bundle();
|
||||
args.putString("link" , link[0].getURL());
|
||||
args.putString("link", link[0].getURL());
|
||||
|
||||
FragmentWebView fragment = new FragmentWebView();
|
||||
fragment.setArguments(args);
|
||||
@@ -230,11 +230,16 @@ public class FragmentMessage extends FragmentEx {
|
||||
tvSubject.setText(message.subject);
|
||||
tvCount.setText(Integer.toString(message.count));
|
||||
|
||||
int visibility = (message.ui_seen ? Typeface.NORMAL : Typeface.BOLD);
|
||||
tvFrom.setTypeface(null, visibility);
|
||||
tvTime.setTypeface(null, visibility);
|
||||
tvSubject.setTypeface(null, visibility);
|
||||
tvCount.setTypeface(null, visibility);
|
||||
int typeface = (message.ui_seen ? Typeface.NORMAL : Typeface.BOLD);
|
||||
tvFrom.setTypeface(null, typeface);
|
||||
tvTime.setTypeface(null, typeface);
|
||||
tvSubject.setTypeface(null, typeface);
|
||||
tvCount.setTypeface(null, typeface);
|
||||
|
||||
int colorUnseen = Helper.resolveColor(getContext(), message.ui_seen
|
||||
? android.R.attr.textColorSecondary : R.attr.colorUnread);
|
||||
tvFrom.setTextColor(colorUnseen);
|
||||
tvTime.setTextColor(colorUnseen);
|
||||
|
||||
DB.getInstance(getContext()).attachment().liveAttachments(id).removeObservers(FragmentMessage.this);
|
||||
DB.getInstance(getContext()).attachment().liveAttachments(id).observe(FragmentMessage.this,
|
||||
@@ -261,9 +266,9 @@ public class FragmentMessage extends FragmentEx {
|
||||
bottom_navigation.setTag(message.folderType);
|
||||
|
||||
db.folder().liveFolders(message.account).removeObservers(FragmentMessage.this);
|
||||
db.folder().liveFolders(message.account).observe(FragmentMessage.this, new Observer<List<EntityFolder>>() {
|
||||
db.folder().liveFolders(message.account).observe(FragmentMessage.this, new Observer<List<TupleFolderEx>>() {
|
||||
@Override
|
||||
public void onChanged(@Nullable final List<EntityFolder> folders) {
|
||||
public void onChanged(@Nullable final List<TupleFolderEx> folders) {
|
||||
boolean hasTrash = false;
|
||||
boolean hasJunk = false;
|
||||
boolean hasArchive = false;
|
||||
@@ -341,7 +346,7 @@ public class FragmentMessage extends FragmentEx {
|
||||
|
||||
private void onActionThread(long id) {
|
||||
Bundle args = new Bundle();
|
||||
args.putLong("thread" , id); // message ID
|
||||
args.putLong("thread", id); // message ID
|
||||
|
||||
FragmentMessages fragment = new FragmentMessages();
|
||||
fragment.setArguments(args);
|
||||
@@ -353,14 +358,14 @@ public class FragmentMessage extends FragmentEx {
|
||||
|
||||
private void onActionForward(long id) {
|
||||
startActivity(new Intent(getContext(), ActivityCompose.class)
|
||||
.putExtra("id" , id)
|
||||
.putExtra("action" , "forward"));
|
||||
.putExtra("id", id)
|
||||
.putExtra("action", "forward"));
|
||||
}
|
||||
|
||||
private void onActionReplyAll(long id) {
|
||||
startActivity(new Intent(getContext(), ActivityCompose.class)
|
||||
.putExtra("id" , id)
|
||||
.putExtra("action" , "reply_all"));
|
||||
.putExtra("id", id)
|
||||
.putExtra("action", "reply_all"));
|
||||
}
|
||||
|
||||
private void onActionDelete(final long id) {
|
||||
@@ -443,7 +448,7 @@ public class FragmentMessage extends FragmentEx {
|
||||
|
||||
private void onActionMove(final long id) {
|
||||
Bundle args = new Bundle();
|
||||
args.putLong("id" , id);
|
||||
args.putLong("id", id);
|
||||
getLoaderManager().restartLoader(ActivityView.LOADER_MESSAGE_MOVE, args, moveLoaderCallbacks).forceLoad();
|
||||
}
|
||||
|
||||
@@ -469,8 +474,8 @@ public class FragmentMessage extends FragmentEx {
|
||||
|
||||
private void onActionReply(long id) {
|
||||
startActivity(new Intent(getContext(), ActivityCompose.class)
|
||||
.putExtra("id" , id)
|
||||
.putExtra("action" , "reply"));
|
||||
.putExtra("id", id)
|
||||
.putExtra("action", "reply"));
|
||||
}
|
||||
|
||||
private static class MoveLoader extends AsyncTaskLoader<List<EntityFolder>> {
|
||||
|
||||
@@ -114,9 +114,9 @@ public class ServiceSynchronize extends LifecycleService {
|
||||
|
||||
public ServiceSynchronize() {
|
||||
// https://docs.oracle.com/javaee/6/api/javax/mail/internet/package-summary.html
|
||||
System.setProperty("mail.mime.ignoreunknownencoding" , "true");
|
||||
System.setProperty("mail.mime.decodefilename" , "true");
|
||||
System.setProperty("mail.mime.encodefilename" , "true");
|
||||
System.setProperty("mail.mime.ignoreunknownencoding", "true");
|
||||
System.setProperty("mail.mime.decodefilename", "true");
|
||||
System.setProperty("mail.mime.encodefilename", "true");
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -178,6 +178,21 @@ public class ServiceSynchronize extends LifecycleService {
|
||||
Log.i(Helper.TAG, "Service start");
|
||||
super.onStartCommand(intent, flags, startId);
|
||||
|
||||
if ("unseen".equals(intent.getAction())) {
|
||||
final long now = new Date().getTime();
|
||||
executor.submit(new Runnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
DaoAccount dao = DB.getInstance(ServiceSynchronize.this).account();
|
||||
for (EntityAccount account : dao.getAccounts(true)) {
|
||||
account.seen_until = now;
|
||||
dao.updateAccount(account);
|
||||
}
|
||||
Log.i(Helper.TAG, "Updated seen until");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
return START_STICKY;
|
||||
}
|
||||
|
||||
@@ -217,6 +232,10 @@ public class ServiceSynchronize extends LifecycleService {
|
||||
PendingIntent pi = PendingIntent.getActivity(
|
||||
this, ActivityView.REQUEST_UNSEEN, intent, PendingIntent.FLAG_UPDATE_CURRENT);
|
||||
|
||||
Intent delete = new Intent(this, ServiceSynchronize.class);
|
||||
delete.setAction("unseen");
|
||||
PendingIntent pid = PendingIntent.getService(this, 1, delete, PendingIntent.FLAG_UPDATE_CURRENT);
|
||||
|
||||
Uri uri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
|
||||
|
||||
// Build notification
|
||||
@@ -231,11 +250,11 @@ public class ServiceSynchronize extends LifecycleService {
|
||||
.setContentTitle(getString(R.string.title_notification_unseen, unseen))
|
||||
.setContentIntent(pi)
|
||||
.setSound(uri)
|
||||
.setOngoing(true)
|
||||
.setShowWhen(false)
|
||||
.setPriority(Notification.PRIORITY_DEFAULT)
|
||||
.setCategory(Notification.CATEGORY_STATUS)
|
||||
.setVisibility(Notification.VISIBILITY_PUBLIC);
|
||||
.setVisibility(Notification.VISIBILITY_PUBLIC)
|
||||
.setDeleteIntent(pid);
|
||||
|
||||
return builder;
|
||||
}
|
||||
@@ -284,8 +303,8 @@ public class ServiceSynchronize extends LifecycleService {
|
||||
IMAPStore istore = null;
|
||||
try {
|
||||
Properties props = MessageHelper.getSessionProperties();
|
||||
props.put("mail.imaps.peek" , "true");
|
||||
props.setProperty("mail.mime.address.strict" , "false");
|
||||
props.put("mail.imaps.peek", "true");
|
||||
props.setProperty("mail.mime.address.strict", "false");
|
||||
//props.put("mail.imaps.minidletime", "5000");
|
||||
Session isession = Session.getInstance(props, null);
|
||||
// isession.setDebug(true);
|
||||
@@ -390,7 +409,7 @@ public class ServiceSynchronize extends LifecycleService {
|
||||
if (!EntityFolder.TYPE_OUTBOX.equals(folder.type))
|
||||
lbm.sendBroadcast(new Intent(ACTION_PROCESS_FOLDER)
|
||||
.setType("account/" + account.id)
|
||||
.putExtra("folder" , folder.id));
|
||||
.putExtra("folder", folder.id));
|
||||
|
||||
} catch (Throwable ex) {
|
||||
Log.e(Helper.TAG, account.name + " " + ex + "\n" + Log.getStackTraceString(ex));
|
||||
@@ -442,7 +461,7 @@ public class ServiceSynchronize extends LifecycleService {
|
||||
BroadcastReceiver processReceiver = new BroadcastReceiver() {
|
||||
@Override
|
||||
public void onReceive(Context context, Intent intent) {
|
||||
final long fid = intent.getLongExtra("folder" , -1);
|
||||
final long fid = intent.getLongExtra("folder", -1);
|
||||
|
||||
IMAPFolder ifolder;
|
||||
synchronized (mapFolder) {
|
||||
@@ -796,7 +815,7 @@ public class ServiceSynchronize extends LifecycleService {
|
||||
Address[] to = imessage.getAllRecipients();
|
||||
itransport.sendMessage(imessage, to);
|
||||
Log.i(Helper.TAG, "Sent via " + ident.host + "/" + ident.user +
|
||||
" to " + TextUtils.join(", " , to));
|
||||
" to " + TextUtils.join(", ", to));
|
||||
|
||||
msg.sent = new Date().getTime();
|
||||
msg.seen = true;
|
||||
@@ -917,7 +936,7 @@ public class ServiceSynchronize extends LifecycleService {
|
||||
}
|
||||
}
|
||||
if (candidate) {
|
||||
Log.i(Helper.TAG, ifolder.getFullName() + " candidate attr=" + TextUtils.join("," , attrs));
|
||||
Log.i(Helper.TAG, ifolder.getFullName() + " candidate attr=" + TextUtils.join(",", attrs));
|
||||
EntityFolder folder = dao.getFolderByName(account.id, ifolder.getFullName());
|
||||
if (folder == null) {
|
||||
folder = new EntityFolder();
|
||||
@@ -1066,7 +1085,7 @@ public class ServiceSynchronize extends LifecycleService {
|
||||
message.folder = folder.id;
|
||||
message.uid = uid;
|
||||
message.msgid = helper.getMessageID();
|
||||
message.references = TextUtils.join(" " , helper.getReferences());
|
||||
message.references = TextUtils.join(" ", helper.getReferences());
|
||||
message.inreplyto = helper.getInReplyTo();
|
||||
message.thread = helper.getThreadId(uid);
|
||||
message.from = helper.getFrom();
|
||||
@@ -1119,7 +1138,7 @@ public class ServiceSynchronize extends LifecycleService {
|
||||
ifolder.doCommand(new IMAPFolder.ProtocolCommand() {
|
||||
public Object doCommand(IMAPProtocol p) throws ProtocolException {
|
||||
Log.i(Helper.TAG, ifolder.getName() + " start NOOP");
|
||||
p.simpleCommand("NOOP" , null);
|
||||
p.simpleCommand("NOOP", null);
|
||||
Log.i(Helper.TAG, ifolder.getName() + " end NOOP");
|
||||
return null;
|
||||
}
|
||||
@@ -1232,20 +1251,20 @@ public class ServiceSynchronize extends LifecycleService {
|
||||
NotificationManager nm = context.getSystemService(NotificationManager.class);
|
||||
|
||||
NotificationChannel service = new NotificationChannel(
|
||||
"service" ,
|
||||
"service",
|
||||
context.getString(R.string.channel_service),
|
||||
NotificationManager.IMPORTANCE_MIN);
|
||||
service.setSound(null, Notification.AUDIO_ATTRIBUTES_DEFAULT);
|
||||
nm.createNotificationChannel(service);
|
||||
|
||||
NotificationChannel notification = new NotificationChannel(
|
||||
"notification" ,
|
||||
"notification",
|
||||
context.getString(R.string.channel_notification),
|
||||
NotificationManager.IMPORTANCE_DEFAULT);
|
||||
nm.createNotificationChannel(notification);
|
||||
|
||||
NotificationChannel error = new NotificationChannel(
|
||||
"error" ,
|
||||
"error",
|
||||
context.getString(R.string.channel_error),
|
||||
NotificationManager.IMPORTANCE_HIGH);
|
||||
nm.createNotificationChannel(error);
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Konten</string>
|
||||
<string name="title_list_identities">Identitäten</string>
|
||||
<string name="title_list_folders">Ordner</string>
|
||||
<string name="title_edit_account">Konto bearbeiten</string>
|
||||
<string name="title_edit_identity">Identität bearbeiten</string>
|
||||
<string name="title_edit_folder">Ordner bearbeiten</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Versão %1$s</string>
|
||||
<string name="title_list_accounts">Contas</string>
|
||||
<string name="title_list_identities">Identidades</string>
|
||||
<string name="title_list_folders">Pastas</string>
|
||||
<string name="title_edit_account">Editar conta</string>
|
||||
<string name="title_edit_identity">Editar identidade</string>
|
||||
<string name="title_edit_folder">Editar pasta</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Versiunea %1$s</string>
|
||||
<string name="title_list_accounts">Conturi</string>
|
||||
<string name="title_list_identities">Identități</string>
|
||||
<string name="title_list_folders">Dosare</string>
|
||||
<string name="title_edit_account">Editare cont</string>
|
||||
<string name="title_edit_identity">Editare identitate</string>
|
||||
<string name="title_edit_folder">Editare dosar</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -17,7 +17,6 @@
|
||||
<string name="title_version">Version %1$s</string>
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
<string name="title_edit_folder">Edit folder</string>
|
||||
|
||||
@@ -23,7 +23,6 @@
|
||||
|
||||
<string name="title_list_accounts">Accounts</string>
|
||||
<string name="title_list_identities">Identities</string>
|
||||
<string name="title_list_folders">Folders</string>
|
||||
|
||||
<string name="title_edit_account">Edit account</string>
|
||||
<string name="title_edit_identity">Edit identity</string>
|
||||
|
||||
Reference in New Issue
Block a user