feat!: Use new localisation setup from flutter 1.22

BREAKING CHANGE: This introduces that it might require up to 2 compiles for locals to work.
Also only arb files shall be checked into git.

Took 19 minutes
This commit is contained in:
Marcel 2020-10-03 11:11:07 +00:00 committed by Christian Pauly
commit 62cbc864f1
88 changed files with 489 additions and 12311 deletions

View file

@ -1,11 +1,11 @@
import 'dart:async';
import 'package:famedlysdk/famedlysdk.dart';
import 'package:fluffychat/l10n/l10n.dart';
import 'package:fluffychat/utils/app_route.dart';
import 'package:fluffychat/views/chat_details.dart';
import 'package:fluffychat/views/chat_list.dart';
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/l10n.dart';
import 'package:url_launcher/url_launcher.dart';
import 'dialogs/simple_dialogs.dart';

View file

@ -1,9 +1,9 @@
import 'package:famedlysdk/famedlysdk.dart';
import 'package:fluffychat/l10n/l10n.dart';
import 'package:fluffychat/utils/app_route.dart';
import 'package:fluffychat/utils/presence_extension.dart';
import 'package:fluffychat/views/chat.dart';
import 'package:flutter/material.dart';
import 'package:fluffychat/utils/presence_extension.dart';
import 'package:flutter_gen/gen_l10n/l10n.dart';
import '../avatar.dart';
import '../matrix.dart';

View file

@ -1,7 +1,7 @@
import 'dart:async';
import 'package:fluffychat/l10n/l10n.dart';
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/l10n.dart';
import 'package:flutter_sound/flutter_sound.dart';
import 'package:intl/intl.dart';

View file

@ -1,14 +1,14 @@
import 'dart:typed_data';
import 'dart:ui';
import 'package:flutter/material.dart';
import 'package:famedlysdk/famedlysdk.dart';
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/l10n.dart';
import 'package:native_imaging/native_imaging.dart' as native;
import '../../components/dialogs/simple_dialogs.dart';
import '../../utils/matrix_file_extension.dart';
import '../../utils/room_send_file_extension.dart';
import '../../components/dialogs/simple_dialogs.dart';
import '../../l10n/l10n.dart';
class SendFileDialog extends StatefulWidget {
final Room room;

View file

@ -1,7 +1,7 @@
import 'package:fluffychat/l10n/l10n.dart';
import 'package:flutter/material.dart';
import 'package:famedlysdk/famedlysdk.dart';
import 'package:bot_toast/bot_toast.dart';
import 'package:famedlysdk/famedlysdk.dart';
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/l10n.dart';
import 'package:matrix_link_text/link_text.dart';
class SimpleDialogs {

View file

@ -1,11 +1,11 @@
import 'dart:async';
import 'package:bot_toast/bot_toast.dart';
import 'package:famedlysdk/famedlysdk.dart';
import 'package:fluffychat/l10n/l10n.dart';
import 'package:fluffychat/utils/app_route.dart';
import 'package:fluffychat/views/chat_encryption_settings.dart';
import 'package:flutter/material.dart';
import 'package:bot_toast/bot_toast.dart';
import 'package:flutter_gen/gen_l10n/l10n.dart';
import 'dialogs/simple_dialogs.dart';
import 'matrix.dart';

View file

@ -1,18 +1,19 @@
import 'package:bot_toast/bot_toast.dart';
import 'package:famedlysdk/famedlysdk.dart';
import 'package:fluffychat/utils/matrix_locals.dart';
import 'package:fluffychat/views/chat.dart';
import 'package:flutter/material.dart';
import 'package:bot_toast/bot_toast.dart';
import 'package:flutter_gen/gen_l10n/l10n.dart';
import 'package:pedantic/pedantic.dart';
import '../../l10n/l10n.dart';
import '../../utils/app_route.dart';
import '../../utils/date_time_extension.dart';
import '../../views/chat.dart';
import '../theme_switcher.dart';
import '../avatar.dart';
import '../dialogs/send_file_dialog.dart';
import '../dialogs/simple_dialogs.dart';
import '../matrix.dart';
import '../dialogs/send_file_dialog.dart';
import '../theme_switcher.dart';
class ChatListItem extends StatelessWidget {
final Room room;
@ -132,7 +133,7 @@ class ChatListItem extends StatelessWidget {
children: <Widget>[
Expanded(
child: Text(
room.getLocalizedDisplayname(L10n.of(context)),
room.getLocalizedDisplayname(MatrixLocals(L10n.of(context))),
maxLines: 1,
overflow: TextOverflow.ellipsis,
softWrap: false,
@ -184,7 +185,7 @@ class ChatListItem extends StatelessWidget {
)
: Text(
room.lastEvent?.getLocalizedBody(
L10n.of(context),
MatrixLocals(L10n.of(context)),
withSenderNamePrefix: !room.isDirectChat ||
room.lastEvent.senderId == room.client.userID,
hideReply: true,

View file

@ -2,11 +2,11 @@ import 'package:famedlysdk/famedlysdk.dart';
import 'package:fluffychat/components/dialogs/simple_dialogs.dart';
import 'package:fluffychat/components/message_content.dart';
import 'package:fluffychat/components/reply_content.dart';
import 'package:fluffychat/l10n/l10n.dart';
import 'package:fluffychat/utils/date_time_extension.dart';
import 'package:fluffychat/utils/event_extension.dart';
import 'package:fluffychat/utils/string_color.dart';
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/l10n.dart';
import '../avatar.dart';
import '../matrix.dart';

View file

@ -1,9 +1,9 @@
import 'package:famedlysdk/famedlysdk.dart';
import 'package:fluffychat/components/dialogs/simple_dialogs.dart';
import 'package:fluffychat/l10n/l10n.dart';
import 'package:fluffychat/utils/app_route.dart';
import 'package:fluffychat/views/chat.dart';
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/l10n.dart';
import '../avatar.dart';
import '../matrix.dart';

View file

@ -2,8 +2,8 @@ import 'package:famedlysdk/famedlysdk.dart';
import 'package:famedlysdk/matrix_api.dart';
import 'package:fluffychat/components/dialogs/simple_dialogs.dart';
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/l10n.dart';
import '../../l10n/l10n.dart';
import '../../utils/app_route.dart';
import '../../views/chat.dart';
import '../avatar.dart';

View file

@ -1,6 +1,7 @@
import 'package:famedlysdk/famedlysdk.dart';
import 'package:fluffychat/l10n/l10n.dart';
import 'package:fluffychat/utils/matrix_locals.dart';
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/l10n.dart';
class StateMessage extends StatelessWidget {
final Event event;
@ -23,7 +24,7 @@ class StateMessage extends StatelessWidget {
borderRadius: BorderRadius.circular(7),
),
child: Text(
event.getLocalizedBody(L10n.of(context)),
event.getLocalizedBody(MatrixLocals(L10n.of(context))),
textAlign: TextAlign.center,
style: TextStyle(
color: Theme.of(context).textTheme.bodyText2.color,

View file

@ -1,22 +1,24 @@
import 'dart:async';
import 'dart:io';
import 'package:famedlysdk/famedlysdk.dart';
import 'package:famedlysdk/encryption.dart';
import 'package:famedlysdk/famedlysdk.dart';
import 'package:fluffychat/components/dialogs/simple_dialogs.dart';
import 'package:fluffychat/utils/firebase_controller.dart';
import 'package:fluffychat/utils/matrix_locals.dart';
import 'package:fluffychat/utils/platform_infos.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/l10n.dart';
import 'package:localstorage/localstorage.dart';
import 'package:url_launcher/url_launcher.dart';
import 'package:universal_html/prefer_universal/html.dart' as html;
import '../l10n/l10n.dart';
import 'package:url_launcher/url_launcher.dart';
import '../utils/app_route.dart';
import '../utils/beautify_string_extension.dart';
import '../utils/famedlysdk_store.dart';
import 'avatar.dart';
import '../views/key_verification.dart';
import '../utils/app_route.dart';
import 'avatar.dart';
class Matrix extends StatefulWidget {
static const String callNamespace = 'chat.fluffy.jitsi_call';
@ -168,7 +170,7 @@ class MatrixState extends State<Matrix> {
if (room.notificationCount == 0) return;
final event = Event.fromJson(eventUpdate.content, room);
final body = event.getLocalizedBody(
L10n.of(context),
MatrixLocals(L10n.of(context)),
withSenderNamePrefix:
!room.isDirectChat || room.lastEvent.senderId == client.userID,
);
@ -177,7 +179,7 @@ class MatrixState extends State<Matrix> {
..autoplay = true
..load();
html.Notification(
room.getLocalizedDisplayname(L10n.of(context)),
room.getLocalizedDisplayname(MatrixLocals(L10n.of(context))),
body: body,
icon: event.sender.avatarUrl?.getThumbnail(client,
width: 64, height: 64, method: ThumbnailMethod.crop) ??

View file

@ -1,15 +1,17 @@
import 'package:famedlysdk/famedlysdk.dart';
import 'package:fluffychat/components/audio_player.dart';
import 'package:fluffychat/components/image_bubble.dart';
import 'package:fluffychat/l10n/l10n.dart';
import 'package:fluffychat/utils/event_extension.dart';
import 'package:fluffychat/utils/matrix_locals.dart';
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/l10n.dart';
import 'package:matrix_link_text/link_text.dart';
import 'package:url_launcher/url_launcher.dart';
import '../utils/url_launcher.dart';
import 'html_message.dart';
import 'matrix.dart';
import 'message_download_content.dart';
import 'html_message.dart';
import '../utils/url_launcher.dart';
class MessageContent extends StatelessWidget {
final Event event;
@ -87,7 +89,8 @@ class MessageContent extends StatelessWidget {
event.numberEmotes <= 10;
final fontSize = DefaultTextStyle.of(context).style.fontSize;
return LinkText(
text: event.getLocalizedBody(L10n.of(context), hideReply: true),
text: event.getLocalizedBody(MatrixLocals(L10n.of(context)),
hideReply: true),
textStyle: TextStyle(
color: textColor,
fontSize: bigEmotes ? fontSize * 3 : fontSize,

View file

@ -1,6 +1,7 @@
import 'package:famedlysdk/famedlysdk.dart';
import 'package:fluffychat/l10n/l10n.dart';
import 'package:fluffychat/utils/matrix_locals.dart';
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/l10n.dart';
import 'html_message.dart';
import 'matrix.dart';
@ -47,7 +48,7 @@ class ReplyContent extends StatelessWidget {
} else {
replyBody = Text(
displayEvent?.getLocalizedBody(
L10n.of(context),
MatrixLocals(L10n.of(context)),
withSenderNamePrefix: false,
hideReply: true,
) ??

View file

@ -1,8 +1,8 @@
import 'package:flutter/material.dart';
import 'package:flutter_gen/gen_l10n/l10n.dart';
import '../components/theme_switcher.dart';
import '../components/matrix.dart';
import '../l10n/l10n.dart';
import '../components/theme_switcher.dart';
class ThemesSettings extends StatefulWidget {
@override