Mitchell Hashimoto
872c1211f5
pty: deinit should close child end
2023-03-18 19:15:29 -07:00
Mitchell Hashimoto
679f07605e
termio: detect child process exit
2023-03-18 18:58:34 -07:00
Mitchell Hashimoto
f02dc2f32f
handle horizontal scrolling for mouse reports
2023-03-17 19:24:18 -07:00
Mitchell Hashimoto
1b88f7e9ab
support mouse alt scroll (mode 1007)
...
This enables less and other older legacy programs to get mouse scroll
events
2023-03-17 19:10:08 -07:00
Mitchell Hashimoto
8b9a1d8530
linux: proper split shortcuts
2023-03-17 14:27:49 -07:00
Mitchell Hashimoto
f79d9ba3a7
fix regression where BEL is accepted to end OSC sequences
2023-03-17 14:18:34 -07:00
Mitchell Hashimoto
4b57a715b0
terminal: clean up duplicate states in parse table
2023-03-17 14:07:24 -07:00
Mitchell Hashimoto
38cd496c82
terminal: add missing anywhere states to ground, get rid of real state
2023-03-17 13:46:59 -07:00
Mitchell Hashimoto
f5e49e2989
apprt/gtk: copy the app id because we need to own it according to docs
2023-03-17 12:03:58 -07:00
Mitchell Hashimoto
afc1ac5321
apprt/gtk: add more debug logs about scale factors
2023-03-17 11:25:23 -07:00
Mitchell Hashimoto
54d6654d8b
terminal: selectLine can select last line with scrollback
...
We had incorrect logic around when the line you want to select is the
last line and it crashed. A new test case covers this.
2023-03-17 11:07:43 -07:00
Mitchell Hashimoto
b0cb46dab9
linux copy/paste defaults to ctrl+shift+c/v
2023-03-16 23:27:21 -07:00
Mitchell Hashimoto
20f9e98894
font/freetype: add a 1px border to each glyph in the texture atlas
2023-03-16 22:54:21 -07:00
Mitchell Hashimoto
0744e504e1
Use proper Linux default keybindings
...
These are just different from macOS. I've looked at various Linux
terminals and there seems to be some general consensus around this.
2023-03-16 21:59:17 -07:00
Mitchell Hashimoto
53d82d71a4
apprt/gtk: make compatible with GTK < 2.74
2023-03-16 16:38:00 -07:00
Mitchell Hashimoto
58d89b6bb3
apprt/glfw: add logging with error information when glfw init fails
2023-03-12 17:27:33 -07:00
Mitchell Hashimoto
3976da8149
macos: navigate splits directionally
2023-03-11 17:55:31 -08:00
Mitchell Hashimoto
04c38ef3b0
macos: change focus callback to use an enum so we can get other dirs
2023-03-11 17:44:00 -08:00
Mitchell Hashimoto
18cf0dc9fc
macos: put next/prev split focus into menu
2023-03-11 17:25:39 -08:00
Mitchell Hashimoto
b582691185
macos: hook up all the bindings so we're ready to handle focus event
2023-03-11 16:22:04 -08:00
Mitchell Hashimoto
f85c1c256c
macos: menu bar to split
2023-03-10 15:24:45 -08:00
Mitchell Hashimoto
0aadd19282
macos: close surface works
2023-03-10 14:44:33 -08:00
Mitchell Hashimoto
a265e7ce20
macos: take over menu bar, separate close and close window
2023-03-10 14:27:55 -08:00
Mitchell Hashimoto
dc6e5e1437
macos: fix bug where like... 5 terminals were being launched in the
...
background
2023-03-09 11:40:47 -08:00
Mitchell Hashimoto
6c857877e8
apprt/embedded: close surface callback
2023-03-08 15:05:15 -08:00
Mitchell Hashimoto
fa9ee0815f
apprt/embedded: newSplit callback
2023-03-08 14:56:50 -08:00
Mitchell Hashimoto
8ce6f349f8
input: new_split binding, can parse enums
2023-03-08 08:57:38 -08:00
Mitchell Hashimoto
15b7e7fcd7
termio: coalesce resize events
...
On macOS, we were seeing resize events dropped by child processes if
too many SIGWNCH events were generated.
2023-03-08 08:43:42 -08:00
Mitchell Hashimoto
b1a7baf394
metal: do not use setPurgeableState on MTLTexture/Buffer
...
The Metal system automatically will free hardware resources when no
other references exist (I believe) and this causes a crash if you close
a window while a render is in-flight.
2023-03-05 10:00:05 -08:00
Mitchell Hashimoto
0907da4eba
build: generate a version number, show in log on startup
2023-03-04 20:34:15 -08:00
Mitchell Hashimoto
cf519bcd75
Use procedurally generated sprites for cursors rather than shaders
2023-03-04 15:14:10 -08:00
Mitchell Hashimoto
25cf4eac43
don't need to set all sprite values in enum
2023-03-04 14:45:34 -08:00
Mitchell Hashimoto
bb48ebc9cb
fix wasm build
2023-03-04 14:26:56 -08:00
Mitchell Hashimoto
e882c21c04
disable double/tripclick highlighting if mouse reporting is enabled
2023-03-04 14:24:40 -08:00
Mitchell Hashimoto
d309007ec0
fix mouse position recording for x10 format
...
I don't know when this broke since I swear this was working before...
2023-03-04 14:17:12 -08:00
Mitchell Hashimoto
06035e2f95
can now use -Dfont-backend to choose the font backend to use
2023-03-04 10:50:13 -08:00
Mitchell Hashimoto
4e31f14f7b
renderer: reset font shaper buffer size on font size change
2023-03-03 14:35:26 -08:00
Mitchell Hashimoto
89d07fcd83
clear_history binding, default Cmd+K
2023-03-03 09:27:47 -08:00
Mitchell Hashimoto
7595ccf18f
build_config sets runtime to "none" if embedded
2023-03-03 09:09:44 -08:00
Mitchell Hashimoto
2a40bdabca
macos: load config file default file locations
2023-03-03 09:01:13 -08:00
Mitchell Hashimoto
d8537732dd
config: add functions to load from home and load configured
2023-03-03 08:57:21 -08:00
Mitchell Hashimoto
e775c434fb
add log when config file is successfully read
2023-03-02 21:22:37 -08:00
Mitchell Hashimoto
4ececc8923
screen: resize rows should use old cols value
2023-03-02 13:46:58 -08:00
Mitchell Hashimoto
5573df4947
terminal: erase display complete needs to reset row wrap state
2023-03-02 13:20:06 -08:00
Mitchell Hashimoto
e28d20a05d
disable the auto balance config by default, add some padding
...
This makes resizing too jittery which I think is a worse out of the box
experience than the padding.
2023-03-02 12:55:46 -08:00
Mitchell Hashimoto
ba96a2c023
screen: adding cols doesn't mess with the viewport
...
This was untested anyways, and the result was bugs!
2023-03-01 22:14:19 -08:00
Mitchell Hashimoto
28378a350d
screen: shrinking cols trims trailing blank lines
2023-03-01 22:01:42 -08:00
Mitchell Hashimoto
05fe2a83b1
terminal: erase display below should unwrap soft wrapped state
2023-03-01 21:30:31 -08:00
Mitchell Hashimoto
56cb1dd55b
screen: correct cursor position with scrollback and less cols
2023-03-01 21:06:33 -08:00
Mitchell Hashimoto
979dc5a439
screen: redo resizing to less columns
...
This is more performant (prefers fast copies if no wrapping) and keeps
track of the cursor more accurately.
2023-03-01 20:59:35 -08:00