mirror of
https://github.com/SimpleMobileTools/Simple-Calendar.git
synced 2025-03-15 10:50:22 +01:00
create a config variable extension
This commit is contained in:
parent
b02660a459
commit
aa827fe2a3
@ -2,7 +2,6 @@ package com.simplemobiletools.calendar.activities
|
||||
|
||||
import android.app.DatePickerDialog
|
||||
import android.app.TimePickerDialog
|
||||
import android.graphics.Color
|
||||
import android.os.Bundle
|
||||
import android.view.Menu
|
||||
import android.view.MenuItem
|
||||
@ -11,6 +10,7 @@ import android.view.WindowManager
|
||||
import android.widget.AdapterView
|
||||
import com.simplemobiletools.calendar.R
|
||||
import com.simplemobiletools.calendar.extensions.beVisibleIf
|
||||
import com.simplemobiletools.calendar.extensions.config
|
||||
import com.simplemobiletools.calendar.extensions.getAppropriateTheme
|
||||
import com.simplemobiletools.calendar.extensions.scheduleNotification
|
||||
import com.simplemobiletools.calendar.helpers.*
|
||||
|
@ -13,6 +13,7 @@ import com.simplemobiletools.calendar.R
|
||||
import com.simplemobiletools.calendar.adapters.MyMonthPagerAdapter
|
||||
import com.simplemobiletools.calendar.adapters.MyYearPagerAdapter
|
||||
import com.simplemobiletools.calendar.dialogs.ChangeViewDialog
|
||||
import com.simplemobiletools.calendar.extensions.config
|
||||
import com.simplemobiletools.calendar.extensions.updateWidgets
|
||||
import com.simplemobiletools.calendar.fragments.EventListFragment
|
||||
import com.simplemobiletools.calendar.helpers.*
|
||||
|
@ -10,6 +10,7 @@ import android.view.View
|
||||
import android.widget.AdapterView
|
||||
import com.simplemobiletools.calendar.R
|
||||
import com.simplemobiletools.calendar.extensions.beVisibleIf
|
||||
import com.simplemobiletools.calendar.extensions.config
|
||||
import com.simplemobiletools.calendar.helpers.*
|
||||
import com.simplemobiletools.commons.extensions.*
|
||||
import kotlinx.android.synthetic.main.activity_settings.*
|
||||
|
@ -1,14 +1,10 @@
|
||||
package com.simplemobiletools.calendar.activities
|
||||
|
||||
import android.os.Bundle
|
||||
import com.simplemobiletools.calendar.helpers.Config
|
||||
import com.simplemobiletools.commons.activities.BaseSimpleActivity
|
||||
|
||||
open class SimpleActivity : BaseSimpleActivity() {
|
||||
lateinit var config: Config
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
super.onCreate(savedInstanceState)
|
||||
config = Config.newInstance(applicationContext)
|
||||
}
|
||||
}
|
||||
|
@ -10,7 +10,7 @@ import android.support.v7.app.AppCompatActivity
|
||||
import android.widget.SeekBar
|
||||
import com.simplemobiletools.calendar.R
|
||||
import com.simplemobiletools.calendar.adapters.EventListWidgetAdapterOld
|
||||
import com.simplemobiletools.calendar.helpers.Config
|
||||
import com.simplemobiletools.calendar.extensions.config
|
||||
import com.simplemobiletools.calendar.helpers.Formatter
|
||||
import com.simplemobiletools.calendar.helpers.MyWidgetListProvider
|
||||
import com.simplemobiletools.calendar.models.ListEvent
|
||||
@ -61,7 +61,6 @@ class WidgetListConfigureActivity : AppCompatActivity() {
|
||||
private fun initVariables() {
|
||||
mRes = resources
|
||||
|
||||
val config = Config.newInstance(this)
|
||||
mTextColorWithoutTransparency = config.widgetTextColor
|
||||
updateTextColors()
|
||||
|
||||
@ -91,7 +90,7 @@ class WidgetListConfigureActivity : AppCompatActivity() {
|
||||
}
|
||||
|
||||
private fun storeWidgetColors() {
|
||||
Config.newInstance(this).apply {
|
||||
config.apply {
|
||||
widgetBgColor = mBgColor
|
||||
widgetTextColor = mTextColorWithoutTransparency
|
||||
}
|
||||
|
@ -13,8 +13,8 @@ import android.view.View
|
||||
import android.widget.SeekBar
|
||||
import android.widget.TextView
|
||||
import com.simplemobiletools.calendar.R
|
||||
import com.simplemobiletools.calendar.extensions.config
|
||||
import com.simplemobiletools.calendar.extensions.removeUnderlineFlag
|
||||
import com.simplemobiletools.calendar.helpers.Config
|
||||
import com.simplemobiletools.calendar.helpers.LOW_ALPHA
|
||||
import com.simplemobiletools.calendar.helpers.MonthlyCalendarImpl
|
||||
import com.simplemobiletools.calendar.helpers.MyWidgetMonthlyProvider
|
||||
@ -62,7 +62,6 @@ class WidgetMonthlyConfigureActivity : AppCompatActivity(), MonthlyCalendar {
|
||||
private fun initVariables() {
|
||||
mRes = resources
|
||||
|
||||
val config = Config.newInstance(this)
|
||||
mTextColorWithoutTransparency = config.widgetTextColor
|
||||
updateTextColors()
|
||||
|
||||
@ -94,7 +93,7 @@ class WidgetMonthlyConfigureActivity : AppCompatActivity(), MonthlyCalendar {
|
||||
}
|
||||
|
||||
private fun storeWidgetColors() {
|
||||
Config.newInstance(this).apply {
|
||||
config.apply {
|
||||
widgetBgColor = mBgColor
|
||||
widgetTextColor = mTextColorWithoutTransparency
|
||||
}
|
||||
@ -144,7 +143,7 @@ class WidgetMonthlyConfigureActivity : AppCompatActivity(), MonthlyCalendar {
|
||||
private fun updateDays() {
|
||||
val len = mDays!!.size
|
||||
|
||||
if (Config.newInstance(applicationContext).displayWeekNumbers) {
|
||||
if (applicationContext.config.displayWeekNumbers) {
|
||||
week_num.setTextColor(mWeakTextColor)
|
||||
week_num.visibility = View.VISIBLE
|
||||
|
||||
|
@ -8,7 +8,7 @@ import com.bignerdranch.android.multiselector.MultiSelector
|
||||
import com.bignerdranch.android.multiselector.SwappingHolder
|
||||
import com.simplemobiletools.calendar.R
|
||||
import com.simplemobiletools.calendar.activities.SimpleActivity
|
||||
import com.simplemobiletools.calendar.helpers.Config
|
||||
import com.simplemobiletools.calendar.extensions.config
|
||||
import com.simplemobiletools.calendar.helpers.Formatter
|
||||
import com.simplemobiletools.calendar.models.Event
|
||||
import com.simplemobiletools.commons.dialogs.ConfirmationDialog
|
||||
@ -38,7 +38,7 @@ class DayEventsAdapter(val activity: SimpleActivity, val mItems: List<Event>, va
|
||||
}
|
||||
|
||||
init {
|
||||
textColor = Config.newInstance(activity).textColor
|
||||
textColor = activity.config.textColor
|
||||
}
|
||||
|
||||
val multiSelectorMode = object : ModalMultiSelectorCallback(multiSelector) {
|
||||
|
@ -9,7 +9,7 @@ import com.bignerdranch.android.multiselector.MultiSelector
|
||||
import com.bignerdranch.android.multiselector.SwappingHolder
|
||||
import com.simplemobiletools.calendar.R
|
||||
import com.simplemobiletools.calendar.activities.SimpleActivity
|
||||
import com.simplemobiletools.calendar.helpers.Config
|
||||
import com.simplemobiletools.calendar.extensions.config
|
||||
import com.simplemobiletools.calendar.helpers.Formatter
|
||||
import com.simplemobiletools.calendar.models.ListEvent
|
||||
import com.simplemobiletools.calendar.models.ListItem
|
||||
@ -49,10 +49,9 @@ class EventListAdapter(val activity: SimpleActivity, val mItems: List<ListItem>,
|
||||
}
|
||||
|
||||
init {
|
||||
val config = Config.newInstance(activity)
|
||||
textColor = config.textColor
|
||||
textColor = activity.config.textColor
|
||||
topDivider = activity.resources.getDrawable(R.drawable.divider)
|
||||
primaryColor = config.primaryColor
|
||||
primaryColor = activity.config.primaryColor
|
||||
val mTodayCode = Formatter.getDayCodeFromTS(mNow)
|
||||
todayDate = Formatter.getDayTitle(activity, mTodayCode)
|
||||
}
|
||||
|
@ -7,7 +7,7 @@ import android.widget.RemoteViews
|
||||
import android.widget.RemoteViewsService
|
||||
import com.simplemobiletools.calendar.R
|
||||
import com.simplemobiletools.calendar.R.id.event_item_holder
|
||||
import com.simplemobiletools.calendar.helpers.Config
|
||||
import com.simplemobiletools.calendar.extensions.config
|
||||
import com.simplemobiletools.calendar.helpers.DBHelper
|
||||
import com.simplemobiletools.calendar.helpers.EVENT_ID
|
||||
import com.simplemobiletools.calendar.helpers.Formatter
|
||||
@ -24,7 +24,7 @@ class EventListWidgetAdapter(val context: Context, val intent: Intent) : RemoteV
|
||||
val ITEM_HEADER = 1
|
||||
|
||||
var events: List<ListItem> = ArrayList()
|
||||
val textColor: Int = Config.newInstance(context).widgetTextColor
|
||||
val textColor: Int = context.config.widgetTextColor
|
||||
|
||||
override fun getViewAt(position: Int): RemoteViews {
|
||||
val type = getItemViewType(position)
|
||||
|
@ -5,7 +5,7 @@ import android.support.v7.app.AlertDialog
|
||||
import android.view.LayoutInflater
|
||||
import android.widget.RadioGroup
|
||||
import com.simplemobiletools.calendar.R
|
||||
import com.simplemobiletools.calendar.helpers.Config
|
||||
import com.simplemobiletools.calendar.extensions.config
|
||||
import com.simplemobiletools.calendar.helpers.EVENTS_LIST_VIEW
|
||||
import com.simplemobiletools.calendar.helpers.MONTHLY_VIEW
|
||||
import com.simplemobiletools.calendar.helpers.YEARLY_VIEW
|
||||
@ -38,7 +38,7 @@ class ChangeViewDialog(val activity: Activity, val callback: (newView: Int) -> U
|
||||
else -> MONTHLY_VIEW
|
||||
}
|
||||
|
||||
fun getSavedItem() = when (Config.newInstance(activity).storedView) {
|
||||
fun getSavedItem() = when (activity.config.storedView) {
|
||||
YEARLY_VIEW -> R.id.dialog_radio_yearly
|
||||
EVENTS_LIST_VIEW -> R.id.dialog_radio_events_list
|
||||
else -> R.id.dialog_radio_monthly
|
||||
|
@ -95,5 +95,7 @@ private fun getNotificationIntent(context: Context, eventId: Int): PendingIntent
|
||||
}
|
||||
|
||||
fun Context.getAppropriateTheme(): Int {
|
||||
return if (Config.newInstance(this).backgroundColor.getContrastColor() == Color.WHITE) R.style.MyDialogTheme_Dark else R.style.MyDialogTheme
|
||||
return if (config.backgroundColor.getContrastColor() == Color.WHITE) R.style.MyDialogTheme_Dark else R.style.MyDialogTheme
|
||||
}
|
||||
|
||||
val Context.config: Config get() = Config.newInstance(this)
|
||||
|
@ -15,6 +15,7 @@ import com.simplemobiletools.calendar.R
|
||||
import com.simplemobiletools.calendar.activities.EventActivity
|
||||
import com.simplemobiletools.calendar.activities.SimpleActivity
|
||||
import com.simplemobiletools.calendar.adapters.DayEventsAdapter
|
||||
import com.simplemobiletools.calendar.extensions.config
|
||||
import com.simplemobiletools.calendar.extensions.getAppropriateTheme
|
||||
import com.simplemobiletools.calendar.helpers.*
|
||||
import com.simplemobiletools.calendar.helpers.Formatter
|
||||
@ -44,7 +45,7 @@ class DayFragment : Fragment(), DBHelper.EventUpdateListener, DBHelper.GetEvents
|
||||
mRes = resources
|
||||
mHolder = view.day_holder
|
||||
|
||||
mConfig = Config.newInstance(context)
|
||||
mConfig = context.config
|
||||
mDayCode = arguments.getString(DAY_CODE)
|
||||
|
||||
val day = Formatter.getDayTitle(activity.applicationContext, mDayCode)
|
||||
|
@ -13,10 +13,10 @@ import android.view.ViewGroup
|
||||
import android.widget.DatePicker
|
||||
import android.widget.RelativeLayout
|
||||
import android.widget.TextView
|
||||
import com.simplemobiletools.calendar.helpers.MonthlyCalendarImpl
|
||||
import com.simplemobiletools.calendar.R
|
||||
import com.simplemobiletools.calendar.activities.DayActivity
|
||||
import com.simplemobiletools.calendar.extensions.beVisibleIf
|
||||
import com.simplemobiletools.calendar.extensions.config
|
||||
import com.simplemobiletools.calendar.extensions.getAppropriateTheme
|
||||
import com.simplemobiletools.calendar.extensions.removeUnderlineFlag
|
||||
import com.simplemobiletools.calendar.helpers.*
|
||||
@ -50,7 +50,7 @@ class MonthFragment : Fragment(), MonthlyCalendar {
|
||||
|
||||
mHolder = view.calendar_holder
|
||||
mDayCode = arguments.getString(DAY_CODE)
|
||||
mConfig = Config.newInstance(context)
|
||||
mConfig = context.config
|
||||
mSundayFirst = mConfig.isSundayFirst
|
||||
|
||||
setupButtons()
|
||||
|
@ -9,9 +9,9 @@ import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import android.widget.TextView
|
||||
import com.simplemobiletools.calendar.R
|
||||
import com.simplemobiletools.calendar.helpers.YearlyCalendarImpl
|
||||
import com.simplemobiletools.calendar.helpers.Config
|
||||
import com.simplemobiletools.calendar.extensions.config
|
||||
import com.simplemobiletools.calendar.helpers.YEAR_LABEL
|
||||
import com.simplemobiletools.calendar.helpers.YearlyCalendarImpl
|
||||
import com.simplemobiletools.calendar.interfaces.NavigationListener
|
||||
import com.simplemobiletools.calendar.interfaces.YearlyCalendar
|
||||
import com.simplemobiletools.calendar.views.SmallMonthView
|
||||
@ -41,7 +41,7 @@ class YearFragment : Fragment(), YearlyCalendar {
|
||||
|
||||
override fun onResume() {
|
||||
super.onResume()
|
||||
val sundayFirst = Config.newInstance(context).isSundayFirst
|
||||
val sundayFirst = context.config.isSundayFirst
|
||||
if (sundayFirst != mSundayFirst) {
|
||||
mSundayFirst = sundayFirst
|
||||
setupMonths()
|
||||
@ -75,7 +75,7 @@ class YearFragment : Fragment(), YearlyCalendar {
|
||||
val now = DateTime()
|
||||
if (now.year == mYear) {
|
||||
val monthLabel = mView.findViewById(res.getIdentifier("month_${now.monthOfYear}_label", "id", activity.packageName)) as TextView
|
||||
monthLabel.setTextColor(Config.newInstance(context).primaryColor)
|
||||
monthLabel.setTextColor(context.config.primaryColor)
|
||||
|
||||
val monthView = mView.findViewById(res.getIdentifier("month_${now.monthOfYear}", "id", activity.packageName)) as SmallMonthView
|
||||
monthView.setTodaysId(now.dayOfMonth)
|
||||
|
@ -1,9 +1,7 @@
|
||||
package com.simplemobiletools.calendar.helpers
|
||||
|
||||
import android.content.Context
|
||||
import com.simplemobiletools.calendar.helpers.Config
|
||||
import com.simplemobiletools.calendar.helpers.DBHelper
|
||||
import com.simplemobiletools.calendar.helpers.Formatter
|
||||
import com.simplemobiletools.calendar.extensions.config
|
||||
import com.simplemobiletools.calendar.interfaces.MonthlyCalendar
|
||||
import com.simplemobiletools.calendar.models.Day
|
||||
import com.simplemobiletools.calendar.models.Event
|
||||
@ -44,7 +42,7 @@ class MonthlyCalendarImpl(val mCallback: MonthlyCalendar, val mContext: Context)
|
||||
|
||||
val currMonthDays = mTargetDate.dayOfMonth().maximumValue
|
||||
var firstDayIndex = mTargetDate.withDayOfMonth(1).dayOfWeek
|
||||
if (!Config.newInstance(mContext).isSundayFirst)
|
||||
if (!mContext.config.isSundayFirst)
|
||||
firstDayIndex -= 1
|
||||
val prevMonthDays = mTargetDate.minusMonths(1).dayOfMonth().maximumValue
|
||||
|
||||
|
@ -11,6 +11,7 @@ import android.net.Uri
|
||||
import android.widget.RemoteViews
|
||||
import com.simplemobiletools.calendar.R
|
||||
import com.simplemobiletools.calendar.activities.EventActivity
|
||||
import com.simplemobiletools.calendar.extensions.config
|
||||
import com.simplemobiletools.calendar.services.WidgetService
|
||||
|
||||
class MyWidgetListProvider : AppWidgetProvider() {
|
||||
@ -19,7 +20,6 @@ class MyWidgetListProvider : AppWidgetProvider() {
|
||||
|
||||
lateinit var mRemoteViews: RemoteViews
|
||||
lateinit var mRes: Resources
|
||||
lateinit var mContext: Context
|
||||
lateinit var mWidgetManager: AppWidgetManager
|
||||
lateinit var mIntent: Intent
|
||||
}
|
||||
@ -30,18 +30,16 @@ class MyWidgetListProvider : AppWidgetProvider() {
|
||||
}
|
||||
|
||||
private fun initVariables(context: Context) {
|
||||
mContext = context
|
||||
mRes = mContext.resources
|
||||
mRes = context.resources
|
||||
|
||||
val config = Config.newInstance(context)
|
||||
mTextColor = config.widgetTextColor
|
||||
mTextColor = context.config.widgetTextColor
|
||||
|
||||
mWidgetManager = AppWidgetManager.getInstance(mContext)
|
||||
mWidgetManager = AppWidgetManager.getInstance(context)
|
||||
|
||||
mRemoteViews = RemoteViews(mContext.packageName, R.layout.widget_event_list)
|
||||
mIntent = Intent(mContext, MyWidgetListProvider::class.java)
|
||||
mRemoteViews = RemoteViews(context.packageName, R.layout.widget_event_list)
|
||||
mIntent = Intent(context, MyWidgetListProvider::class.java)
|
||||
|
||||
mRemoteViews.setInt(R.id.widget_event_list_holder, "setBackgroundColor", config.widgetBgColor)
|
||||
mRemoteViews.setInt(R.id.widget_event_list_holder, "setBackgroundColor", context.config.widgetBgColor)
|
||||
mRemoteViews.setInt(R.id.widget_event_list_empty, "setTextColor", mTextColor)
|
||||
|
||||
Intent(context, WidgetService::class.java).apply {
|
||||
|
@ -13,10 +13,10 @@ import android.text.SpannableString
|
||||
import android.text.style.UnderlineSpan
|
||||
import android.view.View
|
||||
import android.widget.RemoteViews
|
||||
import com.simplemobiletools.calendar.helpers.MonthlyCalendarImpl
|
||||
import com.simplemobiletools.calendar.R
|
||||
import com.simplemobiletools.calendar.activities.DayActivity
|
||||
import com.simplemobiletools.calendar.activities.MainActivity
|
||||
import com.simplemobiletools.calendar.extensions.config
|
||||
import com.simplemobiletools.calendar.interfaces.MonthlyCalendar
|
||||
import com.simplemobiletools.calendar.models.Day
|
||||
import com.simplemobiletools.commons.extensions.adjustAlpha
|
||||
@ -49,7 +49,7 @@ class MyWidgetMonthlyProvider : AppWidgetProvider(), MonthlyCalendar {
|
||||
mRes = mContext.resources
|
||||
mCalendar = MonthlyCalendarImpl(this, mContext)
|
||||
|
||||
val config = Config.newInstance(context)
|
||||
val config = context.config
|
||||
mTextColor = config.widgetTextColor
|
||||
mWeakTextColor = config.widgetTextColor.adjustAlpha(LOW_ALPHA)
|
||||
|
||||
@ -108,7 +108,7 @@ class MyWidgetMonthlyProvider : AppWidgetProvider(), MonthlyCalendar {
|
||||
}
|
||||
|
||||
fun updateDays(days: List<Day>) {
|
||||
val displayWeekNumbers = Config.newInstance(mContext).displayWeekNumbers
|
||||
val displayWeekNumbers = mContext.config.displayWeekNumbers
|
||||
val len = days.size
|
||||
val packageName = mContext.packageName
|
||||
mRemoteViews.setInt(R.id.week_num, "setTextColor", mWeakTextColor)
|
||||
@ -187,7 +187,7 @@ class MyWidgetMonthlyProvider : AppWidgetProvider(), MonthlyCalendar {
|
||||
}
|
||||
|
||||
private fun updateLabelColor() {
|
||||
val mSundayFirst = Config.newInstance(mContext).isSundayFirst
|
||||
val mSundayFirst = mContext.config.isSundayFirst
|
||||
val packageName = mContext.packageName
|
||||
val letters = letterIDs
|
||||
for (i in 0..6) {
|
||||
|
@ -9,9 +9,9 @@ import android.content.Intent
|
||||
import android.net.Uri
|
||||
import com.simplemobiletools.calendar.R
|
||||
import com.simplemobiletools.calendar.activities.EventActivity
|
||||
import com.simplemobiletools.calendar.extensions.config
|
||||
import com.simplemobiletools.calendar.extensions.scheduleNextEvent
|
||||
import com.simplemobiletools.calendar.extensions.updateListWidget
|
||||
import com.simplemobiletools.calendar.helpers.Config
|
||||
import com.simplemobiletools.calendar.helpers.DBHelper
|
||||
import com.simplemobiletools.calendar.helpers.EVENT_ID
|
||||
import com.simplemobiletools.calendar.helpers.Formatter
|
||||
@ -49,7 +49,7 @@ class NotificationReceiver : BroadcastReceiver() {
|
||||
}
|
||||
|
||||
private fun getNotification(context: Context, pendingIntent: PendingIntent, content: String): Notification {
|
||||
val soundUri = Uri.parse(Config.newInstance(context).reminderSound)
|
||||
val soundUri = Uri.parse(context.config.reminderSound)
|
||||
val builder = Notification.Builder(context)
|
||||
.setContentTitle(context.resources.getString(R.string.app_name))
|
||||
.setContentText(content)
|
||||
@ -59,7 +59,7 @@ class NotificationReceiver : BroadcastReceiver() {
|
||||
.setAutoCancel(true)
|
||||
.setSound(soundUri)
|
||||
|
||||
if (Config.newInstance(context).vibrateOnReminder)
|
||||
if (context.config.vibrateOnReminder)
|
||||
builder.setVibrate(longArrayOf(0, 300, 300, 300))
|
||||
|
||||
return builder.build()
|
||||
|
@ -6,7 +6,7 @@ import android.graphics.Paint
|
||||
import android.util.AttributeSet
|
||||
import android.view.View
|
||||
import com.simplemobiletools.calendar.R
|
||||
import com.simplemobiletools.calendar.helpers.Config
|
||||
import com.simplemobiletools.calendar.extensions.config
|
||||
import com.simplemobiletools.calendar.helpers.MEDIUM_ALPHA
|
||||
import com.simplemobiletools.commons.extensions.adjustAlpha
|
||||
import java.util.*
|
||||
@ -55,10 +55,9 @@ class SmallMonthView(context: Context, attrs: AttributeSet, defStyle: Int) : Vie
|
||||
a.recycle()
|
||||
}
|
||||
|
||||
val config = Config.newInstance(context)
|
||||
val baseColor = config.textColor
|
||||
val baseColor = context.config.textColor
|
||||
mTextColor = baseColor.adjustAlpha(MEDIUM_ALPHA)
|
||||
mColoredTextColor = config.primaryColor.adjustAlpha(MEDIUM_ALPHA)
|
||||
mColoredTextColor = context.config.primaryColor.adjustAlpha(MEDIUM_ALPHA)
|
||||
|
||||
mPaint = Paint(Paint.ANTI_ALIAS_FLAG).apply {
|
||||
color = mTextColor
|
||||
|
Loading…
x
Reference in New Issue
Block a user