about summary refs log tree commit diff stats
path: root/src/display/client.nim
Commit message (Collapse)AuthorAgeFilesLines
* Clean up stream error handlingbptato2023-06-071-0/+2
| | | | | | * sread now raises EOFError if readData returns too few bytes * buffer handleError ignores unregistered fds like client * client handleError ignores unregistered fds like buffer
* Fix bug in client's unregistered fd handlingbptato2023-06-061-2/+6
| | | | + run JS jobs after every poll in headless mode
* Add support for canvas and multipartbptato2023-06-051-0/+6
| | | | | | | | | | | | | | | 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 module loading to clientbptato2023-06-011-0/+24
| | | | Files only, for now.
* Add setTimeout, setInterval to windowbptato2023-06-011-83/+27
|
* Run JS jobs in headless mode toobptato2023-05-221-0/+2
| | | | As previous commit, just for headless mode
* Run JS jobs on timeout handlersbptato2023-05-211-0/+2
|
* Refactor config, add charset optsbptato2023-05-161-11/+14
| | | | Only document-charset supported for now.
* Fix some fetch crashesbptato2023-05-111-1/+4
| | | | Now it should work for very basic use-cases
* Improve debugging, reduce crashesbptato2023-05-091-1/+23
| | | | Loader no longer dies when not everything is read from the stream.
* WIP fetchbptato2023-04-301-0/+4
|
* setTimeout, setInterval: hack to fix 0 timeoutbptato2023-02-091-2/+2
| | | | Timers with a timeout < 1 seem to block indefinitely. No clue why.
* Slightly improve request api (less crashes)bptato2023-02-051-1/+1
|
* Slightly refactor commandModebptato2023-01-061-4/+12
|
* display/client: quit when pager.buffer is nullbptato2023-01-051-0/+3
|
* Add ask()bptato2023-01-051-5/+14
|
* client, pager, dom, ...: better error handlingbptato2023-01-041-73/+85
| | | | Now the browser shouldn't completely die when a buffer crashes.
* Fix connection load info not being shownbptato2023-01-021-2/+5
|
* Add promise support to JSbptato2022-12-311-1/+9
|
* dom: fix collection cachingbptato2022-12-271-0/+6
| | | | Use ids instead of pure pointers, so we can utilize the JS finalizer.
* pager: improve title display, fix alert displaybptato2022-12-251-0/+1
|
* pager: proxy values in container; js: bugfixesbptato2022-12-201-8/+7
| | | | Also, a little bonus: w3m keybindings
* Add JS support to documentsbptato2022-12-181-25/+23
|
* Allow cycling through hover-texts with ubptato2022-12-161-9/+8
|
* Fix console display bugs, add container.locationbptato2022-12-151-2/+5
|
* Fix stream error handling confusion, title displaybptato2022-12-131-1/+1
| | | | Also probably other fixes.
* Add more cookie optionsbptato2022-12-131-2/+2
|
* Add all sorts of config options and cookiesbptato2022-12-131-2/+6
|
* Fix -dbptato2022-12-101-0/+27
|
* Catch EOFError in console.readCharbptato2022-12-071-1/+4
|
* Do not set client.console.tty twicebptato2022-12-061-3/+2
|
* Handle events after input toobptato2022-12-051-0/+3
|
* Add event loop to headless modebptato2022-12-031-0/+24
|
* Fix some screen update issues, remove redraw timerbptato2022-12-011-5/+1
| | | | | For now it's unnecessary; may be re-added later to support some dynamic document features.
* Add siteconf, fix lineedit bugsbptato2022-11-291-2/+2
| | | | | | This enables rule-based dynamic url rewriting. Also, lineedit is a bit less broken now (though it's still less than ideal.)
* Add line editing history, other lineedit fixesbptato2022-11-291-0/+4
| | | | It's still kind of broken...
* Add textareabptato2022-11-281-1/+1
| | | | Editing is implemented using an external editor (like vi).
* Fix some regressions, add loading progress barbptato2022-11-271-17/+20
|
* Also, implement proper asyncbptato2022-11-271-3/+3
| | | | Well, not really proper, but better than nothing? Maybe not.
* Improve status messages, fix regressions, etcbptato2022-11-251-43/+63
|
* Fix user style regression, add minimum-contrastbptato2022-11-251-12/+14
|
* Buffer improvementsbptato2022-11-251-22/+25
|
* Avoid forking child processes from the main processbptato2022-11-241-28/+62
| | | | Caveat: this breaks piped streams.
* Termcap support (?)bptato2022-11-211-1/+5
|
* Color & term improvementsbptato2022-11-211-29/+33
|
* Terminal refactoringsbptato2022-11-201-23/+22
|
* Incremental loading of text files, etc.bptato2022-11-201-147/+114
|
* Fix weird screen shift behaviorbptato2022-11-191-2/+3
| | | | (or at least I hope this fixed it)
* Re-implement highlightingbptato2022-11-191-1/+2
|
* Rewrite buffer/pager for multi-processingbptato2022-11-191-65/+88
|