about summary refs log tree commit diff stats
Commit message (Collapse)AuthorAgeFilesLines
* Update docsbptato2024-07-293-13/+302
|
* buffer, layout: small refactoringbptato2024-07-292-40/+37
|
* buffer, pager, config: add meta-refresh + misc fixesbptato2024-07-2818-141/+266
| | | | | | | | | * buffer, pager, config: add meta-refresh value, which makes it possible to follow http-equiv=refresh META tags. * config: clean up redundant format mode parser * timeout: accept varargs for params to pass on to functions * pager: add "options" dict to JS gotoURL * twtstr: remove redundant startsWithNoCase
* Update submodulesbptato2024-07-285-4/+4
|
* layout: merge neighboring wordsbptato2024-07-283-32/+28
| | | | Great performance win on large documents.
* dom: add missing nil checksbptato2024-07-271-1/+4
| | | | document is not set in the main process.
* headers, request: bring it closer to the standardbptato2024-07-277-128/+233
| | | | | | * add standard interfaces to headers * use window base URL for newRequest * remove pointless generic in newRequest
* loader: follow redirects in fetch()bptato2024-07-271-4/+21
|
* env: add alert shimbptato2024-07-271-0/+3
| | | | just call console.error for now
* loader: fix saveToBitmap for 0-len imagesbptato2024-07-271-1/+5
|
* cssvalues: fix parseDimensionValues bugbptato2024-07-271-9/+10
| | | | Whitespace-only dimension values no longer crash the parser.
* cascade: add some presentational hintsbptato2024-07-271-3/+7
| | | | | | * top/middle/bottom for img, remove redundant display: block for floats (they get blockified anyway) * map align for p too, not just div
* layout: inline table fixesbptato2024-07-274-55/+188
| | | | | | | * properly wrap inline internal table boxes in inline-table (instead of block-level table) * fix missing baseline in table wrapper boxes * fix wrong wrapping of misparented table/row/row group children
* layout: position: relative, absolute fixesbptato2024-07-263-34/+63
| | | | | | | | | | * support position: absolute on flex items * proper top/bottom/left/right calculation for position: relative * push positioned flex box sizes to positioned stack Still not perfect: position: absolute should always resolve percentage sizes and top/bottom/left/right, meaning absolute layout needs to be delayed until its containing box is fully layouted.
* url: fix URLSearchParams implementationbptato2024-07-251-20/+19
| | | | Just allocate it on-demand so it works properly.
* layout: fix incorrect absolute positioningbptato2024-07-254-18/+97
| | | | It was broken for parent boxes with indefinite sizes.
* layout: min/max sizing fixesbptato2024-07-254-29/+60
| | | | | | | * fix max size trumping min size * respect min-width/max-width/min-height/max-height for images * fix xminwidth calculation for percentage-sized images with an indefinite containing size
* selectorparser: fix broken tostrbptato2024-07-251-11/+27
|
* url: fix a small incompatibilitybptato2024-07-252-28/+35
| | | | + some more cleanup
* url: misc fixes & improvementsbptato2024-07-244-491/+634
| | | | | | * fix various parsing bugs * rewrite state machine * other small optimizations
* client, sandbox: fix termux buildbptato2024-07-243-8/+60
| | | | | Still not perfect, because it crashes on missing /tmp dir so you have to manually set it...
* pager: fix dead containers left in replaceBackupbptato2024-07-232-0/+9
| | | | | | | | | | | fixes the following bug: * click a link that redirects somewhere * go back * discard buffer (that had the link) * discard the new buffer then you would find yourself in a zombie buffer you previously discarded
* jebp: fix NEON simd bugbptato2024-07-231-1/+1
| | | | | | SRCtype and DSTtype were mixed up. See https://todo.sr.ht/~bptato/chawan/14
* term: fix positionImage sixel size clamping (take 2)bptato2024-07-231-2/+2
| | | | | | Hope I got it right this time. (The previous iteration did not take into account the image position on the screen, so it was just as bad as the first one.)
* term: fix positionImage sixel size clampingbptato2024-07-231-6/+10
| | | | | clamping maxwpx/maxhpx crops the image starting from the canvas corner, not the image corner
* dom: fix wrong proc call in fireEventbptato2024-07-222-2/+2
| | | | dispatchEvent is for JS only, since it unsets isTrusted.
* layout: fix various flex column sizing bugsbptato2024-07-225-24/+76
| | | | | | * fix flex column item width not being stretched * set minimum flex column height to the layouted item's height (to avoid overlap)
* buffer, dom, event: JS binding for dispatchEventbptato2024-07-226-116/+152
| | | | | | * move dispatchEvent to event, add a JS binding * only reshape if the document was actually invalidated after event dispatch/interval call/etc.
* dom: fix getElementById signaturebptato2024-07-211-3/+3
|
* buffer: replace dispatchEvent procs with that in dombptato2024-07-213-37/+7
|
* dom: fix race condition in image loadingbptato2024-07-212-5/+4
| | | | | | 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.
* term: fix kitty image positioningbptato2024-07-201-2/+5
| | | | only use sixelMaxWidth/sixelMaxHeight for sixel
* loader: copy cached items on buffer cloningbptato2024-07-205-8/+20
| | | | | This fixes a bug where cloning buffers with images would crash the browser.
* Update readmebptato2024-07-201-4/+7
|
* img: add webp decoder (jebp)bptato2024-07-207-2/+4885
| | | | | | | | | | It works fine AFAICT, just missing VP8 deblocking filters, so lossy WebP images don't look great. I have extended the API a bit to allow reading from stdin, not just paths. Otherwise, it's the same as matanui159/jebp. TODO: add loop filters
* buffer: fix nil deref on click without clickable elementbptato2024-07-192-7/+5
|
* Update docsbptato2024-07-192-17/+148
|
* Makefile: add distcleanbptato2024-07-192-1/+6
|
* loader: async status/headers for fetchbptato2024-07-193-30/+41
| | | | | | | | 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.)
* html: event cleanup, XHR progressbptato2024-07-1812-198/+617
|
* luwrap: use lre_is_spacebptato2024-07-181-2/+1
|
* Update monouchabptato2024-07-182-1/+1
|
* stbi: fix incompatible function pointer typebptato2024-07-181-2/+2
| | | | clang complains about this
* dom, match, event: small cleanupbptato2024-07-173-33/+32
|
* Update monouchabptato2024-07-172-1/+1
|
* client: remove redundant global functionsbptato2024-07-161-22/+0
| | | | these are already defined on Window
* timeout: simplify, misc fixesbptato2024-07-163-90/+61
| | | | | | Merge timeout & interval code paths. This fixes clearTimeout not clearing intervals.
* term: image sizing fixesbptato2024-07-161-8/+39
| | | | | | * add sixel max width/height query * add cell size query (it's more accurate than dividing window size when you change xterm font size)
* config: support smart casebptato2024-07-166-14/+25
| | | | and enable it by default.
* io: remove readablestreambptato2024-07-141-32/+0
| | | | it was never implemented