cm permissions tip

This commit is contained in:
rustdesk 2022-10-04 18:20:23 +08:00
parent 8d54df77dc
commit 589d366327

View File

@ -166,7 +166,7 @@ class ConnectionManagerState extends State<ConnectionManager> {
SizedBox( SizedBox(
width: 80, width: 80,
child: Text( child: Text(
"${client.name}", client.name,
maxLines: 1, maxLines: 1,
overflow: TextOverflow.ellipsis, overflow: TextOverflow.ellipsis,
textAlign: TextAlign.center, textAlign: TextAlign.center,
@ -242,7 +242,7 @@ class _CmHeaderState extends State<_CmHeader>
with AutomaticKeepAliveClientMixin { with AutomaticKeepAliveClientMixin {
Client get client => widget.client; Client get client => widget.client;
var _time = 0.obs; final _time = 0.obs;
Timer? _timer; Timer? _timer;
@override @override
@ -272,7 +272,7 @@ class _CmHeaderState extends State<_CmHeader>
alignment: Alignment.center, alignment: Alignment.center,
decoration: BoxDecoration(color: str2color(client.name)), decoration: BoxDecoration(color: str2color(client.name)),
child: Text( child: Text(
"${client.name[0]}", client.name[0],
style: TextStyle( style: TextStyle(
fontWeight: FontWeight.bold, color: Colors.white, fontSize: 65), fontWeight: FontWeight.bold, color: Colors.white, fontSize: 65),
), ),
@ -284,7 +284,7 @@ class _CmHeaderState extends State<_CmHeader>
children: [ children: [
FittedBox( FittedBox(
child: Text( child: Text(
"${client.name}", client.name,
style: TextStyle( style: TextStyle(
color: MyTheme.cmIdColor, color: MyTheme.cmIdColor,
fontWeight: FontWeight.bold, fontWeight: FontWeight.bold,
@ -303,9 +303,9 @@ class _CmHeaderState extends State<_CmHeader>
FittedBox( FittedBox(
child: Row( child: Row(
children: [ children: [
Text("${translate("Connected")}").marginOnly(right: 8.0), Text(translate("Connected")).marginOnly(right: 8.0),
Obx(() => Text( Obx(() => Text(
"${formatDurationToTime(Duration(seconds: _time.value))}")) formatDurationToTime(Duration(seconds: _time.value))))
], ],
)) ))
], ],
@ -339,10 +339,10 @@ class _PrivilegeBoard extends StatefulWidget {
class _PrivilegeBoardState extends State<_PrivilegeBoard> { class _PrivilegeBoardState extends State<_PrivilegeBoard> {
late final client = widget.client; late final client = widget.client;
Widget buildPermissionIcon(bool enabled, ImageProvider icon, Widget buildPermissionIcon(
Function(bool)? onTap, String? tooltip) { bool enabled, ImageProvider icon, Function(bool)? onTap, String tooltip) {
return Tooltip( return Tooltip(
message: tooltip ?? "", message: tooltip,
child: Ink( child: Ink(
decoration: decoration:
BoxDecoration(color: enabled ? MyTheme.accent80 : Colors.grey), BoxDecoration(color: enabled ? MyTheme.accent80 : Colors.grey),
@ -384,42 +384,42 @@ class _PrivilegeBoardState extends State<_PrivilegeBoard> {
setState(() { setState(() {
client.keyboard = enabled; client.keyboard = enabled;
}); });
}, null), }, translate('Allow using keyboard and mouse')),
buildPermissionIcon(client.clipboard, iconClipboard, (enabled) { buildPermissionIcon(client.clipboard, iconClipboard, (enabled) {
bind.cmSwitchPermission( bind.cmSwitchPermission(
connId: client.id, name: "clipboard", enabled: enabled); connId: client.id, name: "clipboard", enabled: enabled);
setState(() { setState(() {
client.clipboard = enabled; client.clipboard = enabled;
}); });
}, null), }, translate('Allow using clipboard')),
buildPermissionIcon(client.audio, iconAudio, (enabled) { buildPermissionIcon(client.audio, iconAudio, (enabled) {
bind.cmSwitchPermission( bind.cmSwitchPermission(
connId: client.id, name: "audio", enabled: enabled); connId: client.id, name: "audio", enabled: enabled);
setState(() { setState(() {
client.audio = enabled; client.audio = enabled;
}); });
}, null), }, translate('Allow hearing sound')),
buildPermissionIcon(client.file, iconFile, (enabled) { buildPermissionIcon(client.file, iconFile, (enabled) {
bind.cmSwitchPermission( bind.cmSwitchPermission(
connId: client.id, name: "file", enabled: enabled); connId: client.id, name: "file", enabled: enabled);
setState(() { setState(() {
client.file = enabled; client.file = enabled;
}); });
}, null), }, translate('Allow file copy and paste')),
buildPermissionIcon(client.restart, iconRestart, (enabled) { buildPermissionIcon(client.restart, iconRestart, (enabled) {
bind.cmSwitchPermission( bind.cmSwitchPermission(
connId: client.id, name: "restart", enabled: enabled); connId: client.id, name: "restart", enabled: enabled);
setState(() { setState(() {
client.restart = enabled; client.restart = enabled;
}); });
}, null), }, translate('Allow remote restart')),
buildPermissionIcon(client.recording, iconRecording, (enabled) { buildPermissionIcon(client.recording, iconRecording, (enabled) {
bind.cmSwitchPermission( bind.cmSwitchPermission(
connId: client.id, name: "recording", enabled: enabled); connId: client.id, name: "recording", enabled: enabled);
setState(() { setState(() {
client.recording = enabled; client.recording = enabled;
}); });
}, null), }, translate('Allow reco)rding session'))
], ],
)), )),
], ],