Jeremy Soller
4bde45bcdc
Improve scrollbar
2024-01-10 16:17:52 -07:00
Mohammad AlSaleh
4ec3e5b2f3
Consider stretch/weight settings advanced and hide them with a toggle
...
Signed-off-by: Mohammad AlSaleh <CE.Mohammad.AlSaleh@gmail.com>
2024-01-09 17:18:04 -07:00
Mohammad AlSaleh
59804dc8ab
Handle the case where configured font name is not available
...
This can happen if configured font name is uninstalled for example.
Pick the first font name available if that's the case.
Signed-off-by: Mohammad AlSaleh <CE.Mohammad.AlSaleh@gmail.com>
2024-01-09 17:18:04 -07:00
Mohammad AlSaleh
5eba6eb4d6
Configurable font stretch, font weight, and bold font weight
...
* Store a font name => font faces map
* Only list font names that have `NORMAL` and `BOLD` faces with
`Normal` stretch. This will give us defaults and fall-backs that are
guaranteed to always exist.
* Filter by stretch first, with `Normal` chosen as the always existing
default.
* Then only list font weights supported by the font name stretch
selected, for the normal and bold cases.
* When changing the font name selected, the stretch/weight options
will stay the same if supported by the new font name, or revert to
the always existing fall-backs.
Signed-off-by: Mohammad AlSaleh <CE.Mohammad.AlSaleh@gmail.com>
2024-01-09 17:18:04 -07:00
Jeremy Soller
c74d5d6f56
Remove extra items from header
2024-01-09 13:48:12 -07:00
Jeremy Soller
db738371ac
Add menu
2024-01-09 10:16:32 -07:00
Jeremy Soller
556c32e33f
Use flag to determine when terminal needs update, only update once before draw
2024-01-04 14:25:31 -07:00
Mohammad AlSaleh
ff5c46cd19
Move zoom_adj to App so it doesn't persist between runs
...
Addresses comments from #22 .
Signed-off-by: Mohammad AlSaleh <CE.Mohammad.AlSaleh@gmail.com>
2024-01-03 11:29:49 -07:00
Mohammad AlSaleh
1c8a058e82
Implement ZoomIn/ZoomOut/ZoomReset with configurable step
...
Implements #14 .
Signed-off-by: Mohammad AlSaleh <CE.Mohammad.AlSaleh@gmail.com>
2024-01-03 08:31:41 -07:00
Jeremy Soller
1e0ce2b7e7
Revert "Check if a Config message was handled before creating first tab"
...
This reverts commit 7b152bd218 .
2024-01-02 13:04:06 -07:00
Mohammad AlSaleh
7b152bd218
Check if a Config message was handled before creating first tab
...
In `Application::subscription()`, `subscription::channel()` would
create a dead terminal tab if it was called before
`config_subscription()`.
Then `subscription::channel()` would be triggered a second time
creating a second terminal tab that works.
This commit fixes this issue by only creating the first terminal
tab after a `Message::Config{}` was handled, i.e. after
`config_subscription()` was run.
Signed-off-by: Mohammad AlSaleh <CE.Mohammad.AlSaleh@gmail.com>
2024-01-02 13:01:10 -07:00
Mohammad AlSaleh
9ba9f0fb6e
Set configuration on new-tab terminals
...
Non-default settings wouldn't apply to new-tab terminals otherwise.
Signed-off-by: Mohammad AlSaleh <CE.Mohammad.AlSaleh@gmail.com>
2024-01-02 13:00:46 -07:00
Mohammad AlSaleh
fb2b251a33
Update to alacritty_terminal v0.20
...
Signed-off-by: Mohammad AlSaleh <CE.Mohammad.AlSaleh@gmail.com>
2024-01-02 10:29:11 -07:00
Jeremy Soller
ccd507594b
Improve look of context menu checkbox
2023-12-22 16:08:43 -07:00
Jeremy Soller
37acfe186e
Add config for showing header bar
2023-12-22 15:40:10 -07:00
Jeremy Soller
af8a23eb62
Fix context menu remaining open
2023-12-22 15:16:40 -07:00
Jeremy Soller
2a4d9f0d28
Implement select all
2023-12-22 15:08:24 -07:00
Jeremy Soller
40c871bcf3
Add context menu
2023-12-22 15:00:50 -07:00
Jeremy Soller
44a5d80740
Add config, translations, settings UI
2023-12-22 14:31:01 -07:00
Jeremy Soller
adb2d2ed3d
Make Ctrl+Shift+T open new tab, expand tab bar width
2023-12-22 11:09:31 -07:00
Jeremy Soller
4ffad110b6
Add copy/paste
2023-12-21 22:13:17 -07:00
Jeremy Soller
6cad69b414
Adjust to use COSMIC colors
2023-12-21 21:22:24 -07:00
Jeremy Soller
9783dd4e55
Fix background of tabs
2023-12-21 12:05:05 -07:00
Jeremy Soller
2193003ada
Use 85% opacity by default
2023-12-21 11:57:52 -07:00
Jeremy Soller
a46c5e8219
Remove padding
2023-12-21 10:29:50 -07:00
Jeremy Soller
ccec8e813b
Hide tab bar when only one tab, put new tab button in header
2023-12-21 10:19:16 -07:00
Jeremy Soller
1cbcc1e795
Share terminal config between tabs
2023-12-21 10:14:57 -07:00
Jeremy Soller
51818a34f5
Set up environmental variables for terminal
2023-12-21 10:11:11 -07:00
Jeremy Soller
8008d0d2b0
Fix warnings
2023-12-21 09:53:31 -07:00
Jeremy Soller
8ec9fd22c9
Use OneHalfDark theme by default, do not have title when no tab open
2023-12-21 09:49:32 -07:00
Jeremy Soller
a83c593a24
Add OneHalfDark theme and script for testing theme
2023-12-21 09:44:44 -07:00
Jeremy Soller
07942c6f86
Remove all reference to scale factor
2023-12-20 19:54:18 -07:00
Jeremy Soller
7f181d0e64
Scroll on text input
2023-12-20 15:01:47 -07:00
Jeremy Soller
f9f7904117
Implement scrollbar
2023-12-20 14:57:44 -07:00
Jeremy Soller
ee3cc21ece
Add scrollbar and scrolling
2023-12-20 14:26:41 -07:00
Jeremy Soller
f6118a5cee
Convert to libcosmic
2023-12-20 13:31:10 -07:00
Jeremy Soller
2b0548de46
Fix ctrl characters
2023-12-18 13:57:38 -07:00
Jeremy Soller
65b613e6e4
Add glyphon renderer
2023-12-18 13:54:08 -07:00
Jeremy Soller
f2d716ea7b
Allow setting title and add zero width text to buffer
2023-12-18 11:53:56 -07:00
Jeremy Soller
b8912337f8
Add arrow keys and home/end
2023-12-18 09:54:23 -07:00
Jeremy Soller
09a153bc8e
Optimize drawing and draw cursor
2023-12-18 09:41:00 -07:00
Jeremy Soller
dd823c182d
Fix cell height
2023-12-17 22:54:14 -07:00
Jeremy Soller
bc5c7f3a48
Implement colors and resizing
2023-12-17 22:51:50 -07:00
Jeremy Soller
2fbec2db8f
Render with winit/softbuffer
2023-12-17 17:49:39 -07:00
Jeremy Soller
518796396d
Add simple terminal test implementation
2023-12-17 11:53:42 -07:00