diff --git a/app/src/main/java/net/vonforst/evmap/fragment/ChargepriceFragment.kt b/app/src/main/java/net/vonforst/evmap/fragment/ChargepriceFragment.kt index 3f1eea56..60f964f3 100644 --- a/app/src/main/java/net/vonforst/evmap/fragment/ChargepriceFragment.kt +++ b/app/src/main/java/net/vonforst/evmap/fragment/ChargepriceFragment.kt @@ -2,10 +2,7 @@ package net.vonforst.evmap.fragment import android.annotation.SuppressLint import android.os.Bundle -import android.view.LayoutInflater -import android.view.MotionEvent -import android.view.View -import android.view.ViewGroup +import android.view.* import androidx.databinding.DataBindingUtil import androidx.fragment.app.DialogFragment import androidx.fragment.app.viewModels @@ -29,6 +26,7 @@ import net.vonforst.evmap.viewmodel.ChargepriceViewModel import net.vonforst.evmap.viewmodel.Status import net.vonforst.evmap.viewmodel.viewModelFactory import java.text.NumberFormat +import kotlin.math.roundToInt class ChargepriceFragment : DialogFragment() { private lateinit var binding: FragmentChargepriceBinding @@ -69,9 +67,13 @@ class ChargepriceFragment : DialogFragment() { override fun onStart() { super.onStart() + val density = resources.displayMetrics.density + val width = resources.displayMetrics.widthPixels + val maxWidth = (500 * density).roundToInt() + // dialog with 95% screen height dialog?.window?.setLayout( - ViewGroup.LayoutParams.MATCH_PARENT, + if (width < maxWidth) WindowManager.LayoutParams.MATCH_PARENT else maxWidth, (resources.displayMetrics.heightPixels * 0.95).toInt() ) } diff --git a/app/src/main/java/net/vonforst/evmap/fragment/MultiSelectDialog.kt b/app/src/main/java/net/vonforst/evmap/fragment/MultiSelectDialog.kt index 5696e4fc..a1dc1496 100644 --- a/app/src/main/java/net/vonforst/evmap/fragment/MultiSelectDialog.kt +++ b/app/src/main/java/net/vonforst/evmap/fragment/MultiSelectDialog.kt @@ -4,6 +4,7 @@ import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup +import android.view.WindowManager import androidx.appcompat.app.AppCompatDialogFragment import androidx.core.widget.doAfterTextChanged import androidx.recyclerview.widget.LinearLayoutManager @@ -14,6 +15,7 @@ import net.vonforst.evmap.databinding.DialogMultiSelectBinding import java.util.* import kotlin.collections.HashMap import kotlin.collections.HashSet +import kotlin.math.roundToInt class MultiSelectDialog : AppCompatDialogFragment() { companion object { @@ -53,9 +55,13 @@ class MultiSelectDialog : AppCompatDialogFragment() { override fun onStart() { super.onStart() + val density = resources.displayMetrics.density + val width = resources.displayMetrics.widthPixels + val maxWidth = (500 * density).roundToInt() + // dialog with 95% screen height dialog?.window?.setLayout( - ViewGroup.LayoutParams.MATCH_PARENT, + if (width < maxWidth) WindowManager.LayoutParams.MATCH_PARENT else maxWidth, (resources.displayMetrics.heightPixels * 0.95).toInt() ) } diff --git a/app/src/main/java/net/vonforst/evmap/fragment/updatedialogs/OpensourceDonationsDialogFramgent.kt b/app/src/main/java/net/vonforst/evmap/fragment/updatedialogs/OpensourceDonationsDialogFramgent.kt index 9093f13b..fbaca157 100644 --- a/app/src/main/java/net/vonforst/evmap/fragment/updatedialogs/OpensourceDonationsDialogFramgent.kt +++ b/app/src/main/java/net/vonforst/evmap/fragment/updatedialogs/OpensourceDonationsDialogFramgent.kt @@ -10,6 +10,7 @@ import androidx.navigation.fragment.findNavController import net.vonforst.evmap.R import net.vonforst.evmap.databinding.DialogOpensourceDonationsBinding import net.vonforst.evmap.storage.PreferenceDataSource +import kotlin.math.roundToInt class OpensourceDonationsDialogFramgent : AppCompatDialogFragment() { private lateinit var binding: DialogOpensourceDonationsBinding @@ -43,8 +44,13 @@ class OpensourceDonationsDialogFramgent : AppCompatDialogFragment() { override fun onStart() { super.onStart() + + val density = resources.displayMetrics.density + val width = resources.displayMetrics.widthPixels + val maxWidth = (500 * density).roundToInt() + dialog?.window?.setLayout( - WindowManager.LayoutParams.MATCH_PARENT, + if (width < maxWidth) WindowManager.LayoutParams.MATCH_PARENT else maxWidth, WindowManager.LayoutParams.WRAP_CONTENT ) } diff --git a/app/src/main/res/layout/dialog_opensource_donations.xml b/app/src/main/res/layout/dialog_opensource_donations.xml index 59d9c950..14e52ab5 100644 --- a/app/src/main/res/layout/dialog_opensource_donations.xml +++ b/app/src/main/res/layout/dialog_opensource_donations.xml @@ -3,7 +3,6 @@ xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" - android:maxWidth="200dp" android:orientation="vertical">