Feat: Added setupOrientation to force portrait mode.
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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 =
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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
|
||||
) {
|
||||
|
||||
@@ -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!!
|
||||
|
||||
@@ -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!!
|
||||
|
||||
@@ -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!!
|
||||
|
||||
@@ -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")
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user