Android Feature Optimization and Updates
Build Android Release / Build Android (push) Failing after 7s

This commit is contained in:
2026-05-21 10:31:43 +08:00
parent 31acfd4e13
commit 1d9e0a831f
19 changed files with 2506 additions and 562 deletions
+29 -6
View File
@@ -25,7 +25,10 @@ class FileBreadcrumb extends StatelessWidget {
decoration: BoxDecoration(
color: theme.scaffoldBackgroundColor,
border: Border(
top: BorderSide(color: theme.dividerColor.withValues(alpha: 0.5), width: 1),
top: BorderSide(
color: theme.dividerColor.withValues(alpha: 0.5),
width: 1,
),
),
),
child: SingleChildScrollView(
@@ -43,15 +46,20 @@ class FileBreadcrumb extends StatelessWidget {
for (int i = 0; i < pathParts.length; i++) ...[
Padding(
padding: const EdgeInsets.symmetric(horizontal: 4),
child: Icon(LucideIcons.chevronRight, size: 16, color: theme.hintColor.withValues(alpha: 0.5)),
child: Icon(
LucideIcons.chevronRight,
size: 16,
color: theme.hintColor.withValues(alpha: 0.5),
),
),
_buildBreadcrumbItem(
context,
name: pathParts[i],
name: _decodePathSegment(pathParts[i]),
path: '/${pathParts.sublist(0, i + 1).join('/')}',
icon: null,
primaryColor: colorScheme.primary,
onTap: () => onPathTap('/${pathParts.sublist(0, i + 1).join('/')}'),
onTap: () =>
onPathTap('/${pathParts.sublist(0, i + 1).join('/')}'),
),
],
],
@@ -60,6 +68,22 @@ class FileBreadcrumb extends StatelessWidget {
);
}
String _decodePathSegment(String value) {
var decoded = value;
for (var i = 0; i < 5; i++) {
try {
final next = Uri.decodeComponent(decoded);
if (next == decoded) break;
decoded = next;
} on FormatException {
break;
}
}
return decoded;
}
Widget _buildBreadcrumbItem(
BuildContext context, {
required String name,
@@ -81,8 +105,7 @@ class FileBreadcrumb extends StatelessWidget {
padding: const EdgeInsets.symmetric(horizontal: 14, vertical: 8),
child: Row(
children: [
if (icon != null)
Icon(icon, size: 16, color: primaryColor),
if (icon != null) Icon(icon, size: 16, color: primaryColor),
if (icon != null) const SizedBox(width: 5),
Text(
name,