minor fixes
This commit is contained in:
parent
ad3b241e1d
commit
d3ed1a0d8e
4 changed files with 32 additions and 2 deletions
|
@ -63,7 +63,6 @@ class SettingsDefaults {
|
||||||
EntryAction.rotateScreen,
|
EntryAction.rotateScreen,
|
||||||
EntryAction.toggleFavourite,
|
EntryAction.toggleFavourite,
|
||||||
EntryAction.share,
|
EntryAction.share,
|
||||||
EntryAction.edit,
|
|
||||||
EntryAction.delete,
|
EntryAction.delete,
|
||||||
];
|
];
|
||||||
static const showOverlayOnOpening = true;
|
static const showOverlayOnOpening = true;
|
||||||
|
|
|
@ -12,6 +12,7 @@ import 'package:aves/widgets/viewer/info/metadata/xmp_ns/exif.dart';
|
||||||
import 'package:aves/widgets/viewer/info/metadata/xmp_ns/google.dart';
|
import 'package:aves/widgets/viewer/info/metadata/xmp_ns/google.dart';
|
||||||
import 'package:aves/widgets/viewer/info/metadata/xmp_ns/iptc.dart';
|
import 'package:aves/widgets/viewer/info/metadata/xmp_ns/iptc.dart';
|
||||||
import 'package:aves/widgets/viewer/info/metadata/xmp_ns/iptc4xmpext.dart';
|
import 'package:aves/widgets/viewer/info/metadata/xmp_ns/iptc4xmpext.dart';
|
||||||
|
import 'package:aves/widgets/viewer/info/metadata/xmp_ns/microsoft.dart';
|
||||||
import 'package:aves/widgets/viewer/info/metadata/xmp_ns/mwg.dart';
|
import 'package:aves/widgets/viewer/info/metadata/xmp_ns/mwg.dart';
|
||||||
import 'package:aves/widgets/viewer/info/metadata/xmp_ns/photoshop.dart';
|
import 'package:aves/widgets/viewer/info/metadata/xmp_ns/photoshop.dart';
|
||||||
import 'package:aves/widgets/viewer/info/metadata/xmp_ns/tiff.dart';
|
import 'package:aves/widgets/viewer/info/metadata/xmp_ns/tiff.dart';
|
||||||
|
@ -60,6 +61,8 @@ class XmpNamespace extends Equatable {
|
||||||
return XmpMgwRegionsNamespace(rawProps);
|
return XmpMgwRegionsNamespace(rawProps);
|
||||||
case XmpMMNamespace.ns:
|
case XmpMMNamespace.ns:
|
||||||
return XmpMMNamespace(rawProps);
|
return XmpMMNamespace(rawProps);
|
||||||
|
case XmpMPNamespace.ns:
|
||||||
|
return XmpMPNamespace(rawProps);
|
||||||
case XmpNoteNamespace.ns:
|
case XmpNoteNamespace.ns:
|
||||||
return XmpNoteNamespace(rawProps);
|
return XmpNoteNamespace(rawProps);
|
||||||
case XmpPhotoshopNamespace.ns:
|
case XmpPhotoshopNamespace.ns:
|
||||||
|
@ -151,7 +154,7 @@ class XmpNamespace extends Equatable {
|
||||||
? [
|
? [
|
||||||
if (displayTitle.isNotEmpty)
|
if (displayTitle.isNotEmpty)
|
||||||
Padding(
|
Padding(
|
||||||
padding: const EdgeInsets.only(top: 8),
|
padding: const EdgeInsets.only(top: 8, bottom: 4),
|
||||||
child: HighlightTitle(
|
child: HighlightTitle(
|
||||||
title: displayTitle,
|
title: displayTitle,
|
||||||
color: context.select<AvesColorsData, Color?>((v) => v.fromBrandColor(BrandColors.get(displayTitle))),
|
color: context.select<AvesColorsData, Color?>((v) => v.fromBrandColor(BrandColors.get(displayTitle))),
|
||||||
|
|
25
lib/widgets/viewer/info/metadata/xmp_ns/microsoft.dart
Normal file
25
lib/widgets/viewer/info/metadata/xmp_ns/microsoft.dart
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
import 'package:aves/widgets/viewer/info/metadata/xmp_namespaces.dart';
|
||||||
|
import 'package:aves/widgets/viewer/info/metadata/xmp_structs.dart';
|
||||||
|
import 'package:flutter/widgets.dart';
|
||||||
|
|
||||||
|
class XmpMPNamespace extends XmpNamespace {
|
||||||
|
static const ns = 'MP';
|
||||||
|
|
||||||
|
static final regionListPattern = RegExp(ns + r':RegionInfo/MPRI:Regions\[(\d+)\]/(.*)');
|
||||||
|
|
||||||
|
final regionList = <int, Map<String, String>>{};
|
||||||
|
|
||||||
|
XmpMPNamespace(Map<String, String> rawProps) : super(ns, rawProps);
|
||||||
|
|
||||||
|
@override
|
||||||
|
bool extractData(XmpProp prop) => extractIndexedStruct(prop, regionListPattern, regionList);
|
||||||
|
|
||||||
|
@override
|
||||||
|
List<Widget> buildFromExtractedData() => [
|
||||||
|
if (regionList.isNotEmpty)
|
||||||
|
XmpStructArrayCard(
|
||||||
|
title: 'Regions',
|
||||||
|
structByIndex: regionList,
|
||||||
|
),
|
||||||
|
];
|
||||||
|
}
|
|
@ -2,6 +2,7 @@ import 'dart:math';
|
||||||
|
|
||||||
import 'package:aves/theme/durations.dart';
|
import 'package:aves/theme/durations.dart';
|
||||||
import 'package:aves/theme/icons.dart';
|
import 'package:aves/theme/icons.dart';
|
||||||
|
import 'package:aves/theme/themes.dart';
|
||||||
import 'package:aves/utils/constants.dart';
|
import 'package:aves/utils/constants.dart';
|
||||||
import 'package:aves/widgets/common/basic/multi_cross_fader.dart';
|
import 'package:aves/widgets/common/basic/multi_cross_fader.dart';
|
||||||
import 'package:aves/widgets/common/extensions/build_context.dart';
|
import 'package:aves/widgets/common/extensions/build_context.dart';
|
||||||
|
@ -50,6 +51,7 @@ class _XmpStructArrayCardState extends State<XmpStructArrayCard> {
|
||||||
}
|
}
|
||||||
|
|
||||||
return Card(
|
return Card(
|
||||||
|
color: Themes.thirdLayerColor(context),
|
||||||
margin: XmpStructCard.cardMargin,
|
margin: XmpStructCard.cardMargin,
|
||||||
child: Column(
|
child: Column(
|
||||||
crossAxisAlignment: CrossAxisAlignment.start,
|
crossAxisAlignment: CrossAxisAlignment.start,
|
||||||
|
@ -120,6 +122,7 @@ class XmpStructCard extends StatelessWidget {
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return Card(
|
return Card(
|
||||||
|
color: Themes.thirdLayerColor(context),
|
||||||
margin: cardMargin,
|
margin: cardMargin,
|
||||||
child: Padding(
|
child: Padding(
|
||||||
padding: const EdgeInsets.all(8),
|
padding: const EdgeInsets.all(8),
|
||||||
|
|
Loading…
Reference in a new issue