Releases: THET1ME-1/Veha
Release list
Veha 0.7.13
Отменённые пары больше не воскресают
Google помечает несостоявшееся занятие строкой EXDATE у ряда: неделя
аттестаций, каникулы, перенос. Разбор её не читал, а выгрузка не писала —
приложение показывало пары там, где их отменили, и расписание расходилось с
настоящим на целую неделю.
Загрузка файла доводит отмены до базы и заменяет прежние: раз человек грузит
файл заново, правда в файле. Выгрузка пишет их обратно, так что круг
«сохранил — загрузил» ничего не теряет.
Veha 0.7.12
Отмеченные поля видно, не открывая событие
Поле, отмеченное «в карточке», человек отмечает ровно ради того, чтобы читать
его на ходу. Отбор при этом жил в одной сетке часов: лента дня и лист события
про свои поля не знали вовсе, и кабинет не показывался нигде.
Теперь лист события выводит отмеченные поля первой строкой, до правила повтора,
а лента дня — под названием, вперёд места: адрес корпуса и так известен, номер
кабинета меняется от пары к паре.
Veha 0.7.11
Свои поля наконец доезжают с сервера
Кабинет и вид занятия уезжали на сервер и не возвращались: приём дельты искал
приехавшую строку по id, а у значений полей и пропусков ряда ключ на клиенте
составной, колонки id в таблице нет вовсе. Строка отбрасывалась вместе с
серверным ключом, и карточка занятия показывала только место и повтор.
Строка опознаётся по первичному ключу своей таблицы. Оттуда же два соседних
случая, закрытых тестами: мягкое удаление приезжает пометкой, и таблица, которая
про удаление не знает, убирает строку насовсем; а дочерняя строка, обогнавшая
своё событие, ждёт следующей страницы вместо того, чтобы уронить весь круг на
внешнем ключе.
Сервер режет дельту по таблицам, поэтому значение поля и правда приезжает раньше
занятия, к которому оно относится: на настоящем расписании это ловилось сразу.
Veha 0.7.10
Полоса в неделе снова целая
Многодневное событие было разрезано по колонкам и читалось как событие на
каждый день по отдельности. Теперь это один прямоугольник на все свои дни: он
едет вместе с колонками, а лишнее срезается по краю экрана. У события,
начавшегося раньше видимой недели, название прижато к краю — цветная плашка без
подписи не говорит ничего.
Окно свободного времени больше не наезжает на занятие
Событие с пометкой «свободен» лента дня рисует блоком, а окна считала мимо
него: между занятиями в четверть часа стояло «2 ч 15 мин свободно», и красная
риска «сейчас» попадала сразу в две строки. Ленте окна считаются по всему, что
в ней нарисовано; подсказка «когда я свободен» отметки по-прежнему пропускает —
день рождения не мешает назначить встречу.
Конец события в быстром листе правится
Пилюля с временем окончания была подписью без обработчика: конец приходил из
фразы («на час») или из длительности календаря, и поменять его было нечем.
Теперь она открывает выбор времени, а конец раньше начала уводит событие за
полночь — ночная смена ставится как есть.
APK: arm64-v8a для почти всех современных телефонов, armeabi-v7a для
старых, x86_64 для эмулятора.
Veha 0.7.9
Праздники вернулись в день
Отбор полос считал конец события исключающим, а у праздника конец равен
началу — и он пропадал отовсюду разом: в месяце полоса есть, а лист дня
отвечает «ничего не запланировано». Теперь события отбираются по занятым дням.
Полоса в неделе стоит в своих днях
Раньше она висела пилюлей во всю ширину недели, и день рождения девятнадцатого
выглядел событием на пять дней. Каждый день красит свой кусок, название пишет
тот, с которого полоса начинается.
Счётчик «день N из M» перестал уходить в минус: над неделей висело «-9-й из 1»
у события, которое ещё не начиналось. Однодневную полосу он больше не
подписывает вовсе.
Сетка часов рисует сутки целиком
Шкала считалась от первого события до последнего, и день открывался в семь
утра: ночную смену в него было не поставить, а тапом по часу не завести ничего
раньше первого дела. Теперь в сетке все двадцать четыре часа, а окно решает
прокрутка — день открывается на первом деле, свободный на семь утра.
APK: arm64-v8a для почти всех современных телефонов, armeabi-v7a для
старых, x86_64 для эмулятора.
Veha 0.7.8
День рождения перестал занимать две клетки
Google выгружает суточное событие не датой, а временем: с полуночи 26-го до
полуночи 27-го. Полоса в месяце красилась по дате конца и захватывала 27-е,
где события нет ни минуты. Теперь последний день полосы считается по занятому
времени: конец ровно в полночь принадлежит прошедшему дню.
У события на весь день конец и так последний занятый день — там вычитать
нечего, и курс «до четырнадцатого» по-прежнему кончается четырнадцатого.
По тому же счёту идут полосы недели, подпись «день N из M» и срок в карточке
события.
APK: arm64-v8a для почти всех современных телефонов, armeabi-v7a для
старых, x86_64 для эмулятора.
Veha 0.7.7
Праздники встали на свой день
Однодневный праздник занимал в календаре две клетки: конец события на весь
день приехал с сервера на сутки дальше. Записи на сервере переписаны — 245
событий на весь день, от «Парада планет» до каникул, — и приезжают в
приложение обычной синхронизацией.
Событие на весь день — всегда полоса
Полосой считалось только то, что длиннее суток. Это держалось на той же
ошибке: пока конец стоял на сутки дальше, однодневный праздник проходил по
длительности. Теперь полоса решается признаком «весь день», а не длиной, и
праздник не отъедает свободное окно, не попадает в статистику часов и не даёт
накладку при перетаскивании.
APK: arm64-v8a для почти всех современных телефонов, armeabi-v7a для
старых, x86_64 для эмулятора.
Veha 0.7.6
Праздники чинятся перезаливкой файла
Вчерашняя правка DTEND научила читать конец события на весь день правильно,
но старые строки в базе так и остались с концом на сутки дальше: праздник
занимал две клетки календаря. Переписать их можно было только загрузкой файла
заново, а загрузка раздавала каждому событию новый ключ и удваивала календарь.
Теперь событие узнаётся по названию, началу и правилу повтора: тот же файл
вторым заходом переписывает его, а не заводит двойника.
Что делать: поставить обновление и загрузить те же файлы .ics ещё раз —
праздники и дни рождения встанут на свой день. Событие, у которого после
загрузки подвинули начало, приедет двойником: ключа UID у нас нет.
APK: arm64-v8a для почти всех современных телефонов, armeabi-v7a для
старых, x86_64 для эмулятора.
Veha 0.7.5
Праздник занимает один день, а не два
В формате .ics конец события на весь день исключающий: Google пишет
празднику 13 августа DTEND 14-го. Мы читали дату как есть, и однодневный
праздник растягивался на две клетки календаря. Теперь при загрузке сутки
вычитаются, при выгрузке прибавляются.
Щипок растягивает и ленту дня
Масштаб времени жил только в сетке часов: в ленте два пальца ничего не меняли,
хотя это то же расписание другим прочтением. Теперь щипок работает в обоих —
у кого день расписан по четвертям, разводит пальцы, кому важна вся картина
дня, сводит.
APK: arm64-v8a для почти всех современных телефонов, armeabi-v7a для
старых, x86_64 для эмулятора.
Veha 0.7.4
Полосы длинных событий знают своё место
Неделя и месяц брали длинные события из всего окна базы, а оно шире видимого на
месяц с запасом: над неделей висели дни рождения из сентября. Теперь каждый вид
берёт полосы только своих дней.
Подпись «день N из M» считалась от выбранного дня без границ, и над неделей
стояло «-34-й из 2». Номер держится внутри срока события.
Свободный день показывает часы
Вместо надписи «День свободен» лента рисует часовые блоки: пустые, но
нажимаемые — тап заводит дело в этот час. Надпись не отвечала на вопрос «куда
ткнуть, чтобы завести встречу в три», а вместе с ней у ленты пропадал щипок,
растягивающий час.
Час перестал быть полосой через одну: блоки идут подряд, разделённые зазором.
APK: arm64-v8a для почти всех современных телефонов, armeabi-v7a для
старых, x86_64 для эмулятора.