summaryrefslogtreecommitdiff
path: root/tests/extern/kitty/screen_bridge.c
diff options
context:
space:
mode:
authorBerke Güzel <wenekar1@gmail.com>2026-10-15 13:04:32 +0300
committerBerke Güzel <wenekar1@gmail.com>2026-10-15 13:04:32 +0300
commitbdaedce69b17b654bd0060579dd9b9ff120009b5 (patch)
tree0e9cd8597652263a96c48ba678fb0b66e1fc131b /tests/extern/kitty/screen_bridge.c
parentba75c8b0a1bba03ad92c53375432f122ddb4cb98 (diff)
parentdcebf9c7f954a55350b68d0ead1935612c4e2e05 (diff)
Merge branch 'wt/rename' into api-hardening
# Conflicts: # README.md
Diffstat (limited to 'tests/extern/kitty/screen_bridge.c')
-rw-r--r--tests/extern/kitty/screen_bridge.c72
1 files changed, 36 insertions, 36 deletions
diff --git a/tests/extern/kitty/screen_bridge.c b/tests/extern/kitty/screen_bridge.c
index 50f86a7..c307c1a 100644
--- a/tests/extern/kitty/screen_bridge.c
+++ b/tests/extern/kitty/screen_bridge.c
@@ -1,87 +1,87 @@
/* Test-only entry points for the Kitty screen wrapper in screen.py.
* Python calls only these functions, so it needs no struct layouts other
- * than the public struct term_cell. The kitty_screen_* accessors read
- * properties that term.h does not expose. They compile against the current
+ * than the public struct wsap_vtcore_cell. The kitty_screen_* accessors read
+ * properties that wsap_vtcore.h does not expose. They compile against the current
* terminal layout rather than duplicating byte offsets in Python. */
#include "internal.h"
#include "screen.h"
typedef void (*kitty_reply_fn)(void *ud, const char *bytes, size_t len);
-struct term *kitty_term_new(int cols, int rows, kitty_reply_fn reply, void *ud)
+struct wsap_vtcore *kitty_term_new(int cols, int rows, kitty_reply_fn reply, void *ud)
{
- return term_new(&(struct term_options){
+ return wsap_vtcore_new(&(struct wsap_vtcore_options){
.size = { .x = cols, .y = rows },
.callbacks = { .ud = ud, .reply = reply },
});
}
/* One snapshot serves every cell read. */
-static struct term_snapshot *snap;
+static struct wsap_vtcore_snapshot *snap;
-void kitty_term_free(struct term *t)
+void kitty_term_free(struct wsap_vtcore *t)
{
/* A new terminal can get the address of the freed one. The snapshot
* would then keep its rows, so it goes away too. */
- term_snapshot_free(snap);
+ wsap_vtcore_snapshot_free(snap);
snap = NULL;
- term_free(t);
+ wsap_vtcore_free(t);
}
-void kitty_term_write(struct term *t, const char *bytes, size_t len)
+void kitty_term_write(struct wsap_vtcore *t, const char *bytes, size_t len)
{
- term_feed(t, bytes, len, 0);
+ wsap_vtcore_feed(t, bytes, len, 0);
}
-bool kitty_term_resize(struct term *t, int cols, int rows)
+bool kitty_term_resize(struct wsap_vtcore *t, int cols, int rows)
{
- return term_resize(t, (struct term_vector2i){ .x = cols, .y = rows });
+ return wsap_vtcore_resize(t, (struct wsap_vtcore_vector2i){ .x = cols, .y = rows });
}
-int kitty_term_cols(struct term *t) { return term_size(t).x; }
-int kitty_term_rows(struct term *t) { return term_size(t).y; }
-int kitty_term_cursor_x(struct term *t) { return term_cursor(t).pos.x; }
-int kitty_term_cursor_y(struct term *t) { return term_cursor(t).pos.y; }
-int kitty_term_cursor_style(struct term *t) { return (int)term_cursor(t).style; }
-bool kitty_term_cursor_blink(struct term *t) { return term_cursor(t).blink; }
-bool kitty_term_application_cursor(struct term *t) { return term_modes(t).app_cursor; }
+int kitty_term_cols(struct wsap_vtcore *t) { return wsap_vtcore_size(t).x; }
+int kitty_term_rows(struct wsap_vtcore *t) { return wsap_vtcore_size(t).y; }
+int kitty_term_cursor_x(struct wsap_vtcore *t) { return wsap_vtcore_cursor(t).pos.x; }
+int kitty_term_cursor_y(struct wsap_vtcore *t) { return wsap_vtcore_cursor(t).pos.y; }
+int kitty_term_cursor_style(struct wsap_vtcore *t) { return (int)wsap_vtcore_cursor(t).style; }
+bool kitty_term_cursor_blink(struct wsap_vtcore *t) { return wsap_vtcore_cursor(t).blink; }
+bool kitty_term_application_cursor(struct wsap_vtcore *t) { return wsap_vtcore_modes(t).app_cursor; }
/* Update the snapshot from the live screen, as a renderer reads it.
* Returns NULL when the cell is out of range or memory runs out. */
-static struct term_snapshot *cell_snapshot(struct term *t, int col, int row)
+static struct wsap_vtcore_snapshot *cell_snapshot(struct wsap_vtcore *t, int col, int row)
{
- struct term_vector2i size = term_size(t);
+ struct wsap_vtcore_vector2i size = wsap_vtcore_size(t);
if (col < 0 || col >= size.x || row < 0 || row >= size.y)
return NULL;
if (!snap)
- snap = term_snapshot_new();
- term_scroll_to(t, 0);
- if (!snap || !term_snapshot_update(snap, t))
+ snap = wsap_vtcore_snapshot_new();
+ wsap_vtcore_scroll_to(t, 0);
+ if (!snap || !wsap_vtcore_snapshot_update(snap, t))
return NULL;
return snap;
}
-bool kitty_term_cell(struct term *t, int col, int row, struct term_cell *out)
+bool kitty_term_cell(struct wsap_vtcore *t, int col, int row, struct wsap_vtcore_cell *out)
{
- struct term_snapshot *s = cell_snapshot(t, col, row);
+ struct wsap_vtcore_snapshot *s = cell_snapshot(t, col, row);
if (!s)
return false;
- *out = term_snapshot_row(s, row)[col];
+ *out = wsap_vtcore_snapshot_row(s, row)[col];
return true;
}
/* The code points of a cell's text: one, or a whole grapheme cluster.
* Returns the number of code points and writes at most cap of them. */
-int kitty_term_cell_text(struct term *t, int col, int row, uint32_t *cps, int cap)
+int kitty_term_cell_text(struct wsap_vtcore *t, int col, int row, uint32_t *cps, int cap)
{
- struct term_snapshot *s = cell_snapshot(t, col, row);
+ struct wsap_vtcore_snapshot *s = cell_snapshot(t, col, row);
if (!s)
return 0;
- return term_snapshot_cluster(s, term_snapshot_row(s, row)[col].text, cps, cap);
+ return wsap_vtcore_snapshot_cluster(s, wsap_vtcore_snapshot_row(s, row)[col].text, cps, cap);
}
#define PROPERTY(type, name) \
- type kitty_screen_##name(struct term *t) { return t->name; }
+ type kitty_screen_##name(struct wsap_vtcore *t) { return t->name; }
PROPERTY(int, scroll_top)
PROPERTY(int, scroll_bottom)
@@ -94,20 +94,20 @@ PROPERTY(bool, strike)
PROPERTY(bool, inverse)
PROPERTY(uint8_t, underline)
-int kitty_screen_row_length(struct term *t, int row)
+int kitty_screen_row_length(struct wsap_vtcore *t, int row)
{
if (!t || row < 0 || row >= t->rows) return 0;
- const struct srow *r = term_row(t, row);
+ const struct srow *r = wsap_vtcore_row(t, row);
return r ? (int)r->len : 0;
}
/* A tab stores a marker cell that a snapshot shows as a blank. Kitty keeps
* the tab in its line text, so the wrapper asks for the marker. */
-bool kitty_screen_cell_is_tab(struct term *t, int col, int row)
+bool kitty_screen_cell_is_tab(struct wsap_vtcore *t, int col, int row)
{
if (col < 0 || col >= t->cols || row < 0 || row >= t->rows)
return false;
- term_scroll_to(t, 0);
- const struct cell *cells = term_screen_view_row(t, row);
+ wsap_vtcore_scroll_to(t, 0);
+ const struct cell *cells = wsap_vtcore_screen_view_row(t, row);
return cells && cells[col].c == '\t';
}