Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | cascade: support nested variables | bptato | 2025-01-20 | 2 | -78/+77 |
| | | | | ...and refactor applyValue in the process. | ||||
* | cascade: collapse StyledNode tree into DOM | bptato | 2025-01-20 | 9 | -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 exist | bptato | 2025-01-20 | 1 | -1/+4 |
| | | | | ref. https://todo.sr.ht/~bptato/chawan/41 | ||||
* | container, config.toml: add | command | bptato | 2025-01-19 | 1 | -0/+6 |
| | | | | | | Particularly useful when debugging minified JS. vi always wraps; the centering behavior is from vim. | ||||
* | dom: simplify a bit | bptato | 2025-01-19 | 1 | -1/+1 |
| | |||||
* | config: expandTilde -> expandPath | bptato | 2025-01-19 | 1 | -2/+2 |
| | |||||
* | dom: CSSStyleDeclaration improvements | bptato | 2025-01-19 | 5 | -21/+35 |
| | | | | Now getComputedStyle works with pseudo-elements too. | ||||
* | cascade: simplify RuleListMap | bptato | 2025-01-18 | 1 | -42/+31 |
| | | | | it can be a value type again | ||||
* | dom, stylednode: move more fields, handle pseudo-element getComputedStyle | bptato | 2025-01-18 | 6 | -105/+132 |
| | |||||
* | Remove submodules | bptato | 2025-01-18 | 2 | -34/+0 |
| | | | | | I got tired of submodules. This commit doesn't build; subtrees incoming... | ||||
* | pager: keep reading if term has chars buffered | bptato | 2025-01-18 | 2 | -0/+7 |
| | |||||
* | dom: optimize | bptato | 2025-01-18 | 2 | -10/+16 |
| | | | | We'll see if the borrow checker actually works :) | ||||
* | dom: compare rel case insensitively | bptato | 2025-01-17 | 2 | -7/+12 |
| | |||||
* | dom: fix input checkedness invalidation | bptato | 2025-01-17 | 1 | -0/+4 |
| | |||||
* | sheet: dedupe tag :is hashes | bptato | 2025-01-17 | 1 | -1/+2 |
| | |||||
* | render: fix formatting being lost outside boxes with bgcolor | bptato | 2025-01-17 | 1 | -21/+20 |
| | | | | | | An ancient bug, but the fix seems to be quite simple: stop confusing the last X position before the existing string on the line with the last X position that the new string occupies. | ||||
* | render: simplify some pointless delete/insert calls | bptato | 2025-01-17 | 1 | -8/+4 |
| | |||||
* | pager: merge ask with askChar, remove urandom | bptato | 2025-01-17 | 2 | -45/+36 |
| | |||||
* | term: rework input buffer | bptato | 2025-01-17 | 4 | -15/+25 |
| | | | | heh | ||||
* | stylednode: remove obsolete template | bptato | 2025-01-17 | 1 | -4/+1 |
| | |||||
* | container: fix crash on clicking label for empty select | bptato | 2025-01-16 | 1 | -1/+1 |
| | |||||
* | dom: add Option constructor | bptato | 2025-01-16 | 1 | -0/+13 |
| | |||||
* | dom: set target on dispatch | bptato | 2025-01-16 | 1 | -0/+1 |
| | |||||
* | render: overprint existing text when painting backgrounds | bptato | 2025-01-16 | 1 | -9/+29 |
| | | | | | | | | Even if we don't do some z-ordering correctly, it's no excuse to paint boxes incorrectly. It's also extremely annoying when I try to use a menu and text bleeds into the drop-down window. | ||||
* | term: fix non-UTF-8 visual output | bptato | 2025-01-16 | 1 | -8/+7 |
| | |||||
* | css: reduce StyledNode use | bptato | 2025-01-16 | 5 | -69/+62 |
| | | | | | Eventually the tree should be collapsed into the DOM, and StyledNode should be created on the stack. | ||||
* | cssvalues: serialize quotes, add font-size, opacity | bptato | 2025-01-16 | 3 | -34/+49 |
| | | | | | | | | | | | | font-size isn't very useful, but some scripts assume it exists. opacity: 0 for now is special cased: it inhibits rendering of further boxes. This isn't quite right, as it should just behave as a pseudo visibility: hidden... nonetheless it's quite effective at hiding garbage. (Also, remove incorrect comment - it can be nil if the branch has no variables.) | ||||
* | env, dom: add crypto.getRandomValues, HTMLInputElement.files | bptato | 2025-01-16 | 6 | -14/+35 |
| | |||||
* | cascade: basic CSS variable support | bptato | 2025-01-16 | 3 | -163/+286 |
| | | | | | | | | | | | and once again, there was light... Well, it barely works, but it's enough to get colors back on most sites. Nested variables aren't supported for now, and shorthand expansion only "works" for `background' (it's a hack). Props to the W3C for introducing the C preprocessor to CSS - I was starting to confuse it with JSSS after calc(). | ||||
* | sheet, selectorparser: fix attr hashing, hash multiple tags in :is | bptato | 2025-01-16 | 2 | -17/+18 |
| | |||||
* | dom: optimize isFirstVisualNode | bptato | 2025-01-15 | 1 | -8/+7 |
| | |||||
* | cssparser: enumize CSSFunction name | bptato | 2025-01-15 | 3 | -15/+30 |
| | |||||
* | pager: improve content type handling | bptato | 2025-01-15 | 5 | -55/+50 |
| | | | | also remove some unused fields of Container | ||||
* | layout: truncate inline-block margins as well | bptato | 2025-01-15 | 1 | -0/+4 |
| | |||||
* | widthconv: fix hiragana -> half-width kana conversion | bptato | 2025-01-15 | 1 | -0/+1 |
| | | | | Unicode has no half-width hiragana :/ | ||||
* | buffer: add back node nil checks | bptato | 2025-01-15 | 1 | -2/+2 |
| | | | | | Actually, I'm not sure if this can be nil, especially in anonymous table boxes... | ||||
* | cascade, stylednode: remove parent field from StyledNode | bptato | 2025-01-15 | 3 | -143/+140 |
| | | | | | | | | Now StyledNode has an "element" reference, which refers to the element it was derived from. This reduces the object's size, removes the need for casting around the "node" field, and also gets rid of a pointless cycle. | ||||
* | cascade: fix hasValues filter | bptato | 2025-01-14 | 1 | -6/+5 |
| | |||||
* | css: refactor selector parsing & cascading, some work on variables | bptato | 2025-01-14 | 6 | -202/+258 |
| | | | | | | | | | Untangled some nested arrays to reduce the number of intermediary seqs in cascade, and collapsed the two rule def sorts into just one (per pseudo element). This should make cascading somewhat faster. Also, we now parse variables, but they aren't resolved yet. Probably a seq won't cut it for var lookup... | ||||
* | More strict defs | bptato | 2025-01-14 | 1 | -27/+33 |
| | |||||
* | opt: remove value.ok, value.err overloads, use lent | bptato | 2025-01-14 | 2 | -18/+6 |
| | | | | | | largely unused lent idea from nim-results | ||||
* | Update monoucha | bptato | 2025-01-13 | 1 | -1/+1 |
| | |||||
* | dom: mark insertBefore "before" as Option | bptato | 2025-01-13 | 2 | -12/+14 |
| | |||||
* | dom: fix leak, HTMLOptionsCollection length getter | bptato | 2025-01-13 | 1 | -0/+4 |
| | | | | Fixes acid3 test 57 | ||||
* | dom: HTMLTemplateElement content getter | bptato | 2025-01-13 | 1 | -1/+1 |
| | |||||
* | container: use linked list instead of deque | bptato | 2025-01-13 | 2 | -6/+19 |
| | |||||
* | cookie: improve Expires parsing | bptato | 2025-01-13 | 1 | -52/+32 |
| | |||||
* | config: switch to camel case | bptato | 2025-01-13 | 10 | -172/+158 |
| | | | | | | We already need a camel -> kebab converter anyway. Unfortunately this also changes JS binding names, so it's a breaking change. Oh well. | ||||
* | loader: remove obsolete todo | bptato | 2025-01-12 | 1 | -1/+0 |
| | |||||
* | cssvalues: set text-decoration to bit, vertical-align to word | bptato | 2025-01-12 | 1 | -27/+25 |
| | | | | they fit into 8 and 64 bits respectively |