diff --git a/app/src/main/java/com/tommasoberlose/anotherwidget/AWApplication.kt b/app/src/main/java/com/tommasoberlose/anotherwidget/AWApplication.kt index c841226..7f5c79b 100644 --- a/app/src/main/java/com/tommasoberlose/anotherwidget/AWApplication.kt +++ b/app/src/main/java/com/tommasoberlose/anotherwidget/AWApplication.kt @@ -31,22 +31,5 @@ class AWApplication : Application() { .deleteRealmIfMigrationNeeded() .build() Realm.setDefaultConfiguration(config) - - calibrateVersions() - } - - private fun calibrateVersions() { - // 2.0 Tolerance - if (Preferences.clockTextSize > 50f) { - Preferences.clockTextSize = 32f - } - - if (Preferences.textMainSize > 36f) { - Preferences.textMainSize = 32f - } - - if (Preferences.textSecondSize > 28f) { - Preferences.textSecondSize = 24f - } } } \ No newline at end of file diff --git a/app/src/main/java/com/tommasoberlose/anotherwidget/global/Constants.kt b/app/src/main/java/com/tommasoberlose/anotherwidget/global/Constants.kt index a4eab88..c9e629e 100644 --- a/app/src/main/java/com/tommasoberlose/anotherwidget/global/Constants.kt +++ b/app/src/main/java/com/tommasoberlose/anotherwidget/global/Constants.kt @@ -23,6 +23,13 @@ object Constants { LARGE(3) } + enum class Dimension(val rawValue: Float) { + NONE(0f), + SMALL(8f), + MEDIUM(16f), + LARGE(24f) + } + enum class GlanceProviderId(val id: String) { PLAYING_SONG("PLAYING_SONG"), NEXT_CLOCK_ALARM("NEXT_CLOCK_ALARM"), diff --git a/app/src/main/java/com/tommasoberlose/anotherwidget/global/Preferences.kt b/app/src/main/java/com/tommasoberlose/anotherwidget/global/Preferences.kt index 3c2c304..f1a0d72 100755 --- a/app/src/main/java/com/tommasoberlose/anotherwidget/global/Preferences.kt +++ b/app/src/main/java/com/tommasoberlose/anotherwidget/global/Preferences.kt @@ -84,6 +84,10 @@ object Preferences : KotprefModel() { var weatherIconPack by intPref(default = Constants.WeatherIconPack.DEFAULT.rawValue) + // UI + var widgetMargin by floatPref(default = Constants.Dimension.SMALL.rawValue) + var widgetPadding by floatPref(default = Constants.Dimension.SMALL.rawValue) + // Clock var altTimezoneLabel by stringPref(default = "") var altTimezoneId by stringPref(default = "") diff --git a/app/src/main/java/com/tommasoberlose/anotherwidget/ui/fragments/MainFragment.kt b/app/src/main/java/com/tommasoberlose/anotherwidget/ui/fragments/MainFragment.kt index 8bbfaea..c8dd216 100644 --- a/app/src/main/java/com/tommasoberlose/anotherwidget/ui/fragments/MainFragment.kt +++ b/app/src/main/java/com/tommasoberlose/anotherwidget/ui/fragments/MainFragment.kt @@ -8,16 +8,10 @@ import android.os.Bundle import android.provider.Settings import android.util.DisplayMetrics import android.util.Log -import android.util.TypedValue -import android.view.Gravity import android.view.LayoutInflater import android.view.View import android.view.ViewGroup -import android.widget.LinearLayout -import android.widget.RelativeLayout -import androidx.core.content.ContextCompat -import androidx.core.view.children -import androidx.core.view.isVisible +import android.widget.RemoteViews import androidx.fragment.app.Fragment import androidx.lifecycle.ViewModelProvider import androidx.lifecycle.lifecycleScope @@ -30,23 +24,20 @@ import com.tommasoberlose.anotherwidget.databinding.FragmentAppMainBinding import com.tommasoberlose.anotherwidget.global.Constants import com.tommasoberlose.anotherwidget.global.Preferences import com.tommasoberlose.anotherwidget.helpers.* -import com.tommasoberlose.anotherwidget.helpers.ColorHelper.isColorDark import com.tommasoberlose.anotherwidget.ui.activities.MainActivity import com.tommasoberlose.anotherwidget.ui.viewmodels.MainViewModel import com.tommasoberlose.anotherwidget.ui.widgets.MainWidget -import com.tommasoberlose.anotherwidget.ui.widgets.StandardWidget import com.tommasoberlose.anotherwidget.utils.* import kotlinx.coroutines.* import org.greenrobot.eventbus.EventBus import org.greenrobot.eventbus.Subscribe import org.greenrobot.eventbus.ThreadMode + class MainFragment : Fragment() { companion object { fun newInstance() = MainFragment() - private val PREVIEW_BASE_HEIGHT: Int - get() = if (Preferences.widgetAlign == Constants.WidgetAlign.CENTER.rawValue) 120 else 180 } private lateinit var viewModel: MainViewModel @@ -98,13 +89,7 @@ class MainFragment : Fragment() { } binding.actionSettings.setOnSingleClickListener { - Navigation.findNavController(it).navigate(R.id.action_appMainFragment_to_appSettingsFragment,) - } - - binding.preview.layoutParams = binding.preview.layoutParams.apply { - height = PREVIEW_BASE_HEIGHT.toPixel(requireContext()) + if (Preferences.showClock) 100.toPixel( - requireContext() - ) else 0 + Navigation.findNavController(it).navigate(R.id.action_appMainFragment_to_appSettingsFragment) } subscribeUi(viewModel) @@ -156,79 +141,31 @@ class MainFragment : Fragment() { binding.toolbar.cardElevation = if (it > 0) 24f else 0f } - viewModel.widgetAlign.observe(viewLifecycleOwner) { - updatePreviewVisibility() - lifecycleScope.launch { - delay(350) - updateClock() - } - } - - viewModel.showPreview.observe(viewLifecycleOwner) { - updatePreviewVisibility() - } - viewModel.clockPreferencesUpdate.observe(viewLifecycleOwner) { - updateClock() + onUpdateUiEvent(null) } viewModel.widgetPreferencesUpdate.observe(viewLifecycleOwner) { onUpdateUiEvent(null) } - - viewModel.showClock.observe(viewLifecycleOwner) { - updateClockVisibility(it) - } } private var uiJob: Job? = null private fun updateUI() { if (Preferences.showPreview) { - lifecycleScope.launch(Dispatchers.IO) { - val bgColor: Int = ContextCompat.getColor( - requireContext(), - if (ColorHelper.getFontColor(requireActivity().isDarkTheme()) - .isColorDark() - ) android.R.color.white else R.color.colorAccent - ) - - val wallpaperDrawable = BitmapHelper.getTintedDrawable( - requireContext(), - R.drawable.card_background, - ColorHelper.getBackgroundColor(requireActivity().isDarkTheme()) - ) - - withContext(Dispatchers.Main) { - binding.preview.setCardBackgroundColor(bgColor) - binding.widgetDetail.widgetShapeBackground.setImageDrawable(wallpaperDrawable) - } - } - WidgetHelper.runWithCustomTypeface(requireContext()) { typeface -> uiJob?.cancel() uiJob = lifecycleScope.launch(Dispatchers.IO) { - val generatedView = MainWidget.getWidgetView(requireContext(), typeface)?.root + val generatedView = MainWidget.getWidgetView(requireContext(), binding.widget.width, typeface) if (generatedView != null) { withContext(Dispatchers.Main) { - - binding.widgetDetail.content.removeAllViews() - val container = LinearLayout(requireContext()).apply { - layoutParams = LinearLayout.LayoutParams( - LinearLayout.LayoutParams.MATCH_PARENT, - LinearLayout.LayoutParams.WRAP_CONTENT - ) - } - container.gravity = when (Preferences.widgetAlign) { - Constants.WidgetAlign.CENTER.rawValue -> Gravity.CENTER_HORIZONTAL - Constants.WidgetAlign.LEFT.rawValue -> Gravity.START - Constants.WidgetAlign.RIGHT.rawValue -> Gravity.END - else -> Gravity.NO_GRAVITY - } - container.addView(generatedView) - binding.widgetDetail.content.addView(container) - + val view: View = generatedView.apply(requireActivity().applicationContext, binding.widget) + view.measure(0, 0) + binding.widget.removeAllViews() + binding.widget.addView(view) + updatePreviewVisibility(view.measuredHeight) binding.widgetLoader.animate().scaleX(0f).scaleY(0f).alpha(0f) .setDuration(200L).start() binding.widget.animate().alpha(1f).start() @@ -239,136 +176,13 @@ class MainFragment : Fragment() { } } - private fun updateClock() { - // Clock - binding.widgetDetail.time.setTextColor(ColorHelper.getClockFontColor(requireActivity().isDarkTheme())) - binding.widgetDetail.timeAmPm.setTextColor(ColorHelper.getClockFontColor(requireActivity().isDarkTheme())) - binding.widgetDetail.time.setTextSize( - TypedValue.COMPLEX_UNIT_SP, - Preferences.clockTextSize.toPixel(requireContext()) - ) - binding.widgetDetail.timeAmPm.setTextSize( - TypedValue.COMPLEX_UNIT_SP, - Preferences.clockTextSize.toPixel(requireContext()) / 5 * 2 - ) - binding.widgetDetail.timeAmPm.isVisible = Preferences.showAMPMIndicator - - // Timezones - if (Preferences.altTimezoneId != "" && Preferences.altTimezoneLabel != "") { - // Clock - binding.widgetDetail.altTimezoneTime.timeZone = Preferences.altTimezoneId - binding.widgetDetail.altTimezoneTimeAmPm.timeZone = Preferences.altTimezoneId - binding.widgetDetail.altTimezoneLabel.text = Preferences.altTimezoneLabel - binding.widgetDetail.altTimezoneTime.setTextColor(ColorHelper.getClockFontColor(requireActivity().isDarkTheme())) - binding.widgetDetail.altTimezoneTimeAmPm.setTextColor(ColorHelper.getClockFontColor(requireActivity().isDarkTheme())) - binding.widgetDetail.altTimezoneLabel.setTextColor(ColorHelper.getClockFontColor(requireActivity().isDarkTheme())) - binding.widgetDetail.altTimezoneTime.setTextSize( - TypedValue.COMPLEX_UNIT_SP, - Preferences.clockTextSize.toPixel(requireContext()) / 3 - ) - binding.widgetDetail.altTimezoneTimeAmPm.setTextSize( - TypedValue.COMPLEX_UNIT_SP, - (Preferences.clockTextSize.toPixel(requireContext()) / 3) / 5 * 2 - ) - binding.widgetDetail.altTimezoneLabel.setTextSize( - TypedValue.COMPLEX_UNIT_SP, - (Preferences.clockTextSize.toPixel(requireContext()) / 3) / 5 * 2 - ) - binding.widgetDetail.timezonesContainer.isVisible = true - } else { - binding.widgetDetail.timezonesContainer.isVisible = false - } - - // Clock bottom margin - binding.widgetDetail.clockBottomMarginNone.isVisible = - Preferences.showClock && Preferences.clockBottomMargin == Constants.ClockBottomMargin.NONE.rawValue - binding.widgetDetail.clockBottomMarginSmall.isVisible = - Preferences.showClock && Preferences.clockBottomMargin == Constants.ClockBottomMargin.SMALL.rawValue - binding.widgetDetail.clockBottomMarginMedium.isVisible = - Preferences.showClock && Preferences.clockBottomMargin == Constants.ClockBottomMargin.MEDIUM.rawValue - binding.widgetDetail.clockBottomMarginLarge.isVisible = - Preferences.showClock && Preferences.clockBottomMargin == Constants.ClockBottomMargin.LARGE.rawValue - - // Align - binding.widgetDetail.timeContainer.layoutParams = (binding.widgetDetail.timeContainer.layoutParams as LinearLayout.LayoutParams).apply { - gravity = when (Preferences.widgetAlign) { - Constants.WidgetAlign.CENTER.rawValue -> Gravity.CENTER_HORIZONTAL - Constants.WidgetAlign.LEFT.rawValue -> Gravity.START - Constants.WidgetAlign.RIGHT.rawValue -> Gravity.END - else -> Gravity.NO_GRAVITY - } - } - if (Preferences.widgetAlign == Constants.WidgetAlign.RIGHT.rawValue) { - with (binding.widgetDetail.timeContainer) { - val child = getChildAt(2) - if (child.id == R.id.timezones_container) { - removeViewAt(2) - child.layoutParams = (child.layoutParams as ViewGroup.MarginLayoutParams).apply { - marginEnd = 16f.convertDpToPixel(requireContext()).toInt() - } - addView(child, 0) - } - } - } else { - with (binding.widgetDetail.timeContainer) { - val child = getChildAt(0) - if (child.id == R.id.timezones_container) { - removeViewAt(0) - child.layoutParams = (child.layoutParams as ViewGroup.MarginLayoutParams).apply { - marginEnd = 0 - } - addView(child, 2) - } - } - } - } - - private fun updateClockVisibility(showClock: Boolean) { - binding.widgetDetail.timeContainer.clearAnimation() - binding.widgetDetail.time.clearAnimation() - - updatePreviewVisibility() - - if (showClock) { - binding.widgetDetail.timeContainer.layoutParams = (binding.widgetDetail.timeContainer.layoutParams as LinearLayout.LayoutParams).apply { - height = RelativeLayout.LayoutParams.WRAP_CONTENT - } - binding.widgetDetail.timeContainer.measure(0, 0) - } - - if ((Preferences.showClock && binding.widgetDetail.time.alpha != 1f) || (!Preferences.showClock && binding.widgetDetail.time.alpha != 0f)) { - val initialHeight = binding.widgetDetail.timeContainer.measuredHeight - ValueAnimator.ofFloat( - if (showClock) 0f else 1f, - if (showClock) 1f else 0f - ).apply { - duration = 500L - addUpdateListener { - val animatedValue = animatedValue as Float - binding.widgetDetail.timeContainer.layoutParams = - binding.widgetDetail.timeContainer.layoutParams.apply { - height = (initialHeight * animatedValue).toInt() - } - binding.widgetDetail.time.alpha = animatedValue - binding.widgetDetail.timeAmPm.alpha = animatedValue - binding.widgetDetail.altTimezoneTime.alpha = animatedValue - binding.widgetDetail.altTimezoneTimeAmPm.alpha = animatedValue - binding.widgetDetail.altTimezoneLabel.alpha = animatedValue - } - }.start() - } - } - - private fun updatePreviewVisibility() { - binding.preview.clearAnimation() - if (binding.preview.layoutParams.height != (if (Preferences.showPreview) PREVIEW_BASE_HEIGHT.toPixel(requireContext()) else 0) + (if (Preferences.showClock) 100.toPixel( - requireContext() - ) else 0)) { + private fun updatePreviewVisibility(widgetHeight: Int) { + val newHeight = widgetHeight + 16f.convertDpToPixel(requireContext()).toInt() + if (binding.preview.layoutParams.height != newHeight) { + binding.preview.clearAnimation() ValueAnimator.ofInt( binding.preview.height, - (if (Preferences.showPreview) PREVIEW_BASE_HEIGHT.toPixel(requireContext()) else 0) + (if (Preferences.showClock) 100.toPixel( - requireContext() - ) else 0) + newHeight ).apply { duration = 500L addUpdateListener { diff --git a/app/src/main/java/com/tommasoberlose/anotherwidget/ui/fragments/tabs/LayoutFragment.kt b/app/src/main/java/com/tommasoberlose/anotherwidget/ui/fragments/tabs/LayoutFragment.kt index d4a744c..5c0e18a 100644 --- a/app/src/main/java/com/tommasoberlose/anotherwidget/ui/fragments/tabs/LayoutFragment.kt +++ b/app/src/main/java/com/tommasoberlose/anotherwidget/ui/fragments/tabs/LayoutFragment.kt @@ -86,6 +86,28 @@ class LayoutFragment : Fragment() { viewModel: MainViewModel ) { + viewModel.widgetMargin.observe(viewLifecycleOwner) { + maintainScrollPosition { + binding.widgetMarginLabel.text = when (it) { + Constants.Dimension.NONE.rawValue -> getString(R.string.settings_widget_dim_none) + Constants.Dimension.SMALL.rawValue -> getString(R.string.settings_widget_dim_small) + Constants.Dimension.LARGE.rawValue -> getString(R.string.settings_widget_dim_large) + else -> getString(R.string.settings_widget_dim_medium) + } + } + } + + viewModel.widgetPadding.observe(viewLifecycleOwner) { + maintainScrollPosition { + binding.widgetPaddingLabel.text = when (it) { + Constants.Dimension.NONE.rawValue -> getString(R.string.settings_widget_dim_none) + Constants.Dimension.SMALL.rawValue -> getString(R.string.settings_widget_dim_small) + Constants.Dimension.LARGE.rawValue -> getString(R.string.settings_widget_dim_large) + else -> getString(R.string.settings_widget_dim_medium) + } + } + } + viewModel.secondRowTopMargin.observe(viewLifecycleOwner) { maintainScrollPosition { binding.secondRowTopMarginLabel.text = when (it) { @@ -147,6 +169,58 @@ class LayoutFragment : Fragment() { private fun setupListener() { + binding.actionWidgetMargin.setOnClickListener { + BottomSheetMenu( + requireContext(), + header = getString(R.string.settings_widget_margin_title) + ).setSelectedValue(Preferences.widgetMargin) + .addItem( + getString(R.string.settings_widget_dim_none), + Constants.Dimension.NONE.rawValue + ) + .addItem( + getString(R.string.settings_widget_dim_small), + Constants.Dimension.SMALL.rawValue + ) + .addItem( + getString(R.string.settings_widget_dim_medium), + Constants.Dimension.MEDIUM.rawValue + ) + .addItem( + getString(R.string.settings_widget_dim_large), + Constants.Dimension.LARGE.rawValue + ) + .addOnSelectItemListener { value -> + Preferences.widgetMargin = value + }.show() + } + + binding.actionWidgetPadding.setOnClickListener { + BottomSheetMenu( + requireContext(), + header = getString(R.string.settings_widget_padding_title) + ).setSelectedValue(Preferences.widgetPadding) + .addItem( + getString(R.string.settings_widget_dim_none), + Constants.Dimension.NONE.rawValue + ) + .addItem( + getString(R.string.settings_widget_dim_small), + Constants.Dimension.SMALL.rawValue + ) + .addItem( + getString(R.string.settings_widget_dim_medium), + Constants.Dimension.MEDIUM.rawValue + ) + .addItem( + getString(R.string.settings_widget_dim_large), + Constants.Dimension.LARGE.rawValue + ) + .addOnSelectItemListener { value -> + Preferences.widgetPadding = value + }.show() + } + binding.actionSecondRowTopMarginSize.setOnClickListener { BottomSheetMenu( requireContext(), diff --git a/app/src/main/java/com/tommasoberlose/anotherwidget/ui/viewmodels/MainViewModel.kt b/app/src/main/java/com/tommasoberlose/anotherwidget/ui/viewmodels/MainViewModel.kt index 0930d2e..2cc45ea 100644 --- a/app/src/main/java/com/tommasoberlose/anotherwidget/ui/viewmodels/MainViewModel.kt +++ b/app/src/main/java/com/tommasoberlose/anotherwidget/ui/viewmodels/MainViewModel.kt @@ -50,6 +50,8 @@ class MainViewModel(context: Application) : AndroidViewModel(context) { val showDividers = Preferences.asLiveData(Preferences::showDividers) val secondRowTopMargin = Preferences.asLiveData(Preferences::secondRowTopMargin) val widgetAlign = Preferences.asLiveData(Preferences::widgetAlign) + val widgetMargin = Preferences.asLiveData(Preferences::widgetMargin) + val widgetPadding = Preferences.asLiveData(Preferences::widgetPadding) // Calendar Settings val showEvents = Preferences.asLiveData(Preferences::showEvents) @@ -136,6 +138,8 @@ class MainViewModel(context: Application) : AndroidViewModel(context) { addSource(Preferences.asLiveData(Preferences::customFontVariant)) { value = true } addSource(Preferences.asLiveData(Preferences::secondRowInformation)) { value = true } addSource(Preferences.asLiveData(Preferences::widgetAlign)) { value = true } + addSource(Preferences.asLiveData(Preferences::widgetMargin)) { value = true } + addSource(Preferences.asLiveData(Preferences::widgetPadding)) { value = true } addSource(Preferences.asLiveData(Preferences::showDividers)) { value = true } addSource(Preferences.asLiveData(Preferences::secondRowTopMargin)) { value = true } addSource(Preferences.asLiveData(Preferences::isDateCapitalize)) { value = true } diff --git a/app/src/main/java/com/tommasoberlose/anotherwidget/ui/widgets/AlignedWidget.kt b/app/src/main/java/com/tommasoberlose/anotherwidget/ui/widgets/AlignedWidget.kt index 43b3f02..a93de11 100644 --- a/app/src/main/java/com/tommasoberlose/anotherwidget/ui/widgets/AlignedWidget.kt +++ b/app/src/main/java/com/tommasoberlose/anotherwidget/ui/widgets/AlignedWidget.kt @@ -54,6 +54,8 @@ class AlignedWidget(val context: Context, val rightAligned: Boolean = false) { "setImageAlpha", ColorHelper.getBackgroundAlpha(context.isDarkTheme()) ) + val margin = Preferences.widgetMargin.convertDpToPixel(context).toInt() + views.setViewPadding(R.id.widget_shape_background, margin, margin, margin, margin) val refreshIntent = PendingIntent.getActivity( context, appWidgetId, @@ -61,6 +63,10 @@ class AlignedWidget(val context: Context, val rightAligned: Boolean = false) { PendingIntent.FLAG_UPDATE_CURRENT ) views.setOnClickPendingIntent(R.id.widget_shape_background, refreshIntent) + + // Padding + val padding = (Preferences.widgetPadding.convertDpToPixel(context) + Preferences.widgetMargin.convertDpToPixel(context)).toInt() + views.setViewPadding(R.id.main_layout, padding, padding, padding, padding) } catch (ex: Exception) { ex.printStackTrace() CrashlyticsReceiver.sendCrash(context, ex) diff --git a/app/src/main/java/com/tommasoberlose/anotherwidget/ui/widgets/MainWidget.kt b/app/src/main/java/com/tommasoberlose/anotherwidget/ui/widgets/MainWidget.kt index 1c7a3f9..6abf42c 100644 --- a/app/src/main/java/com/tommasoberlose/anotherwidget/ui/widgets/MainWidget.kt +++ b/app/src/main/java/com/tommasoberlose/anotherwidget/ui/widgets/MainWidget.kt @@ -7,7 +7,7 @@ import android.content.Context import android.content.res.Resources import android.graphics.Typeface import android.os.Bundle -import androidx.viewbinding.ViewBinding +import android.widget.RemoteViews import com.tommasoberlose.anotherwidget.global.Constants import com.tommasoberlose.anotherwidget.global.Preferences import com.tommasoberlose.anotherwidget.helpers.* @@ -83,11 +83,18 @@ class MainWidget : AppWidgetProvider() { } } - fun getWidgetView(context: Context, typeface: Typeface?): ViewBinding? { + fun getWidgetView(context: Context, width: Int, typeface: Typeface?): RemoteViews? { return when (Preferences.widgetAlign) { - Constants.WidgetAlign.LEFT.rawValue -> AlignedWidget(context).generateWidgetView(typeface) - Constants.WidgetAlign.RIGHT.rawValue -> AlignedWidget(context, rightAligned = true).generateWidgetView(typeface) - else -> StandardWidget(context).generateWidgetView(typeface) + Constants.WidgetAlign.LEFT.rawValue -> AlignedWidget(context).generateWidget( + 0, + width, + typeface + ) + Constants.WidgetAlign.RIGHT.rawValue -> AlignedWidget( + context, + rightAligned = true + ).generateWidget(0, width, typeface) + else -> StandardWidget(context).generateWidget(0, width, typeface) } } } diff --git a/app/src/main/java/com/tommasoberlose/anotherwidget/ui/widgets/StandardWidget.kt b/app/src/main/java/com/tommasoberlose/anotherwidget/ui/widgets/StandardWidget.kt index 1c9e013..45efe6b 100644 --- a/app/src/main/java/com/tommasoberlose/anotherwidget/ui/widgets/StandardWidget.kt +++ b/app/src/main/java/com/tommasoberlose/anotherwidget/ui/widgets/StandardWidget.kt @@ -57,6 +57,8 @@ class StandardWidget(val context: Context) { "setImageAlpha", ColorHelper.getBackgroundAlpha(context.isDarkTheme()) ) + val margin = Preferences.widgetMargin.convertDpToPixel(context).toInt() + views.setViewPadding(R.id.widget_shape_background, margin, margin, margin, margin) val refreshIntent = PendingIntent.getActivity( context, appWidgetId, @@ -64,6 +66,10 @@ class StandardWidget(val context: Context) { PendingIntent.FLAG_UPDATE_CURRENT ) views.setOnClickPendingIntent(R.id.widget_shape_background, refreshIntent) + + // Padding + val padding = (Preferences.widgetPadding.convertDpToPixel(context) + Preferences.widgetMargin.convertDpToPixel(context)).toInt() + views.setViewPadding(R.id.main_layout, padding, padding, padding, padding) } catch (ex: Exception) { ex.printStackTrace() CrashlyticsReceiver.sendCrash(context, ex) diff --git a/app/src/main/java/com/tommasoberlose/anotherwidget/utils/Extensions.kt b/app/src/main/java/com/tommasoberlose/anotherwidget/utils/Extensions.kt index 4023d1b..e0958c7 100644 --- a/app/src/main/java/com/tommasoberlose/anotherwidget/utils/Extensions.kt +++ b/app/src/main/java/com/tommasoberlose/anotherwidget/utils/Extensions.kt @@ -24,11 +24,13 @@ import android.util.TypedValue import android.view.animation.AlphaAnimation import android.widget.RelativeLayout import androidx.annotation.UiThread +import androidx.appcompat.app.AppCompatDelegate import androidx.browser.customtabs.CustomTabColorSchemeParams import androidx.core.animation.addListener import androidx.core.view.isVisible import com.tommasoberlose.anotherwidget.R import com.tommasoberlose.anotherwidget.components.OnSingleClickListener +import com.tommasoberlose.anotherwidget.global.Preferences import java.util.* @@ -192,7 +194,7 @@ fun String.isValidEmail(): Boolean Patterns.EMAIL_ADDRESS.matcher(this).matches() fun Context.isDarkTheme(): Boolean { - return resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK == Configuration.UI_MODE_NIGHT_YES + return Preferences.darkThemePreference == AppCompatDelegate.MODE_NIGHT_YES || Preferences.darkThemePreference == AppCompatDelegate.MODE_NIGHT_FOLLOW_SYSTEM && resources.configuration.uiMode and Configuration.UI_MODE_NIGHT_MASK == Configuration.UI_MODE_NIGHT_YES } fun Activity.isNotificationAccessGranted(): Boolean = Settings.Secure.getString(this.contentResolver,"enabled_notification_listeners").contains(this.packageName) diff --git a/app/src/main/res/drawable-hdpi/round_border_outer_black_18.png b/app/src/main/res/drawable-hdpi/round_border_outer_black_18.png new file mode 100644 index 0000000..dddc482 Binary files /dev/null and b/app/src/main/res/drawable-hdpi/round_border_outer_black_18.png differ diff --git a/app/src/main/res/drawable-hdpi/round_border_outer_black_20.png b/app/src/main/res/drawable-hdpi/round_border_outer_black_20.png new file mode 100644 index 0000000..25a83c2 Binary files /dev/null and b/app/src/main/res/drawable-hdpi/round_border_outer_black_20.png differ diff --git a/app/src/main/res/drawable-hdpi/round_border_outer_black_24.png b/app/src/main/res/drawable-hdpi/round_border_outer_black_24.png new file mode 100644 index 0000000..b2693ab Binary files /dev/null and b/app/src/main/res/drawable-hdpi/round_border_outer_black_24.png differ diff --git a/app/src/main/res/drawable-hdpi/round_border_outer_black_36.png b/app/src/main/res/drawable-hdpi/round_border_outer_black_36.png new file mode 100644 index 0000000..64a7463 Binary files /dev/null and b/app/src/main/res/drawable-hdpi/round_border_outer_black_36.png differ diff --git a/app/src/main/res/drawable-hdpi/round_border_outer_black_48.png b/app/src/main/res/drawable-hdpi/round_border_outer_black_48.png new file mode 100644 index 0000000..04f4bc3 Binary files /dev/null and b/app/src/main/res/drawable-hdpi/round_border_outer_black_48.png differ diff --git a/app/src/main/res/drawable-hdpi/round_dark_mode_white_18.png b/app/src/main/res/drawable-hdpi/round_dark_mode_white_18.png new file mode 100644 index 0000000..4d0edb8 Binary files /dev/null and b/app/src/main/res/drawable-hdpi/round_dark_mode_white_18.png differ diff --git a/app/src/main/res/drawable-hdpi/round_dark_mode_white_20.png b/app/src/main/res/drawable-hdpi/round_dark_mode_white_20.png new file mode 100644 index 0000000..94724a6 Binary files /dev/null and b/app/src/main/res/drawable-hdpi/round_dark_mode_white_20.png differ diff --git a/app/src/main/res/drawable-hdpi/round_dark_mode_white_24.png b/app/src/main/res/drawable-hdpi/round_dark_mode_white_24.png new file mode 100644 index 0000000..7485deb Binary files /dev/null and b/app/src/main/res/drawable-hdpi/round_dark_mode_white_24.png differ diff --git a/app/src/main/res/drawable-hdpi/round_dark_mode_white_36.png b/app/src/main/res/drawable-hdpi/round_dark_mode_white_36.png new file mode 100644 index 0000000..82c2010 Binary files /dev/null and b/app/src/main/res/drawable-hdpi/round_dark_mode_white_36.png differ diff --git a/app/src/main/res/drawable-hdpi/round_dark_mode_white_48.png b/app/src/main/res/drawable-hdpi/round_dark_mode_white_48.png new file mode 100644 index 0000000..413f796 Binary files /dev/null and b/app/src/main/res/drawable-hdpi/round_dark_mode_white_48.png differ diff --git a/app/src/main/res/drawable-hdpi/round_select_all_black_18.png b/app/src/main/res/drawable-hdpi/round_select_all_black_18.png new file mode 100644 index 0000000..8f053bc Binary files /dev/null and b/app/src/main/res/drawable-hdpi/round_select_all_black_18.png differ diff --git a/app/src/main/res/drawable-hdpi/round_select_all_black_20.png b/app/src/main/res/drawable-hdpi/round_select_all_black_20.png new file mode 100644 index 0000000..35d5fb4 Binary files /dev/null and b/app/src/main/res/drawable-hdpi/round_select_all_black_20.png differ diff --git a/app/src/main/res/drawable-hdpi/round_select_all_black_24.png b/app/src/main/res/drawable-hdpi/round_select_all_black_24.png new file mode 100644 index 0000000..a06a2bc Binary files /dev/null and b/app/src/main/res/drawable-hdpi/round_select_all_black_24.png differ diff --git a/app/src/main/res/drawable-hdpi/round_select_all_black_36.png b/app/src/main/res/drawable-hdpi/round_select_all_black_36.png new file mode 100644 index 0000000..b7bfc40 Binary files /dev/null and b/app/src/main/res/drawable-hdpi/round_select_all_black_36.png differ diff --git a/app/src/main/res/drawable-hdpi/round_select_all_black_48.png b/app/src/main/res/drawable-hdpi/round_select_all_black_48.png new file mode 100644 index 0000000..f82f0fb Binary files /dev/null and b/app/src/main/res/drawable-hdpi/round_select_all_black_48.png differ diff --git a/app/src/main/res/drawable-mdpi/round_border_outer_black_18.png b/app/src/main/res/drawable-mdpi/round_border_outer_black_18.png new file mode 100644 index 0000000..2b67648 Binary files /dev/null and b/app/src/main/res/drawable-mdpi/round_border_outer_black_18.png differ diff --git a/app/src/main/res/drawable-mdpi/round_border_outer_black_20.png b/app/src/main/res/drawable-mdpi/round_border_outer_black_20.png new file mode 100644 index 0000000..1f911dd Binary files /dev/null and b/app/src/main/res/drawable-mdpi/round_border_outer_black_20.png differ diff --git a/app/src/main/res/drawable-mdpi/round_border_outer_black_24.png b/app/src/main/res/drawable-mdpi/round_border_outer_black_24.png new file mode 100644 index 0000000..d131292 Binary files /dev/null and b/app/src/main/res/drawable-mdpi/round_border_outer_black_24.png differ diff --git a/app/src/main/res/drawable-mdpi/round_border_outer_black_36.png b/app/src/main/res/drawable-mdpi/round_border_outer_black_36.png new file mode 100644 index 0000000..b2693ab Binary files /dev/null and b/app/src/main/res/drawable-mdpi/round_border_outer_black_36.png differ diff --git a/app/src/main/res/drawable-mdpi/round_border_outer_black_48.png b/app/src/main/res/drawable-mdpi/round_border_outer_black_48.png new file mode 100644 index 0000000..e19d075 Binary files /dev/null and b/app/src/main/res/drawable-mdpi/round_border_outer_black_48.png differ diff --git a/app/src/main/res/drawable-mdpi/round_dark_mode_white_18.png b/app/src/main/res/drawable-mdpi/round_dark_mode_white_18.png new file mode 100644 index 0000000..8082b26 Binary files /dev/null and b/app/src/main/res/drawable-mdpi/round_dark_mode_white_18.png differ diff --git a/app/src/main/res/drawable-mdpi/round_dark_mode_white_20.png b/app/src/main/res/drawable-mdpi/round_dark_mode_white_20.png new file mode 100644 index 0000000..a2dcd5e Binary files /dev/null and b/app/src/main/res/drawable-mdpi/round_dark_mode_white_20.png differ diff --git a/app/src/main/res/drawable-mdpi/round_dark_mode_white_24.png b/app/src/main/res/drawable-mdpi/round_dark_mode_white_24.png new file mode 100644 index 0000000..e33a3bd Binary files /dev/null and b/app/src/main/res/drawable-mdpi/round_dark_mode_white_24.png differ diff --git a/app/src/main/res/drawable-mdpi/round_dark_mode_white_36.png b/app/src/main/res/drawable-mdpi/round_dark_mode_white_36.png new file mode 100644 index 0000000..7485deb Binary files /dev/null and b/app/src/main/res/drawable-mdpi/round_dark_mode_white_36.png differ diff --git a/app/src/main/res/drawable-mdpi/round_dark_mode_white_48.png b/app/src/main/res/drawable-mdpi/round_dark_mode_white_48.png new file mode 100644 index 0000000..b28db79 Binary files /dev/null and b/app/src/main/res/drawable-mdpi/round_dark_mode_white_48.png differ diff --git a/app/src/main/res/drawable-mdpi/round_select_all_black_18.png b/app/src/main/res/drawable-mdpi/round_select_all_black_18.png new file mode 100644 index 0000000..c981206 Binary files /dev/null and b/app/src/main/res/drawable-mdpi/round_select_all_black_18.png differ diff --git a/app/src/main/res/drawable-mdpi/round_select_all_black_20.png b/app/src/main/res/drawable-mdpi/round_select_all_black_20.png new file mode 100644 index 0000000..a8402b0 Binary files /dev/null and b/app/src/main/res/drawable-mdpi/round_select_all_black_20.png differ diff --git a/app/src/main/res/drawable-mdpi/round_select_all_black_24.png b/app/src/main/res/drawable-mdpi/round_select_all_black_24.png new file mode 100644 index 0000000..70318ef Binary files /dev/null and b/app/src/main/res/drawable-mdpi/round_select_all_black_24.png differ diff --git a/app/src/main/res/drawable-mdpi/round_select_all_black_36.png b/app/src/main/res/drawable-mdpi/round_select_all_black_36.png new file mode 100644 index 0000000..a06a2bc Binary files /dev/null and b/app/src/main/res/drawable-mdpi/round_select_all_black_36.png differ diff --git a/app/src/main/res/drawable-mdpi/round_select_all_black_48.png b/app/src/main/res/drawable-mdpi/round_select_all_black_48.png new file mode 100644 index 0000000..4f3c887 Binary files /dev/null and b/app/src/main/res/drawable-mdpi/round_select_all_black_48.png differ diff --git a/app/src/main/res/drawable-night-hdpi/round_border_outer_24.png b/app/src/main/res/drawable-night-hdpi/round_border_outer_24.png new file mode 100644 index 0000000..b683239 Binary files /dev/null and b/app/src/main/res/drawable-night-hdpi/round_border_outer_24.png differ diff --git a/app/src/main/res/drawable-night-hdpi/round_select_all_24.png b/app/src/main/res/drawable-night-hdpi/round_select_all_24.png new file mode 100644 index 0000000..bcf7684 Binary files /dev/null and b/app/src/main/res/drawable-night-hdpi/round_select_all_24.png differ diff --git a/app/src/main/res/drawable-night-mdpi/round_border_outer_24.png b/app/src/main/res/drawable-night-mdpi/round_border_outer_24.png new file mode 100644 index 0000000..f417f56 Binary files /dev/null and b/app/src/main/res/drawable-night-mdpi/round_border_outer_24.png differ diff --git a/app/src/main/res/drawable-night-mdpi/round_select_all_24.png b/app/src/main/res/drawable-night-mdpi/round_select_all_24.png new file mode 100644 index 0000000..6faf8b4 Binary files /dev/null and b/app/src/main/res/drawable-night-mdpi/round_select_all_24.png differ diff --git a/app/src/main/res/drawable-night-xhdpi/round_border_outer_24.png b/app/src/main/res/drawable-night-xhdpi/round_border_outer_24.png new file mode 100644 index 0000000..4e7b462 Binary files /dev/null and b/app/src/main/res/drawable-night-xhdpi/round_border_outer_24.png differ diff --git a/app/src/main/res/drawable-night-xhdpi/round_select_all_24.png b/app/src/main/res/drawable-night-xhdpi/round_select_all_24.png new file mode 100644 index 0000000..0f0c637 Binary files /dev/null and b/app/src/main/res/drawable-night-xhdpi/round_select_all_24.png differ diff --git a/app/src/main/res/drawable-night-xxhdpi/round_border_outer_24.png b/app/src/main/res/drawable-night-xxhdpi/round_border_outer_24.png new file mode 100644 index 0000000..591c27b Binary files /dev/null and b/app/src/main/res/drawable-night-xxhdpi/round_border_outer_24.png differ diff --git a/app/src/main/res/drawable-night-xxhdpi/round_select_all_24.png b/app/src/main/res/drawable-night-xxhdpi/round_select_all_24.png new file mode 100644 index 0000000..906c3a0 Binary files /dev/null and b/app/src/main/res/drawable-night-xxhdpi/round_select_all_24.png differ diff --git a/app/src/main/res/drawable-night-xxxhdpi/round_border_outer_24.png b/app/src/main/res/drawable-night-xxxhdpi/round_border_outer_24.png new file mode 100644 index 0000000..9e9fe24 Binary files /dev/null and b/app/src/main/res/drawable-night-xxxhdpi/round_border_outer_24.png differ diff --git a/app/src/main/res/drawable-night-xxxhdpi/round_select_all_24.png b/app/src/main/res/drawable-night-xxxhdpi/round_select_all_24.png new file mode 100644 index 0000000..6a1b424 Binary files /dev/null and b/app/src/main/res/drawable-night-xxxhdpi/round_select_all_24.png differ diff --git a/app/src/main/res/drawable-xhdpi/round_border_outer_black_18.png b/app/src/main/res/drawable-xhdpi/round_border_outer_black_18.png new file mode 100644 index 0000000..b2693ab Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/round_border_outer_black_18.png differ diff --git a/app/src/main/res/drawable-xhdpi/round_border_outer_black_20.png b/app/src/main/res/drawable-xhdpi/round_border_outer_black_20.png new file mode 100644 index 0000000..b9f0fe4 Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/round_border_outer_black_20.png differ diff --git a/app/src/main/res/drawable-xhdpi/round_border_outer_black_24.png b/app/src/main/res/drawable-xhdpi/round_border_outer_black_24.png new file mode 100644 index 0000000..e19d075 Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/round_border_outer_black_24.png differ diff --git a/app/src/main/res/drawable-xhdpi/round_border_outer_black_36.png b/app/src/main/res/drawable-xhdpi/round_border_outer_black_36.png new file mode 100644 index 0000000..04f4bc3 Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/round_border_outer_black_36.png differ diff --git a/app/src/main/res/drawable-xhdpi/round_border_outer_black_48.png b/app/src/main/res/drawable-xhdpi/round_border_outer_black_48.png new file mode 100644 index 0000000..de779a4 Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/round_border_outer_black_48.png differ diff --git a/app/src/main/res/drawable-xhdpi/round_dark_mode_white_18.png b/app/src/main/res/drawable-xhdpi/round_dark_mode_white_18.png new file mode 100644 index 0000000..7485deb Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/round_dark_mode_white_18.png differ diff --git a/app/src/main/res/drawable-xhdpi/round_dark_mode_white_20.png b/app/src/main/res/drawable-xhdpi/round_dark_mode_white_20.png new file mode 100644 index 0000000..d160e48 Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/round_dark_mode_white_20.png differ diff --git a/app/src/main/res/drawable-xhdpi/round_dark_mode_white_24.png b/app/src/main/res/drawable-xhdpi/round_dark_mode_white_24.png new file mode 100644 index 0000000..b28db79 Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/round_dark_mode_white_24.png differ diff --git a/app/src/main/res/drawable-xhdpi/round_dark_mode_white_36.png b/app/src/main/res/drawable-xhdpi/round_dark_mode_white_36.png new file mode 100644 index 0000000..413f796 Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/round_dark_mode_white_36.png differ diff --git a/app/src/main/res/drawable-xhdpi/round_dark_mode_white_48.png b/app/src/main/res/drawable-xhdpi/round_dark_mode_white_48.png new file mode 100644 index 0000000..24f32f8 Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/round_dark_mode_white_48.png differ diff --git a/app/src/main/res/drawable-xhdpi/round_select_all_black_18.png b/app/src/main/res/drawable-xhdpi/round_select_all_black_18.png new file mode 100644 index 0000000..a06a2bc Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/round_select_all_black_18.png differ diff --git a/app/src/main/res/drawable-xhdpi/round_select_all_black_20.png b/app/src/main/res/drawable-xhdpi/round_select_all_black_20.png new file mode 100644 index 0000000..5d6a1e9 Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/round_select_all_black_20.png differ diff --git a/app/src/main/res/drawable-xhdpi/round_select_all_black_24.png b/app/src/main/res/drawable-xhdpi/round_select_all_black_24.png new file mode 100644 index 0000000..4f3c887 Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/round_select_all_black_24.png differ diff --git a/app/src/main/res/drawable-xhdpi/round_select_all_black_36.png b/app/src/main/res/drawable-xhdpi/round_select_all_black_36.png new file mode 100644 index 0000000..f82f0fb Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/round_select_all_black_36.png differ diff --git a/app/src/main/res/drawable-xhdpi/round_select_all_black_48.png b/app/src/main/res/drawable-xhdpi/round_select_all_black_48.png new file mode 100644 index 0000000..a38ff8d Binary files /dev/null and b/app/src/main/res/drawable-xhdpi/round_select_all_black_48.png differ diff --git a/app/src/main/res/drawable-xxhdpi/round_border_outer_black_18.png b/app/src/main/res/drawable-xxhdpi/round_border_outer_black_18.png new file mode 100644 index 0000000..64a7463 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/round_border_outer_black_18.png differ diff --git a/app/src/main/res/drawable-xxhdpi/round_border_outer_black_20.png b/app/src/main/res/drawable-xxhdpi/round_border_outer_black_20.png new file mode 100644 index 0000000..dccf88b Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/round_border_outer_black_20.png differ diff --git a/app/src/main/res/drawable-xxhdpi/round_border_outer_black_24.png b/app/src/main/res/drawable-xxhdpi/round_border_outer_black_24.png new file mode 100644 index 0000000..04f4bc3 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/round_border_outer_black_24.png differ diff --git a/app/src/main/res/drawable-xxhdpi/round_border_outer_black_36.png b/app/src/main/res/drawable-xxhdpi/round_border_outer_black_36.png new file mode 100644 index 0000000..1ef5704 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/round_border_outer_black_36.png differ diff --git a/app/src/main/res/drawable-xxhdpi/round_border_outer_black_48.png b/app/src/main/res/drawable-xxhdpi/round_border_outer_black_48.png new file mode 100644 index 0000000..6522010 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/round_border_outer_black_48.png differ diff --git a/app/src/main/res/drawable-xxhdpi/round_dark_mode_white_18.png b/app/src/main/res/drawable-xxhdpi/round_dark_mode_white_18.png new file mode 100644 index 0000000..82c2010 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/round_dark_mode_white_18.png differ diff --git a/app/src/main/res/drawable-xxhdpi/round_dark_mode_white_20.png b/app/src/main/res/drawable-xxhdpi/round_dark_mode_white_20.png new file mode 100644 index 0000000..8f9f6f8 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/round_dark_mode_white_20.png differ diff --git a/app/src/main/res/drawable-xxhdpi/round_dark_mode_white_24.png b/app/src/main/res/drawable-xxhdpi/round_dark_mode_white_24.png new file mode 100644 index 0000000..413f796 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/round_dark_mode_white_24.png differ diff --git a/app/src/main/res/drawable-xxhdpi/round_dark_mode_white_36.png b/app/src/main/res/drawable-xxhdpi/round_dark_mode_white_36.png new file mode 100644 index 0000000..d62ca53 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/round_dark_mode_white_36.png differ diff --git a/app/src/main/res/drawable-xxhdpi/round_dark_mode_white_48.png b/app/src/main/res/drawable-xxhdpi/round_dark_mode_white_48.png new file mode 100644 index 0000000..38c4be2 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/round_dark_mode_white_48.png differ diff --git a/app/src/main/res/drawable-xxhdpi/round_select_all_black_18.png b/app/src/main/res/drawable-xxhdpi/round_select_all_black_18.png new file mode 100644 index 0000000..b7bfc40 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/round_select_all_black_18.png differ diff --git a/app/src/main/res/drawable-xxhdpi/round_select_all_black_20.png b/app/src/main/res/drawable-xxhdpi/round_select_all_black_20.png new file mode 100644 index 0000000..96382c1 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/round_select_all_black_20.png differ diff --git a/app/src/main/res/drawable-xxhdpi/round_select_all_black_24.png b/app/src/main/res/drawable-xxhdpi/round_select_all_black_24.png new file mode 100644 index 0000000..f82f0fb Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/round_select_all_black_24.png differ diff --git a/app/src/main/res/drawable-xxhdpi/round_select_all_black_36.png b/app/src/main/res/drawable-xxhdpi/round_select_all_black_36.png new file mode 100644 index 0000000..6ce29b5 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/round_select_all_black_36.png differ diff --git a/app/src/main/res/drawable-xxhdpi/round_select_all_black_48.png b/app/src/main/res/drawable-xxhdpi/round_select_all_black_48.png new file mode 100644 index 0000000..d009920 Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/round_select_all_black_48.png differ diff --git a/app/src/main/res/drawable-xxxhdpi/round_border_outer_black_18.png b/app/src/main/res/drawable-xxxhdpi/round_border_outer_black_18.png new file mode 100644 index 0000000..04f4bc3 Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/round_border_outer_black_18.png differ diff --git a/app/src/main/res/drawable-xxxhdpi/round_border_outer_black_20.png b/app/src/main/res/drawable-xxxhdpi/round_border_outer_black_20.png new file mode 100644 index 0000000..e367190 Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/round_border_outer_black_20.png differ diff --git a/app/src/main/res/drawable-xxxhdpi/round_border_outer_black_24.png b/app/src/main/res/drawable-xxxhdpi/round_border_outer_black_24.png new file mode 100644 index 0000000..de779a4 Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/round_border_outer_black_24.png differ diff --git a/app/src/main/res/drawable-xxxhdpi/round_border_outer_black_36.png b/app/src/main/res/drawable-xxxhdpi/round_border_outer_black_36.png new file mode 100644 index 0000000..6522010 Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/round_border_outer_black_36.png differ diff --git a/app/src/main/res/drawable-xxxhdpi/round_border_outer_black_48.png b/app/src/main/res/drawable-xxxhdpi/round_border_outer_black_48.png new file mode 100644 index 0000000..5f91eb1 Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/round_border_outer_black_48.png differ diff --git a/app/src/main/res/drawable-xxxhdpi/round_dark_mode_white_18.png b/app/src/main/res/drawable-xxxhdpi/round_dark_mode_white_18.png new file mode 100644 index 0000000..413f796 Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/round_dark_mode_white_18.png differ diff --git a/app/src/main/res/drawable-xxxhdpi/round_dark_mode_white_20.png b/app/src/main/res/drawable-xxxhdpi/round_dark_mode_white_20.png new file mode 100644 index 0000000..e9ef0d0 Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/round_dark_mode_white_20.png differ diff --git a/app/src/main/res/drawable-xxxhdpi/round_dark_mode_white_24.png b/app/src/main/res/drawable-xxxhdpi/round_dark_mode_white_24.png new file mode 100644 index 0000000..24f32f8 Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/round_dark_mode_white_24.png differ diff --git a/app/src/main/res/drawable-xxxhdpi/round_dark_mode_white_36.png b/app/src/main/res/drawable-xxxhdpi/round_dark_mode_white_36.png new file mode 100644 index 0000000..38c4be2 Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/round_dark_mode_white_36.png differ diff --git a/app/src/main/res/drawable-xxxhdpi/round_dark_mode_white_48.png b/app/src/main/res/drawable-xxxhdpi/round_dark_mode_white_48.png new file mode 100644 index 0000000..a55fd18 Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/round_dark_mode_white_48.png differ diff --git a/app/src/main/res/drawable-xxxhdpi/round_select_all_black_18.png b/app/src/main/res/drawable-xxxhdpi/round_select_all_black_18.png new file mode 100644 index 0000000..f82f0fb Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/round_select_all_black_18.png differ diff --git a/app/src/main/res/drawable-xxxhdpi/round_select_all_black_20.png b/app/src/main/res/drawable-xxxhdpi/round_select_all_black_20.png new file mode 100644 index 0000000..670a7c6 Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/round_select_all_black_20.png differ diff --git a/app/src/main/res/drawable-xxxhdpi/round_select_all_black_24.png b/app/src/main/res/drawable-xxxhdpi/round_select_all_black_24.png new file mode 100644 index 0000000..a38ff8d Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/round_select_all_black_24.png differ diff --git a/app/src/main/res/drawable-xxxhdpi/round_select_all_black_36.png b/app/src/main/res/drawable-xxxhdpi/round_select_all_black_36.png new file mode 100644 index 0000000..d009920 Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/round_select_all_black_36.png differ diff --git a/app/src/main/res/drawable-xxxhdpi/round_select_all_black_48.png b/app/src/main/res/drawable-xxxhdpi/round_select_all_black_48.png new file mode 100644 index 0000000..ceb98d1 Binary files /dev/null and b/app/src/main/res/drawable-xxxhdpi/round_select_all_black_48.png differ diff --git a/app/src/main/res/drawable/round_border_outer_20.xml b/app/src/main/res/drawable/round_border_outer_20.xml new file mode 100644 index 0000000..228fb4e --- /dev/null +++ b/app/src/main/res/drawable/round_border_outer_20.xml @@ -0,0 +1,25 @@ + + + + + + + + diff --git a/app/src/main/res/drawable/round_border_outer_24.xml b/app/src/main/res/drawable/round_border_outer_24.xml new file mode 100644 index 0000000..e5d6687 --- /dev/null +++ b/app/src/main/res/drawable/round_border_outer_24.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/src/main/res/drawable/round_dark_mode_20.xml b/app/src/main/res/drawable/round_dark_mode_20.xml new file mode 100644 index 0000000..8362aa0 --- /dev/null +++ b/app/src/main/res/drawable/round_dark_mode_20.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/src/main/res/drawable/round_dark_mode_24.xml b/app/src/main/res/drawable/round_dark_mode_24.xml new file mode 100644 index 0000000..7c2afbf --- /dev/null +++ b/app/src/main/res/drawable/round_dark_mode_24.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/src/main/res/drawable/round_select_all_20.xml b/app/src/main/res/drawable/round_select_all_20.xml new file mode 100644 index 0000000..e85eb79 --- /dev/null +++ b/app/src/main/res/drawable/round_select_all_20.xml @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + diff --git a/app/src/main/res/layout/fragment_app_main.xml b/app/src/main/res/layout/fragment_app_main.xml index d02520c..4b8598e 100644 --- a/app/src/main/res/layout/fragment_app_main.xml +++ b/app/src/main/res/layout/fragment_app_main.xml @@ -1,15 +1,15 @@ - - - - + android:gravity="center" /> - \ No newline at end of file + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_tab_layout.xml b/app/src/main/res/layout/fragment_tab_layout.xml index 2fd1cf5..5385838 100644 --- a/app/src/main/res/layout/fragment_tab_layout.xml +++ b/app/src/main/res/layout/fragment_tab_layout.xml @@ -29,6 +29,80 @@ android:paddingLeft="20dp" android:paddingRight="20dp" android:textAppearance="@style/AnotherWidget.Settings.Header" /> + + + + + + + + + + + + + + @@ -13,8 +12,6 @@ android:layout_height="match_parent" android:orientation="vertical" android:gravity="center_vertical|start" - android:paddingLeft="8dp" - android:paddingRight="8dp" android:id="@+id/main_layout" android:animateLayoutChanges="true"> @@ -13,8 +12,6 @@ android:layout_height="match_parent" android:orientation="vertical" android:gravity="center_vertical|end" - android:paddingLeft="8dp" - android:paddingRight="8dp" android:id="@+id/main_layout" android:animateLayoutChanges="true"> @@ -13,8 +12,6 @@ android:layout_height="match_parent" android:orientation="vertical" android:gravity="center" - android:paddingLeft="8dp" - android:paddingRight="8dp" android:id="@+id/main_layout" android:animateLayoutChanges="true"> Black Italic Heavy Italic + Widget padding + Widget margin + None + Small + Medium + Large + Calendar Show your events