fix: folders first

This commit is contained in:
Rongjian Zhang 2019-08-30 15:20:29 +08:00
parent 3f59d5694d
commit 814ac926a1
1 changed files with 20 additions and 2 deletions

View File

@ -6,6 +6,7 @@ import 'package:git_touch/providers/settings.dart';
import 'package:git_touch/scaffolds/refresh.dart';
import 'package:git_touch/utils/utils.dart';
import 'package:git_touch/widgets/link.dart';
import 'package:primer/primer.dart';
class ObjectScreen extends StatelessWidget {
final String owner;
@ -57,8 +58,9 @@ class ObjectScreen extends StatelessWidget {
}
Widget _buildTree(payload) {
var entries = payload['entries'] as List;
return Column(
children: (payload['entries'] as List).map((item) {
children: entries.map((item) {
return Link(
screenBuilder: (context) {
return ObjectScreen(
@ -79,7 +81,9 @@ class ObjectScreen extends StatelessWidget {
Icon(_buildIconData(item), color: Color(0x80032f62), size: 20),
SizedBox(width: 8),
Expanded(
child: Text(item['name'], style: TextStyle(fontSize: 16)))
child: Text(item['name'],
style: TextStyle(
fontSize: 16, color: PrimerColors.blue500)))
],
),
),
@ -116,6 +120,20 @@ class ObjectScreen extends StatelessWidget {
}
}
}''');
if (type == 'tree') {
var entries = data['repository']['object']['entries'] as List;
entries.sort((a, b) {
if (a['type'] == 'tree' && b['type'] == 'blob') {
return -1;
}
if (a['type'] == 'blob' && b['type'] == 'tree') {
return 1;
}
return 0;
});
}
return data['repository']['object'];
},
bodyBuilder: (payload) {