fix RecordingModel get size & add mobile screen record (remote)
This commit is contained in:
parent
0c30d34cc2
commit
bf4ed4b727
@ -582,13 +582,35 @@ class _RemotePageState extends State<RemotePage> {
|
|||||||
value: 'block-input'));
|
value: 'block-input'));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (gFFI.ffiModel.permissions["restart"] != false &&
|
if (perms["restart"] != false &&
|
||||||
(pi.platform == "Linux" ||
|
(pi.platform == "Linux" ||
|
||||||
pi.platform == "Windows" ||
|
pi.platform == "Windows" ||
|
||||||
pi.platform == "Mac OS")) {
|
pi.platform == "Mac OS")) {
|
||||||
more.add(PopupMenuItem<String>(
|
more.add(PopupMenuItem<String>(
|
||||||
child: Text(translate('Restart Remote Device')), value: 'restart'));
|
child: Text(translate('Restart Remote Device')), value: 'restart'));
|
||||||
}
|
}
|
||||||
|
// Currently only support VP9
|
||||||
|
if (gFFI.recordingModel.start ||
|
||||||
|
(perms["recording"] != false &&
|
||||||
|
gFFI.qualityMonitorModel.data.codecFormat == "VP9")) {
|
||||||
|
more.add(PopupMenuItem<String>(
|
||||||
|
child: Row(
|
||||||
|
children: [
|
||||||
|
Text(translate(gFFI.recordingModel.start
|
||||||
|
? 'Stop session recording'
|
||||||
|
: 'Start session recording')),
|
||||||
|
Padding(
|
||||||
|
padding: EdgeInsets.only(left: 12),
|
||||||
|
child: Icon(
|
||||||
|
gFFI.recordingModel.start
|
||||||
|
? Icons.pause_circle_filled
|
||||||
|
: Icons.videocam_outlined,
|
||||||
|
color: MyTheme.accent),
|
||||||
|
)
|
||||||
|
],
|
||||||
|
),
|
||||||
|
value: 'record'));
|
||||||
|
}
|
||||||
() async {
|
() async {
|
||||||
var value = await showMenu(
|
var value = await showMenu(
|
||||||
context: context,
|
context: context,
|
||||||
@ -630,6 +652,8 @@ class _RemotePageState extends State<RemotePage> {
|
|||||||
gFFI.cursorModel.reset();
|
gFFI.cursorModel.reset();
|
||||||
} else if (value == 'restart') {
|
} else if (value == 'restart') {
|
||||||
showRestartRemoteDevice(pi, widget.id, gFFI.dialogManager);
|
showRestartRemoteDevice(pi, widget.id, gFFI.dialogManager);
|
||||||
|
} else if (value == 'record') {
|
||||||
|
gFFI.recordingModel.toggle();
|
||||||
}
|
}
|
||||||
}();
|
}();
|
||||||
}
|
}
|
||||||
|
@ -231,7 +231,8 @@ class FfiModel with ChangeNotifier {
|
|||||||
} else if (type == 'input-password') {
|
} else if (type == 'input-password') {
|
||||||
enterPasswordDialog(id, dialogManager);
|
enterPasswordDialog(id, dialogManager);
|
||||||
} else if (type == 'restarting') {
|
} else if (type == 'restarting') {
|
||||||
showMsgBox(id, type, title, text, link, false, dialogManager, hasCancel: false);
|
showMsgBox(id, type, title, text, link, false, dialogManager,
|
||||||
|
hasCancel: false);
|
||||||
} else {
|
} else {
|
||||||
var hasRetry = evt['hasRetry'] == 'true';
|
var hasRetry = evt['hasRetry'] == 'true';
|
||||||
showMsgBox(id, type, title, text, link, hasRetry, dialogManager);
|
showMsgBox(id, type, title, text, link, hasRetry, dialogManager);
|
||||||
@ -1003,16 +1004,16 @@ class RecordingModel with ChangeNotifier {
|
|||||||
get start => _start;
|
get start => _start;
|
||||||
|
|
||||||
onSwitchDisplay() {
|
onSwitchDisplay() {
|
||||||
if (!isDesktop || !_start) return;
|
if (isIOS || !_start) return;
|
||||||
var id = parent.target?.id;
|
var id = parent.target?.id;
|
||||||
int? width = parent.target?.canvasModel.getDisplayWidth();
|
int? width = parent.target?.canvasModel.getDisplayWidth();
|
||||||
int? height = parent.target?.canvasModel.getDisplayWidth();
|
int? height = parent.target?.canvasModel.getDisplayHeight();
|
||||||
if (id == null || width == null || height == null) return;
|
if (id == null || width == null || height == null) return;
|
||||||
bind.sessionRecordScreen(id: id, start: true, width: width, height: height);
|
bind.sessionRecordScreen(id: id, start: true, width: width, height: height);
|
||||||
}
|
}
|
||||||
|
|
||||||
toggle() {
|
toggle() {
|
||||||
if (!isDesktop) return;
|
if (isIOS) return;
|
||||||
var id = parent.target?.id;
|
var id = parent.target?.id;
|
||||||
if (id == null) return;
|
if (id == null) return;
|
||||||
_start = !_start;
|
_start = !_start;
|
||||||
@ -1025,7 +1026,7 @@ class RecordingModel with ChangeNotifier {
|
|||||||
}
|
}
|
||||||
|
|
||||||
onClose() {
|
onClose() {
|
||||||
if (!isDesktop) return;
|
if (isIOS) return;
|
||||||
var id = parent.target?.id;
|
var id = parent.target?.id;
|
||||||
if (id == null) return;
|
if (id == null) return;
|
||||||
_start = false;
|
_start = false;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user