| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
yay
|
| |
|
|
|
|
| |
avoid e.g. # being interpreted as a fragment
|
| |
|
|
|
|
| |
lineedit no longer needs these
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The old lineedit system worked quite well in the original synchronous
model. However, because it needs access to the terminal, it has been
subtly broken ever since buffer updates are allowed while the user
is in line edit mode.
This is best observed in incremental search, where searching for a
bgcolor'ed text would result in the bgcolor bleeding into the line
editor box.
The new version is much simpler, and therefore less optimized. But
it can still take advantage of output optimization in the terminal
controller, and it is free of races (because we simply query the
current state from the pager and feed it into the main output grid).
|
| |
|
|
|
|
|
| |
Remove side effects from assert statements.
The flag is not used currently, but let's not depend on that.
|
|
|
|
|
|
|
|
|
|
| |
* ips -> io/
* loader related stuff -> loader/
* tempfile -> extern/
* buffer, forkserver -> server/
* lineedit, window -> display/
* cell -> types/
* opt -> types/
|
|
|
|
|
|
| |
* remove unused function isAlphaAscii
* swap pushHex for less casting
* remove == overload for char/rune (we did not really use it anyway)
|
|
|
|
|
|
|
| |
* substr for Rune with 1 param: gone, ideally the other should be
removed too
* clearControls: gone, not used anymore.
* split for Rune: gone, not used anymore.
|
| |
|
|
|
|
|
|
|
| |
Split out parts of the JS module, because it was starting to confuse
the compiler a little.
(Peakmem is back at 750M. Interesting.)
|
|
|
|
| |
For some reason I forgot about this.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Import punycode, as it has been removed from stdlib.
* Fix some syntax errors
* Apparently you can no longer compare distinct pointers with nil.
Add explicit comparisons with typeof(nil) instead.
* htmlparser: rename _ to other, as semantics of _ have changed.
(Quite a shame, it looked better with _. Oh well.)
* Explicitly specify mm:refc, as the browser OOMs with orc for
some reason.
Confirmed to compile & run on 2.0.0, 1.6.14, 1.6.12, 1.6.10 and 1.6.8.
(<1.6.8 it's broken & wontfix.)
|
|
|
|
| |
We were comparing the wrong sides of ranges here.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
Replaces the weird CSS implementation we have had until now with a
searchable popup menu similar to that of w3m. (The previous
implementation broke on websites that do not expect <select> to
expand on click, had no separate search, and was ugly.)
|
| |
|
|
|
|
| |
Introduced by 1.6.14. Warns of undefined behavior.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Now it's not as horribly broken as before (but it's still far from
perfect). We can at least log in to sr.ht (hooray).
The form multipart part is straightforward, just pass what we used to pass
long ago before I broke multipart.
|
|
|
|
|
| |
Now we use Result for passing exceptions to JS. As a result, we can
finally get rid of the .jserr pragma.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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...)
|
|
|
|
| |
Only document-charset supported for now.
|
| |
|
|
|
|
|
| |
Use the Unicode 15 EastAsianWidth.txt file instead of an ancient wcwidth
implementation's ranges.
|
| |
|
|
|
|
| |
Use the isAscii function for early return.
|
| |
|
|
|
|
|
|
|
| |
Looks like lazily loading the idna table doesn't work, so now it's
statically loaded.
Also, bugfixes in idna handling.
|
| |
|
|
|
|
|
|
|
|
| |
cursorBytes uses twidth now.
cursorNextMatch matches the byte *after* the cursor (somewhat more
consistently than before).
match() no longer counts capture groups. LRE_FLAG_GLOBAL now goes
through the entire string.
|
| |
|
|
|
|
|
|
| |
Instead of unnecessarily marking every jserr function as *, add the
used pragma (so the C compiler can get rid of them later.)
Also, use the correct definition of attribute namespace.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|