| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
progress. now they only mess up coloring a bit.
|
|
|
|
|
|
|
| |
This broke CJK combined with table layouts.
(Inline layout's state dependencies between procs are getting a bit
scary...)
|
| |
|
|
|
|
| |
merge text nodes, eat nobr, wbr
|
|
|
|
|
| |
not quite happy with this design but for now let's just try to make
it work well
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It's *not* a context menu: items are fixed, and currently not even
customizable. Former is a feature, latter is a bug.
Also, select now has improved mouse support; its behavior is a
combination of the w3m menu (for btn1) and GTK Firefox context menu
(for btn3).
Also, fix some bugs in select:
* lines with double width chars are handled better (not perfectly,
but at least the grid isn't completely mangled anymore)
* non-multiple select now highlights the currently selected option
* small selects at the bottom of the screen are handled correctly
* selects at the right edge of the screen are handled correctly
* select multiple no longer discards selected items on cursorLeft
|
|
|
|
| |
ref. https://todo.sr.ht/~bptato/chawan/24
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* add HTMLDocument as alias to Document
* set Image as configurable/writable
So looking closer, HTMLDocument *is* specified, just major browsers
don't follow the spec.
I doubt this incompatibility causes issues, anyway.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
It necessarily removes the config.images check from codec access, which
I'm not quite happy about, so I've added a check to the DOM instead.
(TODO: maybe pager should just dynamically grant codec access as a
capability instead? but maybe that's even more error prone...)
|
|
|
|
|
|
| |
* replace weird cursor position representation
* add cursorTop, cursorMiddle, cursorBottom, scrollDown, scrollUp
* expose fromy, cursory to JS
|
|
|
|
|
| |
It is documented in chame that parentNode may be nil, and indeed, it is
nil in some cases.
|
|
|
|
|
|
| |
Turns out the generics weren't really needed in the first place.
Also, StyledNode is now 16 bytes smaller.
|
| |
|
|
|
|
| |
canceled was not being set, because we jumped out of the loop too early.
|
| |
|
| |
|
|
|
|
| |
maybe I'll get it right one of these days
|
| |
|
| |
|
| |
|
|
|
|
| |
just in case
|
|
|
|
|
| |
The rowspan filler must get a smaller colspan if its first cells are
occupied by another cell with a colspan > 1.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This was a bit annoying because it triggered the popup warning on
cursorNextLink -> click with form buttons (as the square brackets around
[button] are implemented with ::before/::after.)
Notably, this also removes the visibility check from isClickable.
I suspect there was a good reason why I added it, but I can't remember
why, and it's incompatible with what desktop browsers do on:
<a href="https://asdf.com" style="visibility: hidden">
<div style="visibility: visible">
test
</div>
</div>
So if it's ever added back, then this case should be respected too.
|
|
|
|
|
| |
findPrevLink is still an unreadable mess, but at least findNextLink
looks alright now.
|
| |
|
|
|
|
| |
this was causing images to disappear sometimes
|
| |
|
| |
|
|
|
|
|
| |
* get rid of hash table
* only do a single port lookup every time the port changes
|
|
|
|
|
|
|
|
|
| |
wait isn't this exponential
-- apparently not, at least not with the DOM builder.
(however it is if JS builds the DOM out of place. what can you do, at
least it works now.)
|
|
|
|
| |
kill qmark hack, plus refactor the form data parser/serializer
|
| |
|
|
|
|
| |
for consistency
|
| |
|
|
|
|
|
|
|
| |
most of it has already been moved to monoucha, and the rest fits better
in other directories.
also, move urimethodmap to config
|
|
|
|
|
|
|
| |
far from perfect, but it's something.
(ideally, we should store enums in a bitmap instead of allocating a
GC'ed property for each of them.)
|
| |
|
| |
|
|
|
|
| |
like line height, this caused more trouble than it was worth
|
|
|
|
|
|
|
|
|
| |
* fix incorrect :- behavior
* merge non-standard '${%VARIABLE}' syntax with regular syntax; now all
internal variables are exported to the environment, so the behavior
should be equivalent.
* handle terminal symbol appropriately in all states
* deny numeric curly substitutions
|
|
|
|
|
|
|
| |
Turns out it's more useful to have env vars in the variable than to
allow incomplete path names.
Also, fix the disappearing backslash issue in docs.
|
|
|
|
|
| |
also, fix a bug in the chapath parser so that param expansion actually
works
|
|
|
|
| |
I swear this feature is cursed
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
23beebe6 introduced a regression that broke gotoAnchor. This fixes that,
plus a couple other long-standing gotoAnchor bugs:
* If no anchor is found, do not dupe the buffer.
Desktop browsers still add a history entry, while w3m prints an
error. I've copied the latter because it makes more sense as a user,
but this will have to be refined for the navigation API at some point.
* If the anchor *is* found, then always jump to it, even if it's not
visible.
This was a limitation of relying on the line array, so now we rely on
the box tree instead. (Sooner or later, the former must go anyway.)
Also, fix `U' reload not restoring the position (hopefully this time for
good).
|
| |
|
|
|
|
|
|
|
| |
* query, fragment are now strings, not options
* get rid of Host, Path types, now hostname/pathname are strings
* fix ipv4 parsing error case
* in file protocol, fix URL for dirlist without slash with a redirection
|