about summary refs log tree commit diff stats
Commit message (Collapse)AuthorAgeFilesLines
...
* loader: add download managerbptato2025-01-244-22/+237
| | | | | | Crude, but better than nothing. (I really wish the screen didn't flash on reload...)
* poll: fix nfds_t size on Androidbptato2025-01-241-3/+5
| | | | | | bionic uses uint. Why? Why indeed...
* config: fix compilation on older Nim versionsbptato2025-01-241-1/+2
|
* term: remove unused importbptato2025-01-241-1/+0
|
* buffer: support navigation on load/click, use origin for hover checkingbptato2025-01-243-9/+28
| | | | | | | Navigation from e.g. setTimeout still doesn't work. Also, the hover check now uses the auth origin instead of the host, and the auth origin now works for "file" as expected.
* file, sftp: send Content-Lengthbptato2025-01-242-14/+28
|
* forkserver: fix fd leakbptato2025-01-241-0/+1
|
* ua.css: add align to h[1-6]bptato2025-01-241-4/+8
|
* chadombuilder: perform microtask checkpoint on script insertionbptato2025-01-233-14/+26
|
* buffer: add placeholders for [frame]bptato2025-01-233-23/+26
| | | | | | | | | | HTML5 doesn't allow frameless processing of documents, so the <noframes> fallback never really worked. Being able to click on the individual frames feels somewhat less broken. I'm unsure how the actual solution should look like. Either we need multiple buffer support per process, or treat them as pseudo-images and handle them in pager.
* dom: fix img tag insertion stepsbptato2025-01-231-1/+1
| | | | | TAG_IMAGE does not really exist; it's auto-converted to TAG_IMG by the parser.
* buffer: improve screen state synchronizationbptato2025-01-234-161/+134
| | | | | | | | | | The intent behind the original design was that the page shouldn't change without user interaction. This sounds good in theory, but in practice it's unnecessary if you disable JS (nothing will modify the page), and annoying if you enable it (breaks pages that load with AJAX). So now we queue a task to notify us when the page has been updated, and act accordingly when the task is completed.
* ua.css: italicize addressbptato2025-01-231-1/+1
|
* Update docs, makefilebptato2025-01-232-11/+86
|
* term: re-add write overload for `string'bptato2025-01-231-0/+5
| | | | | | looks like we still need this fence ref. https://todo.sr.ht/~bptato/chawan/42
* cssvalues: add missing bounds checkbptato2025-01-231-3/+3
|
* layout: fix an absolute sizing bugbptato2025-01-233-5/+9
| | | | it's size.h, not size.w
* cssvalues: quick hack to make simple calc() expressions workbptato2025-01-233-2/+40
| | | | | | | | | | Most calc calls I've seen look something like "calc(100% - 2em)", i.e. just a percentage value offset by a pixel value. As it happens, we also had 24 bits available in CSSLength objects because of padding. Just enough to smuggle in that offset :) Very limited of course, but it does fix layout on a couple of websites.
* javascript: clean up & optimizebptato2025-01-221-307/+217
| | | | welp, it doesn't really seem to make things faster...
* pager, term: replace execCmd, Filebptato2025-01-225-48/+82
| | | | | | | | | | pager: I want to change mailcap command parsing, so a custom implementation is needed. term: now it uses a custom buffer for the output stream too. I don't think there is much difference in performance, but stdio was in the way. (Also, this way it will be easier to make it async in the future.)
* selectorparser: optimize Selector sizebptato2025-01-222-37/+33
|
* Add annotations for move semanticsbptato2025-01-2214-62/+67
| | | | | | | | | Supposedly they aren't broken in refc after 2.0.0, so we can do this now that 1.6.14 is dropped. I've confirmed lent to work as advertised; it indeed reduces copies. sink doesn't seem to help much, but I guess it will be useful once we switch to ORC.
* javascript: allow sink parametersbptato2025-01-222-0/+18
|
* javascript: add .jsrget, .jsrfgetbptato2025-01-223-70/+139
| | | | Implements the [Replaceable] WebIDL property.
* dom: add some missing nil checksbptato2025-01-221-6/+14
|
* render: actually fix the "extra unnecessary line" bugbptato2025-01-2132-38/+4
| | | | Plus remove addLines, it's no longer very useful.
* render: blend in paintBackgroundbptato2025-01-217-43/+68
| | | | | | | It's an improvement, but the painting order still isn't quite right... Also fixes a bug where paintBackground would unnecessarily append an extra line to the document's end.
* cssvalues: support percentage rgb colors, hsl & hslabptato2025-01-215-44/+154
| | | | hsl is quite popular these days.
* cssvalues: add newer length unitsbptato2025-01-211-18/+36
| | | | I'm not convinced that anybody even knows these exist, but whatever.
* layout: fix division by 0bptato2025-01-211-2/+2
|
* cssvalues: fix rgba() function parsingbptato2025-01-204-5/+10
|
* cascade: support nested variablesbptato2025-01-204-79/+91
| | | | ...and refactor applyValue in the process.
* cascade: collapse StyledNode tree into DOMbptato2025-01-209-534/+317
| | | | | We now compute styles on-demand, which is both more efficient and simpler than the convoluted tree diffing logic we previously used.
* pager: do not alert on failed history write if config dir doesn't existbptato2025-01-201-1/+4
| | | | ref. https://todo.sr.ht/~bptato/chawan/41
* Makefile: fix uninstall for old section-5 pagesbptato2025-01-201-1/+1
|
* container, config.toml: add | commandbptato2025-01-194-0/+26
| | | | | | Particularly useful when debugging minified JS. vi always wraps; the centering behavior is from vim.
* dom: simplify a bitbptato2025-01-191-1/+1
|
* config: expandTilde -> expandPathbptato2025-01-191-2/+2
|
* dom: CSSStyleDeclaration improvementsbptato2025-01-198-22/+72
| | | | Now getComputedStyle works with pseudo-elements too.
* Makefile: fix submodule targetbptato2025-01-191-1/+1
| | | | I didn't intend it to error out :(
* cascade: simplify RuleListMapbptato2025-01-181-42/+31
| | | | it can be a value type again
* dom, stylednode: move more fields, handle pseudo-element getComputedStylebptato2025-01-187-106/+133
|
* Add 'lib/monoucha0/' from commit '33efaee783c2adb20df019a8bc924411c4a97e7f'bptato2025-01-1850-0/+85771
|\ | | | | | | | | | | git-subtree-dir: lib/monoucha0 git-subtree-mainline: b56abad0883c0b4179f9c329a7169bb544fac4a5 git-subtree-split: 33efaee783c2adb20df019a8bc924411c4a97e7f
| * Version 0.9.1bptato2025-01-163-2/+6
| |
| * fromjs: add type information to JSArrayBufferView + some bindingsbptato2025-01-163-1/+21
| |
| * test: update resultsbptato2025-01-161-125/+472
| |
| * test: update optbptato2025-01-141-21/+7
| |
| * Version 0.9.0bptato2025-01-133-2/+24
| |
| * javascript: do not override jsfunc/jsctor error messagebptato2025-01-131-2/+2
| |
| * fromjs: do not accept nil for ref objectbptato2025-01-132-3/+5
| | | | | | | | | | | | | | This means that nullable WebIDL interfaces now must be wrapped in an Option when converted *from* JS. On the toJS side, nothing changes.