feat: tela de apps com logos/menu de exclusao, correcao de tema nas mini apps e sidebar de navegacao
Some checks failed
Main Deploy Workflow / deploy_web (push) Has been cancelled
Main Deploy Workflow / deploy_playstore_internal (push) Has been cancelled
Close stale issues and PRs / stale (push) Has been cancelled

This commit is contained in:
2026-09-19 00:08:35 -03:00
parent 1f692b1e4e
commit 6c689d1f34
23 changed files with 1039 additions and 114 deletions

View File

@@ -7,6 +7,15 @@ import 'dart:async';
import 'package:collection/collection.dart';
import 'package:cross_file/cross_file.dart';
import 'package:flutter/services.dart';
import 'package:flutter_callkit_incoming/entities/entities.dart';
import 'package:flutter_callkit_incoming/flutter_callkit_incoming.dart';
import 'package:flutter_shortcuts_new/flutter_shortcuts_new.dart';
import 'package:go_router/go_router.dart';
import 'package:material_ui/material_ui.dart';
import 'package:matrix/matrix.dart' as sdk;
import 'package:matrix/matrix.dart';
import 'package:receive_sharing_intent/receive_sharing_intent.dart';
import 'package:tatchat/config/app_config.dart';
import 'package:tatchat/l10n/l10n.dart';
import 'package:tatchat/pages/chat_list/chat_list_view.dart';
@@ -24,15 +33,6 @@ import 'package:tatchat/widgets/adaptive_dialogs/show_text_input_dialog.dart';
import 'package:tatchat/widgets/avatar.dart';
import 'package:tatchat/widgets/future_loading_dialog.dart';
import 'package:tatchat/widgets/share_scaffold_dialog.dart';
import 'package:flutter/services.dart';
import 'package:flutter_callkit_incoming/entities/entities.dart';
import 'package:flutter_callkit_incoming/flutter_callkit_incoming.dart';
import 'package:flutter_shortcuts_new/flutter_shortcuts_new.dart';
import 'package:go_router/go_router.dart';
import 'package:material_ui/material_ui.dart';
import 'package:matrix/matrix.dart' as sdk;
import 'package:matrix/matrix.dart';
import 'package:receive_sharing_intent/receive_sharing_intent.dart';
import '../../../utils/account_bundles.dart';
import '../../config/setting_keys.dart';
@@ -63,11 +63,16 @@ class ChatList extends StatefulWidget {
final String? activeSpace;
final bool displayNavigationRail;
/// Whether the navigation sidebar drawer is available (e.g. hidden inside
/// the settings column).
final bool sideMenuEnabled;
const ChatList({
super.key,
required this.activeChat,
this.activeSpace,
this.displayNavigationRail = false,
this.sideMenuEnabled = true,
});
@override
@@ -76,6 +81,10 @@ class ChatList extends StatefulWidget {
class ChatListController extends State<ChatList>
with TickerProviderStateMixin, RouteAware {
/// Scaffold state of the chat list, used to open the navigation sidebar
/// (drawer) from the hamburger menus.
final GlobalKey<ScaffoldState> scaffoldKey = GlobalKey<ScaffoldState>();
StreamSubscription? _intentDataStreamSubscription;
StreamSubscription? _intentFileStreamSubscription;
@@ -1109,7 +1118,8 @@ class ChatListController extends State<ChatList>
}
@override
Widget build(BuildContext context) => ChatListView(this);
Widget build(BuildContext context) =>
ChatListView(this, sideMenuEnabled: widget.sideMenuEnabled);
Future<void> dehydrate() => Matrix.of(context).dehydrateAction(context);
}