mirror of
https://github.com/SimpleMobileTools/Simple-Calendar.git
synced 2025-02-25 07:57:44 +01:00
fix #643, always properly determine which layout show be used at list views
This commit is contained in:
parent
a9e7dec84f
commit
d89a1043ea
@ -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 {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user