mirror of
https://github.com/rustdesk/rustdesk.git
synced 2026-11-05 16:38:17 +00:00
fix: distinguish request approval submenus on mobile
This commit is contained in:
1 parent
bb68f6f7d6
commit
7f0e50d4e4
4 files changed
+84
-5
No files matched your search
@@ -1,5 +1,6 @@
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
import '../../common.dart';
|
||||
import '../../desktop/widgets/material_mod_popup_menu.dart' as mod_menu;
|
||||
import '../../desktop/widgets/popup_menu.dart';
|
||||
|
||||
@@ -33,10 +34,13 @@ class RequestApprovalMenu extends MenuEntryBase<String> {
|
||||
text: title,
|
||||
dismissParentOnCanceled: true,
|
||||
arrowScale: arrowScale,
|
||||
barrierColor: isMobile ? Colors.black26 : null,
|
||||
padding: (padding ?? EdgeInsets.zero)
|
||||
.copyWith(right: (padding?.right ?? 0) + arrowInset),
|
||||
entries: entries
|
||||
.map((entry) => MenuEntryButton<String>(
|
||||
entries: [
|
||||
if (isMobile)
|
||||
_RequestApprovalMenuTitle(title, padding),
|
||||
...entries.map((entry) => MenuEntryButton<String>(
|
||||
childBuilder: entry.childBuilder,
|
||||
proc: entry.proc,
|
||||
padding: entry.padding,
|
||||
@@ -45,8 +49,39 @@ class RequestApprovalMenu extends MenuEntryBase<String> {
|
||||
dismissCallback: () {
|
||||
if (Navigator.canPop(context)) Navigator.pop(context);
|
||||
},
|
||||
))
|
||||
.toList(),
|
||||
)),
|
||||
],
|
||||
).build(context, conf);
|
||||
}
|
||||
}
|
||||
|
||||
class _RequestApprovalMenuTitle extends MenuEntryBase<String> {
|
||||
final String title;
|
||||
final EdgeInsets? padding;
|
||||
|
||||
_RequestApprovalMenuTitle(this.title, this.padding);
|
||||
|
||||
@override
|
||||
List<mod_menu.PopupMenuEntry<String>> build(
|
||||
BuildContext context, MenuConfig conf) => [
|
||||
mod_menu.PopupMenuItem<String>(
|
||||
enabled: false,
|
||||
height: conf.height,
|
||||
padding: EdgeInsets.zero,
|
||||
child: TextButton(
|
||||
onPressed: null,
|
||||
child: Container(
|
||||
alignment: AlignmentDirectional.centerStart,
|
||||
height: conf.height,
|
||||
padding: padding,
|
||||
child: Semantics(
|
||||
header: true,
|
||||
child: Text(title,
|
||||
style: enabledStyle(context)
|
||||
.copyWith(fontWeight: FontWeight.w600)),
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
];
|
||||
}
|
||||
Reference in new issue
Block a user