mirror of
https://gitlab.com/comunic/comunicmobile
synced 2025-06-19 16:25:17 +00:00
Ready to start to show the list of members
This commit is contained in:
@ -1,7 +1,9 @@
|
||||
import 'package:comunic/helpers/conversations_helper.dart';
|
||||
import 'package:comunic/helpers/events_helper.dart';
|
||||
import 'package:comunic/models/conversation.dart';
|
||||
import 'package:comunic/ui/dialogs/screen_dialog.dart';
|
||||
import 'package:comunic/ui/screens/conversation_screen.dart';
|
||||
import 'package:comunic/ui/screens/user_page_screen.dart';
|
||||
import 'package:comunic/ui/widgets/safe_state.dart';
|
||||
import 'package:comunic/ui/widgets/tablet_mode/conversations/conversation_window_container.dart';
|
||||
import 'package:comunic/utils/account_utils.dart';
|
||||
@ -13,6 +15,8 @@ import 'package:flutter/material.dart';
|
||||
///
|
||||
/// @author Pierre Hubert
|
||||
|
||||
enum _Actions { OPEN_MEMBERS }
|
||||
|
||||
class ConversationWindow extends StatefulWidget {
|
||||
final int convID;
|
||||
final Function() onClose;
|
||||
@ -119,10 +123,35 @@ class _ConversationWindowState extends SafeState<ConversationWindow> {
|
||||
onClose: widget.onClose,
|
||||
onToggleCollapse: _toggleVisibility,
|
||||
isCollapsed: _collapsed,
|
||||
action: <Widget>[
|
||||
PopupMenuButton<_Actions>(
|
||||
itemBuilder: (c) => [
|
||||
// Show the list of members
|
||||
PopupMenuItem(
|
||||
child: Text(tr("Members")),
|
||||
value: _Actions.OPEN_MEMBERS,
|
||||
)
|
||||
],
|
||||
onSelected: _menuCallback,
|
||||
),
|
||||
],
|
||||
body: ConversationScreen(
|
||||
key: _convKey,
|
||||
conversationID: _convID,
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
void _menuCallback(_Actions value) {
|
||||
switch (value) {
|
||||
case _Actions.OPEN_MEMBERS:
|
||||
_openMembersList();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void _openMembersList() {
|
||||
// dummy test
|
||||
showScreenDialog(context, UserPageScreen(userID: 1));
|
||||
}
|
||||
}
|
||||
|
@ -14,6 +14,7 @@ class ConversationWindowContainer extends StatelessWidget {
|
||||
final void Function() onToggleCollapse;
|
||||
final bool isCollapsed;
|
||||
final Widget body;
|
||||
final List<Widget> action;
|
||||
|
||||
const ConversationWindowContainer({
|
||||
Key key,
|
||||
@ -24,6 +25,7 @@ class ConversationWindowContainer extends StatelessWidget {
|
||||
@required this.body,
|
||||
@required this.onToggleCollapse,
|
||||
@required this.isCollapsed,
|
||||
this.action,
|
||||
}) : assert(title != null),
|
||||
assert(onClose != null),
|
||||
assert(body != null),
|
||||
@ -42,9 +44,10 @@ class ConversationWindowContainer extends StatelessWidget {
|
||||
backgroundColor: appBarBgColor,
|
||||
leading: icon,
|
||||
title: GestureDetector(child: title, onTap: onToggleCollapse),
|
||||
actions: <Widget>[
|
||||
IconButton(icon: Icon(Icons.close), onPressed: onClose),
|
||||
],
|
||||
actions: (action == null ? [] : action)
|
||||
..add(
|
||||
IconButton(icon: Icon(Icons.close), onPressed: onClose),
|
||||
),
|
||||
),
|
||||
body: Visibility(
|
||||
child: body,
|
||||
|
Reference in New Issue
Block a user