Add support for fixing incorrect MP tag

Signed-off-by: Neeraj Gupta <254676+ua741@users.noreply.github.com>
This commit is contained in:
Neeraj Gupta 2023-11-02 12:15:26 +05:30
parent 05f3245959
commit baef66ddd0
4 changed files with 10 additions and 2 deletions

View file

@ -278,6 +278,7 @@
"${BUILT_PRODUCTS_DIR}/background_fetch/background_fetch.framework",
"${BUILT_PRODUCTS_DIR}/connectivity_plus/connectivity_plus.framework",
"${BUILT_PRODUCTS_DIR}/device_info_plus/device_info_plus.framework",
"${BUILT_PRODUCTS_DIR}/file_saver/file_saver.framework",
"${BUILT_PRODUCTS_DIR}/fk_user_agent/fk_user_agent.framework",
"${BUILT_PRODUCTS_DIR}/flutter_email_sender/flutter_email_sender.framework",
"${BUILT_PRODUCTS_DIR}/flutter_image_compress/flutter_image_compress.framework",
@ -356,6 +357,7 @@
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/background_fetch.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/connectivity_plus.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/device_info_plus.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/file_saver.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/fk_user_agent.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/flutter_email_sender.framework",
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/flutter_image_compress.framework",

View file

@ -6,7 +6,7 @@ import "package:photos/models/file/trash_file.dart";
extension FilePropsExtn on EnteFile {
bool get isLivePhoto => fileType == FileType.livePhoto;
bool get isMotionPhoto => pubMagicMetadata?.mvi != null;
bool get isMotionPhoto => (pubMagicMetadata?.mvi ?? 0) > 0;
bool get isLiveOrMotionPhoto => isLivePhoto || isMotionPhoto;

View file

@ -43,7 +43,7 @@ class PubMagicMetadata {
double? lat;
double? long;
// Motion Video Index. Positive value indicates that the file is a motion
// Motion Video Index. Positive value (>0) indicates that the file is a motion
// photo
int? mvi;

View file

@ -185,6 +185,12 @@ class _ZoomableLiveImageNewState extends State<ZoomableLiveImageNew>
return motionPhoto.getMotionVideoFile(
index: index,
);
} else if (_enteFile.isMotionPhoto && _enteFile.canEditMetaInfo) {
_logger.finest('Incorrectly tagged as MP, reset tag ${_enteFile.tag}');
FileMagicService.instance.updatePublicMagicMetadata(
[_enteFile],
{motionVideoIndexKey: 0},
).ignore();
}
}
return null;