summaryrefslogtreecommitdiff
path: root/src/hist_view.h
diff options
context:
space:
mode:
authorBerke Güzel <wenekar1@gmail.com>2026-10-13 14:46:44 +0300
committerBerke Güzel <wenekar1@gmail.com>2026-10-13 14:46:44 +0300
commit1e69599900a753e2d7275d7ba714202b7d9c843e (patch)
tree13416f651319145aa5dbdd85b9947bec4858b366 /src/hist_view.h
parent5ab6b560e8528c27ba934b90f94b1828b7771e27 (diff)
Eliminate pen style and history stream parameter smuggling
- Introduce struct text_pen bundling (fg, bg, sl) across screen and core - Reduce text_append from 9 to 7 parameters - Reduce text_commit from 8 to 6 parameters - Reduce hist_runs_add_pen from 5 to 3 parameters - Reduce sc_text_ascii and sc_ascii_fast from 6 to 4 parameters - Remove unused fg, bg parameters from mark_row_blank - Introduce struct hist_stream_state in src/hist.c, reducing stream_lines from 9 to 5 params and lf_rows from 10 to 6 params - Introduce struct hist_view_pos in src/hist_view.h, reducing term_hist_view_row_pos from 9 to 7 params
Diffstat (limited to 'src/hist_view.h')
-rw-r--r--src/hist_view.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/hist_view.h b/src/hist_view.h
index 0214c0b..d09b5d0 100644
--- a/src/hist_view.h
+++ b/src/hist_view.h
@@ -49,12 +49,18 @@ void term_hist_view_scroll_to(struct hist_view *v, const struct hist *h, int col
struct line_pos screen_top, int offset);
void term_hist_view_reset_bottom(struct hist_view *v);
+struct hist_view_pos {
+ uint64_t id;
+ int seg;
+ int screen_y;
+};
+
/* Clamp an evicted anchor. This does not update the index on the write path. */
void term_hist_view_note_push(struct hist_view *v, const struct hist *h, int cols);
void term_hist_view_rewrap(struct hist_view *v, const struct hist *h, int cols);
bool term_hist_view_row_pos(const struct hist_view *v, const struct hist *h, int cols,
int screen_rows, struct line_pos screen_top, int y,
- uint64_t *out_id, int *out_seg, int *out_screen_y);
+ struct hist_view_pos *pos);
#endif