about summary refs log tree commit diff stats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* layout: temporary hack to fix xminwidth + flexbptato2024-12-021-0/+12
| | | | | | | | | | | | ugly, but better than the status quo. the core issue is that width, min-width should clamp xminwidth too, but it doesn't. this hadn't been an issue until recently, but since I made <pre> stretch out xminwidth too it had the unfortunate result that you now have to scroll on pages that nest pre in a flex. this still isn't a proper fix, in particular it won't work if min-width is set to 0, but on the sites I tried it happens to work anyway.
* cascade, cssvalues: clean up a bit morebptato2024-12-022-68/+76
|
* css: misc refactoringbptato2024-12-025-137/+128
|
* config: add copy-cmd, paste-cmdbptato2024-12-011-0/+2
| | | | ref. https://todo.sr.ht/~bptato/chawan/29
* sheet, mediaquery: misc cleanupbptato2024-12-012-64/+29
|
* term: respect LINES, COLUMNS; do not crash without vi/vebptato2024-12-011-6/+12
|
* mediaquery: fix and after bare keywordbptato2024-12-011-1/+0
| | | | | no idea what that reconsume was doing there; probably a refactoring mistake
* term: disable screen workaround on tmuxbptato2024-12-011-1/+2
|
* dom: add support for @importbptato2024-12-014-58/+92
| | | | only the most basic form; no media queries yet
* buffer: fix nil derefbptato2024-11-301-1/+1
| | | | whoops
* pager: do not make pointless requests in viewImage, add saveImagebptato2024-11-305-35/+49
| | | | | | | with buffer.images enabled, we already cache them, so we can skip the additional request also, add saveImage, bound to sI
* cascade: allow presentational hints with styling=falsebptato2024-11-291-2/+2
| | | | They are UA style.
* layout: remove mystery startOffset adjustmentbptato2024-11-281-2/+0
| | | | | | | | Probably a remnant from back when startOffset meant (and was used for) something different. Interestingly, there was already a test case for this, but it was also wrong.
* twtstr: add mypairsbptato2024-11-2811-24/+35
| | | | | This couldn't get into system.nim for technical reasons, but it's still pretty useful when iterating over non-mutable openArrays.
* layout, term, url: misc cleanupbptato2024-11-283-4/+0
|
* cascade: apply buffer.styling to inline stylesbptato2024-11-271-8/+11
| | | | it's author style too
* mailcap: add x-needsstyle extension fieldbptato2024-11-272-2/+8
| | | | | | | Useful when an x-htmloutput handler needs styling for the HTML output to be formatted correctly (as a sort of pseudo-ua style sheet). ref. https://todo.sr.ht/~bptato/chawan/28
* layout: support br clearbptato2024-11-271-28/+34
|
* buffer: optimize hover switchingbptato2024-11-262-2/+15
| | | | | Fixed a bug that would lead to styles unnecessarily being recalculated if the root element had a :hover dependency.
* config.configdir -> config.dirbptato2024-11-263-5/+5
|
* select: pad options in newSelectbptato2024-11-262-18/+19
| | | | this way it works for <select> tags too
* Update monouchabptato2024-11-251-1/+1
|
* client: exit if quit was called inside a jobbptato2024-11-251-10/+11
| | | | ref. https://todo.sr.ht/~bptato/chawan/27
* pager, select: add more items, misc fixesbptato2024-11-254-55/+90
| | | | | | eh probably have to move the event loop to pager...
* dom: fix some comparisonsbptato2024-11-241-2/+2
|
* select: misc fixesbptato2024-11-241-2/+10
| | | | | * jump to first selected item (if any) when opened * fix crash on control chars in option (at least they didn't bleed...)
* layout: another intrinsic min width fixbptato2024-11-241-2/+4
| | | | forgot about word-break
* loader/* -> serverbptato2024-11-2417-47/+47
| | | | one less mystery
* loaderhandle -> loaderbptato2024-11-242-213/+195
| | | | | no longer makes sense to keep it as a separate module since everything is in CGI
* select: fix display with multi-width charsbptato2024-11-241-6/+11
| | | | progress. now they only mess up coloring a bit.
* layout: fix intrinsic min width for words with wrapping opportunitiesbptato2024-11-241-11/+18
| | | | | | | This broke CJK combined with table layouts. (Inline layout's state dependencies between procs are getting a bit scary...)
* pager: pad menu itemsbptato2024-11-241-10/+10
|
* buffer: slightly improve markURLbptato2024-11-241-49/+69
| | | | merge text nodes, eat nobr, wbr
* pager, select: implement more functionsbptato2024-11-242-5/+18
| | | | | not quite happy with this design but for now let's just try to make it work well
* pager, select: add right click menu, fix some bugsbptato2024-11-234-82/+219
| | | | | | | | | | | | | | | | | | 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
* pager: fix loadURL crash on empty URLbptato2024-11-231-1/+3
| | | | ref. https://todo.sr.ht/~bptato/chawan/24
* container: add Lynx-style navigation commandscommodorian2024-11-232-1/+60
|
* dom: implement HTMLDocument, make Image C/Wbptato2024-11-221-1/+3
| | | | | | | | | | * 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.
* dom: add document named property getter, update monouchabptato2024-11-222-9/+40
|
* dom: add document.compatModebptato2024-11-221-0/+5
|
* Update chamebptato2024-11-221-1/+1
|
* buffer: proper toggleImages implementationbptato2024-11-217-21/+50
| | | | | | | 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...)
* select: various improvementsbptato2024-11-211-69/+79
| | | | | | * replace weird cursor position representation * add cursorTop, cursorMiddle, cursorBottom, scrollDown, scrollUp * expose fromy, cursory to JS
* chadombuilder: fix removeImpl definitionbptato2024-11-211-1/+2
| | | | | It is documented in chame that parentNode may be nil, and indeed, it is nil in some cases.
* match, stylednode: remove generics, refactorbptato2024-11-193-137/+91
| | | | | | Turns out the generics weren't really needed in the first place. Also, StyledNode is now 16 bytes smaller.
* dom: add Image constructorbptato2024-11-191-0/+10
|
* event: fix preventDefault with stopImmediatePropagationbptato2024-11-191-5/+4
| | | | canceled was not being set, because we jumped out of the loop too early.
* container: add numLines getterbptato2024-11-191-1/+1
|
* layout: fix intrinsic min width with whitespace: prebptato2024-11-191-0/+1
|
* layout: fix indefinitely sized flex items with boundsbptato2024-11-191-1/+8
| | | | maybe I'll get it right one of these days