ente/auth/lib/ui/components/title_bar_title_widget.dart

56 lines
1.3 KiB
Dart
Raw Normal View History

2023-04-07 09:36:57 +00:00
import 'package:ente_auth/theme/ente_theme.dart';
import 'package:flutter/material.dart';
class TitleBarTitleWidget extends StatelessWidget {
final String? title;
final bool isTitleH2;
final IconData? icon;
const TitleBarTitleWidget({
super.key,
2023-04-07 09:36:57 +00:00
this.title,
this.isTitleH2 = false,
this.icon,
});
2023-04-07 09:36:57 +00:00
@override
Widget build(BuildContext context) {
final textTheme = getEnteTextTheme(context);
final colorTheme = getEnteColorScheme(context);
if (title != null) {
if (icon != null) {
return Row(
mainAxisSize: MainAxisSize.min,
crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[
Text(
title!,
style: textTheme.h3Bold,
overflow: TextOverflow.ellipsis,
maxLines: 1,
),
const SizedBox(width: 8),
Icon(icon, size: 20, color: colorTheme.strokeMuted),
],
);
}
if (isTitleH2) {
return Text(
title!,
style: textTheme.h2Bold,
overflow: TextOverflow.ellipsis,
maxLines: 1,
);
} else {
return Text(
title!,
style: textTheme.h3Bold,
overflow: TextOverflow.ellipsis,
maxLines: 1,
);
}
}
return const SizedBox.shrink();
}
}