summaryrefslogtreecommitdiff
path: root/desktop/textinput.h
diff options
context:
space:
mode:
Diffstat (limited to 'desktop/textinput.h')
-rw-r--r--desktop/textinput.h31
1 files changed, 30 insertions, 1 deletions
diff --git a/desktop/textinput.h b/desktop/textinput.h
index c599ca0e1..14ddb35eb 100644
--- a/desktop/textinput.h
+++ b/desktop/textinput.h
@@ -46,12 +46,41 @@ enum input_key {
};
+struct caret
+{
+ bool defined;
+
+ struct browser_window *bw;
+ struct box *text_box;
+ size_t char_offset;
+
+ /* document co-ordinates of bottom left of caret */
+ int x;
+ int y;
+ int height;
+};
+
+
+/** There's a single ghost caret used to implement
+ * drag-and-drop of text into text areas and input fields.
+ */
+
+extern struct caret ghost_caret;
+
+
+void caret_set_position(struct caret *c, struct browser_window *bw,
+ struct box *text_box, int char_offset, int pixel_offset);
+void caret_remove(struct caret *c);
+
+
+struct box *textarea_get_position(struct box *textarea, int x, int y,
+ int *pchar_offset, int *ppixel_offset);
+
void browser_window_textarea_click(struct browser_window *bw,
browser_mouse_state mouse,
struct box *textarea,
int box_x, int box_y,
int x, int y);
-//bool browser_window_textarea_paste(struct browser_window *bw,
void browser_window_input_click(struct browser_window* bw,
struct box *input,