2 6ab857d5 2024-01-23 op * Copyright (c) 2021 Omar Polo <op@omarpolo.com>
4 6ab857d5 2024-01-23 op * Permission to use, copy, modify, and distribute this software for any
5 6ab857d5 2024-01-23 op * purpose with or without fee is hereby granted, provided that the above
6 6ab857d5 2024-01-23 op * copyright notice and this permission notice appear in all copies.
8 6ab857d5 2024-01-23 op * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9 6ab857d5 2024-01-23 op * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10 6ab857d5 2024-01-23 op * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11 6ab857d5 2024-01-23 op * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12 6ab857d5 2024-01-23 op * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13 6ab857d5 2024-01-23 op * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14 6ab857d5 2024-01-23 op * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
20 6ab857d5 2024-01-23 op extern int body_lines;
21 6ab857d5 2024-01-23 op extern int body_cols;
23 6ab857d5 2024-01-23 op extern struct kmap global_map, minibuffer_map, *current_map, *base_map;
25 6ab857d5 2024-01-23 op struct excursion {
26 6ab857d5 2024-01-23 op int curs_x, curs_y;
27 6ab857d5 2024-01-23 op size_t line_off;
28 6ab857d5 2024-01-23 op struct vline *current_line;
29 6ab857d5 2024-01-23 op struct vline *top_line;
30 6d24bfb3 2024-10-19 op size_t point_offset;
65 6ab857d5 2024-01-23 op PPSTART_TRAIL,
77 6ab857d5 2024-01-23 op PPATCH_HDR_PRFX,
78 6ab857d5 2024-01-23 op PPATCH_HDR_TRAIL,
79 6ab857d5 2024-01-23 op PPATCH_HUNK_HDR,
80 6ab857d5 2024-01-23 op PPATCH_HUNK_HDR_PRFX,
81 6ab857d5 2024-01-23 op PPATCH_HUNK_HDR_TRAIL,
83 6ab857d5 2024-01-23 op PPATCH_ADD_PRFX,
84 6ab857d5 2024-01-23 op PPATCH_ADD_TRAIL,
86 6ab857d5 2024-01-23 op PPATCH_DEL_PRFX,
87 6ab857d5 2024-01-23 op PPATCH_DEL_TRAIL,
93 6ab857d5 2024-01-23 op PCOMPL_CURR_PRFX,
95 6ab857d5 2024-01-23 op PCOMPL_CURR_TRAIL,
101 6ab857d5 2024-01-23 op PDOWNLOAD_PRFX,
103 6ab857d5 2024-01-23 op PDOWNLOAD_TRAIL,
105 6ab857d5 2024-01-23 op PDOWNLOAD_DONE_PRFX,
106 6ab857d5 2024-01-23 op PDOWNLOAD_DONE,
107 6ab857d5 2024-01-23 op PDOWNLOAD_DONE_TRAIL,
109 6ab857d5 2024-01-23 op PDOWNLOAD_INFO_PRFX,
110 6ab857d5 2024-01-23 op PDOWNLOAD_INFO,
111 6ab857d5 2024-01-23 op PDOWNLOAD_INFO_TRAIL,
113 6ab857d5 2024-01-23 op PDOWNLOAD_WIN,
119 6ab857d5 2024-01-23 op PFRINGE_PRFX,
121 6ab857d5 2024-01-23 op PFRINGE_TRAIL,
124 6ab857d5 2024-01-23 op extern struct thiskey thiskey;
126 6ab857d5 2024-01-23 op extern struct tab *current_tab;
128 6ab857d5 2024-01-23 op extern struct buffer helpwin;
129 6ab857d5 2024-01-23 op extern int help_lines, help_cols;
131 6ab857d5 2024-01-23 op extern struct buffer downloadwin;
132 6ab857d5 2024-01-23 op extern int download_lines;
133 6ab857d5 2024-01-23 op extern int download_cols;
135 6ab857d5 2024-01-23 op void get_scroll_position(struct tab *, size_t *, size_t *);
136 6ab857d5 2024-01-23 op void save_excursion(struct excursion *, struct buffer *);
137 6ab857d5 2024-01-23 op void restore_excursion(struct excursion *, struct buffer *);
138 6ab857d5 2024-01-23 op void global_key_unbound(void);
139 6ab857d5 2024-01-23 op struct buffer *current_buffer(void);
140 6ab857d5 2024-01-23 op struct vline *adjust_line(struct vline *, struct buffer *);
141 6ab857d5 2024-01-23 op void start_loading_anim(struct tab *);
143 6ab857d5 2024-01-23 op int ui_init(void);
144 6ab857d5 2024-01-23 op void ui_main_loop(void);
145 6ab857d5 2024-01-23 op void ui_on_tab_loaded(struct tab *);
146 6ab857d5 2024-01-23 op void ui_on_tab_refresh(struct tab *);
147 7a7f8f40 2024-10-22 op void ui_force_tab_refresh(struct tab *);
148 6ab857d5 2024-01-23 op void ui_on_download_refresh(void);
149 2f0ffab4 2024-06-22 op void ui_prompt_download_cmd(struct download *);
150 6ab857d5 2024-01-23 op void ui_remotely_open_link(const char *);
151 6ab857d5 2024-01-23 op const char *ui_keyname(int);
152 6ab857d5 2024-01-23 op void ui_toggle_side_window(int);
153 6ab857d5 2024-01-23 op void ui_show_downloads_pane(void);
154 6ab857d5 2024-01-23 op void ui_schedule_redraw(void);
155 6ab857d5 2024-01-23 op void ui_after_message_hook(void);
156 0fceedb5 2024-06-07 op void ui_require_input(struct tab *, int, void (*)(const char *));
157 057e7eb6 2024-06-22 op void ui_yornp(const char *, void (*)(int, void *), void *);
158 6ab857d5 2024-01-23 op void ui_read(const char *, void (*)(const char *, struct tab *), struct tab *, const char *);
159 6ab857d5 2024-01-23 op void ui_other_window(void);
160 6ab857d5 2024-01-23 op void ui_suspend(void);
161 0548291a 2024-06-25 op void ui_resume(void);
162 6ab857d5 2024-01-23 op void ui_end(void);