Mattias Eriksson
1940f2c056
Support splitting of terminals using a Pane Grid
2024-01-17 16:09:56 +01:00
Jeremy Soller
7f37ede453
Allow specifying startup command with -e, --command, or --
2024-01-14 12:33:28 -07:00
Mohammad AlSaleh
5159b130f9
Fix broken UI if font not found at startup
...
Change was not reflected in settings.
Noticed while investigating #46 .
Signed-off-by: Mohammad AlSaleh <CE.Mohammad.AlSaleh@gmail.com>
2024-01-12 12:42:51 -07:00
Mohammad AlSaleh
e56e582f90
Add option for setting dim font weight
...
Allows users to set this to a value lower than default font weight.
Signed-off-by: Mohammad AlSaleh <CE.Mohammad.AlSaleh@gmail.com>
2024-01-12 10:40:10 -07:00
Jeremy Soller
9b2ab1202a
Implement search
2024-01-11 14:31:20 -07:00
Jeremy Soller
928269a239
Add find stub
2024-01-11 13:20:16 -07:00
Jeremy Soller
2a679ab96f
Fix warnings
2024-01-11 11:40:22 -07:00
Jeremy Soller
3f09e17156
Normalize scrollbar style with figma designs
2024-01-11 11:33:39 -07:00
Mohammad AlSaleh
b161db94d1
Add a disabled-by-default toggle for using bright colors for bold text
...
Signed-off-by: Mohammad AlSaleh <CE.Mohammad.AlSaleh@gmail.com>
2024-01-11 09:58:18 -07:00
Mohammad AlSaleh
9188f3c0bf
Use log::warn!() instead of println!()
...
This causes a functional change that may not be obvious.
When running `cosmic-term` from a shell prompt as a detached
process, `stdout`/`stderr` descriptors get deleted, and a `println!()`
message would take the `cosmic-term` process down.
No such an issue with log messages.
This can be tested by running `htop` then exiting the tool, which
would trigger a "TODO: CursorBlinkingChange" message.
Signed-off-by: Mohammad AlSaleh <CE.Mohammad.AlSaleh@gmail.com>
2024-01-10 17:07:32 -07:00
Mohammad AlSaleh
9b185c9610
Sleep for 50ms before sending first Message::TabNew
...
This fixes the issue of two tabs being created at startup.
Should fix #36 .
Signed-off-by: Mohammad AlSaleh <CE.Mohammad.AlSaleh@gmail.com>
2024-01-10 17:07:32 -07:00
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