From 2c2ac87e37c2098421b83f9e684e29c7e01b24f4 Mon Sep 17 00:00:00 2001 From: John Mark Bell Date: Thu, 7 Feb 2008 00:50:37 +0000 Subject: Prevent tabbing into textfields whose styling is display: none; svn path=/trunk/netsurf/; revision=3849 --- desktop/textinput.c | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'desktop') diff --git a/desktop/textinput.c b/desktop/textinput.c index 4c54924c9..34006dbaf 100644 --- a/desktop/textinput.c +++ b/desktop/textinput.c @@ -925,11 +925,14 @@ bool browser_window_input_callback(struct browser_window *bw, case 9: { /* Tab */ struct form_control *next_input; + /* Find next text entry field that is actually + * displayed (i.e. has an associated box) */ for (next_input = input->gadget->next; next_input && - next_input->type != GADGET_TEXTBOX && + ((next_input->type != GADGET_TEXTBOX && next_input->type != GADGET_TEXTAREA && - next_input->type != GADGET_PASSWORD; + next_input->type != GADGET_PASSWORD) || + !next_input->box); next_input = next_input->next) ; if (!next_input) @@ -950,11 +953,14 @@ bool browser_window_input_callback(struct browser_window *bw, case 11: { /* Shift + Tab */ struct form_control *prev_input; + /* Find previous text entry field that is actually + * displayed (i.e. has an associated box) */ for (prev_input = input->gadget->prev; prev_input && - prev_input->type != GADGET_TEXTBOX && + ((prev_input->type != GADGET_TEXTBOX && prev_input->type != GADGET_TEXTAREA && - prev_input->type != GADGET_PASSWORD; + prev_input->type != GADGET_PASSWORD) || + !prev_input->box); prev_input = prev_input->prev) ; if (!prev_input) -- cgit v1.2.3