Files
umbrix/lib/utils/text_utils.dart
2024-03-08 00:20:48 +01:00

39 lines
860 B
Dart

import 'package:flutter/material.dart';
import 'package:hiddify/gen/fonts.gen.dart';
import 'package:intl/intl.dart' as intl;
import 'dart:io';
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 {
return intl.Bidi.detectRtlDirectionality(this)
? TextDirection.rtl
: TextDirection.ltr;
}
}
extension TextEditingControllerX on TextEditingController {
TextDirection? get textDirection {
if (text.isEmpty) return null;
return text.textDirection;
}
}
String getEmojiFont4Desktop() {
if (Platform.isLinux || Platform.isWindows) {
return FontFamily.emoji;
}
return "";
}