about summary refs log tree commit diff stats
path: root/test/js
Commit message (Collapse)AuthorAgeFilesLines
* dom: CSSStyleDeclaration improvementsbptato2025-01-193-1/+37
| | | | Now getComputedStyle works with pseudo-elements too.
* dom: more select interfacesbptato2025-01-101-0/+9
| | | | this should be all of them
* dom: standard tagNamebptato2025-01-071-0/+2
| | | | Fixes acid3 test 21
* dom: DOMTokenList fixes/improvementsbptato2025-01-051-1/+4
|
* dom: add form length, fix document.getElementsByName("")bptato2025-01-053-28/+23
|
* dom: button fixesbptato2025-01-051-0/+15
|
* pager: history fixesbptato2025-01-011-0/+3
| | | | | | | | | * add failed buffers to history too * make buffer.history and siteconf history actually do something * prevent history in dump mode after retry too * disable history in test configs ref. https://todo.sr.ht/~bptato/chawan/39
* script: improve defineConstsbptato2024-12-301-0/+2
| | | | | | Well, I guess this works for now, but something is still wrong. In Gecko, document.__proto__ === Document.__proto__, but in Chawan, it isn't.
* jsencoding: fix nil deref on empty encode inputbptato2024-12-261-0/+1
|
* Unify assert.js for testsbptato2024-12-151-29/+1
| | | | | judging from the symlink, I probably meant to do this but forgot to finish it
* url: fix file:/ serializationbptato2024-12-141-0/+1
| | | | file:/// is the standard serialization.
* md2html: another list bugfix, add a testbptato2024-12-041-0/+0
|
* dom: implement HTMLDocument, make Image C/Wbptato2024-11-222-4/+9
| | | | | | | | | | * add HTMLDocument as alias to Document * set Image as configurable/writable So looking closer, HTMLDocument *is* specified, just major browsers don't follow the spec. I doubt this incompatibility causes issues, anyway.
* dom: add document named property getter, update monouchabptato2024-11-221-7/+26
|
* dom: add HTMLHyperlinkElementUtils settersbptato2024-11-191-0/+12
|
* Update monoucha, fix some JS testsbptato2024-11-183-22/+27
|
* dom: add getElementsByName, fix adoptbptato2024-11-161-0/+2
|
* dom: support all HTMLHyperlinkElementUtils gettersbptato2024-11-0917-110/+156
|
* url: fix crash on invalid ipv6 syntaxbptato2024-11-041-0/+1
|
* dom: add localName, simplifybptato2024-11-021-0/+9
|
* url: add searchParams.hasbptato2024-10-281-0/+3
|
* twtstr: fix stripAndCollapsebptato2024-10-081-0/+10
|
* url: fix IDNA bugsbptato2024-10-061-0/+2
|
* url: fix searchParams.deletebptato2024-09-301-0/+2
|
* dom: add forms, elements getter + misc fixesbptato2024-09-172-11/+37
| | | | | | | | | | | | * add document.forms * add form.elements * remove redundant jshasprop functions * use mpairs for attribute iteration (mpairs use pointers, but pairs copies) * fix remove() crash * fix remove() collection invalidation for children (if parent is not in the collection) * update monoucha
* loader: fix crash on empty data URLsbptato2024-08-171-0/+1
|
* xhr: more progressbptato2024-08-154-44/+4
| | | | | | | | | | * add responseText, response * add net tests -> currently sync XHR only; should find a way to do async tests... * update monoucha -> simplified & updated some related code that no longer worked properly
* xhr: progressbptato2024-08-131-0/+12
| | | | | | | | | | | | | * fix header case sensitivity issues -> probably still wrong as it discards the original casing. better than nothing, anyway * fix fulfill on generic promises * support standard open() async parameter weirdness * refactor loader response body reading (so bodyRead is no longer mandatory) * actually read response body still missing: response body getters
* env, dom: add History stub, basic LocalStoragebptato2024-07-301-0/+8
| | | | | | | * History: doesn't really do anything, just adding it to fix some pages * LocalStorage: kind of works, but does lookups with linear search, and the quota limitation is on the number of entries not their size. plus it doesn't actually store anything on disk yet (like cookies).
* url: fix a small incompatibilitybptato2024-07-251-0/+14
| | | | + some more cleanup
* url: misc fixes & improvementsbptato2024-07-242-1/+54
| | | | | | * fix various parsing bugs * rewrite state machine * other small optimizations
* html: event cleanup, XHR progressbptato2024-07-182-0/+30
|
* layout: inline fixes & improvementsbptato2024-06-271-0/+1
| | | | | | | | | | | | | | | * fix text-align breaking down in the presence of floats * improve (and simplify) background color area painting This greatly simplifies inline layout by removing the additional text-align atom movement code and replacing it with a full re-layout when needed. That re-layout only occurs in (rare) cases where the text is likely to be relatively short anyway, so it's probably a win in any remotely realistic layout. This has also made it possible to at last merge the last three passes (horizontal/vertical alignment and background painting) and drop that weird synchronized tree + vector traversal.
* test: print running test names to the same linebptato2024-06-231-1/+1
|
* client: make quit() actually quit, misc fixesbptato2024-05-044-35/+32
| | | | | | | * unwind the QJS stack with an uncatchable exception when quit is called * clean up JS references in JSRuntime free even when the Nim counterparts are still alive * simplify some tests
* js: fix various leaks etc.bptato2024-05-032-50/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | Previously we didn't actually free the main JS runtime, probably because you can't do this without first waiting for JS to unwind the stack. (This has the unfortunate effect that code now *can* run after quit(). TODO: find a fix for this.) This isn't a huge problem per se, we only have one of these and the OS can clean it up. However, it also disabled the JS_FreeRuntime leak check, which resulted in sieve-like behavior (manual refcounting is a pain). So now we choose the other tradeoff: quit no longer runs exitnow, but it waits for the event loop to run to the end and only then exits the browser. Then, before exit we free the JS context & runtime, and also all JS values allocated by config. Fixes: * fix `ad' flag not being set for just one siteconf/omnirule * fix various leaks (since leak check is enabled now) * use ptr UncheckedArray[JSValue] for QJS bindings that take an array * allow JSAtom in jsgetprop etc., also disallow int types other than uint32 * do not set a destructor for globals
* layout: fix float size in table cells; remove redundant positioningbptato2024-04-271-1/+1
|
* test: add js & layout testsbptato2024-04-2126-0/+555
(Sadly some layout tests still fail.)