about summary refs log tree commit diff stats
path: root/src/ips
Commit message (Collapse)AuthorAgeFilesLines
* Clean up stream error handlingbptato2023-06-071-2/+5
| | | | | | * sread now raises EOFError if readData returns too few bytes * buffer handleError ignores unregistered fds like client * client handleError ignores unregistered fds like buffer
* Add support for canvas and multipartbptato2023-06-051-33/+56
| | | | | | | | | | | | | | | 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 setTimeout, setInterval to windowbptato2023-06-011-0/+2
|
* Rewrite new Request bindingbptato2023-05-211-1/+3
| | | | | Still far from perfect, but now at least it has a bit more to do with what the standard mandates.
* Refactor config, add charset optsbptato2023-05-163-6/+8
| | | | Only document-charset supported for now.
* Async resource loading, exception handling fixesbptato2023-05-141-5/+19
|
* WIP fetchbptato2023-04-301-8/+10
|
* Slightly improve request api (less crashes)bptato2023-02-051-1/+3
|
* Make width table at compile-timebptato2023-01-271-1/+1
|
* socketstream: remove todobptato2023-01-051-1/+0
|
* client, pager, dom, ...: better error handlingbptato2023-01-041-5/+21
| | | | Now the browser shouldn't completely die when a buffer crashes.
* NOW it should workbptato2022-12-311-4/+9
|
* Fix C macro insanitybptato2022-12-311-1/+2
| | | | | No, you can't just use CMSG_SPACE inside the alloc call, it has to be stored in a variable first.
* posixstream/socketstream: fix cross-platform compilationbptato2022-12-311-12/+9
|
* Add promise support to JSbptato2022-12-311-1/+1
|
* ips/editor: don't write file for empty input, check for conflicting filesbptato2022-12-251-7/+12
|
* ips/editor: make default line 1bptato2022-12-251-1/+1
|
* Add JS support to documentsbptato2022-12-181-1/+0
|
* Make load() slightly less dumbbptato2022-12-151-2/+2
| | | | | This gets rid of the inefficient timeout thing. Still, the ideal solution would be to move the timeout into the container; TODO.
* Add referer support, re-render on windowChangebptato2022-12-132-19/+35
|
* Fix stream error handling confusion, title displaybptato2022-12-133-13/+24
| | | | Also probably other fixes.
* Add all sorts of config options and cookiesbptato2022-12-132-10/+24
|
* Add urlfilterbptato2022-12-121-5/+9
|
* Add border-collapse, border-spacing; fix fd sending hackbptato2022-12-111-3/+4
| | | | | | Note that they don't actually work correctly because of rounding errors. The fd sending hack now emits C directly. Let's hope this actually works.
* Fixes & QOL improvementsbptato2022-12-111-2/+11
| | | | | | | | * fix infinite loop after closing buffer * fix setx not triggering hover updates * fix D not going back to PREV but to parent * add M-d, M-,, M-., M-/ for old D behavior, cycle through siblings, back to parent
* Fix blocking socketstream recv/send, clean up ips/serialize & types/colorbptato2022-12-102-152/+235
| | | | Write always blocks for now, as it's too big of a footgun not to
* Add support for the encoding standard, fix parseLegacyColorbptato2022-12-101-1/+9
| | | | Also, fix a bug in the
* Fix stupid cmsg_len hackbptato2022-12-061-3/+3
| | | | | It's still stupid, but now it also does what it should've in the first place...
* Fix hack of previous commitbptato2022-12-051-1/+2
|
* sighbptato2022-12-051-1/+2
|
* Clean up ips/serialize genericsbptato2022-11-301-86/+53
|
* Remove useless sread/swrite procsbptato2022-11-301-51/+16
|
* Add textareabptato2022-11-285-19/+83
| | | | Editing is implemented using an external editor (like vi).
* Rework broken non-blocking iobptato2022-11-271-10/+6
| | | | | Piped input works correctly again! (Also fix hash's setter not working with url's without a fragment)
* Fix some regressions, add loading progress barbptato2022-11-271-1/+8
|
* Also, implement proper asyncbptato2022-11-271-1/+20
| | | | Well, not really proper, but better than nothing? Maybe not.
* Improve status messages, fix regressions, etcbptato2022-11-252-1/+2
|
* Fix user style regression, add minimum-contrastbptato2022-11-251-0/+7
|
* Buffer improvementsbptato2022-11-252-4/+122
|
* Avoid forking child processes from the main processbptato2022-11-244-12/+193
| | | | Caveat: this breaks piped streams.
* Move ips stuff to src/ips/bptato2022-11-223-0/+287