diff --git a/app/src/main/java/com/vanced/manager/Adapter/SectionPageAdapter.kt b/app/src/main/java/com/vanced/manager/Adapter/SectionPageAdapter.kt index 9a75bd42..221eff7b 100644 --- a/app/src/main/java/com/vanced/manager/Adapter/SectionPageAdapter.kt +++ b/app/src/main/java/com/vanced/manager/Adapter/SectionPageAdapter.kt @@ -1,27 +1,24 @@ package com.vanced.manager.Adapter import androidx.fragment.app.Fragment +import androidx.fragment.app.FragmentActivity import androidx.fragment.app.FragmentManager import androidx.fragment.app.FragmentPagerAdapter +import androidx.viewpager2.adapter.FragmentStateAdapter +import com.vanced.manager.ui.fragments.MicrogChangelogFragment +import com.vanced.manager.ui.fragments.VancedChangelogFragment -class SectionPageAdapter(fm: FragmentManager) : FragmentPagerAdapter(fm, BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT) { +class SectionPageAdapter(fa: FragmentActivity) : FragmentStateAdapter(fa) { - private val fragmentList : MutableList = ArrayList() - private val titleList : MutableList = ArrayList() + override fun getItemCount(): Int = 2 - override fun getCount(): Int { - return fragmentList.size + override fun createFragment(position: Int): Fragment { + var fragment: Fragment? = null + when (position) { + 0 -> fragment = VancedChangelogFragment() + 1 -> fragment = MicrogChangelogFragment() + } + return fragment!! } - override fun getItem(position: Int): Fragment { - return fragmentList[position] - } - - override fun getPageTitle(position: Int): CharSequence? { - return titleList[position] - } - fun addFragment(fragment: Fragment, title:String) { - fragmentList.add(fragment) - titleList.add(title) - } } \ No newline at end of file diff --git a/app/src/main/java/com/vanced/manager/ui/MainActivity.kt b/app/src/main/java/com/vanced/manager/ui/MainActivity.kt index 11dd8b58..b7ddcea7 100644 --- a/app/src/main/java/com/vanced/manager/ui/MainActivity.kt +++ b/app/src/main/java/com/vanced/manager/ui/MainActivity.kt @@ -15,11 +15,8 @@ import com.vanced.manager.ui.core.ThemeActivity class MainActivity : ThemeActivity() { - lateinit var homeFragment: HomeFragment - lateinit var settingsFragment: SettingsFragment - override fun onCreate(savedInstanceState: Bundle?) { - super.onCreate(null) + super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) val toolbar : MaterialToolbar = findViewById(R.id.home_toolbar) @@ -33,11 +30,10 @@ class MainActivity : ThemeActivity() { val navView : BottomNavigationView = findViewById(R.id.bottom_nav) - homeFragment = HomeFragment() supportFragmentManager .beginTransaction() - .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN) - .replace(R.id.frame_layout, homeFragment) + .setCustomAnimations(R.anim.fragment_enter, R.anim.fragment_exit) + .replace(R.id.frame_layout, HomeFragment()) .commit() navView.setOnNavigationItemSelectedListener { item -> @@ -46,21 +42,19 @@ class MainActivity : ThemeActivity() { R.id.navigation_home -> { - homeFragment = HomeFragment() supportFragmentManager .beginTransaction() - .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN) - .replace(R.id.frame_layout, homeFragment) + .setCustomAnimations(R.anim.fragment_enter, R.anim.fragment_exit) + .replace(R.id.frame_layout, HomeFragment()) .commit() return@setOnNavigationItemSelectedListener true } R.id.navigation_settings -> { - settingsFragment = SettingsFragment() supportFragmentManager .beginTransaction() - .setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN) - .replace(R.id.frame_layout, settingsFragment) + .setCustomAnimations(R.anim.fragment_enter, R.anim.fragment_exit) + .replace(R.id.frame_layout, SettingsFragment()) .commit() return@setOnNavigationItemSelectedListener true } diff --git a/app/src/main/java/com/vanced/manager/ui/VancedInstallActivity.kt b/app/src/main/java/com/vanced/manager/ui/VancedInstallActivity.kt index ef7f0750..45d2a070 100644 --- a/app/src/main/java/com/vanced/manager/ui/VancedInstallActivity.kt +++ b/app/src/main/java/com/vanced/manager/ui/VancedInstallActivity.kt @@ -10,7 +10,6 @@ import com.vanced.manager.ui.fragments.VancedThemeSelectionFragment class VancedInstallActivity : ThemeActivity() { - lateinit var vancedThemeSelectionFragment: VancedThemeSelectionFragment override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_vanced_install) @@ -25,11 +24,10 @@ class VancedInstallActivity : ThemeActivity() { supportActionBar!!.title = "Install" supportActionBar!!.setDisplayHomeAsUpEnabled(true) - vancedThemeSelectionFragment = VancedThemeSelectionFragment() supportFragmentManager .beginTransaction() .setCustomAnimations(android.R.anim.fade_in, R.animator.fragment_exit) - .replace(R.id.vanced_install_frame, vancedThemeSelectionFragment) + .replace(R.id.vanced_install_frame, VancedThemeSelectionFragment()) .commit() } } diff --git a/app/src/main/java/com/vanced/manager/ui/core/Theme.kt b/app/src/main/java/com/vanced/manager/ui/core/Theme.kt index 681215a3..e443ba98 100644 --- a/app/src/main/java/com/vanced/manager/ui/core/Theme.kt +++ b/app/src/main/java/com/vanced/manager/ui/core/Theme.kt @@ -3,6 +3,7 @@ package com.vanced.manager.ui.core import android.annotation.SuppressLint import android.app.ActivityManager import android.content.SharedPreferences +import android.content.res.Configuration import android.os.Bundle import androidx.appcompat.app.AppCompatActivity import androidx.preference.PreferenceManager @@ -33,6 +34,14 @@ open class ThemeActivity : AppCompatActivity() { when (currentTheme) { "LIGHT" -> setTheme(R.style.LightTheme_Blue) "DARK" -> setTheme(R.style.DarkTheme_Blue) + "FOLLOW" -> { + when (resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK) { + Configuration.UI_MODE_NIGHT_YES -> setTheme(R.style.DarkTheme_Blue) + Configuration.UI_MODE_NIGHT_NO -> setTheme(R.style.LightTheme_Blue) + else -> setTheme(R.style.LightTheme_Blue) + } + } + else -> setTheme(R.style.LightTheme_Blue) } } } \ No newline at end of file diff --git a/app/src/main/java/com/vanced/manager/ui/fragments/HomeFragment.kt b/app/src/main/java/com/vanced/manager/ui/fragments/HomeFragment.kt index 652ea042..b5390819 100644 --- a/app/src/main/java/com/vanced/manager/ui/fragments/HomeFragment.kt +++ b/app/src/main/java/com/vanced/manager/ui/fragments/HomeFragment.kt @@ -12,12 +12,19 @@ import android.content.pm.PackageManager import android.content.Intent import androidx.browser.customtabs.CustomTabsIntent import androidx.core.content.ContextCompat +import androidx.fragment.app.FragmentActivity +import androidx.viewpager2.widget.ViewPager2 +import com.google.android.material.tabs.TabLayout +import com.google.android.material.tabs.TabLayoutMediator +import com.vanced.manager.Adapter.SectionPageAdapter import com.vanced.manager.R import com.vanced.manager.ui.VancedInstallActivity import com.vanced.manager.ui.MainActivity class HomeFragment : Fragment() { + private lateinit var viewPager: ViewPager2 + override fun onCreateView( inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle? @@ -39,6 +46,18 @@ class HomeFragment : Fragment() { super.onViewCreated(view, savedInstanceState) + viewPager = view.findViewById(R.id.viewpager) + viewPager.adapter = SectionPageAdapter(FragmentActivity()) + + val tabLayout = view.findViewById(R.id.tablayout) as TabLayout + + TabLayoutMediator(tabLayout, viewPager) { tab, position -> + when (position) { + 0 -> tab.text = "Vanced" + 1 -> tab.text = "MicroG" + } + }.attach() + val builder = CustomTabsIntent.Builder() val pm = activity?.packageManager diff --git a/app/src/main/java/com/vanced/manager/ui/fragments/MicrogChangelogFragment.kt b/app/src/main/java/com/vanced/manager/ui/fragments/MicrogChangelogFragment.kt index 69ff7ff0..536e087c 100644 --- a/app/src/main/java/com/vanced/manager/ui/fragments/MicrogChangelogFragment.kt +++ b/app/src/main/java/com/vanced/manager/ui/fragments/MicrogChangelogFragment.kt @@ -16,7 +16,6 @@ class MicrogChangelogFragment : Fragment() { inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle? ): View? { - // Inflate the layout for this fragment return inflater.inflate(R.layout.fragment_microg_changelog, container, false) } diff --git a/app/src/main/java/com/vanced/manager/ui/fragments/SettingsFragment.kt b/app/src/main/java/com/vanced/manager/ui/fragments/SettingsFragment.kt index 237c616d..2de22a0f 100644 --- a/app/src/main/java/com/vanced/manager/ui/fragments/SettingsFragment.kt +++ b/app/src/main/java/com/vanced/manager/ui/fragments/SettingsFragment.kt @@ -1,5 +1,6 @@ package com.vanced.manager.ui.fragments +import android.content.res.Configuration import android.os.Bundle import androidx.preference.ListPreference import androidx.preference.PreferenceFragmentCompat @@ -25,10 +26,26 @@ class SettingsFragment : PreferenceFragmentCompat() { activity?.setTheme(R.style.DarkTheme_Blue) activity?.recreate() } - else -> { - activity?.setTheme(R.style.LightTheme_Blue) - activity?.recreate() + "FOLLOW" -> { + when (resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK) { + Configuration.UI_MODE_NIGHT_YES ->{ + activity?.setTheme(R.style.DarkTheme_Blue) + activity?.recreate() + } + Configuration.UI_MODE_NIGHT_NO -> { + activity?.setTheme(R.style.LightTheme_Blue) + activity?.recreate() + } + else -> { + activity?.setTheme(R.style.LightTheme_Blue) + activity?.recreate() + } + } } + else -> { + activity?.setTheme(R.style.LightTheme_Blue) + activity?.recreate() + } } true } diff --git a/app/src/main/java/com/vanced/manager/ui/fragments/VancedChangelogFragment.kt b/app/src/main/java/com/vanced/manager/ui/fragments/VancedChangelogFragment.kt index 0e27f0c3..d932450b 100644 --- a/app/src/main/java/com/vanced/manager/ui/fragments/VancedChangelogFragment.kt +++ b/app/src/main/java/com/vanced/manager/ui/fragments/VancedChangelogFragment.kt @@ -16,7 +16,6 @@ class VancedChangelogFragment : Fragment() { inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle? ): View? { - // Inflate the layout for this fragment return inflater.inflate(R.layout.fragment_vanced_changelog, container, false) } diff --git a/app/src/main/res/animator/fragment_enter.xml b/app/src/main/res/animator/fragment_enter.xml index f11c36e0..58af02ce 100644 --- a/app/src/main/res/animator/fragment_enter.xml +++ b/app/src/main/res/animator/fragment_enter.xml @@ -2,7 +2,7 @@ \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_cloud_upload_black_24dp.xml b/app/src/main/res/drawable/ic_cloud_upload_black_24dp.xml index 08628166..a9a042ad 100644 --- a/app/src/main/res/drawable/ic_cloud_upload_black_24dp.xml +++ b/app/src/main/res/drawable/ic_cloud_upload_black_24dp.xml @@ -4,6 +4,6 @@ android:viewportWidth="24.0" android:viewportHeight="24.0"> diff --git a/app/src/main/res/drawable/ic_info_black_24dp.xml b/app/src/main/res/drawable/ic_info_black_24dp.xml index 7592f7bd..7c150864 100644 --- a/app/src/main/res/drawable/ic_info_black_24dp.xml +++ b/app/src/main/res/drawable/ic_info_black_24dp.xml @@ -4,6 +4,6 @@ android:viewportWidth="24.0" android:viewportHeight="24.0"> diff --git a/app/src/main/res/drawable/rectangle_2.xml b/app/src/main/res/drawable/rectangle_2.xml old mode 100755 new mode 100644 diff --git a/app/src/main/res/layout/activity_about.xml b/app/src/main/res/layout/activity_about.xml index 63a2a5fc..79f6ab57 100644 --- a/app/src/main/res/layout/activity_about.xml +++ b/app/src/main/res/layout/activity_about.xml @@ -21,7 +21,8 @@ android:id="@+id/about_toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" - app:titleTextColor="?attr/toolbarBackIcon" + app:titleTextColor="?attr/toolbarIconColor" + app:titleTextAppearance="@font/exo_bold" app:layout_constraintTop_toTopOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent" diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 5f770a8d..18c52ec7 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -1,5 +1,5 @@ - - + android:layout_height="wrap_content" + android:elevation="1dp" + android:background="?colorSurface" + android:layout_alignParentTop="true"> + + + + + android:layout_above="@id/bottom_nav" + android:layout_below="@id/home_appbar"> - \ No newline at end of file + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_vanced_install.xml b/app/src/main/res/layout/activity_vanced_install.xml index 493ddef0..1fb6eccf 100644 --- a/app/src/main/res/layout/activity_vanced_install.xml +++ b/app/src/main/res/layout/activity_vanced_install.xml @@ -1,5 +1,5 @@ - + android:layout_alignParentTop="true"> @@ -31,11 +28,8 @@ android:id="@+id/vanced_install_frame" android:layout_width="match_parent" android:layout_height="match_parent" - android:layout_marginTop="65dp" - app:layout_constraintTop_toTopOf="parent" - app:layout_constraintStart_toStartOf="parent" - app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintBottom_toBottomOf="parent"/> + android:layout_below="@id/vanced_install_appbar" + android:layout_alignParentBottom="true"/> - \ No newline at end of file + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_language_scrollview.xml b/app/src/main/res/layout/fragment_language_scrollview.xml index d16641b1..47c57ffa 100644 --- a/app/src/main/res/layout/fragment_language_scrollview.xml +++ b/app/src/main/res/layout/fragment_language_scrollview.xml @@ -17,7 +17,7 @@ app:layout_constraintTop_toTopOf="parent"> diff --git a/app/src/main/res/layout/fragment_microg_changelog.xml b/app/src/main/res/layout/fragment_microg_changelog.xml index 3bc5a139..8f404ceb 100644 --- a/app/src/main/res/layout/fragment_microg_changelog.xml +++ b/app/src/main/res/layout/fragment_microg_changelog.xml @@ -9,6 +9,6 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:textSize="32sp" - android:text="Same-but-for-microg" /> + android:text="Same but for microg" /> \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_vanced_changelog.xml b/app/src/main/res/layout/fragment_vanced_changelog.xml index e204fe57..58f0230c 100644 --- a/app/src/main/res/layout/fragment_vanced_changelog.xml +++ b/app/src/main/res/layout/fragment_vanced_changelog.xml @@ -5,11 +5,10 @@ android:layout_height="match_parent" tools:context=".ui.fragments.VancedChangelogFragment"> - + android:text="This is a hardcoded string" /> \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_vanced_language_selection.xml b/app/src/main/res/layout/fragment_vanced_language_selection.xml index 74c7f320..2f7289d4 100644 --- a/app/src/main/res/layout/fragment_vanced_language_selection.xml +++ b/app/src/main/res/layout/fragment_vanced_language_selection.xml @@ -4,11 +4,14 @@ xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" - android:layout_height="match_parent"> + android:layout_height="wrap_content"> diff --git a/app/src/main/res/layout/fragment_vanced_theme_selection.xml b/app/src/main/res/layout/fragment_vanced_theme_selection.xml index aceacd36..30cdaa50 100644 --- a/app/src/main/res/layout/fragment_vanced_theme_selection.xml +++ b/app/src/main/res/layout/fragment_vanced_theme_selection.xml @@ -2,12 +2,16 @@ + android:layout_height="wrap_content"> + android:layout_height="wrap_content"> - - + + - + android:background="?colorSurfaceVariant" + app:tabMode="scrollable" + app:tabIndicatorColor="?colorPrimary" + app:tabSelectedTextColor="?colorPrimary" + app:tabTextColor="?colorPrimary" + app:layout_constraintTop_toBottomOf="@id/changelog_text" /> - - - + android:layout_height="wrap_content" + app:layout_constraintTop_toBottomOf="@id/tablayout"/> diff --git a/app/src/main/res/layout/include_microg.xml b/app/src/main/res/layout/include_microg.xml index 75a2fdfc..6094a9f4 100644 --- a/app/src/main/res/layout/include_microg.xml +++ b/app/src/main/res/layout/include_microg.xml @@ -91,7 +91,7 @@ style="@style/Widget.AppCompat.Button.Borderless.Colored" android:layout_width="117dp" android:layout_height="40dp" - android:layout_marginEnd="@dimen/eightdp" + android:layout_marginEnd="4dp" android:fontFamily="@font/exo_semibold" android:text="@string/install" android:textAllCaps="false" @@ -107,7 +107,7 @@ style="@style/Widget.AppCompat.Button.Borderless.Colored" android:layout_width="30dp" android:layout_height="40dp" - android:layout_marginEnd="@dimen/eightdp" + android:layout_marginEnd="4dp" android:layout_marginBottom="8dp" android:fontFamily="@font/exo_semibold" app:backgroundTint="?colorPrimary" @@ -122,7 +122,7 @@ style="@style/Widget.AppCompat.Button.Borderless.Colored" android:layout_width="117dp" android:layout_height="40dp" - android:layout_marginEnd="@dimen/eightdp" + android:layout_marginEnd="4dp" android:layout_marginBottom="8dp" android:fontFamily="@font/exo_semibold" android:text="@string/uninstall" diff --git a/app/src/main/res/layout/include_vanced.xml b/app/src/main/res/layout/include_vanced.xml index 75196490..b6406e2d 100644 --- a/app/src/main/res/layout/include_vanced.xml +++ b/app/src/main/res/layout/include_vanced.xml @@ -95,7 +95,7 @@ android:layout_height="40dp" android:text="@string/install" android:textAllCaps="false" - android:layout_marginEnd="@dimen/eightdp" + android:layout_marginEnd="4dp" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintTop_toTopOf="parent" app:layout_constraintHorizontal_bias="1.0" @@ -108,7 +108,7 @@ style="@style/Widget.AppCompat.Button.Borderless.Colored" android:layout_width="117dp" android:layout_height="40dp" - android:layout_marginEnd="@dimen/eightdp" + android:layout_marginEnd="4dp" android:layout_marginBottom="8dp" android:fontFamily="@font/exo_semibold" android:text="@string/uninstall" diff --git a/app/src/main/res/values-night/themes.xml b/app/src/main/res/values-night/themes.xml index d441fbda..b1979f3b 100644 --- a/app/src/main/res/values-night/themes.xml +++ b/app/src/main/res/values-night/themes.xml @@ -21,7 +21,7 @@ #808080 #66808080 ?colorPrimaryVariant - ?colorOnPrimary + ?colorOnPrimary diff --git a/app/src/main/res/values/arrays.xml b/app/src/main/res/values/arrays.xml index 01386c0a..a79bdeb9 100644 --- a/app/src/main/res/values/arrays.xml +++ b/app/src/main/res/values/arrays.xml @@ -4,11 +4,13 @@ "Light theme" "Dark theme" + Follow System LIGHT DARK + FOLLOW diff --git a/app/src/main/res/values/attrs.xml b/app/src/main/res/values/attrs.xml index 4624c0db..f4b2bf53 100644 --- a/app/src/main/res/values/attrs.xml +++ b/app/src/main/res/values/attrs.xml @@ -8,6 +8,6 @@ - + \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index e0f2624a..3150a4c5 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -29,7 +29,7 @@ Theme - - Hello blank fragment + + diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index 989fec2e..a3a3db9b 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -1,6 +1,7 @@ - diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml index 2cd68792..e9a009d8 100644 --- a/app/src/main/res/values/themes.xml +++ b/app/src/main/res/values/themes.xml @@ -21,7 +21,7 @@ #808080 #66808080 ?colorPrimaryVariant - #111111 + #111111 diff --git a/app/src/main/res/xml/preferences.xml b/app/src/main/res/xml/preferences.xml index 3769a8b3..0459bc10 100644 --- a/app/src/main/res/xml/preferences.xml +++ b/app/src/main/res/xml/preferences.xml @@ -4,7 +4,8 @@ + android:title="Check for updates" + android:icon="@drawable/ic_cloud_upload_black_24dp"/> @@ -16,7 +17,7 @@ android:summary="Choose your preferred theme" android:entries="@array/theme_modes" android:entryValues="@array/theme_modes_values" - android:defaultValue="DARK"/> + android:defaultValue="LIGHT"/>