about summary refs log tree commit diff stats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* Add w3m-cgi-compat optionbptato2023-10-018-32/+64
|
* url: fix file slash state mistakebptato2023-10-011-2/+2
| | | | | wrong indentation, so file:/abcd was getting stuck in file slash state and returning an empty pathname
* Fix cursor x not being updated on backwards searchbptato2023-10-011-3/+11
| | | | | `refresh' does not correlate with the need of moving the cursor X position, `save' is a better choice.
* container: fix oob in area highlightingbptato2023-10-011-0/+2
| | | | Avoid coloring parts of areas outside the screen.
* container: center column in setCursorXYCenterbptato2023-10-011-0/+3
| | | | Makes searching on long lines work properly.
* more vi/m compatbptato2023-10-011-16/+26
|
* term: un-export canvasbptato2023-10-011-1/+1
|
* Improve vi/m compat in scrollingbptato2023-10-011-17/+68
|
* css: change type of rvalue to char (from Rune)bptato2023-10-014-52/+62
| | | | | | | | We did were not using it as a unicode value anywhere, it was just making our life harder. If we ever need unicode delimiter tokens, we can re-introduce them as a different token type.
* selectorparser: fix missing case insensitivitybptato2023-10-011-10/+16
|
* Use twtstr.join everywherebptato2023-10-014-5/+8
|
* Get rid of unicode.toLowerbptato2023-10-015-10/+11
| | | | | It was used by mistake in a hundred percent of the cases we were using it.
* Update chamebptato2023-09-301-1/+1
|
* buffer: fix cursor unnecessarily jumping to y=0bptato2023-09-302-7/+10
| | | | | then() is called even if a nil Promise is returned, so an Opt is needed here.
* lineedit: fix backspace bugbptato2023-09-301-1/+1
| | | | | We must decrease cursori by `len`, because exactly `len` bytes have been deleted from before the cursor.
* Improve implicit form submissionbptato2023-09-302-12/+26
| | | | | | * Implement the "default button" part of the standard. * If the submitter is the form, formmethod may be called on it. Check if this is the case in the function, and if yes, return the form's method.
* Add urimethodmap supportbptato2023-09-3010-86/+196
| | | | yay
* buffer: improve submitFormbptato2023-09-302-10/+46
| | | | | * add handlers for javascript, mailto * HTTP-like behavior for unknown protocols
* loader: add local-cgibptato2023-09-309-23/+223
| | | | | | | | | | | Add w3m-style local CGI support. It is not quite as powerful as w3m's local CGI, because it lacks an equivalent to W3m-control. Not sure if it's worth adding; we certainly shouldn't allow passing JS in headers, but a custom language for headers does not sound like a great idea either... eh, idk. also, TODO add multipart
* posixstream: fix buffer overflowbptato2023-09-281-1/+2
|
* Response.text: assume utf-8bptato2023-09-271-5/+5
|
* Response.text: encode/decode properlybptato2023-09-272-7/+24
| | | | also, use blob() for images
* buffer: simplify contentType handlingbptato2023-09-277-47/+44
| | | | | | * remove contentType member of Buffer object * add ishtml to reduce string comparisons * consistent spelling: contenttype -> contentType
* interface clone: remove unused arg, documentbptato2023-09-272-5/+10
|
* js: improve optional argument handlingbptato2023-09-261-1/+4
| | | | | | | If a fallback argument has been specified, treat undefined as if no argument had been given. This removes the need for the ?? 1 checks in the config.
* Add precnum support to more functionsbptato2023-09-263-40/+59
|
* pager: show character sequence inputs on status linebptato2023-09-262-31/+44
| | | | pretty useful I think
* Add M-p as "load page on clipboard"bptato2023-09-252-3/+21
|
* client: write errors to browser console in evalActionbptato2023-09-251-3/+10
|
* toml: fix bug in multiline string parsingbptato2023-09-251-0/+5
|
* update chamebptato2023-09-241-1/+1
|
* remove sequtils dependencybptato2023-09-241-3/+5
|
* update chakasubptato2023-09-241-1/+1
|
* client: clean up Client objectbptato2023-09-241-14/+5
| | | | | * remove unused attributes * make line a function
* client, timeout: simplifybptato2023-09-243-18/+18
| | | | | We don't use the generic feature of selectors, so just unify the client & buffer timeout types.
* regex: copy after compilingbptato2023-09-243-64/+19
| | | | | | | | | | | | Instead of the broken attempt at making regexes zero-copy (it copied anyway), copy once and forget about it. (There have been way too many problems with the destructor approach, including the latest one where the GC would happily zero out our regexes if they were in a sequence. Maybe we can make this work once we switched to ORC. For now, it's not worth the trouble.)
* Add about:licensebptato2023-09-231-0/+6
|
* container: un-extern, un-ref highlightsbptato2023-09-231-9/+6
| | | | No need for either of that now.
* fix devnull dup in place of stdinbptato2023-09-231-4/+7
| | | | The previous solution was ok, but it could leak an fd...
* buffer: make readFromFd work with pipesbptato2023-09-232-5/+25
|
* buffer: make clone fork()bptato2023-09-237-47/+375
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Makes e.g. on-page anchor navigation near-instantaneous. Well, as instantaneous as a fork can be. In any case, it's a lot faster than loading the entire page anew. This involves duplicating open resources (file descriptors, etc.), which is not exactly trivial. For now we have a huge clone() procedure that does an ok-ish job at it, but there remains a lot of room for improvement. e.g. cloning is still broken in some cases: * As noted in the comments, TeeStream'ing the input stream for any buffer is a horrible idea, as readout in the cloned buffer now depends on the original buffer also reading from the stream. (So e.g. if you clone, then kill the old buffer without waiting for the new one to load, the new buffer gets stuck.) * Timeouts/intervals are broken in cloned buffers. The timeout module probably needs a redesign to fix this. * If you clone before connect2, the cloned buffer gets stuck. The previous solution was even worse (i.e. broken in more cases), so this is still an improvement. For example, this fixes some issues with mailcap handling (removes the "set the Content-Type of htmloutput buffers to text/html" hack), does not reload all resources, does not completely break if the buffer is cloned during loading, etc.
* fix size for some input typesbptato2023-09-221-1/+1
| | | | | | padToWidth should be called for all input types in InputWithSize. Also, they should be underlined by ua.css.
* Disable "toggle source" for the console bufferbptato2023-09-213-8/+17
|
* lineedit: add missing begin() calls in prevHist/nextHistbptato2023-09-201-0/+5
|
* lineedit: fix off by one error in killbptato2023-09-201-2/+2
|
* config: add missing \nbptato2023-09-201-1/+1
|
* Accept bare strings in -o, fix -o with missing newlinebptato2023-09-203-15/+81
| | | | | | | | * Bare strings are now allowed when specifying config options through -o. * Fix a bug where options specified with -o would be disregarded unless a newline was included. * (Also, add a TOML stringifier routine for debugging.)
* layout: fix table cell sizing with specified widthsbptato2023-09-202-19/+59
| | | | | | | | | | | | | | | | | | | Say we have a table <TABLE> <TR> <TD WIDTH=20>a</TD> </TR> <TR> <TD>aklsdfjaskdfjkl</TD> </TR> </TABLE> This should be 20 pixels wide, not as wide as the second row. Also, larger specified widths now always override previous widths specified on the column. (I think this was a regression, but the previous solution to this problem was an ugly hack.)
* px: convert to float first for percentage valuesbptato2023-09-201-1/+1
| | | | | | | | | px now converts to float64 before converting back to a layout unit when calculating percentage values. This should reduce overflow crashes somewhat. (The real solution would be to not crash on overflow, but that's a little more difficult problem to solve.)
* buffer: support <a name=... for anchor navigationbptato2023-09-202-3/+12
|