aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/main/java/de/pixart/messenger/entities/Account.java4
-rw-r--r--src/main/java/de/pixart/messenger/services/NotificationService.java2
-rw-r--r--src/main/java/de/pixart/messenger/services/XmppConnectionService.java15
-rw-r--r--src/main/java/de/pixart/messenger/ui/EditAccountActivity.java2
-rw-r--r--src/main/java/de/pixart/messenger/ui/ManageAccountActivity.java16
-rw-r--r--src/main/java/de/pixart/messenger/ui/SettingsActivity.java6
-rw-r--r--src/main/java/de/pixart/messenger/ui/StartConversationActivity.java2
-rw-r--r--src/main/java/de/pixart/messenger/utils/ExceptionHelper.java2
8 files changed, 26 insertions, 23 deletions
diff --git a/src/main/java/de/pixart/messenger/entities/Account.java b/src/main/java/de/pixart/messenger/entities/Account.java
index 35dcc7181..bc2fe371a 100644
--- a/src/main/java/de/pixart/messenger/entities/Account.java
+++ b/src/main/java/de/pixart/messenger/entities/Account.java
@@ -110,6 +110,10 @@ public class Account extends AbstractEntity {
return key == null || Boolean.parseBoolean(key);
}
+ public boolean isEnabled() {
+ return !isOptionSet(Account.OPTION_DISABLED);
+ }
+
public enum State {
DISABLED(false, false),
OFFLINE(false),
diff --git a/src/main/java/de/pixart/messenger/services/NotificationService.java b/src/main/java/de/pixart/messenger/services/NotificationService.java
index 033b6ac9c..f7416bca6 100644
--- a/src/main/java/de/pixart/messenger/services/NotificationService.java
+++ b/src/main/java/de/pixart/messenger/services/NotificationService.java
@@ -698,7 +698,7 @@ public class NotificationService {
if (account.isOnlineAndConnected()) {
connected++;
enabled++;
- } else if (!account.isOptionSet(Account.OPTION_DISABLED)) {
+ } else if (account.isEnabled()) {
enabled++;
}
}
diff --git a/src/main/java/de/pixart/messenger/services/XmppConnectionService.java b/src/main/java/de/pixart/messenger/services/XmppConnectionService.java
index 93b8b0d15..592790c6f 100644
--- a/src/main/java/de/pixart/messenger/services/XmppConnectionService.java
+++ b/src/main/java/de/pixart/messenger/services/XmppConnectionService.java
@@ -365,7 +365,7 @@ public class XmppConnectionService extends Service {
scheduleWakeUpCall(Config.PING_MAX_INTERVAL, account.getUuid().hashCode());
} else if (account.getStatus() == Account.State.OFFLINE || account.getStatus() == Account.State.DISABLED) {
resetSendingToWaiting(account);
- if (!account.isOptionSet(Account.OPTION_DISABLED) && isInLowPingTimeoutMode(account)) {
+ if (account.isEnabled() && isInLowPingTimeoutMode(account)) {
Log.d(Config.LOGTAG, account.getJid().toBareJid() + ": went into offline state during low ping mode. reconnecting now");
reconnectAccount(account, true, false);
} else {
@@ -2502,7 +2502,7 @@ public class XmppConnectionService extends Service {
private boolean hasEnabledAccounts() {
for(Account account : this.accounts) {
- if (!account.isOptionSet(Account.OPTION_DISABLED)) {
+ if (account.isEnabled()) {
return true;
}
}
@@ -3265,7 +3265,7 @@ public class XmppConnectionService extends Service {
account.setXmppConnection(connection);
}
boolean hasInternet = hasInternetConnection();
- if (!account.isOptionSet(Account.OPTION_DISABLED) && hasInternet) {
+ if (account.isEnabled() && hasInternet) {
if (!force) {
disconnect(account, false);
}
@@ -3724,7 +3724,7 @@ public class XmppConnectionService extends Service {
public void refreshAllPresences() {
boolean includeIdleTimestamp = checkListeners() && broadcastLastActivity();
for (Account account : getAccounts()) {
- if (!account.isOptionSet(Account.OPTION_DISABLED)) {
+ if (account.isEnabled()) {
sendPresence(account, includeIdleTimestamp);
}
}
@@ -3770,7 +3770,7 @@ public class XmppConnectionService extends Service {
public List<Contact> findContacts(Jid jid, String accountJid) {
ArrayList<Contact> contacts = new ArrayList<>();
for (Account account : getAccounts()) {
- if ((!account.isOptionSet(Account.OPTION_DISABLED) || accountJid != null)
+ if ((account.isEnabled() || accountJid != null)
&& (accountJid == null || accountJid.equals(account.getJid().toBareJid().toString()))) {
Contact contact = account.getRoster().getContactFromRoster(jid);
if (contact != null) {
@@ -3783,8 +3783,7 @@ public class XmppConnectionService extends Service {
public Conversation findFirstMuc(Jid jid) {
for (Conversation conversation : getConversations()) {
- if (conversation.getJid().toBareJid().equals(jid.toBareJid())
- && conversation.getMode() == Conversation.MODE_MULTI) {
+ if (conversation.getAccount().isEnabled() && conversation.getJid().toBareJid().equals(jid.toBareJid()) && conversation.getMode() == Conversation.MODE_MULTI) {
return conversation;
}
}
@@ -4016,7 +4015,7 @@ public class XmppConnectionService extends Service {
account.setPresenceStatus(status);
account.setPresenceStatusMessage(statusMessage);
databaseBackend.updateAccount(account);
- if (!account.isOptionSet(Account.OPTION_DISABLED) && send) {
+ if (account.isEnabled() && send) {
sendPresence(account);
}
}
diff --git a/src/main/java/de/pixart/messenger/ui/EditAccountActivity.java b/src/main/java/de/pixart/messenger/ui/EditAccountActivity.java
index 8ada0f1e7..14fde6fef 100644
--- a/src/main/java/de/pixart/messenger/ui/EditAccountActivity.java
+++ b/src/main/java/de/pixart/messenger/ui/EditAccountActivity.java
@@ -260,7 +260,7 @@ public class EditAccountActivity extends OmemoActivity implements OnAccountUpdat
}
mHostname.setError(null);
mPort.setError(null);
- if (!mAccount.isOptionSet(Account.OPTION_DISABLED)
+ if (mAccount.isEnabled()
&& !registerNewAccount
&& !mInitMode) {
finish();
diff --git a/src/main/java/de/pixart/messenger/ui/ManageAccountActivity.java b/src/main/java/de/pixart/messenger/ui/ManageAccountActivity.java
index ffd904e5e..cfb982c0f 100644
--- a/src/main/java/de/pixart/messenger/ui/ManageAccountActivity.java
+++ b/src/main/java/de/pixart/messenger/ui/ManageAccountActivity.java
@@ -127,14 +127,14 @@ public class ManageAccountActivity extends XmppActivity implements OnAccountUpda
R.menu.manageaccounts_context, menu);
AdapterContextMenuInfo acmi = (AdapterContextMenuInfo) menuInfo;
this.selectedAccount = accountList.get(acmi.position);
- if (this.selectedAccount.isOptionSet(Account.OPTION_DISABLED)) {
+ if (this.selectedAccount.isEnabled()) {
+ menu.findItem(R.id.mgmt_account_announce_pgp).setVisible(Config.supportOpenPgp());
+ menu.findItem(R.id.mgmt_account_change_presence).setVisible(manuallyChangePresence());
+ } else {
menu.findItem(R.id.mgmt_account_reconnect).setVisible(false);
menu.findItem(R.id.mgmt_account_announce_pgp).setVisible(false);
menu.findItem(R.id.mgmt_account_publish_avatar).setVisible(false);
menu.findItem(R.id.mgmt_account_change_presence).setVisible(false);
- } else {
- menu.findItem(R.id.mgmt_account_announce_pgp).setVisible(Config.supportOpenPgp());
- menu.findItem(R.id.mgmt_account_change_presence).setVisible(manuallyChangePresence());
}
menu.setHeaderTitle(this.selectedAccount.getJid().toBareJid().toString());
}
@@ -265,7 +265,7 @@ public class ManageAccountActivity extends XmppActivity implements OnAccountUpda
List<Account> list = new ArrayList<>();
synchronized (this.accountList) {
for (Account account : this.accountList) {
- if (!account.isOptionSet(Account.OPTION_DISABLED)) {
+ if (account.isEnabled()) {
list.add(account);
}
}
@@ -278,7 +278,7 @@ public class ManageAccountActivity extends XmppActivity implements OnAccountUpda
private boolean accountsLeftToDisable() {
synchronized (this.accountList) {
for (Account account : this.accountList) {
- if (!account.isOptionSet(Account.OPTION_DISABLED)) {
+ if (account.isEnabled()) {
return true;
}
}
@@ -289,7 +289,7 @@ public class ManageAccountActivity extends XmppActivity implements OnAccountUpda
private boolean accountsLeftToEnable() {
synchronized (this.accountList) {
for (Account account : this.accountList) {
- if (account.isOptionSet(Account.OPTION_DISABLED)) {
+ if (!account.isEnabled()) {
return true;
}
}
@@ -301,7 +301,7 @@ public class ManageAccountActivity extends XmppActivity implements OnAccountUpda
List<Account> list = new ArrayList<>();
synchronized (this.accountList) {
for (Account account : this.accountList) {
- if (account.isOptionSet(Account.OPTION_DISABLED)) {
+ if (!account.isEnabled()) {
list.add(account);
}
}
diff --git a/src/main/java/de/pixart/messenger/ui/SettingsActivity.java b/src/main/java/de/pixart/messenger/ui/SettingsActivity.java
index 1f5395748..adf8ab03f 100644
--- a/src/main/java/de/pixart/messenger/ui/SettingsActivity.java
+++ b/src/main/java/de/pixart/messenger/ui/SettingsActivity.java
@@ -184,7 +184,7 @@ public class SettingsActivity extends XmppActivity implements
builder.setTitle(R.string.pref_delete_omemo_identities);
final List<CharSequence> accounts = new ArrayList<>();
for (Account account : xmppConnectionService.getAccounts()) {
- if (!account.isOptionSet(Account.OPTION_DISABLED)) {
+ if (account.isEnabled()) {
accounts.add(account.getJid().toBareJid().toString());
}
}
@@ -251,7 +251,7 @@ public class SettingsActivity extends XmppActivity implements
if (xmppConnectionServiceBound) {
for (Account account : xmppConnectionService.getAccounts()) {
if (account.setResource(resource)) {
- if (!account.isOptionSet(Account.OPTION_DISABLED)) {
+ if (account.isEnabled()) {
XmppConnection connection = account.getXmppConnection();
if (connection != null) {
connection.resetStreamId();
@@ -316,7 +316,7 @@ public class SettingsActivity extends XmppActivity implements
private void reconnectAccounts() {
for (Account account : xmppConnectionService.getAccounts()) {
- if (!account.isOptionSet(Account.OPTION_DISABLED)) {
+ if (account.isEnabled()) {
xmppConnectionService.reconnectAccountInBackground(account);
}
}
diff --git a/src/main/java/de/pixart/messenger/ui/StartConversationActivity.java b/src/main/java/de/pixart/messenger/ui/StartConversationActivity.java
index aaae41e65..c1e6be256 100644
--- a/src/main/java/de/pixart/messenger/ui/StartConversationActivity.java
+++ b/src/main/java/de/pixart/messenger/ui/StartConversationActivity.java
@@ -866,7 +866,7 @@ public class StartConversationActivity extends XmppActivity implements OnRosterU
private boolean handleJid(Invite invite) {
Account account = xmppConnectionService.findAccountByJid(invite.getJid());
- if (account != null && !account.isOptionSet(Account.OPTION_DISABLED)) {
+ if (account != null && account.isEnabled()) {
if (invite.hasFingerprints() && xmppConnectionService.verifyFingerprints(account,invite.getFingerprints())) {
Toast.makeText(this,R.string.verified_fingerprints,Toast.LENGTH_SHORT).show();
}
diff --git a/src/main/java/de/pixart/messenger/utils/ExceptionHelper.java b/src/main/java/de/pixart/messenger/utils/ExceptionHelper.java
index c511039cf..7ed5e4804 100644
--- a/src/main/java/de/pixart/messenger/utils/ExceptionHelper.java
+++ b/src/main/java/de/pixart/messenger/utils/ExceptionHelper.java
@@ -51,7 +51,7 @@ public class ExceptionHelper {
List<Account> accounts = service.getAccounts();
Account account = null;
for (int i = 0; i < accounts.size(); ++i) {
- if (!accounts.get(i).isOptionSet(Account.OPTION_DISABLED)) {
+ if (accounts.get(i).isEnabled()) {
account = accounts.get(i);
break;
}