diff options
author | Araki Ken <arakiken@users.sf.net> | 2013-03-13 21:24:43 +0000 |
---|---|---|
committer | Tatsuya Kinoshita <tats@debian.org> | 2014-12-06 11:47:04 +0000 |
commit | 0d99209d9f499ff3d7edf2b34f8343ba23a39aef (patch) | |
tree | 2cef25d91bde097c84d6a155ebbea19b133b4bef | |
parent | * terms.c: Clear fd_set by FD_ZERO() before select(). (diff) | |
download | w3m-0d99209d9f499ff3d7edf2b34f8343ba23a39aef.tar.gz w3m-0d99209d9f499ff3d7edf2b34f8343ba23a39aef.zip |
* display.c: Draw underline on anchor text which is not overlapped with any image.
-rw-r--r-- | display.c | 11 |
1 files changed, 5 insertions, 6 deletions
@@ -521,10 +521,10 @@ drawAnchorCursor0(Buffer *buf, AnchorList *al, int hseq, int prevhseq, break; } if (hseq >= 0 && an->hseq == hseq) { - int hasImage = 0; + int start_pos = an->start.pos; for (i = an->start.pos; i < an->end.pos; i++) { - if (l->propBuf[i] & PE_IMAGE) - hasImage = 1 ; + if (support_remote_image && (l->propBuf[i] & PE_IMAGE)) + start_pos = i + 1; /* Lazy check */ if (l->propBuf[i] & (PE_IMAGE | PE_ANCHOR | PE_FORM)) { if (active) l->propBuf[i] |= PE_ACTIVE; @@ -532,10 +532,9 @@ drawAnchorCursor0(Buffer *buf, AnchorList *al, int hseq, int prevhseq, l->propBuf[i] &= ~PE_ACTIVE; } } - if (active && - (! support_remote_image || ! hasImage)) + if (active && start_pos < an->end.pos) redrawLineRegion(buf, l, l->linenumber - tline + buf->rootY, - an->start.pos, an->end.pos); + start_pos, an->end.pos); } else if (prevhseq >= 0 && an->hseq == prevhseq) { if (active) |