From d83e9a26c4c8afea7d23169d3a8f57b5e2ef9497 Mon Sep 17 00:00:00 2001 From: otsmr Date: Sun, 18 Jan 2026 02:43:09 +0100 Subject: [PATCH] fix: Apply platform-specific Y-axis scaling to face filter images. --- .../camera/painters/face_filters/beard_filter_painter.dart | 3 ++- .../camera/painters/face_filters/dog_filter_painter.dart | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/lib/src/views/camera/painters/face_filters/beard_filter_painter.dart b/lib/src/views/camera/painters/face_filters/beard_filter_painter.dart index 5451f41..95f2b12 100644 --- a/lib/src/views/camera/painters/face_filters/beard_filter_painter.dart +++ b/lib/src/views/camera/painters/face_filters/beard_filter_painter.dart @@ -1,4 +1,5 @@ import 'dart:async'; +import 'dart:io'; import 'dart:math'; import 'dart:ui' as ui; import 'package:flutter/material.dart'; @@ -140,7 +141,7 @@ class BeardFilterPainter extends FaceFilterPainter { ..save() ..translate(position.dx, position.dy) ..rotate(rotation) - ..scale(scaleX, -1); + ..scale(scaleX, Platform.isAndroid ? -1 : 1); final srcRect = Rect.fromLTWH(0, 0, image.width.toDouble(), image.height.toDouble()); diff --git a/lib/src/views/camera/painters/face_filters/dog_filter_painter.dart b/lib/src/views/camera/painters/face_filters/dog_filter_painter.dart index bab086f..5ca873c 100644 --- a/lib/src/views/camera/painters/face_filters/dog_filter_painter.dart +++ b/lib/src/views/camera/painters/face_filters/dog_filter_painter.dart @@ -1,4 +1,5 @@ import 'dart:async'; +import 'dart:io'; import 'dart:math'; import 'dart:ui' as ui; import 'package:flutter/material.dart'; @@ -180,9 +181,9 @@ class DogFilterPainter extends FaceFilterPainter { ..translate(position.dx, position.dy) ..rotate(rotation); if (isFlipped) { - canvas.scale(-scaleX, -1); + canvas.scale(-scaleX, Platform.isAndroid ? -1 : 1); } else { - canvas.scale(scaleX, -1); + canvas.scale(scaleX, Platform.isAndroid ? -1 : 1); } final srcRect =