fix android client chat mode;update UI

This commit is contained in:
csf 2022-04-12 22:38:39 +08:00
parent bc00375c44
commit a65e32f023
3 changed files with 38 additions and 14 deletions

View File

@ -3,7 +3,7 @@ import 'dart:async';
import 'package:flutter_easyloading/flutter_easyloading.dart'; import 'package:flutter_easyloading/flutter_easyloading.dart';
final globalKey = GlobalKey<NavigatorState>(); final globalKey = GlobalKey<NavigatorState>();
final navigationBarKey = GlobalKey(); final navigationBarKey = GlobalKey();
var isAndroid = false; var isAndroid = false;
var isIOS = false; var isIOS = false;
@ -49,6 +49,7 @@ void showLoading(String text) {
constraints: BoxConstraints(maxWidth: 240), constraints: BoxConstraints(maxWidth: 240),
child: child:
Column(crossAxisAlignment: CrossAxisAlignment.start, children: [ Column(crossAxisAlignment: CrossAxisAlignment.start, children: [
SizedBox(height: 30),
Center(child: CircularProgressIndicator()), Center(child: CircularProgressIndicator()),
SizedBox(height: 20), SizedBox(height: 20),
Center( Center(
@ -69,7 +70,6 @@ void showLoading(String text) {
} }
backToHome() { backToHome() {
// use [popUntil()] to make sure pop action can't close the current MaterialApp context
Navigator.popUntil(globalKey.currentContext!, ModalRoute.withName("/")); Navigator.popUntil(globalKey.currentContext!, ModalRoute.withName("/"));
} }

View File

@ -1,5 +1,6 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter_easyloading/flutter_easyloading.dart'; import 'package:flutter_easyloading/flutter_easyloading.dart';
import 'package:flutter_hbb/models/chat_model.dart';
import 'package:flutter_hbb/widgets/gesture_help.dart'; import 'package:flutter_hbb/widgets/gesture_help.dart';
import 'package:provider/provider.dart'; import 'package:provider/provider.dart';
import 'package:flutter/services.dart'; import 'package:flutter/services.dart';
@ -282,7 +283,11 @@ class _RemotePageState extends State<RemotePage> {
IconButton( IconButton(
color: Colors.white, color: Colors.white,
icon: Icon(Icons.message), icon: Icon(Icons.message),
onPressed: toggleChatOverlay, onPressed: () {
FFI.chatModel
.changeCurrentID(ChatModel.clientModeID);
toggleChatOverlay();
},
) )
]) + ]) +
[ [

View File

@ -204,17 +204,36 @@ class _PermissionCheckerState extends State<PermissionChecker> {
style: TextStyle(color: MyTheme.darkGray), style: TextStyle(color: MyTheme.darkGray),
), ),
SizedBox(height: 8), SizedBox(height: 8),
serverModel.mediaOk Row(
? ElevatedButton.icon( crossAxisAlignment: CrossAxisAlignment.center,
style: ButtonStyle( children: [
backgroundColor: MaterialStateProperty.all(Colors.red)), serverModel.mediaOk
icon: Icon(Icons.stop), ? ElevatedButton.icon(
onPressed: serverModel.toggleService, style: ButtonStyle(
label: Text(translate("Stop service"))) backgroundColor:
: ElevatedButton.icon( MaterialStateProperty.all(Colors.red)),
icon: Icon(Icons.play_arrow), icon: Icon(Icons.stop),
onPressed: serverModel.toggleService, onPressed: serverModel.toggleService,
label: Text(translate("Start Service"))), label: Text(translate("Stop service")))
: ElevatedButton.icon(
icon: Icon(Icons.play_arrow),
onPressed: serverModel.toggleService,
label: Text(translate("Start Service"))),
serverModel.mediaOk
? Row(
children: [
Padding(
padding: EdgeInsets.only(left: 20, right: 5),
child: Icon(Icons.circle,
color: Colors.greenAccent, size: 10)),
Text(translate("Ready"),
style: TextStyle(
fontSize: 16.0, color: MyTheme.accent50))
],
)
: SizedBox.shrink()
],
),
], ],
)); ));
} }