Browse Source

add some back UI

pull/18/head
Sun 4 years ago
parent
commit
2d69a45bbf
  1. 52
      lib/apps/chat/add.dart
  2. 4
      lib/apps/chat/list.dart
  3. 4
      lib/apps/file/list.dart
  4. 23
      lib/apps/group_chat/add.dart
  5. 4
      lib/apps/group_chat/list.dart
  6. 4
      lib/apps/group_chat/provider.dart
  7. 4
      lib/apps/service/list.dart
  8. 4
      lib/pages/home.dart
  9. 4
      src/apps/group_chat/layer.rs

52
lib/apps/chat/add.dart

@ -17,6 +17,7 @@ import 'package:esse/global.dart';
import 'package:esse/provider.dart'; import 'package:esse/provider.dart';
import 'package:esse/apps/chat/models.dart'; import 'package:esse/apps/chat/models.dart';
import 'package:esse/apps/chat/list.dart';
import 'package:esse/apps/chat/provider.dart'; import 'package:esse/apps/chat/provider.dart';
class ChatAddPage extends StatefulWidget { class ChatAddPage extends StatefulWidget {
@ -31,7 +32,6 @@ class ChatAddPage extends StatefulWidget {
} }
class _ChatAddPageState extends State<ChatAddPage> { class _ChatAddPageState extends State<ChatAddPage> {
final _formKey = GlobalKey<FormState>();
TextEditingController userIdEditingController = TextEditingController(); TextEditingController userIdEditingController = TextEditingController();
TextEditingController addrEditingController = TextEditingController(); TextEditingController addrEditingController = TextEditingController();
TextEditingController remarkEditingController = TextEditingController(); TextEditingController remarkEditingController = TextEditingController();
@ -115,27 +115,21 @@ class _ChatAddPageState extends State<ChatAddPage> {
final requestKeys = requests.keys.toList().reversed.toList(); // it had sorted. final requestKeys = requests.keys.toList().reversed.toList(); // it had sorted.
return Scaffold( return Scaffold(
body: SafeArea( appBar: AppBar(
child: Padding( title: Text(lang.addFriend),
padding: const EdgeInsets.all(10.0), bottom: PreferredSize(
child: Column(children: <Widget>[ child: Container(color: const Color(0x40ADB0BB), height: 1.0),
Row( preferredSize: Size.fromHeight(1.0)
children: [ ),
if (!isDesktop) leading: isDesktop
GestureDetector( ? IconButton(
onTap: () { onPressed: () {
context.read<ChatProvider>().requestClear(); context.read<ChatProvider>().requestClear();
Navigator.pop(context); context.read<AccountProvider>().updateActivedWidget(ChatList());
}, },
child: Container( icon: Icon(Icons.arrow_back, color: color.primary),
width: 20.0, ) : null,
child: Icon(Icons.arrow_back, color: color.primary)), actions: [
),
SizedBox(width: 15.0),
Expanded(
child: Text(lang.addFriend,
style: TextStyle(fontWeight: FontWeight.bold, fontSize: 20.0)),
),
TextButton( TextButton(
onPressed: () => showShadowDialog( onPressed: () => showShadowDialog(
context, context,
@ -146,18 +140,16 @@ class _ChatAddPageState extends State<ChatAddPage> {
), ),
child: Text(lang.myQrcode, style: TextStyle(fontSize: 16.0)), child: Text(lang.myQrcode, style: TextStyle(fontSize: 16.0)),
), ),
], ]
), ),
isDesktop ? SizedBox(height: 20.0) : SizedBox(height: 50.0), body: Container(
Expanded( padding: const EdgeInsets.all(10.0),
alignment: Alignment.topCenter,
child: SingleChildScrollView( child: SingleChildScrollView(
child: Container( child: Container(
constraints: BoxConstraints(minWidth: 200, maxWidth: 600), width: 600,
padding: const EdgeInsets.all(20), padding: const EdgeInsets.all(20),
child: Form(
key: _formKey,
child: Column( child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[ children: <Widget>[
Container( Container(
child: Row( child: Row(
@ -217,11 +209,7 @@ class _ChatAddPageState extends State<ChatAddPage> {
), ),
), ),
), ),
), );
]
)
)
));
} }
} }

4
lib/apps/chat/list.dart

@ -36,15 +36,13 @@ class _ChatListState extends State<ChatList> {
preferredSize: Size.fromHeight(1.0) preferredSize: Size.fromHeight(1.0)
), ),
), ),
body: SafeArea( body: Padding(
child: Padding(
padding: const EdgeInsets.symmetric(vertical: 10.0), padding: const EdgeInsets.symmetric(vertical: 10.0),
child: ListView.builder( child: ListView.builder(
itemCount: chatKeys.length, itemCount: chatKeys.length,
itemBuilder: (BuildContext ctx, int index) => ListChat(friend: friends[chatKeys[index]]), itemBuilder: (BuildContext ctx, int index) => ListChat(friend: friends[chatKeys[index]]),
) )
), ),
),
floatingActionButton: FloatingActionButton( floatingActionButton: FloatingActionButton(
onPressed: () { onPressed: () {
final widget = ChatAddPage(); final widget = ChatAddPage();

4
lib/apps/file/list.dart

@ -83,15 +83,13 @@ class _FilesListState extends State<FilesList> {
preferredSize: Size.fromHeight(1.0) preferredSize: Size.fromHeight(1.0)
), ),
), ),
body: SafeArea( body: Padding(
child: Padding(
padding: const EdgeInsets.symmetric(vertical: 10.0), padding: const EdgeInsets.symmetric(vertical: 10.0),
child: ListView.builder( child: ListView.builder(
itemCount: FILE_DIRECTORY.length, itemCount: FILE_DIRECTORY.length,
itemBuilder: (BuildContext ctx, int index) => item(index, color, isDesktop), itemBuilder: (BuildContext ctx, int index) => item(index, color, isDesktop),
) )
), ),
),
); );
} }
} }

23
lib/apps/group_chat/add.dart

@ -18,6 +18,7 @@ import 'package:esse/rpc.dart';
import 'package:esse/provider.dart'; import 'package:esse/provider.dart';
import 'package:esse/apps/group_chat/models.dart'; import 'package:esse/apps/group_chat/models.dart';
import 'package:esse/apps/group_chat/list.dart';
import 'package:esse/apps/group_chat/provider.dart'; import 'package:esse/apps/group_chat/provider.dart';
class GroupAddPage extends StatefulWidget { class GroupAddPage extends StatefulWidget {
@ -220,18 +221,21 @@ class _GroupAddPageState extends State<GroupAddPage> {
final requests = provider.requests; final requests = provider.requests;
final requestKeys = requests.keys.toList().reversed.toList(); final requestKeys = requests.keys.toList().reversed.toList();
return SafeArea( return DefaultTabController(
child: DefaultTabController(
initialIndex: 0, initialIndex: 0,
length: 2, length: 2,
child: Scaffold( child: Scaffold(
appBar: AppBar( appBar: AppBar(
title: Row( title: Text(lang.addFriend),
children: [ leading: isDesktop
Expanded( ? IconButton(
child: Text(lang.groupChatAdd, onPressed: () {
style: TextStyle(fontWeight: FontWeight.bold, fontSize: 20.0)), context.read<GroupChatProvider>().requestClear();
), context.read<AccountProvider>().updateActivedWidget(GroupChatList());
},
icon: Icon(Icons.arrow_back, color: color.primary),
) : null,
actions: [
TextButton( TextButton(
onPressed: () => Navigator.push(context, onPressed: () => Navigator.push(context,
MaterialPageRoute(builder: (context) => QRScan(callback: _scanCallback)) MaterialPageRoute(builder: (context) => QRScan(callback: _scanCallback))
@ -239,7 +243,6 @@ class _GroupAddPageState extends State<GroupAddPage> {
child: Text(lang.scanQr, style: TextStyle(fontSize: 16.0)), child: Text(lang.scanQr, style: TextStyle(fontSize: 16.0)),
), ),
], ],
),
bottom: TabBar( bottom: TabBar(
tabs: <Widget>[ tabs: <Widget>[
Tab( Tab(
@ -531,7 +534,7 @@ class _GroupAddPageState extends State<GroupAddPage> {
), ),
), ),
], ],
))) ))
); );
} }
} }

4
lib/apps/group_chat/list.dart

@ -35,15 +35,13 @@ class _GroupChatListState extends State<GroupChatList> {
preferredSize: Size.fromHeight(1.0) preferredSize: Size.fromHeight(1.0)
), ),
), ),
body: SafeArea( body: Padding(
child: Padding(
padding: const EdgeInsets.symmetric(vertical: 10.0), padding: const EdgeInsets.symmetric(vertical: 10.0),
child: ListView.builder( child: ListView.builder(
itemCount: orderKeys.length, itemCount: orderKeys.length,
itemBuilder: (BuildContext ctx, int index) => ListChat(group: groups[orderKeys[index]]), itemBuilder: (BuildContext ctx, int index) => ListChat(group: groups[orderKeys[index]]),
) )
), ),
),
floatingActionButton: FloatingActionButton( floatingActionButton: FloatingActionButton(
onPressed: () { onPressed: () {
final widget = GroupAddPage(); final widget = GroupAddPage();

4
lib/apps/group_chat/provider.dart

@ -118,6 +118,10 @@ class GroupChatProvider extends ChangeNotifier {
this.activedMembers.clear(); this.activedMembers.clear();
} }
requestClear() {
this.requests.clear();
}
join(GroupType gtype, String gid, String gaddr, String name, String remark, [String proof = '', String key = '']) { join(GroupType gtype, String gid, String gaddr, String name, String remark, [String proof = '', String key = '']) {
rpc.send('group-chat-join', [gtype.toInt(), gid, gaddr, name, remark, proof, key]); rpc.send('group-chat-join', [gtype.toInt(), gid, gaddr, name, remark, proof, key]);
} }

4
lib/apps/service/list.dart

@ -35,8 +35,7 @@ class _ServiceListState extends State<ServiceList> {
preferredSize: Size.fromHeight(1.0) preferredSize: Size.fromHeight(1.0)
), ),
), ),
body: SafeArea( body: Padding(
child: Padding(
padding: const EdgeInsets.symmetric(vertical: 10.0), padding: const EdgeInsets.symmetric(vertical: 10.0),
child: ListView.builder( child: ListView.builder(
itemCount: INNER_SERVICES.length, itemCount: INNER_SERVICES.length,
@ -52,7 +51,6 @@ class _ServiceListState extends State<ServiceList> {
} }
) )
), ),
),
floatingActionButton: FloatingActionButton( floatingActionButton: FloatingActionButton(
onPressed: () { onPressed: () {
final widget = ServiceAddPage(); final widget = ServiceAddPage();

4
lib/pages/home.dart

@ -212,8 +212,7 @@ class _HomeListState extends State<HomeList> {
) )
] ]
), ),
body: SafeArea( body: Padding(
child: Padding(
padding: const EdgeInsets.symmetric(vertical: 10.0), padding: const EdgeInsets.symmetric(vertical: 10.0),
child: ListView.builder( child: ListView.builder(
itemCount: allKeys.length, itemCount: allKeys.length,
@ -222,7 +221,6 @@ class _HomeListState extends State<HomeList> {
), ),
), ),
), ),
),
); );
} }
} }

4
src/apps/group_chat/layer.rs

@ -213,7 +213,7 @@ async fn handle_event(
results.rpcs.push(rpc::member_offline(mgid, gid, mid)); results.rpcs.push(rpc::member_offline(mgid, gid, mid));
} }
LayerEvent::Sync(gcd, height, event) => { LayerEvent::Sync(gcd, height, event) => {
let (sid, gid) = layer.read().await.get_running_remote_id(&mgid, &gcd)?; let (_sid, gid) = layer.read().await.get_running_remote_id(&mgid, &gcd)?;
println!("Sync: height: {}", height); println!("Sync: height: {}", height);
let base = layer.read().await.base().clone(); let base = layer.read().await.base().clone();
@ -312,7 +312,7 @@ async fn handle_event(
let (_sid, _gid) = layer.read().await.get_running_remote_id(&mgid, &gcd)?; let (_sid, _gid) = layer.read().await.get_running_remote_id(&mgid, &gcd)?;
let db = group_chat_db(layer.read().await.base(), &mgid)?; let db = group_chat_db(layer.read().await.base(), &mgid)?;
let id = Request::over_rid(&db, &gcd, &rid, ok)?; let id = Request::over_rid(&db, &gcd, &rid, ok)?;
results.rpcs.push(rpc::request_handle(mgid, id, ok)); results.rpcs.push(rpc::request_handle(mgid, id, ok, false));
} }
LayerEvent::Request(..) => {} // nerver here. LayerEvent::Request(..) => {} // nerver here.
LayerEvent::Check => {} // nerver here. LayerEvent::Check => {} // nerver here.

Loading…
Cancel
Save