Daniel Eklöf
990eacdad4
colors: change default 'bright0' from 000000 -> 666666
2019-08-23 19:42:14 +02:00
Daniel Eklöf
7026f60717
add config + command line option for setting initial window width/height
2019-08-23 17:26:41 +02:00
Daniel Eklöf
4e2067446a
main: use slave's exit value as our exit value
2019-08-23 17:23:47 +02:00
Daniel Eklöf
74a0c5f3fc
render: change resize debug log message to an info log message
2019-08-23 17:23:09 +02:00
Daniel Eklöf
7c7720a3ab
scrolling: optimize row access by assuming number of rows is a power of 2
...
With this assumption, we can replace 'a % b' with 'a & (b - 1)'. In
terms of instructions, this means a fast 'and' instead of a slow
'div'.
Further optimize scrolling by:
* not double-initializing empty rows. Previously, grid_row_alloc()
called calloc(), which was then followed by a memset() when
scrolling. This is of course unnecessary.
* Don't loop the entire set of visible rows (this was done to ensure
all visible rows had been allocated, and to prefetch the cell
contents).
This isn't necessary; only newly pulled in rows can be NULL. For
now, don't prefetch at all.
2019-08-22 17:33:23 +02:00
Daniel Eklöf
f0663c951e
generate-alt-random-writes: generate color, scroll and scroll region sequences
2019-08-22 17:31:13 +02:00
Daniel Eklöf
0cb3e70ecf
PKGBUILD: profiling payload: random writes to the alt screen
2019-08-21 20:01:59 +02:00
Daniel Eklöf
832f6520d0
generate-alt-random-writes: script to generate payload for profiling
2019-08-21 20:01:17 +02:00
Daniel Eklöf
2b96f32d19
PKGBUILD: prepare for profile guided compilation
2019-08-21 19:41:41 +02:00
Daniel Eklöf
c75518123b
PKGBUILD: performance: build without stack protector
2019-08-21 19:38:48 +02:00
Daniel Eklöf
675504308a
osc: add debug logs when colors are changed and reset
2019-08-21 18:54:12 +02:00
Daniel Eklöf
d8fb80ea32
term: rename colors256 -> table
2019-08-21 18:50:24 +02:00
Daniel Eklöf
631e0c0870
term: use colors256 array for *all* colors
...
That is, remove the 'regular' and 'bright' color arrays. This is
possible since the 256-color array is defined such that the first 16
colors map to the regular and bright colors.
2019-08-21 18:47:48 +02:00
Daniel Eklöf
65e4b93a03
osc: fix indexing into 'bright' color array
2019-08-21 18:02:18 +02:00
Daniel Eklöf
52ece3592c
osc: implement "change color" commands
...
This implements OSC 4, 10, 11 - change <color>/foreground/background,
and their corresponding 'query' variant (which was already implemented
for OSC 10/11).
It also implements OSC 104, 110, 111 - reset
<color>/foreground/background.
Set corresponding terminfo entries to signal this support to clients.
2019-08-21 17:57:02 +02:00
Daniel Eklöf
c1903f5522
render: multiply width/height with *new* scale factor, not old
2019-08-21 17:56:41 +02:00
Daniel Eklöf
d7aaeaedee
csi: move 256-color table into the terminal struct
2019-08-21 17:56:21 +02:00
Daniel Eklöf
3efc30c6a1
main: fix debug logs
2019-08-21 17:55:40 +02:00
Daniel Eklöf
842d114cdb
main: don't set scale before we know what it actually should be
2019-08-21 17:55:11 +02:00
Daniel Eklöf
0a80269be7
main: we *do* track outputs
2019-08-21 17:54:58 +02:00
Daniel Eklöf
d5bc46f333
render: reload cursor theme when scale (may) have changed
2019-08-21 17:53:52 +02:00
Daniel Eklöf
776432ded3
erase-cells: don't memset when keeping background color
2019-08-20 21:11:09 +02:00
Daniel Eklöf
71c6f11e86
input: back out accidental commit of debug code
2019-08-19 21:18:43 +02:00
Daniel Eklöf
4168f91d40
csi: implement CSI ? 1007 h/l - alternateScroll
...
When enabled, mouse scrolls in the alternate screen are converted to
up/down key presses.
2019-08-19 21:16:47 +02:00
Daniel Eklöf
9029478e8c
font: tentative support for BGR, V-RGB and V-BGR
2019-08-19 17:45:21 +02:00
Daniel Eklöf
d84b485202
render: don't 're-calculate fg unnecessarily
2019-08-18 18:11:38 +02:00
Daniel Eklöf
33b5210a6a
refactor: break out stride calculation to new function
2019-08-18 17:59:43 +02:00
Daniel Eklöf
8aa53d1508
README: subpixel antialiasing has been implemented
2019-08-18 17:41:49 +02:00
Daniel Eklöf
0060e33912
font: implement subpixel antialiasing
2019-08-18 17:40:57 +02:00
Daniel Eklöf
9b6d0cfcd1
render: minor optimization
...
Don't instantiate a pixman color unnecessarily when drawing a block
cursor.
2019-08-17 17:43:47 +02:00
Daniel Eklöf
80aef9b6af
render: use 32-bit pixman calls, where applicable
2019-08-17 17:36:27 +02:00
Daniel Eklöf
e356dd6cac
README; emphasize bitmap and color emoji font support
2019-08-17 12:51:40 +02:00
Daniel Eklöf
579a6bf6f6
ci: need ncurses (for 'tic' - to generate terminfo)
2019-08-17 12:47:18 +02:00
Daniel Eklöf
c4c2b93751
ci: initial CI
2019-08-17 12:44:51 +02:00
Daniel Eklöf
a421c2ad60
README: split up requirements into "running" and "building"
2019-08-17 12:42:28 +02:00
Daniel Eklöf
3d6bbf0fe8
meson: remove unused wayland protocols
2019-08-17 12:02:05 +02:00
Daniel Eklöf
d21c4a02a0
Merge branch 'pixman'
2019-08-17 11:59:52 +02:00
Daniel Eklöf
72d3cbca26
shm/render: there's no need to have one pixman image per thread
2019-08-16 22:54:05 +02:00
Daniel Eklöf
f45e5c6aef
Remove all references to cairo; we now use pixman only
2019-08-16 22:11:22 +02:00
Daniel Eklöf
81107753bf
render: replace all usage of cairo with pixman
2019-08-16 22:06:06 +02:00
Daniel Eklöf
bed7b34c28
wip: render background and glyphs using pixman
2019-08-16 20:40:32 +02:00
Daniel Eklöf
9259696b18
meson: add pixman dependency
2019-08-16 18:07:04 +02:00
Daniel Eklöf
ece09cc76f
vt: remove support for urxvt 'extended' line drawing character set
2019-08-16 18:04:03 +02:00
Daniel Eklöf
8586c9cb91
vt: there is no default charset for \e0 and \eB
2019-08-16 18:01:24 +02:00
Daniel Eklöf
30d5847d06
font: fix broken debug log
2019-08-16 18:00:56 +02:00
Daniel Eklöf
6f1cf8af34
input: remove debug output
2019-08-15 20:09:24 +02:00
Daniel Eklöf
f7f3d4d5b5
Merge branch 'meta-modifier'
2019-08-15 20:08:32 +02:00
Daniel Eklöf
b8c552a5b7
keymap: add meta modifier mappings for keypad keys
2019-08-15 20:07:33 +02:00
Daniel Eklöf
2c16ec2687
keymap: add meta modifier mappings for non-keypad keys
2019-08-15 19:56:14 +02:00
Daniel Eklöf
44112e5591
input: handle meta modifier when modifying "other" keys
...
When handling keys without a specific map defined (i.e. keys
corresponding roughly to xterm's "otherKeys"), recognize the meta
modifier and report the correct modifier code.
2019-08-15 19:38:50 +02:00