mirror of
https://gitlab.com/comunic/comunicmobile
synced 2024-10-23 15:03:22 +00:00
59 lines
1.5 KiB
Dart
59 lines
1.5 KiB
Dart
import 'package:comunic/helpers/users_helper.dart';
|
|
import 'package:comunic/models/user.dart';
|
|
import 'package:comunic/ui/widgets/async_screen_widget.dart';
|
|
import 'package:comunic/ui/widgets/network_image_widget.dart';
|
|
import 'package:comunic/utils/account_utils.dart';
|
|
import 'package:comunic/utils/intl_utils.dart';
|
|
import 'package:flutter/material.dart';
|
|
|
|
/// Emojies account settings
|
|
///
|
|
/// @author Pierre Hubert
|
|
|
|
class EmojisAccountSettings extends StatelessWidget {
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
return Scaffold(
|
|
appBar: AppBar(
|
|
title: Text(tr("Emojies settings")),
|
|
),
|
|
body: _EmojiesAccountBody(),
|
|
);
|
|
}
|
|
}
|
|
|
|
class _EmojiesAccountBody extends StatefulWidget {
|
|
@override
|
|
__EmojiesAccountBodyState createState() => __EmojiesAccountBodyState();
|
|
}
|
|
|
|
class __EmojiesAccountBodyState extends State<_EmojiesAccountBody> {
|
|
User _user;
|
|
|
|
Future<void> _reload() async {
|
|
_user = await UsersHelper().getSingleWithThrow(
|
|
userID(),
|
|
forceDownload: true,
|
|
);
|
|
}
|
|
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
return AsyncScreenWidget(
|
|
onReload: _reload,
|
|
onBuild: _buildSettings,
|
|
errorMessage: tr("Could not refresh user information!"),
|
|
);
|
|
}
|
|
|
|
Widget _buildSettings() {
|
|
return ListView(
|
|
children: _user.customEmojies
|
|
.map((u) => ListTile(
|
|
leading: NetworkImageWidget(url: u.url, width: 50),
|
|
title: Text(u.shortcut),
|
|
))
|
|
.toList());
|
|
}
|
|
}
|