diff --git a/extract.c b/extract.c index b119bc3f..663f94ef 100644 --- a/extract.c +++ b/extract.c @@ -84,8 +84,8 @@ ensure_size(struct extraction_context *ctx, size_t additional_chars) } bool -extract_one(struct terminal *term, struct row *row, struct cell *cell, - int col, void *context) +extract_one(const struct terminal *term, const struct row *row, + const struct cell *cell, int col, void *context) { struct extraction_context *ctx = context; diff --git a/extract.h b/extract.h index 2219780d..0b3693d2 100644 --- a/extract.h +++ b/extract.h @@ -10,8 +10,8 @@ struct extraction_context; struct extraction_context *extract_begin(enum selection_kind kind); bool extract_one( - struct terminal *term, struct row *row, struct cell *cell, int col, - void *context); + const struct terminal *term, const struct row *row, const struct cell *cell, + int col, void *context); bool extract_finish( struct extraction_context *context, char **text, size_t *len); diff --git a/terminal.h b/terminal.h index 4d5f717b..fece4b50 100644 --- a/terminal.h +++ b/terminal.h @@ -542,3 +542,6 @@ void term_disable_app_sync_updates(struct terminal *term); enum term_surface term_surface_kind( const struct terminal *term, const struct wl_surface *surface); + +bool term_scrollback_to_text(const struct terminal *term, wchar_t **text); +bool term_view_to_text(const struct terminal *term, wchar_t **text);