diff options
Diffstat (limited to 'desktop/browser.c')
-rw-r--r-- | desktop/browser.c | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/desktop/browser.c b/desktop/browser.c index c4dcc5c54..8d1205315 100644 --- a/desktop/browser.c +++ b/desktop/browser.c @@ -885,10 +885,12 @@ void browser_window_textarea_click(struct browser_window *bw, textarea->gadget->caret_inline_container = inline_container; textarea->gadget->caret_text_box = text_box; - textarea->gadget->caret_box_offset = textarea->gadget->caret_form_offset = char_offset; + textarea->gadget->caret_box_offset = + textarea->gadget->caret_form_offset = char_offset; textarea->gadget->caret_pixel_offset = pixel_offset; browser_window_place_caret(bw, - box_x + text_box->x + pixel_offset, + box_x + inline_container->x + text_box->x + + pixel_offset, box_y + inline_container->y + text_box->y, text_box->height, browser_window_textarea_callback, textarea); @@ -1152,10 +1154,12 @@ void browser_window_textarea_callback(struct browser_window *bw, textarea->gadget->caret_inline_container = inline_container; textarea->gadget->caret_text_box = text_box; - textarea->gadget->caret_box_offset = textarea->gadget->caret_form_offset = char_offset; + textarea->gadget->caret_box_offset = + textarea->gadget->caret_form_offset = char_offset; textarea->gadget->caret_pixel_offset = pixel_offset; browser_window_place_caret(bw, - box_x + text_box->x + pixel_offset, + box_x + inline_container->x + text_box->x + + pixel_offset, box_y + inline_container->y + text_box->y, text_box->height, browser_window_textarea_callback, textarea); @@ -1227,8 +1231,8 @@ void browser_window_input_click(struct browser_window* bw, input->gadget->caret_form_offset = offset; input->gadget->caret_pixel_offset = pixel_offset; browser_window_place_caret(bw, - box_x + text_box->x + pixel_offset, - box_y + text_box->y, + box_x + input->children->x + text_box->x + pixel_offset, + box_y + input->children->y + text_box->y, text_box->height, browser_window_input_callback, input); @@ -1449,8 +1453,8 @@ void browser_window_input_callback(struct browser_window *bw, input->gadget->caret_form_offset = form_offset; browser_window_place_caret(bw, - box_x + text_box->x + pixel_offset, - box_y + text_box->y, + box_x + input->children->x + text_box->x + pixel_offset, + box_y + input->children->y + text_box->y, text_box->height, browser_window_input_callback, input); @@ -1458,6 +1462,7 @@ void browser_window_input_callback(struct browser_window *bw, browser_redraw_box(bw->current_content, input); } + /** * Position the caret and assign a callback for key presses. */ |