mirror of
https://github.com/SimpleMobileTools/Simple-Calendar.git
synced 2025-06-05 21:59:17 +02:00
fix #643, always properly determine which layout show be used at list views
This commit is contained in:
@@ -76,6 +76,14 @@ class DayEventsAdapter(activity: SimpleActivity, val events: ArrayList<Event>, r
|
|||||||
val detailField = if (replaceDescriptionWithLocation) event.location else event.description
|
val detailField = if (replaceDescriptionWithLocation) event.location else event.description
|
||||||
return if (event.startTS == event.endTS && detailField.isEmpty()) {
|
return if (event.startTS == event.endTS && detailField.isEmpty()) {
|
||||||
ITEM_EVENT_SIMPLE
|
ITEM_EVENT_SIMPLE
|
||||||
|
} else if (event.getIsAllDay()) {
|
||||||
|
val startCode = Formatter.getDayCodeFromTS(event.startTS)
|
||||||
|
val endCode = Formatter.getDayCodeFromTS(event.endTS)
|
||||||
|
if (startCode == endCode) {
|
||||||
|
ITEM_EVENT_SIMPLE
|
||||||
|
} else {
|
||||||
|
ITEM_EVENT
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
ITEM_EVENT
|
ITEM_EVENT
|
||||||
}
|
}
|
||||||
@@ -94,7 +102,7 @@ class DayEventsAdapter(activity: SimpleActivity, val events: ArrayList<Event>, r
|
|||||||
val startCode = Formatter.getDayCodeFromTS(event.startTS)
|
val startCode = Formatter.getDayCodeFromTS(event.startTS)
|
||||||
val endCode = Formatter.getDayCodeFromTS(event.endTS)
|
val endCode = Formatter.getDayCodeFromTS(event.endTS)
|
||||||
|
|
||||||
event_item_end.apply {
|
event_item_end?.apply {
|
||||||
text = Formatter.getTimeFromTS(context, event.endTS)
|
text = Formatter.getTimeFromTS(context, event.endTS)
|
||||||
if (startCode != endCode) {
|
if (startCode != endCode) {
|
||||||
if (event.getIsAllDay()) {
|
if (event.getIsAllDay()) {
|
||||||
|
@@ -102,6 +102,14 @@ class EventListAdapter(activity: SimpleActivity, var listItems: ArrayList<ListIt
|
|||||||
val detailField = if (replaceDescription) event.location else event.description
|
val detailField = if (replaceDescription) event.location else event.description
|
||||||
if (event.startTS == event.endTS && detailField.isEmpty()) {
|
if (event.startTS == event.endTS && detailField.isEmpty()) {
|
||||||
ITEM_EVENT_SIMPLE
|
ITEM_EVENT_SIMPLE
|
||||||
|
} else if (event.isAllDay) {
|
||||||
|
val startCode = Formatter.getDayCodeFromTS(event.startTS)
|
||||||
|
val endCode = Formatter.getDayCodeFromTS(event.endTS)
|
||||||
|
if (startCode == endCode) {
|
||||||
|
ITEM_EVENT_SIMPLE
|
||||||
|
} else {
|
||||||
|
ITEM_EVENT
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
ITEM_EVENT
|
ITEM_EVENT
|
||||||
}
|
}
|
||||||
|
@@ -41,8 +41,7 @@ class EventListWidgetAdapter(val context: Context) : RemoteViewsService.RemoteVi
|
|||||||
|
|
||||||
if (type == ITEM_EVENT) {
|
if (type == ITEM_EVENT) {
|
||||||
val event = events[position] as ListEvent
|
val event = events[position] as ListEvent
|
||||||
val detailField = if (replaceDescription) event.location else event.description
|
val layout = getItemViewLayout(event)
|
||||||
val layout = if (event.startTS == event.endTS && detailField.isEmpty()) R.layout.event_list_item_widget_simple else R.layout.event_list_item_widget
|
|
||||||
remoteView = RemoteViews(context.packageName, layout)
|
remoteView = RemoteViews(context.packageName, layout)
|
||||||
setupListEvent(remoteView, event)
|
setupListEvent(remoteView, event)
|
||||||
} else {
|
} else {
|
||||||
@@ -53,6 +52,23 @@ class EventListWidgetAdapter(val context: Context) : RemoteViewsService.RemoteVi
|
|||||||
return remoteView
|
return remoteView
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun getItemViewLayout(event: ListEvent): Int {
|
||||||
|
val detailField = if (replaceDescription) event.location else event.description
|
||||||
|
return if (event.startTS == event.endTS && detailField.isEmpty()) {
|
||||||
|
R.layout.event_list_item_widget_simple
|
||||||
|
} else if (event.isAllDay) {
|
||||||
|
val startCode = Formatter.getDayCodeFromTS(event.startTS)
|
||||||
|
val endCode = Formatter.getDayCodeFromTS(event.endTS)
|
||||||
|
if (startCode == endCode) {
|
||||||
|
R.layout.event_list_item_widget_simple
|
||||||
|
} else {
|
||||||
|
R.layout.event_list_item_widget
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
R.layout.event_list_item_widget
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private fun setupListEvent(remoteView: RemoteViews, item: ListEvent) {
|
private fun setupListEvent(remoteView: RemoteViews, item: ListEvent) {
|
||||||
var curTextColor = textColor
|
var curTextColor = textColor
|
||||||
remoteView.apply {
|
remoteView.apply {
|
||||||
|
Reference in New Issue
Block a user