From a95a17897125a4268864b6a67e4fdb79fa5439a3 Mon Sep 17 00:00:00 2001 From: Araki Ken Date: Mon, 11 Mar 2013 21:57:49 +0900 Subject: * terms.c: Change time to wait for the response of "\x1b[14t\x1b[18t" from 0.1 sec to 0.5 sec. * image.c: - clearImage() works. - Use cached image files created by w3m in getImage(). * file.c: Hack for alignment. --- file.c | 25 ++++++++++++++++--------- image.c | 6 +----- terms.c | 2 +- 3 files changed, 18 insertions(+), 15 deletions(-) diff --git a/file.c b/file.c index 1e363d0..10ad444 100644 --- a/file.c +++ b/file.c @@ -3377,19 +3377,21 @@ process_img(struct parsed_tag *tag, int width) if (i0 >= 0) Strcat(tmp, Sprintf(" height=%d", i0)); switch (align) { + case ALIGN_MIDDLE: + if (!support_remote_image) { + top = ni / 2; + bottom = top; + if (top * 2 == ni) + yoffset = (int)(((ni + 1) * pixel_per_line - i) / 2); + else + yoffset = (int)((ni * pixel_per_line - i) / 2); + break; + } case ALIGN_TOP: top = 0; bottom = ni - 1; yoffset = 0; break; - case ALIGN_MIDDLE: - top = ni / 2; - bottom = top; - if (top * 2 == ni) - yoffset = (int)(((ni + 1) * pixel_per_line - i) / 2); - else - yoffset = (int)((ni * pixel_per_line - i) / 2); - break; case ALIGN_BOTTOM: top = ni - 1; bottom = 0; @@ -3407,7 +3409,12 @@ process_img(struct parsed_tag *tag, int width) } break; } - xoffset = (int)((nw * pixel_per_char - w) / 2); + + if (support_remote_image) + xoffset = 0; + else + xoffset = (int)((nw * pixel_per_char - w) / 2); + if (xoffset) Strcat(tmp, Sprintf(" xoffset=%d", xoffset)); if (yoffset) diff --git a/image.c b/image.c index 0c8476a..51e3903 100644 --- a/image.c +++ b/image.c @@ -288,10 +288,6 @@ clearImage() int j; TerminalImage *i; - if (support_remote_image) { - return; - } - if (!activeImage) return; if (!n_terminal_image) @@ -600,7 +596,7 @@ getImage(Image * image, ParsedURL *current, int flag) if (image->height > 0 && image->height % pixel_per_line_i > 0) image->height += (pixel_per_line_i - image->height % pixel_per_line_i); - if (image->height > 0 && image->width > 0) + if (! getenv("WINDOWID") && image->height > 0 && image->width > 0) cache->loaded = IMG_FLAG_LOADED; } diff --git a/terms.c b/terms.c index a915c0a..9d9b3e1 100644 --- a/terms.c +++ b/terms.c @@ -500,7 +500,7 @@ get_pixel_per_cell(int *ppc, int *ppl) p = buf; left = sizeof(buf) - 1; for (i = 0; i < 5; i++) { - tval.tv_usec = 100000; /* 0.1 sec */ + tval.tv_usec = 500000; /* 0.5 sec */ tval.tv_sec = 0; FD_SET(tty,&rfd); if (select(tty+1,&rfd,NULL,NULL,&tval) <= 0 || ! FD_ISSET(tty,&rfd)) { -- cgit v1.2.3