about summary refs log tree commit diff stats
Commit message (Collapse)AuthorAgeFilesLines
...
* layout: avoid shrink-to-fit padding/margin overflowbptato2024-06-233-7/+27
|
* layout: get rid of incorrect hackbptato2024-06-233-1/+8
|
* config: fix JS command definitionsbptato2024-06-232-3/+4
|
* term: fix negative line damage bugbptato2024-06-231-4/+2
|
* loader: fix failing assertionbptato2024-06-221-2/+4
| | | | | There is no guarantee that iclose is called exactly at rsBeforeStatus or rsBeforeHeaders.
* Update monouchabptato2024-06-226-6/+6
|
* env: fix nil deref in clientbptato2024-06-221-1/+3
|
* misc cleanupsbptato2024-06-2215-35/+24
|
* pager: fix nil deref in dupeBufferbptato2024-06-221-15/+18
|
* stbi: allow x-unknownbptato2024-06-221-1/+1
|
* forkserver: add missing exitnowbptato2024-06-221-0/+1
|
* pager: refactor drawing codebptato2024-06-227-504/+536
| | | | | | | * merge select into container * avoid unnecessary redraws in draw() for parts of the screen that haven't been updated * various image redraw fixes
* term, pager: improve image displaybptato2024-06-216-102/+224
| | | | | | * basic repaint algorithm for sixel (instead of brute force "clear the whole screen") * do not re-send kitty images already on the screen
* client, pager: fix cached item refcounting bugsbptato2024-06-214-30/+66
|
* stbi: add encodersbptato2024-06-215-27/+1828
|
* img, term: try to detect unknown images, improve kitty encoderbptato2024-06-215-50/+54
| | | | | | * preserve alpha in kitty + simplify encoder * pass unknown image types to stbi (as image/x-unknown) and let it detect the type
* img: use stb_image, drop zlib as dependencybptato2024-06-2015-57/+8174
| | | | | | | Now we have decoders for gif, jpeg, bmp. Also, the in-house PNG decoder has been replaced in favor of the stbi implementation; this means we no longer depend on zlib, since stbi comes with a built in inflate implementation.
* loader: better error handlingbptato2024-06-204-21/+31
| | | | we no longer crash on broken codecs. yay
* img, loader: separate out png codec into cgi, misc improvementsbptato2024-06-2029-291/+645
| | | | | | | | | | | | | | | * multi-processed and sandboxed PNG decoding & encoding (through local CGI) * improved request body passing (including support for output id as response body) * simplified & faster blob()/text() - now every request starts suspended, and OngoingData.buf has been replaced with loader's buffering capability * image caching: we no longer pull bitmaps from the container after every single getLines call Next steps: replace our bespoke PNG decoder with something more usable, add other decoders, and make them stream.
* pager: prefill lmUsername with current usernamebptato2024-06-161-1/+1
|
* buffer: copy lessbptato2024-06-141-8/+10
|
* buffer: decoding fixesbptato2024-06-144-46/+48
| | | | | | * simplify processData * set document charset on creation * update chagashi
* Update Chame, Chagashibptato2024-06-139-149/+46
|
* cssvalues: add "clear" to table wrapper boxbptato2024-06-113-1/+8
| | | | this one is weird but I'm sure the standard is technically right
* pager: actually fix broken logicbptato2024-06-091-2/+2
| | | | | | | | ok we block if: * method is not GET * scheme is different * it is not the case that both the current and the target schemes are http/s
* pager: fix broken logicbptato2024-06-091-3/+3
| | | | bleh
* dom: simplify window.loaderbptato2024-06-093-29/+18
| | | | the Option setup hasn't made much sense for a long time now
* pager: send Accept: */* for viewImagebptato2024-06-082-3/+15
|
* buffer: add autofocusbptato2024-06-088-101/+136
| | | | naturally, it's opt-in
* pager, buffer: improve forms, protocol configbptato2024-06-087-173/+192
| | | | | | * refactor form submission * add options to specify form handling per protocol * block cross-protocol POST requests
* config.toml: update headersbptato2024-06-081-2/+2
| | | | | | | | | * prepend Mozilla/5.0 to User-Agent; an unfortunate fact is that even the G-lettered search engine breaks without it, and I've seen sites that refuse to serve pages at all. * Add */* to Accept, in the hope that we'll get images more often. (The ideal solution is to set it to "*/*" when fetching images, but the API format doesn't let us do this yet; TODO.)
* git.cgi: add git stash list, switch -> branchbptato2024-06-081-20/+30
| | | | | | | | | * gitcha stash list special processing * gitcha switch no longer opens the branch view; it is now opened by gitcha branch * make gitcha branch UI consistent with the rest of the script. (the idea is that clicking on refs does not modify the repo, only action links like (switch) or (apply).)
* layout: minor cleanupbptato2024-06-041-7/+4
|
* layout: track overflow sizebptato2024-06-042-48/+130
| | | | | | Not very useful yet; partial layouting and/or a new renderer is probably necessary to replace the current FormatCell-based node placement, otherwise it will be unbearably slow.
* Move JS wrapper into Monouchabptato2024-06-0371-81054/+246
| | | | Operation "modularize Chawan somewhat" part 3
* js: improve jsregex interfacebptato2024-06-033-101/+88
| | | | | | | It's easier to just use nested seqs here. (This also fixes reverse-search highlighting the last capture group instead of the whole match.)
* js: change jsstfunc syntaxbptato2024-06-033-4/+4
| | | | | | Interface:function -> Interface.function for consistency with regular JS syntax
* md2html: include numbers in idsbptato2024-06-031-3/+3
|
* js: fix runtime cleanupbptato2024-06-034-18/+44
| | | | | | | | | | | | | | This is a minefield. Intuitively, you would think that just clearing the opaque and manually freeing registered object should be enough. Unfortunately, this is not true; we do not store whether we are actually holding a reference to registered JS objects, so this approach leads to double frees. Instead, we add a QJS callback that is called right after the final GC cleanup, but before the list_free assertion. This way, we can be sure that any object still in our registry is referenced by us, and can therefore unreference them safely.
* js: small misc changesbptato2024-06-021-13/+15
| | | | just sync'ing
* css: slightly optimize cascadebptato2024-06-024-136/+145
| | | | Parse rule values in sheet addRule, not during cascade.
* Update docsbptato2024-06-022-12/+5
|
* renderdocument: handle overlapping double width charsbptato2024-06-023-1/+15
| | | | | See attached test case; previously, this would result in a missing space in visual mode and a crash in dump mode.
* layout: misc refactoringsbptato2024-06-021-209/+180
| | | | | * get rid of BlockGroup * unify BlockBox construction for flex, block, table
* layout: clean up inline tree constructionbptato2024-06-015-292/+314
| | | | | | | Much cleaner than the previous solution. Should also be somewhat less wasteful, as we no longer constantly rebuild the same tree with new branches.
* layout: dimSum -> sumbptato2024-06-011-22/+21
|
* layout: refactor resolveSizesbptato2024-06-011-140/+126
| | | | get rid of percHeight, unify min/max sizing, etc.
* main: fix tmpdir/sockdir permsbptato2024-05-311-3/+4
|
* test: update acid1.color.expectedbptato2024-05-311-1/+1
| | | | | I would prefer it to not cut off the canvas background color, but the current output is just as valid.
* config: fix -C with files not in CWDbptato2024-05-312-6/+14
|