diff --git a/lib/pages/chat/events/html_message.dart b/lib/pages/chat/events/html_message.dart
index 160b34857..696a3b063 100644
--- a/lib/pages/chat/events/html_message.dart
+++ b/lib/pages/chat/events/html_message.dart
@@ -46,6 +46,7 @@ class HtmlMessage extends StatelessWidget {
final bool isTransitionAnimation;
final ReadingAssistanceMode? readingAssistanceMode;
+ final bool Function(PangeaToken)? isHighlighted;
final bool Function(PangeaToken)? isSelected;
final void Function(PangeaToken)? onClick;
// Pangea#
@@ -68,6 +69,7 @@ class HtmlMessage extends StatelessWidget {
required this.controller,
this.nextEvent,
this.prevEvent,
+ this.isHighlighted,
this.isSelected,
this.onClick,
this.isTransitionAnimation = false,
@@ -388,6 +390,10 @@ class HtmlMessage extends StatelessWidget {
? isSelected!.call(token)
: false;
+ final highlighted = token != null && isHighlighted != null
+ ? isHighlighted!.call(token)
+ : false;
+
final isNew = token != null &&
overlayController != null &&
overlayController!.isNewToken(token);
@@ -423,6 +429,7 @@ class HtmlMessage extends StatelessWidget {
color: renderer.backgroundColor(
context,
selected,
+ highlighted,
isNew,
),
),
@@ -447,6 +454,7 @@ class HtmlMessage extends StatelessWidget {
color: renderer.backgroundColor(
context,
selected,
+ highlighted,
isNew,
),
),
@@ -585,6 +593,7 @@ class HtmlMessage extends StatelessWidget {
context,
false,
false,
+ false,
),
),
),
@@ -601,6 +610,7 @@ class HtmlMessage extends StatelessWidget {
context,
false,
false,
+ false,
),
),
// Pangea#
diff --git a/lib/pages/chat/events/message_content.dart b/lib/pages/chat/events/message_content.dart
index b57d8472d..de7601493 100644
--- a/lib/pages/chat/events/message_content.dart
+++ b/lib/pages/chat/events/message_content.dart
@@ -155,11 +155,6 @@ class MessageContent extends StatelessWidget {
selectedToken: token,
);
}
-
- bool isSelected(PangeaToken token) {
- return overlayController!.isTokenSelected(token) ||
- overlayController!.isTokenHighlighted(token);
- }
// Pangea#
@override
@@ -367,7 +362,8 @@ class MessageContent extends StatelessWidget {
pangeaMessageEvent: pangeaMessageEvent,
nextEvent: nextEvent,
prevEvent: prevEvent,
- isSelected: overlayController != null ? isSelected : null,
+ isHighlighted: overlayController?.isTokenHighlighted,
+ isSelected: overlayController?.isTokenSelected,
onClick: event.isActivityMessage ? null : onClick,
isTransitionAnimation: isTransitionAnimation,
readingAssistanceMode: readingAssistanceMode,
diff --git a/lib/pangea/toolbar/utils/token_rendering_util.dart b/lib/pangea/toolbar/utils/token_rendering_util.dart
index 2a61659a5..6e4304b10 100644
--- a/lib/pangea/toolbar/utils/token_rendering_util.dart
+++ b/lib/pangea/toolbar/utils/token_rendering_util.dart
@@ -86,10 +86,14 @@ class TokenRenderingUtil {
}
}
- Color backgroundColor(BuildContext context, bool selected, bool isNew) {
- if (isNew) {
- return AppConfig.success;
- }
+ Color backgroundColor(
+ BuildContext context,
+ bool selected,
+ bool highlighted,
+ bool isNew,
+ ) {
+ if (highlighted) return Theme.of(context).colorScheme.primary;
+ if (isNew) return AppConfig.success;
return selected
? Theme.of(context).colorScheme.primary
: Colors.white.withAlpha(0);