mirror of
https://github.com/anyproto/anytype-kotlin.git
synced 2025-06-08 05:47:05 +09:00
DROID-471 Sets | Fixes | Incorrect date displayed in relation and in grid cells (#2651)
This commit is contained in:
parent
1f1ab28617
commit
c8913b2861
3 changed files with 10 additions and 13 deletions
|
@ -15,7 +15,7 @@ import com.anytypeio.anytype.R
|
|||
import com.anytypeio.anytype.core_models.Block
|
||||
import com.anytypeio.anytype.core_models.Relation
|
||||
import com.anytypeio.anytype.core_utils.const.DateConst.DEFAULT_DATE_FORMAT
|
||||
import com.anytypeio.anytype.core_utils.ext.timeInSecondsFormat
|
||||
import com.anytypeio.anytype.core_utils.ext.formatTimeInMillis
|
||||
import com.anytypeio.anytype.domain.objects.DefaultObjectStore
|
||||
import com.anytypeio.anytype.domain.objects.ObjectStore
|
||||
import com.anytypeio.anytype.presentation.relations.ObjectSetConfig
|
||||
|
@ -23,7 +23,6 @@ import com.anytypeio.anytype.presentation.relations.providers.DataViewObjectRela
|
|||
import com.anytypeio.anytype.presentation.relations.providers.DataViewObjectValueProvider
|
||||
import com.anytypeio.anytype.presentation.sets.ObjectSet
|
||||
import com.anytypeio.anytype.presentation.sets.ObjectSetDatabase
|
||||
import com.anytypeio.anytype.presentation.sets.ObjectSetSession
|
||||
import com.anytypeio.anytype.presentation.sets.RelationDateValueViewModel
|
||||
import com.anytypeio.anytype.test_utils.MockDataFactory
|
||||
import com.anytypeio.anytype.ui.relations.RelationDateValueFragment
|
||||
|
@ -413,7 +412,7 @@ class ObjectRelationDateValueTest {
|
|||
)
|
||||
)
|
||||
|
||||
val exactDateFormat = valueDate.timeInSecondsFormat(DEFAULT_DATE_FORMAT)
|
||||
val exactDateFormat = valueDate.formatTimeInMillis(DEFAULT_DATE_FORMAT)
|
||||
onView(withId(R.id.ivNoDateCheck)).check(matches(not(isDisplayed())))
|
||||
onView(withId(R.id.ivYesterdayCheck)).check(matches(not(isDisplayed())))
|
||||
onView(withId(R.id.ivTodayCheck)).check(matches(not(isDisplayed())))
|
||||
|
@ -486,7 +485,7 @@ class ObjectRelationDateValueTest {
|
|||
)
|
||||
)
|
||||
|
||||
val exactDateFormat = valueDate.timeInSecondsFormat(DEFAULT_DATE_FORMAT)
|
||||
val exactDateFormat = valueDate.formatTimeInMillis(DEFAULT_DATE_FORMAT)
|
||||
onView(withId(R.id.ivNoDateCheck)).check(matches(not(isDisplayed())))
|
||||
onView(withId(R.id.ivYesterdayCheck)).check(matches(not(isDisplayed())))
|
||||
onView(withId(R.id.ivTodayCheck)).check(matches(not(isDisplayed())))
|
||||
|
@ -500,7 +499,7 @@ class ObjectRelationDateValueTest {
|
|||
it.onPickDate(valueUpdate)
|
||||
}
|
||||
|
||||
val updatedDateFormat = valueUpdate.timeInSecondsFormat(DEFAULT_DATE_FORMAT)
|
||||
val updatedDateFormat = valueUpdate.formatTimeInMillis(DEFAULT_DATE_FORMAT)
|
||||
onView(withId(R.id.ivTomorrowCheck)).check(matches(not(isDisplayed())))
|
||||
onView(withId(R.id.ivTodayCheck)).check(matches(not(isDisplayed())))
|
||||
onView(withId(R.id.ivYesterdayCheck)).check(matches(not(isDisplayed())))
|
||||
|
@ -572,7 +571,7 @@ class ObjectRelationDateValueTest {
|
|||
)
|
||||
)
|
||||
|
||||
val exactDateFormat = valueDate.timeInSecondsFormat(DEFAULT_DATE_FORMAT)
|
||||
val exactDateFormat = valueDate.formatTimeInMillis(DEFAULT_DATE_FORMAT)
|
||||
onView(withId(R.id.ivYesterdayCheck)).check(matches(not(isDisplayed())))
|
||||
onView(withId(R.id.ivTodayCheck)).check(matches(not(isDisplayed())))
|
||||
onView(withId(R.id.ivTomorrowCheck)).check(matches(not(isDisplayed())))
|
||||
|
|
|
@ -68,9 +68,9 @@ fun Long.formatTimestamp(isMillis: Boolean, format: String? = null): String {
|
|||
}
|
||||
}
|
||||
|
||||
fun Long.timeInSecondsFormat(pattern: String): String {
|
||||
fun Long.formatTimeInMillis(pattern: String): String {
|
||||
val simpleDateFormat = SimpleDateFormat(pattern, Locale.getDefault())
|
||||
return simpleDateFormat.format(this * 1000)
|
||||
return simpleDateFormat.format(this)
|
||||
}
|
||||
|
||||
const val NO_DATE = "No date"
|
||||
|
|
|
@ -6,12 +6,11 @@ import androidx.lifecycle.viewModelScope
|
|||
import com.anytypeio.anytype.core_models.Id
|
||||
import com.anytypeio.anytype.core_utils.const.DateConst.DEFAULT_DATE_FORMAT
|
||||
import com.anytypeio.anytype.core_utils.ext.cancel
|
||||
import com.anytypeio.anytype.core_utils.ext.formatTimeInMillis
|
||||
import com.anytypeio.anytype.core_utils.ext.getTodayTimeUnit
|
||||
import com.anytypeio.anytype.core_utils.ext.getTomorrowTimeUnit
|
||||
import com.anytypeio.anytype.core_utils.ext.getYesterdayTimeUnit
|
||||
import com.anytypeio.anytype.core_utils.ext.isSameDay
|
||||
import com.anytypeio.anytype.core_utils.ext.timeInSecondsFormat
|
||||
import com.anytypeio.anytype.core_utils.ext.toTimeSecondsLong
|
||||
import com.anytypeio.anytype.presentation.relations.DateParser
|
||||
import com.anytypeio.anytype.presentation.relations.providers.ObjectRelationProvider
|
||||
import com.anytypeio.anytype.presentation.relations.providers.ObjectValueProvider
|
||||
|
@ -42,8 +41,7 @@ class RelationDateValueViewModel(
|
|||
values.subscribe(objectId)
|
||||
) { relation, value ->
|
||||
setName(relation.name)
|
||||
val timeInMillis = DateParser.parse(value[relationId])
|
||||
setDate(timeInSeconds = timeInMillis?.toTimeSecondsLong())
|
||||
setDate(timeInSeconds = DateParser.parse(value[relationId]))
|
||||
}
|
||||
pipeline.collect()
|
||||
}
|
||||
|
@ -113,7 +111,7 @@ class RelationDateValueViewModel(
|
|||
val isYesterday = exactDay.isSameDay(yesterday)
|
||||
var exactDayFormat: String? = null
|
||||
if (!isToday && !isTomorrow && !isYesterday) {
|
||||
exactDayFormat = exactDay.timeInMillis.timeInSecondsFormat(DEFAULT_DATE_FORMAT)
|
||||
exactDayFormat = exactDay.timeInMillis.formatTimeInMillis(DEFAULT_DATE_FORMAT)
|
||||
}
|
||||
_views.value = views.value.copy(
|
||||
isToday = isToday,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue