moved date to title

This commit is contained in:
Vadim 2025-07-19 19:00:47 +02:00
parent 137d13cfbe
commit 3cd4d32a2b
6 changed files with 44 additions and 60 deletions

View file

@ -170,7 +170,6 @@
"addEquipmentProfileTitle": "Ausrüstung hinzufügen",
"editEquipmentProfileTitle": "Ausrüstung bearbeiten",
"editPhotoTitle": "Foto bearbeiten",
"date": "Datum",
"ndFilter": "ND Filter",
"note": "Notiz",
"notSet": "Nicht gesetzt",

View file

@ -170,7 +170,6 @@
"addEquipmentProfileTitle": "Add equipment",
"editEquipmentProfileTitle": "Edit equipment",
"editPhotoTitle": "Edit Photo",
"date": "Date",
"ndFilter": "ND Filter",
"note": "Note",
"notSet": "Not set",

View file

@ -161,7 +161,6 @@
"addEquipmentProfileTitle": "Ajouter un profil",
"editEquipmentProfileTitle": "Editer le profil",
"editPhotoTitle": "Modifier la photo",
"date": "Date",
"ndFilter": "Filtre ND",
"note": "Note",
"notSet": "Non défini",

View file

@ -160,7 +160,6 @@
"addEquipmentProfileTitle": "Добавить профиль",
"editEquipmentProfileTitle": "Редактировать профиль",
"editPhotoTitle": "Редактировать фото",
"date": "Дата",
"ndFilter": "ND фильтр",
"note": "Заметка",
"notSet": "Не задано",

View file

@ -158,7 +158,6 @@
"addEquipmentProfileTitle": "添加设备",
"editEquipmentProfileTitle": "编辑设备",
"editPhotoTitle": "编辑照片",
"date": "日期",
"ndFilter": "ND 滤镜",
"note": "备注",
"notSet": "未设置",

View file

@ -37,6 +37,7 @@ class _LogbookPhotoEditScreenState extends State<LogbookPhotoEditScreen> {
builder: (context, state) => IgnorePointer(
ignoring: state.isLoading,
child: SliverScreen(
title: Text(_formatDate(state.timestamp)),
appBarActions: [
BlocBuilder<LogbookPhotoEditBloc, LogbookPhotoEditState>(
buildWhen: (previous, current) => previous.canSave != current.canSave,
@ -60,17 +61,17 @@ class _LogbookPhotoEditScreenState extends State<LogbookPhotoEditScreen> {
SliverToBoxAdapter(
child: Opacity(
opacity: state.isLoading ? Dimens.disabledOpacity : Dimens.enabledOpacity,
child: const Column(
child: const Padding(
padding: EdgeInsets.symmetric(horizontal: Dimens.paddingM),
child: Column(
children: [
_PhotoPreviewBuilder(),
SizedBox(height: Dimens.grid16),
Card(
margin: EdgeInsets.all(Dimens.paddingM),
child: Padding(
padding: EdgeInsets.symmetric(vertical: Dimens.paddingM),
child: Column(
children: [
_DateListTile(),
//TODO: maybe make it edge to edge and add InterActiveViewer
LogbookPhotoCoordinatesListTile(),
_NoteListTile(),
_EvListTile(),
@ -86,12 +87,22 @@ class _LogbookPhotoEditScreenState extends State<LogbookPhotoEditScreen> {
),
),
),
),
SliverToBoxAdapter(child: SizedBox(height: MediaQuery.paddingOf(context).bottom)),
],
),
),
);
}
String _formatDate(DateTime dateTime) {
final day = dateTime.day.toString().padLeft(2, '0');
final month = dateTime.month.toString().padLeft(2, '0');
final year = dateTime.year.toString();
final hour = dateTime.hour.toString().padLeft(2, '0');
final minute = dateTime.minute.toString().padLeft(2, '0');
return '$day.$month.$year $hour:$minute';
}
}
class _PhotoPreviewBuilder extends StatelessWidget {
@ -105,6 +116,8 @@ class _PhotoPreviewBuilder extends StatelessWidget {
aspectRatio: PlatformConfig.cameraPreviewAspectRatio,
child: Hero(
tag: state.id,
child: ClipRRect(
borderRadius: BorderRadius.circular(Dimens.borderRadiusM),
child: PlatformConfig.cameraStubImage.isNotEmpty
? Image.asset(
PlatformConfig.cameraStubImage,
@ -116,30 +129,6 @@ class _PhotoPreviewBuilder extends StatelessWidget {
),
),
),
);
}
}
class _DateListTile extends StatelessWidget {
const _DateListTile();
String _formatDate(DateTime dateTime) {
final day = dateTime.day.toString().padLeft(2, '0');
final month = dateTime.month.toString().padLeft(2, '0');
final year = dateTime.year.toString();
final hour = dateTime.hour.toString().padLeft(2, '0');
final minute = dateTime.minute.toString().padLeft(2, '0');
return '$day.$month.$year $hour:$minute';
}
@override
Widget build(BuildContext context) {
return BlocBuilder<LogbookPhotoEditBloc, LogbookPhotoEditState>(
buildWhen: (_, __) => false,
builder: (context, state) => ListTile(
leading: const Icon(Icons.access_time),
title: Text(S.of(context).date),
trailing: Text(_formatDate(state.timestamp)),
),
);
}