Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | htmltokenizer: only yield once | bptato | 2023-07-09 | 1 | -12/+22 | |
| | | | | | Seems to reverse the +200M peakmem during compile introduced by the previous commit. | |||||
* | htmlparser: decouple from DOM | bptato | 2023-07-09 | 5 | -542/+1110 | |
| | | | | | Instead of directly appending nodes to the DOM, use a DOMBuilder interface. | |||||
* | dom: work around bad codegen | bptato | 2023-07-04 | 1 | -4/+6 | |
| | ||||||
* | dom: add NodeType consts to Node | bptato | 2023-07-04 | 2 | -1/+1 | |
| | ||||||
* | Event: add some properties, js: add defineConsts | bptato | 2023-07-04 | 1 | -2/+17 | |
| | ||||||
* | htmltokenizer: fix regression | bptato | 2023-07-03 | 1 | -0/+3 | |
| | | | | we need that break statement there, it seems | |||||
* | tokenizer: fix unreachable code warning | bptato | 2023-07-03 | 1 | -1/+0 | |
| | ||||||
* | Fix compilation failure | bptato | 2023-07-03 | 1 | -1/+2 | |
| | ||||||
* | Add XHR/Event stubs | bptato | 2023-07-02 | 3 | -5/+22 | |
| | ||||||
* | return Result[T, JSError] from fromJS | bptato | 2023-07-02 | 1 | -1/+0 | |
| | ||||||
* | Cache Node.children, Node.childNodes | bptato | 2023-07-01 | 1 | -4/+23 | |
| | | | | To avoid unexpected behavior (e.g. node.children != node.children) | |||||
* | Factor out headers into separate module | bptato | 2023-07-01 | 1 | -0/+2 | |
| | ||||||
* | Use separate flag for adding getset instead of repr | bptato | 2023-07-01 | 1 | -2/+2 | |
| | | | | Still a hack, but maybe more reliable? | |||||
* | use =destroy instead of finalizers | bptato | 2023-07-01 | 2 | -0/+55 | |
| | | | | | This should help with moving to ORC in the future. (Also, finalizers do not work very well in the first place.) | |||||
* | dom: synchronously load scripts | bptato | 2023-06-29 | 1 | -17/+13 | |
| | | | | | fetch() does not work here because we can only resume parsing after the script has been executed | |||||
* | Add assign, replace, reload to location | bptato | 2023-06-29 | 1 | -1/+13 | |
| | | | | Just stubs: none of them actually work | |||||
* | Add window.location | bptato | 2023-06-29 | 2 | -6/+140 | |
| | | | | Note: setters do not work yet. | |||||
* | Remove .jsgctor | bptato | 2023-06-29 | 1 | -3/+6 | |
| | | | | | Not sure how it ever worked. This fixes Text() constructors etc. | |||||
* | cssparser: remove SyntaxError | bptato | 2023-06-25 | 1 | -4/+7 | |
| | | | | return DOMException instead | |||||
* | css/values: use Result instead of exceptions | bptato | 2023-06-25 | 1 | -4/+2 | |
| | ||||||
* | Working Nim-QuickJS GC integration | bptato | 2023-06-24 | 1 | -1/+1 | |
| | | | | I believe this works correctly. Hopefully I'm not wrong. | |||||
* | radixtree: optimize searching | bptato | 2023-06-23 | 1 | -19/+15 | |
| | ||||||
* | Do not allow text() twice, etc... | bptato | 2023-06-20 | 1 | -2/+4 | |
| | ||||||
* | Reject fetch promise on network error | bptato | 2023-06-19 | 2 | -5/+4 | |
| | | | | Instead of setting the non-standard res variable. | |||||
* | Get rid of the .jserr pragma | bptato | 2023-06-19 | 2 | -152/+174 | |
| | ||||||
* | Rework JS exception system | bptato | 2023-06-19 | 1 | -0/+2 | |
| | | | | | Now we use Result for passing exceptions to JS. As a result, we can finally get rid of the .jserr pragma. | |||||
* | input size as presentational hint | bptato | 2023-06-18 | 1 | -0/+4 | |
| | ||||||
* | Cleanups & bug fixes involving promises | bptato | 2023-06-15 | 2 | -12/+19 | |
| | | | | | Now a promise returning nil doesn't just leave the rest of the then chain hanging. Hooray. | |||||
* | Fix various layout bugs, prepare for image support | bptato | 2023-06-12 | 1 | -5/+29 | |
| | ||||||
* | Remove JSObject again, add File API constructor | bptato | 2023-06-08 | 1 | -7/+7 | |
| | ||||||
* | Add support for width, height media query | bptato | 2023-06-07 | 2 | -1/+5 | |
| | ||||||
* | Refactor bitmap, add png color modes | bptato | 2023-06-06 | 1 | -0/+2 | |
| | | | | | Now PNG encoding/decoding, painting, etc. are done in separate files. Plus we support all color modes except indexed color. | |||||
* | Add support for canvas and multipart | bptato | 2023-06-05 | 2 | -79/+495 | |
| | | | | | | | | | | | | | | | Quite incomplete canvas implementation. Crucially, the layout engine can't do much with whatever is drawn because it doesn't support images yet. I've re-introduced multipart as well, with the FormData API. For the append function I've also introduced a hack to the JS binding generator that allows requesting the JSContext pointer in nim procs. Really I should just fix the union generator thing and add support for overloading. In conclusion, for now the only thing canvas can be used for is exporting it as PNG and uploading it somewhere. Also, we now have PNG encoding and decoding too. (Now if only we had sixels as well...) | |||||
* | Add some console functions to DOM | bptato | 2023-06-01 | 1 | -0/+17 | |
| | | | | Mainly to avoid errors | |||||
* | Add module loading to client | bptato | 2023-06-01 | 1 | -1/+1 | |
| | | | | Files only, for now. | |||||
* | Add setTimeout, setInterval to window | bptato | 2023-06-01 | 2 | -16/+56 | |
| | ||||||
* | Rewrite new Request binding | bptato | 2023-05-21 | 1 | -1/+4 | |
| | | | | | Still far from perfect, but now at least it has a bit more to do with what the standard mandates. | |||||
* | Add display/output encoding | bptato | 2023-05-19 | 1 | -33/+32 | |
| | | | | Some encodings are still missing | |||||
* | Refactor config, add charset opts | bptato | 2023-05-16 | 1 | -40/+60 | |
| | | | | Only document-charset supported for now. | |||||
* | remove stray eprint, remove unused make* | bptato | 2023-05-13 | 1 | -6/+0 | |
| | ||||||
* | Merge branch 'wip_fetch' | bptato | 2023-04-30 | 1 | -0/+6 | |
|\ | ||||||
| * | WIP fetch | bptato | 2023-04-30 | 1 | -0/+6 | |
| | | ||||||
* | | dom: fix one-off error in insertNode | bptato | 2023-04-30 | 1 | -2/+1 | |
|/ | | | | This caused the last child node to not be copied. | |||||
* | nim 1.6.12 support | bptato | 2023-04-16 | 1 | -1/+1 | |
| | ||||||
* | htmlparser: add missing reprocess token for tr | bptato | 2023-04-08 | 1 | -0/+1 | |
| | | | | This makes tr work correctly without tbody. | |||||
* | dom: store index among siblings for nodes | bptato | 2023-03-10 | 2 | -58/+68 | |
| | ||||||
* | dom: set document url in constructor | bptato | 2023-03-08 | 1 | -1/+2 | |
| | ||||||
* | dom: set childonly flags where needed | bptato | 2023-02-14 | 1 | -6/+7 | |
| | ||||||
* | html/dom: add Node.remove() | bptato | 2023-02-13 | 1 | -1/+4 | |
| | ||||||
* | css/cascade: remove scoped sheets | bptato | 2023-01-07 | 2 | -19/+26 | |
| | | | | ...in favor of handling all style elements like other browsers |