From e3dc70bc11acf981153d8ea450d5553833f4b855 Mon Sep 17 00:00:00 2001 From: Tom Hacohen Date: Sun, 1 Nov 2020 11:28:04 +0200 Subject: [PATCH] Fix crashes with fragments that don't have a default constructor. --- .../syncadapter/ui/MigrateV2Activity.kt | 110 +++++++++++++++--- .../ui/etebase/CollectionActivity.kt | 2 +- .../ui/etebase/CollectionItemFragment.kt | 42 ++++++- .../ui/etebase/CollectionMembersFragment.kt | 21 +++- .../ui/etebase/EditCollectionFragment.kt | 14 ++- .../ui/etebase/ImportCollectionFragment.kt | 4 +- .../ui/etebase/ItemRevisionsListFragment.kt | 16 ++- .../ui/etebase/ListEntriesFragment.kt | 2 +- .../syncadapter/ui/etebase/SignupFragment.kt | 27 ++++- .../ui/etebase/ViewCollectionFragment.kt | 2 +- .../ui/importlocal/ImportActivity.kt | 4 +- .../ui/importlocal/ImportFragment.kt | 17 ++- .../LocalCalendarImportFragment.kt | 12 +- .../importlocal/LocalContactImportFragment.kt | 12 +- .../ui/setup/LoginCredentialsFragment.kt | 2 +- 15 files changed, 240 insertions(+), 47 deletions(-) diff --git a/app/src/main/java/com/etesync/syncadapter/ui/MigrateV2Activity.kt b/app/src/main/java/com/etesync/syncadapter/ui/MigrateV2Activity.kt index e400ccd7..ced2852e 100644 --- a/app/src/main/java/com/etesync/syncadapter/ui/MigrateV2Activity.kt +++ b/app/src/main/java/com/etesync/syncadapter/ui/MigrateV2Activity.kt @@ -60,7 +60,7 @@ class MigrateV2Activity : BaseActivity() { if (savedInstanceState == null) { setTitle(R.string.migrate_v2_wizard_welcome_title) supportFragmentManager.commit { - replace(R.id.fragment_container, WizardWelcomeFragment(accountV1)) + replace(R.id.fragment_container, WizardWelcomeFragment.newInstance(accountV1)) } } } @@ -85,7 +85,9 @@ fun reportErrorHelper(context: Context, e: Throwable) { .setPositiveButton(android.R.string.yes) { _, _ -> }.show() } -class WizardWelcomeFragment(private val accountV1: Account) : Fragment() { +class WizardWelcomeFragment : Fragment() { + internal lateinit var accountV1: Account + override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? { val ret = inflater.inflate(R.layout.migrate_v2_wizard_welcome, container, false) @@ -101,21 +103,29 @@ class WizardWelcomeFragment(private val accountV1: Account) : Fragment() { private fun initUi(inflater: LayoutInflater, v: View) { v.findViewById