update the widget from the helper if an event changes

This commit is contained in:
tibbi
2016-11-19 17:12:38 +01:00
parent 8e4388c749
commit 93a901a336
4 changed files with 6 additions and 11 deletions

View File

@@ -365,19 +365,16 @@ class EventActivity : SimpleActivity(), DBHelper.EventsListener {
toast(R.string.event_added) toast(R.string.event_added)
} }
scheduleNotification(event) scheduleNotification(event)
updateWidget()
finish() finish()
} }
override fun eventUpdated(event: Event) { override fun eventUpdated(event: Event) {
scheduleNotification(event) scheduleNotification(event)
toast(R.string.event_updated) toast(R.string.event_updated)
updateWidget()
finish() finish()
} }
override fun eventsDeleted(cnt: Int) { override fun eventsDeleted(cnt: Int) {
updateWidget()
} }
override fun gotEvents(events: MutableList<Event>) { override fun gotEvents(events: MutableList<Event>) {

View File

@@ -17,7 +17,6 @@ import com.simplemobiletools.calendar.R
import com.simplemobiletools.calendar.activities.EventActivity import com.simplemobiletools.calendar.activities.EventActivity
import com.simplemobiletools.calendar.adapters.EventsAdapter import com.simplemobiletools.calendar.adapters.EventsAdapter
import com.simplemobiletools.calendar.extensions.adjustAlpha import com.simplemobiletools.calendar.extensions.adjustAlpha
import com.simplemobiletools.calendar.extensions.updateWidget
import com.simplemobiletools.calendar.helpers.* import com.simplemobiletools.calendar.helpers.*
import com.simplemobiletools.calendar.helpers.Formatter import com.simplemobiletools.calendar.helpers.Formatter
import com.simplemobiletools.calendar.interfaces.NavigationListener import com.simplemobiletools.calendar.interfaces.NavigationListener
@@ -220,16 +219,13 @@ class DayFragment : Fragment(), DBHelper.EventsListener, AdapterView.OnItemClick
} }
override fun eventInserted(event: Event) { override fun eventInserted(event: Event) {
context.updateWidget()
} }
override fun eventUpdated(event: Event) { override fun eventUpdated(event: Event) {
context.updateWidget()
} }
override fun eventsDeleted(cnt: Int) { override fun eventsDeleted(cnt: Int) {
checkEvents() checkEvents()
context.updateWidget()
} }
override fun gotEvents(events: MutableList<Event>) { override fun gotEvents(events: MutableList<Event>) {

View File

@@ -14,7 +14,6 @@ import com.simplemobiletools.calendar.activities.MainActivity
import com.simplemobiletools.calendar.adapters.EventsListAdapter import com.simplemobiletools.calendar.adapters.EventsListAdapter
import com.simplemobiletools.calendar.extensions.beGoneIf import com.simplemobiletools.calendar.extensions.beGoneIf
import com.simplemobiletools.calendar.extensions.beVisibleIf import com.simplemobiletools.calendar.extensions.beVisibleIf
import com.simplemobiletools.calendar.extensions.updateWidget
import com.simplemobiletools.calendar.helpers.DBHelper import com.simplemobiletools.calendar.helpers.DBHelper
import com.simplemobiletools.calendar.helpers.EVENT_ID import com.simplemobiletools.calendar.helpers.EVENT_ID
import com.simplemobiletools.calendar.helpers.Formatter import com.simplemobiletools.calendar.helpers.Formatter
@@ -185,17 +184,14 @@ class EventListFragment : Fragment(), DBHelper.GetEventsListener, AdapterView.On
override fun eventInserted(event: Event) { override fun eventInserted(event: Event) {
checkEvents() checkEvents()
context.updateWidget()
} }
override fun eventUpdated(event: Event) { override fun eventUpdated(event: Event) {
checkEvents() checkEvents()
context.updateWidget()
} }
override fun eventsDeleted(cnt: Int) { override fun eventsDeleted(cnt: Int) {
checkPlaceholderVisibility() checkPlaceholderVisibility()
context.updateWidget()
} }
interface DeleteListener : NavigationListener { interface DeleteListener : NavigationListener {

View File

@@ -9,6 +9,7 @@ import android.database.sqlite.SQLiteQueryBuilder
import android.text.TextUtils import android.text.TextUtils
import com.simplemobiletools.calendar.extensions.getIntValue import com.simplemobiletools.calendar.extensions.getIntValue
import com.simplemobiletools.calendar.extensions.getStringValue import com.simplemobiletools.calendar.extensions.getStringValue
import com.simplemobiletools.calendar.extensions.updateWidget
import com.simplemobiletools.calendar.models.Event import com.simplemobiletools.calendar.models.Event
import org.joda.time.DateTime import org.joda.time.DateTime
import java.util.* import java.util.*
@@ -30,6 +31,7 @@ class DBHelper(context: Context) : SQLiteOpenHelper(context, DB_NAME, null, DB_V
private val COL_REPEAT_DAY = "repeat_day" private val COL_REPEAT_DAY = "repeat_day"
private var mEventsListener: EventsListener? = null private var mEventsListener: EventsListener? = null
private var context: Context? = null
companion object { companion object {
private val DB_NAME = "events.db" private val DB_NAME = "events.db"
@@ -39,6 +41,7 @@ class DBHelper(context: Context) : SQLiteOpenHelper(context, DB_NAME, null, DB_V
constructor(context: Context, callback: EventsListener?) : this(context) { constructor(context: Context, callback: EventsListener?) : this(context) {
mEventsListener = callback mEventsListener = callback
this.context = context
} }
init { init {
@@ -76,6 +79,7 @@ class DBHelper(context: Context) : SQLiteOpenHelper(context, DB_NAME, null, DB_V
mDb.insert(META_TABLE_NAME, null, metaValues) mDb.insert(META_TABLE_NAME, null, metaValues)
} }
context?.updateWidget()
mEventsListener?.eventInserted(event) mEventsListener?.eventInserted(event)
} }
@@ -93,6 +97,7 @@ class DBHelper(context: Context) : SQLiteOpenHelper(context, DB_NAME, null, DB_V
mDb.insertWithOnConflict(META_TABLE_NAME, null, metaValues, SQLiteDatabase.CONFLICT_REPLACE) mDb.insertWithOnConflict(META_TABLE_NAME, null, metaValues, SQLiteDatabase.CONFLICT_REPLACE)
} }
context?.updateWidget()
mEventsListener?.eventUpdated(event) mEventsListener?.eventUpdated(event)
} }
@@ -133,6 +138,7 @@ class DBHelper(context: Context) : SQLiteOpenHelper(context, DB_NAME, null, DB_V
val metaSelection = "$COL_EVENT_ID IN ($args)" val metaSelection = "$COL_EVENT_ID IN ($args)"
mDb.delete(META_TABLE_NAME, metaSelection, null) mDb.delete(META_TABLE_NAME, metaSelection, null)
context?.updateWidget()
mEventsListener?.eventsDeleted(ids.size) mEventsListener?.eventsDeleted(ids.size)
} }