aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAraki Ken <arakiken@users.sf.net>2013-03-11 12:57:49 +0000
committerTatsuya Kinoshita <tats@debian.org>2014-12-06 11:47:04 +0000
commita95a17897125a4268864b6a67e4fdb79fa5439a3 (patch)
tree5347ab8ee89568448df1fbe3969236603c83844b
parent- Adjust the image size to the terminal cell size. - If the image size is spe... (diff)
downloadw3m-a95a17897125a4268864b6a67e4fdb79fa5439a3.tar.gz
w3m-a95a17897125a4268864b6a67e4fdb79fa5439a3.zip
* 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.
-rw-r--r--file.c25
-rw-r--r--image.c6
-rw-r--r--terms.c2
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)) {