From 9bdb01e04ce1ed50b7db9437f731b844907ca813 Mon Sep 17 00:00:00 2001 From: Rongjian Zhang Date: Sat, 9 Mar 2019 03:16:22 +0800 Subject: [PATCH] feat: hide owner of user page repos if same --- lib/screens/user.dart | 18 +++++++++++------- lib/widgets/repo_item.dart | 6 ++++-- 2 files changed, 15 insertions(+), 9 deletions(-) diff --git a/lib/screens/user.dart b/lib/screens/user.dart index ef93ea3..4125e7a 100644 --- a/lib/screens/user.dart +++ b/lib/screens/user.dart @@ -79,13 +79,17 @@ class _UserScreenState extends State { } return ListGroup( - title: Text( - title, - style: TextStyle(fontSize: 16), - ), - items: items, - itemBuilder: (item, _) => RepoItem(item), - ); + title: Text( + title, + style: TextStyle(fontSize: 16), + ), + items: items, + itemBuilder: (item, _) { + return RepoItem( + item, + showOwner: item['owner']['login'] != widget.login, + ); + }); } Widget _buildEmail(payload) { diff --git a/lib/widgets/repo_item.dart b/lib/widgets/repo_item.dart index 9a67aa7..887df63 100644 --- a/lib/widgets/repo_item.dart +++ b/lib/widgets/repo_item.dart @@ -6,8 +6,9 @@ import 'link.dart'; class RepoItem extends StatelessWidget { final Map payload; + final bool showOwner; - RepoItem(this.payload); + RepoItem(this.payload, {this.showOwner = true}); IconData _buildIconData() { if (payload['isPrivate']) { @@ -34,7 +35,8 @@ class RepoItem extends StatelessWidget { crossAxisAlignment: CrossAxisAlignment.start, children: [ Text( - payload['owner']['login'] + '/' + payload['name'], + (showOwner ? (payload['owner']['login'] + '/') : '') + + payload['name'], style: TextStyle(fontWeight: FontWeight.w600, fontSize: 15), ), Padding(padding: EdgeInsets.only(top: 6)),