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
Mitchell Hashimoto
3b586c39c5
screen: grow cols before rows to handle reflow (tested)
2023-03-01 19:45:39 -08:00
Mitchell Hashimoto
74f0e38b57
screen: only trim if we're not wrapping on col growing
2023-03-01 17:42:46 -08:00
Mitchell Hashimoto
9a4a138da0
screen: don't wrap empty-char stylized cells on shrinking cols
2023-03-01 17:34:17 -08:00
Mitchell Hashimoto
31ac3ec7ba
screen: when expanding cols, broadcast empty styled cells
2023-03-01 17:24:24 -08:00
Mitchell Hashimoto
89138cf7e3
screen: don't trim blank lines if rows aren't changing
2023-03-01 17:09:57 -08:00
Mitchell Hashimoto
b4d8419feb
screen: trim trailing no-character cells when rows is changing
...
This matches Terminal.app, and makes it so the `ESC [ J` doesn't
generate scrollback on rows change.
2023-03-01 17:07:07 -08:00
Mitchell Hashimoto
d4057522ee
screen: resize more rows preserves soft wrapped flag
2023-03-01 09:18:26 -08:00
Mitchell Hashimoto
5f9ab91466
screen: fix issue with resizing w/ more cols, reflow, and scrollback
2023-03-01 09:08:08 -08:00
Mitchell Hashimoto
1970a84960
screen: when resizing and trimming scrollback, have to offset cursor Y
...
When the scrollback is trimmed off the top, the y stops moving. This
would cause an assertion failure because y could be greater than the row
count! The test case tests this.
2023-02-28 22:28:27 -08:00
Mitchell Hashimoto
87e0f5589f
screen clone should not make full requested height "written"
...
Previously, the screen clone would incidentally mark the full height as
"written" which would cause resize to create scrollback because it was
trying to preserve prior rows. A clone should not "write" any data. This
modifies the clone operation to create a screen with the correct height
but only copy data actually written.
2023-02-28 17:10:28 -08:00
Mitchell Hashimoto
38060978e2
termio/exec: don't pass pointer to stack var
2023-02-28 11:07:03 -08:00
Mitchell Hashimoto
ce86c64b42
update zig, src for loops
2023-02-27 21:46:42 -08:00
Mitchell Hashimoto
935486ca30
Merge pull request #79 from mitchellh/flatpak
...
Flatpak Package for Linux
2023-02-27 15:29:52 -08:00
Mitchell Hashimoto
a8025f6ec2
termio: env should not freed because arena gets it
2023-02-27 11:55:04 -08:00
Mitchell Hashimoto
83a1d783b1
termio: implement kill command for flatpak
2023-02-27 11:44:18 -08:00
Mitchell Hashimoto
52d22a140c
termio: exec uses new flatpak command, no more host-spawn
2023-02-27 11:26:31 -08:00
Mitchell Hashimoto
630374060d
passwd uses new FlatpakHostCommand
2023-02-27 11:02:59 -08:00
Mitchell Hashimoto
f64d871847
os: FlatpakHostCommand uses thread with its own event loop
2023-02-27 10:18:56 -08:00
Mitchell Hashimoto
1c3d775d90
apprt/embedded: ignore size callbacks that change nothing
2023-02-26 17:44:45 -08:00
Mitchell Hashimoto
7962bd061b
metal: use the screen size reported in the callback to resize
...
We were previously using the bounds which might be updated later if the
view is in the middle of an animation. Just use the size that represents
our target state.
2023-02-26 17:44:14 -08:00
Mitchell Hashimoto
f89d202b0d
flatpak.HostCommand wip
2023-02-26 10:28:54 -08:00
Mitchell Hashimoto
fc3802e632
termio: use host-spawn for pty
2023-02-25 22:36:20 -08:00
Mitchell Hashimoto
f012d31ed5
passwd entry in flatpak needs to trim newlines
2023-02-25 22:25:17 -08:00
Mitchell Hashimoto
6b23dbb169
flatpak: use host-spawn to find default shell
2023-02-25 21:56:51 -08:00
Mitchell Hashimoto
0a041957f1
os: add flatpak detection
2023-02-25 21:20:48 -08:00
Mitchell Hashimoto
ec956debb7
Command/Pty work better with Flatpak but not 100% yet
2023-02-25 21:19:57 -08:00
Mitchell Hashimoto
d1a1ba4cb6
output runtime at startup
2023-02-25 15:09:26 -08:00
Mitchell Hashimoto
227f6eb4f1
gtk: handle <tab> so it doesn't move focus
2023-02-25 14:57:34 -08:00
Mitchell Hashimoto
35af0ef362
gtk: previous/next tab wraps
2023-02-25 10:53:15 -08:00
Mitchell Hashimoto
6c6a3d6a5d
"goto_tab" key binding to jump to a specific tab, defaults to Super+N
...
The apprt surface must implement `gotoTab` to make this work. This is
only implemented in GTK for now.
2023-02-25 10:48:38 -08:00
Mitchell Hashimoto
7a0411d65a
apprt: move newTab to a surface callback rather than app
2023-02-25 10:38:19 -08:00
Mitchell Hashimoto
e4c91d2328
don't require runtimes to implement all callbacks
2023-02-25 10:32:27 -08:00
Mitchell Hashimoto
aa2d3720b6
gtk: previous/next tab bindings
2023-02-25 10:29:58 -08:00
Mitchell Hashimoto
65b3c7ca86
gtk: convert keyvals back into unmodified keyvals for shifted ops
2023-02-25 10:11:57 -08:00
Mitchell Hashimoto
cbebbd78b3
gtk: re-enable closing on no windows
2023-02-24 17:51:10 -08:00
Mitchell Hashimoto
c80270ff50
gtk: close surface works
2023-02-24 17:50:20 -08:00
Mitchell Hashimoto
a1a754530f
gtk: tab reordering, hide tab bar with one tab, etc.
2023-02-24 16:13:15 -08:00
Mitchell Hashimoto
ad11ec145c
gtk: new tab keyboard shortcut works
2023-02-24 16:08:02 -08:00
Mitchell Hashimoto
ac1c961c4e
gtk: close tab button
2023-02-24 15:54:36 -08:00
Mitchell Hashimoto
fface4a6b3
gtk: add tab works
2023-02-24 15:19:57 -08:00