Feat: Added setupOrientation to force portrait mode.

This commit is contained in:
HeCodes2Much
2024-05-11 19:46:32 +01:00
parent 904823d64c
commit 60114f6e27
8 changed files with 36 additions and 19 deletions

View File

@@ -4,7 +4,8 @@
<uses-permission android:name="android.permission.SET_WALLPAPER" />
<uses-permission android:name="android.permission.EXPAND_STATUS_BAR" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"
android:maxSdkVersion="32" />
<uses-permission android:name="android.permission.USE_BIOMETRIC" />
<uses-permission

View File

@@ -14,11 +14,13 @@ import android.os.Build
import android.provider.AlarmClock
import android.provider.CalendarContract
import android.provider.Settings
import android.util.DisplayMetrics
import android.util.Log
import android.view.Gravity
import android.view.View
import android.view.Window
import android.view.WindowInsets
import android.view.WindowManager
import android.view.inputmethod.InputMethodManager
import android.widget.TextView
import android.widget.Toast
@@ -32,6 +34,8 @@ import com.github.droidworksstudio.launcher.ui.activities.FakeHomeActivity
import java.util.Calendar
import java.util.Date
import javax.inject.Inject
import kotlin.math.pow
import kotlin.math.sqrt
class AppHelper @Inject constructor() {
@@ -245,6 +249,18 @@ class AppHelper @Inject constructor() {
}
}
fun isTablet(context: Context): Boolean {
val windowManager = context.getSystemService(Context.WINDOW_SERVICE) as WindowManager
val metrics = DisplayMetrics()
@Suppress("DEPRECATION")
windowManager.defaultDisplay.getMetrics(metrics)
val widthInches = metrics.widthPixels / metrics.xdpi
val heightInches = metrics.heightPixels / metrics.ydpi
val diagonalInches = sqrt(widthInches.toDouble().pow(2.0) + heightInches.toDouble().pow(2.0))
if (diagonalInches >= 7.0) return true
return false
}
fun showSoftKeyboard(context: Context, view: View) {
if (view.requestFocus()) {
val inputMethodManager: InputMethodManager =

View File

@@ -1,5 +1,8 @@
package com.github.droidworksstudio.launcher.ui.activities
import android.annotation.SuppressLint
import android.content.pm.ActivityInfo
import android.os.Build
import android.os.Bundle
import android.util.Log
import android.view.Menu
@@ -54,6 +57,7 @@ class MainActivity : AppCompatActivity() {
initializeDependencies()
setupNavController()
setupViewPagerAdapter()
setupOrientation()
}
private fun initializeDependencies() {
@@ -96,6 +100,12 @@ class MainActivity : AppCompatActivity() {
offscreenPageLimit = 1
}
}
@SuppressLint("SourceLockedOrientationActivity")
private fun setupOrientation() {
if (appHelper.isTablet(this)) return
if (Build.VERSION.SDK_INT != Build.VERSION_CODES.O)
requestedOrientation = ActivityInfo.SCREEN_ORIENTATION_PORTRAIT
}
override fun onCreateOptionsMenu(menu: Menu): Boolean {
menuInflater.inflate(R.menu.menu_main, menu)

View File

@@ -1,6 +1,5 @@
package com.github.droidworksstudio.launcher.ui.bottomsheetdialog
import android.content.Context
import android.os.Build
import android.os.Bundle
import android.view.LayoutInflater
@@ -13,7 +12,6 @@ import com.google.android.material.bottomsheet.BottomSheetDialogFragment
import com.google.android.material.dialog.MaterialAlertDialogBuilder
import com.github.droidworksstudio.launcher.R
import com.github.droidworksstudio.launcher.databinding.BottomsheetdialogAlignmentSettingsBinding
import com.github.droidworksstudio.launcher.databinding.BottomsheetdialogColorSettingsBinding
import com.github.droidworksstudio.launcher.helper.AppHelper
import com.github.droidworksstudio.launcher.helper.BottomDialogHelper
import com.github.droidworksstudio.launcher.helper.PreferenceHelper
@@ -22,7 +20,7 @@ import dagger.hilt.android.AndroidEntryPoint
import javax.inject.Inject
@AndroidEntryPoint
class AlignmentBottomSheetDialogFragment(context: Context) : BottomSheetDialogFragment() {
class AlignmentBottomSheetDialogFragment : BottomSheetDialogFragment() {
private var _binding: BottomsheetdialogAlignmentSettingsBinding? = null
private val binding get() = _binding!!
@@ -113,7 +111,6 @@ class AlignmentBottomSheetDialogFragment(context: Context) : BottomSheetDialogFr
REQUEST_KEY_APP_ALIGNMENT -> {
setAlignment(
selectedAlignment,
selectedItem,
gravity,
binding.selectAppTextSize
)
@@ -122,7 +119,6 @@ class AlignmentBottomSheetDialogFragment(context: Context) : BottomSheetDialogFr
REQUEST_KEY_TIME_ALIGNMENT -> {
setAlignment(
selectedAlignment,
selectedItem,
gravity,
binding.selectTimeTextSize
)
@@ -131,7 +127,6 @@ class AlignmentBottomSheetDialogFragment(context: Context) : BottomSheetDialogFr
REQUEST_KEY_DATE_ALIGNMENT -> {
setAlignment(
selectedAlignment,
selectedItem,
gravity,
binding.selectDateTextSize
)
@@ -140,7 +135,6 @@ class AlignmentBottomSheetDialogFragment(context: Context) : BottomSheetDialogFr
REQUEST_KEY_WORD_ALIGNMENT -> {
setAlignment(
selectedAlignment,
selectedItem,
gravity,
binding.selectWordTextSize
)
@@ -152,7 +146,6 @@ class AlignmentBottomSheetDialogFragment(context: Context) : BottomSheetDialogFr
private fun setAlignment(
alignmentType: String,
selectedItem: String,
gravity: Int,
textView: TextView
) {

View File

@@ -1,6 +1,5 @@
package com.github.droidworksstudio.launcher.ui.bottomsheetdialog
import android.content.Context
import android.graphics.Color
import android.os.Build
import android.os.Bundle
@@ -22,7 +21,7 @@ import net.mm2d.color.chooser.ColorChooserDialog
import javax.inject.Inject
@AndroidEntryPoint
class ColorBottomSheetDialogFragment(context: Context) : BottomSheetDialogFragment() {
class ColorBottomSheetDialogFragment : BottomSheetDialogFragment() {
private var _binding: BottomsheetdialogColorSettingsBinding? = null
private val binding get() = _binding!!

View File

@@ -1,6 +1,5 @@
package com.github.droidworksstudio.launcher.ui.bottomsheetdialog
import android.content.Context
import android.content.DialogInterface
import android.os.Build
import android.os.Bundle
@@ -17,7 +16,7 @@ import com.github.droidworksstudio.launcher.viewmodel.PreferenceViewModel
import dagger.hilt.android.AndroidEntryPoint
import javax.inject.Inject
@AndroidEntryPoint
class PaddingBottomSheetDialogFragment(context: Context) : BottomSheetDialogFragment() {
class PaddingBottomSheetDialogFragment : BottomSheetDialogFragment() {
private var _binding: BottomsheetdialogPaddingSettingsBinding? = null
private val binding get() = _binding!!

View File

@@ -1,6 +1,5 @@
package com.github.droidworksstudio.launcher.ui.bottomsheetdialog
import android.content.Context
import android.content.DialogInterface
import android.os.Build
import android.os.Bundle
@@ -17,7 +16,7 @@ import com.github.droidworksstudio.launcher.viewmodel.PreferenceViewModel
import dagger.hilt.android.AndroidEntryPoint
import javax.inject.Inject
@AndroidEntryPoint
class TextBottomSheetDialogFragment(context: Context) : BottomSheetDialogFragment() {
class TextBottomSheetDialogFragment : BottomSheetDialogFragment() {
private var _binding: BottomsheetdialogTextSettingsBinding? = null
private val binding get() = _binding!!

View File

@@ -104,22 +104,22 @@ class SettingsFragment : Fragment(), ScrollEventListener {
}
binding.selectAppearanceTextSize.setOnClickListener {
val bottomSheetFragment = TextBottomSheetDialogFragment(this.requireContext())
val bottomSheetFragment = TextBottomSheetDialogFragment()
bottomSheetFragment.show(parentFragmentManager, "BottomSheetDialog")
}
binding.selectAppearanceAlignment.setOnClickListener {
val bottomSheetFragment = AlignmentBottomSheetDialogFragment(this.requireContext())
val bottomSheetFragment = AlignmentBottomSheetDialogFragment()
bottomSheetFragment.show(parentFragmentManager, "BottomSheetDialog")
}
binding.selectAppearancePadding.setOnClickListener {
val bottomSheetFragment = PaddingBottomSheetDialogFragment(this.requireContext())
val bottomSheetFragment = PaddingBottomSheetDialogFragment()
bottomSheetFragment.show(parentFragmentManager, "BottomSheetDialog")
}
binding.selectAppearanceColor.setOnClickListener {
val bottomSheetFragment = ColorBottomSheetDialogFragment(this.requireContext())
val bottomSheetFragment = ColorBottomSheetDialogFragment()
bottomSheetFragment.show(parentFragmentManager, "BottomSheetDialog")
}