about summary refs log tree commit diff stats
path: root/test/js
Commit message (Collapse)AuthorAgeFilesLines
* 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.)