| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
| |
* make Client an instance of Window (for less special casing)
* misc work on Request & fetch
* improve origin comparison (opaque origins of same URLs are now
considered the same)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, the following printed "2" instead of "12":
<div style=float:left>1</div><div style=display:flow-root>2</div>
This fixes the above problem in the laziest possible way: we relayout once
in the smallest possible space the BFC fits in when floats exist. See the
comment in the code for details.
As a nice bonus, this also fixes tables overlapping with floated boxes,
by pretending that they establish a BFC.
|
|
|
|
|
| |
The renderer cannot handle it yet, but at least this fixes pages that
expect overflow: hidden (etc.) to establish a new BFC.
|
|
|
|
|
| |
Including our own position is a mistake, since the BFC starts from the
inner box.
|
| |
|
|
|
|
| |
Fix percentage-based left/right etc.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
* add $LOGNAME to the tmp directory name, so that tmpdirs of separate
users don't conflict
* use separate directory for sockets, so that we do not have to give
buffers access to all cached pages
|
| |
|
|
|
|
| |
for consistency
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
* fix enctype not getting picked up
* fix form data constructor requiring open() syscall (which gets blocked
by our seccomp filter)
* add closing boundary to multipart end
* pass fds instead of path names through WebFile/Blob and send those
through bufwriter/bufreader
|
| |
|
|
|
|
|
|
| |
* use EDITOR environment variable in default config, fix line number
ordering in fallback
* autodetect vi-like editors and add line number
|
|
|
|
|
|
|
| |
* Replaced the `pcanvas' comparison with a much simpler tracking of
the first damaged cell in writeGrid, which is significantly faster.
* Removed emulate-overline: it's of too little utility compared to the
maintenance burden it caused.
|
|
|
|
|
|
| |
Use a LUContext to only load required CharRanges once per pager.
Also, add kana & hangul vi word break categories for convenience.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of using the built-in (and outdated, and buggy) tables, we now
use libunicode from QJS. This shaves some bytes off the executable,
though far less than I had imagined it would.
Also, a surprising effect of this change: because libunicode's tables
aren't glitched out, kanji properly gets classified as alpha. I found
this greatly annoying because `w' in Japanese text would now jump
through whole sentences. As a band-aid solution I added an extra
Han category, but I wish we had a more robust solution that could
differentiate between *all* scripts.
TODO: I suspect that separately loading the tables for every rune in
breaksViWordCat is rather inefficient. Using some context object (at
least per operation) would probably be beneficial.
|
|
|
|
|
|
|
| |
Turn Offset, Size, etc. into arrays indexed by a DimensionType enum,
and use it to unify code that only differs in the dimension it is
computing for. (e.g. this lets us use the same code for flex row &
column layouts.)
|
| |
|
|
|
|
| |
It would silently truncate the upper 32 bits... not a very bright idea.
|
| |
|
|
|
|
|
|
| |
Turns out we also have to *expand* column width, if the specified column
width is too small *and* no unspecified column exists to take the rest
of the place.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
* prefix to-be-separated modules with js
* remove dynstreams dependency
* untangle from EmptyPromise
* move typeptr into tojs
|
| |
|
|
|
|
|
|
|
|
|
| |
If the total specified column width is larger than the table's allowed
width, we now resize them proportionally to the specified width.
This is quite important because many tables set the width to e.g. 50%
for "give me half of the table", instead of its true meaning "give me
half of the page".
|
| |
|
| |
|
|
|
|
|
|
| |
- accept `class P { async = 1 }}`
- accept `class P { static = 1 }}` etc.
- Fixes #261
|
|
|
|
| |
Co-authored-by: Richard Davison <ridaviso@amazon.com>
|
|
|
|
|
|
|
|
| |
- move all `lre_xxx` functions to libunicode
- use flags table `lre_ctype_bits` instead of bitmaps
- simplify `lre_is_space`, `lre_js_is_ident_first` and `lre_js_is_ident_next`
- simplify `simple_next_token`, handle UTF-8 correctly
- simplify `is_let`, remove dead code
|
|
|
|
|
|
|
|
| |
- Document table and index formats
- Add size statistics
- Fix UBSAN issue in `get_le24()`
Fixes #285
|
|
|
|
|
|
|
|
|
| |
* resolve empty promises without params, not a single undefined param
(we can't just unsafeAddr constants on 1.6.14, and I don't see why we
need to pass undefined?)
* same in client with InternalError
* explicitly convert static `asglobal' to bool (1.6.14 turns unquoted
enums into ints...)
|
|
|
|
|
| |
If `content' is empty, then generating before/after pseudo-elements
is wrong.
|
|
|
|
|
| |
ansi2html depends on color, but we definitely do not want to link it
to QJS, so the converters must be moved into a separate module.
|
|
|
|
| |
Thanks @onemoresuza for noticing.
|
| |
|
|
|
|
| |
no point in having identical overloads
|
| |
|
| |
|
|
|
|
|
|
|
| |
* 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
|