2 d1a0f2a3 2021-07-12 op * Copyright (c) 2021 Omar Polo <op@omarpolo.com>
4 d1a0f2a3 2021-07-12 op * Permission to use, copy, modify, and distribute this software for any
5 d1a0f2a3 2021-07-12 op * purpose with or without fee is hereby granted, provided that the above
6 d1a0f2a3 2021-07-12 op * copyright notice and this permission notice appear in all copies.
8 d1a0f2a3 2021-07-12 op * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9 d1a0f2a3 2021-07-12 op * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10 d1a0f2a3 2021-07-12 op * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11 d1a0f2a3 2021-07-12 op * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12 d1a0f2a3 2021-07-12 op * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13 d1a0f2a3 2021-07-12 op * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14 d1a0f2a3 2021-07-12 op * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
20 d1a0f2a3 2021-07-12 op #include "telescope.h"
22 d1a0f2a3 2021-07-12 op extern int body_lines;
23 d1a0f2a3 2021-07-12 op extern int body_cols;
24 d1a0f2a3 2021-07-12 op extern int in_minibuffer;
26 d1a0f2a3 2021-07-12 op extern struct kmap global_map, minibuffer_map, *current_map, *base_map;
28 d1a0f2a3 2021-07-12 op struct excursion {
29 d1a0f2a3 2021-07-12 op int curs_x, curs_y;
30 d1a0f2a3 2021-07-12 op size_t line_off;
31 d1a0f2a3 2021-07-12 op struct vline *current_line;
67 d1a0f2a3 2021-07-12 op PPSTART_TRAIL,
80 d1a0f2a3 2021-07-12 op struct thiskey {
85 d1a0f2a3 2021-07-12 op extern struct thiskey thiskey;
87 d1a0f2a3 2021-07-12 op extern struct histhead eecmd_history,
92 d1a0f2a3 2021-07-12 op struct ministate {
93 d1a0f2a3 2021-07-12 op char *curmesg;
95 d1a0f2a3 2021-07-12 op char prompt[64];
96 d1a0f2a3 2021-07-12 op void (*donefn)(void);
97 d1a0f2a3 2021-07-12 op void (*abortfn)(void);
99 d1a0f2a3 2021-07-12 op char buf[1025];
100 d1a0f2a3 2021-07-12 op struct line line;
101 d1a0f2a3 2021-07-12 op struct vline vline;
102 d1a0f2a3 2021-07-12 op struct buffer buffer;
104 d1a0f2a3 2021-07-12 op struct histhead *history;
105 d1a0f2a3 2021-07-12 op struct hist *hist_cur;
106 d1a0f2a3 2021-07-12 op size_t hist_off;
108 d1a0f2a3 2021-07-12 op extern struct ministate ministate;
110 d1a0f2a3 2021-07-12 op void save_excursion(struct excursion *, struct buffer *);
111 d1a0f2a3 2021-07-12 op void restore_excursion(struct excursion *, struct buffer *);
112 d1a0f2a3 2021-07-12 op void global_key_unbound(void);
113 d1a0f2a3 2021-07-12 op void minibuffer_taint_hist(void);
114 d1a0f2a3 2021-07-12 op void eecmd_self_insert(void);
115 d1a0f2a3 2021-07-12 op void eecmd_select(void);
116 d1a0f2a3 2021-07-12 op void ir_self_insert(void);
117 d1a0f2a3 2021-07-12 op void ir_select(void);
118 d1a0f2a3 2021-07-12 op void lu_self_insert(void);
119 d1a0f2a3 2021-07-12 op void lu_select(void);
120 d1a0f2a3 2021-07-12 op void bp_select(void);
121 d1a0f2a3 2021-07-12 op void vmessage(const char *, va_list);
122 d1a0f2a3 2021-07-12 op void message(const char *, ...) __attribute__((format(printf, 1, 2)));
123 d1a0f2a3 2021-07-12 op void start_loading_anim(struct tab *);
124 d1a0f2a3 2021-07-12 op void load_url_in_tab(struct tab *, const char *);
125 d1a0f2a3 2021-07-12 op void switch_to_tab(struct tab *);
126 d1a0f2a3 2021-07-12 op struct tab *current_tab(void);
127 d1a0f2a3 2021-07-12 op struct buffer *current_buffer(void);
128 d1a0f2a3 2021-07-12 op struct tab *new_tab(const char *);
129 d1a0f2a3 2021-07-12 op unsigned int tab_new_id(void);
130 d1a0f2a3 2021-07-12 op int ui_init(void);
131 d1a0f2a3 2021-07-12 op void ui_on_tab_loaded(struct tab *);
132 d1a0f2a3 2021-07-12 op void ui_on_tab_refresh(struct tab *);
133 d1a0f2a3 2021-07-12 op const char *ui_keyname(int);
134 d1a0f2a3 2021-07-12 op void ui_toggle_side_window(void);
135 d1a0f2a3 2021-07-12 op void ui_schedule_redraw(void);
136 d1a0f2a3 2021-07-12 op void ui_require_input(struct tab *, int);
137 d1a0f2a3 2021-07-12 op void ui_read(const char *, void (*)(const char *, unsigned int), unsigned int);
138 d1a0f2a3 2021-07-12 op void ui_yornp(const char *, void (*)(int, struct tab *), struct tab *);
139 d1a0f2a3 2021-07-12 op void ui_end(void);