diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextView.java b/src/org/geometerplus/zlibrary/text/view/ZLTextView.java index 4fa79e3b9..7b0469285 100644 --- a/src/org/geometerplus/zlibrary/text/view/ZLTextView.java +++ b/src/org/geometerplus/zlibrary/text/view/ZLTextView.java @@ -545,7 +545,10 @@ public abstract class ZLTextView extends ZLTextViewBase { final int areaX = area.XStart; final int areaY = area.YEnd - getElementDescent(element) - getTextStyle().getVerticalShift(); if (element instanceof ZLTextWord) { - drawWord(areaX, areaY, (ZLTextWord)element, charIndex, -1, false); + drawWord( + areaX, areaY, (ZLTextWord)element, charIndex, -1, false, + getTextColor(getTextStyle().Hyperlink) + ); } else if (element instanceof ZLTextImageElement) { context.drawImage(areaX, areaY, ((ZLTextImageElement)element).ImageData); } else if (element == ZLTextElement.HSpace) { @@ -572,7 +575,8 @@ public abstract class ZLTextView extends ZLTextViewBase { final ZLTextWord word = (ZLTextWord)paragraph.getElement(info.EndElementIndex); drawWord( area.XStart, area.YEnd - context.getDescent() - getTextStyle().getVerticalShift(), - word, 0, len, area.AddHyphenationSign + word, 0, len, area.AddHyphenationSign, + getTextColor(getTextStyle().Hyperlink) ); } } diff --git a/src/org/geometerplus/zlibrary/text/view/ZLTextViewBase.java b/src/org/geometerplus/zlibrary/text/view/ZLTextViewBase.java index a046f96c6..bf97e4af6 100644 --- a/src/org/geometerplus/zlibrary/text/view/ZLTextViewBase.java +++ b/src/org/geometerplus/zlibrary/text/view/ZLTextViewBase.java @@ -186,9 +186,9 @@ abstract class ZLTextViewBase extends ZLView { return 0; } - final void drawWord(int x, int y, ZLTextWord word, int start, int length, boolean addHyphenationSign) { + final void drawWord(int x, int y, ZLTextWord word, int start, int length, boolean addHyphenationSign, ZLColor color) { final ZLPaintContext context = myContext; - context.setTextColor(getTextColor(myTextStyle.Hyperlink)); + context.setTextColor(color); if ((start == 0) && (length == -1)) { drawString(x, y, word.Data, word.Offset, word.Length, word.getMark(), 0); } else {