mirror of
https://github.com/SimpleMobileTools/Simple-Calendar.git
synced 2025-06-05 21:59:17 +02:00
fix a glitch at updating synced events
This commit is contained in:
@@ -136,6 +136,7 @@ class EventActivity : SimpleActivity(), DBHelper.EventUpdateListener {
|
|||||||
|
|
||||||
val addHours = if (intent.getBooleanExtra(NEW_EVENT_SET_HOUR_DURATION, false)) 1 else 0
|
val addHours = if (intent.getBooleanExtra(NEW_EVENT_SET_HOUR_DURATION, false)) 1 else 0
|
||||||
mEventEndDateTime = mEventStartDateTime.plusHours(addHours)
|
mEventEndDateTime = mEventStartDateTime.plusHours(addHours)
|
||||||
|
mEventCalendarId = config.lastUsedCaldavCalendar
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun showReminder1Dialog() {
|
private fun showReminder1Dialog() {
|
||||||
|
@@ -76,7 +76,7 @@ class MonthFragment : Fragment(), MonthlyCalendar {
|
|||||||
|
|
||||||
mCalendar.apply {
|
mCalendar.apply {
|
||||||
mTargetDate = Formatter.getDateTimeFromCode(mDayCode)
|
mTargetDate = Formatter.getDateTimeFromCode(mDayCode)
|
||||||
getDays() // prefill the screen asap, even if without events
|
getDays(false) // prefill the screen asap, even if without events
|
||||||
}
|
}
|
||||||
updateCalendar()
|
updateCalendar()
|
||||||
}
|
}
|
||||||
|
@@ -18,7 +18,6 @@ class MonthlyCalendarImpl(val mCallback: MonthlyCalendar, val mContext: Context)
|
|||||||
|
|
||||||
private val mToday: String = DateTime().toString(Formatter.DAYCODE_PATTERN)
|
private val mToday: String = DateTime().toString(Formatter.DAYCODE_PATTERN)
|
||||||
private var mEvents = ArrayList<Event>()
|
private var mEvents = ArrayList<Event>()
|
||||||
private var days = ArrayList<DayMonthly>(DAYS_CNT)
|
|
||||||
private var mFilterEventTypes = true
|
private var mFilterEventTypes = true
|
||||||
|
|
||||||
lateinit var mTargetDate: DateTime
|
lateinit var mTargetDate: DateTime
|
||||||
@@ -34,12 +33,11 @@ class MonthlyCalendarImpl(val mCallback: MonthlyCalendar, val mContext: Context)
|
|||||||
}
|
}
|
||||||
|
|
||||||
fun getMonth(targetDate: DateTime) {
|
fun getMonth(targetDate: DateTime) {
|
||||||
days.clear()
|
|
||||||
updateMonthlyCalendar(targetDate)
|
updateMonthlyCalendar(targetDate)
|
||||||
}
|
}
|
||||||
|
|
||||||
fun getDays() {
|
fun getDays(markDaysWithEvents: Boolean) {
|
||||||
if (days.isEmpty()) {
|
val days = ArrayList<DayMonthly>(DAYS_CNT)
|
||||||
val currMonthDays = mTargetDate.dayOfMonth().maximumValue
|
val currMonthDays = mTargetDate.dayOfMonth().maximumValue
|
||||||
var firstDayIndex = mTargetDate.withDayOfMonth(1).dayOfWeek
|
var firstDayIndex = mTargetDate.withDayOfMonth(1).dayOfWeek
|
||||||
if (!mContext.config.isSundayFirst)
|
if (!mContext.config.isSundayFirst)
|
||||||
@@ -77,12 +75,11 @@ class MonthlyCalendarImpl(val mCallback: MonthlyCalendar, val mContext: Context)
|
|||||||
days.add(day)
|
days.add(day)
|
||||||
value++
|
value++
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
if (mEvents.isEmpty()) {
|
if (markDaysWithEvents) {
|
||||||
mCallback.updateMonthlyCalendar(monthName, days)
|
|
||||||
} else {
|
|
||||||
markDaysWithEvents(days)
|
markDaysWithEvents(days)
|
||||||
|
} else {
|
||||||
|
mCallback.updateMonthlyCalendar(monthName, days)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -133,11 +130,12 @@ class MonthlyCalendarImpl(val mCallback: MonthlyCalendar, val mContext: Context)
|
|||||||
}
|
}
|
||||||
|
|
||||||
private fun gotEvents(events: ArrayList<Event>) {
|
private fun gotEvents(events: ArrayList<Event>) {
|
||||||
mEvents = if (mFilterEventTypes)
|
mEvents = if (mFilterEventTypes) {
|
||||||
mContext.getFilteredEvents(events) as ArrayList<Event>
|
mContext.getFilteredEvents(events) as ArrayList<Event>
|
||||||
else
|
} else {
|
||||||
events
|
events
|
||||||
|
}
|
||||||
|
|
||||||
getDays()
|
getDays(true)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user