Empty folder problem for single user logged in
Just added onLogoutEvent subscription for Activities that were missed MAILAND-886
This commit is contained in:
parent
cb832b7cb2
commit
ea25ba4536
|
@ -25,8 +25,11 @@ import ch.protonmail.android.activities.settings.BaseSettingsActivity
|
|||
import ch.protonmail.android.activities.settings.SettingsEnum
|
||||
import ch.protonmail.android.core.Constants
|
||||
import ch.protonmail.android.core.ProtonMailApplication
|
||||
import ch.protonmail.android.events.LogoutEvent
|
||||
import ch.protonmail.android.utils.AppUtil
|
||||
import ch.protonmail.android.utils.UiUtil
|
||||
import ch.protonmail.android.utils.moveToLogin
|
||||
import com.squareup.otto.Subscribe
|
||||
import kotlinx.coroutines.Dispatchers.IO
|
||||
import kotlinx.coroutines.*
|
||||
import java.util.*
|
||||
|
@ -100,6 +103,13 @@ class AccountSettingsActivity : BaseSettingsActivity() {
|
|||
val autoLockSettingValue = if (mPinValue) getString(R.string.enabled) else getString(R.string.disabled)
|
||||
setValue(SettingsEnum.AUTO_LOCK, autoLockSettingValue)
|
||||
|
||||
setValue(SettingsEnum.APP_VERSION, String.format(getString(R.string.app_version_code), AppUtil.getAppVersionName(this), AppUtil.getAppVersionCode(this)))
|
||||
setValue(SettingsEnum.APP_VERSION, String.format(getString(R.string.app_version_code),
|
||||
AppUtil.getAppVersionName(this), AppUtil.getAppVersionCode(this)))
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
@Suppress("unused", "UNUSED_PARAMETER")
|
||||
fun onLogoutEvent(event: LogoutEvent?) {
|
||||
moveToLogin()
|
||||
}
|
||||
}
|
||||
|
|
|
@ -25,6 +25,8 @@ import android.view.View;
|
|||
import androidx.annotation.NonNull;
|
||||
import androidx.fragment.app.Fragment;
|
||||
|
||||
import com.squareup.otto.Subscribe;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
|
@ -34,15 +36,18 @@ import ch.protonmail.android.activities.fragments.BillingFragment;
|
|||
import ch.protonmail.android.activities.fragments.CreateAccountBaseFragment;
|
||||
import ch.protonmail.android.activities.fragments.HumanVerificationCaptchaDialogFragment;
|
||||
import ch.protonmail.android.activities.fragments.HumanVerificationDialogFragment;
|
||||
import ch.protonmail.android.activities.guest.LoginActivity;
|
||||
import ch.protonmail.android.api.ProtonMailApiManager;
|
||||
import ch.protonmail.android.api.models.LoginInfoResponse;
|
||||
import ch.protonmail.android.api.models.PaymentMethod;
|
||||
import ch.protonmail.android.core.Constants;
|
||||
import ch.protonmail.android.core.ProtonMailApplication;
|
||||
import ch.protonmail.android.events.LogoutEvent;
|
||||
import ch.protonmail.android.jobs.CheckUsernameAvailableJob;
|
||||
import ch.protonmail.android.jobs.DonateJob;
|
||||
import ch.protonmail.android.jobs.GetCurrenciesPlansJob;
|
||||
import ch.protonmail.android.jobs.payments.CreateSubscriptionJob;
|
||||
import ch.protonmail.android.utils.AppUtil;
|
||||
import ch.protonmail.android.utils.UiUtil;
|
||||
|
||||
/**
|
||||
|
@ -350,4 +355,10 @@ public class BillingActivity extends BaseActivity implements
|
|||
public void startAddressSetup() {
|
||||
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
public void onLogoutEvent(LogoutEvent event) {
|
||||
startActivity(AppUtil.decorInAppIntent(new Intent(this, LoginActivity.class)));
|
||||
finish();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -44,6 +44,7 @@ import ch.protonmail.android.jobs.user.FetchUserSettingsJob
|
|||
import ch.protonmail.android.utils.AppUtil
|
||||
import ch.protonmail.android.utils.UiUtil
|
||||
import ch.protonmail.android.utils.extensions.showToast
|
||||
import ch.protonmail.android.utils.moveToLogin
|
||||
import com.squareup.otto.Subscribe
|
||||
import kotlinx.android.synthetic.main.activity_change_password.*
|
||||
|
||||
|
@ -139,9 +140,8 @@ class ChangePasswordActivity : BaseActivity() {
|
|||
}
|
||||
|
||||
@Subscribe
|
||||
fun onLogoutEvent(event: LogoutEvent) {
|
||||
startActivity(AppUtil.decorInAppIntent(Intent(this, LoginActivity::class.java)))
|
||||
finish()
|
||||
fun onLogoutEvent(event: LogoutEvent?) {
|
||||
moveToLogin()
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
|
|
|
@ -44,12 +44,14 @@ import ch.protonmail.android.api.segments.event.AlarmReceiver
|
|||
import ch.protonmail.android.core.Constants
|
||||
import ch.protonmail.android.core.ProtonMailApplication
|
||||
import ch.protonmail.android.events.AuthStatus
|
||||
import ch.protonmail.android.events.LogoutEvent
|
||||
import ch.protonmail.android.events.SettingsChangedEvent
|
||||
import ch.protonmail.android.jobs.UpdateSettingsJob
|
||||
import ch.protonmail.android.uiModel.SettingsItemUiModel
|
||||
import ch.protonmail.android.utils.UiUtil
|
||||
import ch.protonmail.android.utils.extensions.isValidEmail
|
||||
import ch.protonmail.android.utils.extensions.showToast
|
||||
import ch.protonmail.android.utils.moveToLogin
|
||||
import ch.protonmail.android.views.CustomFontEditText
|
||||
import com.google.gson.Gson
|
||||
import com.squareup.otto.Subscribe
|
||||
|
@ -111,7 +113,7 @@ class EditSettingsItemActivity : BaseSettingsActivity() {
|
|||
val newConfirmRecoveryEmail = newRecoveryEmailConfirm!!.text.toString().trim()
|
||||
return if (TextUtils.isEmpty(newRecoveryEmail) && TextUtils.isEmpty(newConfirmRecoveryEmail)) {
|
||||
true
|
||||
} else (newRecoveryEmail == newConfirmRecoveryEmail && newRecoveryEmail.isValidEmail())
|
||||
} else newRecoveryEmail == newConfirmRecoveryEmail && newRecoveryEmail.isValidEmail()
|
||||
}
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
|
@ -282,7 +284,9 @@ class EditSettingsItemActivity : BaseSettingsActivity() {
|
|||
|
||||
setEnabled(SettingsEnum.SHOW_REMOTE_IMAGES, mailSettings.showImages == 1 || mailSettings.showImages == 3)
|
||||
setToggleListener(SettingsEnum.SHOW_REMOTE_IMAGES) { view: View, isChecked: Boolean ->
|
||||
if(view.isPressed && isChecked != (mailSettings.showImages == 1 || mailSettings.showImages == 3)) {initializedRemote = false}
|
||||
if (view.isPressed && isChecked != (mailSettings.showImages == 1 || mailSettings.showImages == 3)) {
|
||||
initializedRemote = false
|
||||
}
|
||||
|
||||
if (!initializedRemote) {
|
||||
if (isChecked && mailSettings.showImages == 0) {
|
||||
|
@ -302,7 +306,9 @@ class EditSettingsItemActivity : BaseSettingsActivity() {
|
|||
|
||||
setEnabled(SettingsEnum.SHOW_EMBEDDED_IMAGES, mailSettings.showImages == 2 || mailSettings.showImages == 3)
|
||||
setToggleListener(SettingsEnum.SHOW_EMBEDDED_IMAGES) { view: View, isChecked: Boolean ->
|
||||
if(view.isPressed && isChecked != (mailSettings.showImages == 2 || mailSettings.showImages == 3)) {initializedEbedded = false}
|
||||
if (view.isPressed && isChecked != (mailSettings.showImages == 2 || mailSettings.showImages == 3)) {
|
||||
initializedEbedded = false
|
||||
}
|
||||
|
||||
if (!initializedEbedded) {
|
||||
if (isChecked && mailSettings.showImages == 0) {
|
||||
|
@ -367,9 +373,9 @@ class EditSettingsItemActivity : BaseSettingsActivity() {
|
|||
}
|
||||
SettingsItem.SWIPE -> {
|
||||
setValue(SettingsEnum.SWIPE_LEFT,
|
||||
getString(SwipeAction.values()[mUserManager.mailSettings!!.leftSwipeAction].actionDescription))
|
||||
getString(SwipeAction.values()[mUserManager.mailSettings!!.leftSwipeAction].actionDescription))
|
||||
setValue(SettingsEnum.SWIPE_RIGHT,
|
||||
getString(SwipeAction.values()[mUserManager.mailSettings!!.rightSwipeAction].actionDescription))
|
||||
getString(SwipeAction.values()[mUserManager.mailSettings!!.rightSwipeAction].actionDescription))
|
||||
actionBarTitle = R.string.swiping_gesture
|
||||
}
|
||||
SettingsItem.LABELS_AND_FOLDERS -> {
|
||||
|
@ -446,9 +452,9 @@ class EditSettingsItemActivity : BaseSettingsActivity() {
|
|||
if (this !is ViewGroup || childCount == 0) return listOf(this)
|
||||
|
||||
return children
|
||||
.toList()
|
||||
.flatMap { it.getAllViews() }
|
||||
.plus(this as View)
|
||||
.toList()
|
||||
.flatMap { it.getAllViews() }
|
||||
.plus(this as View)
|
||||
}
|
||||
|
||||
private fun saveAndFinish() {
|
||||
|
@ -586,4 +592,9 @@ class EditSettingsItemActivity : BaseSettingsActivity() {
|
|||
alert.setCanceledOnTouchOutside(false)
|
||||
alert.show()
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
fun onLogoutEvent(event: LogoutEvent?) {
|
||||
moveToLogin()
|
||||
}
|
||||
}
|
||||
|
|
|
@ -34,8 +34,11 @@ import ch.protonmail.android.R
|
|||
import ch.protonmail.android.api.models.GetPaymentTokenResponse
|
||||
import ch.protonmail.android.api.models.PaymentToken
|
||||
import ch.protonmail.android.core.Constants
|
||||
import ch.protonmail.android.events.LogoutEvent
|
||||
import ch.protonmail.android.utils.extensions.showToast
|
||||
import ch.protonmail.android.utils.moveToLogin
|
||||
import ch.protonmail.android.views.PMWebView
|
||||
import com.squareup.otto.Subscribe
|
||||
import retrofit2.Call
|
||||
import retrofit2.Callback
|
||||
import retrofit2.Response
|
||||
|
@ -225,4 +228,9 @@ class PaymentTokenApprovalActivity : BaseActivity() {
|
|||
}
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
@Suppress("unused", "UNUSED_PARAMETER")
|
||||
fun onLogoutEvent(event: LogoutEvent?) {
|
||||
moveToLogin()
|
||||
}
|
||||
}
|
||||
|
|
|
@ -24,8 +24,10 @@ import ch.protonmail.android.R
|
|||
import ch.protonmail.android.activities.settings.BaseSettingsActivity
|
||||
import ch.protonmail.android.activities.settings.SettingsEnum
|
||||
import ch.protonmail.android.events.FetchLabelsEvent
|
||||
import ch.protonmail.android.events.LogoutEvent
|
||||
import ch.protonmail.android.utils.AppUtil
|
||||
import ch.protonmail.android.utils.PREF_CUSTOM_APP_LANGUAGE
|
||||
import ch.protonmail.android.utils.moveToLogin
|
||||
import com.squareup.otto.Subscribe
|
||||
|
||||
/**
|
||||
|
@ -60,7 +62,8 @@ class SettingsActivity : BaseSettingsActivity() {
|
|||
|
||||
override fun renderViews() {
|
||||
|
||||
mDisplayName = if (user.getDisplayNameForAddress(user.addressId)?.isEmpty()!!) user.defaultAddress.email else user.getDisplayNameForAddress(user.addressId)!!
|
||||
mDisplayName = if (user.getDisplayNameForAddress(user.addressId)?.isEmpty()!!)
|
||||
user.defaultAddress.email else user.getDisplayNameForAddress(user.addressId)!!
|
||||
setHeader(SettingsEnum.ACCOUNT, mDisplayName)
|
||||
|
||||
if (null != user.addresses && user.addresses.size > 0) {
|
||||
|
@ -88,16 +91,24 @@ class SettingsActivity : BaseSettingsActivity() {
|
|||
val autoLockSettingValue = if (mPinValue) getString(R.string.enabled) else getString(R.string.disabled)
|
||||
setValue(SettingsEnum.AUTO_LOCK, autoLockSettingValue)
|
||||
|
||||
val allowSecureConnectionsViaThirdPartiesSettingValue = if (user.allowSecureConnectionsViaThirdParties) getString(R.string.allowed) else getString(R.string.denied)
|
||||
val allowSecureConnectionsViaThirdPartiesSettingValue =
|
||||
if (user.allowSecureConnectionsViaThirdParties) getString(R.string.allowed) else getString(R.string.denied)
|
||||
setValue(SettingsEnum.CONNECTIONS_VIA_THIRD_PARTIES, allowSecureConnectionsViaThirdPartiesSettingValue)
|
||||
|
||||
setValue(SettingsEnum.COMBINED_CONTACTS, if (user.combinedContacts) getString(R.string.enabled) else getString(R.string.disabled))
|
||||
|
||||
setValue(SettingsEnum.APP_VERSION, String.format(getString(R.string.app_version_code), AppUtil.getAppVersionName(this), AppUtil.getAppVersionCode(this)))
|
||||
setValue(SettingsEnum.APP_VERSION, String.format(getString(R.string.app_version_code),
|
||||
AppUtil.getAppVersionName(this), AppUtil.getAppVersionCode(this)))
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
override fun onLabelsLoadedEvent(event: FetchLabelsEvent) {
|
||||
super.onLabelsLoadedEvent(event)
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
@Suppress("unused", "UNUSED_PARAMETER")
|
||||
fun onLogoutEvent(event: LogoutEvent?) {
|
||||
moveToLogin()
|
||||
}
|
||||
}
|
||||
|
|
|
@ -27,8 +27,11 @@ import com.wdullaer.materialdatetimepicker.time.TimePickerDialog
|
|||
import butterknife.OnClick
|
||||
import ch.protonmail.android.R
|
||||
import ch.protonmail.android.core.ProtonMailApplication
|
||||
import ch.protonmail.android.events.LogoutEvent
|
||||
import ch.protonmail.android.utils.extensions.*
|
||||
import ch.protonmail.android.utils.moveToLogin
|
||||
import ch.protonmail.android.views.SnoozeRepeatDayView
|
||||
import com.squareup.otto.Subscribe
|
||||
import kotlinx.android.synthetic.main.activity_snooze_notifications.*
|
||||
import java.util.*
|
||||
|
||||
|
@ -245,4 +248,10 @@ class SnoozeNotificationsActivity : BaseActivity() {
|
|||
saveLastInteraction()
|
||||
finish()
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
@Suppress("unused", "UNUSED_PARAMETER")
|
||||
fun onLogoutEvent(event: LogoutEvent?) {
|
||||
moveToLogin()
|
||||
}
|
||||
}
|
||||
|
|
|
@ -49,6 +49,7 @@ import java.util.Locale;
|
|||
import butterknife.BindView;
|
||||
import butterknife.OnClick;
|
||||
import ch.protonmail.android.R;
|
||||
import ch.protonmail.android.activities.guest.LoginActivity;
|
||||
import ch.protonmail.android.api.models.AllCurrencyPlans;
|
||||
import ch.protonmail.android.api.models.AvailablePlansResponse;
|
||||
import ch.protonmail.android.api.models.Organization;
|
||||
|
@ -57,6 +58,7 @@ import ch.protonmail.android.api.models.User;
|
|||
import ch.protonmail.android.core.Constants;
|
||||
import ch.protonmail.android.core.ProtonMailApplication;
|
||||
import ch.protonmail.android.events.AvailablePlansEvent;
|
||||
import ch.protonmail.android.events.LogoutEvent;
|
||||
import ch.protonmail.android.events.PaymentMethodEvent;
|
||||
import ch.protonmail.android.events.Status;
|
||||
import ch.protonmail.android.events.payment.CheckSubscriptionEvent;
|
||||
|
@ -649,4 +651,10 @@ public class UpsellingActivity extends BaseActivity {
|
|||
private enum State {
|
||||
CLOSED, OPENED
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
public void onLogoutEvent(LogoutEvent event) {
|
||||
startActivity(AppUtil.decorInAppIntent(new Intent(this, LoginActivity.class)));
|
||||
finish();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -26,6 +26,9 @@ import ch.protonmail.android.R
|
|||
import ch.protonmail.android.activities.BaseActivity
|
||||
import kotlinx.android.synthetic.main.activity_view_headers.*
|
||||
import android.text.method.ScrollingMovementMethod
|
||||
import ch.protonmail.android.events.LogoutEvent
|
||||
import ch.protonmail.android.utils.moveToLogin
|
||||
import com.squareup.otto.Subscribe
|
||||
|
||||
// region constants
|
||||
const val EXTRA_VIEW_HEADERS = "extra_view_headers"
|
||||
|
@ -67,4 +70,10 @@ class MessageViewHeadersActivity : BaseActivity() {
|
|||
}
|
||||
return false
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
@Suppress("unused", "UNUSED_PARAMETER")
|
||||
fun onLogoutEvent(event: LogoutEvent?) {
|
||||
moveToLogin()
|
||||
}
|
||||
}
|
|
@ -444,11 +444,6 @@ abstract class BaseSettingsActivity : BaseConnectivityActivity() {
|
|||
showToast(getString(R.string.attachment_failed) + " " + event.messageSubject + " " + event.attachmentName, Toast.LENGTH_SHORT)
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
fun onLogoutEvent(event: LogoutEvent) {
|
||||
moveToLogin()
|
||||
}
|
||||
|
||||
open fun onLabelsLoadedEvent(event: FetchLabelsEvent) {
|
||||
if (!canClick.get()) {
|
||||
showToast(R.string.cache_cleared, gravity = Gravity.CENTER)
|
||||
|
|
|
@ -86,6 +86,7 @@ import ch.protonmail.android.activities.BaseActivity;
|
|||
import ch.protonmail.android.activities.UpsellingActivity;
|
||||
import ch.protonmail.android.activities.composeMessage.ComposeMessageActivity;
|
||||
import ch.protonmail.android.activities.contactDetails.ExtractFullContactDetailsTask;
|
||||
import ch.protonmail.android.activities.guest.LoginActivity;
|
||||
import ch.protonmail.android.api.models.ContactEncryptedData;
|
||||
import ch.protonmail.android.api.models.User;
|
||||
import ch.protonmail.android.api.models.room.contacts.ContactLabel;
|
||||
|
@ -100,6 +101,7 @@ import ch.protonmail.android.crypto.Crypto;
|
|||
import ch.protonmail.android.crypto.UserCrypto;
|
||||
import ch.protonmail.android.events.ContactDetailsFetchedEvent;
|
||||
import ch.protonmail.android.events.ContactEvent;
|
||||
import ch.protonmail.android.events.LogoutEvent;
|
||||
import ch.protonmail.android.events.Status;
|
||||
import ch.protonmail.android.jobs.FetchContactDetailsJob;
|
||||
import ch.protonmail.android.utils.AppUtil;
|
||||
|
@ -1124,6 +1126,12 @@ public class ContactDetailsActivity extends BaseActivity implements AppBarLayout
|
|||
handleToolbarTitleVisibility(percentage);
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
public void onLogoutEvent(LogoutEvent event) {
|
||||
startActivity(AppUtil.decorInAppIntent(new Intent(this, LoginActivity.class)));
|
||||
finish();
|
||||
}
|
||||
|
||||
private void handleToolbarTitleVisibility(float percentage) {
|
||||
if (percentage >= PERCENTAGE_TO_SHOW_TITLE_AT_TOOLBAR) {
|
||||
if (!mIsTheTitleVisible) {
|
||||
|
|
|
@ -30,22 +30,27 @@ import android.view.Menu
|
|||
import android.view.MenuItem
|
||||
import android.view.ViewGroup
|
||||
import androidx.lifecycle.Observer
|
||||
import androidx.lifecycle.ViewModelProviders
|
||||
import androidx.lifecycle.ViewModelProvider
|
||||
import ch.protonmail.android.R
|
||||
import ch.protonmail.android.activities.BaseActivity
|
||||
import ch.protonmail.android.contacts.groups.ContactGroupEmailsAdapter
|
||||
import ch.protonmail.android.contacts.groups.edit.ContactGroupEditCreateActivity
|
||||
import ch.protonmail.android.core.ProtonMailApplication
|
||||
import ch.protonmail.android.events.LogoutEvent
|
||||
import ch.protonmail.android.utils.AppUtil
|
||||
import ch.protonmail.android.utils.Event
|
||||
import ch.protonmail.android.utils.UiUtil
|
||||
import ch.protonmail.android.utils.extensions.showToast
|
||||
import ch.protonmail.android.utils.moveToLogin
|
||||
import ch.protonmail.android.utils.ui.RecyclerViewEmptyViewSupport
|
||||
import ch.protonmail.android.utils.ui.dialogs.DialogUtils
|
||||
import com.google.android.material.appbar.AppBarLayout
|
||||
import com.squareup.otto.Subscribe
|
||||
import dagger.hilt.android.AndroidEntryPoint
|
||||
import kotlinx.android.synthetic.main.activity_contact_group_details.*
|
||||
import kotlinx.android.synthetic.main.content_contact_group_details.*
|
||||
import javax.inject.Inject
|
||||
import kotlin.math.abs
|
||||
|
||||
// region constants
|
||||
const val EXTRA_CONTACT_GROUP = "extra_contact_group"
|
||||
|
@ -76,7 +81,7 @@ class ContactGroupDetailsActivity : BaseActivity() {
|
|||
supportActionBar!!.setDisplayHomeAsUpEnabled(true)
|
||||
|
||||
contactGroupDetailsViewModel =
|
||||
ViewModelProviders.of(this, contactGroupDetailsViewModelFactory)
|
||||
ViewModelProvider(this, contactGroupDetailsViewModelFactory)
|
||||
.get(ContactGroupDetailsViewModel::class.java)
|
||||
initAdapter()
|
||||
startObserving()
|
||||
|
@ -92,7 +97,7 @@ class ContactGroupDetailsActivity : BaseActivity() {
|
|||
|
||||
appBarLayout.addOnOffsetChangedListener(AppBarLayout.OnOffsetChangedListener { _, verticalOffset ->
|
||||
// Vertical offset == 0 indicates appBar is fully expanded.
|
||||
if (Math.abs(verticalOffset) > 0) {
|
||||
if (abs(verticalOffset) > 0) {
|
||||
appBarExpanded = false
|
||||
invalidateOptionsMenu()
|
||||
} else {
|
||||
|
@ -102,6 +107,16 @@ class ContactGroupDetailsActivity : BaseActivity() {
|
|||
})
|
||||
}
|
||||
|
||||
override fun onStart() {
|
||||
super.onStart()
|
||||
ProtonMailApplication.getApplication().bus.register(this)
|
||||
}
|
||||
|
||||
override fun onStop() {
|
||||
super.onStop()
|
||||
ProtonMailApplication.getApplication().bus.unregister(this)
|
||||
}
|
||||
|
||||
override fun onCreateOptionsMenu(menu: Menu?): Boolean {
|
||||
menuInflater.inflate(R.menu.delete_menu, menu)
|
||||
collapsedMenu = menu
|
||||
|
@ -124,7 +139,11 @@ class ContactGroupDetailsActivity : BaseActivity() {
|
|||
}
|
||||
}
|
||||
|
||||
private fun initCollapsingToolbar(color: Int, name: String, emailsCount: Int) {
|
||||
private fun initCollapsingToolbar(
|
||||
color: Int,
|
||||
name: String,
|
||||
emailsCount: Int
|
||||
) {
|
||||
collapsingToolbar.apply {
|
||||
setBackgroundColor(color)
|
||||
setContentScrimColor(color)
|
||||
|
@ -134,12 +153,15 @@ class ContactGroupDetailsActivity : BaseActivity() {
|
|||
}
|
||||
}
|
||||
|
||||
private fun setTitle(name: String?, emailsCount: Int) {
|
||||
private fun setTitle(
|
||||
name: String?,
|
||||
emailsCount: Int
|
||||
) {
|
||||
titleTextView.text = if (name == null) "" else String.format(getString(R.string.contact_group_toolbar_title), name, resources.getQuantityString(R.plurals.contact_group_members, emailsCount, emailsCount))
|
||||
}
|
||||
|
||||
private fun startObserving() {
|
||||
contactGroupDetailsViewModel.contactGroupEmailsResult.observe(this, Observer {
|
||||
contactGroupDetailsViewModel.contactGroupEmailsResult.observe(this, {
|
||||
contactGroupEmailsAdapter.setData(it ?: ArrayList())
|
||||
if (it != null && TextUtils.isEmpty(filterView.text.toString())) {
|
||||
this.name = contactGroupDetailsViewModel.getData()?.name.toString()
|
||||
|
@ -160,7 +182,7 @@ class ContactGroupDetailsActivity : BaseActivity() {
|
|||
initCollapsingToolbar(color, it.name, it.contactEmailsCount)
|
||||
})
|
||||
|
||||
contactGroupDetailsViewModel.deleteGroupStatus.observe(this, Observer {
|
||||
contactGroupDetailsViewModel.deleteGroupStatus.observe(this, {
|
||||
it?.getContentIfNotHandled()?.let { status ->
|
||||
when (status) {
|
||||
ContactGroupDetailsViewModel.Status.SUCCESS -> {
|
||||
|
@ -227,4 +249,10 @@ class ContactGroupDetailsActivity : BaseActivity() {
|
|||
saveLastInteraction()
|
||||
finish()
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
@Suppress("unused", "UNUSED_PARAMETER")
|
||||
fun onLogoutEvent(event: LogoutEvent?) {
|
||||
moveToLogin()
|
||||
}
|
||||
}
|
||||
|
|
|
@ -40,10 +40,14 @@ import ch.protonmail.android.contacts.groups.details.EXTRA_CONTACT_GROUP
|
|||
import ch.protonmail.android.contacts.groups.edit.chooser.AddressChooserActivity
|
||||
import ch.protonmail.android.contacts.groups.edit.chooser.ColorChooserFragment
|
||||
import ch.protonmail.android.contacts.groups.edit.chooser.EXTRA_CONTACT_EMAILS
|
||||
import ch.protonmail.android.core.ProtonMailApplication
|
||||
import ch.protonmail.android.events.LogoutEvent
|
||||
import ch.protonmail.android.events.Status
|
||||
import ch.protonmail.android.utils.AppUtil
|
||||
import ch.protonmail.android.utils.UiUtil
|
||||
import ch.protonmail.android.utils.extensions.showToast
|
||||
import ch.protonmail.android.utils.moveToLogin
|
||||
import com.squareup.otto.Subscribe
|
||||
import dagger.hilt.android.AndroidEntryPoint
|
||||
import kotlinx.android.synthetic.main.content_edit_create_contact_group_header.*
|
||||
import java.util.ArrayList
|
||||
|
@ -106,6 +110,16 @@ class ContactGroupEditCreateActivity : BaseActivity(), ColorChooserFragment.ICol
|
|||
startObserving()
|
||||
}
|
||||
|
||||
override fun onStart() {
|
||||
super.onStart()
|
||||
ProtonMailApplication.getApplication().bus.register(this)
|
||||
}
|
||||
|
||||
override fun onStop() {
|
||||
super.onStop()
|
||||
ProtonMailApplication.getApplication().bus.unregister(this)
|
||||
}
|
||||
|
||||
override fun onCreateOptionsMenu(menu: Menu?): Boolean {
|
||||
menuInflater.inflate(R.menu.done_menu, menu)
|
||||
return true
|
||||
|
@ -269,4 +283,10 @@ class ContactGroupEditCreateActivity : BaseActivity(), ColorChooserFragment.ICol
|
|||
val colorId = colorOptions[currentSelection]
|
||||
return String.format("#%06X", 0xFFFFFF and colorId)
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
@Suppress("unused", "UNUSED_PARAMETER")
|
||||
fun onLogoutEvent(event: LogoutEvent?) {
|
||||
moveToLogin()
|
||||
}
|
||||
}
|
||||
|
|
|
@ -26,14 +26,17 @@ import android.text.TextWatcher
|
|||
import android.view.Menu
|
||||
import android.view.MenuItem
|
||||
import androidx.lifecycle.Observer
|
||||
import androidx.lifecycle.ViewModelProviders
|
||||
import androidx.lifecycle.ViewModelProvider
|
||||
import ch.protonmail.android.R
|
||||
import ch.protonmail.android.activities.BaseActivity
|
||||
import ch.protonmail.android.api.models.room.contacts.ContactEmail
|
||||
import ch.protonmail.android.contacts.groups.ContactGroupEmailsAdapter
|
||||
import ch.protonmail.android.contacts.groups.GroupsItemAdapterMode
|
||||
import ch.protonmail.android.events.LogoutEvent
|
||||
import ch.protonmail.android.utils.Event
|
||||
import ch.protonmail.android.utils.UiUtil
|
||||
import ch.protonmail.android.utils.moveToLogin
|
||||
import com.squareup.otto.Subscribe
|
||||
import dagger.hilt.android.AndroidEntryPoint
|
||||
import kotlinx.android.synthetic.main.content_contact_group_details.*
|
||||
import javax.inject.Inject
|
||||
|
@ -59,7 +62,7 @@ class AddressChooserActivity : BaseActivity() {
|
|||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
|
||||
addressChooserViewModel = ViewModelProviders.of(this, addressChooserViewModelFactory)
|
||||
addressChooserViewModel = ViewModelProvider(this, addressChooserViewModelFactory)
|
||||
.get(AddressChooserViewModel::class.java)
|
||||
setupToolbar()
|
||||
initAdapter()
|
||||
|
@ -134,4 +137,10 @@ class AddressChooserActivity : BaseActivity() {
|
|||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
@Suppress("unused", "UNUSED_PARAMETER")
|
||||
fun onLogoutEvent(event: LogoutEvent?) {
|
||||
moveToLogin()
|
||||
}
|
||||
}
|
|
@ -226,18 +226,10 @@ class NotificationServer(
|
|||
}
|
||||
inboxStyle.setSummaryText(summaryText)
|
||||
|
||||
val composeIntent = Intent(context, LoginActivity::class.java)
|
||||
val stackBuilder = TaskStackBuilder.create(context)
|
||||
stackBuilder.addParentStack(LoginActivity::class.java)
|
||||
stackBuilder.addNextIntent(composeIntent)
|
||||
val contentIntent = stackBuilder.getPendingIntent(0,
|
||||
PendingIntent.FLAG_UPDATE_CURRENT)
|
||||
|
||||
val channelId = createAccountChannel()
|
||||
|
||||
val mBuilder = NotificationCompat.Builder(context,
|
||||
channelId).setSmallIcon(R.drawable.notification_icon)
|
||||
.setContentIntent(contentIntent)
|
||||
.setColor(ContextCompat.getColor(context, R.color.ocean_blue))
|
||||
.setStyle(inboxStyle)
|
||||
.setLights(ContextCompat.getColor(context, R.color.light_indicator),
|
||||
|
|
|
@ -27,9 +27,12 @@ import androidx.appcompat.app.AppCompatDelegate
|
|||
import ch.protonmail.android.R
|
||||
import ch.protonmail.android.activities.BaseActivity
|
||||
import ch.protonmail.android.core.Constants
|
||||
import ch.protonmail.android.events.LogoutEvent
|
||||
import ch.protonmail.android.settings.pin.viewmodel.PinFragmentViewModel
|
||||
import ch.protonmail.android.utils.extensions.showToast
|
||||
import ch.protonmail.android.utils.moveToLogin
|
||||
import ch.protonmail.android.views.SecureEditText
|
||||
import com.squareup.otto.Subscribe
|
||||
|
||||
// region constants
|
||||
const val EXTRA_NEW_PIN_SET = "extra_new_pin_set"
|
||||
|
@ -130,4 +133,10 @@ class ChangePinActivity : BaseActivity(),
|
|||
override fun onPinMaxDigitReached() {
|
||||
// noop
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
@Suppress("unused", "UNUSED_PARAMETER")
|
||||
fun onLogoutEvent(event: LogoutEvent?) {
|
||||
moveToLogin()
|
||||
}
|
||||
}
|
||||
|
|
|
@ -25,9 +25,12 @@ import android.widget.Toast
|
|||
import androidx.appcompat.app.AppCompatDelegate
|
||||
import ch.protonmail.android.R
|
||||
import ch.protonmail.android.activities.BaseActivity
|
||||
import ch.protonmail.android.events.LogoutEvent
|
||||
import ch.protonmail.android.settings.pin.viewmodel.PinFragmentViewModel
|
||||
import ch.protonmail.android.utils.extensions.showToast
|
||||
import ch.protonmail.android.utils.moveToLogin
|
||||
import ch.protonmail.android.views.SecureEditText
|
||||
import com.squareup.otto.Subscribe
|
||||
|
||||
// region constants
|
||||
const val EXTRA_PIN_SET = "extra_pin_set"
|
||||
|
@ -110,4 +113,10 @@ class CreatePinActivity : BaseActivity(),
|
|||
override fun onPinMaxDigitReached() {
|
||||
// noop
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
@Suppress("unused", "UNUSED_PARAMETER")
|
||||
fun onLogoutEvent(event: LogoutEvent?) {
|
||||
moveToLogin()
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue