| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
| |
We were not setting the invalid flag on bitmap load, so any incremental
reshape could interfere with displaying images that got loaded after
the reshape.
|
|
|
|
| |
only use sixelMaxWidth/sixelMaxHeight for sixel
|
|
|
|
|
| |
This fixes a bug where cloning buffers with images would crash the
browser.
|
| |
|
|
|
|
|
|
|
|
| |
The status code & headers are no longer guaranteed to be sent right
after res/outputId, so read them asynchronously instead.
(This is pretty much the same code as the buffer connection handler in
pager. Hopefully we can merge the two at some point.)
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
these are already defined on Window
|
|
|
|
|
|
| |
Merge timeout & interval code paths.
This fixes clearTimeout not clearing intervals.
|
|
|
|
|
|
| |
* add sixel max width/height query
* add cell size query (it's more accurate than dividing window size when
you change xterm font size)
|
|
|
|
| |
and enable it by default.
|
|
|
|
| |
it was never implemented
|
|
|
|
| |
use the new API instead of the convoluted decodercore + growbuf thing
|
|
|
|
|
|
|
|
| |
It seems registerHandle/unregister doesn't accept cint as handles. Not
sure why it even works on 64-bit targets... (maybe some converter
weirdness?)
Seems best to explicitly cast it away.
|
|
|
|
|
|
|
|
| |
Paint the background with the current color, so that it gets associated
with the owner styled node.
(I didn't want to do this because it's slow, but otherwise image-mode
gets very annoying to use.)
|
| |
|
| |
|
|
|
|
|
|
|
| |
Just use the previous tree when possible.
The child list is still reconstructed, but at least we no longer alloc
every single node again at every single restyle.
|
| |
|
|
|
|
| |
the invalid flag must be toggled after styling
|
|
|
|
| |
tokenType had to be checked too
|
| |
|
|
|
|
|
|
| |
Fixes the bug where getting redirected to a buffer that the pager then
deleted (e.g. image display, site no longer available, etc.) would land
you in a buffer detached from the main tree.
|
|
|
|
|
| |
Merge "load config" with "fork loader", so that the loader process gets
forked one packet earlier.
|
| |
|
| |
|
|
|
|
| |
Same as [[siteconf]] autofocus.
|
|
|
|
|
| |
Text data is no longer stored separately in InlineFragments; instead,
we now include refs to StyledNodes.
|
| |
|
| |
|
|
|
|
|
| |
* query default ANSI colors with OSC 4
* disable queries overridden by config
|
|
|
|
|
| |
top/left/right/bottom should only be used in renderdocument with
position: absolute.
|
|
|
|
|
|
|
|
|
|
|
| |
Saves bandwidth; it's especially useful over SSH. Still not sure if this
is the right solution, since it now needs two select cycles instead
of one, and it does yet another copy of the image. (Unnecessarily,
because stbi cannot stream its output, and stbiw cannot stream its
input.)
Also, to save memory, we now discard decoded images of buffers that are
not being viewed.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
x is clamped to 0, so there is no need to offset it by offx.
|
|
|
|
| |
reduces images spilling out of their containers
|
|
|
|
|
|
|
|
|
|
|
| |
With many limitations:
* slightly randomized expiry, so it's harder to fingerprint
* only images. so e.g. CSS is still left uncached
* it's per-buffer and non-persistent, so images are still redownloaded
for every new page load
so it's more of an image sharing between placements than true caching.
|
|
|
|
| |
I doubt this is correct, but at least it's less broken than previously
|
| |
|
| |
|
|
|
|
|
|
|
| |
Mainly things you could already set with [[siteconf]] but not normally.
Also, a `styling' option to disable author styles.
Also, `images' is now documented as an "experimental" option, since it's
halfway usable now.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* resize images with stb_image_resize
* use tee for output handle redirection (redirectToFile blocks)
* cache original image files
* accept lseek in sandbox
* misc stbi fixes
For now, I just pulled in stb_image_resize v1. v2 is an extra 150K in
size, not sure if it's worth the cost. (Either way, we can always switch
later if needed, since the API is almost the same.)
Next step: move sixel/kitty encoders to CGI, and cache their output in
memory instead of the intermediate RGBA representation.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* fix text-align breaking down in the presence of floats
* improve (and simplify) background color area painting
This greatly simplifies inline layout by removing the additional
text-align atom movement code and replacing it with a full re-layout
when needed. That re-layout only occurs in (rare) cases where the text
is likely to be relatively short anyway, so it's probably a win in any
remotely realistic layout.
This has also made it possible to at last merge the last three passes
(horizontal/vertical alignment and background painting) and drop that
weird synchronized tree + vector traversal.
|