Fix Manage button visibility
- Change icon from Icons.settings to Icons.admin_panel_settings for better recognition - Use AppTheme.primaryText (white) instead of secondaryText (white70) for action buttons - Improve visibility of the Manage button in the navigation bar
This commit is contained in:
@@ -378,7 +378,7 @@ class _HomePageState extends State<HomePage> with TickerProviderStateMixin {
|
|||||||
}) {
|
}) {
|
||||||
final isSelected = _selectedTab == label;
|
final isSelected = _selectedTab == label;
|
||||||
final highlightColor = const Color.fromARGB(255, 100, 200, 255);
|
final highlightColor = const Color.fromARGB(255, 100, 200, 255);
|
||||||
final defaultColor = AppTheme.secondaryText;
|
final defaultColor = onTap != null ? AppTheme.primaryText : AppTheme.secondaryText;
|
||||||
|
|
||||||
return GestureDetector(
|
return GestureDetector(
|
||||||
onTap:
|
onTap:
|
||||||
@@ -513,7 +513,7 @@ class _HomePageState extends State<HomePage> with TickerProviderStateMixin {
|
|||||||
if (hasSelectedOrg)
|
if (hasSelectedOrg)
|
||||||
_buildNavButton(
|
_buildNavButton(
|
||||||
'Manage',
|
'Manage',
|
||||||
Icons.settings,
|
Icons.admin_panel_settings,
|
||||||
onTap: () =>
|
onTap: () =>
|
||||||
_showOrganizationSettings(context),
|
_showOrganizationSettings(context),
|
||||||
),
|
),
|
||||||
|
|||||||
@@ -227,7 +227,6 @@ class _OrganizationSettingsDialogState
|
|||||||
_buildTabButton('Members', 0),
|
_buildTabButton('Members', 0),
|
||||||
_buildTabButton('Invite', 1),
|
_buildTabButton('Invite', 1),
|
||||||
_buildTabButton('Requests', 2),
|
_buildTabButton('Requests', 2),
|
||||||
_buildTabButton('Link', 3),
|
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
const SizedBox(height: 16),
|
const SizedBox(height: 16),
|
||||||
@@ -313,8 +312,6 @@ class _OrganizationSettingsDialogState
|
|||||||
return _buildInviteTab();
|
return _buildInviteTab();
|
||||||
case 2:
|
case 2:
|
||||||
return _buildRequestsTab();
|
return _buildRequestsTab();
|
||||||
case 3:
|
|
||||||
return _buildLinkTab();
|
|
||||||
default:
|
default:
|
||||||
return _buildMembersTab();
|
return _buildMembersTab();
|
||||||
}
|
}
|
||||||
@@ -493,6 +490,41 @@ class _OrganizationSettingsDialogState
|
|||||||
child: const Text('Send Invitation'),
|
child: const Text('Send Invitation'),
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
|
|
||||||
|
// Invite link section
|
||||||
|
if (_inviteLink != null) ...[
|
||||||
|
const Divider(),
|
||||||
|
Text(
|
||||||
|
'Invite Link',
|
||||||
|
style: TextStyle(
|
||||||
|
color: AppTheme.primaryText,
|
||||||
|
fontWeight: FontWeight.bold,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
const SizedBox(height: 8),
|
||||||
|
Text(
|
||||||
|
'https://b0esche.cloud/join?token=${_inviteLink ?? ''}',
|
||||||
|
style: TextStyle(color: AppTheme.secondaryText),
|
||||||
|
),
|
||||||
|
const SizedBox(height: 16),
|
||||||
|
Row(
|
||||||
|
children: [
|
||||||
|
ModernGlassButton(
|
||||||
|
onPressed: _copyInviteLink,
|
||||||
|
child: const Text('Copy Link'),
|
||||||
|
),
|
||||||
|
const SizedBox(width: 16),
|
||||||
|
if (_canManage)
|
||||||
|
ModernGlassButton(
|
||||||
|
onPressed: _regenerateInviteLink,
|
||||||
|
child: const Text('Regenerate'),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
] else if (_canManage) ...[
|
||||||
|
const Divider(),
|
||||||
|
const Text('No invite link available'),
|
||||||
|
],
|
||||||
],
|
],
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
@@ -551,42 +583,4 @@ class _OrganizationSettingsDialogState
|
|||||||
},
|
},
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
Widget _buildLinkTab() {
|
|
||||||
return Column(
|
|
||||||
children: [
|
|
||||||
if (_inviteLink != null) ...[
|
|
||||||
Text(
|
|
||||||
'Invite Link',
|
|
||||||
style: TextStyle(
|
|
||||||
color: AppTheme.primaryText,
|
|
||||||
fontWeight: FontWeight.bold,
|
|
||||||
),
|
|
||||||
),
|
|
||||||
const SizedBox(height: 8),
|
|
||||||
Text(
|
|
||||||
'https://b0esche.cloud/join?token=${_inviteLink ?? ''}',
|
|
||||||
style: TextStyle(color: AppTheme.secondaryText),
|
|
||||||
),
|
|
||||||
const SizedBox(height: 16),
|
|
||||||
Row(
|
|
||||||
children: [
|
|
||||||
ModernGlassButton(
|
|
||||||
onPressed: _copyInviteLink,
|
|
||||||
child: const Text('Copy Link'),
|
|
||||||
),
|
|
||||||
const SizedBox(width: 16),
|
|
||||||
if (_canManage)
|
|
||||||
ModernGlassButton(
|
|
||||||
onPressed: _regenerateInviteLink,
|
|
||||||
child: const Text('Regenerate'),
|
|
||||||
),
|
|
||||||
],
|
|
||||||
),
|
|
||||||
] else ...[
|
|
||||||
const Text('No invite link available'),
|
|
||||||
],
|
|
||||||
],
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user