emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Slow image display over network


From: David Kastrup
Subject: Re: Slow image display over network
Date: Fri, 24 Sep 2010 13:51:49 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux)

Lars Magne Ingebrigtsen <address@hidden> writes:

> Daniel Pittman <address@hidden> writes:
>
>> Aw, heck.  I saved you the time: PNG loading does create the X image and
>> pixmap during the load process, confirming my guesswork.  I didn't check the
>> other image loaders, but they would sensibly behave the same way, showing the
>> same result.
>
> Right.  Image load pushes the image over X, even though we're not
> actually going to display it?

AFAIU, image load is initiated in the display engine.  So we are
actually going to display it.

> That means that the way Gnus displays images is as pessimal as
> possible.  When reading a HTML message with images, Gnus calls
> (image-size (create-image ...)) to find out the size, and then if it's
> too big, it rescales the image down.

create-image is not a problem.  image-size, however, calls lookup_image,
and that loads and initiates an image, including caching it etc.

Not sure whether that really does the Pixmap as well.

> And this means that the huge image has to be transferred first over
> the slow X connection, and then rescaled, and then probably
> transferred again?
>
> Is this really necessary?  :-) Why can't image transfer to the X
> server wait until the `put-image' call?

Initially, there was no need to load the image until it was actually
displayed.

No idea what the code does right now.

-- 
David Kastrup




reply via email to

[Prev in Thread] Current Thread [Next in Thread]