Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0911c736 authored by Nihar Thakkar's avatar Nihar Thakkar
Browse files

Improve account configuration message, auto-add Google and eelo accounts

parent b2e4798e
Loading
Loading
Loading
Loading
Loading
+18 −2
Original line number Diff line number Diff line
@@ -25,6 +25,7 @@ import android.support.v4.content.Loader
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.Toast
import at.bitfire.davdroid.*
import at.bitfire.davdroid.log.Logger
import at.bitfire.davdroid.model.ServiceDB.*
@@ -75,7 +76,7 @@ class AccountDetailsFragment : Fragment(), LoaderManager.LoaderCallbacks<CreateS
                v.contact_group_method.isEnabled = false
        }

        v.create_account.setOnClickListener({ _ ->
        v.create_account.setOnClickListener { _ ->
            val name = v.account_name.text.toString()
            if (name.isEmpty())
                v.account_name.error = getString(R.string.login_account_name_required)
@@ -87,7 +88,7 @@ class AccountDetailsFragment : Fragment(), LoaderManager.LoaderCallbacks<CreateS
                else
                    Snackbar.make(v, R.string.login_account_not_created, Snackbar.LENGTH_LONG).show()
            }
        })
        }

        loaderManager.initLoader(0, null, this)

@@ -116,6 +117,21 @@ class AccountDetailsFragment : Fragment(), LoaderManager.LoaderCallbacks<CreateS

            view.create_account.isEnabled = true
        }

        if (activity!!.intent.getStringExtra(LoginActivity.SETUP_ACCOUNT_PROVIDER_TYPE) == LoginActivity.ACCOUNT_PROVIDER_EELO ||
                activity!!.intent.getStringExtra(LoginActivity.SETUP_ACCOUNT_PROVIDER_TYPE) == LoginActivity.ACCOUNT_PROVIDER_GOOGLE) {
            val name = view!!.account_name.text.toString()
            if (name.isEmpty())
                view!!.account_name.error = getString(R.string.login_account_name_required)
            else {
                val args = requireNotNull(arguments)
                if (createAccount(name, args.getSerializable(KEY_CONFIG) as DavResourceFinder.Configuration)) {
                    Toast.makeText(context, "Added account successfully", Toast.LENGTH_LONG).show()
                    requireActivity().setResult(Activity.RESULT_OK)
                    requireActivity().finish()
                }
            }
        }
    }

    override fun onLoaderReset(loader: Loader<CreateSettings>) {
+2 −0
Original line number Diff line number Diff line
@@ -46,12 +46,14 @@ class DetectConfigurationFragment : DialogFragment(), LoaderManager.LoaderCallba
        progress.setTitle(R.string.login_configuration_detection)
        progress.setMessage(getString(R.string.login_querying_server))
        progress.isIndeterminate = true
        progress.setCancelable(false)
        progress.setCanceledOnTouchOutside(false)
        return progress
    }

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        this.isCancelable = false
        loaderManager.initLoader(0, arguments, this)
    }

+2 −2
Original line number Diff line number Diff line
@@ -166,8 +166,8 @@
    <string name="login_account_name_required">Account name required</string>
    <string name="login_account_not_created">Account could not be created</string>

    <string name="login_configuration_detection">Configuration detection</string>
    <string name="login_querying_server">Please wait, querying server</string>
    <string name="login_configuration_detection">Add account</string>
    <string name="login_querying_server">Please wait, adding account</string>
    <string name="login_no_caldav_carddav">Couldn\'t find CalDAV or CardDAV service.</string>
    <string name="login_view_logs">View logs</string>