fix: label color

This commit is contained in:
Rongjian Zhang 2019-09-14 15:39:38 +08:00
parent 68dacabfbd
commit eb9de95efc
3 changed files with 12 additions and 10 deletions

View File

@ -133,7 +133,7 @@ class IssuesScreen extends StatelessWidget {
label['name'],
style: TextStyle(
fontSize: 12,
color: PrimerColors.gray900, // FIXME:
color: getFontColorByBrightness(color),
fontWeight: FontWeight.w600,
),
),

View File

@ -28,6 +28,14 @@ Color convertColor(String cssHex) {
return Color(int.parse('ff' + cssHex, radix: 16));
}
Color getFontColorByBrightness(Color color) {
var grayscale = color.red * 0.3 + color.green * 0.59 + color.blue * 0.11;
// print('color: $color, $grayscale');
var showWhite = grayscale < 128;
return showWhite ? Colors.white : Colors.black;
}
void nextTick(Function callback, [int milliseconds = 0]) {
// FIXME:
Future.delayed(Duration(milliseconds: 0)).then((_) {

View File

@ -61,19 +61,13 @@ class TimelineItem extends StatelessWidget {
}
TextSpan _buildLabel(item) {
// FIXME:
var color = convertColor(item['label']['color']);
var grayscale = color.red * 0.3 + color.green * 0.59 + color.blue * 0.11;
// print('color: $color, $grayscale');
var showWhite = grayscale < 128;
var textColor = showWhite ? Colors.white : Colors.black;
return TextSpan(
text: item['label']['name'],
style: TextStyle(
color: textColor,
// https://github.com/flutter/flutter/issues/20430
background: Paint()..color = color,
color: getFontColorByBrightness(color),
backgroundColor: color,
// https://stackoverflow.com/a/52592679
// ..strokeWidth = 16.5
// ..style = PaintingStyle.stroke