mirror of
				https://gitlab.com/comunic/comunicmobile
				synced 2025-11-03 19:54:12 +00:00 
			
		
		
		
	Integrate members screen as a tab
This commit is contained in:
		@@ -1,5 +1,6 @@
 | 
			
		||||
import 'package:comunic/models/advanced_group_info.dart';
 | 
			
		||||
import 'package:comunic/ui/routes/main_route/main_route.dart';
 | 
			
		||||
import 'package:comunic/ui/screens/group_sections/group_members_screen.dart';
 | 
			
		||||
import 'package:comunic/ui/screens/group_sections/group_posts_section.dart';
 | 
			
		||||
import 'package:comunic/ui/screens/group_settings_screen.dart';
 | 
			
		||||
import 'package:comunic/ui/widgets/group_following_widget.dart';
 | 
			
		||||
@@ -50,7 +51,14 @@ class _AuthorizedGroupPageScreenState
 | 
			
		||||
          widget: GroupPostsSection(group: _group),
 | 
			
		||||
          label: tr("Posts"),
 | 
			
		||||
        ),
 | 
			
		||||
      ];
 | 
			
		||||
      ]..addAll(_group.isAtLeastModerator
 | 
			
		||||
          ? [
 | 
			
		||||
              _GroupPageTab(
 | 
			
		||||
                widget: GroupMembersSection(groupID: _group.id),
 | 
			
		||||
                label: tr("Members"),
 | 
			
		||||
              ),
 | 
			
		||||
            ]
 | 
			
		||||
          : []);
 | 
			
		||||
 | 
			
		||||
  @override
 | 
			
		||||
  void initState() {
 | 
			
		||||
 
 | 
			
		||||
@@ -9,7 +9,6 @@ import 'package:comunic/ui/dialogs/multi_choices_dialog.dart';
 | 
			
		||||
import 'package:comunic/ui/dialogs/pick_user_dialog.dart';
 | 
			
		||||
import 'package:comunic/ui/widgets/account_image_widget.dart';
 | 
			
		||||
import 'package:comunic/ui/widgets/async_screen_widget.dart';
 | 
			
		||||
import 'package:comunic/ui/widgets/comunic_back_button_widget.dart';
 | 
			
		||||
import 'package:comunic/utils/account_utils.dart';
 | 
			
		||||
import 'package:comunic/utils/intl_utils.dart';
 | 
			
		||||
import 'package:comunic/utils/ui_utils.dart';
 | 
			
		||||
@@ -19,18 +18,18 @@ import 'package:flutter/material.dart';
 | 
			
		||||
///
 | 
			
		||||
/// @author Pierre HUBERT
 | 
			
		||||
 | 
			
		||||
class GroupMembersScreen extends StatefulWidget {
 | 
			
		||||
class GroupMembersSection extends StatefulWidget {
 | 
			
		||||
  final int groupID;
 | 
			
		||||
 | 
			
		||||
  const GroupMembersScreen({Key key, this.groupID})
 | 
			
		||||
  const GroupMembersSection({Key key, this.groupID})
 | 
			
		||||
      : assert(groupID != null),
 | 
			
		||||
        super(key: key);
 | 
			
		||||
 | 
			
		||||
  @override
 | 
			
		||||
  _GroupMembersScreenState createState() => _GroupMembersScreenState();
 | 
			
		||||
  _GroupMembersSectionState createState() => _GroupMembersSectionState();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
class _GroupMembersScreenState extends State<GroupMembersScreen> {
 | 
			
		||||
class _GroupMembersSectionState extends State<GroupMembersSection> {
 | 
			
		||||
  final _key = GlobalKey<AsyncScreenWidgetState>();
 | 
			
		||||
  Group _group;
 | 
			
		||||
  GroupMembersList _members;
 | 
			
		||||
@@ -47,17 +46,7 @@ class _GroupMembersScreenState extends State<GroupMembersScreen> {
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  @override
 | 
			
		||||
  Widget build(BuildContext context) {
 | 
			
		||||
    return Scaffold(
 | 
			
		||||
      appBar: AppBar(
 | 
			
		||||
        leading: ComunicBackButton(),
 | 
			
		||||
        title: Text(tr("Group members")),
 | 
			
		||||
      ),
 | 
			
		||||
      body: _buildBody(),
 | 
			
		||||
    );
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  Widget _buildBody() => AsyncScreenWidget(
 | 
			
		||||
  Widget build(BuildContext context) => AsyncScreenWidget(
 | 
			
		||||
        key: _key,
 | 
			
		||||
        onReload: _refresh,
 | 
			
		||||
        onBuild: _buildBodyContent,
 | 
			
		||||
		Reference in New Issue
	
	Block a user