Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | env, dom: add crypto.getRandomValues, HTMLInputElement.files | bptato | 2025-01-16 | 1 | -4/+9 |
| | |||||
* | dom: optimize isFirstVisualNode | bptato | 2025-01-15 | 1 | -8/+7 |
| | |||||
* | pager: improve content type handling | bptato | 2025-01-15 | 1 | -1/+1 |
| | | | | also remove some unused fields of Container | ||||
* | css: refactor selector parsing & cascading, some work on variables | bptato | 2025-01-14 | 1 | -4/+6 |
| | | | | | | | | | 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... | ||||
* | dom: mark insertBefore "before" as Option | bptato | 2025-01-13 | 1 | -10/+12 |
| | |||||
* | 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 |
| | |||||
* | config: switch to camel case | bptato | 2025-01-13 | 1 | -11/+1 |
| | | | | | | We already need a camel -> kebab converter anyway. Unfortunately this also changes JS binding names, so it's a breaking change. Oh well. | ||||
* | cssvalues: reduce CSSValues size | bptato | 2025-01-12 | 1 | -7/+3 |
| | | | | | | | | | | | | | | | | * switch from float64 -> float32; other browsers use 32-bit floats too * specify integer size as 32-bit * use NetworkBitmap for background-image value (currently just an invalid dummy value) * remove "none" property & value types CSSValue's payload is always one word (plus another for the type tag). CSSValues keeps its size, but no longer has to heap-alloc + refcount word-sized CSSValues. (On 32-bit systems, CSSValues might actually be larger than before, but I expect it's still a net benefit with the removal of refcounting and the switch to 32-bit floats.) | ||||
* | dom: reflect title | bptato | 2025-01-10 | 1 | -1/+2 |
| | |||||
* | dom: add createDocument | bptato | 2025-01-10 | 1 | -16/+48 |
| | |||||
* | dom: more select interfaces | bptato | 2025-01-10 | 1 | -5/+64 |
| | | | | this should be all of them | ||||
* | buffer, ua.css, dom: more select adjustments | bptato | 2025-01-10 | 1 | -15/+40 |
| | | | | | | | ok, now it works like in w3m. (mostly, barring CSS limitations...) we'll see how this works out Also adds/fixes some select and option DOM APIs. | ||||
* | buffer: make iframes clickable | bptato | 2025-01-09 | 1 | -1/+3 |
| | | | | better than nothing | ||||
* | dom: add data setter for CharacterData | bptato | 2025-01-09 | 1 | -1/+1 |
| | |||||
* | Add performance module | bptato | 2025-01-09 | 1 | -0/+2 |
| | | | | | Just to replace what QJS-NG has, because I don't want to expose a nanosecond precision clock. | ||||
* | dom: fix content type detection for user-provided codecs | bptato | 2025-01-08 | 1 | -1/+1 |
| | | | | | contentType is the network type; t may be different depending on the extension. | ||||
* | dom: implement HTMLMetaElement interface | bptato | 2025-01-08 | 1 | -3/+13 |
| | |||||
* | dom: standard tagName | bptato | 2025-01-07 | 1 | -2/+6 |
| | | | | Fixes acid3 test 21 | ||||
* | dom: add document.referrer | bptato | 2025-01-06 | 1 | -3/+4 |
| | | | | Only works if referer-from is enabled. | ||||
* | env: add media query matching | bptato | 2025-01-06 | 1 | -15/+7 |
| | | | | | | | In lite mode, it uses default window attributes. Incidentally, this also untangles media query matching from cascade, saving us a forward declaration hack (yay!) | ||||
* | dom: clean up namespace handling, add createElementNS | bptato | 2025-01-05 | 1 | -64/+91 |
| | |||||
* | dom: DOMTokenList fixes/improvements | bptato | 2025-01-05 | 1 | -7/+14 |
| | |||||
* | dom: add form length, fix document.getElementsByName("") | bptato | 2025-01-05 | 1 | -0/+10 |
| | |||||
* | dom: clean up, add some strict defs | bptato | 2025-01-05 | 1 | -170/+171 |
| | |||||
* | dom: button fixes | bptato | 2025-01-05 | 1 | -3/+5 |
| | |||||
* | dom: add some table interfaces | bptato | 2025-01-04 | 1 | -25/+259 |
| | |||||
* | dom: radiogroup fixes | bptato | 2025-01-04 | 1 | -17/+20 |
| | |||||
* | dom: implement cssFloat | bptato | 2025-01-04 | 1 | -0/+4 |
| | |||||
* | dom: JS input/form fixes | bptato | 2025-01-03 | 1 | -1/+10 |
| | | | | Fixes acid3 test 53 | ||||
* | env, buffer: restyle on getComputedStyle | bptato | 2025-01-03 | 1 | -0/+4 |
| | | | | | | style/layout invalidation is a mess :( Fixes acid3 test00 | ||||
* | dom: make stringifiers explicit, optimize tokenList toString | bptato | 2025-01-03 | 1 | -3/+3 |
| | |||||
* | dom: add option value setter, input checked setter | bptato | 2025-01-03 | 1 | -22/+26 |
| | |||||
* | dom: fully implement ParentNode mixin | bptato | 2025-01-03 | 1 | -2/+108 |
| | | | | | | | | * standard firstElementChild, lastElementChild * add childElementCount, prepend, append, replaceChildren supporting JSValue "this" values in Monoucha would be useful for these (so you could specify where it's defined in the jsfunc string) | ||||
* | dom: add CSSStyleDeclaration setProperty, removeProperty; stub out scrollTo | bptato | 2025-01-02 | 1 | -17/+49 |
| | |||||
* | layout, dom: input rendering fixes | bptato | 2025-01-01 | 1 | -2/+2 |
| | | | | | * do not display submit/reset text with empty value * fix erroneous blank placement with white-space: pre on new line | ||||
* | dom: add cookie setter stub, HTMLSelectElement stuff | bptato | 2025-01-01 | 1 | -19/+68 |
| | |||||
* | dom: small refactoring + optimization | bptato | 2024-12-31 | 1 | -22/+14 |
| | |||||
* | dom: expose currentScript | bptato | 2024-12-31 | 1 | -1/+1 |
| | |||||
* | buffer: make video, audio clickable | bptato | 2024-12-30 | 1 | -4/+4 |
| | | | | | more intuitive than shoehorning it into "view image" (also makes it easier to apply the content type) | ||||
* | dom, cssvalues: add getComputedStyle | bptato | 2024-12-30 | 1 | -2/+26 |
| | | | | Only available in "app" mode. | ||||
* | dom: add input type getter/setter | bptato | 2024-12-30 | 1 | -1/+1 |
| | |||||
* | script: improve defineConsts | bptato | 2024-12-30 | 1 | -1/+1 |
| | | | | | | Well, I guess this works for now, but something is still wrong. In Gecko, document.__proto__ === Document.__proto__, but in Chawan, it isn't. | ||||
* | env: do not copy attrs, fix screen on client | bptato | 2024-12-28 | 1 | -4/+4 |
| | | | | Now screen.width etc. works in the pager too. | ||||
* | dom: standard querySelector/All; type erase children | bptato | 2024-12-27 | 1 | -12/+50 |
| | |||||
* | dom: set elIndex to -1 for AttrDummyElement | bptato | 2024-12-27 | 1 | -0/+2 |
| | |||||
* | dom: expose getPropertyValue | bptato | 2024-12-27 | 1 | -1/+1 |
| | |||||
* | dom: add focus() | bptato | 2024-12-27 | 1 | -0/+6 |
| | | | | Respects autofocus. | ||||
* | Optimize some Option[string] out | bptato | 2024-12-26 | 1 | -8/+8 |
| | | | | toJS is generally more efficient | ||||
* | buffer: add "app" scripting mode | bptato | 2024-12-26 | 1 | -1/+1 |
| | | | | | | | | | | For APIs that cannot be implemented in a privacy-friendly manner. As a start, I've added accurate screen size queries; getComputedStyle, getBoundingClientRect, etc. should follow. (We have a harmless getComputedStyle already, but it's broken.) Probably, things like JS-based scroll belong in here too, but I'm not sure yet. (Perhaps autofocus should be reused instead?) |