diff options
author | C. Davis <cd.rattan@gmail.com> | 2012-08-17 02:15:20 -0700 |
---|---|---|
committer | Michael Adam <obnox@samba.org> | 2013-04-29 13:06:32 +0200 |
commit | e8d6a33c830bf34733450c9d9a9cf792f1136c1a (patch) | |
tree | 23940b0ed7c1e9782800f392c0a9c05879a1ec5c /source3/utils | |
parent | 9d0ccd1b4896396b0a83d6e767b145bcc3ab111f (diff) | |
download | samba-e8d6a33c830bf34733450c9d9a9cf792f1136c1a.tar.gz |
regedit: Restore cursor position when user tabs to a field.
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Michael Adam <obnox@samba.org>
Diffstat (limited to 'source3/utils')
-rw-r--r-- | source3/utils/regedit_dialog.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/source3/utils/regedit_dialog.c b/source3/utils/regedit_dialog.c index 94f1b65e25..6571baaf96 100644 --- a/source3/utils/regedit_dialog.c +++ b/source3/utils/regedit_dialog.c @@ -426,6 +426,7 @@ int dialog_input(TALLOC_CTX *ctx, char **output, const char *title, } else { input_section = true; set_current_field(input, field[0]); + pos_form_cursor(input); } } else if (input_section) { handle_form_input(input, c); @@ -716,6 +717,7 @@ static void section_down(struct edit_dialog *edit) } else { set_current_field(edit->input, edit->field[FLD_DATA]); + pos_form_cursor(edit->input); } } break; @@ -729,6 +731,7 @@ static void section_down(struct edit_dialog *edit) case IN_MENU: edit->section = IN_NAME; set_current_field(edit->input, edit->field[FLD_NAME]); + pos_form_cursor(edit->input); break; } update_panels(); @@ -749,6 +752,7 @@ static void section_up(struct edit_dialog *edit) form_driver(edit->input, REQ_VALIDATION) == E_OK) { edit->section = IN_NAME; set_current_field(edit->input, edit->field[FLD_NAME]); + pos_form_cursor(edit->input); } break; case IN_MENU: @@ -757,6 +761,7 @@ static void section_up(struct edit_dialog *edit) hexedit_set_cursor(edit->buf); } else { set_current_field(edit->input, edit->field[FLD_DATA]); + pos_form_cursor(edit->input); } break; } |