|
|
@ -184,6 +184,7 @@ class TextLine extends StatelessWidget { |
|
|
|
final style = textNode.style; |
|
|
|
final style = textNode.style; |
|
|
|
var res = const TextStyle(); // This is inline text style |
|
|
|
var res = const TextStyle(); // This is inline text style |
|
|
|
final color = textNode.style.attributes[Attribute.color.key]; |
|
|
|
final color = textNode.style.attributes[Attribute.color.key]; |
|
|
|
|
|
|
|
var hasLink = false; |
|
|
|
|
|
|
|
|
|
|
|
<String, TextStyle?>{ |
|
|
|
<String, TextStyle?>{ |
|
|
|
Attribute.bold.key: defaultStyles.bold, |
|
|
|
Attribute.bold.key: defaultStyles.bold, |
|
|
@ -203,6 +204,9 @@ class TextLine extends StatelessWidget { |
|
|
|
res = _merge(res.copyWith(decorationColor: textColor), |
|
|
|
res = _merge(res.copyWith(decorationColor: textColor), |
|
|
|
s!.copyWith(decorationColor: textColor)); |
|
|
|
s!.copyWith(decorationColor: textColor)); |
|
|
|
} else { |
|
|
|
} else { |
|
|
|
|
|
|
|
if (k == Attribute.link.key) { |
|
|
|
|
|
|
|
hasLink = true; |
|
|
|
|
|
|
|
} |
|
|
|
res = _merge(res, s!); |
|
|
|
res = _merge(res, s!); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
@ -252,6 +256,13 @@ class TextLine extends StatelessWidget { |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
res = _applyCustomAttributes(res, textNode.style.attributes); |
|
|
|
res = _applyCustomAttributes(res, textNode.style.attributes); |
|
|
|
|
|
|
|
if (hasLink && readOnly) { |
|
|
|
|
|
|
|
return TextSpan( |
|
|
|
|
|
|
|
text: textNode.value, |
|
|
|
|
|
|
|
style: res, |
|
|
|
|
|
|
|
mouseCursor: SystemMouseCursors.click, |
|
|
|
|
|
|
|
); |
|
|
|
|
|
|
|
} |
|
|
|
return TextSpan(text: textNode.value, style: res); |
|
|
|
return TextSpan(text: textNode.value, style: res); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|