diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index eb198b8ea..b4eb138dc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -58,15 +58,6 @@ - - - - - - { - startActivity(SimpleSettingsActivity.newReaderSettingsIntent(this)) + startActivity(SettingsActivity.newReaderSettingsIntent(this)) } R.id.action_chapters -> { ChaptersBottomSheet.show( diff --git a/app/src/main/java/org/koitharu/kotatsu/reader/ui/SimpleSettingsActivity.kt b/app/src/main/java/org/koitharu/kotatsu/reader/ui/SimpleSettingsActivity.kt deleted file mode 100644 index 54a5201d2..000000000 --- a/app/src/main/java/org/koitharu/kotatsu/reader/ui/SimpleSettingsActivity.kt +++ /dev/null @@ -1,81 +0,0 @@ -package org.koitharu.kotatsu.reader.ui - -import android.content.Context -import android.content.Intent -import android.os.Bundle -import android.view.ViewGroup -import androidx.core.graphics.Insets -import androidx.core.view.updateLayoutParams -import androidx.core.view.updatePadding -import androidx.fragment.app.commit -import com.google.android.material.appbar.AppBarLayout -import org.koitharu.kotatsu.BuildConfig -import org.koitharu.kotatsu.R -import org.koitharu.kotatsu.base.ui.BaseActivity -import org.koitharu.kotatsu.databinding.ActivitySettingsSimpleBinding -import org.koitharu.kotatsu.main.ui.AppBarOwner -import org.koitharu.kotatsu.parsers.model.MangaSource -import org.koitharu.kotatsu.settings.* - -@Deprecated("") -class SimpleSettingsActivity : BaseActivity(), AppBarOwner { - - override val appBar: AppBarLayout - get() = binding.appbar - - override fun onCreate(savedInstanceState: Bundle?) { - super.onCreate(savedInstanceState) - setContentView(ActivitySettingsSimpleBinding.inflate(layoutInflater)) - supportActionBar?.setDisplayHomeAsUpEnabled(true) - supportFragmentManager.commit { - replace( - R.id.container, - when (intent?.action) { - Intent.ACTION_MANAGE_NETWORK_USAGE -> NetworkSettingsFragment() - ACTION_READER -> ReaderSettingsFragment() - ACTION_SUGGESTIONS -> SuggestionsSettingsFragment() - ACTION_SOURCE -> SourceSettingsFragment.newInstance( - intent.getSerializableExtra(EXTRA_SOURCE) as? MangaSource ?: MangaSource.LOCAL - ) - else -> SettingsHeadersFragment() - } - ) - } - } - - override fun onWindowInsetsChanged(insets: Insets) { - with(binding.toolbar) { - updatePadding( - left = insets.left, - right = insets.right - ) - updateLayoutParams { - topMargin = insets.top - } - } - } - - companion object { - - private const val ACTION_READER = - "${BuildConfig.APPLICATION_ID}.action.MANAGE_READER_SETTINGS" - private const val ACTION_SUGGESTIONS = - "${BuildConfig.APPLICATION_ID}.action.MANAGE_SUGGESTIONS" - private const val ACTION_SOURCE = - "${BuildConfig.APPLICATION_ID}.action.MANAGE_SOURCE_SETTINGS" - private const val EXTRA_SOURCE = "source" - - fun newReaderSettingsIntent(context: Context) = - Intent(context, SimpleSettingsActivity::class.java) - .setAction(ACTION_READER) - - fun newSuggestionsSettingsIntent(context: Context) = - Intent(context, SimpleSettingsActivity::class.java) - .setAction(ACTION_SUGGESTIONS) - - fun newSourceSettingsIntent(context: Context, source: MangaSource) = - Intent(context, SimpleSettingsActivity::class.java) - .setAction(ACTION_SOURCE) - .putExtra(EXTRA_SOURCE, source) - } -} \ No newline at end of file diff --git a/app/src/main/java/org/koitharu/kotatsu/remotelist/ui/RemoteListFragment.kt b/app/src/main/java/org/koitharu/kotatsu/remotelist/ui/RemoteListFragment.kt index 2df3aa5db..8c9cff562 100644 --- a/app/src/main/java/org/koitharu/kotatsu/remotelist/ui/RemoteListFragment.kt +++ b/app/src/main/java/org/koitharu/kotatsu/remotelist/ui/RemoteListFragment.kt @@ -9,7 +9,7 @@ import org.koitharu.kotatsu.R import org.koitharu.kotatsu.list.ui.MangaListFragment import org.koitharu.kotatsu.list.ui.filter.FilterBottomSheet import org.koitharu.kotatsu.parsers.model.MangaSource -import org.koitharu.kotatsu.reader.ui.SimpleSettingsActivity +import org.koitharu.kotatsu.settings.SettingsActivity import org.koitharu.kotatsu.utils.ext.serializableArgument import org.koitharu.kotatsu.utils.ext.withArgs @@ -34,10 +34,7 @@ class RemoteListFragment : MangaListFragment() { return when (item.itemId) { R.id.action_source_settings -> { startActivity( - SimpleSettingsActivity.newSourceSettingsIntent( - context ?: return false, - source, - ) + SettingsActivity.newSourceSettingsIntent(context ?: return false, source) ) true } diff --git a/app/src/main/java/org/koitharu/kotatsu/settings/NetworkSettingsFragment.kt b/app/src/main/java/org/koitharu/kotatsu/settings/NetworkSettingsFragment.kt deleted file mode 100644 index 8bfb2c3d6..000000000 --- a/app/src/main/java/org/koitharu/kotatsu/settings/NetworkSettingsFragment.kt +++ /dev/null @@ -1,12 +0,0 @@ -package org.koitharu.kotatsu.settings - -import android.os.Bundle -import org.koitharu.kotatsu.R -import org.koitharu.kotatsu.base.ui.BasePreferenceFragment - -class NetworkSettingsFragment : BasePreferenceFragment(R.string.settings) { - - override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { - //TODO https://developer.android.com/training/basics/network-ops/managing - } -} \ No newline at end of file diff --git a/app/src/main/java/org/koitharu/kotatsu/settings/SettingsActivity.kt b/app/src/main/java/org/koitharu/kotatsu/settings/SettingsActivity.kt index 03e1e0195..8b82b327c 100644 --- a/app/src/main/java/org/koitharu/kotatsu/settings/SettingsActivity.kt +++ b/app/src/main/java/org/koitharu/kotatsu/settings/SettingsActivity.kt @@ -15,11 +15,13 @@ import androidx.fragment.app.commit import androidx.preference.Preference import androidx.preference.PreferenceFragmentCompat import com.google.android.material.appbar.AppBarLayout +import org.koitharu.kotatsu.BuildConfig import org.koitharu.kotatsu.R import org.koitharu.kotatsu.base.ui.BaseActivity import org.koitharu.kotatsu.base.ui.util.RecyclerViewOwner import org.koitharu.kotatsu.databinding.ActivitySettingsBinding import org.koitharu.kotatsu.main.ui.AppBarOwner +import org.koitharu.kotatsu.parsers.model.MangaSource import org.koitharu.kotatsu.utils.ext.isScrolledToTop class SettingsActivity : @@ -37,9 +39,7 @@ class SettingsActivity : supportActionBar?.setDisplayHomeAsUpEnabled(true) if (supportFragmentManager.findFragmentById(R.id.container) == null) { - supportFragmentManager.commit { - replace(R.id.container, SettingsHeadersFragment()) - } + openDefaultFragment() } } @@ -114,8 +114,41 @@ class SettingsActivity : } } + private fun openDefaultFragment() { + val fragment = when (intent?.action) { + ACTION_READER -> ReaderSettingsFragment() + ACTION_SUGGESTIONS -> SuggestionsSettingsFragment() + ACTION_SOURCE -> SourceSettingsFragment.newInstance( + intent.getSerializableExtra(EXTRA_SOURCE) as? MangaSource ?: MangaSource.LOCAL + ) + else -> SettingsHeadersFragment() + } + supportFragmentManager.commit { + setReorderingAllowed(true) + replace(R.id.container, fragment) + } + } + companion object { + private const val ACTION_READER = "${BuildConfig.APPLICATION_ID}.action.MANAGE_READER_SETTINGS" + private const val ACTION_SUGGESTIONS = "${BuildConfig.APPLICATION_ID}.action.MANAGE_SUGGESTIONS" + private const val ACTION_SOURCE = "${BuildConfig.APPLICATION_ID}.action.MANAGE_SOURCE_SETTINGS" + private const val EXTRA_SOURCE = "source" + fun newIntent(context: Context) = Intent(context, SettingsActivity::class.java) + + fun newReaderSettingsIntent(context: Context) = + Intent(context, SettingsActivity::class.java) + .setAction(ACTION_READER) + + fun newSuggestionsSettingsIntent(context: Context) = + Intent(context, SettingsActivity::class.java) + .setAction(ACTION_SUGGESTIONS) + + fun newSourceSettingsIntent(context: Context, source: MangaSource) = + Intent(context, SettingsActivity::class.java) + .setAction(ACTION_SOURCE) + .putExtra(EXTRA_SOURCE, source) } } \ No newline at end of file diff --git a/app/src/main/java/org/koitharu/kotatsu/suggestions/ui/SuggestionsFragment.kt b/app/src/main/java/org/koitharu/kotatsu/suggestions/ui/SuggestionsFragment.kt index 507c2a142..0e7eef63a 100644 --- a/app/src/main/java/org/koitharu/kotatsu/suggestions/ui/SuggestionsFragment.kt +++ b/app/src/main/java/org/koitharu/kotatsu/suggestions/ui/SuggestionsFragment.kt @@ -8,7 +8,7 @@ import com.google.android.material.snackbar.Snackbar import org.koin.androidx.viewmodel.ext.android.viewModel import org.koitharu.kotatsu.R import org.koitharu.kotatsu.list.ui.MangaListFragment -import org.koitharu.kotatsu.reader.ui.SimpleSettingsActivity +import org.koitharu.kotatsu.settings.SettingsActivity class SuggestionsFragment : MangaListFragment() { @@ -37,7 +37,7 @@ class SuggestionsFragment : MangaListFragment() { true } R.id.action_settings -> { - startActivity(SimpleSettingsActivity.newSuggestionsSettingsIntent(requireContext())) + startActivity(SettingsActivity.newSuggestionsSettingsIntent(requireContext())) true } else -> super.onOptionsItemSelected(item) diff --git a/app/src/main/res/layout/activity_settings_simple.xml b/app/src/main/res/layout/activity_settings_simple.xml deleted file mode 100644 index fa9c5d762..000000000 --- a/app/src/main/res/layout/activity_settings_simple.xml +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - \ No newline at end of file