Files
umbrix/lib/utils/text_utils.dart

28 lines
652 B
Dart
Raw Permalink Normal View History

2023-07-06 17:18:41 +03:30
import 'package:flutter/material.dart';
import 'package:intl/intl.dart' as intl;
extension TextAlignX on BuildContext {
bool get isRtl => Directionality.of(this) == TextDirection.rtl;
TextAlign get textAlign {
if (isRtl) {
return TextAlign.right;
} else {
return TextAlign.left;
}
}
}
extension StringX on String {
TextDirection get textDirection {
2024-07-04 21:06:08 +02:00
return intl.Bidi.detectRtlDirectionality(this) ? TextDirection.rtl : TextDirection.ltr;
2023-07-06 17:18:41 +03:30
}
}
extension TextEditingControllerX on TextEditingController {
TextDirection? get textDirection {
if (text.isEmpty) return null;
return text.textDirection;
}
}