Commit Graph

394 Commits

Author SHA1 Message Date
K. Lange
f794dd6e51 graphics: better approach to transformed blitting 2021-08-14 08:54:04 +09:00
K. Lange
3687793da6 graphics: some improvements to the sprite blitters 2021-08-14 08:29:08 +09:00
K. Lange
dac240b3c9 compositor: Expand rotated coordinate bounds to handle rounding / truncation errors 2021-08-12 10:55:30 +09:00
K. Lange
77435a0b57 menu: flip after moving 2021-08-12 10:36:58 +09:00
K Lange
55c3a2bafc compositor: support positioning a window relative to another 2021-08-12 09:08:31 +09:00
K. Lange
6faf45b4b5 compositor: don't animate regular dropdown menus
No one else does this. We were only doing it because it hid a bug
in the compositor with initial window location, which we've just
fixed in the last commit...
2021-08-11 13:03:33 +09:00
K. Lange
3c20f010b9 text: spot fix for clipped text shadows 2021-07-27 12:59:33 +09:00
K. Lange
b293e989de markup: Initial work on new marked up text rendering library 2021-07-27 10:53:12 +09:00
K. Lange
d81da78dc0 markup: fix bad malloc 2021-07-27 09:53:06 +09:00
K. Lange
a96c7b3f2b panel: cleanup and fix display of window items 2021-07-26 20:55:17 +09:00
K. Lange
decf3517c6 panel: try some smarter popup placement 2021-07-25 20:38:33 +09:00
K. Lange
8080400b22 kuroko: bind text library in _yutani module 2021-07-22 20:43:01 +09:00
K. Lange
5636d6e045 text: offset horizontal scanlines slightly to not bleed bottoms of glyphs into next pixel 2021-07-20 09:32:06 +09:00
K. Lange
670978932c text: read fonts with short glyf table offsets 2021-07-19 18:38:19 +09:00
K. Lange
5798aaa056 menu: space out menu bars nicer 2021-07-19 13:49:30 +09:00
K. Lange
b5d33500a6 text: fix overly trusting bounds calculation 2021-07-16 19:51:23 +09:00
K Lange
f47284ce7e text: support type 4 cmaps, old Microsoft fonts 2021-07-14 21:46:40 +09:00
K. Lange
3176b6147d graphics: Match nearest-neighbor signature to bilinear for easier swapping 2021-07-14 10:57:12 +09:00
K. Lange
fa969a7f0a graphics: short-circuit out of bounds lookups in bilinear interpolator 2021-07-14 10:50:44 +09:00
K Lange
1f5e3bb8be graphics: improved bilinear interpolator 2021-07-14 09:59:31 +09:00
K. Lange
1e6d0279db graphics: fix alpha painting of sprites 2021-07-13 21:58:31 +09:00
K. Lange
35a0e63105 graphics: general improvements 2021-07-13 21:34:39 +09:00
K. Lange
b4f4edb614 graphics: Add affine transformations for sprites 2021-07-13 19:21:33 +09:00
K. Lange
d4ff4244cf kbd: stop sending empty events to clients 2021-07-13 08:32:09 +09:00
K. Lange
14de7e9c78 menu: Rudimentary checkbox menu entries 2021-07-08 13:05:03 +09:00
K. Lange
f082dad327 text: handle off-curve start point 2021-07-07 20:21:40 +09:00
K. Lange
8b064947a7 lib: update docs 2021-07-07 17:17:55 +09:00
K. Lange
94a8706c3d text: support more flexible sizing in pt, px 2021-07-06 21:12:57 +09:00
K. Lange
0ffb6e330c text: read unitsPerEm from font, use for tt_set_size 2021-07-06 21:05:10 +09:00
K. Lange
26e387f5cd text: fix clipped right-hand-side of some glyphs 2021-07-06 19:44:42 +09:00
K. Lange
7b902c26fe font-preview: tool for viewing TrueType fonts 2021-07-06 19:43:09 +09:00
K. Lange
2b08195002 text: allocate subsamples based on glyph bounds 2021-07-06 17:14:51 +09:00
K. Lange
5ff17bea77 graphics: only load image libraries once 2021-07-06 16:44:31 +09:00
K. Lange
02b9a5233a text: purge the SDF renderer, RIP 2021-07-06 13:22:59 +09:00
K. Lange
9a34ba2e44 text: shadowed text, port file-browser 2021-07-06 12:46:31 +09:00
K. Lange
f67b5425dd text: Switch several apps/libs to new text library 2021-07-06 09:39:52 +09:00
K. Lange
18f46976f8 text: Introduce new TrueType implementation 2021-07-06 00:36:46 +09:00
K. Lange
5ec05e0925 menu: Add fancy speech-bubble-style menus like Gnome has 2021-06-23 21:18:58 +09:00
K. Lange
7914841b4e graphics: ensure rounded rectangle rendering is bounded? 2021-06-23 20:57:47 +09:00
K. Lange
372b20209c rline: stop highlighting numbers in the middle of words 2021-06-19 16:46:46 +09:00
K. Lange
7f3ca05506 rline: Add a new r-search 2021-06-15 15:51:11 +09:00
K Lange
5eaeced119 menu: implement menu_free_entry 2021-06-06 18:34:12 +09:00
K. Lange
b35f7ac8c9 misaka: initial merge 2021-05-31 10:54:11 +09:00
K. Lange
8e73380e9f kuroko: Upstream updates 2021-04-17 19:50:20 +09:00
K. Lange
ff7c22b54d rline: reintroduce rline_exp as a workaround for existing Python packages 2021-04-01 10:13:49 +09:00
K. Lange
33fbcde1fd kuroko: sync with upstream 2021-03-25 20:39:37 +09:00
K. Lange
487d0f3a6e kuroko: sync with upstream 2021-03-21 18:10:16 +09:00
K. Lange
123940ec37 rline: Update krk highlighter from kuroko 2021-03-19 11:01:11 +09:00
K. Lange
9ab445cb28 kuroko: Update with upstream, changes to classes 2021-03-18 09:57:22 +09:00
K. Lange
8b6152b000 rline: remove stale rline_exp? in theory nothing links with this except maybe old python 2021-03-07 19:55:52 +09:00
K. Lange
97d02d6e23 kuroko: Updates for 1.1-preview and threading support 2021-02-16 18:56:27 +09:00
K. Lange
379f8f87a3 kuroko: upstream changes to hasKw 2021-01-26 08:14:08 +09:00
K. Lange
17ea516e77 kuroko[yutani]: finish up basic bindings 2021-01-25 20:12:39 +09:00
K. Lange
befb010dc2 menu: Changes to support Kuroko bindings 2021-01-25 20:12:13 +09:00
K. Lange
76d674722d kuroko[yutani]: Add text rendering bindings 2021-01-25 11:36:38 +09:00
K. Lange
f5b8a02c40 kuroko[yutani]: More general function bindings 2021-01-25 10:14:25 +09:00
K. Lange
2e7bc921b7 kuroko[yutani]: Add __repr__s for types 2021-01-25 09:21:38 +09:00
K. Lange
5746592075 kuroko: bindings for sprites 2021-01-24 21:47:50 +09:00
K. Lange
ec0fe9bb69 yutani: more bindings for kuroko 2021-01-24 20:29:37 +09:00
K. Lange
5fe8d3b0d1 yutani: basic Kuroko bindings, demo 'app' 2021-01-23 15:31:38 +09:00
K. Lange
a53757a307 kuroko: More upstreams updates 2021-01-23 09:26:04 +09:00
K. Lange
f05522baca kuroko: synchronize and begin work on Toaru bindings 2021-01-21 21:26:50 +09:00
K. Lange
e43b277987 kuroko: Update to latest release candidate 2021-01-08 08:44:08 +09:00
K. Lange
ac83b77055 rline: try to fix escape timeouts? 2021-01-01 20:53:24 +09:00
K. Lange
b8aecc7a37 rline: officially adopt rline_exp as the only rline, and bring in some improvements from kuroko 2021-01-01 18:08:30 +09:00
K. Lange
db23c987a9 Pull in Kuroko (as a submodule, but with build integration) 2021-01-01 17:19:44 +09:00
K. Lange
79bdb6fc02 png: replace icons 2020-06-12 18:12:33 +09:00
K. Lange
802ae6a616 sdf: switch font format from bmp to png 2020-05-30 16:37:10 +09:00
K. Lange
431a6aaf2a png: support more color types; fix idat sequencing 2020-05-30 16:36:31 +09:00
K. Lange
1c0e741c99 inflate: fix missing byte read for compression type in gzip deflater 2020-05-05 00:07:02 +09:00
K. Lange
22ded9bdce inflate: gzip multibyte values are LE... 2020-04-24 21:52:58 +09:00
K. Lange
7dfb9c34ce png: replace several BMP assets with PNGs 2020-04-24 14:30:12 +09:00
K. Lange
e5996aa4b4 graphics: remove unneeded ALPHA_EMBEDDED's in libs 2020-04-23 20:55:27 +09:00
K. Lange
3cacd56bce bmp: Set ALPHA_EMBEDDED on load 2020-04-23 20:15:56 +09:00
K. Lange
c68cd7e1e8 graphics: make jpg/png support seamless with load_sprite 2020-04-23 18:44:07 +09:00
K. Lange
8e74bee6d0 png: First pass at a PNG decoder
(only 8bpp rgba, non-interlaced for now)
2020-04-21 17:11:20 +09:00
K. Lange
8f7cda92fa inflate: Add DEFLATE decompressor and gunzip util 2020-04-21 11:23:26 +09:00
K. Lange
8c2cf93b1d menu: Add method to force redraw a visible menu 2020-03-29 13:23:28 +09:00
K. Lange
bd92f00a40 json: add rudimentary JSON parser library 2020-03-28 22:20:20 +09:00
K. Lange
2cddc37a67 list: add convenience function to get item by index 2020-03-28 22:19:52 +09:00
K. Lange
2fbf92329d graphics: actually that seems to indicate A is after RGB 2020-03-27 23:03:54 +09:00
K. Lange
d6ed670213 graphics: support swapped byte order in bitmaps 2020-03-27 22:56:18 +09:00
K. Lange
83c7c37f8f rline: replace syntax highlighter with new bim highlighter engine 2019-12-24 13:21:34 +09:00
K. Lange
00493418a3 terminal: support bracketed paste mode 2019-12-20 20:56:06 +09:00
K. Lange
1abba60e76 terminal: implement IL/DL in vga terminal; experiment with scrollable regions 2019-12-19 13:45:20 +09:00
K. Lange
dd180b33c0 sdf: handle input string as utf8 2019-12-05 19:13:16 +09:00
K. Lange
0d162680ff terminal: support SGR-style mouse for extended coordinates 2019-12-04 13:16:03 +09:00
K. Lange
54ec34837b graphics: load_sprite should return a status code 2019-08-09 06:44:42 +09:00
K. Lange
d585dacb8e termemu: support ^[7 / ^[8 2019-06-30 22:43:19 +09:00
K. Lange
7fdaca463f CVE-2019-12937 2019-06-25 20:35:45 +09:00
K. Lange
ef149df1e2 lib: put SSE intrinsics behind an ifdef 2019-03-19 10:14:17 +09:00
K. Lange
c4ffc28b1f menu: smarter context menu spawning 2019-01-07 14:04:55 +09:00
K. Lange
e3a966232d rline: fix backspace in legacy line editor 2019-01-05 23:21:44 +09:00
K. Lange
8680381ecc graphics: basic tga loading support so we can see our own screenshots 2019-01-03 19:36:33 +09:00
K. Lange
d2e40a3d0d yutani: missing clip region recalculation in reinit 2019-01-03 18:00:46 +09:00
K. Lange
352bef7882 jpeg: fix bad rounding of image sizes to 8x8 cells 2019-01-02 19:48:02 +09:00
K. Lange
08576160f3 graphics: fix box blur to work with strides 2018-12-26 21:30:11 +09:00
K. Lange
b325df2cbc graphics: subregion should inherit clips 2018-12-26 21:29:45 +09:00
K. Lange
92e0203075 esh: parser fix up for single-character variables 2018-12-26 20:20:04 +09:00
K. Lange
ae55558935 esh: add $# and fix syntax support 2018-12-26 20:05:22 +09:00
K. Lange
0e76932477 graphics: fix gradient pattern blue channel 2018-12-23 17:15:49 +09:00
K. Lange
536d25567b graphics: actually probably faster without those branches 2018-12-20 21:39:37 +09:00
K. Lange
805c43f059 graphics: fix missing continue in sse alphablit 2018-12-20 21:29:59 +09:00
K. Lange
29b7881d13 jpeg: use sse intrinsincs 2018-12-20 21:07:35 +09:00
K. Lange
de26980af2 jpeg: even faster with more premultiplications 2018-12-20 19:01:49 +09:00
K. Lange
245fa0a092 jpeg: further precomputations 2018-12-20 18:54:13 +09:00
K. Lange
fab3091cc1 jpeg: use a precalculated cosine table, which is about twice as fast 2018-12-18 19:33:21 +09:00
K. Lange
54e9044161 libc: add more toaru-specific syscall wrappers 2018-12-10 18:47:18 +09:00
K. Lange
0293e83c3b libs: add README describing what each is for 2018-12-07 17:31:25 +09:00
K. Lange
20f3d83e92 yutani: track keyboard modifiers with mouse events 2018-12-07 11:05:21 +09:00
K. Lange
dfb176abe5 libc: sin: lerp table lookup 2018-12-06 18:31:18 +09:00
K. Lange
bac479e309 jpeg: close file when finished 2018-12-05 20:29:50 +09:00
K. Lange
950c15ccf4 jpeg: try to document what the jpeg decoder does 2018-12-05 20:00:29 +09:00
K. Lange
6f33b2ff97 jpeg: malloc-less implementation 2018-12-05 18:12:11 +09:00
K. Lange
75514b83fd jpeg: that was MIT 2018-12-05 13:05:55 +09:00
K. Lange
e2a27ab74c jpeg: don't trace 2018-12-05 13:01:59 +09:00
K. Lange
d0d5861e0a jpeg: new jpeg library 2018-12-05 13:00:36 +09:00
K. Lange
1ff5f56225 rline_exp: \r before \n to ensure we scroll 2018-12-03 11:50:52 +09:00
K. Lange
625bdb6f96 terminal: fix some bad cursor visibility 2018-12-03 11:31:16 +09:00
K. Lange
5a6655e442 sdf: fixup alphablending 2018-12-02 22:22:06 +09:00
K. Lange
8f865eeb4a rline_exp: ensure everything is drawn before returning 2018-12-01 21:35:11 +09:00
K. Lange
7259cff253 graphics: none of this is really helping anything 2018-12-01 17:42:49 +09:00
K. Lange
6d8c1f8d7a graphics: bilinear filter needs some serious speed improvement 2018-12-01 17:36:07 +09:00
K. Lange
415655f9ac graphics: fix up some bad alpha blending in certain sprite rendering functions 2018-12-01 17:12:49 +09:00
K. Lange
c6dfe69bba decorations: restore the original font size for decorations 2018-11-30 21:50:42 +09:00
K. Lange
6fb381247a graphics: subregions 2018-11-28 20:39:57 +09:00
K. Lange
a6a5bc60f5 graphics: vertical gradient pattern in graphics lib 2018-11-24 22:22:55 +09:00
K. Lange
3dc166607d button: allow for disabled buttons 2018-11-24 14:10:49 +09:00
K. Lange
e8fad60a10 button: icon buttons should also shift when pressed 2018-11-24 13:22:31 +09:00
K. Lange
8c2ba2641e button: fix rendering issue and support icons buttons 2018-11-24 13:18:57 +09:00
K. Lange
ba8a2bf1a9 graphics: try for some optimizations 2018-11-23 15:32:51 +09:00
K. Lange
1473151fa7 button: start working on widget libraries (this should probably be a ttk widget library...) 2018-11-22 10:43:30 +09:00
K. Lange
f8791b157e graphics: fix potential bad free of sprite->masks 2018-11-19 21:03:54 +09:00
K. Lange
d96bc4f2cb sdf: expose stroke options 2018-11-19 21:03:35 +09:00
K. Lange
77a665c0d5 graphics: new functions; fix premultiply in rounded rectangle 2018-11-19 20:08:49 +09:00
K. Lange
08518780f3 graphics: add rounded rectangle with pattern function 2018-11-18 13:20:26 +09:00
K. Lange
d1ff49e70b sdf: add oblique, bold oblique fonts 2018-11-14 17:16:11 +09:00
K. Lange
0f683d32de markup: wip markup parser and rendering 2018-11-12 20:24:42 +09:00
K. Lange
72aaed2eef msk: allow for and properly merge multiple remote manifests 2018-11-12 09:26:30 +09:00
K. Lange
2accf6e314 rline_exp: handle reduced terminal size better 2018-11-06 17:33:50 +09:00
K. Lange
6c88956fa4 job control 2018-10-26 20:34:15 +09:00
K. Lange
c76722a4c4 rline_exp: slightly more reasonable shell cmd hl 2018-10-17 12:55:41 +09:00
K. Lange
4d5e977a24 rline_exp: indicate when input field overflows to the left 2018-10-12 17:10:58 +09:00
K. Lange
f7eb386d81 decorations: single pixel exposed edges on tiled windows 2018-10-11 09:53:55 +09:00
K. Lange
9703594bf3 decor-fancy: remove the 1-px border around tiled decorations
I want to add some additional hints to the decorator so that
tiled windows can have a border on their exposed side, eg.
a left-tiled window will have a border on the right. Then
the compositor will size them to account for adding that one
pixel border - which is kinda specific to this design, but
I think it'll work out okay. Other decoration themes will
either have to follow suit, or I can have the decorator
advertise how it wants it decoration bounds to work in regards
to a tiled window.
2018-10-11 08:31:28 +09:00
K. Lange
d6fe16c406 rline_exp: disable highlighting of space at eol
it just doesn't look good with tab completion adding spaces
2018-10-10 21:36:16 +09:00
K. Lange
994150501a rline_exp: fix bad signs causing crashes with unicode history, tab complete 2018-10-10 11:01:56 +09:00
K. Lange
1870bdbdc2 rline_exp: ^K, ^U, visual indicator for ^V 2018-10-05 22:46:56 +09:00
K. Lange
3721644339 rline_exp: VINTR should raise, use right key 2018-10-05 22:21:10 +09:00
K. Lange
719d27166d Allow compositor to load Cairo backend later at runtime 2018-10-02 18:58:03 +09:00