5613 Commits

Author SHA1 Message Date
Mitchell Hashimoto
72c1b00b0b pkg/sentry: uuid string is null-terminated 2024-08-31 14:05:55 -07:00
Mitchell Hashimoto
920a1051e5 crash: discard envelopes that do not contain a crash 2024-08-31 12:24:11 -07:00
Mitchell Hashimoto
f930cf0b8f move crash init to crash package 2024-08-31 11:12:40 -07:00
Mitchell Hashimoto
f1aea10a84 cli/version: don't parse any args
Fixes #2166
2024-08-31 10:39:22 -07:00
Mitchell Hashimoto
f7d1fb8ba0 Merge pull request #2167 from qwerasd205/insert-delete-lines-fix
Fix `insertLines` and `deleteLines`
2024-08-31 10:36:09 -07:00
Mitchell Hashimoto
9d08ed32ee terminal: make error sets more explicit, capture explicit errors 2024-08-31 10:31:38 -07:00
Mitchell Hashimoto
17db317916 build: build without Git, tag version as dev with 0 SHA
Fixes #2170

Example now: `info: ghostty version=0.1.0-dev+0000000`
2024-08-31 09:43:30 -07:00
Qwerasd
3807ee34c1 terminal: handle clonePartialRowFrom errors in insert/deleteLines
Handle `clonePartialRowFrom` errors in `insertLines` and `deleteLines`
by adjusting page capacity. To do this, I've rewritten both functions
with a new way of iterating rows by moving a tracked pin up/down.

Benchmarks seem to indicate that this has no effect on performance.
2024-08-30 13:45:18 -04:00
Qwerasd
daa1755793 terminal/page: discriminate cloneFrom errors
Doing this makes it possible to appropriately handle a failed cloneFrom
operation by adjusting the correct part of the page capacity accordingly
2024-08-30 13:45:18 -04:00
Qwerasd
3bc2dbfa72 RefCountedSet: make lookup public 2024-08-30 13:30:40 -04:00
Mitchell Hashimoto
8ba97eb745 crash: sentry envelope parsing 2024-08-30 10:16:44 -07:00
Mitchell Hashimoto
6f1a062b6c timers for start times for later 2024-08-29 15:19:21 -07:00
Mitchell Hashimoto
d66178718c pkg/sentry: build in unwinder 2024-08-28 21:43:18 -07:00
Mitchell Hashimoto
1f2d4faa84 sentry: set tags after init 2024-08-28 21:43:18 -07:00
Mitchell Hashimoto
13f1752836 build: don't include sentry on windows 2024-08-28 21:43:18 -07:00
Mitchell Hashimoto
33e9bc14ef don't send empty envelopes 2024-08-28 21:43:18 -07:00
Mitchell Hashimoto
2abdf291f4 implement sentry transport to write crash reports to XDG_STATE_HOME 2024-08-28 21:43:18 -07:00
Mitchell Hashimoto
e029490535 sentry init uses proper cache dir, sets tags 2024-08-28 21:43:18 -07:00
Mitchell Hashimoto
7f143d9df4 os: add xdg cache dir function 2024-08-28 21:43:17 -07:00
Mitchell Hashimoto
adbb394e44 initialize sentry on startup 2024-08-28 21:43:17 -07:00
Erlend Lind Madsen
e3881c4ffc avoid escape characters by using a multiline string
lets concat url_scheme in combo with a multiline (thanks @qwerasd205)

regex: url_scheme -> url_schemes
2024-08-28 23:13:13 +02:00
Mitchell Hashimoto
19c9039494 Merge pull request #2159 from cryptocode/cc-colorpicker-hex
Inspector: change color picker to use hex values
2024-08-28 10:01:41 -07:00
Mitchell Hashimoto
42a23f2d3d Merge pull request #2156 from qwerasd205/hyperlink-fixes
Various fixes for hyperlink instability
2024-08-28 10:01:19 -07:00
Mitchell Hashimoto
df09a37597 terminal: tests for same page clone with hyperlinks 2024-08-28 09:58:36 -07:00
Mitchell Hashimoto
6a2d57edfd terminal: cursorCopy has option to not copy hyperlink 2024-08-28 09:41:57 -07:00
cryptocode
dbe6d6c29c Inspector: change color picker to use hex values
The inspector currently show colors as decimal r,g,b values. With this change,
the hex format is used instead.

The motivation for this is that references to color typically use the hex format. One example
is the palette definitions in a color scheme. Using the inspector/cell picker to help
create and debug color themes should be more convenient after this change.

If there's a usecase for the decimal format, we could add a config option or maybe a switch
in the inspector UI.
2024-08-28 17:55:59 +02:00
Justin Su
f8f289e8b9 config: document left/right values for macos-option-as-alt 2024-08-27 20:36:29 -04:00
Mitchell Hashimoto
89e16ebef5 Revert "Merge pull request #2153 from ghostty-org/metal-cursor"
This reverts commit ee3eb8fe3db53b8896def28cb79c8637cd9ad1fc, reversing
changes made to 3746fed0b92a8bf69862f4832840597a4bf2ffd8.
2024-08-27 09:31:12 -07:00
Qwerasd
a3fb96f543 this should be a doc comment 2024-08-27 01:23:29 -04:00
Qwerasd
ff0c1141da renderer: add updateFrame critical region timings for dev benchmark 2024-08-27 01:23:29 -04:00
Qwerasd
5714c2feed PageList: refactor clone to avoid excess work
Also avoids leaving content in out-of-bounds rows, since it doesn't copy
the content to them in the first place. Over all, just a lot cleaner.
2024-08-27 01:23:29 -04:00
Qwerasd
38bb9b40a6 Terminal: release hyperlink before copying cursor when switching screen
To avoid an unnecessary copy.
2024-08-27 01:07:29 -04:00
Qwerasd
170f55aa84 Screen: update cursorCopy to handle hyperlink state 2024-08-27 01:07:29 -04:00
Qwerasd
cb1cb3526a test(Screen): add failing tests for cursorCopy hyperlink handling 2024-08-27 01:07:29 -04:00
Qwerasd
d43d5b26ee fix(terminal): avoid trying to clone bad managed memory in reflow
If we call `moveLastRowToNewPage` at any point because we failed to copy
some managed memory, it tries to copy managed memory that hasn't been
cloned yet when moving our progress to a new page.

Avoid this by setting our content tag, hyperlink flag, and style id to
indicate no managed memory is present on the cell.
2024-08-27 01:01:31 -04:00
Qwerasd
a6992baa30 fix(terminal): don't MOVE hyperlinks in clonePartialRowFrom 2024-08-27 01:01:31 -04:00
Qwerasd
30bba9bf06 terminal: move refcount responsibility out of setHyperlink
avoids double counting in several places
2024-08-27 01:01:31 -04:00
Mitchell Hashimoto
bdcc21942d config: font-synthetic-style to enable/disable synthetic styles
This adds a new configuration "font-synthetic-style" to enable or
disable synthetic styles. This is different from "font-style-*" which
specifies a named style or disables a style completely.

Instead, "font-synthetic-style" will disable only the creation of
synthetic styles in the case a font does not support a given style.
This is useful for users who want to obviously know when a font doesn't
support a given style or a user who wants to explicitly only use the
styles that were designed by the font designer.

The default value is to enable all synthetic styles.
2024-08-26 20:52:34 -07:00
Mitchell Hashimoto
80327402b8 Merge pull request #2120 from edmz/last_tab
macos: jump to last_tab
2024-08-26 20:22:52 -07:00
Mitchell Hashimoto
512b24818a apprt/gtk: fix int cast 2024-08-26 20:16:23 -07:00
Mitchell Hashimoto
d7e7f55956 apprt/gtk: support last_tab 2024-08-26 20:13:28 -07:00
Mitchell Hashimoto
3d1ee3daa8 apprt: make gotoTab handle all tab movements 2024-08-26 20:13:27 -07:00
Mitchell Hashimoto
02c6fb5a8c config: remove the super+0 binding for last_tab 2024-08-26 19:59:20 -07:00
Mitchell Hashimoto
788c1e92b8 renderer/metal: cursor should be drawn on top of fg cells
This is done by moving it from list 0 in the pool to list `rows`.
2024-08-26 19:55:12 -07:00
Nihaal Sangha
a4b1fc9dba Add space to commentstring in Vim plugin
See https://github.com/vim/vim/pull/14843.
2024-08-26 21:38:07 +01:00
Mitchell Hashimoto
b40b6c3438 config: clarify window-width/height behavior 2024-08-26 10:16:39 -07:00
Mitchell Hashimoto
18419d3589 Clamp initial window size configurations to screen size
Fixes #2145
2024-08-26 10:09:05 -07:00
Mitchell Hashimoto
c1e978e33d font/coretext: tweak synthetic bold amount to be slightly lighter 2024-08-26 09:37:01 -07:00
Mitchell Hashimoto
915ec029ee font/freetype: synthetic bold 2024-08-25 09:51:09 -07:00
Mitchell Hashimoto
5f0daa23b9 font/freetype: synthetic italic 2024-08-24 21:03:54 -07:00